第3章 數(shù)據(jù)鏈路層
數(shù)據(jù)鏈路層是計(jì)算機(jī)網(wǎng)絡(luò)體系結(jié)構(gòu)中的關(guān)鍵一層,它負(fù)責(zé)在相鄰節(jié)點(diǎn)(如主機(jī)與路由器、路由器與路由器之間)的鏈路上,實(shí)現(xiàn)無(wú)差錯(cuò)地傳輸以“幀”為單位的數(shù)據(jù)。本章是理解局域網(wǎng)技術(shù)、網(wǎng)絡(luò)互聯(lián)與可靠傳輸?shù)幕A(chǔ)。
一、核心概念與功能
- 基本概念:
- 鏈路 (Link):一條無(wú)源的點(diǎn)到點(diǎn)物理線路段,中間沒(méi)有任何交換節(jié)點(diǎn)。
- 數(shù)據(jù)鏈路 (Data Link):在物理鏈路的基礎(chǔ)上,加上必要的通信協(xié)議(硬件和軟件)來(lái)控制數(shù)據(jù)的傳輸。數(shù)據(jù)鏈路就像一個(gè)數(shù)字管道,在其中傳送的是“幀”。
- 三個(gè)基本問(wèn)題:數(shù)據(jù)鏈路層協(xié)議必須解決。
- 封裝成幀 (Framing):將網(wǎng)絡(luò)層傳下來(lái)的IP數(shù)據(jù)報(bào)添加首部和尾部,構(gòu)成一個(gè)幀。幀定界(界定幀的開(kāi)始和結(jié)束)是核心,常用方法有字符填充法(如PPP協(xié)議)和比特填充法(如HDLC協(xié)議)。
- 透明傳輸 (Transparent Transmission):保證無(wú)論所傳數(shù)據(jù)是什么比特組合,都能在線路上正常傳送。當(dāng)數(shù)據(jù)中的比特組合恰巧與幀定界符相必須采取措施(如字節(jié)填充或比特填充)使其“透明”,即不被誤認(rèn)為幀邊界。
- 差錯(cuò)控制 (Error Control):檢測(cè)并可能糾正幀在傳輸過(guò)程中產(chǎn)生的比特差錯(cuò)。廣泛使用循環(huán)冗余檢驗(yàn) (CRC) 進(jìn)行檢錯(cuò),通過(guò)計(jì)算冗余碼(幀檢驗(yàn)序列FCS)附加在數(shù)據(jù)后面。注意:數(shù)據(jù)鏈路層通常使用CRC檢錯(cuò),但不負(fù)責(zé)糾錯(cuò),發(fā)現(xiàn)錯(cuò)誤后通常直接丟棄該幀。可靠傳輸(如重傳)通常由上層(如運(yùn)輸層)或特定鏈路層協(xié)議(如PPP的可靠傳輸模式)實(shí)現(xiàn)。
二、兩種信道類(lèi)型下的數(shù)據(jù)鏈路層
- 點(diǎn)對(duì)點(diǎn)信道:使用一對(duì)一的點(diǎn)對(duì)點(diǎn)通信方式。典型協(xié)議是PPP協(xié)議(點(diǎn)對(duì)點(diǎn)協(xié)議)。
- PPP協(xié)議特點(diǎn):簡(jiǎn)單、支持多種網(wǎng)絡(luò)層協(xié)議、支持身份驗(yàn)證(PAP/CHAP)、檢測(cè)連接狀態(tài)。
- PPP幀格式:牢記其以標(biāo)志字節(jié)
0x7E作為幀定界符,使用字節(jié)填充實(shí)現(xiàn)透明傳輸。
- 廣播信道:使用一對(duì)多的廣播通信方式。必須解決共享信道的訪問(wèn)控制問(wèn)題,即介質(zhì)訪問(wèn)控制 (MAC)。
- 核心問(wèn)題:如何協(xié)調(diào)多個(gè)發(fā)送站點(diǎn)對(duì)共享信道的訪問(wèn),避免沖突,提高信道利用率。
- 局域網(wǎng)的數(shù)據(jù)鏈路層:通常拆分為兩個(gè)子層:
- 邏輯鏈路控制 (LLC) 子層:與介質(zhì)訪問(wèn)無(wú)關(guān),現(xiàn)已不常用。
- 介質(zhì)訪問(wèn)控制 (MAC) 子層:核心,解決信道爭(zhēng)用問(wèn)題。
三、CSMA/CD 協(xié)議(重點(diǎn))
這是傳統(tǒng)以太網(wǎng)(10 Mbps,半雙工)使用的協(xié)議,其核心思想是“先聽(tīng)后發(fā),邊聽(tīng)邊發(fā),沖突停發(fā),隨機(jī)重發(fā)”。
- 工作原理:
- 準(zhǔn)備發(fā)送前先監(jiān)聽(tīng)信道,若空閑則立即發(fā)送,若忙則持續(xù)監(jiān)聽(tīng)直至空閑。
- 發(fā)送過(guò)程中仍持續(xù)監(jiān)聽(tīng)(即“邊聽(tīng)邊發(fā)”),以檢測(cè)是否發(fā)生沖突。
- 一旦檢測(cè)到?jīng)_突,立即停止發(fā)送,并發(fā)送一個(gè)強(qiáng)化沖突的干擾信號(hào)。
- 執(zhí)行二進(jìn)制指數(shù)退避算法,等待一段隨機(jī)時(shí)間后重新嘗試發(fā)送。
- 重要概念:
- 爭(zhēng)用期 (沖突窗口):信號(hào)在總線最遠(yuǎn)兩端往返傳播的時(shí)間(即兩倍端到端傳播時(shí)延
2τ)。在爭(zhēng)用期內(nèi)沒(méi)有檢測(cè)到?jīng)_突,才能肯定這次發(fā)送不會(huì)發(fā)生沖突。對(duì)于10M以太網(wǎng),爭(zhēng)用期定為51.2微秒,對(duì)應(yīng)64字節(jié)的最小幀長(zhǎng)(凡長(zhǎng)度小于64字節(jié)的幀都是由于沖突而異常中止的無(wú)效幀)。
- 二進(jìn)制指數(shù)退避算法:重傳延遲時(shí)間 = 基本退避時(shí)間(
2τ) × 隨機(jī)數(shù) r(r從整數(shù)集合[0, 1, ..., (2^k -1)]中隨機(jī)選取,k = Min[重傳次數(shù), 10])。重傳16次仍不成功則丟棄該幀。
四、以太網(wǎng)技術(shù)
- MAC層:
- MAC地址(硬件地址/物理地址):48位全球唯一標(biāo)識(shí)符,固化在網(wǎng)卡的ROM中。前24位為廠商標(biāo)識(shí)(OUI),后24位由廠商分配。MAC幀格式必須熟練掌握(目的地址、源地址、類(lèi)型、數(shù)據(jù)、FCS)。注意以太網(wǎng)V2標(biāo)準(zhǔn)中,數(shù)據(jù)字段長(zhǎng)度在46-1500字節(jié)之間。
- 擴(kuò)展的以太網(wǎng):
- 在物理層擴(kuò)展:使用集線器(Hub)或光纖。集線器是一個(gè)多端口的信號(hào)放大設(shè)備(中繼器),工作在物理層,它連接的所有設(shè)備處于同一個(gè)沖突域和廣播域。
- 在數(shù)據(jù)鏈路層擴(kuò)展:使用網(wǎng)橋 (Bridge) 或交換機(jī) (Switch)。它們基于MAC地址進(jìn)行過(guò)濾和轉(zhuǎn)發(fā),可以分隔沖突域(每個(gè)端口是一個(gè)獨(dú)立的沖突域),但所有端口仍屬于同一個(gè)廣播域。
- 交換機(jī)(多端口網(wǎng)橋):工作在全雙工模式,使用自學(xué)習(xí)算法建立和維護(hù)其轉(zhuǎn)發(fā)表(MAC地址表)。轉(zhuǎn)發(fā)方式分為直通交換(延遲小,不檢錯(cuò))和存儲(chǔ)轉(zhuǎn)發(fā)交換(延遲大,可檢錯(cuò))。
五、高速以太網(wǎng)
了解常見(jiàn)標(biāo)準(zhǔn):
- 100BASE-T:快速以太網(wǎng),使用CSMA/CD協(xié)議,但爭(zhēng)用期和最小幀長(zhǎng)不變(通過(guò)減小網(wǎng)絡(luò)最大距離或增加幀間隔來(lái)適應(yīng))。
- 吉比特以太網(wǎng) (1 Gbps) 和 10吉比特以太網(wǎng) (10 Gbps):通常在全雙工模式下工作,不使用CSMA/CD協(xié)議。
復(fù)習(xí)要點(diǎn)
- 理解并闡述數(shù)據(jù)鏈路層的三個(gè)基本問(wèn)題及其解決方法。
- 掌握PPP協(xié)議的特點(diǎn)、幀格式及透明傳輸實(shí)現(xiàn)方式。
- 深刻理解CSMA/CD協(xié)議的工作原理、爭(zhēng)用期概念、最小幀長(zhǎng)由來(lái)及二進(jìn)制指數(shù)退避算法。這是本章的重中之重,常考計(jì)算與分析題。
- 熟記以太網(wǎng)MAC幀格式,理解MAC地址的作用。
- 區(qū)分集線器、網(wǎng)橋、交換機(jī)的工作原理、層次及對(duì)網(wǎng)絡(luò)性能(沖突域、廣播域)的影響。
- 了解高速以太網(wǎng)的基本特點(diǎn)。
通過(guò)以上梳理,結(jié)合教材例題與課后習(xí)題進(jìn)行練習(xí),可以有效鞏固第3章的知識(shí)體系,為期末考試做好充分準(zhǔn)備。