VLAN(Virtual Local Area Network)即虛擬局域網(wǎng),是將一個物理的LAN在邏輯上劃分成多個廣播域的通信技術(shù)。每個VLAN是一個廣播域,VLAN內(nèi)的主機間可以直接通信,而VLAN間則不能直接互通。這樣,廣播報文就被限制在一個VLAN內(nèi)。
目錄
為什么需要VLAN
VLAN vs 子網(wǎng)
VLAN Tag和VLAN ID
VLAN的使用場景
VLAN的相關(guān)協(xié)議
云化場景下,VLAN存在的問題
為什么需要VLAN
早期以太網(wǎng)是一種基于CSMA/CD(Carrier Sense Multiple Access/Collision Detection)的共享通訊介質(zhì)的數(shù)據(jù)網(wǎng)絡(luò)通訊技術(shù)。當主機數(shù)目較多時會導(dǎo)致沖突嚴重、廣播泛濫、性能顯著下降甚至造成網(wǎng)絡(luò)不可用等問題。通過二層設(shè)備實現(xiàn)LAN互連雖然可以解決沖突嚴重的問題,但仍然不能隔離廣播報文和提升網(wǎng)絡(luò)質(zhì)量。
在這種情況下出現(xiàn)了VLAN技術(shù)。這種技術(shù)可以把一個LAN劃分成多個邏輯的VLAN,每個VLAN是一個廣播域,VLAN內(nèi)的主機間通信就和在一個LAN內(nèi)一樣,而VLAN間則不能直接互通,廣播報文就被限制在一個VLAN內(nèi)。如下圖所示。
VLAN的作用
因此,VLAN具備以下優(yōu)點:
限制廣播域:廣播域被限制在一個VLAN內(nèi),節(jié)省了帶寬,提高了網(wǎng)絡(luò)處理能力。
增強局域網(wǎng)的安全性:不同VLAN內(nèi)的報文在傳輸時相互隔離,即一個VLAN內(nèi)的用戶不能和其它VLAN內(nèi)的用戶直接通信。
提高了網(wǎng)絡(luò)的健壯性:故障被限制在一個VLAN內(nèi),本VLAN內(nèi)的故障不會影響其他VLAN的正常工作。
靈活構(gòu)建虛擬工作組:用VLAN可以劃分不同的用戶到不同的工作組,同一工作組的用戶也不必局限于某一固定的物理范圍,網(wǎng)絡(luò)構(gòu)建和維護更方便靈活。
VLAN vs 子網(wǎng)
通過將IP地址的網(wǎng)絡(luò)部分進一步劃分為若干個子網(wǎng),可以解決IP地址空間利用率低和兩級IP地址不夠靈活的問題。
與VLAN相類似的是,子網(wǎng)也可以隔離主機間的通信。屬于不同VLAN的主機之間不能直接通信,屬于不同的子網(wǎng)的主機之間也不能直接通信。但二者沒有必然的對應(yīng)關(guān)系。
VLAN vs 子網(wǎng)
VLAN Tag和VLAN ID
要使交換機能夠分辨不同VLAN的報文,需要在報文中添加標識VLAN信息的字段。IEEE 802.1Q協(xié)議規(guī)定,在以太網(wǎng)數(shù)據(jù)幀中加入4個字節(jié)的VLAN標簽(又稱VLAN Tag,簡稱Tag),用以標識VLAN信息。
IEEE 802.1Q封裝的VLAN數(shù)據(jù)幀格式
數(shù)據(jù)幀中的VID字段標識了該數(shù)據(jù)幀所屬的VLAN,數(shù)據(jù)幀只能在其所屬VLAN內(nèi)進行傳輸。VID字段代表VLAN ID,VLAN ID取值范圍是0~4095。由于0和4095為協(xié)議保留取值,所以VLAN ID的有效取值范圍是1~4094。
交換機內(nèi)部處理的數(shù)據(jù)幀都帶有VLAN標簽。而交換機連接的部分設(shè)備(如用戶主機、服務(wù)器)只會收發(fā)不帶VLAN tag的傳統(tǒng)以太網(wǎng)數(shù)據(jù)幀。因此,要與這些設(shè)備交互,就需要交換機的接口能夠識別傳統(tǒng)以太網(wǎng)數(shù)據(jù)幀,并在收發(fā)時給幀添加、剝除VLAN標簽。添加什么VLAN標簽,由接口上的缺省VLAN(Port Default VLAN ID,PVID)決定。
VLAN的接口類型和VLAN標簽的處理機制
現(xiàn)網(wǎng)中屬于同一個VLAN的用戶可能會被連接在不同的交換機上,且跨越交換機的VLAN可能不止一個,如果需要用戶間的互通,就需要交換機間的接口能夠同時識別和發(fā)送多個VLAN的數(shù)據(jù)幀。根據(jù)接口連接對象以及對收發(fā)數(shù)據(jù)幀處理的不同,當前有VLAN的多種接口類型,以適應(yīng)不同的連接和組網(wǎng)。
不同廠商對VLAN接口類型的定義可能不同。對于華為設(shè)備來說,常見的VLAN接口類型有三種,包括:Access、Trunk和Hybrid。
Access接口
Access接口一般用于和不能識別Tag的用戶終端(如用戶主機、服務(wù)器)相連,或者不需要區(qū)分不同VLAN成員時使用。
在一個VLAN交換網(wǎng)絡(luò)中,以太網(wǎng)數(shù)據(jù)幀主要有以下兩種形式:無標記幀(Untagged幀):原始的、未加入4字節(jié)VLAN標簽的幀。有標記幀(Tagged幀):加入了4字節(jié)VLAN標簽的幀。Access接口大部分情況只能收發(fā)Untagged幀,且只能為Untagged幀添加唯一VLAN的Tag。交換機內(nèi)部只處理Tagged幀,所以Access接口需要給收到的數(shù)據(jù)幀添加VLAN Tag,也就必須配置缺省VLAN。配置缺省VLAN后,該Access接口也就加入了該VLAN。
當Access接口收到帶有Tag的幀,并且?guī)蠽ID與PVID相同時,Access接口也能接收并處理該幀。
在發(fā)送帶有Tag的幀前,Access接口會剝離Tag。
Trunk接口
Trunk接口一般用于連接交換機、路由器、AP以及可同時收發(fā)Tagged幀和Untagged幀的語音終端。它可以允許多個VLAN的幀帶Tag通過,但只允許屬于缺省VLAN的幀從該類接口上發(fā)出時不帶Tag(即剝除Tag)。
Trunk接口上的缺省VLAN,有的廠商也將它定義為native VLAN。當Trunk接口收到Untagged幀時,會為Untagged幀打上Native VLAN對應(yīng)的Tag。
Hybrid接口
Hybrid接口既可以用于連接不能識別Tag的用戶終端(如用戶主機、服務(wù)器)和網(wǎng)絡(luò)設(shè)備(如Hub),也可以用于連接交換機、路由器以及可同時收發(fā)Tagged幀和Untagged幀的語音終端、AP。它可以允許多個VLAN的幀帶Tag通過,且允許從該類接口發(fā)出的幀根據(jù)需要配置某些VLAN的幀帶Tag(即不剝除Tag)、某些VLAN的幀不帶Tag(即剝除Tag)。
Hybrid接口和Trunk接口在很多應(yīng)用場景下可以通用,但在某些應(yīng)用場景下,必須使用Hybrid接口。比如在靈活QinQ中,服務(wù)提供商網(wǎng)絡(luò)的多個VLAN的報文在進入用戶網(wǎng)絡(luò)前,需要剝離外層VLAN Tag,此時Trunk接口不能實現(xiàn)該功能,因為Trunk接口只能使該接口缺省VLAN的報文不帶VLAN Tag通過。
VLAN的使用場景 VLAN的常見使用場景包括:VLAN間用戶的二層隔離,VLAN間用戶的三層互訪。
VLAN間用戶的二層隔離
如下圖所示,某商務(wù)樓內(nèi)有多家公司,為了降低成本,多家公司共用網(wǎng)絡(luò)資源,各公司分別連接到一臺二層交換機的不同接口,并通過統(tǒng)一的出口訪問Internet。
基于接口的VLAN劃分組網(wǎng)圖
為了保證各公司業(yè)務(wù)的獨立和安全,可將每個公司所連接的接口劃分到不同的VLAN,實現(xiàn)公司間業(yè)務(wù)數(shù)據(jù)的完全隔離。可以認為每個公司擁有獨立的“虛擬路由器”,每個VLAN就是一個“虛擬工作組”。
再比如,某公司有兩個部門,分別分配了固定的IP網(wǎng)段。為加強員工間的學(xué)習(xí)與交流,員工的位置有時會相互調(diào)動,但公司希望各部門員工訪問的網(wǎng)絡(luò)資源的權(quán)限不變。
基于IP的VLAN劃分組網(wǎng)圖
為了保證部門內(nèi)員工的位置調(diào)整后,訪問網(wǎng)絡(luò)資源的權(quán)限不變,可在公司的交換機Switch_1上配置基于IP子網(wǎng)劃分VLAN。這樣,服務(wù)器的不同網(wǎng)段就劃分到不同的VLAN,訪問服務(wù)器不同應(yīng)用服務(wù)的數(shù)據(jù)流就會隔離,提高了安全性。
VLAN間用戶的三層互訪
如下圖所示,某小型公司的兩個部門分別通過二層交換機接入到一臺三層交換機Switch_3,所屬VLAN分別為VLAN2和VLAN3,部門1和部門2的用戶互通時,需要經(jīng)過三層交換機。
通過VLANIF實現(xiàn)VLAN間用戶的三層互訪
可在Switch_1和Switch_2上劃分VLAN并將VLAN透傳到Switch_3上,然后在Switch_3上為每個VLAN配置一個VLANIF接口,實現(xiàn)VLAN2和VLAN3間的路由。
VLAN的相關(guān)協(xié)議
IEEE 802.1Q
IEEE 802.1Q(也被稱為Dot1q)即Virtual Bridged Local Area Networks協(xié)議,規(guī)定了VLAN的實現(xiàn)標準。與標準的以太網(wǎng)數(shù)據(jù)幀相比,VLAN數(shù)據(jù)幀增加了1個4字節(jié)的VLAN標簽。
LNP
鏈路類型協(xié)商協(xié)議(Link-type Negotiation Protocol,LNP)用來動態(tài)協(xié)商以太網(wǎng)接口的鏈路類型為Access或者Trunk。
以太網(wǎng)接口的鏈路類型協(xié)商為Access,缺省情況下加入VLAN1。
以太網(wǎng)接口的鏈路類型協(xié)商為Trunk,缺省情況下加入VLAN1~4094。
QinQ
QinQ(802.1Q-in-802.1Q)協(xié)議出自IEEE 802.1ad標準協(xié)議,通過在802.1Q標簽報文的基礎(chǔ)上再增加一層802.1Q的Tag來達到擴展VLAN空間的功能,可以使私網(wǎng)VLAN透傳公網(wǎng)。
由于在骨干網(wǎng)中傳遞的報文有兩層802.1Q Tag(一層公網(wǎng)Tag,一層私網(wǎng)Tag),即802.1Q-in-802.1Q,所以稱之為QinQ協(xié)議。
云化場景下,VLAN存在的問題
隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,云計算憑借其在系統(tǒng)利用率高、人力和管理成本低、靈活性和可擴展性強等方面表現(xiàn)出的優(yōu)勢,已經(jīng)成為目前企業(yè)IT建設(shè)的新趨勢。而服務(wù)器虛擬化作為云計算的核心技術(shù)之一,得到了越來越多的應(yīng)用。
VLAN作為傳統(tǒng)的網(wǎng)絡(luò)隔離技術(shù),在標準定義中VLAN的數(shù)量只有4096個,無法滿足大型數(shù)據(jù)中心的租戶間隔離需求。另外,VLAN的二層范圍一般較小且固定,無法支持虛擬機大范圍的動態(tài)遷移。
因此,RFC定義了VLAN擴展方案VXLAN(Virtual eXtensible Local Area Network,虛擬擴展局域網(wǎng))。VXLAN采用MAC in UDP(User Datagram Protocol)封裝方式,是NVO3(Network Virtualization over Layer 3)中的一種網(wǎng)絡(luò)虛擬化技術(shù)。VXLAN完美地彌補了VLAN的上述不足,一方面通過VXLAN中的24比特VNI(VXLAN Network Identifier)字段,提供多達16M租戶的標識能力,遠大于VLAN的數(shù)量;另一方面,VXLAN本質(zhì)上在兩臺交換機之間構(gòu)建了一條穿越數(shù)據(jù)中心基礎(chǔ)IP網(wǎng)絡(luò)的虛擬隧道,將數(shù)據(jù)中心網(wǎng)絡(luò)虛擬成一個巨型“二層交換機”,滿足虛擬機大范圍動態(tài)遷移的需求
審核編輯:湯梓紅
評論
查看更多