1. 程式人生 > >LAN和VLAN技術原理

LAN和VLAN技術原理

LAN VLAN Trunk


目錄

局域網LAN

虛擬局域網

VLAN實現原理



一、局域網LAN

技術分享圖片

上圖表示的是最基本的LAN布局,如果兩個設備間要進行通信,必須先知道雙方的名字,這裏MAC就是他們各自的名字。假如Bob向Sally發送消息,但是一開始Bob並不知道Sally的MAC是什麽,所以要先獲取Sally的MAC地址,中間有個ARP協議就是解決這個問題(Bob先廣播發送一個詢問信息,詢問Sally在哪,這個詢問信息凡是連接這個Hub的設備都會接受,Sally接受這個詢問消息後將自己的MAC發送給Bob,其他的設備則會丟棄這個詢問信息),至此已經建立設備間通信的準備條件。

使用Hub連接的一群設備,都屬於同一個沖突域和廣播域,這裏沖突域就是廣播域,簡單理解就是在這種布局中,一次只能一臺設備發送信號且其他設備都能接受該信號。

集線器是中繼系統中的物理層(第一層)設備,主要作用是將信號進行接受-恢復放大-發送,雙絞線、光纖在傳輸信號的時候,隨著距離的增大,信號會減弱造成失真,借助集線器可以讓信號傳播更遠的距離;同時Hub上有很多接口,能夠擴展終端數量擴大LAN的規模

但是同一Hub上的所有設備共享帶寬,如果設備數量過多的話,會造成鏈路擁堵,嚴重的會產生廣播風暴。

技術分享圖片

解決的上面布局的缺陷是將一個大的區域劃分成眾多小的區域,這樣可以縮減沖突域的範圍,降低數據擁堵,中間使用的設備是交換機。如上圖是把主集線器換成交換機,交換機的一個端口對應一個單獨的沖突域,這樣一來一個大的廣播域就分成了多個小的沖突域,圖中的集線器只是擴展交換機端口的沖突域。但註意的是,這整個網絡仍是一個廣播域


上面的布局還是不夠好,無法對廣播域進行隔離,我們想象一下如果只有一個廣播域,當主機數量越來越多時,發送一個廣播則所有設備都要進行處理,那將是一筆很大的開銷,為此我們引進路由器來劃分廣播域。註意,路由器可以劃分沖突域和廣播域

技術分享圖片

當路由器收到廣播時,會自動把它自動丟棄,不會轉發到路由器的其他端口,實現了廣播域的分割。而且路由器還要一個串行接口0用來連接廣域網。

圖中LAN布局所示,有6個沖突域(串行接口那個除外),3個廣播域。



二、虛擬局域網


什麽是VLAN(虛擬局域網),我們發現凡是帶V的,都和虛擬掛鉤,既然是虛擬的,也就是不存在物理實體的,所以在理解的時候,我們要有一定的邏輯思維。VLAN技術就是將一個物理的LAN在邏輯上劃分成多個廣播域,每一個廣播域就是一個VLAN。


為什麽要使用VLAN呢,我們知道,交換機構成的LAN可以隔離沖突域,使得同一局域網內的所有主機可以同時發送消息,這確實相比集線器是一個很大的進步,但是,當一臺設備發送一個廣播,隨著LAN內的主機數量越來越多,交換機要復制該廣播的數量就會增多(因為要轉發到每一天設備嘛),那麽每臺設備發送廣播呢,可想而知交換機將不堪重負。因此想到了劃分廣播域,


技術分享圖片


默認情況下,廣播會發給LAN下所有的主機如上圖,但是劃分了VLAN之後,廣播只會發給同一VLAN內的所有主機,而不會發給其他VLAN內的主機。


技術分享圖片


上圖所示,雖然這些主機在同一個交換機上,但是通過對交換機做一些特殊的處理(什麽處理後邊詳解),本來一個廣播域被劃分成了3個廣播域,物理上這些主機在一個交換機上,但是邏輯上已經分別劃分到三個交換機上,所以會有三個局域網(只不過是虛擬的),會有三個廣播域,這就是為什麽叫做虛擬局域網的原因


這裏特別說明一點,VLAN1這個虛擬局域網編號,一般工作於管理組,所以普通VLAN都是從2開始編號,默認情況下,所有虛擬局域網都隸屬於VALN1,因為是管理員組嘛。


將來如果想添加一個PC到VLAN3裏邊,只需要將其PC接到物理交換機的VLAN3接口上邊即可,而不需要像普通LAN一樣(新加的PC機要跑到指定的局域網裏邊),這樣就實現了隨地增加用戶,不用關心他的物理位置的限制。


為了便於管理,同時一個VLAN就是一個廣播域,所以通常會分配一個單獨的子網號給一個VLAN,現在我們想到一個問題,同一個VLAN內的主機能夠互相通信,但是不同VLAN的主機能通信嗎,答案是不能,為了解決這個問題,引進了三層交換機(或路由器)等OSI的三層設備實現跨網段通信。



三、VLAN實現原理


靜態VLAN

在VLAN管理員最初配置交換機Port和VLAN ID的對應關系時,就已經固定了這種對應關系,即這個Port只能對應這個VLAN ID,之後無法進行更改,除非管理員再重新配置。

當一臺設備接到這個Port上的時候,怎麽判斷該主機的VLAN ID與Port對應呢,這裏是根據IP配置決定的,我們知道每個VLAN都有一個子網號,並對應著哪些Port,如果設備要求的IP地址和該Port對應的VLAN的子網號不匹配,則連接失敗,該設備將無法正常通信。所以除了連接到正確的Port外,也必須給設備分配屬於該VLAN網絡段的IP地址,這樣才能加入到該VLAN中。


動態VLAN

交換機自動配置Port為主機所屬的VLAN。這裏有三種分類:基於MAC,基於IP,基於用戶

基於MAC的VLAN(例如二層交換機)

將所有主機的硬件地址都加入到VALN的管理數據庫中,例如,一主機隨便連接到交換機的一個動態VLAN的Port時,管理數據庫將根據主機的MAC地址查詢到該主機要加入VLAN 2中,然後自動設置該Port為VLAN 2。缺點是當主機更換了網卡之後,管理數據庫需要重新設定。

基於IP的VLAN(例如三層交換機)

與基於MAC不同,這種方法會記錄子網ID與VLAN ID的映射,而不論主機的網卡怎麽變換,只要他的IP不變,交換機就可以根據主機的子網ID自動設置對應的VLAN ID。

基於用戶的VLAN

根據操作系統的登錄用戶決定VLAN。


Access接口和Trunk接口

交換機中,有兩種類型的接口:接入端口(Access)和中繼端口(Trunk),Access接口只能用來連接用戶主機,只能屬於一個VLAN,因此該接口只傳輸本VLAN的數據。


以上我介紹的都是基於一臺交換機劃分VLAN的情況,當要實現跨兩臺甚至更多交換機呢,基於Access接口已經無法實現了,我們需要加入Trunk接口連接交換機。

如下圖,VLAN 1的A跨不同交換機發送數據給B時,都必須經過交換機的Trunk接口,並在數據幀頭加入該VLAN 1特有的標記字段,然後通過Trunk鏈路發送給另一臺交換機,另一臺交換機Trunk接口識別標記之後,去除標記,然後轉發給B。

技術分享圖片


LAN和VLAN技術原理