TCP如何进行三次握手

2017-06-14  本文已影响23人  来自火星的程序猿
三次握手流程图

名词解释

  1. SYN(synchronous,同步的),TCP连接的第一个包,是TCP/IP建立连接时使用的握手信号,非常小的一种数据包。

SYN=1,表示要求建立连接

  1. ACK(acknowledgement,确认),确认字符,在数据通信中,接收站发给发送站的一种传输类控制字符,表示发来的数据已确认接收无误。
  2. seq(sequence number,序列号),随机产生的包含数字的(seq number=1234567)数据包到服务器。

步骤详解

  1. TCP协议中,A使用一个SYN包,请求连接,并产生随机序列号x,一起发送到B中。
  2. B接收到A发送过来的数据,确认A想建立连接。B也使用一个SYN包来请求连接,同时用ACK(值为:1步骤传过来的随机数x+1)作为收到第一次发过来的连接请求的凭证,生成随机数y。将这些数据发送回A。
  3. A收到ACK的值为传过去的随机数+1,确定是接收方无误。使用ACK(值为:2步骤传过来的随机数y+1)发送给B,告诉已经可以开始传输数据了。

tcp标志位,一共有6种标示:
SYN(synchronous建立联机)
ACK(acknowledgement确认)
PSH(push传送)
FIN(finish结束)
RST(reset重置)
URG(urgent紧急)
Sequence number(顺序号码)
Acknowledge number(确认号码)

上一篇下一篇

猜你喜欢

热点阅读