`
liuguxing
  • 浏览: 92693 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

TCP连接关闭过程笔记

 
阅读更多
http://blog.csdn.net/fbysss/article/details/2230527

TCP协议的连接是全双工连接,一个TCP连接存在双向的读写通道。
简单说来是 “先关读,后关写”,一共需要四个阶段。以客户机发起关闭连接为例:
1.服务器读通道关闭
2.客户机写通道关闭
3.客户机读通道关闭
4.服务器写通道关闭
关闭行为是在发起方数据发送完毕之后,给对方发出一个FIN(finish)数据段。直到接收到对方发送的FIN,且对方收到了接收确认ACK之后,双方的数据通信完全结束,过程中每次接收都需要返回确认数据段ACK。
详细过程:
    第一阶段   客户机发送完数据之后,向服务器发送一个FIN数据段,序列号为i;
    1.服务器收到FIN(i)后,返回确认段ACK,序列号为i+1,关闭服务器读通道;
    2.客户机收到ACK(i+1)后,关闭客户机写通道;
   (此时,客户机仍能通过读通道读取服务器的数据,服务器仍能通过写通道写数据)
    第二阶段 服务器发送完数据之后,向客户机发送一个FIN数据段,序列号为j;
    3.客户机收到FIN(j)后,返回确认段ACK,序列号为j+1,关闭客户机读通道;
    4.服务器收到ACK(j+1)后,关闭服务器写通道。
这是标准的TCP关闭两个阶段,服务器和客户机都可以发起关闭,完全对称。
FIN标识是通过发送最后一块数据时设置的,标准的例子中,服务器还在发送数据,所以要等到发送完的时候,设置FIN(此时可称为TCP连接处于半关闭状态,因为数据仍可从被动关闭一方向主动关闭方传送)。如果在服务器收到FIN(i)时,已经没有数据需要发送,可以在返回ACK(i+1)的时候就设置FIN(j)标识,这样就相当于可以合并第二步和第三步。
分享到:
评论

相关推荐

    net学习笔记及其他代码应用

    9.描述一下C#中索引器的实现过程,是否只能根据数字进行索引? 答:不是。可以用任意类型。 10.求以下表达式的值,写出您想到的一种或几种实现方法: 1-2+3-4+……+m [Page] 答: int Num = this.TextBox1.Text....

    CISCO交换机配置AAA、802.1X以及VACL

    如果认证不成功就使这个端口保持“关闭”,此时只允许802.1X的认证报文EAPOL(Extensible Authentication Protocol over LAN)通过。 二、802.1X的认证体系分为三部分结构: Supplicant System,客户端(PC/网络...

    web:该存储库用于研究HTML,CSS,JS,ReactJS和MaterializeCSS

    它是一种无连接和无状态的协议(在请求之间不维护任何数据),并且基于连接(当完整发送,接收,请求和响应http消息时, TCP / IP连接将关闭)。 数据类型由Header中的content-type字段定义,其目的是描述响应或...

    网络守望者

    网络守望者可以工作在拨号或网络连接,无论被控计算机位于互联网还是局域网,甚至是点对点连接的对等网络,只要支持TCP/IP网络协议均可平滑工作。 *自动周期性获得屏幕画面 可调整的时间周期,便于在不同网络...

    VB网络编程实例

    2、如何用mscomm挂断modem与别的电话机间的连接?(已接通) ◆ 02.htm CWinInetConnection---一个封装了WinInet API函数的类 ◆ 03.htm MODEM通讯意外处理 ◆ 04.htm MsComm 文字传输 ◆ 05....

    SynergyInstaller-1.3.1

    这款软件的好处在于:它可以跨操作系统使用,只要你的多台电脑是通过网络连接,在同一个网段(不同网段没有试验过),并且支持TCP/IP协议,那都可以轻松实现多台电脑的共享。 synergy的优点:使用synergy就好像把...

    《Linux从入门到精通》

    3.4.4 设置TCP/IP网络 3.4.5 NFS服务器信息 3.4.6 从硬盘安装 3.4.7 通过FTP安装 3.4.8 通过SMB安装 4 继续安装 4.1 升级或安装 4.1.1 安装 4.1.2 升级 4.2 SCSI支持 4.3 为Red Hat Linux创建分区 4.3.1 ...

    Linux从入门到精通

    3.4.4 设置TCP/IP网络 3.4.5 NFS服务器信息 3.4.6 从硬盘安装 3.4.7 通过FTP安装 3.4.8 通过SMB安装 4 继续安装 4.1 升级或安装 4.1.1 安装 4.1.2 升级 4.2 SCSI支持 4.3 为Red Hat Linux创建分区 4.3.1 ...

    2005详细介绍Linux从入门到精通

    3.4.4 设置TCP/IP网络 3.4.5 NFS服务器信息 3.4.6 从硬盘安装 3.4.7 通过FTP安装 3.4.8 通过SMB安装 4 继续安装 4.1 升级或安装 4.1.1 安装 4.1.2 升级 4.2 SCSI支持 4.3 为Red Hat Linux创建分区 4.3.1 ...

    linux从入门到精通.chm

    3.4.4 设置TCP/IP网络 3.4.5 NFS服务器信息 3.4.6 从硬盘安装 3.4.7 通过FTP安装 3.4.8 通过SMB安装 4 继续安装 4.1 升级或安装 4.1.1 安装 4.1.2 升级 4.2 SCSI支持 4.3 为Red Hat Linux创建分区 4.3.1 ...

    会计理论考试题

    A、最小化 B、最大化 C、关闭 D、选择 6.为了以最佳方式、最少的重复,为多种应用服务,把数据集中起来以一定的组织方式存在计算机的外存储器中,就构成 __D___ 。 A、FoxBASE B、DOS C、数据库管理系统 D、数据库 ...

Global site tag (gtag.js) - Google Analytics