《TCP/IP詳解 卷一》讀書筆記-----TCP資料流

來源:互聯網
上載者:User

標籤:

1、Delayed Acknowledgements:TCP通常不會在收到資料之後立即返回一個ACK,而是會有一個延時,希望能ACK報文段中帶上一些資料,通常這個延時為200ms

2、Nagle Algorithm:在TCP串連中,只能有一個小的報文段未被確認。即TCP在發送了一個小的報文段之後,會將之後的小資料都收集起來,直到之前的小報文段得到確認,才將收集到的小資料打包成一個報文段發出。這樣做的減少了網路中小報文段的數量,減輕了網路的阻塞,提高了傳輸的效率

3、當一個包到達以後,它首先被裝置驅動的中斷處理常式處理,然後被添加到IP的輸入隊列中,最後被送給TCP進行處理,到要發送delayed acknowledgement的時候,就將確認序號置為已經處理過的報文段中同步序號的最大值加1

4、sliding window:即滑動視窗協議,接收方不必為每個接收到的報文段發送ACK確認報文,進行累計確認即可。例如收到了N-1024~N,N~N+1024兩個報文段,那麼只要返回一個ACK序號為N+1024的報文段即可

5、如所示,發送方發送資料的速度大於接受方處理資料的速度,發送方連續發送了四個包含1024個資料位元組的報文段,此時已經填滿了接收方建議的滑動視窗的大小,於是它停止發送資料。之後,接收方發送了一個ACK進行累計確認並且建議的視窗大小為0,發送方依舊不能發送資料。最後,接收方又發送了一個ACK,該報文段稱為window update ,它的作用並不是用來對任何資料進行確認的,而是告訴發送方可以繼續發送資料了

6、發送端的滑動視窗如所示:方框的大小為發送方能夠發送並且未被確認的位元組序列的數目,當收到ACK報文時,方框的左邊界就會向左移,當接收方的TCP緩衝變大時,方框的右邊界就會向右移。那麼會不會出現右邊界向左移動的情況呢?其實是不會的,我們先討論最壞的情況,那就是接收方沒有處理任何新的資料,並且由於接受了新的資料導致緩衝又變小了,但是此時我們可以發現對於發送方來說,只是左邊界向右移了,而右邊界沒有發生變化而已。因此最壞的情況只是右邊界不移動而已,並不會存在滑動視窗的右邊界向左移的情況

7、Slow Start:即慢啟動,這個演算法基於這樣一種觀察結果:發送方發包的速率應該和接收方發送確認報的速率相同。因此又引入了一個叫擁塞視窗(congestion window),剛開始傳輸資料的時候,擁塞視窗的大小為一個報文段的大小,當第一個報文段被確認後,視窗大小變為二,當之後的兩個報文段被確認後,擁塞視窗變為四,依次類推。直到發現丟包時,說明擁塞視窗太大了,再對它進行相應的處理。這裡需要的注意的是:擁塞視窗和滑動視窗是同時起作用的,通常發送方能夠發送的資料的數量是兩者的較小值

8、PUSH flag:當TCP報文段中PUSH標誌被置位時,意思是發送方要求接收方立即將接收到的資料交給相應的接收方進程。這裡的資料包括當前收到的PUSH被置位的報文段中的資料,也包括接收方之前收到的,被放在緩衝中的資料。一般來說,現在已經不能通過程式將報文段中的PUSH標誌置位了,因為大多數TCP 的實現都能自動確定需不需要置PUSH標誌

《TCP/IP詳解 卷一》讀書筆記-----TCP資料流

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.