資料鏈路層相關概念

2021-07-28 09:34:20 字數 3210 閱讀 7589

一、 hub與交換機的區別——碰撞域

首先說一下csma/cd(載波監聽多點接入/碰撞檢測)這個協議,乙太網的鏈路傳輸多是遵守這個協議,而這個協議中的碰撞檢測就涉及到了乙個碰撞域的問題。比如3臺主機同時接在乙個hub上,如果電腦和hub的頻寬都是100m,那麼這100m的頻寬其實是由3臺主機共享的。因為hub的工作原理是:hub收到a主機發來的資料,將這些資料放大功率後向接在該hub上的所有主機進行傳送。也就是說接在hub上的3臺主機處於同一碰撞域中,同時只能有一台主機在傳輸資料,也就是說平均頻寬只有(100*1/3)m。交換機則是根據mac位址來進行**,也就是說接在交換機上的主機都是處於不同的碰撞域中,可以獨享真實頻寬。

二、 連通二層與三層的橋梁——arp (位址解析協議)

位址解析協議,即arp(address resolution protocol),是根據ip位址獲取實體地址的乙個tcp/ip協議。主機傳送資訊時將包含目標ip位址的arp請求(目的mac為ffff-ffff-ffff)廣播到網路上的所有主機,並接收返回訊息,以此確定目標的實體地址;收到返回訊息後將該ip位址和實體地址存入本機arp快取中並保留一定時間,下次請求時直接查詢arp快取以節約資源。

三、 交換機的邏輯隔離——vlan

vlan即虛擬區域網,可以對接在同一子網下的埠進行廣播域的分割。比如arp中提到在獲取目標ip的mac位址時,需要進行arp廣播,這樣的廣播是占用整個子網的頻寬的。如果子網中的主機數量較多,類似的廣播會占用大量的網路資源。這時,如果設定交換機劃分vlan,則廣播包只會在相同vlan下的主機間廣播。vlan的劃分方式有如下幾種:

1. 靜態vlan——基於埠

靜態vlan又被稱為基於埠的vlan(portbased vlan)。顧名思義,就是明確指定各埠屬於哪個vlan的設定方法。由於需要乙個個埠地指定,因此當網路中的計算機數目超過一定數字(比如數百台)後,設定操作就會變得煩雜無比。並且,客戶機每次變更所連埠,都必須同時更改該埠所屬vlan的設定——這顯然不適合那些需要頻繁改變拓補結構的網路。

2. 動態vlan

另一方面,動態vlan則是根據每個埠所連的計算機,隨時改變埠所屬的vlan。這就可以避免上述的更改設定之類的操作。動態vlan可以大致分為3類:

(1) 基於mac位址的vlan(mac based vlan)

基於mac位址的vlan,就是通過查詢並記錄埠所連計算機上網絡卡的mac位址來決定埠的所屬。假定有乙個mac位址「a」被交換機設定為屬於vlan 「10」,那麼不論mac位址為「a」的這台計算機連在交換機哪個埠,該埠都會被劃分到vlan 10中去。計算機連在埠1時,埠1屬於vlan 10;而計算機連在埠2時,則是埠2屬於vlan 10。

(2) 基於子網的vlan(subnet based vlan)

基於子網的vlan,則是通過所連計算機的ip位址,來決定埠所屬vlan的。不像基於mac位址的vlan,即使計算機因為交換了網絡卡或是其他原因導致mac位址改變,只要它的ip位址不變,就仍可以加入原先設定的vlan。因此,與基於mac位址的vlan相比,能夠更為簡便地改變網路結構。ip位址是osi參照模型中第三層的資訊,所以我們可以理解為基於子網的vlan是一種在osi的第三層設定訪問鏈結的方法。

(3) 基於使用者的vlan(user based vlan)

基於使用者的vlan,則是根據交換機各埠所連的計算機上當前登入的使用者,來決定該埠屬於哪個vlan。這裡的使用者識別資訊,一般是計算機作業系統登入的使用者,比如可以是windows域中使用的使用者名稱。這些使用者名稱資訊,屬於osi第四層以上的資訊。

總的來說,決定埠所屬vlan時利用的資訊在osi中的層面越高,就越適於構建靈活多變的網路。

四、 vlan的匯聚鏈結——trunk link

1. 需要設定跨越多台交換機的vlan時

到此為止,我們學習的都是使用單台交換機設定vlan時的情況。那麼,如果需要設定跨越多台交換機的vlan時又如何呢?

在規劃企業級網路時,很有可能會遇到隸屬於同一部門的使用者分散在同一座建築物中的不同樓層的情況,這時可能就需要考慮到如何跨越多台交換機設定vlan的問題了。假設有如下圖所示的網路,且需要將不同樓層的a、c和b、d設定為同乙個vlan。

這時最關鍵的就是「交換機1和交換機2該如何連線才好呢?」最簡單的方法,自然是在交換機1和交換機2上各設乙個紅、藍vlan專用的介面並互聯了。

但是,這個辦法從擴充套件性和管理效率來看都不好。例如,在現有網路基礎上再新建vlan時,為了讓這個vlan能夠互通,就需要在交換機間連線新的網線。建築物樓層間的縱向佈線是比較麻煩的,一般不能由基層管理人員隨意進行。並且,vlan越多,樓層間(嚴格地說是交換機間)互聯所需的埠也越來越多,交換機埠的利用效率低是對資源的一種浪費、也限制了網路的擴充套件。

為了避免這種低效率的連線方式,人們想辦法讓交換機間互聯的網線集中到一根上,這時使用的就是匯聚鏈結(trunk link)。

2. 何謂匯聚鏈結?

匯聚鏈結(trunk link)指的是能夠**多個不同vlan的通訊的埠。匯聚鏈路上流通的資料幀,都被附加了用於識別分屬於哪個vlan的特殊資訊。a傳送的資料幀從交換機1經過匯聚鏈路到達交換機2時,在資料幀上附加了表示屬於紅色vlan的標記。

交換機2收到資料幀後,經過檢查vlan標識發現這個資料幀是屬於紅色vlan的,因此去除標記後根據需要將復原的資料幀只**給其他屬於紅色vlan的埠。這時的轉送,是指經過確認目標mac位址並與mac位址列錶比對後只**給目標mac位址所連的埠。只有當資料幀是乙個廣播幀、多播幀或是目標不明的幀時,它才會被**到所有屬於紅色vlan的埠。藍色vlan傳送資料幀時的情形也與此相同。

通過匯聚鏈路時附加的vlan識別資訊,有可能支援標準的「ieee 802.1q」協議,也可能是cisco產品獨有的「isl(inter switch link)」。如果交換機支援這些規格,那麼使用者就能夠高效率地構築橫跨多台交換機的vlan。

另外,匯聚鏈路上流通著多個vlan的資料,自然負載較重。因此,在設定匯聚鏈結時,有乙個前提就是必須支援100mbps以上的傳輸速度。

另外,預設條件下,匯聚鏈結會**交換機上存在的所有vlan的資料。換乙個角度看,可以認為匯聚鏈結(埠)同時屬於交換機上所有的vlan。由於實際應用中很可能並不需要**所有vlan的資料,因此為了減輕交換機的負載、也為了減少對頻寬的浪費,我們可以通過使用者設定限制能夠經由匯聚鏈路互聯的vlan。

3. vlan間路由

vlan間路由也用到trunk link的方式,後面還涉及較多內容,後面有時間在進行詳細學習。

資料鏈路層 基本概念

資料鏈路層的定義 對資料鏈路層有對上的網路層介面.對下提供物理層的介面.定義合適的傳輸差錯率 對傳輸流進行管理,以免快速的傳輸的資料被淹沒.比如傳送端傳送訊號太快,接受方接受速度較慢,此時資料鏈路層就需要提供一定的功能解決這個問題 物理層上傳輸的基本單元是位元,將其變成乙個連續的訊號或者訊號傳輸.在...

資料鏈路層

資料鏈路的定義 鏈路 計算機網路中相鄰節點的一段物理線路。資料鏈路 計算機網路中節點到節點相鄰的一段物理路線加上控制在這些路線上傳輸資料的協議。資料鏈路層解決的問題 對於計算機網路裡面的每一層,其實都是為了解決某乙個層面的問題而設計出來的,資料鏈路層也一樣 由於物理層只解決了訊號流在物理媒介的傳輸問...

資料鏈路層

首先撇清兩個概念 鏈路和資料鏈路。鏈路是指從乙個結點到另乙個結點的一段物理線路,而中間沒有任何其他的交換結點,在進行資料通訊時,兩個計算機之間的通訊路徑往往要經過許多段這樣的鏈路,可見鏈路只是一條路徑的組層部分,資料鏈路是除了一條物理鏈路外還需要加上一些必要的通訊協議來控制這些資料的傳輸。若把這些實...