为什么TCP非要三次握手?

admin_user 2026-05-10
20 次浏览 0 个回答
最近在补计算机网络的基础,一直搞不懂一个事:TCP建立连接的时候,为什么非得要搞三次握手?两次不行吗?或者四次、五次?我看书上说三次握手是为了“防止已失效的连接请求报文段突然传送到服务端”,但感觉这个解释有点绕,没太理解具体是个什么场景。我自己试着搜了一些博客和视频,有的说三次是为了“确认双方的收发能力”,有的说“两次会导致服务端资源浪费”,但总觉得没说到点子上,更别提实际代码里怎么体现的了。希望有大神能结合具体例子或者抓包数据,讲清楚三次握手到底解决了什么核心问题,最好能对比一下如果只用两次会出什么bug,这样我就能彻底搞明白了。谢谢!
PHP