文章目录
TCP协议状态转移图
三次握手建立连接:
四次挥手释放连接:
相关文章:《深入理解TCP协议 " 三次握手、四次挥手 "》
常见问题
1、为什么TCP客户端最后还要发送一次确认呢,为什么不采用两次握手的方式进行连接?
主要防止已经失效的连接请求报文突然又传送到了服务器,从而产生错误。
如果使用的是两次握手建立连接,假设有这样一种场景,客户端发送了第一个请求连接并且没有丢失,只是因为在网络结点中滞留的时间太长了,由于TCP的客户端迟迟没有收到确认报文,以为服务器没有收到,此时重新向服务器发送这条报文,此后客户端和服务器经过两次握手完成连接,传输数据,然后关闭连接。此时此前滞留的那一次请求连接,网络通畅了到达了服务器,这个报文本该是失效的,但是,两次握手的机制将会让客户端和服务器再