赞
踩
传输控制协议TCP(Transmission Control Protocol)一种基于连接的可靠的稳定的无重复的传输协议。
TCP协议头部信息如下:
一共占用20个字节
概念区分:
三报文握手 == 三次握手/三路握手
四报文挥手 == 四次挥手/四路握手
TCP建立连接需要解决三个问题:
上述文字如此繁琐,可以看下图:
常见面试题:假如TCP连接的监视使用的是两次握手而不是三次可以吗?
- 假设TCP客户进程发送了一个TCP请求报文段,但是可报文段在网络结点中被长时间滞留,TCP客户采用超时重传机制重发TCP请求报文段并被TCP服务进程接收,TCP服务进程,发送一个TCP连接请求报文段确认报文段,然后TCP服务进程和客户可以进行信息传递,当数据转送完成的时候双方都处于关闭状态。
- 随后滞留在网络结点中的哪个失效的TCP请求文段,被TCP服务进程接收,TCP服务进程又发送一个TCP服务进程又发送一个TCP连接请求确认报文段,并且进入连接已建立状态,由于TCP客户进程并没有发起新的TCP连接请求,并且已经处于关闭状态了,因此不会理会TCP服务器发送的报文段,但是TCP服务器进程已经进入了连接已建立状态,他认为新的TCP连接已经建立好了,就会一直等待TCP客户进程发来数据,将会浪费TCP服务器主机的很多资源。
所以要TCP连接的建立采用三次握手:
TCP通过四次挥手来释放连接,数据通信传输完成之后TCP双方都可以释放连接
TCP服务器进程收到该报文段后就进入关闭状态。
而TCP客户进程还需要经过2MSL后才能进入关闭状态。MSL(Maximum Segment Lifetime)意思是最长报文段寿命,RFC793建议为2分钟。
这个等待2MSL是为了保证普通的TCP确认报文段能够被TCP服务端接收到。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。