計算機網絡概述---數據鏈路層


數據鏈路層基本概念

三個基本問題

封裝成幀:在一段數據的前后加上首部和尾部,然后構成幀,首部和尾部的作用就是進行幀的界定;

透明傳輸:當傳輸的數據中含有首部和尾部的字符時,需要進行轉義(用字節填充解決,給數據中的特殊字符前面填充轉義字符);

差錯控制:傳輸過程中可能產生比特差錯,1變成0,0變成1等情況,在一段時間內,傳輸錯誤的比特占所傳輸比特總數的比值稱為誤碼率,誤碼率與信噪比有很大的關系;

為了保證數據傳輸的可靠性,在計算機傳輸數據的過程中,必須采用各種差錯檢驗措施(循環冗余檢驗CRC);FSC為CRC后的結果,幀檢驗序列FSC是指在數據后面加上冗余碼(FSC),循環冗余檢驗CRC和幀檢驗序列FCS並不等同;

CRC:是一種常用的檢錯方法;

FSC:是添加在數據后面的冗余碼,FSC可以用CRC得出,而CRC並非是得出FSC的唯一途徑;

兩種情況下的數據鏈路層

使用點對點信道的數據鏈路層

現在全世界使用最多的數據鏈路層協議就是ppp協議,用戶使用撥號電話線接入因特網時,一般就是點到點協議;

ppp協議應該滿足的要求 ppp協議不需要滿足的要求

封裝成幀

透明性

多種網絡層協議

多種類型鏈路

差錯檢驗

檢測連接狀態

最大傳送單元

網絡層地址協商

數據壓縮協商

糾錯

流量控制

序號

多點線路

半雙工或單工鏈路

 

ppp協議的組成:

1.數據鏈路層協議可以用於異步串行或同步串行介質;

2.它使用LCP(鏈路控制協議)建立並維護數據鏈路連接;

3.網絡控制協議(NCP)允許點到點連接上使用多種網絡協議;

ppp協議幀格式:

 

首部中的標志字段F(Flag),規定為0x7E(符號0x表示它后面的字符是用十六進制表示的。十六進制的7E的二進制表示是01111110),標志字段表示一個幀的開始。

首部中的地址字段A規定為0xFF(即11111111)。
首部中的控制字段C規定為0x03(即00000011)。
首部中的2字節的協議字段:
(1)當協議字段為0x0021時,PPP幀的信息字段就是IP數據報。
(2)當協議字段為0xC021時,PPP幀的信息字段就是PPP鏈路控制協議LCP的數據。
(3)當協議字段為0x8021時,PPP幀的信息字段就是網絡層的控制數據。
PPP幀的信息字段部分,信息字段的長度是可變的,不超過1500字節。
PPP幀的尾部
尾部中的第一個字段(2個字節)是使用CRC的幀檢驗序列FCS。
尾部中的標志字段F(Flag),規定為0x7E(符號0x表示它后面的字符是用十六進制表示的。十六進制的7E的二進制表示是01111110),標志字段表示一個幀的結束。
注:標志字段就是PPP幀的定界符。連續兩幀之間只需要用一個標志字段。如果連續出現兩個標志字段,就表示這是一個空幀,應當丟棄。

 

PPP協議中的透明傳輸的實現方式
當信息字段中出現和標志字段一樣的比特(0x7E)組合時,就必須采取一些措施使這種形式上和標志字段一言的比特組合不出現在信息字段中。

1 字節填充——PPP使用異步傳輸
當PPP使用異步傳輸時,它把轉移符定義為0x7D,並使用字節填充。
RFC1662規定了如下填充方法:
(1)把信息字段中出現的每一個0x7E字節轉變為2字節序列(0x7D,0x5E)。
(2)若信息字段中出現一個0x7D的字節(即出現了和轉義字符一樣的比特組合),則把轉義字符0x7D轉變為2字節序列(0x7D,0x5D)。
(3)若信息字段中出現ASCII碼的控制字符(即數值小於0x20的字符),則在該字符前面要加入一個0x7D字節,同時將該字符的編碼加以改變。例如,出現0x03(在控制字符中是“傳輸結束”ETX)就要把它轉變為2字節序列的(0x7D,0x31)。
由於在發送端進行了字節填充,因此在鏈路上傳送的信息字節數就超過了原來的信息字節數。但接收端在接收到數據后再進行與發送端字節填充相反的變換,就可以正確地恢復出原來的信息。
2 零比特填充——PPP使用同步傳輸
當PPP使用同步傳輸時,使用零比特填充。
零比特填充的具體方法:
(1)在發送端先掃描整個信息字段(通常使用硬件實現,但也可以用軟件實現,但是會慢一些)。
(2)只要發現有5個連續的1,則立即填入一個0。
(3)接收端在收到一個幀時,先找到標志字段F以確定幀的邊界,接着再用硬件對其中的比特流進行掃描,每當發現5個連續1時,就把5個連續1后的一個0刪除,以還原成原來的信息比特流。
因此通過這種零比特填充后的數據,就可以保證在信息字段中不會出現連續6個1。

 

使用廣播信道的數據鏈路層

1. 廣播信道在局域網的數據鏈路層中使用

局域網的拓撲類型有 總線型,環形,星型

局域網的共享信道的方式為總線型網絡為多點接入

分為以下兩種

隨機接入:也就是說信道不是固定的分配給某一個主機而是每個主機都可以隨時的發送信息,但是這里的問題是如果同時有多個用戶發送信息的話,就會造成碰撞,這樣就都會失敗,所以說必須要有解決碰撞的協議

受控接入:受控接入的特點是用戶不能夠隨時的發送信息,而是受到一定的控制,比如說給每個用戶一個令牌,或者說輪詢

2. 適配器

適配器又稱為網卡,通過I/O總線與cpu相連接,適配器中包含着計算機的唯一標示Mac地址。

現在的適配器功能都比較強大,發送和接收幀都可以自己實現而不用cpu這樣就節省了cpu的時間。另外適配器還可以進行差錯檢測。

適配器擁有過濾功能,能夠將不屬於本站的收下,不屬於本站的幀丟棄

通常局域網中有三種幀

1 單播幀(一對一),收到的幀的mac地址與本機的硬件地址相同

2 廣播幀(一對全體),發送給本局域網的所有幀(地址全是1)

3 多播幀(一對多),發送給局域網的一部分主機

適配器還可以設置為混雜方式工作,即接收局域網上的所有幀,這樣就可以監聽別人的信息,這種方式是不好滴

3. CSMA/CD協議

以太網是總線型結構,所以說當一台計算機發送信心的時候,所有的計算機都能都監聽到,所以說需要有mac地址來知名目的地址。

只有mac地址與數據幀首部的mac地址相同的時候才會接收其他情況下丟棄。

為了簡便通信以太網采用了無連接工作方式,也就是說發送信息的時候不必要建立連接,差錯重傳之類的交給高層協議比如說TCP。

CSMA/CD協議的主要內容

多點接入:說明是總線型網絡

載波監聽:因為每個計算機隨時都可以發送信息,所以說為了防止信息失效就采用載波監聽,如果說信道中有其他計算機正在傳送信息自己就不發送

碰撞檢測:也就是邊發送邊檢測,載波監聽的時候會有時間差,也就是說當一個主機發送的時候,傳播的其他主機是需要時間的,所以說如果一個主機發送的時候,其他主機並沒有檢測到(因為時間差),那么其他的主機也有可能發送

這樣的話就會有可能造成碰撞。所以說需要碰撞檢測,如果發生碰撞的話就會停止發送,然后等待一段時間重新發送。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM