專利名稱:網(wǎng)絡(luò)交換器用以處理虛擬局域網(wǎng)的包的方法
技術(shù)領(lǐng)域:
本發(fā)明有關(guān)于網(wǎng)絡(luò)通信,特別是有關(guān)于網(wǎng)絡(luò)交換器。
背景技術(shù):
虛擬局域網(wǎng)(Virtual Local Area Network,VLAN)為一邏輯上而非實(shí)體上獨(dú)立的網(wǎng)絡(luò)。數(shù)個(gè)虛擬局域網(wǎng)可同時(shí)在一實(shí)體網(wǎng)絡(luò)交換器上共存。IEEE802.1Q為規(guī)范虛擬局域網(wǎng)的通信協(xié)定。
早期的虛擬網(wǎng)絡(luò)經(jīng)常被用來減低單一大型網(wǎng)段的大小,以縮小碰撞領(lǐng)域(collision domain)而增進(jìn)效能。當(dāng)以太網(wǎng)絡(luò)交換器解決這一問題時(shí),虛擬網(wǎng)絡(luò)被用來縮小媒體存取控制層(media access control layer,MAC layer)的廣播區(qū)域(broadcast domain)。虛擬網(wǎng)絡(luò)的其他應(yīng)用在于限制無關(guān)于實(shí)體網(wǎng)絡(luò)配置的網(wǎng)絡(luò)資源的存取,雖然此一功能的效果有所爭議。
圖1表示IEEE 802.1Q標(biāo)準(zhǔn)的包(packet)格式100。欄位102、104分別為包的目的MAC地址與來源MAC地址。IEEE 802.11Q則將一4字節(jié)的虛擬網(wǎng)絡(luò)標(biāo)簽首標(biāo)106加到原本的以太網(wǎng)絡(luò)首標(biāo)中。以太種類欄位108的值被改為8011H,以表示此為新包格式。虛擬網(wǎng)絡(luò)標(biāo)簽首標(biāo)106則包含下列欄位優(yōu)先權(quán)欄位110、標(biāo)準(zhǔn)格式指示欄位(canonical format indicator,CFI)112、以及虛擬網(wǎng)絡(luò)識(shí)別欄位(VLAN identifier,VID)114。優(yōu)先權(quán)欄位110長3比特,用來儲(chǔ)存包的優(yōu)先順序。CFI欄位112長1比特,用來表示是否MAC地址是以標(biāo)準(zhǔn)格式表示。VID欄位11412比特,可儲(chǔ)存高達(dá)4096個(gè)VLAN的識(shí)別碼。
VLAN標(biāo)簽106的VID欄位114對于網(wǎng)際網(wǎng)絡(luò)服務(wù)提供者(InternetService Provider,ISP)有很大的用處。ISP的網(wǎng)絡(luò)所包含的交換器經(jīng)常運(yùn)用包的VID作為決定該轉(zhuǎn)送包至哪一個(gè)輸出端口的依據(jù)。一般而言,一個(gè)ISP的網(wǎng)絡(luò)可支援4096個(gè)VID,該數(shù)目被稱為VID空間(VID space),即最多可支援的VID的數(shù)目。然而,若同時(shí)有兩個(gè)以上的具有相同VID的網(wǎng)段或?qū)嶓w網(wǎng)絡(luò)經(jīng)由一網(wǎng)絡(luò)交換器連接到ISP網(wǎng)絡(luò),則網(wǎng)絡(luò)交換器將無法區(qū)分這些具有相同VID的網(wǎng)段或?qū)嶓w網(wǎng)絡(luò),而當(dāng)收到應(yīng)該轉(zhuǎn)送至這些網(wǎng)段或?qū)嶓w網(wǎng)絡(luò)的包時(shí),網(wǎng)絡(luò)交換器便會(huì)發(fā)生問題。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的在于提供一種網(wǎng)絡(luò)交換器(network switch)用以處理虛擬局域網(wǎng)(virtual local area network,VLAN)的包的方法,以解決習(xí)知技術(shù)存在的問題。該虛擬局域網(wǎng)包括多個(gè)實(shí)體局域網(wǎng)(physical localarea network)并被分割為多個(gè)子網(wǎng)絡(luò)(subnet)。首先,經(jīng)由該網(wǎng)絡(luò)交換器的一輸入端口接收一包,該包屬于該虛擬局域網(wǎng)的第一子網(wǎng)絡(luò),并被附加該虛擬局域網(wǎng)的虛擬局域網(wǎng)標(biāo)識(shí)碼(VLAN identifier),其中該第一子網(wǎng)絡(luò)為該虛擬局域網(wǎng)的該多個(gè)子網(wǎng)絡(luò)其中之一。接著,讀取該包的虛擬局域網(wǎng)標(biāo)識(shí)碼。接著依據(jù)該包的該虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼決定該虛擬網(wǎng)絡(luò)的相關(guān)端口群(VLANmember ports),其中該虛擬網(wǎng)絡(luò)的相關(guān)端口群表示該網(wǎng)絡(luò)交換器中專門用以處理該虛擬網(wǎng)絡(luò)的包的所有端口組成的群組。接著依據(jù)該包的該輸入端口決定該包的遞送域(forwarding scope),其中該遞送域表示該網(wǎng)絡(luò)交換器專門用以處理該第一子網(wǎng)絡(luò)的包的所有端口組成的群組,而該輸入端口為該遞送域所包含的端口群組其中之一端口。最后,依據(jù)該虛擬網(wǎng)絡(luò)的相關(guān)端口群以及該包的遞送域決定該包的輸出端口。
本發(fā)明還提供一種網(wǎng)絡(luò)交換器,用以處理一虛擬局域網(wǎng)的包,其中該虛擬局域網(wǎng)包括多個(gè)實(shí)體局域網(wǎng)并被分割為多個(gè)子網(wǎng)絡(luò)。該網(wǎng)絡(luò)交換器包括多個(gè)端口,用以接收并發(fā)送于該虛擬局域網(wǎng)中所交換的一包,該包屬于該虛擬局域網(wǎng)的第一子網(wǎng)絡(luò),并被附加該虛擬局域網(wǎng)的虛擬局域網(wǎng)標(biāo)識(shí)碼(VLANidentifier),其中該第一子網(wǎng)絡(luò)為該虛擬局域網(wǎng)的該多個(gè)子網(wǎng)絡(luò)其中之一。該網(wǎng)絡(luò)交換器更包括一核心模塊,耦接至該多個(gè)端口,用以依據(jù)該包的該虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼決定該虛擬網(wǎng)絡(luò)的相關(guān)端口群(VLAN member ports),依據(jù)該包的輸入端口決定該包的遞送域(forwarding scope),依據(jù)該虛擬網(wǎng)絡(luò)的相關(guān)端口群以及該包的遞送域決定該包的輸出端口,以及將該包轉(zhuǎn)送至該輸出端口以導(dǎo)引該包朝向其目的地址前進(jìn)。其中該虛擬網(wǎng)絡(luò)的相關(guān)端口群表示該網(wǎng)絡(luò)交換器中專門用以處理該虛擬網(wǎng)絡(luò)的包的所有端口組成的群組,該遞送域表示該網(wǎng)絡(luò)交換器專門用以處理該第一子網(wǎng)絡(luò)的包的所有端口組成的群組,而該輸入端口為該遞送域所包含的端口群組其中之一端口。
為了讓本發(fā)明的上述和其他目的、特征、和優(yōu)點(diǎn)能更明顯易懂,下文特舉數(shù)較佳實(shí)施例,并配合附圖,詳細(xì)說明如下
圖1表示IEEE 802.1Q標(biāo)準(zhǔn)的包格式;圖2表示連接兩局域網(wǎng)的網(wǎng)絡(luò)系統(tǒng),其中該兩局域網(wǎng)同屬于一虛擬局域網(wǎng);圖3為圖2中的網(wǎng)絡(luò)交換器決定同一虛擬網(wǎng)絡(luò)的兩局域網(wǎng)間交換的包的輸出端口的方法,其中該網(wǎng)絡(luò)交換器僅支援單一虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼空間;圖4表示連接四局域網(wǎng)的網(wǎng)絡(luò)系統(tǒng),其中該四局域網(wǎng)同屬于一虛擬局域網(wǎng);圖5表示依據(jù)本發(fā)明連接四局域網(wǎng)的網(wǎng)絡(luò)系統(tǒng),其中該四局域網(wǎng)同屬于一虛擬局域網(wǎng);以及圖6為依據(jù)本發(fā)明的網(wǎng)絡(luò)交換器決定同一虛擬網(wǎng)絡(luò)的四個(gè)局域網(wǎng)間交換的包的輸出端口的方法,其中該網(wǎng)絡(luò)交換器支援多個(gè)虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼空間。
主要元件符號說明202、204、206、208-局域網(wǎng);212、214、216-服務(wù)商網(wǎng)絡(luò)(provider network);210-服務(wù)商主干網(wǎng)絡(luò)(backbone provider network);232、234、236-邊緣網(wǎng)絡(luò)交換器(boundary switch);220、222、520-網(wǎng)絡(luò)交換器。
具體實(shí)施例方式
圖2表示連接兩局域網(wǎng)(Local Area Network,LAN)202與204的網(wǎng)絡(luò)系統(tǒng)200,其中該兩局域網(wǎng)202與204同屬于一虛擬局域網(wǎng)但相隔兩地。LAN 202、204為一局域網(wǎng)或一網(wǎng)段(LAN segment)。由于局域網(wǎng)202與204同屬于一虛擬局域網(wǎng),因此來自局域網(wǎng)202與204的包具有同一虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼(VID)。由于局域網(wǎng)202與204相隔兩地,局域網(wǎng)202與204首先必須各自連接至當(dāng)?shù)氐姆?wù)商網(wǎng)絡(luò)(provider network)212、214,以便進(jìn)一步連接至服務(wù)商主干網(wǎng)絡(luò)(backbone provider network)210,以實(shí)現(xiàn)局域網(wǎng)202與204間的包交換。
舉例來說,局域網(wǎng)202可為某公司位在A城市的研究部門的網(wǎng)絡(luò),而局域網(wǎng)204可為該公司位在B城市的另一研究部門的網(wǎng)絡(luò)。當(dāng)?shù)氐姆?wù)商網(wǎng)絡(luò)212為ISP在A城市的網(wǎng)絡(luò),并將局域網(wǎng)202連接至服務(wù)商主干網(wǎng)絡(luò)210。當(dāng)?shù)氐姆?wù)商網(wǎng)絡(luò)214為ISP在B城市的網(wǎng)絡(luò),并將局域網(wǎng)204連接至服務(wù)商主干網(wǎng)絡(luò)210。于是,位于A城市的研究部門的局域網(wǎng)202可以與位于B城市的研究部門的局域網(wǎng)204相連,以實(shí)現(xiàn)該公司的虛擬局域網(wǎng)。
假設(shè)該公司的虛擬局域網(wǎng)標(biāo)識(shí)碼為4000。若局域網(wǎng)202欲發(fā)送一包至局域網(wǎng)204,包首先被加上一VLAN標(biāo)簽,該VLAN標(biāo)簽中包含了VLAN標(biāo)識(shí)碼4000??捎删钟蚓W(wǎng)202于包遞送至服務(wù)商網(wǎng)絡(luò)212前為包加上VLAN標(biāo)簽。然而,由于有大量的不同虛擬局域網(wǎng)連接至服務(wù)商主干網(wǎng)絡(luò)210,12位的虛擬局域網(wǎng)標(biāo)識(shí)碼無法容納如此多的虛擬局域網(wǎng)。因此,當(dāng)包被服務(wù)商網(wǎng)絡(luò)212傳遞至服務(wù)商主干網(wǎng)絡(luò)210時(shí),邊緣的網(wǎng)絡(luò)交換器232再將包加上延伸虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼(extended VID),其中包含有較多比特,以于服務(wù)商主干網(wǎng)絡(luò)210中表示更多數(shù)量的虛擬網(wǎng)絡(luò)。舉例來說,一包被加上數(shù)值為20000的延伸虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼,以取代原有數(shù)值為4000的虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼。
當(dāng)包被服務(wù)商主干網(wǎng)絡(luò)210傳遞至服務(wù)商網(wǎng)絡(luò)214時(shí),數(shù)值為20000的延伸虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼被網(wǎng)絡(luò)邊緣的網(wǎng)絡(luò)交換器234自包移除,以還原為數(shù)值為4000的虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼。包接著被服務(wù)商網(wǎng)絡(luò)214的網(wǎng)絡(luò)交換器220送至局域網(wǎng)204。接著,包被局域網(wǎng)204依據(jù)其目的MAC地址遞送至目標(biāo)主機(jī)。
圖3為網(wǎng)絡(luò)交換器220決定同一虛擬網(wǎng)絡(luò)的局域網(wǎng)202與204間交換的包的輸出端口的方法300,其中網(wǎng)絡(luò)交換器220僅支援一個(gè)虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼空間(VID space)。由于通過網(wǎng)絡(luò)交換器的包眾多,網(wǎng)絡(luò)交換器220以包的虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼決定包的輸出端口。而且,不需強(qiáng)制虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼符合802.1Q的標(biāo)準(zhǔn),亦可采取其他格式,例如端口基虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼(port-based VID)。方法300始自步驟302。首先,讀取收到的包的虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼。假設(shè)其虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼為4000。此時(shí)網(wǎng)絡(luò)交換器220必須決定該包應(yīng)被轉(zhuǎn)送至哪一輸出端口,以引導(dǎo)該包前往其目的地址。
假設(shè)網(wǎng)絡(luò)交換器220有26個(gè)端口,且用來處理虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼為4000的包為端口0與端口22。于此用來處理一特定虛擬網(wǎng)絡(luò)的包的端口稱為該虛擬網(wǎng)絡(luò)的相關(guān)端口群組(VLAN member)。步驟304接著依據(jù)包的虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼搜尋該虛擬網(wǎng)絡(luò)的相關(guān)端口群組。因此,虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼4000的相關(guān)端口群組包括端口0與端口22。最后,于步驟306中,包的輸出端口可由虛擬網(wǎng)絡(luò)的相關(guān)端口群組及包的輸入端口決定。若包的輸入端口是網(wǎng)絡(luò)交換器220的端口22,其輸出端口必定屬于虛擬網(wǎng)絡(luò)的相關(guān)端口群組,但又非包的輸入端口。因此,包的輸出端口為端口0,且該包被轉(zhuǎn)送至端口0。
圖4表示連接四局域網(wǎng)202、204、206、208的網(wǎng)絡(luò)系統(tǒng)400,其中該四局域網(wǎng)202、204、206、208同屬于一虛擬局域網(wǎng)。網(wǎng)絡(luò)系統(tǒng)400大致類似網(wǎng)絡(luò)系統(tǒng)200,但新增了兩個(gè)具有同樣虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼4000的局域網(wǎng)LAN 206、208。局域網(wǎng)202可為某公司位在A城市的研究部門的網(wǎng)絡(luò),而局域網(wǎng)204可為該公司位在B城市的另一研究部門的網(wǎng)絡(luò)。A城市的研究部門希望與B城市的另一研究部門聯(lián)絡(luò)。局域網(wǎng)206可為該公司位在C城市的業(yè)務(wù)部門的網(wǎng)絡(luò),而局域網(wǎng)208可為該公司位在B城市的另一業(yè)務(wù)部門的網(wǎng)絡(luò)。C城市的業(yè)務(wù)部門希望與B城市的另一業(yè)務(wù)部門聯(lián)絡(luò)。
服務(wù)商網(wǎng)絡(luò)212為ISP在A城市的網(wǎng)絡(luò),并將局域網(wǎng)202連接至服務(wù)商主干網(wǎng)絡(luò)210。服務(wù)商網(wǎng)絡(luò)214為ISP在B城市的網(wǎng)絡(luò),并將局域網(wǎng)204、208連接至服務(wù)商主干網(wǎng)絡(luò)210。服務(wù)商網(wǎng)絡(luò)216為ISP在C城市的網(wǎng)絡(luò),并將局域網(wǎng)206連接至服務(wù)商主干網(wǎng)絡(luò)210。
假設(shè)來自局域網(wǎng)202、204、206與208的包被加上VLAN標(biāo)簽,其中包含了虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼4000。假設(shè)此時(shí)A城市的研究部門發(fā)送一第一包至B城市的另一研究部門,而C城市的業(yè)務(wù)部門發(fā)送一第二包至B城市的另一業(yè)務(wù)部門。雖然第一與第二包的虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼皆為4000,但服務(wù)商主干網(wǎng)絡(luò)210仍舊能區(qū)別第一與第二包,因?yàn)橛诜?wù)商主干網(wǎng)絡(luò)210中邊緣網(wǎng)絡(luò)交換器232會(huì)于第一包上增加一延伸虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼20000,而邊緣網(wǎng)絡(luò)交換器236會(huì)于第二包上增加一延伸虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼40000。
然而,當(dāng)?shù)谝慌c第二包自服務(wù)商主干網(wǎng)絡(luò)210傳遞至服務(wù)商網(wǎng)絡(luò)214時(shí),延伸虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼20000與40000分別被邊緣網(wǎng)絡(luò)交換器234所移除,因而第一與第二包僅包含相同的虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼4000。若服務(wù)商網(wǎng)絡(luò)214如網(wǎng)絡(luò)系統(tǒng)200中般僅以一網(wǎng)絡(luò)交換器220連接局域網(wǎng)204、208,則由于網(wǎng)絡(luò)交換器220依據(jù)包的虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼決定包的輸出端口,且連接至局域網(wǎng)204、208的端口均為虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼4000的相關(guān)端口群組,網(wǎng)絡(luò)交換器220將無法決定第一、第二包應(yīng)該發(fā)送至哪一個(gè)輸出端口,甚至第一、第二包可能被發(fā)送至錯(cuò)誤的輸出端口。
上述的問題會(huì)發(fā)生,是因?yàn)榫W(wǎng)絡(luò)交換器220僅支援一組VID空間。VID空間是指虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼所能支持的虛擬局域網(wǎng)的數(shù)量。若有兩個(gè)以上具有相同虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼的局域網(wǎng)或網(wǎng)段通過不同端口連接至該網(wǎng)絡(luò)交換器,網(wǎng)絡(luò)交換器將無法區(qū)別此等局域網(wǎng)或網(wǎng)段,而發(fā)送至該多個(gè)局域網(wǎng)或網(wǎng)段的包會(huì)被傳送至錯(cuò)誤的輸出端口。解決此問題的方法的一為將服務(wù)商網(wǎng)絡(luò)214分別以不同的網(wǎng)絡(luò)交換器連接至局域網(wǎng)204與208。舉例來說,局域網(wǎng)204經(jīng)由網(wǎng)絡(luò)交換器220連接至服務(wù)商網(wǎng)絡(luò)214,而局域網(wǎng)208經(jīng)由網(wǎng)絡(luò)交換器222連接至服務(wù)商網(wǎng)絡(luò)214。于是,邊緣網(wǎng)絡(luò)交換器234可分別將第一、第二包依據(jù)其延伸虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼轉(zhuǎn)送至網(wǎng)絡(luò)交換器220與222。然而,此方式需以增加網(wǎng)絡(luò)交換器的數(shù)量為代價(jià),因而增加網(wǎng)絡(luò)設(shè)置的成本。
圖5表示依據(jù)本發(fā)明連接四局域網(wǎng)202、204、206、208的網(wǎng)絡(luò)系統(tǒng)500,其中該四局域網(wǎng)202、204、206、208同屬于一虛擬局域網(wǎng)。網(wǎng)絡(luò)系統(tǒng)500大致與網(wǎng)絡(luò)系統(tǒng)400相同,但以單一網(wǎng)絡(luò)交換器520取代網(wǎng)絡(luò)系統(tǒng)400中的網(wǎng)絡(luò)交換器220與222。因?yàn)榫W(wǎng)絡(luò)交換器520支援多個(gè)虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼空間,因此可以分辨屬于同一虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼4000的局域網(wǎng)204與208。若有兩個(gè)以上屬于同一虛擬網(wǎng)絡(luò)的局域網(wǎng)或網(wǎng)段經(jīng)由不同端口連接至網(wǎng)絡(luò)交換器520,網(wǎng)絡(luò)交換器520仍可分辨該多個(gè)局域網(wǎng)或網(wǎng)段,因而包被送至這些局域網(wǎng)或網(wǎng)段時(shí),不會(huì)在傳送中發(fā)生錯(cuò)誤。因此,局域網(wǎng)204與208可藉一個(gè)網(wǎng)絡(luò)交換器520連接至服務(wù)商網(wǎng)絡(luò)214,且架設(shè)網(wǎng)絡(luò)系統(tǒng)500也不需額外的網(wǎng)絡(luò)交換器成本。網(wǎng)絡(luò)交換器520直接與邊緣網(wǎng)絡(luò)交換器234相連,而邊緣網(wǎng)絡(luò)交換器234可分別將不同包依據(jù)其延伸虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼轉(zhuǎn)送至網(wǎng)絡(luò)交換器520的不同端口。
圖6為依據(jù)本發(fā)明的網(wǎng)絡(luò)交換器520決定同一虛擬網(wǎng)絡(luò)的局域網(wǎng)202、204、206、208間交換的包的輸出端口的方法600,其中網(wǎng)絡(luò)交換器520支援多個(gè)虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼空間(VID space)。方法600可由網(wǎng)絡(luò)交換器520的核心模塊實(shí)行,該核心模塊將網(wǎng)絡(luò)交換器520接收的包轉(zhuǎn)送至適當(dāng)輸出端口,以導(dǎo)引包朝向其目標(biāo)地址前進(jìn)。網(wǎng)絡(luò)交換器520依據(jù)包的虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼及包的遞送域(forwarding scope),以決定包的輸出端口。而且,不必強(qiáng)制虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼需符合802.1Q的標(biāo)準(zhǔn),亦可采取其他格式,例如端口基虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼(port-based VID)。與一輸入端口相關(guān)的遞送域,為一組用來處理某一虛擬網(wǎng)絡(luò)的某子網(wǎng)絡(luò)(subnet)的包的端口群組。遞送域在虛擬網(wǎng)絡(luò)的下再提供一層額外的邏輯分割,因此可以用來于網(wǎng)絡(luò)交換器的多個(gè)端口的中劃定包的廣播領(lǐng)域(broadcast domain)。若虛擬網(wǎng)絡(luò)包含多個(gè)實(shí)體局域網(wǎng),可以于邏輯上劃分該多個(gè)多個(gè)實(shí)體局域網(wǎng)為該虛擬網(wǎng)絡(luò)的數(shù)個(gè)子網(wǎng)絡(luò),而遞送域便可以表示網(wǎng)絡(luò)交換器中專門用來處理虛擬網(wǎng)絡(luò)的某一子網(wǎng)絡(luò)的包的一組端口。
若一網(wǎng)絡(luò)交換器收到一廣播包,該網(wǎng)絡(luò)交換器可以借著縮小特定虛擬局域網(wǎng)的廣播區(qū)域至遞送域與該虛擬局域網(wǎng)的相關(guān)端口群組相交集的一組端口,以減少廣播包所遞送的端口的范圍。若該網(wǎng)絡(luò)交換器收到單點(diǎn)廣播或多點(diǎn)廣播的包,則網(wǎng)絡(luò)交換器可以建立一端口掩模(port-mask),該端口掩模表示遞送域與該虛擬局域網(wǎng)的相關(guān)端口群組相交集的一組端口,以限縮包的輸出端口。因此,包的輸出端口可以依據(jù)端口掩模及包的目的MAC地址而決定。于是,一個(gè)網(wǎng)絡(luò)交換器可支援多個(gè)虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼空間,以取代僅支援單一虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼空間的多個(gè)網(wǎng)絡(luò)交換器。
方法600以步驟602開始,讀取所接收包的虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼。假設(shè)此時(shí)A城市的研究部門發(fā)送一第一包至B城市的另一研究部門,而C城市的業(yè)務(wù)部門發(fā)送一第二包至B城市的另一業(yè)務(wù)部門,且第一與第二包均已被圖5的網(wǎng)絡(luò)交換器520所接收。假設(shè)第一與第二包的虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼皆為4000,此為該公司所屬虛擬網(wǎng)絡(luò)的虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼。因此網(wǎng)絡(luò)交換器520必須決定該轉(zhuǎn)送第一與第二包至網(wǎng)絡(luò)交換器520的哪一端口。
假設(shè)網(wǎng)絡(luò)交換器520共有26個(gè)端口。局域網(wǎng)204經(jīng)由端口0連接至網(wǎng)絡(luò)交換器520,且來自局域網(wǎng)204的包的上鏈接端口(uplink port)為端口22。局域網(wǎng)208經(jīng)由端口1連接至網(wǎng)絡(luò)交換器520,且來自局域網(wǎng)208的包的上鏈端口為端口23。因此,專門用來處理虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼為4000的包的端口包括端口0、1、22、23。接著,于步驟604中依據(jù)包的虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼,以決定包所屬的虛擬網(wǎng)絡(luò)的相關(guān)端口群組(VLAN member ports)。于是,第一與第二包所屬的虛擬網(wǎng)絡(luò)4000的相關(guān)端口群組包括端口0、1、22、23。此時(shí)若網(wǎng)絡(luò)交換器520的每一端口皆以16進(jìn)位格式中的一比特表示,則虛擬網(wǎng)絡(luò)4000的相關(guān)端口群組可表示為「0C00003H」。
網(wǎng)絡(luò)交換器520中可同時(shí)共存數(shù)個(gè)遞送域。網(wǎng)絡(luò)交換器520中最多可同時(shí)存在相當(dāng)于端口數(shù)目的遞送域,其中每一端口與一遞送域相對應(yīng)。假設(shè)網(wǎng)絡(luò)交換器520中共有4個(gè)遞送域遞送域0至遞送域3。由于局域網(wǎng)202與204的使用者均為公司的研發(fā)部門,因此研發(fā)部門的子網(wǎng)絡(luò)以遞送域0表示,包含端口0及其上鏈端口22。亦即,遞送域0可以16進(jìn)位型式的「0400001H」表示。由于局域網(wǎng)206與208的使用者均為公司的業(yè)務(wù)部門,因此業(yè)務(wù)部門的子網(wǎng)絡(luò)以遞送域1表示,包含端口1及其上鏈端口23。亦即,遞送域0可以16進(jìn)位型式的「0800002H」表示。因此,端口0及端口22與遞送域0相關(guān),而端口1及端口23與遞送域1相關(guān)。
當(dāng)步驟604被執(zhí)行后,網(wǎng)絡(luò)交換器502接著可以于步驟606中尋找與包的輸入端口相關(guān)的遞送域的標(biāo)號(index)。舉例來說,若第一包的輸入端口為端口22,則與端口22相關(guān)的遞送域的標(biāo)號為0(即遞送域0)。若第二包的輸入端口為端口23,則與端口23相關(guān)的遞送域的標(biāo)號為1(即遞送域1)。因此,網(wǎng)絡(luò)交換器502可以于步驟608中依據(jù)步驟606的標(biāo)號決定包的遞送域。對應(yīng)于第一包的遞送域?yàn)檫f送域0,其值為「0400001H」,而對應(yīng)于第二包的遞送域?yàn)檫f送域1,其值為「0800002H」。
接著于步驟610中可決定用以界定包輸出端口的端口掩模(port mask)。端口掩??山鍖⒉襟E604的虛擬局域網(wǎng)的相關(guān)端口群組與步驟608的包遞送域進(jìn)行交集而求得,亦即可將兩者的值進(jìn)行AND運(yùn)算,以計(jì)算包的端口掩模。例如,第一包的虛擬局域網(wǎng)的相關(guān)端口群組為「0C00003H」而其遞送域?yàn)椤?400001H」,因此第一包的端口掩模為「0400001H」,表示端口0與22。第二包的虛擬局域網(wǎng)的相關(guān)端口群組為「0C00003H」而其遞送域?yàn)椤?800002H」,因此第一包的端口掩模為「0800002H」,表示端口1與23。
最后,可于步驟612中依據(jù)步驟610的端口掩模及包的輸入端口決定包的輸出端口。由于第一包的輸入端口為網(wǎng)絡(luò)交換器520的端口22,其輸出端口必定為第一包的端口掩模所代表的端口群組中非輸入端口22者。因此,可決定第一包的輸入端口為端口0,而第一包接著被轉(zhuǎn)送至端口0。同樣地,由于第二包的輸入端口為網(wǎng)絡(luò)交換器520的端口23,其輸出端口必定為第二包的端口掩模所代表的端口群組中非輸入端口23者。因此,可決定第二包的輸入端口為端口1,而第一包接著被轉(zhuǎn)送至端口1。第一包接著被局域網(wǎng)204接收,并依照其目的MAC地址被轉(zhuǎn)送至B城市的研發(fā)部門。第二包接著被局域網(wǎng)208接收,并依照其目的MAC地址被轉(zhuǎn)送至B城市的業(yè)務(wù)部門。
此外,若位于B城市的研發(fā)部門向A城市的研發(fā)部門發(fā)送一第三包,且位于B城市的業(yè)務(wù)部門向C城市的業(yè)務(wù)部門發(fā)送一第四包,則第三包與第四包皆被網(wǎng)絡(luò)交換器520分別經(jīng)由端口0與1所接收。由于兩個(gè)包的虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼皆為4000,兩個(gè)包的虛擬局域網(wǎng)的相關(guān)端口群組可于步驟602中決定,皆為端口0、1、22、23,若以16進(jìn)位格式表示則為「0C00003H」。由于第三與第四包的輸入端口為端口0與1,且與端口0、1相關(guān)的遞送域標(biāo)號分別為0、1,因此第三與第四包的遞送域可于步驟608中決定為遞送域0「0400001H」及遞送域1「0800002H」。接著,可如步驟610中計(jì)算第三包的端口掩模為「0400001H」,其表示端口0與22;而第四包的端口掩模為「0800002H」,其表示端口1與23。最后,第三包的輸出端口可依據(jù)步驟612決定為端口22,而第四包的輸出端口可依據(jù)步驟612決定為端口23。
本發(fā)明提供一種使網(wǎng)絡(luò)交換器支援多重虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼空間的方法。專門處理某一虛擬局域網(wǎng)的包的一組端口被分類為該特定虛擬局域網(wǎng)的相關(guān)端口群組(VLAN member)。該網(wǎng)絡(luò)交換器的每一端口再被分屬于一特定的遞送域(forwarding scope),其界定屬于虛擬局域網(wǎng)的相關(guān)端口群組的子集合的一組端口。若網(wǎng)絡(luò)交換器接收到屬于某一虛擬局域網(wǎng)的包,則網(wǎng)絡(luò)交換器可建立表示該虛擬局域網(wǎng)的相關(guān)端口群組(VLAN member ports)及遞送域(forwarding scope)的交集的一端口掩模(port mask),且包的輸出端口可依據(jù)端口掩模及包的目的MAC地址而決定。因此,屬于同一虛擬局域網(wǎng)的多個(gè)實(shí)體局域網(wǎng)的包可以由單一網(wǎng)絡(luò)交換器進(jìn)行處理,由此而降低網(wǎng)絡(luò)建置的成本。
本發(fā)明雖以優(yōu)選實(shí)施例公開如上,然其并非用以限定本發(fā)明,任何本領(lǐng)域技術(shù)人員,在不脫離本發(fā)明的精神和范圍的情況下,可進(jìn)行更動(dòng)與修改,因此本發(fā)明的保護(hù)范圍以所提出的權(quán)利要求所限定的范圍為準(zhǔn)。
權(quán)利要求
1.一種處理虛擬局域網(wǎng)的包的方法,其中一虛擬局域網(wǎng)包括多個(gè)實(shí)體局域網(wǎng)并被分割為多個(gè)子網(wǎng)絡(luò),包括經(jīng)由該網(wǎng)絡(luò)交換器的一輸入端口接收一包,該包屬于該虛擬局域網(wǎng)的第一子網(wǎng)絡(luò),并被附加該虛擬局域網(wǎng)的虛擬局域網(wǎng)標(biāo)識(shí)碼,其中該第一子網(wǎng)絡(luò)為該虛擬局域網(wǎng)的該多個(gè)子網(wǎng)絡(luò)其中之一;讀取該包的虛擬局域網(wǎng)標(biāo)識(shí)碼;依據(jù)該包的該虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼決定該虛擬網(wǎng)絡(luò)的相關(guān)端口群,其中該虛擬網(wǎng)絡(luò)的相關(guān)端口群表示該網(wǎng)絡(luò)交換器中專門用以處理該虛擬網(wǎng)絡(luò)的包的所有端口組成的群組;依據(jù)該包的該輸入端口決定該包的遞送域,其中該遞送域表示該網(wǎng)絡(luò)交換器專門用以處理該第一子網(wǎng)絡(luò)的包的所有端口組成的群組,而該輸入端口為該遞送域所包含的端口群組其中之一端口;以及依據(jù)該虛擬網(wǎng)絡(luò)的相關(guān)端口群以及該包的遞送域決定該包的輸出端口。
2.如權(quán)利要求1所述的網(wǎng)絡(luò)交換器用以處理虛擬局域網(wǎng)的包的的方法,其中該包的輸出端口是借著求取表示該遞送域與該虛擬網(wǎng)絡(luò)的相關(guān)端口群兩者的交集的端口掩模而決定,且自該端口掩模刪去該包的輸入端口所得剩余的端口中得以決定該包的輸出端口。
3.如權(quán)利要求2所述的網(wǎng)絡(luò)交換器用以處理虛擬局域網(wǎng)的包的的方法,其中該遞送域與該虛擬網(wǎng)絡(luò)的相關(guān)端口群兩者皆以比特?cái)?shù)據(jù)類型來表示,其中該網(wǎng)絡(luò)交換器的所有端口中被該遞送域與該虛擬網(wǎng)絡(luò)的相關(guān)端口群所包括的端口以比特1表示,而該網(wǎng)絡(luò)交換器的所有端口中未被該遞送域與該虛擬網(wǎng)絡(luò)的相關(guān)端口群所包括的端口以比特0表示,則該端口掩模是通過對于該遞送域與該虛擬網(wǎng)絡(luò)的相關(guān)端口群執(zhí)行AND運(yùn)算而求得。
4.如權(quán)利要求2所述的網(wǎng)絡(luò)交換器用以處理虛擬局域網(wǎng)的包的的方法,其中若該包為一廣播包,則該網(wǎng)絡(luò)交換器可運(yùn)用該端口掩模以限定該包的廣播領(lǐng)域的端口。
5.如權(quán)利要求2所述的網(wǎng)絡(luò)交換器用以處理虛擬局域網(wǎng)的包的的方法,其中該包的輸出端口可依據(jù)該端口掩模與該包的目的媒體存取控制地址而決定。
6.如權(quán)利要求1所述的網(wǎng)絡(luò)交換器用以處理虛擬局域網(wǎng)的包的的方法,其中該網(wǎng)絡(luò)交換器經(jīng)由多個(gè)第一端口連接至多個(gè)第一實(shí)體局域網(wǎng),每一第一端口專門用來接收或傳送該多個(gè)第一實(shí)體網(wǎng)絡(luò)其中之一的包,其中每一第一實(shí)體局域網(wǎng)為該多個(gè)多個(gè)實(shí)體局域網(wǎng)其中之一且屬于該虛擬局域網(wǎng)的不同子網(wǎng)絡(luò)。
7.一種網(wǎng)絡(luò)交換器,用以處理一虛擬局域網(wǎng)的包,其中該虛擬局域網(wǎng)包括多個(gè)實(shí)體局域網(wǎng)并被分割為多個(gè)子網(wǎng)絡(luò),該網(wǎng)絡(luò)交換器包括多個(gè)端口,用以接收并發(fā)送于該虛擬局域網(wǎng)中所交換的一包,該包屬于該虛擬局域網(wǎng)的第一子網(wǎng)絡(luò),并被附加該虛擬局域網(wǎng)的虛擬局域網(wǎng)標(biāo)識(shí)碼,其中該第一子網(wǎng)絡(luò)為該虛擬局域網(wǎng)的該多個(gè)子網(wǎng)絡(luò)其中之一;以及核心模塊,耦接至該多個(gè)端口,用以依據(jù)該包的該虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼決定該虛擬網(wǎng)絡(luò)的相關(guān)端口群,依據(jù)該包的輸入端口決定該包的遞送域,依據(jù)該虛擬網(wǎng)絡(luò)的相關(guān)端口群以及該包的遞送域決定該包的輸出端口,以及將該包轉(zhuǎn)送至該輸出端口以導(dǎo)引該包朝向其目的地址前進(jìn);其中該虛擬網(wǎng)絡(luò)的相關(guān)端口群表示該網(wǎng)絡(luò)交換器中專門用以處理該虛擬網(wǎng)絡(luò)的包的所有端口組成的群組,該遞送域表示該網(wǎng)絡(luò)交換器專門用以處理該第一子網(wǎng)絡(luò)的包的所有端口組成的群組,而該輸入端口為該遞送域所包含的端口群組其中之一端口。
8.如權(quán)利要求7所述的網(wǎng)絡(luò)交換器,其中該核心模塊借著求取表示該遞送域與該虛擬網(wǎng)絡(luò)的相關(guān)端口群兩者的交集的端口掩模而決定該包的輸出端口,且該核心模塊可自該端口掩模刪去該包的輸入端口所得剩余的端口中而決定該包的輸出端口。
9.如權(quán)利要求8所述的網(wǎng)絡(luò)交換器,其中該遞送域與該虛擬網(wǎng)絡(luò)的相關(guān)端口群兩者皆以比特?cái)?shù)據(jù)類型來表示,其中該網(wǎng)絡(luò)交換器的所有端口中被該遞送域與該虛擬網(wǎng)絡(luò)的相關(guān)端口群所包括的端口以比特1表示,而該網(wǎng)絡(luò)交換器的所有端口中未被該遞送域與該虛擬網(wǎng)絡(luò)的相關(guān)端口群所包括的端口以比特0表示,則該端口掩模是藉對于該遞送域與該虛擬網(wǎng)絡(luò)的相關(guān)端口群執(zhí)行AND運(yùn)算而求得。
10.如權(quán)利要求8所述的網(wǎng)絡(luò)交換器,其中若該包為一廣播包,則該網(wǎng)絡(luò)交換器可運(yùn)用該端口掩模以限定該包的廣播領(lǐng)域的端口。
11.如權(quán)利要求8所述的網(wǎng)絡(luò)交換器,其中該核心模塊依據(jù)該端口掩模與該包的目的媒體存取控制地址而決定該包的輸出端口。
12.如權(quán)利要求7所述的網(wǎng)絡(luò)交換器,其中該網(wǎng)絡(luò)交換器經(jīng)由多個(gè)第一端口連接至多個(gè)第一實(shí)體局域網(wǎng),每一第一端口專門用來接收或傳送該多個(gè)第一實(shí)體網(wǎng)絡(luò)其中之一的包,其中每一第一實(shí)體局域網(wǎng)為該多個(gè)多個(gè)實(shí)體局域網(wǎng)其中之一且屬于該虛擬局域網(wǎng)的不同子網(wǎng)絡(luò)。
全文摘要
本發(fā)明提供一種網(wǎng)絡(luò)交換器用以處理虛擬局域網(wǎng)的包的方法。首先,經(jīng)由該網(wǎng)絡(luò)交換器的一輸入端口接收一包。接著,讀取該包的虛擬局域網(wǎng)標(biāo)識(shí)碼。接著依據(jù)該包的該虛擬網(wǎng)絡(luò)標(biāo)識(shí)碼決定該虛擬網(wǎng)絡(luò)的相關(guān)端口群,其中該虛擬網(wǎng)絡(luò)的相關(guān)端口群表示該網(wǎng)絡(luò)交換器中專門用以處理該虛擬網(wǎng)絡(luò)的包的所有端口組成的群組。接著依據(jù)該包的該輸入端口決定該包的遞送域,其中該遞送域表示該網(wǎng)絡(luò)交換器專門用以處理該第一子網(wǎng)絡(luò)的包的所有端口組成的群組。最后,依據(jù)該虛擬網(wǎng)絡(luò)的相關(guān)端口群以及該包的遞送域決定該包的輸出端口。
文檔編號H04L12/46GK1929449SQ20061014122
公開日2007年3月14日 申請日期2006年9月28日 優(yōu)先權(quán)日2005年12月1日
發(fā)明者陳維彬, 陳英鐘, 趙云飛, 鐘名超 申請人:威盛電子股份有限公司