資料鏈路層的基本問題

2021-10-03 13:14:54 字數 1358 閱讀 8042

1. 封裝成幀

①資料鏈路層將ip的資料報的前後分別新增首部和尾部,構成乙個幀。但因該層的協議很多,不同協議的幀的首部和尾部資訊所有不同。

②幀的首部和尾部有幀開始符和結束符,被稱為幀定界符。

2. 透明傳輸

①幀定界符:可以選用ascii碼表中的soh(0x01)作為幀開始定界符,eot(0x04)為幀結束定界符。

②如果資料部分出現「eot」或「soh」時要進行位元組填充。(具體方法:傳送端的資料鏈路層在資料**現控制字元「eot」、「soh」以及「esc」,則在前面插入乙個轉義字元「esc」的編碼。接收端的資料鏈路層在收到刪除這個插入的轉義字元。這樣用位元組填充法解決透明傳輸的問題)。

3. 差錯檢測

①現實的通訊鏈路都不會是理想的,在傳輸過程中可能會產生差錯。為了保證資料傳輸的可靠性,必須採用各種差錯檢驗技術(如迴圈冗餘檢驗,crc)。

②要讓接收端能夠判斷幀在傳輸過程中是否有差,需要在幀中包含用於檢測錯誤的資訊,這部分資訊稱為「幀校驗序列(fcs)」

③以crc技術為例計算fcs。假設要檢測的資料為m=101001(注意,不僅包含幀的資料部分,還包含了資料鏈路層的首部),要想得到n位fcs。則計算過程如下:

a.要得到n位的fcs,則必須先在m後面新增n位(這裡假設n為3)的0,得到被除數101001 000。再除以收發雙方事先商定好的n+1位除數p(設為1101),得到商q,餘數r(n位,比除數少一位),這個r(001)就是要計算的fcs。

b.接收方收到後,會使用m和fcs合成乙個二進位制數(即101001001),再除以p(1101),如果餘數為0,表示該幀沒有差錯。否則表示傳輸有差錯,就會丟棄從而出現丟包現象(這個得由傳輸層的tcp協議通過丟包重傳來實現可靠傳輸)

④幀檢驗序列fcs包含了幀的資料部分(來自網路層)和資料鏈路層的首部。這意味著,如果通訊經過多條鏈路時,ip資料報的源和目標位址會被修改或者經過路由器時網路層首部的ttl(生存時間減1),這些會造成ip資料報的變化。而當通訊由一條鏈路到下一條鏈路時由於協議不同,會造成資料鏈路層首部格式不同,幀開始和結束符也不同,這都需要將幀進行重新封裝,重新計算fcs。幸運的是,這些都是由硬體完成的,處理速度很快,不會延誤資料的傳輸。

計網 資料鏈路層 1 基本問題

網路層的資料報交付給資料資料鏈路層,資料鏈路層需要在報文 一般是ip資料報 的前後加上首部和尾部,將報文封裝,區分開來。接收方無法區分資料報 也叫分組 網路中的資料以分組為單位。使用某些手段 如轉義字元 把資料報 現的與幀定界符相同的資料標識為普通資料,就像看不見 看不見 看不見一樣 如果不實現透明...

資料鏈路層

資料鏈路的定義 鏈路 計算機網路中相鄰節點的一段物理線路。資料鏈路 計算機網路中節點到節點相鄰的一段物理路線加上控制在這些路線上傳輸資料的協議。資料鏈路層解決的問題 對於計算機網路裡面的每一層,其實都是為了解決某乙個層面的問題而設計出來的,資料鏈路層也一樣 由於物理層只解決了訊號流在物理媒介的傳輸問...

資料鏈路層

首先撇清兩個概念 鏈路和資料鏈路。鏈路是指從乙個結點到另乙個結點的一段物理線路,而中間沒有任何其他的交換結點,在進行資料通訊時,兩個計算機之間的通訊路徑往往要經過許多段這樣的鏈路,可見鏈路只是一條路徑的組層部分,資料鏈路是除了一條物理鏈路外還需要加上一些必要的通訊協議來控制這些資料的傳輸。若把這些實...