浅谈TCP三次握手、四次挥手

三次握手

TCP(Transmission Control Protocol, 传输控制协议):是一种面向连接、可靠、基于字节流的通信协议,数据在传输前要建立连接,传输完毕后需要断开连接。

客户端使用connect()函数与服务端建立连接,确保IP地址、端口以及物理链路等的正常,为数据传输提供通道。建立TCP连接的过程中,将在客户端和服务端之间传输三个数据包,俗称 三次握手

TCP数据报结构

浅谈TCP三次握手、四次挥手_第1张图片

  • 序号:Seq(Sequence Number)序号占32位,用来标识从计算机A发送到计算机B的数据包的序号,计算机发送数据时对此进行标记。

  • 确认号:Ack(Acknowledge Number)确认号占32位,客户端和服务器端都可以发送,Ack = Seq + 1。

  • 标志位:每个标志位占用1Bit,共有6个,分别为 URG、ACK、PSH、RST、SYN、FIN,具体含义如下:
    URG:紧急指针(urgent pointer)有效。
    ACK:确认序号有效。
    PSH:接收方应该尽快将这个报文交给应用层。
    RST:重置连接。
    SYN:建立一个新连接。
    FIN&

你可能感兴趣的:(随笔,网络通信,socket)