您现在的位置是:首页 >技术杂谈 >day11 TCP连接管理与UDP协议网站首页技术杂谈
day11 TCP连接管理与UDP协议
目录
连接的建立——”三次握手”
TCP 建立连接的过程叫做握手。
采用三报文握手:在客户和服务器之间交换三个 TCP 报文段,以防止已失效的连接请求报文段突然又传送到了,因而产生 TCP 连接建立错误。
SYN置1说明这是一个请求连接的报文;
x 为一个随机值,代表客户端所发送的第一个数据字节的序号是x;
y 是服务器端所发送数据字节的序号 ;
服务器端收到请求连接的报文,消耗掉一个序号,客户端发送的数据字节序号变为x+1;
y+1的原理通x+1一样;
当A发出请求连接并且收到确认连接两个报文时,连接已经建立;
连接的释放——“四次挥手”
TCP 连接释放过程比较复杂。
数据传输结束后,通信的双方都可释放连接。
TCP 连接释放过程是四报文握手。
FIN置1代表要释放连接;
MSL:最大报文生存周期,即报文最长能生存的最长时间;
A设置2MSL时间是为了确保B在MSL时间没收到确认报文,能再次发送报文;
保活计时器
用来防止在 TCP 连接出现长时期空闲。
通常设置为 2 小时 。
若服务器过了 2 小时还没有收到客户的信息,它就发送探测报文段。
若发送了 10 个探测报文段(每一个相隔 75 秒)还没有响应,就假定客户出了故障,因而就终止该连接。
用户数据报协议 UDP
UDP 只在 IP 的数据报服务之上增加了一些功能:
复用和分用
差错检测
UDP的主要特点:
无连接。发送数据之前不需要建立连接。
使用尽最大努力交付。即不保证可靠交付。
面向报文。UDP 一次传送和交付一个完整的报文。
没有拥塞控制。网络出现的拥塞不会使源主机的发送速率降低。很适合多媒体通信的要求。
支持一对一、一对多、多对一、多对多等交互通信。
首部开销小,只有 8 个字节。
UDP 通信的特点:简单方便,但不可靠。
发送方 UDP 对应用层交下来的报文,既不合并,也不拆分,按照原样发送。
接收方 UDP 对 IP 层交上来的 UDP 用户数据报,去除首部后就原封不动地交付上层的应用进程,一次交付一个完整的报文。