qinq
qinq
QinQ技術〔也稱Stacked VLAN 或Double VLAN〕。標準出自IEEE 802.1ad,其實現將用戶私網VLAN Tag封裝在公網VLAN Tag中,使報文帶著兩層VLAN Tag穿越運營商的骨幹網路(公網)。
QinQ技術通過在以太幀中堆疊兩個802.1Q報頭,有效地擴展了VLAN數目,使VLAN的數目最多可達4094x4094個。同時,多個VLAN能夠被複用到一個核心VLAN中。MSP通常為每個客戶建立一個VLAN模型,用通用屬性註冊協議/通用VLAN註冊協議(GARP/GVRP)自動監控整個主幹網路的VLAN,並通過擴展生成樹協議(STP)來加快網路收斂速度,從而為網路提供彈性。SVLAN技術作為初始的解決方案是不錯的,但隨著用戶數量的增加,SVLAN模型也會帶來可擴展性的問題。因為有些用戶可能希望在分支機構間進行數據傳輸時可以攜帶自己的VLAN ID,這就使採用QinQ技術的MSP面臨以下兩個問題:第一,第一名客戶的VLAN標識可能與其他客戶衝突;第二,服務提供商將受到客戶可使用標識數量的嚴重限制。如果允許用戶按他們自己的方式使用各自的VLAN ID空間,那麼核心網路仍存在4096個VLAN的限制。
1、解決日益緊缺的公網VLAN ID資源問題
4096個VLAN不能滿足大規模網路的需求,運營商需要根據VLAN ID對接入用戶進行區分。
2、二層VPN技術能夠透傳用戶的VLAN信息
二層VPN技術能夠透傳用戶的VLAN信息及乙太網配置信息
QinQ技術能夠解決日益緊缺的VLAN ID資源問題為小型城域網或企業網提供一種較為簡單的二層VPN解決方案。
802.1Q中定義的Tag域只有12個比特用於表示VLAN ID,所以設備最多可以支持4094個VLAN。而在實際應用中,尤其是在城域網中,需要大量的VLAN來隔離用戶,4094個VLAN遠遠不能滿足需求。因此誕生了QinQ技術。
在運營商網路中,報文只根據外層VLAN Tag(即運營商網路的VLAN Tag)傳播,當用戶報文離開運營商網路時,剝去運營商網路的VLAN Tag,報文在用戶網路中,根據私網VLAN Tag傳播。
QinQ報文有固定的格式,就是在802.1Q的標籤之上再打一層802.1Q標籤,QinQ報文比正常的802.1Q報文多4個位元組。這4個位元組用作外層標籤,即運營商網路的公網VLAN Tag。原802.1Q的Tag用作內層標籤,即私網VLAN Tag。
QinQin 雙標籤幀格式
在QinQ封裝中,各個設備廠商的內層TPID(Tag Protocol Identifier,標籤協議標識)(即內層Etype)的取值為0x8100,但是對於外層TPID(即外層EType)的取值,各個廠商所使用的值可以是不相同的。
QinQ技術使得運營商可以用一個VLAN為含有多個VLAN的用戶網路服務。用戶網路A的私網VLAN為VLAN 1~10,用戶網路B的私網VLAN為VLAN 1~20。運營商為用戶網路A分配的VLAN為VLAN 3,為用戶網路B分配的VLAN為VLAN 4。當用戶網路A的帶VLAN Tag的報文進入運營商網路時,報文外面會被封裝上一層VLAN ID為 3的VLAN Tag;當用戶網路B的帶VLAN Tag的報文進入運營商網路時,報文外面會被封裝上一層VLAN ID為 4的VLAN Tag。這樣,不同用戶網路的報文在公網傳輸時被完全分開,即使兩個用戶網路的VLAN範圍存在重疊,在公網傳輸時也不會產生混淆。
QinQ技術分為基本QinQ和靈活QinQ兩種。
• 基本QinQ
基於埠方式實現。開啟埠的基本 QinQ功能后,當該埠接收到報文,設備會為該報文打上本埠預設 VLAN的 VLAN Tag。如果接收到的是已經帶有 VLAN Tag的報文,該報文就成為雙 Tag的報文;如果接收到的是不帶 VLAN Tag的報文,該報文就成為帶有埠預設 VLAN Tag的報文。
• 靈活QinQ
靈活 QinQ 是對 QinQ 的一種更靈活的實現,它是基於埠與 VLAN 相結合的方式實現的,可以實現以下功能:
• 為具有不同內層 VLAN ID的報文添加不同的外層 VLAN Tag。
• 指定外層標籤的User Priority
指定外層標籤的TPID(即外層EType)
QinQ也稱Stacked VLAN 或Double VLAN。標準出自IEEE802.1ad,當前該標準仍處於草案階段。其實現為在802.1q協議標籤前再次封裝802.1q協議 標籤,其中一層標識用戶系統網路(customer network),一層標識網路運營網路(service provider network),將其擴展實現用戶線路標識。當前部分交換機可以支持QinQ功能。QinQ 允許運營商為每個用戶分配最大到4K的第二個VLAN ID。運營商VLAN標記在IPDSLAM網路側插入,在用戶側刪除。BAS通過識別用戶的第二個VLAN確定用戶線路標識。QinQ也較好地解決了VLAN(最大4k)數量不足問題。
在802.1Q中規定TPID(Tag Protocol Identifier)的EType的值為0x8100。在QinQ封裝中,各個設備廠商的內層TPID的EType的值為0x8100,但是對於外層TPID的EType,各個廠商所使用的值不相同。
在IEEE 802.1ad中規定外層TPID的 EType欄位的定義為0x88a8。
QinQ
相對基於MPLS的二層VPN,QinQ具有如下特點:1.為用戶提供了一種更為簡單的二層VPN隧道;2.不需要信令協議的支持,可以通過純靜態配置實現;3.由於QinQ的實現是基於802.1Q協議中的Trunk埠概念,要求隧道上的設備都必須支持802.1Q協議。4.QinQ主要可以解決如下幾個問題:1.緩解日益緊缺的公網VLAN ID資源問題;2.用戶可以規劃自己的私網VLAN ID,不會導致和公網VLAN ID衝突;3.為小型城域網或企業網提供一種較為簡單的二層VPN解決方案
1. 沒有協議交互過程,不需要任何配置;
2. 與業務不關聯,對DSLAM無影響;
3. 擴展了4k VLAN;
4. 二層VLAN統一規劃,同時要求運營商二層網路必須支持二層VLAN tag,對設備要求比較高。
5. 報文有效載荷降低,同時造成可能分片、重組;
6. 協議擴展性不強,不支持用戶其他控制屬性。
QinQ功能應用場景:
應用場合:Internet 業務、VOD/VoIP、大客戶接入及VPN、FMC全業務。
設備提供的埠QinQ特性是一種簡單、靈活的二層VPN技術,它通過在運營商網路邊緣設備上為用戶的私網報文封裝外層VLANTag,使報文攜帶兩層VLANTag穿越運營商的骨幹網路。
在公網中,設備只根據外層VLAN Tag對報文進行轉發,並將報文的源MAC地址表項學習到外層Tag所在VLAN的MAC地址表中,而用戶的私網VLANTag在傳輸過程中將被當做報文中的數據部分來進行傳輸。QinQ使得運營商可以用一個VLAN為含有多個VLAN的用戶網路服務。舉例來說,用戶網路A的私網VLAN為VLAN1~10,用戶網路B的私網為VLAN1~20。運營商為用戶網路A分配的VLAN為VLAN3,為用戶網路B分配的VLAN為VLAN 4。當用戶網路A的帶VLAN Tag的報文進入運營商網路時,報文外面會被封裝上一層VLAN ID為3的VLAN Tag;當用戶網路B的帶VLAN Tag的報文進入運營商網路時,報文外面會被封裝上一層VLAN ID為4的VLAN Tag。這樣,不同用戶網路的報文在公網傳輸時被完全分開,即使兩個用戶網路的VLAN範圍存在重疊,在公網傳輸時也不會產生混淆。
1、QinQ可以簡單認為是報文攜帶了兩層802.1Q Tag。
2、QinQ技術的出現讓運營商可以以較低成本為客戶提供二層VPN。QinQ完全在運營商網路上實施,用戶對QinQ不感知。
3、在運營商網路中的報文,內層Tag為客戶私有VLAN標識,外層Tag為運營商分配給客戶的VLAN。客戶可以獨立規劃自己的VLAN ID,運營商網路的變化不影響客戶網路。
4、QinQ不需要單獨的信令協議,只需要靜態配置,簡潔穩定。
5、QinQ擴展了VLAN資源,為運營商按VLAN區分接入用戶提供了可能。
QinQ實現方式一種是基於埠的QinQ,一種是基於流分類的靈活QinQ。基於埠的QinQ的實現機理如下:當該設備埠接收到報文,無論報文是否帶有VLAN Tag,交換機都會為該報文打上本埠預設VLAN的VLAN Tag。這樣,如果接收到的是已經帶有VLAN Tag的報文,該報文就成為雙Tag的報文;如果接收到的是untagged的報文,該報文就成為帶有埠預設VLAN Tag的報文。由於基於埠的QinQ比較容易實現,所以業界主流廠家的三層交換機都支持。基於埠的QinQ的缺點是外層Vlan Tag封裝方式死板,不能根據業務種類選擇外層Vlan Tag封裝的方式,從而很難有效支持多業務的靈活運營。基於流分類的靈活QinQ實現機理如下:基於流的QinQ特性(Selective QinQ),可靈活根據流分類的結果選擇是否打外層VLAN tag、打上何種外層VLAN tag:如根據用戶Vlan tag、MAC地址、IP協議、源地址、目的地址、優先順序、或應用程序的埠號等信息實施靈活QinQ特性。藉助上述流分類方法,實際實現了根據不同用戶、不同業務、不同優先順序等對報文進行外層VLAN tag封裝,對多種業務實施不同承載的方案。