access網絡servicebasic服務器擴展VLAN的好處在于有效地限制了L2的廣播域。對于有線網絡,常見的VLAN劃分方法包括基于交換機端口的劃分、基于MAC地址的劃分、基于L3的IP劃分以及基于802.1x的安全憑證劃分等,這方面的資料比較多,支持的產品也很多,應用很成熟。
但對于WLAN,該如何劃分VLAN呢?
WLAN的網絡結構基本單位是BSS。BSS有兩種形態:獨立基礎結構(IBSS,也叫自組網Adhoc)和基礎結構 Infrastructure。自組網就是多個站點自發組成一個可以互通的WLAN,而基礎結構模式則以AP為中心,其它站點都先與AP關聯,然后才能與 BSS中的其它站點進行通信。以下所提到的BSS僅指基礎結構。
Infrastructure是一種整合有線與無線局域網絡架構的應用模式,透過此種架構模式,即可達成網絡資源的共享,此應用需透過Access Point。
而Ad-hoc是一種特殊的無線網絡應用模式,一群計算機接上無線網絡卡,即可相互連接,資源共享,無需透過Access Point。
WLAN中的BSS:一種特殊的Ad-hoc LAN的應用,稱為Basic Service Set (BSS),一群計算機設定相同的BSS名稱,即可自成一個group,而此BSS名稱,即所謂BSSID。
ESS (Extended Service Set 擴展服務集合)DS和多個BSS允許IEEE802.11構成一個任意大小和復雜的無線網絡。IEEE802.11b把這種網絡稱為擴展服務集網絡。同樣,ESS也有一個標識的名稱,即ESSID
ESS中兩個ap之間使用不同頻率信道,怕之間重疊區域要在10%到15%之間。
BSS / ESS
BSS 使用相同身份識別碼( ssid )的一個單一訪問點(single ap) 以及一個無線設備群組,組成一個基本服務組( basic service set , bss )。 必須使用相同的 ssid 。使用不同 ssid 的設備彼此之間不能進行通信。
ESS 使用相同身份識別碼( ssid )的多個訪問點(multi ap) 以及一個無線設備群組,組成一個擴展服務組( extended service set , ess )。 同一 ess 內的不同訪問點可以使用不同的信道。實際上,為了減少干擾,我們強烈推薦相近的訪問點之間使用不同的信道。 當無線設備在 ess 所覆蓋的區域內進行實體移動時,它們將自動切換到干擾最小、連接效果最好的訪問點。我們把這一功能稱為漫游功能。(訪問點本身不具備,也不要求具備漫游功能。)
WLAN中的VLAN劃分必須要有AP的支持。每一個VLAN由一個VLAN ID來標示,因此以什么作為VLAN ID的依據,決定了VLAN在哪個層次劃分。根據VLAN與BSS的關系,WLAN中的VLAN劃分有幾種情況。
以MAC層依據作為VLAN ID
一個AP至少可以組建一個BSS,而且不少實際的產品還支持同時虛擬出多個BSS,每個BSS擁有不同的BSSID。對于每個BSS,一些AP產品 還可以同時支持多個SSID,不同的SSID共享大部分的BSS配置和Radio接口配置,可以有少部分配置不一樣(比如密鑰)。
1、以SSID或BSSID為劃分依據
一種容易實現的VLAN劃分方法就是以SSID為劃分依據,每個SSID對應一個VLAN ID。這種劃分依據完全來自于802.11 MAC層的SSID,因此可以完全在AP內部實現。根據AP對多SSID支持情況的不同,具體情況又有所不同。
● AP支持多個BSS,每個BSS又支持多個SSID
這種情況下按照SSID來劃分VLAN,所有連接到該SSID的站點都屬于同一個VLAN。每個SSID提供給STATION的接入端口均為VLAN的Access端口,是不帶tag的端口。
由于一個BSS內有多個SSID,因此一個BSS內就會有多個VLAN。由于這些SSID均屬于同一BSS,因此如果位于兩個VLAN內的STATION要通信,只需要經過AP內部的轉發橋接即可。
● AP僅支持一個BSS,每個BSS支持多SSID
這種情況下按照SSID來劃分VLAN,跟上面的情況類似。
● AP支持多個BSS,每個BSS僅支持一個SSID
這種情況下SSID與BSSID一一對應,因此根據SSID來劃分VLAN與根據BSSID來劃分是一樣的。這種情況下屬于同一個BSS的站點屬于同一個VLAN,位于兩個VLAN內的STATION要通信,只需要經過AP內部的轉發橋接即可也僅僅需要AP內部的轉發。
● AP僅支持BSS,每個BSS僅支持一個SSID
這種情況下如果按照SSID或BSSID來劃分VLAN,則整個BSS均屬于同一VLAN。由于不存在多個VLAN,因此不存在VLAN互通的問題。
可見,如果在同一AP內部劃分不同的VLAN,那么這些VLAN間的互通僅需要AP內部的MAC橋接即可實現,而不需要將數據交到更高層進行轉發或橋接。
2、以MAC地址為劃分依據
這種情況根據STATION的MAC地址在BSS內劃分VLAN。AP根據從STATION發來的幀中的源地址決定該STATION所屬的VLAN,從而可以保證同一VLAN的互通和不同VLAN的橋接。
上面的兩種劃分均是以802.11 MAC層的信息作為VLAN ID的劃分依據,因此同一VLAN內部的轉發和不同VLAN之間的橋接均可在AP內部實現,而不需要分發。
在上面的兩種情況下,在AP內部只需要維護兩張表即可:一張表是VLAN ID與VLAN依據(SSID/BSSID或MAC地址)之間的對應表,另一張表示VLAN ID與VLAN接口之間的對應表。Access端口上的數據收發情況如下:
進入Access端口的數據:可以不帶tag。如果需要分發到AP外(目的地址不是BSSID且不是任何BSS中的其它站點),則加上tag通過分發接口分發;如果不需要分發到AP外,則有幾種情況:
● DA為BSSID,則由AP接收并處理;
● DA為同一VLAN中的其它STATION,則MAC層轉發;
● DA為不同VLAN,但同一AP中的其它STATION,則執行VLAN之間的橋接協議。
從Access端口發出的數據:不帶tag,直接發到STATION。
這種劃分的缺點僅適合于較小的網絡,靈活性較差。比如,無法實現跨AP的VLAN,也就是連接到不同AP的兩個STATION無法劃分到同一個VLAN。
動態VLAN劃分方式
動態劃分方式并不由AP來決定VLAN ID,而是由其它更高級的設備來決定。一種方法是由RADIUS服務器來劃分。當一個STATION與AP關聯時,AP中的RADIUS客戶端與 RADIUS服務器進行通信,從而得到該STATION所屬的VLAN ID。RADIUS決定STATION服務器所屬VLAN的依據可以是用戶名、IP地址等,因此具有很大的靈活性。當用戶的位置改變后,他所屬的VLAN 仍然不變。
采用動態VLAN方式后,同一個AP的同一個SSID中的兩個STATION可能屬于不同的VLAN,而連接到兩個不同AP中的STATION卻可 能屬于同一VLAN。因此這種情況下,要實現同一VLAN中不同STATION之間的互通,需要更高層的轉發和橋接,可能需要經過位于WDS接口或以太網 DS接口等接口之上的VLAN trunk、hybrid端口。