計算機網絡筆記之數據鏈據層之MAC子層

計算機網絡筆記之數據鏈據層之MAC子層

概述:

  爲什麼需要介質訪問控制子層(MAC)?

  介質訪問控制子層(MAC)是局域網體系結構中劃分的子層,多路訪問鏈路採用共享介質連接所有站點.發送站點通過廣播方式發送數據並佔用整個帶寬,如果有多個站點同時發送信息,就會產生衝突,而在點對點鏈路網絡中就不會存在這樣的問題,因爲在點對點網絡中,目的節點是唯一的,不需要尋址,雙方之間的通訊也只在彼此之間產生,不會有其他用戶佔用這個傳輸介質,所以,爲了解決多路通信中介質徵用的問題,IEEE把這種訪問共享介質的功能專門劃分出了一個子層,就是介質訪問控制子層(MAC).


MAC的功能:

  一是用來尋址(這裏指MAC地址),尋找目的節點.

  二是用來解決網絡中多個用戶爭搶共享信道的現象.

爲什麼MAC子層之上又定義了一個LLC子層(邏輯鏈路控制子層)?

  從MAC功能上來看,MAC並不能保證可靠數據的傳輸,爲了做到這一點,在其之上又增加了一個LLC,用來保證數據的可靠性傳輸,來爲網絡層提供服務.

說到共享信道,先來提一下信道的分類.

  點對點信道:有兩個沒有經過任何中間設備的節點構成的信道.點對點信道封裝的是點對點類型的數據鏈路層協議(PPP協議).

  廣播信道:一個信道被多條鏈路共享,一個節點發送的數據會被多個節點收到,對應的鏈路就是廣播鏈路,廣播信道封裝是廣播型數據鏈路層協議(以太網協議,WLAN協議).


MAC地址是什麼?

  在局域網中,MAC的作用是用來找到我們要進行通信的計算機,MAC地址分爲源地址(發送發的MAC地址),和目標地址(接收方MAC地址),源地址是單播地址(也叫單播幀),目標地址可能是單播地址,也可能是多播地址,或廣播地址.

  單播地址:全球唯一,每個網卡上都有自己的一個MAC地址.


MAC地址的幀格式:

如何解決介質爭用?

  在局域網中解決方案有CSMA協議(載波偵聽多路訪問),CSMA/CD協議(帶衝突檢測的載波偵聽多路訪問),後者是前者的改進版.

  在WLAN網絡中解決方案是CSMA/CA協議,也是CSMA協議的改進版.

CSMA/CD的工作過程:

  1.   發送數據幀前先監聽信道,信道忙,則持續監聽,直到信道空閒,信道一旦空閒則立即發送數據.
  2.   邊發送邊檢測衝突,如果發送完畢都沒有檢測到衝突,則發送成功.
  3.   如果檢測到衝突,則停止發送,併發送一個32位干擾信號(阻塞信號),以加強衝突信號,採用二進制指數退避算法隨機延遲一段時間後,再重複以上步驟.

  流程圖:

以太網(802.3)的物理層:


擴展局域網:

用網橋(bridge)連接若干局域網(LAN)可以構造一個更大的局域網,成爲橋接局域網或者擴展局域網.

原來的局域網成爲了擴展局域網的一部分,稱爲這個擴展局域網的一個網段,

百度百科是這樣定義網橋的:

  網橋(Bridge)像一個聰明的中繼器。中繼器從一個網絡電纜裏接收信號, 放大它們,將其送入下一個電纜。相比較而言,網橋對從關卡上傳下來的信息更敏銳一些。網橋是一種對幀進行轉發的技術,根據MAC分區塊,可隔離碰撞。網橋將網絡的多個網段在數據鏈路層連接起來


802.1d協議(STP 生成樹協議):

  生成樹協議的設計目的是要使二級交換網絡中不存在二層環路,那麼什麼是環路呢?

  假設現在有兩個交換機B,C之間有兩條鏈路,主機A,D分別連接B,C.主機A在某一時刻發送了一個廣播包到達了交換機A,交換機A接到廣播信號,會通過兩條鏈路向交換機B發送,這樣交換機B就會受到兩個廣播信號,收到以後他也會通過兩條鏈路向A廣播,這樣就形成了一個惡性循環,也就是形成了廣播風暴,造成大量的網絡設備,和帶寬資源的浪費.

  上面說的兩條鏈路成爲"冗餘鏈路",在顯示網絡設計中大量存在,本來的設計目的是當一條鏈路失效以後,另一條冗餘鏈路可以馬上接管所有工作,當然實際中冗餘鏈路會帶來廣播風暴隱患.

  STP的工作原理是把整個交換網絡看作是一個生成樹實例,稱之爲公共生成樹(CST),STP就是把一個物理網絡拓撲結構變成無歡路的邏輯拓撲結構,採用兩項主要技術:一是通過選舉,使得交換網絡中各個交換機處於特定的角色,另一個就是把交換機之間連接的端口劃分爲不同的角色,使可能形成環路的交換機端口在正常工作時處於堵塞狀態.


802.1q協議(VLAN 虛擬局域網):

  

如圖,如果網橋只在具有相同顏色的端口之間轉發幀,就會把原來的局域網分割成多個多個相互隔離的小的局域網,稱之爲虛擬局域網(VLAN).

  虛擬局域網顧名思義,是一個虛擬的或者說邏輯的LAN,並不是一個物理的LAN,上面圖中用的是網橋,實際更多的使用交換機,那麼網橋和交換機有什麼區別呢?

    這是一個網絡上的一個總結:

局域網交換機的基本功能與網橋一樣,具有幀轉發、幀過濾和生成樹算法功能。但是,交換機與網橋相比還是存在以下不同: 
  (1)交換機工作時,實際上允許許多組端口間的通道同時工作。所以,交換機的功能體現出不僅僅是一個網橋的功能,而是多個網橋功能的集合。即網橋一般分有兩個端口,而交換機具有高密度的端口。 
  (2)分段能力的區別 
  由於交換機能夠支持多個端口,因此可以把網絡系統劃分成爲更多的物理網段,這樣使得整個網絡系統具有更高的帶寬。而網橋僅僅支持兩個端口,所以,網橋劃分的物理網段是相當有限的。 
  (3)傳輸速率的區別 
  交換機與網橋數據信息的傳輸速率相比,交換機要快於網橋。 
  (4)數據幀轉發方式的區別 
  網橋在發送數據幀前,通常要接收到完整的數據幀並執行幀檢測序列FCS後,纔開始轉發該數據幀。交換機具有存儲轉發和直接轉發兩種幀轉發方式。直接轉發方式在發送數據以前,不需要在接收完整個數據幀和經過32bit循環冗餘校驗碼CRC的計算檢查後的等待時間。

 其實,我們只要把一個VLAN看成一個交換機(虛擬的),許多問題就比較好理解了,因爲虛擬交換機和物理交換機有相同的基本屬性,同一物理交換機上的不同VLAN之間就好像只有邏輯連接,沒有物理連接的不同物理交換機一樣,既然沒有物理連接,那麼不同的VLAN肯定是不能相互通信的,即使這些VLAN的成員處於同一IP網段.

  虛擬局域網的幀頭部格式: