如何確保TCP協議傳輸穩定可靠?

TCP,控制傳輸協議,它充分實現了數據傳輸時的各種控制功能:
針對發送端發出的數據包確認應答信號ACK;
針對數據包丟失或者出現定時器超時的重發機制;
針對數據包到達接收端主機順序亂掉的順序控制;
針對高效傳輸數據包的滑動窗口控制;
針對避免網絡擁堵時候的流量控制;
針對剛開始啓動的時候避免一下子發送大量數據包而導致網絡癱瘓的慢啓動算法和擁塞控制。

此外,TCP作爲一種面向有連接的控制傳輸協議,只有在確認對端主機存在時纔會發送數據,從而可以控制通信流量的浪費。

如何確保TCP協議傳輸穩定可靠?

TCP通過序列號、超時重傳、檢驗和、流量控制、滑動窗口、擁塞控制實現可靠性。

1、應用數據被分割成TCP認爲最適合發送的數據塊。

2、TCP給發送的每一個包進行編號,接收方對數據包進行排序,把有序數據傳送給應用層。

3、TCP的接收端會丟棄重複的數據。

4、超時重傳:當TCP發出一個段後,它啓動一個定時器,等待目的端確認收到這個報文段。如果不能及時收到一個確認,將重發這個報文段。

5、校驗和:TCP將保持它首部和數據的檢驗和,發送的數據包的二進制相加然後取反。這是一個端到端的檢驗和,目的是檢測數據在傳輸過程中的任何變化。如果收到段的檢驗和有差錯,TCP將丟棄這個報文段和不確認收到此報文段。

6、流量控制:TCP連接的每一方都有固定大小的緩衝空間,TCP的接收端只允許發送端發送接收端緩衝區能接納的我數據。當接收方來不及處理髮送方的數據,能提示發送方降低發送的速率,防止包丟失。TCP使用的流量控制協議是可變大小的滑動窗口協議。接收方有即時窗口(滑動窗口),隨ACK報文發送。(TCP 利用滑動窗口實現流量控制)

7、滑動窗口:實際中的傳輸方式,
需要說明一下,如果你不瞭解TCP的滑動窗口這個事,你等於不瞭解TCP協議。
我們都知道,TCP必需要解決的可靠傳輸以及包亂序的問題,
所以,TCP必需要知道網絡實際的數據處理帶寬或是數據處理速度,這樣纔不會引起網絡擁塞,導致丟包。

8、擁塞控制:當網絡擁塞時,減少數據的發送。發送方有擁塞窗口,發送數據前比對接收方發過來的即使窗口,取小慢啓動、擁塞避免、擁塞發送、快速恢復。應用數據被分割成TCP認爲最適合發送的數據塊,TCP的接收端會丟棄重複的數據。

停止等待協議也是爲了TCP協議傳輸穩定可靠,它的基本原理就是每發完一個分組就停止發送,等待對方確認。在收到確認後再發下一個分組。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章