1. 程式人生 > >第二章 數據通信的基礎知識 計算機網絡筆記 學堂在線 2.4差錯控制

第二章 數據通信的基礎知識 計算機網絡筆記 學堂在線 2.4差錯控制

結果 避免 重新發送 通信 網絡筆記 檢驗 冗余 不同 計算機

1 檢錯碼
檢錯碼C的函數f最好具備以下特點:
  1 不同的數據D對應著不同的C
  2 C的位數遠遠小於D且固定
  3 函數f計算過程簡單

檢驗和: 計算過程:
  1 將數據分為長度固定的數據段
  2 根據反碼運算規則累加分段後產生的每一段數據
  3 將累加結果取反作為檢錯碼C
特點:對於分布在多段數據中的二進制錯誤,有可能無法檢測出

循環冗余碼:CRC
  生成循環冗余碼:
    1 假定傳輸的數據為M(x) = 11000011
    2 找一個除數G(x) = 10011, G(x)最高位指數為r = 4
    3 11000011 * 2^r = 110000110000
    4 110000110000/10011 得到的余數R就是數據11000011的檢錯碼
  檢錯過程:接受到的數據(M(x)` * 2^r - R)/G(x),如果整除,則正確。
  關鍵是找除數G(x),G(x)生成多項式


2 確認和重傳
確認:
  在數據傳輸正確的情況下,接收端向發送端發送確認應答(ACK)幀。
  發送端只有接受到接受端發送的確認應答幀,才能確認數據正確傳輸。
重傳:
  發送端在規定時間內沒有接收到確認應答幀,再次發送數據幀

避免重復接受:
  數據帶一個序號n-1 ,確認應答幀也需要帶序號n。說明小於n的數據幀都已經正確接收

連續發送:在前一個數據確認之前發送下一個數據
累計確認:確認序號n就確認所有序號小於n 的數據幀。

差錯控制機制小結:
  檢錯碼:接收端判斷數據是否正確
  確認應答:發送端判別數據是否被正確接收
  重傳:出錯數據必須重新發送
  序號:避免接收端重復接受數據

第二章 數據通信的基礎知識 計算機網絡筆記 學堂在線 2.4差錯控制