• TCP/IP学习笔记(二):TCP连接的建立与终止


    TCP连接的三次握手:

    (1)请求短发送一个SYN段指明客户打算连接的服务器的端口,以及初始序号ISN(1415535521),报文段中SYN=1;TCP规定:SYN报文段不能携带数据,但是要消耗一个序号。

    (2)服务器发回包含服务器初始序号的SYN报文段作为应答(SYN=1  ACK=1)。设置确定序号为客户端设置的ISN加1(1415531522),以表示对客户端的SYN报文进行确认,同时为自己选一个初始序号(1823083521),这个报文段同样不能携带数据,但要消耗一个序号。

    (3)客户端必须将确定序号设置为服务器的ISN加1(1823083522)以对服务器的SYN报文进行确认,报文中ACK=1,可以携带数据,如果不携带数据,则不消耗数据,下一个发送报文段的序号仍然是(1415531522),这时,TCP已经建立。

    TCP连接终止的四次握手:

    由于TCP的半关闭,终止一个TCP连接需要四次握手:

    (1)客户端发送一个FIN,关闭客户端到服务器的数据传送

    (2)服务器收到这个FIN,它发回ACK,确认序号为收到的序号加1(1415531523,一个FIN将占用一个序号),TCP服务器还向应用程序传送一个文件结束符

    (3)服务器端发送一个FIN,接着服务器程序就关闭连接

    (4)客户端收到服务器端的FIN后,必须发回一个ACK,将确认序号置为收到序号加1(1823083523)

    值得注意的是:发送FIN将导致应用程序关闭它们的连接,这些FIN的ACK是由TCP软件自动产生的。

  • 相关阅读:
    Unix UTC时间转化为本地时间的一个MFC实现
    不规则按钮Button修正版
    不规则按钮,支持普通Button,Radio Button, Check Button
    Kimi ga Suki da to Sakebitai
    将adb for visual studio 从26升级29版本
    直到世界的尽头
    Your Song
    Win32创建后台进程
    全金属外壳的歌词
    C#获取本机IP(排除IPV6,仅获取IPV4)的方法转载
  • 原文地址:https://www.cnblogs.com/yangang92/p/5341897.html
Copyright © 2020-2023  润新知