主頁 > 軟體設計 > 計算機網路-資料鏈路程總結

計算機網路-資料鏈路程總結

2021-04-06 11:48:53 軟體設計

目錄

  • 符號說明
  • 1 點對點信道
    • 1.1 資料鏈路和幀
      • 1.1.1 鏈路
      • 1.1.2 資料鏈路
      • 1.1.3 幀
    • 1.2 三個基本問題
      • 1.2.1 封裝成幀
      • 1.2.2 透明傳輸
        • (1) 位元組計數法
        • (2) 位元組填充法
        • (3) 零位元填充法
        • (4) 違規編碼法
      • 1.2.3 差錯檢測
        • (1)傳輸差錯
        • (2)誤碼率(BER)
        • (3)回圈冗余檢查(CRC)
        • (4)糾錯編碼(海明碼)
    • 1.3 PPP協議
      • 1.3.1 使用場景
      • 1.3.2 為什么需要PPP
      • 1.3.3 PPP需要做到什么
        • (1)簡單
        • (2)封裝成幀
        • (3)透明性
        • (4)多種網路層協議
        • (5)多種型別鏈路
        • (6)差錯檢測
        • (7)檢測連接狀態
        • (8)最大傳輸單元(MTU)
        • (9)網路層地址協商
        • (10)資料壓縮協議
      • 1.3.4 PPP的組成
      • 1.3.5 PPP幀中各欄位的含義
      • 1.3.6 PPP協議的作業流程
        • (1)起始狀態
        • (2)建立物理層連接
        • (3)建立資料鏈路層連接
        • (4)鑒別
        • (5)建立網路層連接
        • (6) 資訊交換
        • (7)斷開連接
  • 2 廣播信道
    • 2.1 局域網(以太網)
      • 2.2.1 局域網的特點
      • 2.2.2 局域網的優點
      • 2.2.3 根據拓撲的局域網分類
        • (1)星形網
        • (2)環形網
        • (3)總線網
      • 2.2.4 信道共享
        • (1)靜態劃分
        • (2)動態媒體接入控制
          • 1.隨機接入
          • 2.受控接入
    • 2.2 配接器
    • 2.3 CSMA/CD協議
      • 2.3.1 多點接入
      • 2.3.2 載波監聽
      • 2.3.3 碰撞檢測
      • 2.3.4 沖突產生的原因
      • 2.3.5 爭用期
      • 2.3.6 截斷二進制指數退避演算法
      • 2.3.7 強化碰撞
      • 2.3.8 幀間間隔
      • 2.3.9 CSMA/CD 概括
    • 2.4 集線器
    • 2.5 以太網的信道利用率
    • 2.6 以太網的MAC層
      • 2.6.1 配接器的硬體地址
      • 2.6.2 配接器的過濾功能
      • 2.6.3 MAC幀格式
      • 2.6.4 接收端如何確定MAC幀長度
      • 2.6.5 填充欄位
      • 2.6.6 前導碼
      • 2.6.7 無效的MAC幀
    • 2.7 10BASE-T以太網
    • 2.8 擴展的以太網
      • 2.8.1 物理層上的擴展
      • 2.8.2 在資料鏈路層擴展的以太網
        • (1)網橋
        • (2)以太網交換機
        • (2)以太網交換機的自學習功能
      • 2.8.3 100BASE-T以太網
      • 2.8.4 吉位元以太網
  • 3 本節重要概念
  • 參考資料

符號說明

符號含義
PPP點對點協議(Point-to-Point Protocol)
ISP互聯網服務提供商(Internet Service Provider)
HDLC高級資料鏈路控制(High-level Data Link Control)
IETF國際互聯網工程任務組(The Internet Engineering Task Force)
MTU最大傳輸單元(Maximum Transmission Unit)
RFC一系列以編號排定的檔案(Request For Comments)
CRC回圈冗余檢查(Cyclic Redundancy Check)
BER誤碼率(Bit Error Rate)
LCP鏈路控制協議(Link Control Protocol)
NCP網路控制協議(Network Control Protocol)
NIC網路介面控制器(network interface controller)
ROM只讀存盤器(Read-Only Memory)
RAM隨機存取存盤器(Random Access Memory)
CSMA載波監聽多路訪問(Carrier Sense Multiple Access)
CD沖突檢測(collision detection)
ROM只讀存盤器(Read-Only Memory)

1 點對點信道

1.1 資料鏈路和幀

1.1.1 鏈路

從一個節點到相鄰節點的物理線路(中間無任何其他的交換節點)

1.1.2 資料鏈路

在鏈路的基礎上加上一些實作必要的控制資料傳輸的協議的軟體或硬體就構成了資料鏈路,常用的設備為網路配接器(既有硬體,也有軟體)

1.1.3 幀

點對點信道的資料鏈路層的協議資料單元

1.2 三個基本問題

1.2.1 封裝成幀

封裝成幀(framing)就是在一段資料的前后分別添加首部和尾部,這樣就構成了一個幀,接收端在收到物理層上交的位元流后,就能根據首部和尾部的標記,從收到的位元流中識別幀的開始和結束,因為在開頭和結尾做了標記,那么接收方只有在檢測到開頭和結尾時才認為資料是完整的,不完整的資料則會丟棄
在這里插入圖片描述
如上圖所示,是將網路層網路層的IP資料報封裝成幀的程序,每一個鏈路層協議都規定了幀的資料部分的長度上限也就是圖中的MTU(Maximum Transfer Unit)

1.2.2 透明傳輸

透明傳輸是指不管所傳資料是什么樣的位元組合,都應當能夠在鏈路上傳送,因此,鏈路層就“看不見”有什么妨礙資料傳輸的東西,當所傳資料中的位元組合恰巧與某一個控制資訊完全一樣時,就必須采取適當的措施,使收方不會將這樣的資料誤認為是某種控制資訊,這樣才能保證資料鏈路層的傳輸是透明的,
在這里插入圖片描述
如上圖所示,SOH為首部開始符,EOT為尾部結束符,如果在資料中出現了與EOT編碼相同的片段,就會導致系統以為資料讀取完了,導致資料被丟棄.
解決方法如下

(1) 位元組計數法

在每個幀首部,用一個位元組記錄幀的位元組數.
在這里插入圖片描述
但也特別容易出問題,如果某一個計數的位元組出現錯誤,會導致很多的幀出現錯誤

(2) 位元組填充法

在標志欄位前加上轉義字符,在許多編程語言中,該方法被廣泛使用
在這里插入圖片描述

也就是當我們檢測到轉義字符時,其后的編碼不會當做標志欄位處理.在異步傳輸時,PPP協議將轉義字符定義為0x7D(01111101).根據RFC1662規定:
1.當資訊欄位中出現0x7E(標志字符)時,我們將其表示為(0x7D,0x5E)
2.當資訊欄位中出現0x7D時,表示為(0x7D,0x5D)

接受端接受資料時就根據相應的規則恢復資料即可
在這里插入圖片描述

(3) 零位元填充法

在發送端,先掃描整個資訊欄位(通常用你硬體實作,軟體也可以但是慢),只要發現有5個連續的1就立即在其后補0.
在這里插入圖片描述
如上圖所示,與標志字符編碼相同的資訊因為加0的緣故,而不會被檢測為標志字符

(4) 違規編碼法

該方法是在物理層位元編碼時實作透明傳輸的一種方法.
在這里插入圖片描述
如上圖所示,高-低表示1,低-高表示0.該編碼方法中不會出現 高-高,低-低,我們就可以用 高-高,低-低來定界幀的開始和結束

1.2.3 差錯檢測

(1)傳輸差錯

傳輸程序中0變成1,1變成0導致的位元差錯.
還有就是下圖所示更復雜的差錯
在這里插入圖片描述

(2)誤碼率(BER)

引入了誤碼率(一段時間內,傳輸錯誤的位元占傳輸位元總數的比例)來度量資料傳輸出現差錯的頻率.當誤碼率為 1 0 ? 10 10^{-10} 10?10時,表示每傳輸 1 0 10 10^{10} 1010個位元就會有一個出錯

(3)回圈冗余檢查(CRC)

出錯的資料就需要舍棄,CRC就是一種判斷資料是否出錯的方法.
在發送端先把資料劃分為組,每組k個bit.現在假定傳輸的資料M=101001,也就是k=6.然后我們規定一個n,一個(n+1)位的數p,我們在M的后面加上n個0,假設n為3,那么得101001000,假設p為1101,然后進行如下運算
在這里插入圖片描述
得到余數001,然后用余數取代M后n個0的位置,此時M=101001001.那么將M當做幀發給接收端,接受端得到幀后將其除以P,如果余數為0,則認為幀沒有出現差錯(有極小的概率出現差錯,且余數為0),這樣就做到了對資料正確性的檢驗,確保能及時丟棄錯誤的資料

(4)糾錯編碼(海明碼)

第一步:確認校驗碼位數
在這里插入圖片描述
第二步:確定校驗碼和資料的位置
在這里插入圖片描述
那么我們可以得出 r = 4 r=4 r=4
在這里插入圖片描述
第三步:求出校驗碼的值
在這里插入圖片描述
我們以求 P 1 P_1 P1?為例,找出二進制位第一位為1的( P 2 P_2 P2?找第二位為1的),如下圖
在這里插入圖片描述

P 1 ∧ D 1 ∧ D 2 ∧ D 4 ∧ D 5 = 0 P_1 \land D_1\land D_2 \land D_4 \land D_5=0 P1?D1?D2?D4?D5?=0,因為D的值已知,可求出 P 1 = 0 P_1=0 P1?=0,其他同理,得如下結果
在這里插入圖片描述

第四步:檢測并糾錯
假設第五位,也就是 D 2 D_2 D2?出錯.我們依次計算
P 1 ∧ D 1 ∧ D 2 ∧ D 4 ∧ D 5 = 1 P_1 \land D_1\land D_2 \land D_4 \land D_5=1 P1?D1?D2?D4?D5?=1
P 2 ∧ D 1 ∧ D 3 ∧ D 4 ∧ D 6 = 0 P_2 \land D_1\land D_3 \land D_4 \land D_6=0 P2?D1?D3?D4?D6?=0
P 3 ∧ D 2 ∧ D 3 ∧ D 4 ∧ D 5 = 1 P_3 \land D_2\land D_3 \land D_4 \land D_5=1 P3?D2?D3?D4?D5?=1
P 4 ∧ D 4 ∧ D 5 = 0 P_4 \land D_4 \land D_5=0 P4?D4?D5?=0
那么我們可以得出0101,也就是第五位出錯

1.3 PPP協議

1.3.1 使用場景

PPP常作為用戶計算機和ISP進行通信時所使用的資料鏈路層協議
在這里插入圖片描述

1.3.2 為什么需要PPP

過去,因為通信質量較差,在資料鏈路層常常使用HDLC這種可靠的傳輸協議,可靠引發的缺點就是效率低,如今通信質量顯著提升,這種復雜的協議已經不太適合廣泛使用,因此簡單的多的PPP就誕生了

1.3.3 PPP需要做到什么

(1)簡單

IETF在設計互聯網體系結構時把最復雜的部分放入了運輸層的TCP協議中,而網際協議IP則相對比較簡單,IP協議提供的是不可靠的資料報服務,這種情況下資料鏈路層沒必要提供比IP協議更多的功能.至于IETF為什么要設計的如此頭重腳輕,我的個人理解如下(IP和TCP不僅僅是點對點協議):
在這里插入圖片描述
在資料傳輸程序中,需要經過很多路由器,為了提高在傳輸中的效率,我們應該使得資料在路由器上的時延較小,因此路由器所做的作業應該盡量簡單,故把一些必不可少的操作放在了較低的層次(物理層,鏈路層,網路層),而一些較復雜的操作放在了較高的層次

(2)封裝成幀

含義與上文所提基本相同

(3)透明性

含義與上文所提基本相同

(4)多種網路層協議

網路層協議不止一種,不同的應用可能會使用不同的網路層協議,那么PPP就必須能在同一條物理鏈路上同時支持多種網路層協議

(5)多種型別鏈路

PPP除了需要兼容各種網路層協議,還需要能支持各種物理層,使得PPP能在不同的鏈路上運行

(6)差錯檢測

PPP必須能夠對接收端接受到的協議價進行檢測,并立即丟棄有差錯的幀

(7)檢測連接狀態

PPP協議需要能及時檢測出鏈路是否處于正常的作業者狀態

(8)最大傳輸單元(MTU)

為了促進各種實作之間的互操作性,PPP規定了資料部分的最大長度.如皋高層協議的分組過長超過了MTU的值,PPP就需要丟棄這樣的幀,并回傳差錯

(9)網路層地址協商

PPP必須提供一種機制使得通信的2個網路層的物體能夠通過協商知道或能夠配置彼此的網路層地址

(10)資料壓縮協議

PPP需要提供需要提供一種方法來協商使用資料壓縮演算法,但PPP不需要將資料壓縮演算法標準化

1.3.4 PPP的組成

(1)一個將IP資料報封裝到串行鏈路的方法

(2)一個用來建立,配置和測驗資料鏈路連接的鏈路控制協議LCP

(3)一套網路控制協議,其中每一個協議支持不同的網路層協議,使得PPP可以向上兼容

1.3.5 PPP幀中各欄位的含義

在這里插入圖片描述
如上圖,首部和尾部的F都是標志字符(0x7E),A(0xFF)和C(0x03)目前沒有實際意義,為預留部分.協議欄位為0x0021時,PPP幀的資訊欄位就是IP資料報,若為0xC021,則資訊欄位是 PPP鏈路控制協議LCP的資料,而0x8021表示這是網路層的控制資料,FCS則是用于CRC檢驗序列

1.3.6 PPP協議的作業流程

(1)起始狀態

起始狀態及鏈路靜止狀態,這時電腦和ISP不存在物理層的連接

(2)建立物理層連接

電腦通過調制調節器呼叫ISP的路由器,路由器檢測的調制調節器發出的載波信號,雙方建立物理連接

(3)建立資料鏈路層連接

通過LCP發送配置請求幀,來協商一些配置資訊(鏈路上的最大幀長,鑒別協議的規約,以及是否使用幀中的A,C欄位).ISP可做出以下幾種回應
在這里插入圖片描述

(4)鑒別

協商結束后雙方就建立了LCP鏈路,接著就進入“鑒別”(Authenticate)狀態,在這一狀態,只允許傳送LCP協議的分組、鑒別協議的分組以及監測鏈路質量的分組,若使用口令鑒別協議 PAP (Password Authentication Protocol),則需要發起通信的一方發送身份識別符號和口令,系統可允許用戶重試若干次,如果需要有更好的安全性,則可使用更加復雜的口令握手鑒別協議CHAP (Challenge-Handshake Authentication Protocol),若鑒別身份失敗,則轉到“鏈路終止”(Link Terminate)狀態,若鑒別成功,則進入“網路層協議”(Network-LayerProtocol)狀態,

(5)建立網路層連接

PPP 鏈路的兩端的網路控制協議NCP根據網路層的不同協議互相交換網路層特定的網路控制分組,這個步驟是很重要的,因為現在的路由器都能夠同時支持多種網路層協議,總之,PPP協議兩端的網路層可以運行不同的網路層協議,但仍然可使用同一個 PPP協議進行通信,

注:(建立應用層連接不屬于本站內容)

(6) 資訊交換

此時2個PPP端可以分別向對方發送分組進行資訊傳輸,也可發送回送請求LCP,回送請求LCP,用以檢測鏈路狀態

(7)斷開連接

由鏈路的一方發送終止請求LCP分組,在收到對方的終止請求后斷開連接
在這里插入圖片描述


2 廣播信道

2.1 局域網(以太網)

2.2.1 局域網的特點

網路為一個單位所擁有,且地理范圍和站點數目均有限且以太網的資料都使用曼徹斯特編碼

2.2.2 局域網的優點

(1)具有廣播功能,從一個站點可很方便地訪問全網

(2)便于系統的擴展和逐步演變,各設備的位置可靈活調整和改變

(3)提高了系統的可靠性,可用性,生存性

2.2.3 根據拓撲的局域網分類

(1)星形網

在這里插入圖片描述
目前使用最廣泛

(2)環形網

在這里插入圖片描述

(3)總線網

在這里插入圖片描述
總線的兩端的匹配電阻吸收在總線上傳播的電磁波信號的能量,避免在總線上產生有害的電磁波反射

2.2.4 信道共享

(1)靜態劃分

指頻分復用,碼分復用,波分復用,時分復用等,這些方法在物理層已經講過.但這種方法劃分信道,代價較高,不適合局域網使用

(2)動態媒體接入控制

1.隨機接入

隨機接入的特點是所有的用戶可隨機地發送資訊,但如果恰巧有兩個或更多的用戶在同一時刻發送資訊,那么在共享媒體上就要產生碰撞(即發生了沖突),使得這些用戶的發送都失敗,因此,必須有解決碰撞的網路協議,

2.受控接入

受控接入的特點是用戶不能隨機地發送資訊而必須服從一定的控制,這類的典型代表有分散控制的令牌環局域網和集中控制的多點線路探詢(polling),或稱為輪詢,

其中隨機接入被廣泛使用

2.2 配接器

配接器也叫網路介面控制器(NIC),配接器里裝有處理器和存盤器(包括RAM和ROM),配接器和局域網之間是通過雙絞線或電纜以串行傳輸方式進行
在這里插入圖片描述
而配接器與計算機之間是通過配接器上的IO總線以并行傳輸方式進行(傳輸速率快),
在這里插入圖片描述

故,配接器的一個重要功能就是進行并行和串行的轉換,且因為傳輸速率不同,配接器還必須裝有儲存芯片.配接器在接受和發送資料時不使用計算機的cpu,且計算機的硬體地址就是在配接器的ROM中
在這里插入圖片描述

2.3 CSMA/CD協議

2.3.1 多點接入

“多點接入”就是說明這是總線型網路,許多計算機以多點接入的方式連接在一根總線上,協議的實質是“載波監聽”和“碰撞檢測”,

2.3.2 載波監聽

通過電子技術手段檢測總線上有沒有其他計算機也在發送.不管在發生前,還是發射中,每個站都必須不停的檢測信道.發送前檢測是為了獲得發送權,發射中檢測是為了及時知道有沒有其他站發送的資訊和本站發送的資訊碰撞.

2.3.3 碰撞檢測

邊發送邊監聽.當幾個站同時在總線上發送資料時,總線上的信號電壓變化幅度將會增大.配接器檢測到電壓變化幅度超過一定的門限后,就認為產生了碰撞.此時總線上傳輸的信號產生了嚴重的失真,因此一旦發現總線上出現了碰撞,配接器就要立即停止發送,免得浪費網路資源,然后等待一段隨機事件后再發送

2.3.4 沖突產生的原因

CSMA/CD協議規定,發送前必須檢測到信號為空閑才會進行發送,那為什么會產生沖突了.假設電磁波傳播1km的傳播時延為5μs,如下圖,因為在A信號的傳播程序中,B沒有檢測到信道有信號,故發送了信號,故延遲是產生沖突的主要原因.
在這里插入圖片描述

2.3.5 爭用期

如下圖,我們假設碰撞的位置里B無限近,那么信號從A發送到碰撞點的時間為 τ \tau τ,那么發送碰撞后,碰撞后失真的信號又傳送到A又需要 τ \tau τ的時間,也就是最晚檢測到沖突的時間為 2 τ 2\tau 2τ,將端到端往返的時間稱為爭用期.
在這里插入圖片描述
一個站只要發送資料后過了爭用期,則可以確定此次發送不會發生碰撞

2.3.6 截斷二進制指數退避演算法

該演算法讓發送碰撞后的站,推遲發送資料(不是等到信道空閑就立即發送),因為如果不推遲大家又會同時發送從而產生碰撞,具體步驟如下
在這里插入圖片描述
現在考慮一種情況,某個站發送了一個很短的幀,但在發送完畢之前并沒有檢測出碰撞,假定這個幀在繼續向前傳播到達目的站之前和別的站發送的幀發生了碰撞,因而目的站將收到有差錯的幀(當然會把它丟棄),可是發送站卻不知道這個幀發生了碰撞,因而不會重傳這個幀,這種情況顯然是我們所不希望的,為了避免發生這種情況,以太網規定了一個最短幀長64位元組,即 512 bit,如果要發送的資料非常少,那么必須加入一些填充位元組,使幀長不小于64位元組,對于10 Mbit/s以太網,發送512 bit的時間需要51.2 μs,也就是上面提到的爭用期,

2.3.7 強化碰撞

當發送資料的站一旦發現發生了碰撞時,除了立即停止發送資料外,還要再繼續發送32位元或48位元的人為干擾信號(jamming signal),以便讓所有用戶都知道現在已經發生了碰撞
在這里插入圖片描述

2.3.8 幀間間隔

以太網還規定了幀間最小間隔為9.6 us,相當于96位元時間,這樣做是為了使剛剛收到資料幀的站的接收快取來得及清理,做好接收下一幀的準備,

2.3.9 CSMA/CD 概括

(1)準備發送:配接器從網路層獲得一個分組,加上以太網的首部和尾部,組成以太網幀,放入配接器的快取中,但在發送之前,必須先檢測信道,

(2)檢測信道:若檢測到信道忙,則應不停地檢測,一直等待信道轉為空閑,若檢測到信道空閑,并在96位元時間內信道保持空閑(保證了幀間最小間隔),就發送這個幀,

(3)在發送程序中仍不停地檢測信道,即網路配接器要邊發送邊監聽,這里只有兩種可能性:

①發送成功:在爭用期內一直未檢測到碰撞,這個幀肯定能夠發送成功,發送完畢后,其他什么也不做,然后回到(1),

②發送失敗:在爭用期內檢測到碰撞,這時立即停止發送資料,并按規定發送人為干擾信號,配接器接著就執行指數退避演算法,等待r倍512位元時間后,回傳到步驟(2),繼續檢測信道,但若重傳達16次仍不能成功,則停止重傳而向上報錯,

以太網每發送完一幀,一定要把已發送的幀暫時保留一下,如果在爭用期內檢測出發生了碰撞,那么還要在推遲一段時間后再把這個暫時保留的幀重傳一次,

2.4 集線器

(1):從表面上看,使用集線器的局域網在物理上是一個星形網,但由于集線器使用電子器件來模擬實際電纜線的作業,因此整個系統仍像一個傳統以太網那樣運行,也就是說,使用集線器的以太網在邏輯上仍是一個總線網,各站共享邏輯上的總線,使用的還是CSMA/CD協議(更具體些說,是各站中的配接器執行CSMA/CD 協議),網路中的各站必須競爭對傳輸媒體的控制,并且在同一時刻至多只允許一個站發送資料,

(2):集線器作業在物理層,僅僅轉發位元,不進行其他作業.如果集線器的2個介面同時有信號輸入,那么所以介面都將收不到信號

(3):集線器采用了專門的芯片,進行自適應串音回波抵消,這樣就可使介面轉發出去的較強信號不致對該介面接收到的較弱信號產生干擾(這種干擾即近端串音),每個位元在轉發之前還要進行再生整形并重新定時,
在這里插入圖片描述

2.5 以太網的信道利用率

在這里插入圖片描述
上圖,占用信道的時間為 T 0 + τ T_0+\tau T0?+τ,為什么多出了半個爭用期,因為站在發送完最后一個幀后該幀仍需要在信道中傳輸半個爭用期.

在這里插入圖片描述
要提高信道的利用率就是要降低a.

假設發送資料不會產生碰撞,那么我們可以求得極限信道利用率 S m a x S_{max} Smax?
在這里插入圖片描述

2.6 以太網的MAC層

2.6.1 配接器的硬體地址

在這里插入圖片描述
這6個位元組的MAC地址已經被固化在配接器的ROM中.

2.6.2 配接器的過濾功能

在這里插入圖片描述

2.6.3 MAC幀格式

常用的以太網MAC幀格式有2種標準,一個是DIX Ethernet V2標準,另一種是 IEEE的802.3標準,后面說的是使用最多的DIX Ethernet V2標準

在這里插入圖片描述

2.6.4 接收端如何確定MAC幀長度

以太網網的傳輸是用曼徹斯特編碼
在這里插入圖片描述
如上圖:在曼徹斯特編碼的每一個碼元(不管碼元是1或0)的正中間一定有一次電壓的轉換(從高到低或從低到高),當發送方把一個以太網幀發送完畢后,就不再發送,這樣接收方就很容易地找到以太網幀結束的位置.

2.6.5 填充欄位

當資料的長度小于46位元組時(MAC幀的幀長小于64位元組),會在資料欄位的后面加入一個整數位元組的填充段.但MAC幀的首部并沒有指出資料欄位的長度,但當我們將資料欄位交給網路層時(包括填充欄位),假設上層使用的是IP協議,那么其首部有一個標記總長度的欄位,這樣就可以提取出真實的資料

2.6.6 前導碼

因為一個站剛開始接受MAC幀時,配接器的時鐘尚未與接受的位元流達成同步,因此在物理層會在MAC幀前插入8位元組(硬體生成),其中前同步碼負責調解接收端的時鐘,幀開始定界符定義為10101011,其前六位的作用和前同步碼一樣,最后兩個連續的一告訴配接器MAC幀來了,做好準備.FCS欄位的檢測范圍不包括前導碼

2.6.7 無效的MAC幀

在這里插入圖片描述

2.7 10BASE-T以太網

在這里插入圖片描述

2.8 擴展的以太網

2.8.1 物理層上的擴展

我們知道因為帶寬和信號衰減的限制,以太網中站與站的距離不能太遠,但光纖調制解調器的出現解決了這一問題,光纖調制解調器的作用進行電信號和光信號的相互轉換,由于光纖時延小,帶寬高,可以很容易的連接到幾公里以外的站.
在這里插入圖片描述

2.8.2 在資料鏈路層擴展的以太網

(1)網橋

網橋對收到的幀根據其MAC地址進行轉發和過濾,當網橋收到一個幀時并不是向所有的介面轉發此幀,而是根據此幀的MAC地址查找網橋中的地址表,然后確定將幀轉發到哪一個借口,或者丟棄.現如今網橋已經被淘汰

(2)以太網交換機

以太網交換機實際上就是一個多介面的網橋,交換機的每一個介面都與一個站相連,一般作業在全雙工信道上.并且具有并行性質,既能同時連接多對介面,使多對主機能同時作業.相互通信的主機都是獨占傳輸媒體,無碰撞的傳輸資料.以太網交換機的介面還有存盤器,能在輸出埠繁忙時把到來的幀進行快取,因此,如果連接在以太網交換機上的兩臺主機,同時向另一臺主機發送幀,那么當這臺主機的介面繁忙時,發送幀的這兩臺主機的介面會把收到的幀暫存一下,以后再發送出去,交換機內部的地址表是通過自動逐漸建立起來的

(2)以太網交換機的自學習功能

在這里插入圖片描述

2.8.3 100BASE-T以太網

100BASE-T是在雙絞線上傳送100 Mbit/s基帶信號的星形拓撲以太網,仍使用IEEE802.3的CSMA/CD協議,它又稱為快速以太網(Fast Ethernet),其只需要在10BASE-T的基礎上對集線器和交換器進行升級,而不需要改變拓撲結構.

2.8.4 吉位元以太網

在這里插入圖片描述
在這里插入圖片描述

3 本節重要概念

1.鏈路是從一個結點到相鄰結點的一段物理線路,資料鏈路則是在鏈路的基礎上增加了一些必要的硬體(如網路配接器)和軟體(如協議的實作),

2.資料鏈路層使用的信道主要有點對點信道和廣播信道兩種,

3.資料鏈路層傳送的協議資料單元是幀,資料鏈路層的三個基本問題則是:封裝成幀、透明傳輸和差錯檢測,

4.回圈冗余檢驗CRC是一種檢錯方法,而幀檢驗序列FCS是添加在資料后面的冗余碼,點對點協議 PPP是資料鏈路層使用最多的一種協議,它的特點是:簡單;只檢測差錯,而不是糾正差錯;不使用序號,也不進行流量控制;可同時支持多種網路層協議,

5.PPPoE是為寬帶上網的主機使用的鏈路層協議,

6.局域網的優點是:具有廣播功能,從一個站點可很方便地訪問全網;便于系統的擴展和逐漸演變;提高了系統的可靠性、可用性和生存性,

7.共享通信媒體資源的方法有二:一是靜態劃分信道(各種復用技術),二是動態媒體接入控制,又稱為多點接入(隨機接入或受控接入),

8.IEEE 802委員會曾把局域網的資料鏈路層拆成兩個子層,即邏輯鏈路控制(LLC)子層(與傳輸媒體無關)和媒體接入控制(MAC)子層(與傳輸媒體有關),但現在LLC子層已成為歷史,

9.計算機與外界局域網的通信要通過通信配接器(或網路配接器),它又稱為網路介面卡或網卡,計算機的硬體地址就在配接器的ROM中,

10.以太網采用無連接的作業方式,對發送的資料幀不進行編號,也不要求對方發回確認,目的站收到有差錯幀就把它丟棄,其他什么也不做,

11.以太網采用的協議是具有沖突檢測的載波監聽多點接入 CSMA/CD,協議的要點是:發送前先監聽,邊發送邊監聽,一旦發現總線上出現了碰撞,就立即停止發送,然后按照退避演算法等待一段隨機時間后再次發送,因此,每一個站在自己發送資料之后的一小段時間內,存在著遭遇碰撞的可能性,以太網上各站點都平等地爭用以太網信道,

12.傳統的總線以太網基本上都是使用集線器的雙絞線以太網,這種以太網在物理上是星形網,但在邏輯上則是總線形網,集線器作業在物理層,它的每個介面僅僅簡單地轉發位元,不進行碰撞檢測,

13.以太網的硬體地址,即 MAC地址實際上就是配接器地址或配接器識別符號,與主機所在的地點無關,源地址和目的地址都是48位長,
14.以太網的配接器有過濾功能,它只接收單播幀、廠廣播幀嘆多插顆,

15.使用集線器可以在物理層擴展以太網(擴展后的以太網仍然是一個網路),

16.交換式集線器常稱為以太網交換機或第二層交換機(作業在資料鏈路層),它就是一個多介面的網橋,而每個介面都直接與某臺單主機或另一個集線器相連,且作業在全雙工方式,以太網交換機能同時連通許多對的介面,使每一對相互通信的主機都能像獨占通信媒體那樣,無碰撞地傳輸資料,

17.高速以太網有100 Mbit/s的快速以太網、吉位元以太網和10 Gbit/s的10吉位元以太網,最近還發展到100吉位元以太網,在寬帶接入技術中,也常使用高速以太網進行接入,

參考資料

計算機網路第七版(謝希仁 編著)
王道考研 計算機網路

轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/272929.html

標籤:其他

上一篇:這10個你必須掌握的測驗工具,不會不行!

下一篇:“專案經理”都會的軟體開發七大程序模型

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 面試突擊第一季,第二季,第三季

    第一季必考 https://www.bilibili.com/video/BV1FE411y79Y?from=search&seid=15921726601957489746 第二季分布式 https://www.bilibili.com/video/BV13f4y127ee/?spm_id_fro ......

    uj5u.com 2020-09-10 05:35:24 more
  • 第三單元作業總結

    1.前言 這應該是本學期最后一次寫作業總結了吧。總體來說,對作業的節奏也差不多掌握了,作業做起來的效率也更高了。雖然和之前的作業一樣,作業中都要用到新的知識,但是相比之前,更加懂得了如何利用工具以及資料。雖然之間卡過殼,但總體而言,這幾次作業還算完成的比較好。 2.作業程序總結 相比前兩個單元,此單 ......

    uj5u.com 2020-09-10 05:35:41 more
  • 北航OO(2020)第四單元博客作業暨課程總結博客

    北航OO(2020)第四單元博客作業暨課程總結博客 本單元作業的架構設計 在本單元中,由于UML圖具有比較清晰的樹形結構,因此我對其中需要進行查詢操作的元素進行了包裝,在樹的父節點中存盤所有孩子的參考。考慮到性能問題,我采用了快取機制,一次查詢后盡可能快取已經遍歷過的資訊,以減少遍歷次數。 本單元我 ......

    uj5u.com 2020-09-10 05:35:48 more
  • BUAA_OO_第四單元

    一、UML決議器設計 ? 先看下題目:第四單元實作一個基于JDK 8帶有效性檢查的UML(Unified Modeling Language)類圖,順序圖,狀態圖分析器 MyUmlInteraction,實際上我們要建立一個有向圖模型,UML中的物件(元素)可能與同級元素連接,也可與低級元素相連形成 ......

    uj5u.com 2020-09-10 05:35:54 more
  • 6.1邏輯運算子

    邏輯運算子 1. && 短路與 運算式1 && 運算式2 01.運算式1為true并且運算式2也為true 整體回傳為true 02.運算式1為false,將不會執行運算式2 整體回傳為false 03.只要有一個運算式為false 整體回傳為false 2. || 短路或 運算式1 || 運算式2 ......

    uj5u.com 2020-09-10 05:35:56 more
  • BUAAOO 第四單元 & 課程總結

    1. 第四單元:StarUml檔案決議 本單元采用了圖模型決議UML。 UML檔案可以抽象為圖、子圖、邊的邏輯結構。 在實作中,圖的節點包括類、介面、屬性,子圖包括狀態圖、順序圖等。 采用了三次遍歷UML元素的方法建圖,第一遍遍歷建點,第二、三次遍歷設定屬性、連邊,實作圖物件的初始化。這里借鑒了一些 ......

    uj5u.com 2020-09-10 05:36:06 more
  • 談談我對C# 多型的理解

    面向物件三要素:封裝、繼承、多型。 封裝和繼承,這兩個比較好理解,但要理解多型的話,可就稍微有點難度了。今天,我們就來講講多型的理解。 我們應該經常會看到面試題目:請談談對多型的理解。 其實呢,多型非常簡單,就一句話:呼叫同一種方法產生了不同的結果。 具體實作方式有三種。 一、多載 多載很簡單。 p ......

    uj5u.com 2020-09-10 05:36:09 more
  • Python 資料驅動工具:DDT

    背景 python 的unittest 沒有自帶資料驅動功能。 所以如果使用unittest,同時又想使用資料驅動,那么就可以使用DDT來完成。 DDT是 “Data-Driven Tests”的縮寫。 資料:http://ddt.readthedocs.io/en/latest/ 使用方法 dd. ......

    uj5u.com 2020-09-10 05:36:13 more
  • Python里面的xlrd模塊詳解

    那我就一下面積個問題對xlrd模塊進行學習一下: 1.什么是xlrd模塊? 2.為什么使用xlrd模塊? 3.怎樣使用xlrd模塊? 1.什么是xlrd模塊? ?python操作excel主要用到xlrd和xlwt這兩個庫,即xlrd是讀excel,xlwt是寫excel的庫。 今天就先來說一下xl ......

    uj5u.com 2020-09-10 05:36:28 more
  • 當我們創建HashMap時,底層到底做了什么?

    jdk1.7中的底層實作程序(底層基于陣列+鏈表) 在我們new HashMap()時,底層創建了默認長度為16的一維陣列Entry[ ] table。當我們呼叫map.put(key1,value1)方法向HashMap里添加資料的時候: 首先,呼叫key1所在類的hashCode()計算key1 ......

    uj5u.com 2020-09-10 05:36:38 more
最新发布
  • 【中介者設計模式詳解】C/Java/JS/Go/Python/TS不同語言實作

    * 中介者模式是一種行為型設計模式,它可以用來減少類之間的直接依賴關系,
    * 將物件之間的通信封裝到一個中介者物件中,從而使得各個物件之間的關系更加松散。
    * 在中介者模式中,物件之間不再直接相互互動,而是通過中介者來中轉訊息。 ......

    uj5u.com 2023-04-20 08:20:47 more
  • 露天煤礦現場調研和交流案例分享

    他們集團的資訊化公司及研究院在一個礦區正在做智能礦山的統一平臺的 試點,專案投資大概1億,包括了礦山的各方面的內容,顯示得我們這次交流有點多余。他們2年前開始做智能礦山的規劃,有很多煤礦行業專家的加持,他們的描述是非常完美,但是去年底應該上線的平臺,現在還沒有看到影子。他們確實有很多場景需求,但是被... ......

    uj5u.com 2023-04-20 08:20:25 more
  • 《社區人員管理》實戰案例設計&個人案例分享

    設計是一個讓人夢想成真程序,開始編碼、測驗、除錯之前進行需求分析和架構設計,才能保證關鍵方面都做正確 ......

    uj5u.com 2023-04-20 08:20:17 more
  • 軟體架構生態化-多角色交付的探索實踐

    作為一個技術架構師,不僅僅要緊跟行業技術趨勢,還要結合研發團隊現狀及痛點,探索新的交付方案。在日常中,你是否遇到如下問題 “ 業務需求排期長研發是瓶頸;非研發角色感受不到研發技改提效的變化;引入ISV 團隊又擔心質量和安全,培訓周期長“等等,基于此我們探索了一種新的技術體系及交付方案來解決如上問題。 ......

    uj5u.com 2023-04-20 08:20:10 more
  • 【中介者設計模式詳解】C/Java/JS/Go/Python/TS不同語言實作

    * 中介者模式是一種行為型設計模式,它可以用來減少類之間的直接依賴關系,
    * 將物件之間的通信封裝到一個中介者物件中,從而使得各個物件之間的關系更加松散。
    * 在中介者模式中,物件之間不再直接相互互動,而是通過中介者來中轉訊息。 ......

    uj5u.com 2023-04-20 08:19:44 more
  • 露天煤礦現場調研和交流案例分享

    他們集團的資訊化公司及研究院在一個礦區正在做智能礦山的統一平臺的 試點,專案投資大概1億,包括了礦山的各方面的內容,顯示得我們這次交流有點多余。他們2年前開始做智能礦山的規劃,有很多煤礦行業專家的加持,他們的描述是非常完美,但是去年底應該上線的平臺,現在還沒有看到影子。他們確實有很多場景需求,但是被... ......

    uj5u.com 2023-04-20 08:19:07 more
  • 《社區人員管理》實戰案例設計&個人案例分享

    設計是一個讓人夢想成真程序,開始編碼、測驗、除錯之前進行需求分析和架構設計,才能保證關鍵方面都做正確 ......

    uj5u.com 2023-04-20 08:18:57 more
  • 軟體架構生態化-多角色交付的探索實踐

    作為一個技術架構師,不僅僅要緊跟行業技術趨勢,還要結合研發團隊現狀及痛點,探索新的交付方案。在日常中,你是否遇到如下問題 “ 業務需求排期長研發是瓶頸;非研發角色感受不到研發技改提效的變化;引入ISV 團隊又擔心質量和安全,培訓周期長“等等,基于此我們探索了一種新的技術體系及交付方案來解決如上問題。 ......

    uj5u.com 2023-04-20 08:18:49 more
  • 05單件模式

    #經典的單件模式 public class Singleton { private static Singleton uniqueInstance; //一個靜態變數持有Singleton類的唯一實體。 // 其他有用的實體變數寫在這里 //構造器宣告為私有,只有Singleton可以實體化這個類! ......

    uj5u.com 2023-04-19 08:42:51 more
  • 【架構與設計】常見微服務分層架構的區別和落地實踐

    軟體工程的方方面面都遵循一個最基本的道理:沒有銀彈,架構分層模型更是如此,每一種都有各自優缺點,所以請根據不同的業務場景,并遵循簡單、可演進這兩個重要的架構原則選擇合適的架構分層模型即可。 ......

    uj5u.com 2023-04-19 08:42:41 more