VLAN的好處在于有效地限制了L2的廣播域。對于有線網(wǎng)絡(luò),常見的VLAN劃分方法包括基于交換機端口的劃分、基于MAC地址的劃分、基于L3的IP劃分以及基于802.1x的安全憑證劃分等,這方面的資料比較多,支持的產(chǎn)品也很多,應(yīng)用很成熟。
但對于WLAN,該如何劃分VLAN呢?
WLAN的網(wǎng)絡(luò)結(jié)構(gòu)基本單位是BSS。BSS有兩種形態(tài):獨立基礎(chǔ)結(jié)構(gòu)(IBSS,也叫自組網(wǎng)Adhoc)和基礎(chǔ)結(jié)構(gòu)Infrastructure。自組網(wǎng)就是多個站點自發(fā)組成一個可以互通的WLAN,而基礎(chǔ)結(jié)構(gòu)模式則以AP為中心,其它站點都先與AP關(guān)聯(lián),然后才能與BSS中的其它站點進行通信。以下所提到的BSS僅指基礎(chǔ)結(jié)構(gòu)。
WLAN中的VLAN劃分必須要有AP的支持。每一個VLAN由一個VLAN ID來標示,因此以什么作為VLAN ID的依據(jù),決定了VLAN在哪個層次劃分。根據(jù)VLAN與BSS的關(guān)系,WLAN中的VLAN劃分有幾種情況。
1. 以MAC層依據(jù)作為VLAN ID
一個AP至少可以組建一個BSS,而且不少實際的產(chǎn)品還支持同時虛擬出多個BSS,每個BSS擁有不同的BSSID。對于每個BSS,一些AP產(chǎn)品還可以同時支持多個SSID,不同的SSID共享大部分的BSS配置和Radio接口配置,可以有少部分配置不一樣(比如密鑰)。
1.1 以SSID或BSSID為劃分依據(jù)
一種容易實現(xiàn)的VLAN劃分方法就是以SSID為劃分依據(jù),每個SSID對應(yīng)一個VLAN ID。這種劃分依據(jù)完全來自于802.11 MAC層的SSID,因此可以完全在AP內(nèi)部實現(xiàn)。根據(jù)AP對多SSID支持情況的不同,具體情況又有所不同。
1.1.1 AP支持多個BSS,每個BSS又支持多個SSID
這種情況下按照SSID來劃分VLAN,所有連接到該SSID的站點都屬于同一個VLAN。每個SSID提供給STATION的接入端口均為VLAN的Access端口,是不帶tag的端口。
由于一個BSS內(nèi)有多個SSID,因此一個BSS內(nèi)就會有多個VLAN。由于這些SSID均屬于同一BSS,因此如果位于兩個VLAN內(nèi)的STATION要通信,只需要經(jīng)過AP內(nèi)部的轉(zhuǎn)發(fā)橋接即可。
1.1.2 AP僅支持一個BSS,每個BSS支持多SSID
這種情況下按照SSID來劃分VLAN,跟上面的情況類似。
1.1.3 AP支持多個BSS,每個BSS僅支持一個SSID
這種情況下SSID與BSSID一一對應(yīng),因此根據(jù)SSID來劃分VLAN與根據(jù)BSSID來劃分是一樣的。這種情況下屬于同一個BSS的站點屬于同一個VLAN,位于兩個VLAN內(nèi)的STATION要通信,只需要經(jīng)過AP內(nèi)部的轉(zhuǎn)發(fā)橋接即可也僅僅需要AP內(nèi)部的轉(zhuǎn)發(fā)。
1.1.4 AP僅支持BSS,每個BSS僅支持一個SSID
這種情況下如果按照SSID或BSSID來劃分VLAN,則整個BSS均屬于同一VLAN。由于不存在多個VLAN,因此不存在VLAN互通的問題。
可見,如果在同一AP內(nèi)部劃分不同的VLAN,那么這些VLAN間的互通僅需要AP內(nèi)部的MAC橋接即可實現(xiàn),而不需要將數(shù)據(jù)交到更高層進行轉(zhuǎn)發(fā)或橋接。
1.2 以MAC地址為劃分依據(jù)
這種情況根據(jù)STATION的MAC地址在BSS內(nèi)劃分VLAN。AP根據(jù)從STATION發(fā)來的幀中的源地址決定該STATION所屬的VLAN,從而可以保證同一VLAN的互通和不同VLAN的橋接。
上面的兩種劃分均是以802.11 MAC層的信息作為VLAN ID的劃分依據(jù),因此同一VLAN內(nèi)部的轉(zhuǎn)發(fā)和不同VLAN之間的橋接均可在AP內(nèi)部實現(xiàn),而不需要分發(fā)。
在上面的兩種情況下,在AP內(nèi)部只需要維護兩張表即可:一張表是VLAN ID與VLAN依據(jù)(SSID/BSSID或MAC地址)之間的對應(yīng)表,另一張表示VLAN ID與VLAN接口之間的對應(yīng)表。Access端口上的數(shù)據(jù)收發(fā)情況如下:
進入Access端口的數(shù)據(jù):可以不帶tag。如果需要分發(fā)到AP外(目的地址不是BSSID且不是任何BSS中的其它站點),則加上tag通過分發(fā)接口分發(fā);如果不需要分發(fā)到AP外,則有幾種情況:
DA為BSSID,則由AP接收并處理;
DA為同一VLAN中的其它STATION,則MAC層轉(zhuǎn)發(fā);
DA為不同VLAN,但同一AP中的其它STATION,則執(zhí)行VLAN之間的橋接協(xié)議。
從Access端口發(fā)出的數(shù)據(jù):不帶tag,直接發(fā)到STATION。
這種劃分的缺點僅適合于較小的網(wǎng)絡(luò),靈活性較差。比如,無法實現(xiàn)跨AP的VLAN,也就是連接到不同AP的兩個STATION無法劃分到同一個VLAN。
2. 動態(tài)VLAN劃分方式
動態(tài)劃分方式并不由AP來決定VLAN ID,而是由其它更高級的設(shè)備來決定。一種方法是由RADIUS服務(wù)器來劃分。當(dāng)一個STATION與AP關(guān)聯(lián)時,AP中的RADIUS客戶端與RADIUS服務(wù)器進行通信,從而得到該STATION所屬的VLAN ID。RADIUS決定STATION服務(wù)器所屬VLAN的依據(jù)可以是用戶名、IP地址等,因此具有很大的靈活性。當(dāng)用戶的位置改變后,他所屬的VLAN仍然不變。
采用動態(tài)VLAN方式后,同一個AP的同一個SSID中的兩個STATION可能屬于不同的VLAN,而連接到兩個不同AP中的STATION卻可能屬于同一VLAN。因此這種情況下,要實現(xiàn)同一VLAN中不同STATION之間的互通,需要更高層的轉(zhuǎn)發(fā)和橋接,可能需要經(jīng)過位于WDS接口或以太網(wǎng)DS接口等接口之上的VLAN trunk、hybrid端口。
本文來自CSDN博客,轉(zhuǎn)載請標明出處:http://blog.csdn.net/rangzh/archive/2008/07/02/2606778.aspx