【计算机网络】数据链路层 : 差错控制 ( 检错编码 | 差错来源 | 差错分类 | 冗余编码 )
文章目錄
- 一、 差錯來源
- 二、 差錯分類
- 三、 差錯控制
- 四、 "物理層" 編碼 與 "數據鏈路層" 編碼 對比
- 五、 冗余編碼
一、 差錯來源
"差錯" 來源 : 差錯是由于 噪聲 產生 ;
① 全局性噪聲 :
- 噪聲來源 : 由于 線路 本身的 電氣特性 產生的 “隨機噪聲” , 該 噪聲 是信道固有的 , 隨機存在的 ;
- 解決方案 : 提高信噪比
② 局部性噪聲 : 這是差錯的主要原因 ;
- 噪聲來源 : 外界 短暫 原因 造成的 “沖擊噪聲” ;
- 解決方案 : 使用 編碼技術 解決 ;
二、 差錯分類
差錯分類 :
① 位錯誤 : 比特位出現錯誤 , 111 變成 000 , 000 變成 111 ;
② 幀錯誤 : 分為以下三種 :
- 幀丟失 : 丟失了某個數據幀 ;
- 幀重復 : 連續接收到兩個相同的數據幀 ;
- 幀失序 : 數據幀接收次序被打亂 ;
鏈路層服務選擇 : 根據鏈路的質量 , 選擇不同的 鏈路層 為 網絡層 提供的服務 ;
① 通信質量好的 有線傳輸鏈路 : 采用 無確認 無連接 服務 ;
② 通信質量差的無線傳輸鏈路 : 采用 有確認無連接服務 或 有確認面向連接服務 ;
三、 差錯控制
差錯控制時機 :
① 提早發現錯誤 : 在鏈路層進行差錯控制 , 可以 盡早得到錯誤的信息 , 及時重傳 ;
② 節省資源 : 在 發送方 發送之后 , 到達第一個路由器 , 就發現了出現錯誤 , 此時就可以及時中斷錯誤傳輸 , 避免向后傳輸浪費網絡資源 ;
差錯控制 : 主要是針對 比特錯誤 ;
檢錯編碼 : 只是單純發現錯誤 , 不能糾錯 ;
- 奇偶檢驗碼
- 循環冗余碼 CRC
糾錯編碼 : 海明碼 , 除了發現錯誤之外 , 還能知道哪個位置發生了錯誤 ;
四、 “物理層” 編碼 與 “數據鏈路層” 編碼 對比
"物理層" 碼元編碼 與 “數據鏈路層” 差錯控制編碼 比較 :
① “物理層” 的編碼 : 是針對 單個比特進行編碼 , 解決傳輸過程中的 比特同步 問題 , 如 曼徹斯特編碼 , 差分曼徹斯特編碼 ;
② “數據鏈路層” 的編碼 : 是針對 一組比特 , 通過 冗余編碼 , 檢查該比特串在傳輸過程中是否出錯 ;
五、 冗余編碼
冗余編碼 :
① 附加冗余位 : 數據發送之前 , 附加上指定長度的 冗余位 , 構成 符合 某規則 的數據后再發送 ;
② 發送端計算冗余位 : 當發送數據改變時 , 對應的冗余位 也隨之改變 , 數據 與 該 冗余位之間有一定的規則 ;
③ 接收端校驗冗余位 : 接收端 接收到數據后 , 根據冗余位判定接收的數據是否 符合規則 , 是否出出錯 ;
總結
以上是生活随笔為你收集整理的【计算机网络】数据链路层 : 差错控制 ( 检错编码 | 差错来源 | 差错分类 | 冗余编码 )的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【计算机网络】数据链路层 : 概述 (
- 下一篇: 【计算机网络】数据链路层 : 差错控制