數據鏈路層


 

1.鏈路層概述:(Data Link Layer)(單位:幀 frame)

在物理層提供比特流服務的基礎上,建立相鄰結點之間的數據鏈路,通過差錯控制提供數據幀(Frame)在信道上無差錯的傳輸,並進行各電路上的動作系列。數據鏈路層在不可靠的物理介質上提供可靠的傳輸。該層的作用包括:物理地址尋址、數據的成幀、流量控制、數據的檢錯、重發等。在這一層,數據的單位稱為幀(frame)。

數據鏈路層協議的代表包括:HDLC、PPP、STP、幀中繼等。

結點(node):運行鏈路層協議的任何設備

鏈路(link):沿通信路徑連接相鄰結點的通信信道

幀(鏈路層PDU) :協議數據單位。一個幀由一個數據字段和若干首部字段組成,其中網絡層數據報就插在數據字段中。

鏈路層信道:

第一種類型是廣播信道

用於連接有線局域網(Wired LAN)衛星網和混合光纖同軸電纜(Hybird Fiber Coaxial cable,HFC)接入網的多台主機。需要所謂的媒體訪問協議(或中心控制器)協調幀傳輸。

第二種類型是點對點通信鏈路

用於長距離鏈路連接的兩台路由器,或用戶辦公室連接臨近以太網交換機。

鏈路層在何處實現

     

2.鏈路層服務/功能

 a. 成幀:

每個網絡層數據報經鏈路層傳送之前,幾乎所有的鏈路層協議都要將其用鏈路層封裝起來。一個幀由一個數據字段和若干首部字段組成,其中網絡層數據報就插在數據字段中。

 b. 鏈路接入:

介質訪問控制(Medium Access Control,MAC)協議規定幀在鏈路上傳輸的規則。對於鏈路只有一個發送方和接收方的點對點鏈路,MAC簡單(或不存在);當多個結點共享單個廣播鏈路時,即所謂載波偵聽多路訪問CSMA/CDCSMA/CA,MAC協議協調多結點的幀傳輸。

 c. 可靠交付:

類型運輸層協議(如:TCP)提供的可靠交付服務。鏈路層的可靠交付服務通過確認和重傳機制獲取,用於易產生高差錯的鏈路(無線鏈路)

 d. 差錯控制(差錯檢測和糾正):

由於信號衰減和電磁噪聲等導致比特差錯(損傷),鏈路層協議提供差錯檢測機制檢測比特差錯(損傷)。差錯檢測基於硬件,通過發送結點在幀中攜帶差錯檢測比特,接收方結點進行差錯檢測實現。差錯糾正類似差錯檢測,區別在於接收方不僅能檢測幀中出現的比特差錯,而且能夠准確定位並予以糾正。運輸層和網絡層也提供有限形式的差錯檢測,即因特網校驗和。

具體來說:

a. 將網絡數據包封裝成幀

b. 幀同步:基於時間,字節計數(很少使用),含字節填充的分界符法,含位填充的分界符法,物理層編碼違例法(最后兩種常用)

c. 邏輯鏈路控制(LLC)子層:

流量控制

      (1) 停止等待(效率低)(停等ARQ

      (2) 滑動窗口(連續ARQ和選擇重傳ARQ

數據鏈路層的滑動窗口協議控制數據幀的連續發送。在發送方保持一個連續的序號表,表示允許發送的數據幀的序號,稱為發送窗口 (Wt<= 2的n次方 - 1);在接收方也保持一個連續的序號表,對應於允許接收的幀的序號,稱為接收窗口( Wr<=Wt,Wr<=2的n-1次方 )。

差錯控制

(1)差錯檢測

  幀損壞(原理:利用冗余信息檢錯)——>循環冗余校驗(CRC),幀丟失(數據/確認幀)——>幀編碼,確認幀,定時器

(單)奇偶校驗位(parity bit,突發差錯,50%),二維奇偶校驗(two-dimensional parity),校驗和(Internet checksum),加密散列函數,糾錯碼

說明:接收方檢測和糾正的能力被稱為前向糾錯(Forward Error Correction,FEC),常用於音頻CD等音頻存儲和回放設備中。網絡環境,或與ARQ技術一起應用。

(2)差錯糾正

當檢測到錯誤,不論幀損壞還是幀丟失,數據鏈路層通常不去修正錯誤,而是簡單地重新傳輸對應的幀,這個過程稱為自動重復請求(AutomaticRepeatRequest,ARQ)

CRC校驗出錯時,接收方可以發送一個否認幀NAK(Negative Acknowledge),告訴發送方重傳出錯的幀;也可以簡單地將錯誤幀丟棄,不發送任何信息,這樣發送方的定時器會超時,自然會重傳對應的幀

當數據幀丟失后,定時器會超時,發送方就會重傳丟失的幀。但在確認幀丟失時,發送方會重傳接收方已經收到的幀,那么在接收方要丟棄重復收到的數據幀,以保證數據的正確性。

通常情況下,差錯控制和流量控制是結合在一起的。因此停止等待常以停等ARQ來實,而滑動窗口常以連續ARQ和選擇重傳ARQ來實現

ARQ技術:

反饋檢測:數據傳輸時,接收方將接收到的數據重新發回發送方,由發送方檢查是否與原始數據完全相符。若不相符,則發送方發送一個控制字符(如DEL)通知接收方刪去出錯的數據,並重新發送該數據;若相符,則發送下一個數據

空閑重發請求(Idle RQ)(也是流量控制的一種體現):也叫停等法(停等ARQ,比特編號0,1,0,1),發送方每次僅將當前信息幀作為待確認幀保留在緩沖存儲器中。當發送方開始發送信息幀時,隨即啟動計時器。 當接收方檢測到一個含有差錯的信息幀時,便舍棄該幀(停等ARQ,幀出錯)。當發送方發送數據幀丟失,且計時器超時,發送方就會重傳丟失的幀(停等ARQ,幀丟失)。當接收方收到無差錯的信息幀后,即向發送方返回一個確認幀。 若發送方在規定時間內未能收到確認幀 (即計時器超時),則發送方重傳存於緩沖器中(接收方已收到的)未確認的信息幀(停等ARQ,確認幀丟失)。若發送方在規定時間內收到確認幀,即將計時器清零,繼而開始下一幀的發送。優點是所需的緩沖存儲空間很小。

連續ARQ(continus RQ)連續ARQ基於滑動窗口技術,對數據幀模n進行編號。發送方窗口大於1,所以在發送完一幀后,不是停下來等確認信息的到來,而是可以連續發送若干幀,整個通信的吞吐量和信道利用率都得到提高。這就需要一個較大的緩沖存儲空間(稱作重發表),用以存放若干待確認的信息幀。每當發送站收到對某信息幀的確認幀后,便從重發表中將該信息幀刪除。所以,連續RQ方案的鏈路傳輸效率大大提高,但相應地需要更大的緩沖存儲空間。連續ARQ中接收方窗口大小固定為1,因此接收方只按順序接收數據幀。連續ARQ協議一方面利用滑動窗口連續發送數據幀而提高了效率;另一方面,又會重傳那些已經正確送到過的幀(僅因這些幀之前的一個幀出了錯),這種做法又降低了傳送效率。但連續ARQ協議比較簡單,實現起來比較容易。

選擇重傳ARQ:選擇重傳ARQ同樣使用滑動窗口技術,它的做法類似於連續ARQ,但對其進行了改進。選擇重傳ARQ基本思想是只重傳出錯的幀或丟失的幀,而不去回退N幀重傳。這就要求接收方要緩存那些正確的但不是按順序到來的幀。所以在選擇重傳ARQ中,接收方的窗口要大於1,同時還要對到來的幀進行排序,排好序后再提交給商層。與連續ARQ相比選擇重傳ARQ效率高,但是集法復雜,同時接收方需要的緩沖要比連續ARQ大。

d. 介質訪問控制(MAC)子層

CSMA/CD CSMA/CA

MAC尋址

LAN交換(分組交換),MAC過濾,STP和最短路徑橋接(SPB)

存儲轉發交換或直接交換

QoS控制

VLAN

3.數據鏈路層協議

按異步,同步分類:

異步協議:

(以一個字符為一個傳輸單位,字符之間異步,字符內部比特同步)

同步分類:面向字符的協議——BSC(淘汰)

 面向比特的協議——高級數據鏈路控制協議(High-level Data Link Control,HDLC);點對點協議(Point-to-Point protocol,POP)

按網絡鏈路類型 :

點對點鏈路——高級數據鏈路控制協議(High-level Data Link Control,HDLC);點對點協議(Point-to-Point protocol,POP)

廣播鏈路:三種類型,信道划分協議,隨機接入協議,輪流協議

(以太網,無線局域網)

  廣播鏈路的多路訪問問題:

廣播鏈路(broadcastlink),它能夠讓多個發送和接收結點都連接到相同的、單一的、共享的廣播信道上。這里使用術語“廣播”是因為當任何一個結點傳輸一個幀時,信道廣播該數據幀,每個其他結點都收到一個副本。一個對鏈路層很重要的問題:如何協調多個發送和接收結點對一個共享廣播信道的訪問,這就是多路訪問問題(multipleaccessproblem)。廣播信道通常用於局域網中,局域網是一個地理上集中在一座建築物中(或者在一個公司,或者在大學校園)的網絡。 

將任何多路訪問協議划分為3種類型之一:信道划分協議(channel partitioning protocol),隨機接入協議(random access protocol)和輪流協議(taking-turns protocol)。在理想情況下,對於速率為Rbps的廣播信道,多路訪問協議應該具有以下特性:

1)當僅有一個結點有數據發送時,該結點具有Rbps的吞吐盤;

2)當有M個結點要發送數據時,每個結點吞吐最為R/Mbps。這不必要求M結點中的每一個結點總是有R/M的瞬間速率,而是每個結點在一些適當定義的時間間隔內應該有R/M的平均傳輸速率。

3)協議是分散的;這就是說不會因某主結點故障而使整個系統崩潰。

4)協議是簡單的,使實現不易費。

信道划分協議:時分多路復用(TDMA)和頻分多路復用(FDMA)是兩種能夠用於在所在共享信道結點之間划分廣播信道帶寬的技術。TDM和FDM分別為結點分配時隙和頻率。碼分多址(Code Division Multiple Access,CDMA)。CDMA為每個結點分配一種不同的編碼。

隨機接入協議:ALOHA協議和載波偵聽多路訪問(Carrier Sense Multiple Access,CSMA

載波偵聽多路訪問/碰撞檢測(CSMA/CD)主要思想:減少沖突,提高信道利用率;總結:先聽后發,邊發邊聽,沖突停止,稍后重發。

載波偵聽多路訪問/碰撞避免(CSMA/CA)

說明:以太網是一種流行並且廣泛部署的CSMA協議

以太網使用載波偵聽多路訪問/沖突檢測(CSMA/CD)協議來解決總線使用權問題

      輪流協議:輪詢協議(polling protocol),令牌傳遞協議(token-passing protocol)

舉例:

DOCSIS:用於電纜因特網接入的鏈路層協議

一個電纜接入網通常在電纜網頭端將幾千個住宅電纜調制解調器與一個電纜調制解調器端接系統(CableModemTerminationSystem,CMTS)連接。數據經電纜服務接口(Data-Over-CableServiceInterface,CMTS)規范(DOCSIS)[ DOCSIS 2012]定義了電纜數據網絡體系結構及其協議。DOCSIS使用FDM將下行(CMTS到調制解調器)和上行(調制解調器到CMTS)網絡段划分為多個頻率信道。每條上行信道被划分為時間間隔(類似於TDM),每個時間間隔包含一序列微時隙,電纜調制解調器可在該微時隙中向CMTS傳輸。

   

4.高級數據鏈路控制協議(High-level Data Link Control,HDLC)

HDLC(High-levelData-Link Control)協議是面向比特協議中最具代表性的一個協議,HDLC協議起源於1974年IBM公司推出的SDLC協議。1979年,ISO在SDLC協議的基礎上提出高級數據鏈路控制協議-HDLC協議。后來基於HDLC協議,又提出一系列鏈路層協議、如LAP系列協議、PPP協議、幀中繼協議等。局域網協議也是基於HDLC協議發展起來的,學習HDLC協議有利於理解其他的面向比特的協議。

HDLC具有透明性,數據和控制信息完全獨立,不受任何位式樣和字符寬度的限制;能適應多種應用、多種網絡配置,可用於點到點鏈路,也可用於多點鏈路;可采用交換線路,也可采用非交換線路;控制信息所占比例小,傳輸效率高;可靠性高;吞吐率高等優點。因此,HDLC已成為廣受歡迎的數據鏈路控制規程。

基本概念:

a.    三種類型的站:主站,從站,復合站

b.    鏈路結構:主-從;主-多從(點對多點,不平衡鏈路結構);多主-多從、復合-復合(2-2,1-1平衡鏈路)

c.     操作方式:正常相應方式(NRM),異步響應方式(ARM),異步平衡方式(ABM),擴充(S)—(NRM)(ARM)(ABM)

d.    幀格式:HDLC定義三種類型的幀:信息幀(I幀),監督幀(S幀),無編號幀(U幀)

5.點對點協議(Point-to-Point protocol,POP)

    簡介

點對合協議(Point-to-Point Protocol,PPP)[RFC1661] [RFC1662] [RFC2153]是一種在串行鏈路上傳輸IP數據報的數據鏈路層協議。從低速的撥號調制解調器到高速的光鏈路[RFC2615]。它被一些DSL服務供應商廣泛部署,也可分配Intemet系統的參數。

PPP協議廣泛地用於通過電話線投號接人因特網的線路,同時在路由器與路由器連接的線路上也大量使用PPP協議。目前,寬帶接人取代撥號成為接入因特網的主要方式,PPP也衍生出新的應用。典型的是在ADSL接入方式當中,PPP與其他的協議共同派生符合寬帶接人要求的新的協議,如PPPOE( PPP over Ethernet ),PPPOA (PPP over ATM)

PPP協議給出在單行鏈路上封裝數據報的方法。PPP實際上是一個協議集合,而不是一個單一的協議。它支持建立鏈接的基本方法一稱為鏈路控制協議(Link Control Protocol, LCP),以及一系列NCP協議。在LCP建立了基本鏈路之后,PPP用於為各種協議(包括IPv4、 IPv6和非IP協議)建立網絡層鏈路。一些相關標准涉及對PPP的壓縮和加密控制,以及在鏈接建立后的一些認證方法。

  1. 鏈路控制協議(Link Contral Rrotocol,LCP):LCP用來建立、配置和測試數據鏈路;
  2. 網絡控制協議(NetworkControlProtocol,NCP)NCP不是一個協議,而是一組協議,包括IPCP,IP,IPX等。NCP用來建立兩端網絡層的連接,協商網絡層的選項和傳遞網絡層數據。PPP支持的每一種網絡層協議都有相應的NCP。
  3. 點對合協議(Point-to-Point Protocol,PPP):處理錯誤檢測,支持多種協議。PPP協議可以在連接建立過程中檢查鏈路質量,協商所用的網絡層協議。此外它還通過PAP(Password Authentication Protocol , 口令身份驗證協議)和 CHAP(Challenge Handshake Authentication Protocol,挑戰提手身份驗證協議)支持身份驗證。PPP已經被廣泛應用於Internet中的數據鏈路層。

  幀格式:

     

    TCP/IP詳解 卷1:協議  原書第二版_PDF_110有詳解

     (1)LCP協議完成數據鏈路的建立、配置、維護和終止。

(2)PAP和CHAP協議都可以用來完成用戶的身份認證。

(3)IPCP協議用來協商網絡層配置,為用戶分配IP地址。

(4)IP協議用來發送和接收用戶的數據。

(5)FCS是幀校驗字段,PPP采用CRC校驗。當CRC校驗錯誤時,PPP就丟棄數據幀。

6.鏈路控制協議(Link Contral Rrotocol,LCP)

物理鏈路建立后,通信雙方需要建立數據鏈路,通信完畢后還需要拆除數據鏈路。數據鏈

路的建立、配置、維護和終止都是由鏈路控制協議(LinkControlProtocol,LCP)來完成的。

LCP包封裝在PPP幀的數據字段中,如圖:

    

7.局域網之以太網

以太網幾乎占領着現有的有線局域網市場,較令牌環、FDDI、ATM更簡單,(設備)更便宜。以太網對於局域網的重要性就像英特網對於全球聯網所具有的地位那樣

  簡介:

以太網(Ethernet)是一種計算機局域網技術。IEEE組織的IEEE 802.3標准制定了以太網的技術標准,它規定了包括物理層的連線、電子信號和介質訪問層協議的內容。以太網是目前應用最普遍的局域網技術,取代了其他局域網標准如令牌環FDDIATM

以太網的標准拓撲結構為總線型拓撲,但目前的快速以太網(100BASE-T1000BASE-T標准)為了減少沖突,將能提高的網絡速度和使用效率最大化,使用交換機(Switch hub)來進行網絡連接和組織。如此一來,以太網的拓撲結構就成了星型;但在邏輯上,以太網仍然使用總線型拓撲和CSMA/CD(Carrier Sense Multiple Access/Collision Detection,即載波多重訪問/碰撞偵測)的總線技術。

隨着100Mb/s (也稱為“快速以太網”,最流行的版本是“100BASE-TX”)的發展,基於竟爭的MAC協議已變得不流行。相反,局域網中每個站之間的線路通常不共享,而是提供了一個專用的星形拓撲結構。這可以通過以太網交換機來實現,如一個交換式以太網包含一個或多個站,每個站使用一條專用的線路連接到一個交換機端日。在大多數情況下,交換式以太網以全雙工方式運行,並且不需要使用CSMA/CD算法。交換機可以通過交換機端口級聯形成更大的以太網,該端日有時也稱為“上行”端口。

目前,交換機為以太網中的每個站提供同時發送和接收數據的能力(稱為“全雙工以太網”)。雖然1000Mb/s以太網( 1000BASE-T)仍支持半雙工(一次一個方向)操作,但相對於全雙工以太網來說,它很少使用。

時分雙工 <https://zh.wikipedia.org/wiki/%E9%9B%99%E5%B7%A5>

  幀格式:

 8.鏈路層尋址和ARP

IEEE 802封裝

a.802.3針對整個CSMA/CD網絡

b.802.4針對令牌總線網絡

c.802.5針對令牌環網絡

d.這三者共同特性由802.2標准來定義,那就是802網絡共有的邏輯鏈路控制(LLC)

封裝格式

    • 兩種幀格式都采用48bit(6字節)的目的地址和源地址
    • ARP和RARP協議對32bit的IP地址和48bit的硬件地址進行映射
    • 802定義的有效長度值與以太網的有效類型值無一相同,這樣,就可以對兩種幀格式進行區分
    • 目的服務訪問點和源服務訪問點的值都設為0xaa.Ctrl的值設為3.隨后的3個字節org code都置為0。再接下來的2個字節類型字段和以太網幀格式一樣
    • 802.3規定數據部分必須至少為38字節,而對於以太網,則要求最少有46字節。為了保證這一點,必須在不足的空間插入填充(pad)字節

環回口

    • 傳給環回口地址(一般是127.0.0.1)的任何數據均作為IP輸入
    • 傳給廣播地址或組播地址的數據報復制一份傳給環回接口,然后送到以太網上。這是因為廣播傳送和多播傳送的定義包含主機本身
    • 任何傳送給該主機IP地址的數據均送到環回接口。

MTU與路徑MTU

    • 以太網和802.3對數據幀的長度都有一個限制,其最大值分別是1500和1492字節

鏈路層的這個特性稱作MTU,最大傳輸單元

    • 如果IP層有一個數據報要傳,而且數據的長度比鏈路層的MTU還大,那么IP層就需要進行分片(fragmentation),把數據報分成若干片,這樣每一片都小於MTU,在路徑上可能經歷多次分片,但是只在目的地重組裝
    • 點到點的鏈路層(SLIP和PPP)的MTU並非指的是網絡媒體的物理特性。相反,是一個邏輯限制,目的是為交互使用提供足夠快的響應時間
    • 兩台通信主機路徑中的最小MTU。它被稱作路徑MTU
    • 路徑MTU在兩個方向上不一定是一致的

MTU是計算出方向(同一條鏈路兩個方向路徑MTU可能不一致)


免責聲明!

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



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