滑動視窗(Sliding Window)的主要作用是提高數據傳輸效率,控制流量,並確保數據的可靠傳輸。滑動視窗是一種流量控制機制,廣泛應用於數據鏈路層和傳輸層協議,如TCP(傳輸控制協議)。
滑動視窗允許發送方在等待確認(ACK)的同時繼續發送多個數據幀(frames)。這種方式可以充分利用網絡帶寬,減少等待時間,從而提高整體數據傳輸效率。
滑動視窗機制通過調節發送方和接收方之間的數據流量來避免網絡擁塞。接收方通過發送視窗大小(window size)告訴發送方其接收緩衝區的容量,發送方根據這個視窗大小調整數據發送速率,確保接收方不會因為數據過多而溢出。
滑動視窗還具有錯誤控制功能。發送方會保持一個已發送但尚未確認的數據幀的副本,當接收到接收方的確認信息時,發送方可以移動視窗,釋放已確認的數據幀,並發送新的數據幀。如果某個數據幀未能在預期時間內收到確認,發送方可以重新傳輸該數據幀,確保數據不丟失。