您的位置:首页 > 理论基础 > 计算机网络

TCP关闭连接过程(三次握手四次挥手)

2013-04-18 19:43 1126 查看
详解:图http://blog.163.com/zhuaziss@yeah/blog/static/11909893320117323859205/

TCP关闭过程(四次挥手)

TCP协议的连接是全双工的连接,一个连接存在双向的读写通道。

关闭连接可以由客户机或服务器任何一方发起关闭连接请求,遵循“先关读,后关写”。

以客户机发起关闭连接为例,包括四个过程:

1.服务器关闭读通道;

2.客户机关闭写通道;

3.客户机关闭读通道;

4.服务器关闭写通道;

详细过程如下:

第一阶段:客户机发送完数据后,向服务器发送一个FIN(finish)数据段,序列号为i, 等待服务器确认。

1.服务器接收到FIN后,返回一个ACK(i+1),服务器关闭读通道;

2.客户机收到ACK(i+1)后,关闭写通道;

此时,客户机仍可以通过读通道读数据,服务器仍可以通过写通道写数据。

第二阶段:服务器发送完数据后,向客户机发送一个FIN数据段,序列号为j,等待客户机确认。

1.客户机接收到FIN后,返回一个ACK(j+1),客户机关闭读通道;

2.服务器接收到ACK(j+1)后,关闭写通道。

TCP连接的建立(三次握手)

TCP提供可靠的连接,服务器端必须准备好接受外来的连接,由socket,bind ,listen 等函数来实现被动连接。

1.客户端通过函数connect()发起主动连接,客户端TCP发送一个SYN,序列号为i,等待服务器端确认,同时进入SYN_Send状态;

2.服务器端接收到SYN后,发送一个ACK(i+1),同时服务器端TCP发送一个SYN,序列号为j,服务器端进入SYN_RECVED状态;

3.客户端接收到ACK+SYN后,发送一个ACK(j+1).进入ESTABLISHED状态。三次握手完成。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: