日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

TCP为什么需要三次握手和四次挥手

發(fā)布時(shí)間:2023/12/1 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 TCP为什么需要三次握手和四次挥手 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

網(wǎng)上已經(jīng)有很多解釋了,就不瞎說了,Mark一些鏈接作為自己的學(xué)習(xí)筆記吧。
學(xué)習(xí)參考鏈接1
學(xué)習(xí)參考鏈接2
學(xué)習(xí)參考鏈接3
學(xué)習(xí)參考鏈接4

為什么要3次握手
  • 防止已過期的連接請求報(bào)文突然又傳送到服務(wù)器,因而產(chǎn)生錯(cuò)誤。

    Client發(fā)生一個(gè)請求連接報(bào)文可能因?yàn)榫W(wǎng)絡(luò)延遲等原因,沒有送達(dá)到server中。但是當(dāng)這個(gè)client的請求報(bào)文送達(dá)到server時(shí),如果沒有三次握手的話,server就會(huì)直接發(fā)數(shù)據(jù)可client,這樣會(huì)導(dǎo)致server資源的浪費(fèi)。

  • 這個(gè)問題的本質(zhì)是, 信道不可靠。

    信道不可靠,但是通信雙發(fā)需要就某個(gè)問題達(dá)成一致. 而要解決這個(gè)問題, 無論你在消息中包含什么信息, 三次通信是理論上的最小值. 所以三次握手不是TCP本身的要求, 而是為了滿足”在不可靠信道上可靠地傳輸信息”這一需求所導(dǎo)致的. 請注意這里的本質(zhì)需求,信道不可靠, 數(shù)據(jù)傳輸要可靠. 三次達(dá)到了, 那后面你想接著握手也好, 發(fā)數(shù)據(jù)也好, 跟進(jìn)行可靠信息傳輸?shù)男枨缶蜎]關(guān)系了. 因此,如果信道是可靠的, 即無論什么時(shí)候發(fā)出消息, 對方一定能收到, 或者你不關(guān)心是否要保證對方收到你的消息, 那就能像UDP那樣直接發(fā)送消息就可以了.”。

為什么要4次揮手?
  • 確保數(shù)據(jù)能夠完成傳輸。

    關(guān)閉連接時(shí),當(dāng)收到對方的FIN報(bào)文通知時(shí),它僅僅表示對方?jīng)]有數(shù)據(jù)發(fā)送給你了;但未必你所有的數(shù)據(jù)都全部發(fā)送給對方了,所以你可以未必會(huì)馬上會(huì)關(guān)閉SOCKET,也即你可能還需要發(fā)送一些數(shù)據(jù)給對方之后,再發(fā)送FIN報(bào)文給對方來表示你同意現(xiàn)在可以關(guān)閉連接了,所以它這里的ACK報(bào)文和FIN報(bào)文多數(shù)情況下都是分開發(fā)送的。

總結(jié)

以上是生活随笔為你收集整理的TCP为什么需要三次握手和四次挥手的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。