VLAN(Virtual Local Area Network)又稱虛擬局域網,是指在交換局域網的基礎上,採用網絡管理軟件構建的可跨越不同網段、不同網絡的端到端的邏輯網絡。一個VLAN組成一個邏輯子網,即一個邏輯廣播域,它可以覆蓋多個網絡設備,允許處於不同地理位置的網絡用戶加入到一個邏輯子網中。
相關標準
1. IEEE 802.1Q
802.1Q協議,即Virtual Bridged Local Area Networks協議,主要規定了VLAN的實現。每一個支持802.1Q協議的主機,在發送數據包時,都在原來的以太網楨頭中的源地址後增加了一個4字節的802.1Q標籤頭,之後接原來以太網的長度或類型域:
+------------+-------------+-------------+-----------------+---------------------+-------------+
| | | | | | |
| 目的地址 | 源地址 | 802.1Q標籤頭| 類型/長度 | 數據 | 校驗 |
| | | | | | (CRC32) |
| 6 bytes | 6 bytes | 4 bytes | 2 bytes | 46-1500 bytes | 4 bytes |
+------------+-------------+-------------+-----------------+---------------------+-------------+
根據上圖,IEEE 802.1Q的最大楨長度是1522字節,最小楨長度是68字節.
其中,802.1Q的標籤頭格式如下:
+--------------+----------+------+------------+
| | | | |
| TPID | PRIORITY | CFI | VID |
| | | | |
| 16 bit | 3 bit |1 bit | 12 bit |
+--------------+----------+------+------------+
下面是802.1Q標籤頭格式的描述:
TPID- Tag protocol Identifier
TPID佔16bit. 它被設置成值0x8100來標明這個楨是一個IEEE 802.1Q標籤過的楨。
Priority
Priority佔3bit,用來表明的IEEE 802.1p的優先級,主要用於流量大時的優先級處理。IEEE 802.1p的優先級共有8級(0-7)。
CFI- Canonical Format Indicator
CFI只有1bit,當其值爲1時,表明MAC地址是非標準格式,如果是0則MAC地址是標準格式。
VID- VLAN Identifier
VID佔12bit,是VLAN的ID,因爲是12位二進制來表示的,也就是說可能的VLAN一共4096個(0-4095之間),每個支持802.1Q協議的主機發送出來的數據包都會包含這個域,以指明自己屬於哪一個VLAN。實際上,由於VID 0和4095被802.1Q協議保留,所以VLAN的最大個數是4094(1-4094)個。
那麼交換機是如何支持VLAN的呢?
下面就是一個二層交換機工作過程的描述:
接收模塊:交換機的一個屬於某個VLAN的端口進來一個以太網報文,交換機看到該報文有沒有802.1Q標籤頭,如果沒有,會根據該端口所屬的VLAN組,自動給該數據包添加一個該VLAN的標籤 ,然後交給查詢路由模塊。
查詢路由:交換機將接收報文交給查詢路由模塊,這個模塊會查詢數據庫,根據報文的目的地址和所屬的VLAN進行路由,之後交給轉發模塊。
轉發模塊:轉發模塊收到報文後,如果發現這是一個包含VLAN標籤頭的報文,就按照端口連接的設備是否支持802.1Q標籤來處理。如果不支持,就會再將接收模塊添加的VLAN標籤頭再去掉;如果支持,就不刪除標籤頭了。
2. IEEE 802.1P
802.1p協議定義了一系列的其它協議,具體請參考協議文檔。
802.1p協議還定義了優先級,對於那些實時性要求高的報文,發送時就可以在802.1Q楨頭增加的3位 Priority中指明該報文優先級高,這樣,交換機會考慮優先先轉發。
劃分VLAN的基本策略
1. 基於端口的VLAN劃分
2. 基於MAC地址的VLAN劃分
3. 基於網絡層的VLAN劃分
4. 基於IP組播的VLAN劃分
使用VLAN優點
1、控制廣播風暴 -- 隔離廣播
2、提高網絡整體安全性 -- 任意分組功能
3、網絡管理簡單、直觀 --可跨物理網段
支持VLAN交換機的基本連接類型
2種基本連接類型:
1.Access links:
指的是隻屬於一個VLAN,且僅向該VLAN轉發數據幀的端口,也叫做native VLAN. access-link設備不能與VLAN外通信, 除非數據包被路由。
2.Trunk links:
Trunk也叫做聚合,是一種封裝技術,它是一條點到點的鏈路,鏈路的兩端可以是交換機,路由器,甚至是主機。它通過兩個或多個端口並行連接同時傳輸以提供更高帶寬、更大吞吐量,大幅度提供整個網絡能力。
VLAN的trunk link指的是能夠轉發多個不同VLAN的通信的端口。trunk link使你的單獨的1個端口同時成爲數個VLAN的端口,這樣可以不需要層3設備。當你在交換機之間使用了trunk link,多個VLAN的信息將從這個連接上通過。