802.1Q VLAN協(xié)議和802.1P協(xié)議的實現(xiàn)

相關專題: 芯片

本文主要介紹了802.1Q VLAN協(xié)議在以太網(wǎng)交換機中的實現(xiàn),以及802.1p協(xié)議的一些基本內容,有關這兩個協(xié)議實現(xiàn)的具體細節(jié),參考802.1Q和802.1p協(xié)議的相關資料。

一、802.1Q協(xié)議

802.1Q協(xié)議,即 Virtual Bridged Local Area Networks協(xié)議,主要規(guī)定了VLAN的實現(xiàn),下面我們首先講述一下有關VLAN的基本觀念。

Virtual LANs目前發(fā)展很快,世界上主要的大網(wǎng)絡廠商在他們的交換機設備中都實現(xiàn)了VLAN協(xié)議,顧名思義,VLAN就是虛擬局域網(wǎng),比如對于QuidwayS2403交換機來說,可以將它的24個10MB以太網(wǎng)口劃分為幾個組,比如協(xié)議組,ATM組,測試組等,這樣,組內的各個用戶就象在同一個局域網(wǎng)內(可能協(xié)議組的用戶位于很多的交換機上,而非一個交換機)一樣,同時,不是本組的用戶也無法訪問本組的成員。

實際上,VLAN成員的定義可以分為4種:

1、根據(jù)端口劃分VLAN

這種劃分VLAN的方法是根據(jù)以太網(wǎng)交換機的端口來劃分,比如S2403的1~4端口為VLAN A,5~17為VLAN B,18~24為VLAN C,當然,這些屬于同一VLAN的端口可以不連續(xù),如何配置,由管理員決定,如果有多個交換機的話,例如,可以指定交換機 1 的1~6端口和交換機 2 的1~4端口為同一VLAN,即同一VLAN可以跨越數(shù)個以太網(wǎng)交換機,根據(jù)端口劃分是目前定義VLAN的最常用的方法,IEEE 802.1Q協(xié)議規(guī)定的就是如何根據(jù)交換機的端口來劃分VLAN。這種劃分的方法的優(yōu)點是定義VLAN成員時非常簡單,只要將所有的端口都指定義一下就可以了。它的缺點是如果VLAN A的用戶離開了原來的端口,到了一個新的交換機的某個端口,那么就必須重新定義。

2、 根據(jù)MAC地址劃分VLAN

這種劃分VLAN的方法是根據(jù)每個主機的MAC地址來劃分,即對每個MAC地址的主機都配置他屬于哪個組。這種劃分VLAN的方法的最大優(yōu)點就是當用戶物理位置移動時,即從一個交換機換到其他的交換機時,VLAN不用重新配置,所以,可以認為這種根據(jù)MAC地址的劃分方法是基于用戶的VLAN,這種方法的缺點是初始化時,所有的用戶都必須進行配置,如果有幾百個甚至上千個用戶的話,配置是非常累的。而且這種劃分的方法也導致了交換機執(zhí)行效率的降低,因為在每一個交換機的端口都可能存在很多個VLAN組的成員,這樣就無法限制廣播包了。另外,對于使用筆記本電腦的用戶來說,他們的網(wǎng)卡可能經(jīng)常更換,這樣,VLAN就必須不停的配置。

3、根據(jù)網(wǎng)絡層劃分VLAN

這種劃分VLAN的方法是根據(jù)每個主機的網(wǎng)絡層地址或協(xié)議類型(如果支持多協(xié)議)劃分的,雖然這種劃分方法可能是根據(jù)網(wǎng)絡地址,比如IP地址,但它不是路由,不要與網(wǎng)絡層的路由混淆。它雖然查看每個數(shù)據(jù)包的IP地址,但由于不是路由,所以,沒有RIP,OSPF等路由協(xié)議,而是根據(jù)生成樹算法進行橋交換,

這種方法的優(yōu)點是用戶的物理位置改變了,不需要重新配置他所屬的VLAN,而且可以根據(jù)協(xié)議類型來劃分VLAN,這對網(wǎng)絡管理者來說很重要,還有,這種方法不需要附加的楨標簽來識別VLAN,這樣可以減少網(wǎng)絡的通信量。

這種方法的缺點是效率,因為檢查每一個數(shù)據(jù)包的網(wǎng)絡層地址是很費時的(相對于前面兩種方法),一般的交換機芯片都可以自動檢查網(wǎng)絡上數(shù)據(jù)包的以太網(wǎng)楨頭,但要讓芯片能檢查IP楨頭,需要更高的技術,同時也更費時。當然,這也跟各個廠商的實現(xiàn)方法有關。

4、IP組播作為VLAN

IP 組播實際上也是一種VLAN的定義,即認為一個組播組就是一個VLAN,這種劃分的方法將VLAN擴大到了廣域網(wǎng),因此這種方法具有更大的靈活性,而且也很容易通過路由器進行擴展,當然這種方法不適合局域網(wǎng),主要是效率不高,對于局域網(wǎng)的組播,有二層組播協(xié)議GMRP。

通過上面可以看出,各種不同的VLAN定義方法有各自的優(yōu)缺點,所以,很多廠商的交換機都實現(xiàn)了不只一種方法,這樣,網(wǎng)絡管理者可以根據(jù)自己的實際需要進行選擇,另外,許多廠商在實現(xiàn)VLAN的時候,考慮到VLAN配置的復雜性,還提供了一定程度的自動配置和方便的網(wǎng)絡管理工具。

以前,各個廠商都聲稱他們的交換機實現(xiàn)了VLAN,但各個廠商實現(xiàn)的方法都不相同,所以彼此是無法互連,這樣,用戶一旦買了某個廠商的交換機,就沒法買其他廠商的了。而現(xiàn)在,VLAN的標準是IEEE 提出的802.1Q協(xié)議,只有支持相同的開放標準才能保證網(wǎng)絡的互連互通,以及保護網(wǎng)絡設備投資。

下面講述一下VLAN的優(yōu)點:

1、 減少移動和改變的代價,即所說的動態(tài)管理網(wǎng)絡,也就是當一個用戶從一個位置移動到另一個位置是,他的網(wǎng)絡屬性不需要重新配置,而是動態(tài)的完成,這種動態(tài)管理網(wǎng)絡給網(wǎng)絡管理者和使用者都帶來了極大的好處,一個用戶,無論他到哪里,他都能不做任何修改地接入網(wǎng)絡,這種前景是非常美好的。 當然,并不是所有的VLAN定義方法都能做到這一點。

2、虛擬工作組,VLAN的最具雄心的目標就是建立虛擬工作組模型,例如,在校園網(wǎng)中,同一個系的就好象在同一個LAN上一樣,很容易的互相訪問,交流信息,同時,所有的廣播包也都限制在該虛擬LAN上,而不影響其他VLAN的人,一個人如果從一個辦公地點換到另外一個地點,而他仍然在該系,那么,他的配置無須改變,同時,如果一個人雖然辦公地點沒有變,但他換了一個系,那么,只需網(wǎng)絡管理者那配置一下就行了。這個功能的目標就是建立一個動態(tài)的組織環(huán)境,當然,這只是一個遠大的目標,要實現(xiàn)它,還需要一些其他包括管理等方面的支持。

3、限制廣播包,按照802.1D透明網(wǎng)橋的算法,如果一個數(shù)據(jù)包找不到路由,那么交換機就會將該數(shù)據(jù)包向所有的其他端口發(fā)送,這就是橋的廣播方式的轉發(fā),這樣的結果,毫無疑問極大的浪費了帶寬,如果配置了VLAN,那么,當一個數(shù)據(jù)包沒有路由時,交換機只會將此數(shù)據(jù)包發(fā)送到所有屬于該VLAN的其他端口,而不是所有的交換機的端口,這樣,就將數(shù)據(jù)包限制到了一個VLAN內。在一定程度上可以節(jié)省帶寬。

4、安全性,由于配置了VLAN后,一個VLAN的數(shù)據(jù)包不會發(fā)送到另一個VLAN,這樣,其他VLAN的用戶的網(wǎng)絡上是收不到任何該VLAN的數(shù)據(jù)包,從而就確保了該VLAN的信息不會被其他VLAN的人竊聽,從而實現(xiàn)了信息的保密。

理論上,VLAN可以擴展到WAN上,但是,這是不明智的做法,因為VLAN允許廣播包發(fā)送出去,而且它沒有很好的路由算法,經(jīng)常是以廣播的形式轉發(fā)數(shù)據(jù)包,這樣,毫無疑問,極大地浪費了WAN的寶貴的帶寬,所以說,將基于端口的,MAC地址和網(wǎng)絡地址的VLAN擴展到WAN,是不合理的,而基于多播的VLAN概念則可以靈活有效的擴展到WAN。一般的以太網(wǎng)交換機實現(xiàn)的都是基于端口的VLAN,個別的會實現(xiàn)基于MAC地址和網(wǎng)絡層地址的VLAN,而路由器中可以通過IGMP多播協(xié)議實現(xiàn)所謂的組播形式的VLAN 。

802.1Q協(xié)議定義了基于端口的VLAN模型,這是使用得最多的一種方式。下面我們重點講述一下交換機芯片是如何實現(xiàn)VLAN的,如果想了解更細節(jié)的內容,可以參考802.1Q協(xié)議,由于協(xié)議文本講的非常抽象,所以,我們以TI公司的交換芯片為例來講述,更便于理解。例子中的TNETX4090提供了8個100MB以太網(wǎng)口和1個1GB以太網(wǎng)口。

每一個支持802.1Q協(xié)議的主機,在發(fā)送數(shù)據(jù)包時,都在原來的以太網(wǎng)楨頭中的源地址后增加了一個4字節(jié)的802.1Q楨頭,之后接原來以太網(wǎng)的長度或類型域,關于以太網(wǎng)楨頭的封裝格式,參見以太網(wǎng)方面的培訓教材。

這4個字節(jié)的802.1Q標簽頭包含了2個字節(jié)的標簽協(xié)議標識(TPID--Tag Protocol Identifier,它的值是8100),和兩個字節(jié)的標簽控制信息(TCI--Tag Control Information),TPID是IEEE定義的新的類型,表明這是一個加了802.1Q標簽的本文,

VLAN Identified( VLAN ID ): 這是一個12位的域,指明VLAN的ID,一共4096個,每個支持802.1Q協(xié)議的主機發(fā)送出來的數(shù)據(jù)包都會包含這個域,以指明自己屬于哪一個VLAN,目前TNETX 3270只支持32個VLAN。

Canonical Format Indicator( cfi ):這一位主要用于總線型的以太網(wǎng)與FDDI、令牌環(huán)網(wǎng)交換數(shù)據(jù)時的楨格式,TNETX 3270忽略此位。

Priority:這3 位指明楨的優(yōu)先級。一共有8種優(yōu)先級,主要用于當交換機阻塞時,優(yōu)先發(fā)送哪個數(shù)據(jù)包。TNETX 3270和TNETX 4090只支持一種優(yōu)先級,所以這一位也沒有用,

不難看出,802.1Q標簽頭的4 個字節(jié)是新增加的,目前我們使用的計算機并不支持802.1Q,即我們計算機發(fā)送出去的數(shù)據(jù)包的以太網(wǎng)楨頭還不包含這4個字節(jié),同時也無法識別這4個字節(jié),將來會有軟件和硬件支持802.1Q協(xié)議的。 對于交換機來說,如果它所連接的以太網(wǎng)段的所有主機都能識別和發(fā)送這種帶802.1Q標簽頭的數(shù)據(jù)包,那么我們把這種端口稱為Tag Aware 端口;相反,如果該交換機端口說連接的以太網(wǎng)段有只要有一臺主機不支持這種以太網(wǎng)楨頭,那么交換機的這個端口我們稱為Access端口,從目前的情況可以看出,所有的交換機的端口都屬于后一種。

那么,在現(xiàn)在的情況下,交換機是如何支持VLAN的呢?是這樣的,比如交換機的1~4端口屬于同一個VLAN,那么當 1 端口進來一個數(shù)據(jù)包是,交換機看到該數(shù)據(jù)包沒有802.1Q標簽頭,那么,它會根據(jù)1號端口所屬的VLAN組,自動給該數(shù)據(jù)包添加一個該VLAN的標簽頭,然后再將數(shù)據(jù)包交給數(shù)據(jù)庫查詢模塊,數(shù)據(jù)庫查詢模塊會根據(jù)數(shù)據(jù)包的目的地址和所屬的VLAN進行路由,之后交給轉發(fā)模塊,轉發(fā)模塊看到這是一個包含標簽頭的數(shù)據(jù)包,而實際上發(fā)送的端口所連的以太網(wǎng)段的計算機不能識別這種數(shù)據(jù)包,所以,它會再將數(shù)據(jù)包進來是交換機給添加的標簽頭再去掉。如果計算機支持這種標簽頭,那么就不需要交換機添加或刪除標簽頭了,至于到底是添加還是刪除要看交換機所連的以太網(wǎng)段的主機是否識別這種數(shù)據(jù)包,即該交換機的端口是哪種類型的端口。當然,對于兩個交換機互連的端口一般都是Tag Aware端口,這樣,交換機和交換機之間交換數(shù)據(jù)包時是無須去掉標簽頭的。

處理流程包括3個步驟:

1、接收過程:該過程負責接收數(shù)據(jù)包,數(shù)據(jù)包可以是帶標簽頭的,也可以不帶標簽頭,如果不帶,交換機會知道根據(jù)該端口所屬的VLAN添加上相應的標簽頭。

2、查找/路由過程:該過程根據(jù)數(shù)據(jù)包的目的MAC地址、VLAN 標識已經(jīng)數(shù)據(jù)庫中注冊的信息決定把數(shù)據(jù)包發(fā)送到哪個端口。

3、發(fā)送過程:將數(shù)據(jù)包發(fā)送到以太網(wǎng)段上,如果該網(wǎng)段的主機不能識別802.1Q標簽頭,那么就將該標簽頭去掉,如果是與其他交換機互連的端口,一般不去掉。

具體的接收、查詢和發(fā)送過程可以參考TNETX 3270的相關資料,下面是一個無標簽頭的數(shù)據(jù)包的接收到發(fā)送的過程。其中具體的路由過程參考TNETX 3270資料。

假如Chris 發(fā)送一個數(shù)據(jù)包給Jackie,那么,處理的過程如下:

1、Chris 發(fā)送一個數(shù)據(jù)包給Jackie。

2、數(shù)據(jù)包到達交換機1的端口9,這是一個無標簽頭的包,所以交換機1 給該數(shù)據(jù)包添加一個VLAN ID。

3、根據(jù)目的MAC地址和VLAN ID,查詢數(shù)據(jù)庫,知道該數(shù)據(jù)包需要發(fā)送到24(或25、26號端口,這3 個端口被捆綁到一起,對上層來說,這3 個端口就好象一個端口,實際上交換機會根據(jù)3 個端口的流量來決定是從哪個端口往外發(fā)送)。如果不知道,則該數(shù)據(jù)包還會被發(fā)送到端口6,當然,在發(fā)送到端口6 的以太網(wǎng)段時,會先將標簽頭去掉,Altaf收到后會丟棄這個數(shù)據(jù)包,因為目的地址不是它。由于端口24是Tag Aware端口,所以,發(fā)送到24 好端口的數(shù)據(jù)包的標簽頭不去掉。

4、TNETX 4090交換機收到這個數(shù)據(jù)包后,根據(jù)VLANID和目的MAC 地址在它的數(shù)據(jù)庫中查找路由,最后,它知道該數(shù)據(jù)包應該發(fā)送到端口4(5或6),標簽頭仍然不去掉。

5、交換機2收到后,根據(jù)VLAN ID和目的MAC地址,在它的數(shù)據(jù)庫中查找路由,知道該數(shù)據(jù)包需要發(fā)送到端口2。于是將該數(shù)據(jù)包發(fā)送出去。注意,發(fā)送出去的數(shù)據(jù)包需要去掉標簽頭。

以上我們討論了VLAN收發(fā)數(shù)據(jù)包的過程,它的具體實現(xiàn)已經(jīng)由以太網(wǎng)交換機的交換芯片實現(xiàn)了,有興趣者可參考交換芯片的技術資料。

二、802.1P協(xié)議

802.1p協(xié)議定義了優(yōu)先級的概念,對于那些實時性要求很高的數(shù)據(jù)包,主機在發(fā)送時就在前面提到MAC楨頭增加的3位優(yōu)先級中指明該數(shù)據(jù)包優(yōu)先級高,這樣,當以太網(wǎng)交換機數(shù)據(jù)流量比較多時,它就會考慮優(yōu)先轉發(fā)這些優(yōu)先級高的數(shù)據(jù)包。

目前部分以太網(wǎng)交換機所采用的交換芯片只支持2種優(yōu)先級,也有一些能支持4個優(yōu)先級。

802.1p協(xié)議還定義了GARP--Generic Attribute Registration Protocol。這里的Attribute是指組播MAC地址、端口過濾模式和VLAN等屬性,GARP協(xié)議實際上可以定義很多交換機應該具有的特性,目前,它定義了GMRP--GARP Multicast Registration Protocol和GVRP--GARP VLAN Registration Protocol兩個協(xié)議,以后會根據(jù)網(wǎng)絡發(fā)展的需要定義其他的特性。GARP定義了以太網(wǎng)交換機之間交換這些特性信息的方法,如何發(fā)送數(shù)據(jù)包,接收的數(shù)據(jù)包如何處理等等。

GMRP協(xié)議是一個動態(tài)二層組播注冊協(xié)議,它的很多方面跟IGMP(三層組播協(xié)議)類似,對于IP地址來說,D類IP地址是組播地址,實際上,對于每一個IP組播地址,都有一個組播MAC地址跟它對應,802.1p協(xié)議就是根據(jù)組播MAC地址來在以太網(wǎng)交換機上注冊和取消組播成員身份的,而IGMP是根據(jù)組播IP來管理的。當然,如果以太網(wǎng)交換機沒有實現(xiàn)GMRP協(xié)議,那么就只能通過靜態(tài)配置來實現(xiàn)組播了。

關于為什么需要二層組播協(xié)議?我們在詳細討論一下。與協(xié)議IGMP一樣,如果我們在自己的局域網(wǎng)內成立一個組播組,可能我們的局域網(wǎng)包含了很多交換機,如果這些交換機沒有實現(xiàn)二層組播協(xié)議的話,那么,某個組員給其他組員發(fā)送數(shù)據(jù)包時,交換機就會將該數(shù)據(jù)包向所有的端口廣播,因為交換機不知道哪個端口有人加入了該組播組,唯一的解決辦法就是管理員配置交換機,這樣,才能將這種廣播轉發(fā)數(shù)據(jù)包的發(fā)送方式限制住,而組播本身是動態(tài)的,所以,通過這種靠管理員的配置來實現(xiàn)組播的方式是不現(xiàn)實的。因此,就需要有一個二層組播協(xié)議來動態(tài)管理組員。這就是為什么需要二層組播協(xié)議的原因,目前,許多高檔的交換機都把實現(xiàn)802.1p和802.1Q協(xié)議作為一個主要的性能指標。

GVRP是VLAN協(xié)議,由于它與GMRP都是基于GARP之上的,所以它們之間的關系很緊密,它們都要對交換機的數(shù)據(jù)庫進行操作,這個協(xié)議的具體定義在802.1Q中。
 

   來源:51cto.com
微信掃描分享本文到朋友圈
掃碼關注5G通信官方公眾號,免費領取以下5G精品資料
  • 1、回復“YD5GAI”免費領取《中國移動:5G網(wǎng)絡AI應用典型場景技術解決方案白皮書
  • 2、回復“5G6G”免費領取《5G_6G毫米波測試技術白皮書-2022_03-21
  • 3、回復“YD6G”免費領取《中國移動:6G至簡無線接入網(wǎng)白皮書
  • 4、回復“LTBPS”免費領取《《中國聯(lián)通5G終端白皮書》
  • 5、回復“ZGDX”免費領取《中國電信5GNTN技術白皮書
  • 6、回復“TXSB”免費領取《通信設備安裝工程施工工藝圖解
  • 7、回復“YDSL”免費領取《中國移動算力并網(wǎng)白皮書
  • 8、回復“5GX3”免費領取《R1623501-g605G的系統(tǒng)架構1
  • 本周熱點本月熱點

     

      最熱通信招聘

      最新招聘信息