TCP/IP 之TCP協議(4):差錯控制

來源:互聯網
上載者:User
1、TCP必須保證資料:按序,沒有差錯,沒有部分丟失,沒有重複的交給應用程式層。方法就是:校正和,確認,逾時重傳

2、校正和:和UDP的做法一樣,也要偽首部,和UDP不同的是這個功能在TCP中是必須的

3、確認:ACK的確認機制(下面是一些原則)

a、ACK報文不需要確認,也不消耗序號

b、當一端發送資料時,盡量包含捎帶確認。

c、收端延遲發送ACK報文段,如果僅有一個未確認的按序報文段;延遲到500ms,或者有第二個報文段接收時(轉d),或者有資料要發送時(轉b)

d、任何時候,不能有兩個(以上)未確認的報文段(就是說如果收端有兩個未確認的按序報文段,就馬上發送ACK報文段進行確認)

e、當收到一個序號比期望序號還大的報文段時,馬上發送ACK,讓發端進行快重傳

f、收到重複的報文段,就立即發送確認(解決ACK丟失問題)

g、丟失的報文段到達,發送確認,表示已經收到了丟失的報文

4、確認類型

累計確認:收端忽略掉所有失序報文,告知發端他期待下一個收到的序號,叫做肯定累計ACK。肯定是說:丟棄的,丟失的,重複的都不報告。

選擇確認(SACK):在某些新TCP實現裡面實現了這個東西,報告失序和重複的資料,作偽TCP首部選項欄位的一部分。

5、重傳(兩種情況) : 重傳定時器時間到,或者 發端收到重複的三個ACK(快重傳)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.