菜雞學習——TCP

TCP協議與UDP協議的區別

TCP基於面向連接、字節流傳輸的協議,數據傳輸可靠,傳輸速度慢。TCP通過序號、重傳、流量控制、擁塞控制實現可靠傳輸。適用於傳輸大量數據,可靠性要求高的場合。 UDP協議面向非連接、數據報傳輸協議,數據傳輸不可靠,傳輸速度快。UDP不保障可靠傳輸,盡最大努力交付。適用於一次只傳送少量數據、對可靠性要求不高的應用環境。

TCP 可靠傳輸

1、確認和重傳:接收方收到報文就會確認,發送方發送一段時間後沒有收到確認就重傳。

2、數據校驗:TCP校驗和是一個端到端的校驗和,由發送端計算,然後由接收端驗證。如果接收方檢測到校驗和有差錯,則TCP段會被直接丟棄。

3、數據合理分片和排序:

  UDP:IP數據報大於1500字節,大於MTU.這個時候發送方IP層就需要分片(fragmentation).把數據報分成若干片,使每一片都小於MTU.而接收方IP層則需要進行數據報的重組.這樣就會多做許多事情,而更嚴重的是,由於UDP的特性,當某一片數據傳送中丟失時,接收方便無法重組數據報.將導致丟棄整個UDP數據報.

  tcp會按MTU合理分片,接收方會緩存未按序到達的數據,重新排序後再交給應用層。

4、流量控制:當接收方來不及處理髮送方的數據,能提示發送方降低發送的速率,防止包丟失。

5、擁塞控制:當網絡擁塞時,減少數據的發送。
 

 

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