首頁  >  文章  >  提供可靠傳輸的傳輸層協定是什麼

提供可靠傳輸的傳輸層協定是什麼

青灯夜游
青灯夜游原創
2021-07-12 14:06:3323779瀏覽

提供可靠傳輸的傳輸層協定是TCP。 TCP(傳輸控制協定)是一種面向連接的、可靠的、基於位元組流的傳輸層通訊協定;它是為了在不可靠的互聯網絡上提供可靠的端對端位元組流而專門設計的一個傳輸協定。

提供可靠傳輸的傳輸層協定是什麼

本教學操作環境:windows10系統、Dell G3電腦。

在TCP/IP協定簇中,有兩個互不相同的傳輸協定:TCP(傳輸控制協定)和UDP(用戶資料報協定)。 TCP協定是連線導向的協定,它比較可靠﹑安全﹑穩定,但是效率不高,佔用資源較多。 UDP協定是無連接方式的協議,它的效率高﹑速度快﹑佔資源少,但是其傳輸機制為不可靠傳送,必須依靠輔助的演算法來完成傳輸的控制。

因此,提供可靠傳輸的傳輸層協定是TCP。

TCP旨在適應支援多網路應用的分層協定層次結構。連接到不同但互連的電腦通訊網路的主電腦中的成對進程之間依靠TCP提供可靠的通訊服務。 TCP假設它可以從較低層級的協定獲得簡單的,可能不可靠的資料報服務。原則上,TCP應該能夠在從硬線連接到分組交換或電路交換網路的各種通訊系統之上操作。

TCP傳輸控制協定是為了在不可靠的互聯網絡上提供可靠的端對端位元組流而專門設計的一個傳輸協定。

主要功能:

當應用層向TCP層發送用於網間傳輸的、用8位元組表示的資料流,TCP則把資料流分割成適當長度的封包段,最大傳輸段大小(MSS)通常受該電腦連接的網路的資料鏈結層的最大傳送單元(MTU)限制。之後TCP把資料包傳給IP層,由它來透過網路將包傳送給接收端實體的TCP層。

TCP為了確保封包傳輸的可靠,就給每個包一個序號,同時序號也保證了傳送到接收端實體的包的按序接收。然後接收端實體對已成功收到的位元組傳回一個對應的確認(ACK);如果發送端實體在合理的往返延遲(RTT)內未收到確認,那麼對應的資料(假設遺失了)將會被重傳。

  • 在資料正確性與合法性上,TCP用一個校驗和函數來檢驗資料是否有錯誤,在發送和接收時都要計算校驗和;同時可以使用md5認證對資料進行加密。

  • 在保證可靠度上,採用逾時重傳和捎帶確認機制。

  • 在流量控制上,採用滑動視窗協議,協議中規定,對於視窗內未經確認的分組需要重送。

在壅塞控制上,採用廣受好評的TCP擁塞控制演算法(也稱為AIMD演算法)。演算法主要包含四個主要部分:

(1)慢啟動

每當建立一個TCP連線時或一個TCP連線發生逾時重傳後,此連線便進入慢啟動階段。進入慢啟動後,TCP實體將壅塞視窗的大小初始化為一個封包段,即:cwnd=1。此後,每收到一個封包的確認(ACK),cwnd值加1,即擁塞視窗按指數增加。當cwnd值超過慢啟動闡述值(ssthresh)或發生封包遺失重傳時,慢啟動階段結束。前者進入壅塞避免階段,後者重新進入慢啟動階段。

(2)壅塞避免

在慢啟動階段,當cwnd值超過慢啟動闡述值(ssthresh)後,慢啟動過程結束,TCP連線進入壅塞避免階段。在擁塞避免階段,每一次發送的cwnd個報文段完全確認後,才將cwnd值加1。在此階段,cwnd值線性增加。

(3)快速重傳

快速重傳是對逾時重傳的改進。當來源端收到對同一個報文的三個重複確認時,就確定一個報文段已經遺失,因此立刻重傳遺失的報文段,而不必等到重傳定時器(RTO)逾時。以此減少不必要的等待時間。

(4)快速復原

快速復原是對遺失復原機制的改進。在快速重傳之後,不經過慢啟動過程而直接進入擁塞避免階段。每當快速重傳後,置ssthresh=cwnd/2、ewnd=ssthresh 3。此後,每收到一個重複確認,將cwnd值加1,直至收到對丟失報文段和其後若干報文段的累積確認後,置cwnd=ssthresh,進入擁塞避免階段。

更多相關知識,請造訪常見問題欄位!

以上是提供可靠傳輸的傳輸層協定是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn