我們知道Tcp建立連接必須要建立三次握手,那麼爲什麼兩次握手就不行能呢?爲什麼又不是四次呢?下面我們就來以易於理解的方式簡單分析下
一次連接的建立雙方需要確認對方是否處於可連接狀態。這裏的雙方我們用A和B來進行標示:
1.如果A需要確認B是否可連接,A端需要發送請求信息,B收到後然後回覆給A。請求,回覆按序進行,期間涉及到兩次消息的發送,這點我們沒有任何疑問。
2.然後B確認A是否可連接,同理也會涉及到兩次消息的發送。這樣連接纔會建立起來。
那麼有同學會問TCp建立連接只需要三次握手啊,你這裏不是四次嗎?爲了保證效率,我們要使用儘可能少的發送消息次數建立連接,如何少呢!那當然是複用啦!
我們發現B給A回覆確認消息的時候,也可以當作B的請求消息。一次發送,具有兩個功能。至此我們就成功減少了一次握手。
成爲了我們的三次握手
至於兩次爲什麼不行,這個就不要解釋了吧(只能A確認B可連接,B無法知道A是否可連接)