TCP的传输连接管理

来源:互联网 发布:好用的遮瑕膏推荐 知乎 编辑:程序博客网 时间:2024/04/29 16:21
TCP 是面向连接的协议,提供透明、可靠的数据流传输。
传输连接有三个阶段,即:连接建立、数据传送和连接释放。传输连接的管理就是使传输连

接的建立和释放都能正常地进行。

在TCP 的连接建立过程中要解决以下三个问题:

1、要使每一方能够确知对方的存在。
2、要允许双方协商一些参数(如最大报文段长度,最大窗口大小,服务质量等)。

3、能够对传输实体资源(如缓存大小,连接表中的项目等)进行分配。

客户服务器方式

TCP 的连接和建立都是采用客户服务器方式。
主动发起连接建立的应用进程叫做客户(client)。
被动等待连接建立的应用进程叫做服务器(server)。

用三次握手建立TCP连接


TCP连接建立

1、A 的TCP 向B 发出连接请求报文段,其首部中置同步比特SYN =1,并选择序号x,表明传送数据时的第一个数据字节的序号是x。
2、B 的TCP 收到连接请求报文段后,如同意,则发回确认。B 在确认报文段中应置SYN=1,
其确认号应为x+1,同时也为自己选择序号y。
3、A 收到此报文段后,向B 给出确认,其确认号应为y+1。
4、A 的TCP 通知上层应用进程,连接已经建立。
5、当运行服务器进程的主机B 的TCP 收到主机A 的确认后,也通知其上层应用进程,连接已经建立。

TCP连接的释放

1、在数据传输结束后,通信的双方都可以发出释放连接的请求。TCP 连接释放采用文雅释放过程。
2、TCP 连接的释放是两个方向分别释放连接,每个方向上连接的释放,只终止本方向的数据传输。
3、当一个方向的连接释放后,TCP 的连接就称为“半连接”或“半关闭”。当两个方向的连接都已释放,TCP 连接才完全释放。

TCP连接释放的过程


TCP的正常的连接建立和关闭