首页 > 试题广场 >

【运维方向优先】a. 请描述TCP协议3次握手建立连接的过程

[问答题]

【运维方向优先】a. 请描述TCP协议3次握手建立连接的过程。b. 为什么协议设计是3次握手连接建立而不是2次或4次,如果2次有什么问题,如果4次有什么问题?

a.第一步,客户机TCP先向服务器TCP发送一个连接请求报文段。这个特殊报文段不含应用层数据,其首部的SYN标志设为1。客户机随机选择一个起始序号seq=x。第二步,服务器的TCP收到请求,如同意链接则向客户机发回确认,并为该TCP连接分配TCP缓存和变量。在确认报文中,SYN和ACK都被置1,确认号字段值为x+1,并且服务器产生起始序号y,该报文同样不包含应用层数据。第三步,客户机收到确认报文后还要向服务器给出确认,并且也要给该连接分配缓存和变量。该报文段ACK置1,序号为x+1,确认号为ack=y+1,可携带数据。
 
b.如客户机向服务器发出请求,若该请求报文在某个网络节点长时间滞留,客户机超时后认为报文丢失,又发送一个请求报文,服务器收到后建立连接,数据传输完毕后双方断开连接,此时客户机发送的第一个请求报文到达了服务器,若是两次握手,则服务器又建立起连接等待客户机传输数据,而客户机此时并无连接请求不给予理睬,这样就造成了服务器的资源白白浪费。
发表于 2018-01-10 19:42:26 回复(0)