溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何理解TCP/IP三次握手和四次揮手

發(fā)布時間:2021-10-14 16:01:10 來源:億速云 閱讀:162 作者:iii 欄目:編程語言

本篇內(nèi)容介紹了“如何理解TCP/IP三次握手和四次揮手”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠?qū)W有所成!

  • tcp/ip架構:OSI七層模型、TCP/IP四層模型、五層體系結構

如何理解TCP/IP三次握手和四次揮手

  1. TCP協(xié)議是面向連接、可靠的協(xié)議,效率低(字節(jié)流)

  2. UDP協(xié)議是面向無連接,不可靠的協(xié)議,效率高(報文)

  • TCP三次握手(確保傳輸可靠)

如何理解TCP/IP三次握手和四次揮手

  • 三次握手操作:

  1. 客戶端先發(fā)送一個建立連接的報文給服務端(SYN=1,seq=x(隨機序號))

  2. 服務端收到請求后,向客戶端回傳消息(SYN=1,seq=y,ACK=1,ack=x+1)

  3. 客戶端收到應答后,最后通知服務端(ACK=1,ack=y+1此時建立連接成功

  • 為什么不是兩次握手

  1. 第三次握手是讓客戶端確認服務端返回的響應是否是正確,如果不正確則不建立連接

  2. 如果在第二次握手的時候就建立了連接,不能避免因為網(wǎng)絡延遲造成不必要的服務器開銷,每次過來消息都會建立一個新的連接

  • 四次揮手

如何理解TCP/IP三次握手和四次揮手

  1. 客戶端發(fā)送一個斷開連接的報文給服務端(FIN=1,seq=x(增長序號))

  2. 服務端收到請求后,可能手頭還有數(shù)據(jù)沒處理完,所以先回復確認消息給客戶端(ACK=1,ack=x+1)

  3. 服務端處理完數(shù)據(jù)后,通知客戶端斷開連接(FIN=1,seq=y)此時服務端停止發(fā)送數(shù)據(jù),保持接收

  4. 客戶端收到響應后通知服務端(ACK=1,ack=y+1)客戶端等待2MSL后關閉,此時斷開連接

  • 為什么不是三次揮手?

釋放連接時,服務端是很被動的,突然接到客戶端釋放連接的請求不能立馬釋放,而是先返回確
認報文,等數(shù)據(jù)處理完再返回釋放連接的響應,對比三次握手,服務器在響應時多了一步操作

  • 為什么要等待2MSL?

MSL是一段TCP報文在傳輸過程中的最大生存期,服務器端在1MSL內(nèi)沒有收到客戶端發(fā)出的確認報文會再次向客戶端發(fā)出同意關閉請求

客戶端等待2MSL再關閉,在此期間沒有收到服務端的請求,說明服務端已經(jīng)正常關閉  

  • 如何保證可靠傳輸

  1. 應用數(shù)據(jù)被分割成TCP認為最適合發(fā)送的數(shù)據(jù)塊。

  2. 超時重傳:當TCP發(fā)出一個段后,它啟動一個定時器,等待目的端確認收到這個報文段。如果不能及時收到一個確認,將重發(fā)這個報文段。

  3. TCP給發(fā)送的每一個包進行編號,接收方對數(shù)據(jù)包進行排序,把有序數(shù)據(jù)傳送給應用層。

  4. 校驗和:TCP將保持它首部和數(shù)據(jù)的檢驗和。這是一個端到端的檢驗和,目的是檢測數(shù)據(jù)在傳輸過程中的任何變化。如果收到段的檢驗和有差錯,TCP將丟棄這個報文段和不確認收到此報文段。

  5. TCP的接收端會丟棄重復的數(shù)據(jù)。

  6. 流量控制:TCP連接的每一方都有固定大小的緩沖空間,TCP的接收端只允許發(fā)送端發(fā)送接收端緩沖區(qū)能接納的我數(shù)據(jù)。當接收方來不及處理發(fā)送方的數(shù)據(jù),能提示發(fā)送方降低發(fā)送的速率,防止包丟失。TCP使用的流量控制協(xié)議是可變大小的滑動窗口協(xié)議。

  7. 擁塞控制:當網(wǎng)絡擁塞時,減少數(shù)據(jù)的發(fā)送。

“如何理解TCP/IP三次握手和四次揮手”的內(nèi)容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業(yè)相關的知識可以關注億速云網(wǎng)站,小編將為大家輸出更多高質(zhì)量的實用文章!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI