先看兩幅圖片,分別為路由器的乙太網介面、序列介面,每個介面下都有大量的CRC錯誤。
什麼是CRC校驗錯誤?
通常,傳送方的資料鏈路層(網絡卡),將IP報文新增幀頭、幀尾,然後硬體晶片將整個幀,編碼成0、1二進位制流,傳送到網線上去。幀尾就是圖中的CRC,共4個位元組,用於接收方校驗幀在網線的傳輸過程中,幀資料是否發生了改變。
CRC校驗覆蓋範圍
從圖中的“Destination MAC”第一位起,到“Payload”最後一位止,是CRC校驗的計算範圍,傳送方將己方的計算得到的CRC校驗值,填入幀尾的CRC部分中。
接收方如何校驗?
接收方的硬體網絡卡,將接收到的幀分成兩部分:
接收到的幀資料
接收到的CRC
使用和傳送方相同的迴圈冗餘校驗演算法(CRC),計算出本地計算的CRC。
如果 接收到的CRC = 本地計算的CRC,
則校驗成功,幀資料接收成功,等待上層程式前來提取。
否則校驗失敗,幀資料被丟棄處理。
什麼原因造成CRC錯誤?
絕大多數是由於網線質量差造成的,換一根質量好一些的網線即可。
極少一部分是由於網絡卡的驅動程式、不恰當的配置造成的,需要更新驅動程式。
非常稀少的可能是由於網絡卡硬體的故障造成的,換一塊網絡卡測試一下便知。
先看兩幅圖片,分別為路由器的乙太網介面、序列介面,每個介面下都有大量的CRC錯誤。
什麼是CRC校驗錯誤?
通常,傳送方的資料鏈路層(網絡卡),將IP報文新增幀頭、幀尾,然後硬體晶片將整個幀,編碼成0、1二進位制流,傳送到網線上去。幀尾就是圖中的CRC,共4個位元組,用於接收方校驗幀在網線的傳輸過程中,幀資料是否發生了改變。
CRC校驗覆蓋範圍
從圖中的“Destination MAC”第一位起,到“Payload”最後一位止,是CRC校驗的計算範圍,傳送方將己方的計算得到的CRC校驗值,填入幀尾的CRC部分中。
接收方如何校驗?
接收方的硬體網絡卡,將接收到的幀分成兩部分:
接收到的幀資料
接收到的CRC
使用和傳送方相同的迴圈冗餘校驗演算法(CRC),計算出本地計算的CRC。
如果 接收到的CRC = 本地計算的CRC,
則校驗成功,幀資料接收成功,等待上層程式前來提取。
否則校驗失敗,幀資料被丟棄處理。
什麼原因造成CRC錯誤?
絕大多數是由於網線質量差造成的,換一根質量好一些的網線即可。
極少一部分是由於網絡卡的驅動程式、不恰當的配置造成的,需要更新驅動程式。
非常稀少的可能是由於網絡卡硬體的故障造成的,換一塊網絡卡測試一下便知。