TCP的三次握手與四次揮手詳細介紹
為什么是三次握手?
目的:防止已失效的連接請求又傳到了服務器端。
場景(A為客戶,B為服務器):A向B發送一個請求連接報文,但是這個報文在網絡中阻塞了,并沒有傳到B。所以B也無法向A發送確認報文,在A的重傳計時器到達之后,A再次向B發送請求連接報文,這個報文B收到了,并且向A做出應答,建立連接,傳輸數據。數據傳輸完后,關閉連接。問題來了,就在B關閉連接之后,A第一次發送的請求連接報文到了(這個報文是已經失效的),B以為A要再次創建一個新連接,于是向A發送確認報文。
如果采用兩次握手的話,此時連接已經建立了。但是A根本沒有向B發送請求連接報文,所以A并不會理會B的確認。B以為此時連接已經建立了,就會一直等待A向它發送數據。這樣B的資源就白白浪費了。
但是采用三次握手就不同了,A不會因為B的確認而向B發送確認,B收不到A的確認,就知道B沒有請求連接。B的資源也就不會浪費。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!
新聞熱點
疑難解答
圖片精選