您好,登錄后才能下訂單哦!
這篇文章主要講解了“計算機網絡的可靠數據傳輸原理是什么”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“計算機網絡的可靠數據傳輸原理是什么”吧!
計算機網絡本身可能出現數據包受損、丟失、亂序到達等問題,如果在編寫網絡應用時有一套可靠傳輸協議,就可以避免這些復雜的底層問題;如果沒有那么所有的網絡應用都要實現數據包的容錯機制,也算是重復解決同一個問題,因此就出現了tcp可靠傳輸協議。
tcp協議本身非常復雜,它的實現依賴于可靠傳輸的基本原理,主要內容如下:
1、由于數據包可能受損,因此發送方除了發送數據本身,還需附帶數據的校驗和;接受方拿到數據后會重新計算校驗和并與接受的校驗和進行比較,如果相等則數據是完整的。
2、如果數據確實受損,接受方就會發送一個反饋消息要求發送方重新發送數據,反之發送一個正常接受的反饋消息要求發送下一個數據包;
3、由于反饋消息也可能受損,導致發送方不能正確識別,因此需要將原先的數據再發送一遍。如果是正常接受的反饋消息受損,發送方仍會重新發送當前數據包,但是接受方如何分辨新接受的數據包是之前的數據包還是新數據包呢(如果不分辨,接受方會處理兩份相同的數據包,在邏輯上就已經發生錯誤)?解決的方法是發送方在發送數據包時附帶一個遞增的數據編號(不過真正實現時可以用1個bit位來表示,因為不同的數據包編號一定不同從而呈現出0和1互相交互的狀態),接收方會緩存上一個成功接收的數據包,如果數據包編號相同則直接丟棄;
4、有了數據的校驗和、序號機制和應答機制已經可以解決數據包的受損和亂序到達問題,但數據包還可能會丟失(包括數據包本身和反饋消息),發送方很可能永遠收不到接受方的反饋消息,此時發送方需要定期發送數據包,這個期限應該是網絡數據包正常往返的平均時間,如果超過接受期限未接受到反饋消息就重新發送數據包。
感謝各位的閱讀,以上就是“計算機網絡的可靠數據傳輸原理是什么”的內容了,經過本文的學習后,相信大家對計算機網絡的可靠數據傳輸原理是什么這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。