计算机网络面试题(八):TCP三次握手(超重点!!!)

计算机网络面试题(八):TCP三次握手(超重点!!!)


TCP三次握手(面试重点)


几个重要标号:SYN、ACK

  • SYN:SYN=1代表建立TCP连接
  • ACK:(acknowledge character 确认字符)确认字段
  • SYN=1,ACK=0:表示客户端请求TCP连接,但还没有确认
  • SYN=1,ACK=1:表示服务器确认TCP连接

计算机网络面试题(八):TCP三次握手(超重点!!!)


TCP三次握手过程:

1.客户端发送建立TCP连接的请求报文

请求报文中包含:

  • SYN=1表示要建立TCP连接
  • seq=x***,x为随机生成数值

2. 服务端回复客户端的连接请求

回复报文中包含:

  • SYN=1
  • ACK确认字符:ACK=x+1是在客户端发送过来的***seq的基础上+1,告诉客户端TCP连接确认了
  • seq***:seq=y由服务端随机生成的***

3. 客户端收到回复后再发送给服务端

回复报文中包含

  • SYN=1
  • ACK=y+1
  • seq=x+1

整个过程:SYN=1一直不变,生成的ack确认字符会在上一个seq***的基础上+1