Linux:Day20(下) http基础
Web Service
Port number:
0-1023:众所周知,永久的分配给固定的应用使用,22/tcp(ssh),80/tcp(http),443/tcp(https)
1024-41951:亦为注册端口,但要求并不是特别严格,分配给程序注册为某应用使用,11211/tcp,11211/udp(memcached),3306/tcp(mysql)
41952+:客户端程序随机使用的端口;动态端口,或私有端口;
Socket:IPC的一种实现,允许位于不同主机(甚至同一主机)上不同进程之间进行通信;数据交换;Socket API,1983年,4.2 BSD
SOCK_STREAM:tcp套接字
SOCK_DGRAM:udp套接字
SOCK_RAW:裸套接字
TCP协议的特性:
建立连接:三次握手
将数据打包成段:校验和(CRC-32)
确认、重传以及超时;
排序:逻辑序号
流量控制:滑动窗口算法
拥塞控制:慢启动和拥塞避免算法
Socket Domain(根据其所使用的地址):
AF_INET:Address Family,IPv4
AF_INET6:IPv6
AF_UNIX:同一主机上不同进程之间通信时使用;
每类套接字都至少提供了两种socket:流,数据报
流:可靠地传递、面向连接、无边界;
数据报:不可靠地传递、有边界、无连接;
套接字相关的系统调用:
socket():创建一个套接字;
bind():绑定
listen():监听
Linux:Day20(下) http基础的更多相关文章
- 【夯实Mysql基础】MySQL在Linux系统下配置文件及日志详解
本文地址 分享提纲: 1. 概述 2. 详解配置文件 3. 详解日志 1.概述 MySQL配置文件在Windows下叫my.ini,在MySQL的安装根目录下:在Linux下叫my.cnf,该文件位于 ...
- 基础--Redis在Linux环境下的安装
1. 安装redis服务 1.1 检查安装依赖程序 yum install gcc-c++yum install -y tclyum install wget 1.1.1 下载redis安装包 (或者 ...
- python基础——Linux系统下的文件目录结构
单用户操作系统和多用户操作系统 单用户操作系统:指一台计算机在同一时间只能由一个用户使用,一个用户独自享用系统的全部硬件和软件资源. 多用户操作系统:指一台计算机在同一时间可以由多个用户使用,多个用户 ...
- Linux环境下部署完JDK后运行一个简单的Java程序
前言 前一篇文章详细讲解了如何在Windows环境下安装虚拟机+Linux系统,并且成功部署了JDK. 不过部署完JDK之后,我们判断部署是否成功的依据是看"java -version&qu ...
- Vi (Unix及Linux系统下标准的编辑器)VIM (Unix及类Unix系统文本编辑器)
Vi是Unix及Linux系统下标准的编辑器.学会它后,您将在Linux的世界里畅行无阻.基本上vi可以分为三种状态,分别是命令模式.插入模式,和底行模式. vi编辑器是所有Unix及Linux系统下 ...
- linux环境下android-ndk下的ffmpeg编译
目前正在做手机底层播放器对的开发,需要用的ffmpeg,因为是新手,所以先从ffmpeg的编译开始做起.虽然是在前人的基础上,但是在linux上编译确实头一遭,因此在编译中,总有些坑是必须要填的,下面 ...
- Linux环境下段错误的产生原因及调试方法小结(转)
最近在Linux环境下做C语言项目,由于是在一个原有项目基础之上进行二次开发,而且 项目工程庞大复杂,出现了不少问题,其中遇到最多.花费时间最长的问题就是著名的“段错误”(Segmentation F ...
- Linux环境下段错误的产生原因及调试方法小结
转载自http://www.cnblogs.com/panfeng412/archive/2011/11/06/2237857.html 最近在Linux环境下做C语言项目,由于是在一个原有项目基础之 ...
- linux平台下防火墙iptables原理(转)
原文地址:http://www.cnblogs.com/ggjucheng/archive/2012/08/19/2646466.html iptables简介 netfilter/iptables( ...
随机推荐
- HTML学习之制作导航网页
前言 今天用HTML写了一个网址导航,源代码如下: <html> <head> <title>网址导航</title> </head> &l ...
- JS 总结----基础部分
javascript基础:1.每个属性都可以加ID2.写函数的时候注意 == 和 = 不要写错了3.html里面怎么写js里面就怎么写,但是有一例外 className 比如oDiv.class = ...
- RabbitMQ (五)主题(Topic)
转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/37706355 上一篇博客中,我们进步改良了我们的日志系统.我们使用direct类 ...
- MySQL使用细节
************************************************************************ MySQL使用细节,包括部分常用函数以及注意如何提高数 ...
- &,|,^的用法
&,|,~,^的用法 &按位与 |按位或 ~按位非 ^按位异或 举例: int x = 5; int y = 11; System.out.println(x|y); System.o ...
- Asp.Net WebAPI中Filter过滤器的使用以及执行顺序
转发自:http://www.cnblogs.com/UliiAn/p/5402146.html 在WEB Api中,引入了面向切面编程(AOP)的思想,在某些特定的位置可以插入特定的Filter进行 ...
- maven国内镜像(国内oschina的maven服务器关了)
Maven是官方的库在国外,连下载速度很慢.国内oschina的maven服务器很早之前就关了.今天发现阿里云的一个中央仓库,亲测可用. 找到E:\maven\apache-maven-3.5.2\c ...
- util.go 源码阅读
} h := md5.New() baseString, _ := json.Marshal(obj) h.Write([]byte(baseString)) ...
- kv_storage.go
package storage //kv 存储引擎实现 import ( "github.com/cznic/kv" "io" ) //kv 存 ...
- BZOJ_3207_花神的嘲讽计划Ⅰ_哈希+主席树
BZOJ_3207_花神的嘲讽计划Ⅰ_哈希+主席树 Description 背景 花神是神,一大癖好就是嘲讽大J,举例如下: “哎你傻不傻的![hqz:大笨J]” “这道题又被J屎过了!!” “J这程 ...