資料鏈路層使用的通道:
1.點對點通道:使用一對一的點對點通訊方式
2.廣播通道:使用一對多的廣播通訊方式
資料鏈路層的三個基本問題:
1.封裝成幀
2.透明傳輸
3.差錯檢測
3.1.1 資料鏈路和幀
鏈路:從乙個結點到相鄰結點的一段物理線路,中間沒有任何其他的交換結點。
資料鏈路:需要有一條物理線路用於傳輸資料外,還需要有必要的通訊協議(使用網路介面卡)來控制這些資料的傳輸。
幀:資料鏈路層的協議資料單元
3.1.2 三個基本問題
1.封裝成幀:在資料的前後分別新增首部和尾部,就構成了乙個幀。
在網際網路上傳送的資料都已分組(即 ip 資料報)為傳送單位,網路層的 ip 資料報傳送到資料鏈路層就成為幀的資料部分,再加上首部和尾部,就構成乙個完整的幀。
最大傳輸單元 mtu :所能傳送的幀的資料部分長度上限
幀的資料部分與mtu的關係如下圖:
幀的資料部分有四部分構成:
① 目的 ip 位址
② 源 ip 位址
③ 上一層用的協議型別型別
④ 資料
幀的首部尾部作用:作為幀定界符
當接收端接受到幀首部(soh)時認為乙個幀開始,只有接收到幀尾部(eot),才會將這個幀判定為乙個完整的幀,應當收下,否則丟棄。
2.透明傳輸:為了防止出現接收端錯誤的將特別字元(如soh、eot)作為幀開始或幀結束的情況,於是需要將這些特別字元透明傳輸。
解決辦法:在傳輸資料時出現的非幀定界符的前面插入乙個轉義字元「esc」。當接收端在它的資料鏈路層把資料送往網路層之前會刪除這個插入的轉義字元。這種方法稱為位元組填充或字元填充。若這個轉義字元也出現在資料中,解決辦法也是在轉義字元的前面插入乙個轉義字元,則接收端收到連續的兩個轉義字元時,就刪除其中前面的乙個。
3.差錯檢測:位元在傳輸過程中會產生差錯,如 1 可能會變成 0,而 0 也可能變成 1。這就叫做位元差錯。
目前在資料鏈路層廣泛使用迴圈冗餘檢驗crc(cyclic redundancy check) 的檢錯技術。
迴圈冗餘檢驗 crc:檢驗幀是否有差錯
幀檢驗序列 fcs:新增在資料後面的冗餘碼
迴圈冗餘檢驗原理:
現假定待傳送的資料m = 101001。crc 運算就是要在資料 m 的後面新增供差錯檢測用的 n 為冗餘碼,然後構成乙個幀傳送出去。
栗子:假定需要傳送的資料m=101001,直接給出的除數p=1101(或間接給出p的多項式為x^3+x^2+1,可轉換得出p為1101(1x^3+1x^2+0x^1+1x^0)),求出冗餘碼?
步驟:① 由除數得出 n = 3(除數的位數-1)
② 在資料 m 後面新增 n 個 0 作為被除數(101001000)與除數(1101)做異或運算,得出的餘數即冗餘碼
將冗餘碼加在資料m後面傳送,當接收端接收到該幀時,將該資料m(101001001)除以p(1101),若得出的餘數為0,則判定這個幀沒有差錯。若餘數不等於 0 ,則判定這個幀有差錯。
在資料鏈路層僅僅使用迴圈冗餘檢驗 crc 差錯檢測技術只能做到對幀的無差錯接受,而無法檢測幀丟失、幀重複、幀失序,所以資料鏈路層協議都不是可靠傳輸的協議。
3.2.1 什麼是ppp協議
ppp協議就是使用者計算機和 isp 進行通訊時所使用的資料鏈路層協議。
3.2.2 ppp協議的組成
① 乙個將 ip 資料報封裝到序列鏈路的方法
② 鏈路控制協議 lcp
③ 網路控制協議 ncp
3.2.3 ppp協議的幀格式
1. ppp幀的首部
2.資訊部分
資訊部分的長度是可變的。但不能超過1500位元組。
3.ppp幀的尾部
第乙個位元組是使用 crc 的幀檢驗序列 fcs(即冗餘碼)。
注:標誌字段就是ppp幀的定界符。連續兩幀之間只需要用乙個標誌字段。如果連續出現兩個標誌字段,就表示這是乙個空幀,應當丟棄。
零位元填充
3.3.1 區域網的資料鏈路層
1.區域網的分類
① 星形網
② 環形網
③ 匯流排網
2.介面卡的作用
計算機與外界區域網的連線是通過通訊介面卡進行的。可稱為網路介面卡或簡稱為「網絡卡」。
功能:
① 進行資料序列傳輸和並行傳輸的轉換。
② 介面卡中裝有對資料進行快取的儲存晶元。
③ 將介面卡的裝置驅動程式安裝在計算機的作業系統中。
④ 能實現乙太網協議。
3.3.2 csma/cd 協議
csma/cd:載波監聽多點接入/碰撞檢測
csma/cd 協議的要點:
(1)多點接入:許多計算機以多點接入的方式連線在一根匯流排上。
(2)載波監聽:不管在傳送前,還是在傳送中,每個站都必須不停地檢測通道。
(3)碰撞檢測:介面卡邊傳送資料邊檢測通道上的訊號電壓的變化情況,以便判斷自己在傳送資料時其他站是否也在傳送資料。
資料傳輸過程中發生碰撞後,會進行重傳。乙太網使用截斷二進位制指數退避演算法來確定重傳的時機。
退避演算法如下:
(1)乙太網規定了基本退避時間為爭用期2τ,具體的爭用期時間是51.2μs。
(2)從離散的整數集合[0,1,2,···,(2^k-1)]中隨機取出乙個數,記為r。重傳應推後的時間就是r倍的爭用期。
整數集合中的k = min[重傳次數,10]
可見當重傳次數不超過10時,引數k等於重傳次數;但當重傳次數超過10,k就不再增大而一直等於10。
(3)當重傳達 16 次仍不成功時,則丟棄該幀,並向高層報告。
乙太網規定了乙個最短幀長 64 位元組。
csma/cd 協議要點歸納:
(1)準備傳送。傳送之前,檢測通道是否空閒。
(2)檢測通道。當檢測到通道空閒時,並保持96位元時間內仍空閒(使剛剛收到資料幀的站的接受快取來得及處理,以便接受下個幀),則傳送該幀。
(3)傳送過程中不停地檢測通道,即介面卡要邊傳送邊監聽。
①傳送成功:未傳送碰撞,則繼續準備傳送。
②傳送失敗:爭用期內檢測到碰撞,停止傳送資料,並傳送人為干擾訊號。介面卡執行截斷二進位制指數退避演算法,等待重傳時間,然後回到步驟(2),若重傳16仍不成功,則停止重傳而向上報錯。
3.3.3 乙太網的 mac 層
1.mac 層的硬體位址又稱為實體地址或 mac 位址。
介面卡可收到以下三種幀:
(1)單播幀(一對一):即收到的幀的 mac 位址與本站的硬體位址相同。
(2)廣播幀(一對全體):即傳送給本區域網上所有站點的幀(全1位址)。
(3)多播幀(一對多):即傳送給本區域網上一部分站點的幀。
計算機網路 第三章 資料鏈路層
通道型別主要是點對點通道和廣播通道 鏈路 物理鏈路 乙個結點到相鄰結點的一段物理鏈路 資料鏈路 邏輯鏈路 除了物理鏈路以外,還必須要有一些必要的通訊協議來控制資料的傳輸 點對點通道的資料鏈路層的協議資料單元 幀 1 封裝成幀 在一段資料的前後分別新增首部和尾部 soh,eot,作用 進行幀定界 2 ...
計算機網路第三章資料鏈路層基礎習題
資料在傳輸過程出現差錯的主要原因是 a a.突發錯 b.計算錯 c.crc錯 d.隨機錯 在osi參與模型的各層中,b 的資料傳送單位是幀。a.物理層 b.資料鏈路層 c.網路層 d.運輸層 若ppp幀的資料段 現位元串 01011111001 則採用零位元填充後的輸出為 b a.010011111...
計算機網路學習筆記 第三章 資料鏈路層
資料鏈路層研究的是在同乙個區域網中,分組怎樣從乙個主機傳送到另乙個主機 不經過路由器 資料鏈路不等於鏈路 鏈路是指從乙個結點到相鄰結點的一段物理線路 有線或無線 而中間沒有任何其他的交換結點。而資料鏈路則是鏈路加上必要的通訊協議。通訊時的主要步驟 結點a的資料鏈路層將網路層下發的ip資料報新增首部和...