zoukankan      html  css  js  c++  java
  • 网络技术之TCP三次握手

    在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手方式建立一个连接

    第一次握手:c->s

    建立连接时,客户端发送SYN包(syn=j){注:syn:Synchronize Sequence Numbers同步序列编号}到服务器端,此时客户端进入SYN_SEND状态,等待服务器确认。

    第二次握手:s->c

    服务端接收到SYN包以后,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k){注:两个SYN并没有任何关系,都是随机序列},即SYN+ACK包,此时服务器进入SYN_RECV状态

    第三次握手:c->s

    客户端收到服务器端的SYN+ACK包后,确认无误后,向服务端发送确认包ACK(ack=k+1),当此包发送完毕后,服务器和客户端都进入ESTABLISHED就绪状态

    以下是使用sniffer捕获的数据包,包含TCP三次握手

    其中第一次握手:

    客户端发送SYN包③处数据为SEQ=3176842225是第二次握手服务器发送的确认包减一

    第二次握手服务器发送的SYN包中包含了SEQ和ACK两种数据到客户端

    第三次握手客户端发送的SYN包中只包含一个ACK确认数据④,是第二次握手中的序列号加一,即ACK=3674909728

    其中SEQ是SYN(Synchronize Sequence Numbers),也是他的(Sequence 简写,不要搞混)

  • 相关阅读:
    多态性与转型
    安装tensorflow
    MySQL基础补缺
    各种排序算法理解
    Ubuntu命令行变成白色
    开机显示grub命令
    E: 无法获得锁 /var/lib/dpkg/lock-frontend
    类与方法
    Java语言浅谈
    二进制数的有效讨论
  • 原文地址:https://www.cnblogs.com/ssyfj/p/8645363.html
Copyright © 2011-2022 走看看