淺談VLAN歸納與總結

1.什麼是VLAN
VLAN(Virtual Local Area Network)是虛擬局域網的意思,也就是幾臺家用計算機構成的網絡,或者也可以是數以百計的計算機構成的企業網絡。

2.什麼是廣播域
廣播域指的是廣播幀(目標MAC地址全部爲1)所能傳遞到的範圍,也就是能夠實現直接通信的區域沒有“中間商”。在同一個廣播域中,如果有某一臺計算機A發出廣播消息需要和另一臺計算機B進行通信(基於以太網的通信中,必須在數據幀中指定目標MAC地址才能正常通信,因此計算機A必須先廣播“ARP請求(ARP Request)信息”,來嘗試獲取計算機B的MAC地址。),該廣播消息再通過這臺計算機連着的二層交換機傳出去,那麼在該廣播域中的其他二層交換機收到消息後,就會把這個消息傳給與它相連的計算機,也就是,在同一個廣播域中,所有計算機都會收到來自其他計算機的廣播
如此一來,一方面廣播信息消耗了網絡整體的帶寬,另一方面,收到廣播信息的計算機還要消耗一部分CPU時間來對它進行處理。造成了網絡帶寬和CPU運算能力的大量無謂消耗
3.分割廣播域的必要性與VLAN的必要性
分割廣播域時,通常用到路由器,並且以路由器上面的LAN口爲單位進行分割,但是路由器上的LAN口數目有限,所以過將VLAN技術用在二層交換機上,那就好辦多了,因爲二層交換機上提供了多個LAN口(起碼比路由器多)本來,二層交換機只能構建單一的廣播域,不過使用VLAN功能後,它能夠將網絡分割成多個廣播域

4.實現VLAN的機制
在理解了“爲什麼需要VLAN”之後,接下來讓我們來了解一下交換機是如何使用VLAN分割廣播域的。
首先,在一臺未設置任何VLAN的二層交換機上,任何廣播幀都會被轉發給除其本身外的其他端口例如,計算機A發送廣播信息後,會被轉發給端口2、3、4。
這時,如果在交換機上生成紅、藍兩個VLAN;同時設置端口1、2屬於紅色VLAN、端口3、4屬於藍色VLAN。再從A發出廣播幀的話,交換機就只會把它轉發給同屬於一個VLAN的其他端口——也就是同屬於紅色VLAN的端口2,不會再轉發給屬於藍色VLAN的端口。
就這樣,VLAN通過限制廣播幀轉發的範圍分割了廣播域。上圖中爲了便於說明,以紅、藍兩色識別不同的VLAN,在實際使用中則是用“VLAN ID”來區分的。
直觀地描述VLAN
如果要更爲直觀地描述VLAN的話,我們可以把它理解爲將一臺交換機在邏輯上分割成了數臺交換機。在一臺交換機上生成紅、藍兩個VLAN,也可以看作是將一臺交換機換做一紅一藍兩臺虛擬的交換機。

5.VLAN訪問鏈接
在講VLAN如何通信之前,我們先來了解一下VLAN的訪問鏈接
a.交換機的端口類型分爲:訪問鏈接,匯聚鏈接
b.訪問鏈接:
訪問鏈接指的是一個VLAN中的鏈接,僅向該VLAN發送數據幀
訪問鏈接的設置:(以下都是基於單臺交換機的情況)
1)生成VLAN
2)設定訪問鏈接(決定哪一個口屬於哪一個VLAN),這個過程又可以分爲靜態VLAN,動態VLAN
● 靜態VLAN:也就是指定哪一個端口屬於哪一個VLAN,固定下來的,由於每一個端口都固定下來了,所以當計算機數目超過一定的數字之後,這個方式的設置就會變得很亂,維護起來也不好,顯然不適合那些需要頻繁改變拓撲結構的網絡,於是就出現了動態VLAN
● 動態VLAN:動態VLAN則是根據每個端口所連的計算機,隨時改變端口所屬的VLAN。動態VLAN可以大致分爲3類:
(1)基於MAC地址的VLAN(MAC Based VLAN)
每臺計算機上的網卡都有一個專屬MAC地址,通過記錄端口所連的計算機上的網卡的MAC地址來決定端口屬於哪個VLAN。因此只要計算機的網卡不變,它接到哪一個端口,其所屬的VLAN都不變,因此可以理解爲這是一種在OSI的第二層設定訪問鏈接的辦法。
(2)基於子網IP地址的VLAN(Subnet Based VLAN)
計算機的IP地址來決定是哪一個VLAN,與基於MAC地址的VLAN相比,能夠更爲簡便地改變網絡結構。IP地址是OSI參照模型中第三層的信息,所以我們可以理解爲基於子網的VLAN是一種在OSI的第三層設定訪問鏈接的方法。
(3)基於用戶的VLAN(User Based VLAN)
基於用戶的VLAN,則是根據交換機各端口所連的計算機上當前登錄的用戶,來決定該端口屬於哪個VLAN。這裏的用戶識別信息,一般是計算機操作系統登錄的用戶
  決定端口所屬VLAN時利用的信息在OSI中的層面越高,就越適於構建靈活多變
的網絡

匯聚鏈接的設置:
a.到此爲止,我們學習的都是使用單臺交換機設置VLAN時的情況。那麼如果需要設置跨越多臺交換機的VLAN時又如何呢?
在規劃企業級網絡時,很有可能會遇到隸屬於同一部門的用戶分散在同一座建築物中的不同樓層的情況,這時可能就需要考慮到如何跨越多臺交換機設置VLAN的問題了。假設有如下圖所示的網絡,且需要將不同樓層的A、C和B、D設置爲同一個VLAN。
這時最關鍵的就是“交換機1和交換機2該如何連接纔好呢?”
最簡單的方法,自然是在交換機1和交換機2上各設一個紅、藍VLAN專用的接口並互聯了。
但是,這個辦法從擴展性和管理效率來看都不好。例如,在現有網絡基礎上再新建VLAN時,爲了讓這個VLAN能夠互通,就需要在交換機間連接新的網線。建築物樓層間的縱向佈線是比較麻煩的,一般不能由基層管理人員隨意進行。並且,VLAN越多,樓層間(嚴格地說是交換機間)互聯所需的端口也越來越多,交換機端口的利用效率低是對資源的一種浪費、也限制了網絡的擴展。
爲了避免這種低效率的連接方式,人們想辦法讓交換機間互聯的網線集中到一根上,這時使用的就是匯聚鏈接(Trunk Link)。
b.匯聚鏈接的定義:
匯聚鏈接(Trunk Link)指的是能夠轉發多個不同VLAN的通信的端口。
匯聚鏈路上流通的數據幀,都被附加了用於識別分屬於哪個VLAN的特殊信息
接下來,讓我們具體看看匯聚鏈接是如何實現跨越交換機間的VLAN的。
A發送的數據幀從交換機1經過匯聚鏈路到達交換機2時,在數據幀上附加了表示屬於紅色VLAN的標記。
交換機2收到數據幀後,經過檢查VLAN標識發現這個數據幀是屬於紅色VLAN的,因此去除標記後根據需要將復原的數據幀只轉發給其他屬於紅色VLAN的端口。這時的轉送,是指經過確認目標MAC地址並與MAC地址列表比對後只轉發給目標MAC地址所連的端口。只有當數據幀是一個廣播幀、多播幀或是目標不明的幀時,它纔會被轉發到所有屬於紅色VLAN的端口。

6.VLAN間如何通信
VLAN是廣播域。而通常兩個廣播域之間是不能直接進行通信的,必須要由路由器這個中間商連接,廣播域之間來往的數據包都是由路由器中繼的。因此,VLAN間的通信也需要路由器提供中繼服務,這被稱作“VLAN間路由”。這裏的VLAN間路由,可以使用普通的路由器,也可以使用三層交換機
先來看一下爲什麼不同VLAN間不通過路由就無法通信。在LAN內的通信,必須在數據幀頭中指定通信目標的MAC地址。而爲了獲取MAC地址,TCP/IP協議下使用的是ARP。ARP解析MAC地址的方法,則是通過廣播。也就是說,如果廣播報文無法到達,那麼就無從解析MAC地址,亦即無法直接通信。
路由功能,一般主要由路由器提供。但在今天的局域網裏,我們也經常利用帶有路由功能的交換機——三層交換機(Layer 3 Switch)來實現
路由器和交換機的接線方式,大致有以下兩種:
(1)將路由器與交換機上的每個VLAN分別連接
(2)不論VLAN有多少個,路由器與交換機都只用一條網線連接
很容易想象,第一種方法下,每新增一個端口,就需要路由器新提供一個端口,也需要多一條網線,那這樣下去,可想而知,遲早窮死!!!
所以我們轉折去第二種方法,聯繫我們上面說到的匯聚鏈接,這樣子我們就很容易理解只用一根網線的原理了。具體實現過程:只需要在交換機上將一個端口設置爲匯聚鏈接,同時也將路由器的端口設置爲匯聚鏈接,別忘了路由器與交換機之間的通信協議也要一致,這樣設置以後,接着在路由器上分別定義對應各個VLAN的子接口(路由器裏面可以設置虛擬端口來和VLAN端口一一對應),這樣可以想象以後我們每新增一個VLAN端口,那隻需要在路由器上相應的加上對應的虛擬端口就可以了!!!是不是很方便,起碼比你買網線省錢多了!!!
之前我們說了不同VLAN口之間的通信必須要經過路由器或者三層交換機來做中間商,而且具體實現方式是利用了OSI模型中的網絡層(IP地址),所以接下來我們要聊下這種方式處理過程:
(路由器法)計算機A從通信目標的IP地址(192.168.2.1)得出C與本機不屬於同一個網段。因此會向設定的默認網關(DefaultGateway,GW)轉發數據幀。在發送數據幀之前,需要先用ARP獲取路由器的MAC地址。
得到路由器的MAC地址R後,接下來就是按圖中所示的步驟發送往C去的數據幀。①的數據幀中,目標MAC地址是路由器的地址R、但內含的目標IP地址仍是最終要通信的對象C的地址。這一部分的內容,涉及到局域網內經過路由器轉發時的通信步驟,有機會再詳細解說吧。
交換機在端口1上收到①的數據幀後,檢索MAC地址列表中與端口1同屬一個VLAN的表項。由於匯聚鏈路會被看作屬於所有的VLAN,因此這時交換機的端口6也屬於被參照對象。這樣交換機就知道往MAC地址R發送數據幀,需要經過端口6轉發。
從端口6發送數據幀時,由於它是匯聚鏈接,因此會被附加上VLAN識別信息。由於原先是來自紅色VLAN的數據幀,因此如圖中②所示,會被加上紅色VLAN的識別信息後進入匯聚鏈路。路由器收到②的數據幀後,確認其VLAN識別信息,由於它是屬於紅色VLAN的數據幀,因此交由負責紅色VLAN的子接口接收。
接着,根據路由器內部的路由表,判斷該向哪裏中繼。
由於目標網絡192.168.2.0/24是藍色VLAN,,且該網絡通過子接口與路由器直連,因此只要從負責藍色VLAN的子接口轉發就可以了。這時,數據幀的目標MAC地址被改寫成計算機C的目標地址;並且由於需要經過匯聚鏈路轉發,因此被附加了屬於藍色VLAN的識別信息。這就是圖中③的數據幀。
交換機收到③的數據幀後,根據VLAN標識信息從MAC地址列表中檢索屬於藍色VLAN的表項。由於通信目標——計算機C連接在端口3上、且端口3爲普通的訪問鏈接,因此交換機會將數據幀去除VLAN識別信息後(數據幀④)轉發給端口3,最終計算機C才能成功地收到這個數據幀。
進行VLAN間通信時,即使通信雙方都連接在同一臺交換機上,也必須經過:“發送方——交換機——路由器——交換機——接收方”這樣一個流程
(三層交換機法)如果應用以上的路上器法,那麼隨着VLAN端口的增加,傳輸數據自然會增加,那麼到時候傳輸數據的瓶頸就會出現在匯聚鏈接那裏,由於路由器是基於軟件的,故無法很好處理這方面,而交換機因此應運而生!!!關於三層交換機的內部結構,可以參照下面的簡圖。
交換機的處理過程大致和路由器相似,這裏就不詳細說了











































發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章