網路中的捎帶傳輸是什麼?
在可靠的全雙工資料傳輸中,將確認資訊附加到傳出的資料幀的技術稱為捎帶傳輸。
為什麼使用捎帶傳輸?
通訊大多本質上是全雙工的,即資料傳輸在兩個方向上同時進行。實現全雙工通訊的一種方法是將通訊視為一對單工通訊。每個鏈路包含一個用於傳送資料的正向通道和一個用於傳送確認資訊的反向通道。
但是,在上述安排中,每個傳輸的資料單元的通訊負載都會加倍。所有資料傳輸的一半都包含確認資訊的傳輸。
因此,捎帶傳輸提供了一種更好的頻寬利用率的解決方案。在這裡,確認資訊的傳送被延遲,直到下一個資料幀可用進行傳輸。然後將確認資訊附加到傳出的資料幀上。資料幀包含一個ack欄位。ack欄位的大小隻有幾個位元,而確認幀包含幾個位元組。因此,在減少頻寬需求方面獲得了可觀的收益。
工作原理
假設有兩個通訊站X和Y。傳輸的資料幀具有一個確認欄位,即ack欄位,其長度為幾個位元。此外,還有用於傳送確認資訊的幀,即ACK幀。目的是最大限度地減少ACK幀。
當站點X想要與站點Y通訊時,控制捎帶傳輸的三個原則是:
如果站點X同時有資料和確認資訊要傳送,則它傳送一個數據幀,其中ack欄位包含要確認的幀的序列號。
如果站點X只有確認資訊要傳送,則它等待一段有限的時間,以檢視是否有資料幀可用傳送。如果資料幀可用,則它將確認資訊附加到資料幀上。否則,它傳送一個ACK幀。
如果站點X只有資料幀要傳送,則它將最後一個確認資訊附加到資料幀上。站點Y丟棄所有重複的確認資訊。或者,站點X可以傳送資料幀,其中ack欄位包含表示沒有確認資訊的位元組合。
示例
下圖說明了三種情況:

廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP