欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種處理源角色信息的方法和轉(zhuǎn)發(fā)芯片的制作方法

文檔序號:7750131閱讀:128來源:國知局
專利名稱:一種處理源角色信息的方法和轉(zhuǎn)發(fā)芯片的制作方法
技術(shù)領(lǐng)域
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,特別涉及一種處理源角色信息的方法和轉(zhuǎn)發(fā)芯片。
背景技術(shù)
為了保證網(wǎng)絡(luò)的安全,當(dāng)用戶接入網(wǎng)絡(luò)時,需要對用戶進(jìn)行認(rèn)證,認(rèn)證后還需要通過接入控制手段即通過配置接入控制列表(ACL)對用戶的訪問權(quán)限進(jìn)行限制。傳統(tǒng)的接入控制方法主要是基于IP地址,但會造成ACL配置數(shù)量過多以及ip地址變化所帶來的配置管理工作量大的缺點(diǎn)。于是,基于角色的接入控制方法被提出,其基本思想是針對用戶分配源角色標(biāo)簽(tag),針對服務(wù)器分配目的角色tag,ACL相應(yīng)基于源角色tag和目的角色 tag進(jìn)行接入控制。這種基于角色的方式相當(dāng)于通過角色信息對基于ip地址的ACL進(jìn)行聚合,大大縮減了 ACL配置的數(shù)量,且不管ip地址如何變化,角色標(biāo)簽不會發(fā)生變化,基于角色的ACL均不會發(fā)生變化,顯然大大降低了配置管理的工作量?;诮巧慕尤肟刂萍軜?gòu)可以如圖1所示,用戶設(shè)備在通過認(rèn)證后獲得源角色, 該源角色信息存儲在入口(digress)設(shè)備中,資源側(cè)設(shè)備(圖中以服務(wù)器為例)在通過認(rèn)證后獲得目的角色,該目的角色信息存儲在出口(Egress)設(shè)備中,并形成基于角色的接入控制列表(RBACL)。用戶設(shè)備發(fā)送報文至hgress設(shè)備,Ingress設(shè)備將該報文中攜帶用戶設(shè)備的源角色信息,該報文在后續(xù)轉(zhuǎn)發(fā)過程中都攜帶該源角色信息直至到達(dá)Egress設(shè)備。 Egress設(shè)備接收到該報文后,確定該報文的目的角色信息,根據(jù)源角色信息和目的角色信息匹配RBACL,根據(jù)匹配結(jié)果對該報文進(jìn)行接入控制,包括允許轉(zhuǎn)發(fā)、拒絕轉(zhuǎn)發(fā)或轉(zhuǎn)發(fā)速率限制等。需要說明的是,在圖1所示架構(gòu)中,digress和Egress設(shè)備可以在二層網(wǎng)絡(luò)也可以在三層網(wǎng)絡(luò)中,Ingress設(shè)備與用戶設(shè)備之間以及Egress設(shè)備與服務(wù)器之間可以存在普通網(wǎng)絡(luò)設(shè)備,Ingress設(shè)備與Egress設(shè)備之間可以存在中間網(wǎng)絡(luò)設(shè)備。在現(xiàn)有的實(shí)現(xiàn)方法中,源角色信息在報文中的攜帶方式主要存在以下幾種第一種通過物理層攜帶的方式。即通過報文中8個字節(jié)的以太網(wǎng)前導(dǎo)碼攜帶。 但這種方式需要修改標(biāo)準(zhǔn)以太網(wǎng)的前導(dǎo)碼,當(dāng)前設(shè)備的物理層功能并不支持,需要進(jìn)行整網(wǎng)升級,升級成本高,難以過渡和推廣。第二種通過鏈路層攜帶的方式。即通過報文中新構(gòu)造的角色控制信息字段攜帶。 但這種方式由于構(gòu)造了新的字段,當(dāng)前設(shè)備并不支持,需要進(jìn)行整網(wǎng)升級,升級成本高。第三種通過IPv4選項(xiàng)(Option)字段攜帶的方式。即在IPv4字段中定義一個新的Option類型來攜帶源角色信息,同樣需要對整網(wǎng)進(jìn)行升級處理,使得所有設(shè)備都能夠?qū)π略黾拥腛ption類型進(jìn)行處理,升級代價高,且不支持除IPv4之外的其它類型報文。第四種通過IPv6 Option字段攜帶的方式。即在IPv6字段中定義一個新的IPv6 擴(kuò)展頭,即SGT選項(xiàng)頭來攜帶源角色信息。但SGT選項(xiàng)頭的硬件插入需要芯片支持新的功能,同樣需要進(jìn)行芯片功能的升級,升級代價高,且不支持除IPv6之外的其它類型報文??梢钥闯?,現(xiàn)有技術(shù)中的上述幾種方式都需要對現(xiàn)有設(shè)備的功能進(jìn)行較大改動,升級成本較高。

發(fā)明內(nèi)容
本發(fā)明提供了一種處理源角色信息的方法和轉(zhuǎn)發(fā)芯片,以便于較好的與現(xiàn)有設(shè)備的功能兼容,降低升級成本。一種處理源角色信息的方法,該方法包括確定使能digress功能時,將源角色標(biāo)簽tag作為數(shù)據(jù)報文的內(nèi)層虛擬局域網(wǎng) VLAN插入數(shù)據(jù)報文;確定使能中間設(shè)備功能時,在轉(zhuǎn)發(fā)數(shù)據(jù)報文的過程中,對作為內(nèi)層VLAN標(biāo)簽的源角色tag保持不變;確定使能Egress功能時,從數(shù)據(jù)報文中獲取作為內(nèi)層VLAN標(biāo)簽的源角色tag,用于對所述數(shù)據(jù)報文進(jìn)行基于角色的接入控制。一種處理源角色信息的轉(zhuǎn)發(fā)芯片,該轉(zhuǎn)發(fā)芯片包括Jngress功能模塊、中間設(shè)備功能模塊和Egress功能模塊;所述digress功能模塊,用于在被使能時,將源角色標(biāo)簽tag作為數(shù)據(jù)報文的內(nèi)層虛擬局域網(wǎng)VLAN插入數(shù)據(jù)報文;所述中間設(shè)備功能模塊,用于在被使能時,在轉(zhuǎn)發(fā)數(shù)據(jù)報文的過程中,對作為內(nèi)層 VLAN標(biāo)簽的源角色tag保持不變;所述Egress功能模塊,用于在被使能時,從數(shù)據(jù)報文中獲取作為內(nèi)層VLAN標(biāo)簽的源角色tag,用于對所述數(shù)據(jù)報文進(jìn)行基于角色的接入控制。由以上技術(shù)方案可以看出,本發(fā)明通過使能hgress功能時,將源角色tag作為報文的內(nèi)層VLAN標(biāo)簽插入報文,使能中間設(shè)備功能時對攜帶源角色tag的內(nèi)層VLAN標(biāo)簽保持不變,使能Egress功能時從報文中獲取作為內(nèi)層VLAN標(biāo)簽的源角色tag從而進(jìn)行基于角色的接入控制。本發(fā)明巧妙利用了現(xiàn)有轉(zhuǎn)發(fā)芯片已有的QinQ功能,以及充分借用現(xiàn)有的報文結(jié)構(gòu),無需對現(xiàn)有網(wǎng)絡(luò)設(shè)備的功能進(jìn)行較大改動,降低了網(wǎng)絡(luò)的升級成本。另外,在本發(fā)明提供的轉(zhuǎn)發(fā)芯片集成了 hgress功能、中間設(shè)備功能和Egress功能,可以根據(jù)網(wǎng)絡(luò)設(shè)備所處的網(wǎng)絡(luò)位置不同,使能相應(yīng)的功能,從而提供對源角色tag的相應(yīng)處理。也就是說,提供了一種通用的轉(zhuǎn)發(fā)芯片在Ingress設(shè)備、中間設(shè)備或Egress設(shè)備中都能夠采用,為上層軟件涉及提供了更加靈活的基礎(chǔ),同時對轉(zhuǎn)發(fā)芯片的歸一化處理更加方便了對各轉(zhuǎn)發(fā)芯片的管理,降低了硬件和軟件的管理成本。另外,上述三個功能相關(guān)性強(qiáng),集成全部功能后,芯片成本增加并不多,但是應(yīng)用范圍卻得到了擴(kuò)大,因此,集成 Ingress功能、中間設(shè)備功能以及Egress功能的芯片是以后技術(shù)發(fā)展的必然趨勢。


圖1為基于角色的接入控制架構(gòu)示意圖;圖2為第一種應(yīng)用場景的示意圖;圖3為第二種應(yīng)用場景的示意圖;圖4為第三種應(yīng)用場景的示意圖;圖5為第四種應(yīng)用場景的示意圖6為本發(fā)明提供的hgress設(shè)備采用認(rèn)證方式配置對應(yīng)關(guān)系的第一個實(shí)例示意圖;圖7為本發(fā)明提供的hgress設(shè)備采用認(rèn)證方式配置對應(yīng)關(guān)系的第二個實(shí)例示意圖;圖8為本發(fā)明提供的Egress設(shè)備采用認(rèn)證的方式配置RBACL的方法示意圖;圖9為本發(fā)明提供的hgress設(shè)備的一種結(jié)構(gòu)示意圖;圖10為本發(fā)明提供的hgress設(shè)備的另一種結(jié)構(gòu)示意圖;圖11為本發(fā)明提供的Egress設(shè)備的結(jié)構(gòu)示意圖;圖12為本發(fā)明提供的中間設(shè)備的結(jié)構(gòu)示意圖;圖13為本發(fā)明提供的通用的轉(zhuǎn)發(fā)芯片的結(jié)構(gòu)示意圖。
具體實(shí)施例方式為了使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面結(jié)合附圖和具體實(shí)施例對本發(fā)明進(jìn)行詳細(xì)描述。本發(fā)明的核心思想在于Jngress設(shè)備根據(jù)接收到的報文的來源信息確定源角色 tag后,將該源角色tag作為報文的內(nèi)層VLAN標(biāo)簽插入報文中后進(jìn)行轉(zhuǎn)發(fā),其中該源角色 tag對應(yīng)用戶設(shè)備的角色;如果Egress設(shè)備與Egress設(shè)備之間存在中間設(shè)備,則該中間設(shè)備在轉(zhuǎn)發(fā)過程中對作為內(nèi)層VLAN標(biāo)簽的源角色tag保持不變直至轉(zhuǎn)發(fā)該報文至Egress 設(shè)備;Egress設(shè)備從報文中獲取作為內(nèi)層VLAN標(biāo)簽的源角色tag,用于對數(shù)據(jù)報文進(jìn)行基于角色的接入控制。也就是說,本發(fā)明利用了網(wǎng)絡(luò)設(shè)備已有的QinQ功能,將源角色tag以報文的內(nèi)層 VLAN標(biāo)簽的形式插入報文,只需設(shè)置中間設(shè)備對攜帶源角色tag的內(nèi)層VLAN標(biāo)簽保持不變,Egress設(shè)備從報文中獲取作為內(nèi)層VLAN標(biāo)簽中的源角色tag即可。其中,上述方法中涉及的報文來源信息可以為接收報文的入端口信息、報文的源地址信息、報文的四層端口號、三層協(xié)議號或應(yīng)用層協(xié)議號等。Egress設(shè)備對數(shù)據(jù)報文進(jìn)行基于角色的接入控制可以包括從接收到的數(shù)據(jù)報文的內(nèi)層VLAN標(biāo)簽中獲取源角色tag, 并確定該報文的目的角色信息,根據(jù)源角色tag和目的角色信息匹配RBACL,并按照匹配結(jié)果對報文進(jìn)行相應(yīng)的接入控制處理下面結(jié)合具體的實(shí)施例對上述方法進(jìn)行詳細(xì)描述。根據(jù)圖1所示的基于角色的接入控制架構(gòu)主要可以包括以下四種應(yīng)用場景第一種應(yīng)用場景如圖2所示,用戶設(shè)備直接接入hgress設(shè)備,然后再經(jīng)過二層網(wǎng)絡(luò)連接中間設(shè)備,通過中間設(shè)備接入三層網(wǎng)絡(luò)。服務(wù)器直接接入Egress設(shè)備,再經(jīng)過二層網(wǎng)絡(luò)連接中間設(shè)備,通過中間設(shè)備接入三層網(wǎng)絡(luò)。hgress和Egress之間路徑上所有設(shè)備均可以作為中間設(shè)備。hgress設(shè)備和Egress設(shè)備直接與接入認(rèn)證服務(wù)器進(jìn)行交互。第二種應(yīng)用場景如圖3所示,用戶設(shè)備通過普通設(shè)備接入digress設(shè)備,然后再經(jīng)過二層網(wǎng)絡(luò)連接中間設(shè)備,通過中間設(shè)備接入三層網(wǎng)絡(luò)。服務(wù)器通過普通設(shè)備接入 Egress設(shè)備,再經(jīng)過二層網(wǎng)絡(luò)連接中間設(shè)備,通過中間設(shè)備接入三層網(wǎng)絡(luò)。digress和 Egress之間路徑上所有設(shè)備均可以作為中間設(shè)備。普通設(shè)備與接入認(rèn)證服務(wù)器進(jìn)行交互, 并將通過認(rèn)證的角色信息發(fā)送給hgress設(shè)備。
第三種應(yīng)用場景如圖4所示,與第一種應(yīng)用場景不同的是用戶設(shè)備和服務(wù)器分別直接接入hgress設(shè)備和Egress設(shè)備,Ingress設(shè)備和Egress設(shè)備進(jìn)行三層轉(zhuǎn)發(fā)處理。第四種應(yīng)用場景如圖5所示,與第三種應(yīng)用場景不同的是用戶設(shè)備和服務(wù)器通過普通設(shè)備分別連接hgress設(shè)備和Egress設(shè)備,普通設(shè)備與接入認(rèn)證服務(wù)器進(jìn)行交互, 并將通過認(rèn)證的角色信息發(fā)送給hgress設(shè)備。上述場景中涉及的普通設(shè)備是不具備標(biāo)簽插入和處理功能的網(wǎng)絡(luò)設(shè)備。本發(fā)明中,Ingress設(shè)備中存儲有報文的來源信息與源角色tag之間的對應(yīng)關(guān)系, 以及Egress設(shè)備中的RBACL可以采用靜態(tài)配置的方式,也可以采用動態(tài)認(rèn)證的方式。下面對采用動態(tài)認(rèn)證的方式進(jìn)行詳細(xì)描述。對于hgress設(shè)備而言,采用認(rèn)證的方式配置報文的來源信息與源角色tag之間的對應(yīng)關(guān)系的方法可以包括確定通過認(rèn)證的設(shè)備角色信息和認(rèn)證報文的來源信息,將該來源信息與源角色tag之間的對應(yīng)關(guān)系下發(fā)給硬件層面。其中來源信息可以包括接收報文的入端口信息、報文的源地址信息、報文的四層端口號、三層協(xié)議號或應(yīng)用層協(xié)議號等。根據(jù)不同的應(yīng)用場景,hgress設(shè)備確定通過認(rèn)證的設(shè)備角色信息和認(rèn)證報文的來源信息的方式也不相同,下面分別列舉兩個實(shí)例。實(shí)例一如果用戶設(shè)備直接接入hgress設(shè)備,Ingress設(shè)備與接入認(rèn)證服務(wù)器直接交互,即對應(yīng)上述第一種應(yīng)用場景和第三種應(yīng)用場景,則hgress采用認(rèn)證的方式配置報文的來源信息與源角色tag之間的對應(yīng)關(guān)系的過程如圖6所示,可以包括以下步驟步驟601 用戶設(shè)備向hgress設(shè)備發(fā)起認(rèn)證請求。步驟602 =Ingress設(shè)備將認(rèn)證請求轉(zhuǎn)發(fā)給接入認(rèn)證服務(wù)器。步驟603 接入認(rèn)證服務(wù)器在用戶設(shè)備通過認(rèn)證后,將用戶設(shè)備的角色信息下發(fā)給Ingress設(shè)備。步驟604 =Ingress設(shè)備將接收認(rèn)證請求的入端口與該角色信息對應(yīng)的源角色tag 之間的對應(yīng)關(guān)系下發(fā)給硬件層面。也就是說,此時該入端口作為該報文的來源信息。在下發(fā)該對應(yīng)關(guān)系時,可以將源角色tag存儲在入端口所包含的內(nèi)層VLAN字段中。由于hgress設(shè)備本身已經(jīng)具備QinQ 功能,因此,的入端口存在內(nèi)層VLAN字段用于通過入端口接收到報文后,將該內(nèi)層VLAN字段中的內(nèi)容作為內(nèi)層VLAN標(biāo)簽插入報文中。實(shí)例二 如果用戶設(shè)備通過普通設(shè)備接入hgress設(shè)備,普通設(shè)備與接入認(rèn)證服務(wù)器進(jìn)行交互,即對應(yīng)上述第二種應(yīng)用場景和第四種應(yīng)用場景,則hgress采用認(rèn)證的方式配置報文的來源信息與源角色tag之間的對應(yīng)關(guān)系的過程如圖7所示,可以包括以下步驟步驟701 用戶設(shè)備向普通設(shè)備發(fā)起認(rèn)證請求。步驟702 普通設(shè)備將認(rèn)證請求轉(zhuǎn)發(fā)給接入認(rèn)證服務(wù)器。步驟703 接入認(rèn)證服務(wù)器在用戶設(shè)備通過認(rèn)證后,將用戶設(shè)備的角色信息下發(fā)給普通設(shè)備。步驟704 普通設(shè)備將用戶設(shè)備的角色信息與認(rèn)證請求的源地址信息之間的對應(yīng)關(guān)系發(fā)送給hgress設(shè)備。步驟705 Jngress設(shè)備將用戶設(shè)備的角色信息對應(yīng)的源角色tag與源地址信息之間的對應(yīng)關(guān)系下發(fā)給硬件層面。也就是說,此時報文的源地址信息作為該報文的來源信息,可以采用源IP地址或源MAC地址。在下發(fā)該對應(yīng)關(guān)系時,可以將源角色tag與源地址信息之間的對應(yīng)關(guān)系存儲為硬件表項(xiàng)的形式,后續(xù)Egress設(shè)備根據(jù)接收到的報文的源地址信息查找該硬件表項(xiàng)即可確定對應(yīng)的源角色tag。對于Egress設(shè)備而言,采用認(rèn)證的方式配置RBACL的方法可以如圖8所示,包括以下步驟步驟801 =Egress設(shè)備接收資源側(cè)設(shè)備的認(rèn)證請求。該認(rèn)證請求可以是資源側(cè)設(shè)備直接發(fā)送來的,也可以是資源側(cè)設(shè)備通過普通設(shè)備發(fā)送來的。步驟802 =Egress設(shè)備將認(rèn)證請求轉(zhuǎn)發(fā)給接入認(rèn)證服務(wù)器。步驟803 接入認(rèn)證服務(wù)器在發(fā)送認(rèn)證請求的服務(wù)器通過認(rèn)證后,將通過認(rèn)證的資源側(cè)設(shè)備的角色信息發(fā)送給Egress設(shè)備。步驟804 =Egress設(shè)備將認(rèn)證請求的源地址信息與該角色信息之間的對應(yīng)關(guān)系下發(fā)到硬件層面。該源地址信息與角色信息之間的對應(yīng)關(guān)系之所以下發(fā)到硬件層面,是為了 Egress 設(shè)備后續(xù)對報文進(jìn)行接入控制時,根據(jù)接收到的報文的目的地址信息查找該對應(yīng)關(guān)系從而確定對應(yīng)的目的角色,該部分內(nèi)容將在后續(xù)描述中涉及。另外,該源地址信息與該角色信息之間的對應(yīng)關(guān)系可以存儲到硬件表項(xiàng)中,例如二層轉(zhuǎn)發(fā)表或三層轉(zhuǎn)發(fā)表等,該角色信息在表項(xiàng)中的區(qū)域不影響其它轉(zhuǎn)發(fā)功能,含義唯一, 空間專用,從而避免功能干擾。步驟805 =Egress設(shè)備向接入認(rèn)證服務(wù)器請求該角色信息作為目的角色的基于角色的控制策略。步驟806 接入認(rèn)證服務(wù)器向Egress設(shè)備下發(fā)以該角色信息作為目的角色的基于角色的控制策略。通常,在接入認(rèn)證服務(wù)器中會預(yù)先配置有所有基于角色的控制策略,當(dāng)接收到步驟805的請求后,會將所有以該角色信息為目的角色的基于角色的控制策略下發(fā)給Egress 設(shè)備,該基于角色的控制策略中各表項(xiàng)的內(nèi)容包含源角色信息、目的角色信息和接入控制處理方式(允許轉(zhuǎn)發(fā)、拒絕轉(zhuǎn)發(fā)、轉(zhuǎn)發(fā)速率限制、鏡像、重定向、優(yōu)先級重標(biāo)記、統(tǒng)計、進(jìn)一步匹配其它報文字段等接入控制處理方式)。步驟807 =Egress設(shè)備基于角色的控制策略中的源角色信息替換為對應(yīng)的源角色 tag后,將RBACL下發(fā)至硬件層面。由于此時下發(fā)至硬件層面的RBACL中包含的源角色tag,即便用戶設(shè)備的地址發(fā)生變化,但由于用戶設(shè)備的角色信息,進(jìn)而源角色tag不變,因此,該RBACL保持不變,因此用戶設(shè)備的地址發(fā)生的變化不會對轉(zhuǎn)發(fā)平面產(chǎn)生任何沖擊。另外,該RBACL的下發(fā)可以基于出端口,也可以基于全局。下面對硬件層面在報文轉(zhuǎn)發(fā)過程中實(shí)現(xiàn)的接入控制進(jìn)行具體描述。對于hgress設(shè)備,分為hgress功能和轉(zhuǎn)發(fā)處理功能。其中,hgress功能為 將源角色tag作為數(shù)據(jù)報文的內(nèi)層VLAN標(biāo)簽插入數(shù)據(jù)報文;具體包括接收到來自用戶設(shè)備的數(shù)據(jù)報文后,根據(jù)該數(shù)據(jù)報文的來源信息確定源角色tag,將該源角色tag作為該數(shù)據(jù)報文的內(nèi)層VLAN標(biāo)簽插入數(shù)據(jù)報文中后進(jìn)行轉(zhuǎn)發(fā)。轉(zhuǎn)發(fā)處理功能為根據(jù)hgress設(shè)備所處的網(wǎng)絡(luò),如果處于二層網(wǎng)絡(luò),則進(jìn)行二層轉(zhuǎn)發(fā)處理,如果處于三層網(wǎng)絡(luò)則進(jìn)行三層轉(zhuǎn)發(fā)處理。具體二層和三層轉(zhuǎn)發(fā)過程在后續(xù)過程中進(jìn)行描述。在Egress設(shè)備中對數(shù)據(jù)報文插入的源角色tag是與用戶設(shè)備的角色相對應(yīng)的, 其中用戶設(shè)備可以是實(shí)際的網(wǎng)絡(luò)實(shí)體,也可以是邏輯實(shí)體,例如一個網(wǎng)絡(luò)設(shè)備中的應(yīng)用協(xié)議,針對不同的應(yīng)用協(xié)議可以設(shè)置不同的角色,對應(yīng)不同的源角色tag。digress設(shè)備插入源角色tag可以在入端口處接收到該數(shù)據(jù)報文時執(zhí)行,也可以在出端口處轉(zhuǎn)發(fā)該數(shù)據(jù)報文時執(zhí)行,也可以在接收到數(shù)據(jù)報文之后且轉(zhuǎn)發(fā)該數(shù)據(jù)報文之前的任意時刻執(zhí)行,在下面的描述中均以在入端口處接收到數(shù)據(jù)報文時插入源角色tag為例。下面分別針對上述的四種應(yīng)用場景,對hgress設(shè)備對數(shù)據(jù)報文的處理過程進(jìn)行描述。對于圖2所示的第一種應(yīng)用場景,hgress設(shè)備接收到的是不包含標(biāo)簽的數(shù)據(jù)報文,記為imtag的數(shù)據(jù)報文。hgress設(shè)備接收到該數(shù)據(jù)報文后,根據(jù)入端口或acl確定源角色tag,并確定對應(yīng)的外層VLAN標(biāo)簽(Vtag),將源角色tag作為內(nèi)層VLAN標(biāo)簽,將Vtag 作為外層VLAN標(biāo)簽插入該數(shù)據(jù)報文(當(dāng)然,如果該出端口的同一 VLAN內(nèi)的流量中不需要插入源角色tag的過路報文,例如CPU發(fā)出的報文或者確定入端口沒有設(shè)置對應(yīng)的源角色 tag,則不執(zhí)行插入源角色tag的操作,只進(jìn)行執(zhí)行Vtag的插入,后續(xù)實(shí)例中也如此,不再贅述)O需要說明的是,digress設(shè)備確定源角色tag和Vtag,可以根據(jù)入端口來確定,也可以根據(jù)入端口處設(shè)置的acl確定。例如可以預(yù)先將報文源地址信息或協(xié)議號等特征對應(yīng)的源角色tag設(shè)置在acl中,接收到數(shù)據(jù)報文后,通過查找acl便可以確定對應(yīng)的源角色 tag。對于中間設(shè)備、Egress設(shè)備也同樣如此,在以下的描述中不再一一贅述,均以通過入端口確定為例進(jìn)行描述。 另外,Vtag的確定是用于轉(zhuǎn)發(fā)報文的,這是現(xiàn)有技術(shù)的內(nèi)容,本發(fā)明并沒有對該部分內(nèi)容進(jìn)行變更,在確定Vtag后可以將該Vtag插入數(shù)據(jù)報文,也可以不插入數(shù)據(jù)報文,本發(fā)明并不做特別限制,在本發(fā)明的實(shí)施例中統(tǒng)一按照插入Vtag為例進(jìn)行描述。Ingress設(shè)備根據(jù)Vtag和報文的目的MAC地址查找二層轉(zhuǎn)發(fā)表確定出端口,將已經(jīng)插入Vtag和源角色tag的數(shù)據(jù)報文通過確定的出端口進(jìn)行轉(zhuǎn)發(fā)。如果出端口上設(shè)置了 Vtag剝離,則在轉(zhuǎn)發(fā)該數(shù)據(jù)報文之前,剝離該數(shù)據(jù)報文的Vtag后通過確定的出端口進(jìn)行轉(zhuǎn)發(fā),此時轉(zhuǎn)發(fā)的報文僅攜帶源角色tag。對于圖3所示的第二種應(yīng)用場景,Ingress設(shè)備接收到的是包含Vtag的數(shù)據(jù)報文, 根據(jù)該數(shù)據(jù)報文的源地址信息查找源地址信息與源角色tag之間的對應(yīng)關(guān)系,確定該源地址信息對應(yīng)的源角色tag,將該源角色tag作為內(nèi)層VLAN標(biāo)簽插入該數(shù)據(jù)報文。Ingress設(shè)備根據(jù)Vtag和報文的目的MAC地址查找二層轉(zhuǎn)發(fā)表確定出端口,將攜帶了 Vtag和源角色tag的數(shù)據(jù)報文通過確定的出端口進(jìn)行轉(zhuǎn)發(fā)。如果出端口上設(shè)置了 Vtag剝離,則在轉(zhuǎn)發(fā)該數(shù)據(jù)報文之前,剝離該數(shù)據(jù)報文的Vtag后通過確定的出端口進(jìn)行轉(zhuǎn)發(fā),此時轉(zhuǎn)發(fā)的報文僅攜帶源角色tag。對于圖4所示的第三種應(yīng)用場景,digress設(shè)備接收到的是imtag的數(shù)據(jù)報文。 Egress設(shè)備接收到該數(shù)據(jù)報文后,根據(jù)入端口查找入端口與源角色tag之間的對應(yīng)關(guān)系, 確定該入端口對應(yīng)的源角色tag,并確定入端口對應(yīng)的Vtag,將源角色tag作為內(nèi)層VLAN 標(biāo)簽,將Vtag作為外層VLAN標(biāo)簽插入該數(shù)據(jù)報文。在hgress設(shè)備根據(jù)Vtag和目的IP地址查找三層轉(zhuǎn)發(fā)表確定出端口,對Vtag、源 MAC地址和目的MAC進(jìn)行替換后通過確定出端口進(jìn)行轉(zhuǎn)發(fā),此時轉(zhuǎn)發(fā)的報文攜帶Vtag和源角色tag。如果出端口上設(shè)置了 Vtag剝離,則在轉(zhuǎn)發(fā)該數(shù)據(jù)報文之前,剝離該數(shù)據(jù)報文的 Vtag(替換后的Vtag)后通過確定的出端口進(jìn)行轉(zhuǎn)發(fā),此時轉(zhuǎn)發(fā)的報文僅攜帶源角色tag。對于圖5所示的第四種應(yīng)用場景,Ingress設(shè)備接收到的是包含Vtag的數(shù)據(jù)報文, 根據(jù)該數(shù)據(jù)報文的源地址信息查找源地址信息與源角色tag之間的對應(yīng)關(guān)系,確定該源地址信息對應(yīng)的源角色tag,將該源角色tag作為內(nèi)層VLAN標(biāo)簽插入該數(shù)據(jù)報文。digress設(shè)備根據(jù)Vtag和目的IP地址查找三層轉(zhuǎn)發(fā)表確定出端口,對Vtag、源 MAC地址和目的MAC進(jìn)行替換后通過確定出端口進(jìn)行轉(zhuǎn)發(fā),此時轉(zhuǎn)發(fā)的報文攜帶Vtag和源角色tag。如果出端口上設(shè)置了 Vtag剝離,則在轉(zhuǎn)發(fā)該數(shù)據(jù)報文之前,剝離該數(shù)據(jù)報文的 Vtag(替換后的Vtag)后通過確定的出端口進(jìn)行轉(zhuǎn)發(fā),此時轉(zhuǎn)發(fā)的報文僅攜帶源角色tag。在上述hgress設(shè)備的處理過程中,源角色tag作為內(nèi)層VLAN標(biāo)簽插入報文時, 該內(nèi)層VLAN標(biāo)簽的標(biāo)簽協(xié)議標(biāo)識(TPID,Tag Protocol Identifier)采用非0x8100的一個設(shè)定值來標(biāo)識該內(nèi)層VLAN標(biāo)簽為源角色tag。源角色tag的TPID可配置,全局統(tǒng)一。需要說明的是,在某些情況(例如CPU發(fā)出的數(shù)據(jù)報文或入端口處設(shè)置不插入源角色tag的情況)下對接收到的數(shù)據(jù)報文并不需要插入源角色tag,對于這樣的數(shù)據(jù)報文如果與上述插入了源角色tag的報文從同一出端口轉(zhuǎn)發(fā),則保持各數(shù)據(jù)報文的格式,不相互干擾。對于中間設(shè)備,同樣具備中間設(shè)備功能和轉(zhuǎn)發(fā)處理功能。其中,中間設(shè)備功能為 接收到數(shù)據(jù)報文后,保持對報文進(jìn)行二層或三層轉(zhuǎn)發(fā)的過程中,對作為內(nèi)層VLAN標(biāo)簽的源角色tag保持不變。即如果通過內(nèi)層VLAN標(biāo)簽的TPID識別出該內(nèi)層VLAN標(biāo)簽為源角色 tag,則保持內(nèi)層VLAN標(biāo)簽不變。轉(zhuǎn)發(fā)處理功能與hgress設(shè)備的轉(zhuǎn)發(fā)處理功能相同,也可以為二層轉(zhuǎn)發(fā)處理或三層轉(zhuǎn)發(fā)處理。對于圖2所示的第一種應(yīng)用場景,中間設(shè)備接收到的是僅攜帶源角色tag的數(shù)據(jù)報文,確定入端口對應(yīng)的VtagJf Vtag作為外層VLAN標(biāo)簽插入該數(shù)據(jù)報文;根據(jù)Vtag和報文的目的MAC地址查找二層轉(zhuǎn)發(fā)表確定出端口,將該數(shù)據(jù)報文通過確定的出端口進(jìn)行轉(zhuǎn)發(fā)。如果出端口上設(shè)置了 Vtag剝離,則在轉(zhuǎn)發(fā)該數(shù)據(jù)報文之前,剝離該數(shù)據(jù)報文的Vtag后通過確定的出端口進(jìn)行轉(zhuǎn)發(fā),此時轉(zhuǎn)發(fā)的報文僅攜帶源角色tag。對于圖3所示的第二種應(yīng)用場景,中間設(shè)備接收到的是包含Vtag和源角色tag的數(shù)據(jù)報文,根據(jù)Vtag和報文的目的MAC地址查找二層轉(zhuǎn)發(fā)表確定出端口,將攜帶了 Vtag和源角色tag的數(shù)據(jù)報文通過確定的出端口進(jìn)行轉(zhuǎn)發(fā)。如果出端口上設(shè)置了 Vtag剝離,則在轉(zhuǎn)發(fā)該數(shù)據(jù)報文之前,剝離該數(shù)據(jù)報文的Vtag后通過確定的出端口進(jìn)行轉(zhuǎn)發(fā),此時轉(zhuǎn)發(fā)的報文僅攜帶源角色tag。
10
對于圖4所示的第三種應(yīng)用場景,中間設(shè)備接收到的是僅攜帶源角色tag的數(shù)據(jù)報文,確定入端口對應(yīng)的Vtag,將Vtag作為外層VLAN標(biāo)簽插入該數(shù)據(jù)報文;根據(jù)Vtag和目的IP地址查找三層轉(zhuǎn)發(fā)表確定出端口,對Vtag、源MAC地址和目的MAC進(jìn)行替換后通過確定出端口進(jìn)行轉(zhuǎn)發(fā),此時轉(zhuǎn)發(fā)的報文攜帶Vtag和源角色tag。如果出端口上設(shè)置了 Vtag 剝離,則在轉(zhuǎn)發(fā)該數(shù)據(jù)報文之前,剝離該數(shù)據(jù)報文的Vtag (替換后的Vtag)后通過確定的出端口進(jìn)行轉(zhuǎn)發(fā),此時轉(zhuǎn)發(fā)的報文僅攜帶源角色tag。對于圖5所示的第四種應(yīng)用場景,中間設(shè)備接收到的是包含Vtag和源角色tag的數(shù)據(jù)報文,根據(jù)Vtag和目的IP地址查找三層轉(zhuǎn)發(fā)表確定出端口,對Vtag、源MAC地址和目的MAC進(jìn)行替換后通過確定出端口進(jìn)行轉(zhuǎn)發(fā),此時轉(zhuǎn)發(fā)的報文攜帶Vtag和源角色tag。如果出端口上設(shè)置了 Vtag剝離,則在轉(zhuǎn)發(fā)該數(shù)據(jù)報文之前,剝離該數(shù)據(jù)報文的Vtag(替換后的Vtag)后通過確定的出端口進(jìn)行轉(zhuǎn)發(fā),此時轉(zhuǎn)發(fā)的報文僅攜帶源角色tag。對于Egress設(shè)備,具備Egress功能和轉(zhuǎn)發(fā)處理功能。其中,Egress功能為從數(shù)據(jù)報文的內(nèi)層VLAN標(biāo)簽中獲取源角色tag,用于對數(shù)據(jù)報文進(jìn)行基于角色的接入控制。具體包括接收到中間設(shè)備發(fā)送來的數(shù)據(jù)報文時,查找圖8中804下發(fā)的對應(yīng)關(guān)系,確定該數(shù)據(jù)報文的目的地址(如目的IP地址)對應(yīng)的目的角色信息;從數(shù)據(jù)報文的內(nèi)層VLAN標(biāo)簽中獲取源角色tag,利用源角色tag和目的角色信息對BRACL進(jìn)行匹配,根據(jù)匹配的結(jié)果對該數(shù)據(jù)報文進(jìn)行接入控制處理。由于在圖8的步驟807中,Egress設(shè)備向硬件層面下發(fā)了 RBACL,該RBACL的表項(xiàng)中包含源角色tag、目的角色信息和接入控制處理方式。在利用獲取的源角色tag和目的角色信息對BRACL進(jìn)行匹配后,如果存在匹配的表項(xiàng),則可以確定對應(yīng)的接入控制處理方式, 例如允許轉(zhuǎn)發(fā)、拒絕轉(zhuǎn)發(fā)、轉(zhuǎn)發(fā)速率限制、鏡像、重定向、優(yōu)先級重標(biāo)記、統(tǒng)計等接入控制處理方式。另外,在Egress設(shè)備中除了進(jìn)行上述接入控制過程之外,還會實(shí)現(xiàn)轉(zhuǎn)發(fā)處理功能,即在設(shè)備內(nèi)部進(jìn)行二層或三層轉(zhuǎn)發(fā)處理,Egress設(shè)備的轉(zhuǎn)發(fā)處理功能與hgress設(shè)備和中間設(shè)備稍有不同。下面針對上述四種應(yīng)用場景對Egress設(shè)備內(nèi)部的處理過程進(jìn)行詳細(xì)描述。對于圖2所示的第一種應(yīng)用場景,Egress設(shè)備接收到的是包含源角色tag和 Vtag,或者僅攜帶源角色tag的數(shù)據(jù)報文。如果數(shù)據(jù)報文僅攜帶源角色tag,則Egress設(shè)備通過數(shù)據(jù)報文內(nèi)層VLAN標(biāo)簽的 TPID類型確定出該內(nèi)層VLAN標(biāo)簽為源角色tag時,獲取該源角色tag。同時基于入端口確定Vtag,將Vtag作為外層VLAN標(biāo)簽插入該數(shù)據(jù)報文。利用Vtag和目的MAC地址查找二層轉(zhuǎn)發(fā)表確定出端口。確定該數(shù)據(jù)報文的目的地址對應(yīng)的目的角色信息;利用源角色tag 和目的角色信息對BRACL進(jìn)行匹配,根據(jù)匹配的結(jié)果對該數(shù)據(jù)報文進(jìn)行接入控制處理。例如,如果匹配結(jié)果是允許轉(zhuǎn)發(fā),則數(shù)據(jù)報文的所有標(biāo)簽后通過確定的出端口進(jìn)行轉(zhuǎn)發(fā)。如果匹配結(jié)果是拒絕轉(zhuǎn)發(fā),則丟棄該數(shù)據(jù)報文。在通過出端口進(jìn)行轉(zhuǎn)發(fā)時,剝離源角色tag和 Vtag,即轉(zhuǎn)發(fā)出去的報文是imtag的數(shù)據(jù)報文。其中,上述對BRACL進(jìn)行匹配的操作可以在查找二層或三層轉(zhuǎn)發(fā)表確定出端口的操作之前,也可以在之后。如果Egress設(shè)備接收到的報文攜帶源角色tag和Vtag,與對僅攜帶源角色tag的數(shù)據(jù)報文的處理方式不同的是,無需基于入端口確定Vtag,其它處理方式與對僅攜帶源角色tag的數(shù)據(jù)報文的處理方式相同。對于圖3所示的第二種應(yīng)用場景,其處理方式與第一種應(yīng)用場景基本相同,只是在出端口處僅剝離源角色tag,即通過出端口轉(zhuǎn)發(fā)的數(shù)據(jù)報文攜帶Vtag。對于圖4所示的第三種應(yīng)用場景,如果Egress設(shè)備接收到的數(shù)據(jù)報文僅攜帶源角色tag,則通過數(shù)據(jù)報文內(nèi)層VLAN標(biāo)簽的TPID類型確定出該內(nèi)層VLAN標(biāo)簽為源角色tag 時,獲取該源角色tag。同時基于入端口確定VtagJf Vtag作為外層VLAN標(biāo)簽插入該數(shù)據(jù)報文。利用Vtag和目的IP地址查找三層轉(zhuǎn)發(fā)表確定出端口,對Vtag、源MAC地址和目的 MAC進(jìn)行替換。確定該數(shù)據(jù)報文的目的地址對應(yīng)的目的角色信息;利用源角色tag和目的角色信息對BRACL進(jìn)行匹配,根據(jù)匹配的結(jié)果對該數(shù)據(jù)報文進(jìn)行接入控制處理。例如,如果匹配結(jié)果是允許轉(zhuǎn)發(fā),則數(shù)據(jù)報文的所有標(biāo)簽后通過確定的出端口進(jìn)行轉(zhuǎn)發(fā)。如果匹配結(jié)果是拒絕轉(zhuǎn)發(fā),則丟棄該數(shù)據(jù)報文。在通過出端口進(jìn)行轉(zhuǎn)發(fā)時,剝離源角色tag和替換后的 Vtag,即轉(zhuǎn)發(fā)出去的報文是imtag的數(shù)據(jù)報文。如果Egress設(shè)備接收到的報文攜帶源角色tag和Vtag,與對僅攜帶源角色tag的數(shù)據(jù)報文的處理方式不同的是,無需基于入端口確定Vtag,其它處理方式與對僅攜帶源角色tag的數(shù)據(jù)報文的處理方式相同。對于圖5所示的第四種應(yīng)用場景,其處理方式與第三種應(yīng)用場景基本相同,只是在出端口處僅剝離源角色tag,即通過出端口轉(zhuǎn)發(fā)的數(shù)據(jù)報文攜帶Vtag(進(jìn)行替換處理后的 Vtag)。在本發(fā)明提供的上述方法中,各設(shè)備內(nèi)部對內(nèi)層VLAN標(biāo)簽和外層VLAN標(biāo)簽的處理過程互不產(chǎn)生影響,并且,在插入作為內(nèi)層VLAN標(biāo)簽的源角色tag后,不會影響設(shè)備對報文的外層VLAN標(biāo)簽和其它報文字段的匹配和處理。另外,上述方法中均以單播的數(shù)據(jù)報文為例進(jìn)行描述,需要說明的是,本發(fā)明對于源角色tag的處理方式同樣支持組播,Ingress設(shè)備、中間設(shè)備或Egress設(shè)備在對報文進(jìn)行三層或二層復(fù)制后,復(fù)制的報文同樣攜帶與組播源報文相同的源角色tag。上述方法除了應(yīng)用于網(wǎng)絡(luò)設(shè)備的普通端口之外,也同樣可以應(yīng)用于CPU端口,CPU 端口的邏輯處理與普通端口相同。在本發(fā)明提供的方法中,可以將hgress功能、中間設(shè)備功能和Egress功能集成在一個轉(zhuǎn)發(fā)芯片中,即hgress設(shè)備、中間設(shè)備和Egress設(shè)備都可以采用該通用的轉(zhuǎn)發(fā)芯片,只是通過軟件配置使能不同的功能。該通用的轉(zhuǎn)發(fā)芯片確定使能hgress功能時,將源角色tag作為數(shù)據(jù)報文的內(nèi)層虛擬局域網(wǎng)VLAN插入數(shù)據(jù)報文;確定使能中間設(shè)備功能時, 在轉(zhuǎn)發(fā)數(shù)據(jù)報文的過程中,對作為內(nèi)層VLAN標(biāo)簽的源角色tag不做處理;確定使能Egress 功能時,從數(shù)據(jù)報文的內(nèi)層VLAN標(biāo)簽中獲取源角色tag。該通用芯片中使能hgress功能和中間設(shè)備功能時,同時會使能上述hgress設(shè)備和中間設(shè)備實(shí)現(xiàn)的轉(zhuǎn)發(fā)處理功能;使能Egress功能時,同時會使能上述Egress設(shè)備實(shí)現(xiàn)的轉(zhuǎn)發(fā)處理功能,在此不再重復(fù)贅述。以上是對本發(fā)明所提供的方法進(jìn)行的詳細(xì)描述,下面對本發(fā)明所提供的Egress 設(shè)備、中間設(shè)備和Egress設(shè)備進(jìn)行詳細(xì)描述。圖9為本發(fā)明提供的digress設(shè)備的結(jié)構(gòu)示意圖,如圖9所示,該digress設(shè)備可以包括報文接收單元901、角色標(biāo)簽確定單元902、角色標(biāo)簽插入單元903和轉(zhuǎn)發(fā)處理單元 904。報文接收單元901,用于接收來自用戶設(shè)備的數(shù)據(jù)報文。角色標(biāo)簽確定單元902,用于根據(jù)數(shù)據(jù)報文的來源信息確定源角色標(biāo)簽tag ;其中源角色tag對應(yīng)用戶設(shè)備的角色。角色標(biāo)簽插入單元903,用于將源角色tag作為數(shù)據(jù)報文的內(nèi)層VLAN標(biāo)簽插入數(shù)據(jù)報文。轉(zhuǎn)發(fā)處理單元904,用于轉(zhuǎn)發(fā)角色標(biāo)簽插入單元903處理后的數(shù)據(jù)報文。上述報文接收單元901、角色標(biāo)簽確定單元902、角色標(biāo)簽插入單元903和轉(zhuǎn)發(fā)處理單元904均為硬件層面的單元,可以通過轉(zhuǎn)發(fā)芯片實(shí)現(xiàn)。另外,該digress設(shè)備還可以包括認(rèn)證處理單元911和第一標(biāo)簽配置單元912來進(jìn)行硬件層面的相關(guān)信息配置。認(rèn)證處理單元911,用于將來自用戶設(shè)備的認(rèn)證請求轉(zhuǎn)發(fā)給接入認(rèn)證服務(wù)器。第一標(biāo)簽配置單元912,用于獲取接入認(rèn)證服務(wù)器下發(fā)的用戶設(shè)備的角色信息,并將接收認(rèn)證請求的入端口與用戶設(shè)備的角色信息對應(yīng)的源角色tag之間的對應(yīng)關(guān)系下發(fā)給硬件層面。此時,上述角色標(biāo)簽確定單元902根據(jù)下發(fā)給硬件層面的對應(yīng)關(guān)系,執(zhí)行根據(jù)數(shù)據(jù)報文的來源信息確定源角色標(biāo)簽tag的操作;其中來源信息為接收數(shù)據(jù)報文的入端口。根據(jù)網(wǎng)絡(luò)架構(gòu)的不同,如果digress設(shè)備與用戶設(shè)備之間存在普通設(shè)備,且通過普通設(shè)備與接入認(rèn)證服務(wù)器進(jìn)行交互,則hgress設(shè)備可以采用另一種方式,如圖10所示, 利用角色獲取單元913和第二標(biāo)簽配置單元914來進(jìn)行硬件層面的相關(guān)信息配置。角色獲取單元913,用于獲取普通設(shè)備發(fā)送來的用戶設(shè)備的角色信息與認(rèn)證請求的源地址信息或協(xié)議號之間的對應(yīng)關(guān)系;其中用戶設(shè)備的角色信息是普通設(shè)備將用戶設(shè)備的認(rèn)證請求轉(zhuǎn)發(fā)至接入認(rèn)證服務(wù)器后,由接入認(rèn)證服務(wù)器下發(fā)給普通設(shè)備的。第二標(biāo)簽配置單元914,用于將用戶設(shè)備的角色信息對應(yīng)的源角色tag與源地址信息或協(xié)議號之間的對應(yīng)關(guān)系下發(fā)給硬件層面。此時,上述角色標(biāo)簽確定單元902根據(jù)下發(fā)給硬件層面的對應(yīng)關(guān)系,執(zhí)行根據(jù)數(shù)據(jù)報文的來源信息確定源角色標(biāo)簽tag的操作;其中來源信息為數(shù)據(jù)報文的源地址信息或協(xié)議號。上述的認(rèn)證處理單元911、第一標(biāo)簽配置單元912、角色獲取單元913和第二標(biāo)簽配置單元914是軟件控制層面的單元。具體地,角色標(biāo)簽插入單元903將源角色tag作為數(shù)據(jù)報文的內(nèi)層VLAN標(biāo)簽插入數(shù)據(jù)報文時,將內(nèi)層VLAN標(biāo)簽的標(biāo)簽協(xié)議標(biāo)識TPID設(shè)置為非0X8100的一個設(shè)定值。其中,digress設(shè)備中的轉(zhuǎn)發(fā)處理單元904可以具體包括外層標(biāo)簽插入子單元 941、轉(zhuǎn)發(fā)表查找子單元942和出口處理子單元943。外層標(biāo)簽插入子單元941,用于在報文接收單元901接收到的數(shù)據(jù)報文中沒有包含虛擬局域網(wǎng)標(biāo)簽Vtag時,確定數(shù)據(jù)報文的Vtag,并將該Vtag作為外層VLAN標(biāo)簽插入數(shù)據(jù)報文。轉(zhuǎn)發(fā)表查找子單元942,用于利用報文接收單元901接收到的數(shù)據(jù)報文中包含的Vtag和目的地址信息,或者利用外層標(biāo)簽插入子單元941處理后的數(shù)據(jù)報文中包含的Vtag 和目的地址信息,查找二層或三層轉(zhuǎn)發(fā)表確定出端口。出口處理子單元943,用于剝離或者不剝離數(shù)據(jù)報文中攜帶的Vtag后,將攜帶源角色tag的數(shù)據(jù)報文通過確定的出端口進(jìn)行轉(zhuǎn)發(fā)。至于剝離或者不剝離數(shù)據(jù)報文的Vtag 由出端口的具體配置決定。另外,轉(zhuǎn)發(fā)處理單元904進(jìn)行的是三層轉(zhuǎn)發(fā)時,該轉(zhuǎn)發(fā)處理單元還會包含對數(shù)據(jù)報文的Vtag、源MAC和目的MAC進(jìn)行替換的單元,由于該部分是現(xiàn)有協(xié)議中已有的內(nèi)容,在圖中并沒有示出,也不再具體描述。圖11為本發(fā)明提供的Egress設(shè)備的結(jié)構(gòu)示意圖,如圖11所示,該Egress設(shè)備可以包括報文接收單元1101、角色標(biāo)簽獲取單元1102和接入控制單元1103。報文接收單元1101,用于接收來自用戶側(cè)的數(shù)據(jù)報文。角色標(biāo)簽獲取單元1102,用于從數(shù)據(jù)報文中獲取作為內(nèi)層VLAN標(biāo)簽的源角色 tag ;其中源角色tag對應(yīng)發(fā)送數(shù)據(jù)報文的用戶設(shè)備的角色。接入控制單元1103,用于利用源角色tag對數(shù)據(jù)報文進(jìn)行基于角色的接入控制。上述報文接收單元1101、角色標(biāo)簽獲取單元1102和接入控制單元1103是硬件層面的單元,可以采用轉(zhuǎn)發(fā)芯片實(shí)現(xiàn)。其中,接入控制單元1103可以具體包括目的角色確定子單元1131、接入控制匹配子單元1132和接入控制處理子單元1133。目的角色確定子單元1131,用于確定數(shù)據(jù)報文的目的角色信息。接入控制匹配子單元1132,用于根據(jù)源角色tag和目的角色信息匹配基于角色的接入控制列表RBACL。接入控制處理子單元1133,用于根據(jù)接入控制匹配子單元1132的匹配結(jié)果對數(shù)據(jù)報文進(jìn)行接入控制處理。另外,該Egress設(shè)備還包括認(rèn)證處理單元1111、目的角色配置單元1112、控制列表獲取單元1113和控制列表配置單元1114來實(shí)現(xiàn)硬件層面的相關(guān)信息配置。認(rèn)證處理單元1111,用于將來自資源側(cè)設(shè)備的認(rèn)證請求轉(zhuǎn)發(fā)給接入認(rèn)證服務(wù)器, 獲取接入認(rèn)證服務(wù)器下發(fā)的資源側(cè)設(shè)備的角色信息。目的角色配置單元1112,用于將認(rèn)證請求的源地址信息與資源側(cè)設(shè)備的角色信息之間的對應(yīng)關(guān)系下發(fā)到硬件層面??刂屏斜慝@取單元1113,用于從接入認(rèn)證服務(wù)器獲取基于角色的控制策略,該基于角色的控制策略以接入認(rèn)證服務(wù)器下發(fā)的角色信息作為目的角色信息??刂屏斜砼渲脝卧?114,用于將上述基于角色的控制策略中的源角色信息替換為對應(yīng)的源角色tag后得到RBACLJf RBACL下發(fā)到硬件層面。此時,目的角色確定子單元1131根據(jù)下發(fā)到硬件層面的對應(yīng)關(guān)系,確定數(shù)據(jù)報文的目的地址對應(yīng)的目的角色信息。接入控制匹配子單元1132對下發(fā)到硬件準(zhǔn)發(fā)層面的 RBACL執(zhí)行匹配處理。上述的認(rèn)證處理單元1111、目的角色配置單元1112、控制列表獲取單元1113和控制列表配置單元1114是軟件控制平面的單元。更進(jìn)一步地,該Egress設(shè)備還可以包括現(xiàn)有的轉(zhuǎn)發(fā)處理單元1104,該轉(zhuǎn)發(fā)處理單元1104可以具體包括外層標(biāo)簽插入子單元1141、轉(zhuǎn)發(fā)表查找子單元1142和出口處理子單元1143。外層標(biāo)簽插入子單元1141,用于在報文接收單元1101接收到的數(shù)據(jù)報文中沒有包含虛擬局域網(wǎng)標(biāo)簽Vtag時,確定數(shù)據(jù)報文的的Vtag,并將該Vtag作為外層VLAN標(biāo)簽插入數(shù)據(jù)報文。轉(zhuǎn)發(fā)表查找子單元1142,用于利用報文接收單元1101接收到的數(shù)據(jù)報文中包含的Vtag和目的地址信息,或者利用外層標(biāo)簽插入子單元1141處理后的數(shù)據(jù)報文中包含的 Vtag和目的地址信息,查找二層或三層轉(zhuǎn)發(fā)表確定出端口。出口處理子單元1143,用于剝離數(shù)據(jù)報文的源角色tag,剝離或者不剝離數(shù)據(jù)報文中攜帶的Vtag后,在接入控制單元1103確定需要轉(zhuǎn)發(fā)數(shù)據(jù)報文時,將數(shù)據(jù)報文通過確定的出端口進(jìn)行轉(zhuǎn)發(fā)。另外,轉(zhuǎn)發(fā)處理單元1104進(jìn)行的是三層轉(zhuǎn)發(fā)時,該轉(zhuǎn)發(fā)處理單元1104還會包含 對數(shù)據(jù)報文的Vtag、源MAC和目的MAC進(jìn)行替換的單元,由于該部分是現(xiàn)有協(xié)議中已有的內(nèi)容,在圖中并沒有示出,也不再具體描述。圖12為本發(fā)明提供的中間設(shè)備的結(jié)構(gòu)示意圖,如圖12所示,該中間設(shè)備具體包括報文接收單元1201、標(biāo)簽識別單元1202和轉(zhuǎn)發(fā)處理單元1203。報文接收單元1201,用于接收來自hgress設(shè)備或其它中間設(shè)備的數(shù)據(jù)報文。標(biāo)簽識別單元1202,用于對數(shù)據(jù)報文的內(nèi)層VLAN標(biāo)簽進(jìn)行識別。轉(zhuǎn)發(fā)處理單元1203,用于在對數(shù)據(jù)報文的轉(zhuǎn)發(fā)過程中,如果標(biāo)簽識別單元1202識別出內(nèi)層VLAN標(biāo)簽為源角色tag,則保持內(nèi)層VLAN標(biāo)簽不變。其中源角色tag對應(yīng)發(fā)送數(shù)據(jù)報文的用戶設(shè)備的角色。其中,標(biāo)簽識別單元1202如果解析出內(nèi)層VLAN標(biāo)簽的標(biāo)簽協(xié)議標(biāo)識TPID為非 0X8100的一個設(shè)定值,則識別出內(nèi)層VLAN標(biāo)簽為源角色tag。上述轉(zhuǎn)發(fā)處理單元1203可以具體包括外層標(biāo)簽插入子單元1231、轉(zhuǎn)發(fā)表查找子單元1232和出口處理子單元1233。外層標(biāo)簽插入子單元1231,用于在報文接收單元1201接收到的數(shù)據(jù)報文中沒有包含虛擬局域網(wǎng)標(biāo)簽Vtag時,確定數(shù)據(jù)報文的Vtag,并將該Vtag作為外層VLAN標(biāo)簽插入數(shù)據(jù)報文。轉(zhuǎn)發(fā)表查找子單元1232,用于利用報文接收單元1201接收到的數(shù)據(jù)報文中包含的Vtag和目的地址信息,或者利用外層標(biāo)簽插入子單元1231處理后的數(shù)據(jù)報文中包含的 Vtag和目的地址信息,查找二層或三層轉(zhuǎn)發(fā)表確定出端口。出口處理子單元1233,用于剝離或者不剝離數(shù)據(jù)報文中攜帶的Vtag后,將攜帶源角色tag數(shù)據(jù)報文通過確定的出端口進(jìn)行轉(zhuǎn)發(fā)。另外,轉(zhuǎn)發(fā)處理單元1203進(jìn)行的是三層轉(zhuǎn)發(fā)時,該轉(zhuǎn)發(fā)處理單元1203還會包含 對數(shù)據(jù)報文的Vtag、源MAC和目的MAC進(jìn)行替換的單元,由于該部分是現(xiàn)有協(xié)議中已有的內(nèi)容,在圖中并沒有示出,也不再具體描述。上述報文接收單元1201、標(biāo)簽識別單元1202和轉(zhuǎn)發(fā)處理單元1203均是中間設(shè)備中硬件層面的單元,可以通過轉(zhuǎn)發(fā)芯片的方式實(shí)現(xiàn)。另外,需要說明的是,可以將上述digress設(shè)備、中間設(shè)備和Egress設(shè)備中硬件層面的各單元集成在一個轉(zhuǎn)發(fā)芯片上實(shí)現(xiàn),當(dāng)該轉(zhuǎn)發(fā)芯片確定自身需要完成Egress設(shè)備的功能時,執(zhí)行Egress設(shè)備中硬件層面上各單元的功能;當(dāng)該轉(zhuǎn)發(fā)芯片確定自身需要完成中間設(shè)備的功能時,執(zhí)行中間設(shè)備中硬件層面上各單元的功能;當(dāng)該轉(zhuǎn)發(fā)芯片確定自身需要完成Egress設(shè)備的功能時,執(zhí)行Egress設(shè)備中硬件層面上各單元的功能。圖13為本發(fā)明提供的通用轉(zhuǎn)發(fā)芯片的結(jié)構(gòu)示意圖,如圖13所示,該轉(zhuǎn)發(fā)芯片可以包括Jngress功能模塊1301、中間設(shè)備功能模塊1302和Egress功能模塊1303。Ingress功能模塊1301,用于在被使能時,將源角色tag作為數(shù)據(jù)報文的內(nèi)層VLAN 插入數(shù)據(jù)報文。中間設(shè)備功能模塊1302,用于在被使能時,在轉(zhuǎn)發(fā)數(shù)據(jù)報文的過程中,對作為內(nèi)層 VLAN標(biāo)簽的源角色tag保持不變。Egress功能模塊1303,用于在被使能時,從數(shù)據(jù)報文中獲取作為內(nèi)層VLAN標(biāo)簽的源角色tag,用于對數(shù)據(jù)報文進(jìn)行基于角色的接入控制。其中,Egress功能模塊1303可以具體包括源角色獲取子模塊1331和接入控制子模塊1332。源角色獲取子模塊1331,用于從數(shù)據(jù)報文的內(nèi)層VLAN標(biāo)簽中獲取源角色tag并提供給接入控制子模塊1332。接入控制子模塊1332,用于確定數(shù)據(jù)報文的目的角色信息,根據(jù)源角色tag和目的角色信息匹配表RBACL,按照匹配結(jié)果對數(shù)據(jù)報文進(jìn)行接入控制處理。其中,上述內(nèi)層VLAN標(biāo)簽的標(biāo)簽協(xié)議標(biāo)識TPID為非0X8100的一個設(shè)定值。更進(jìn)一步地,該轉(zhuǎn)發(fā)芯片還可以包括第一轉(zhuǎn)發(fā)功能模塊1304,在digress功能模塊1301被使能或中間設(shè)備功能模塊1302被使能時,第一轉(zhuǎn)發(fā)功能模塊1304被使能。第一轉(zhuǎn)發(fā)功能模塊1304的結(jié)構(gòu)與圖9中的轉(zhuǎn)發(fā)處理單元904以及圖12中的轉(zhuǎn)發(fā)處理單元1203相同,在此不再贅述。另外,該芯片還可以包括第二轉(zhuǎn)發(fā)功能模塊1305,在Egress功能模塊1303被使能時,第二轉(zhuǎn)發(fā)功能模塊1305被使能。該第二轉(zhuǎn)發(fā)功能模塊的結(jié)構(gòu)與圖11中的轉(zhuǎn)發(fā)處理單元相同,在此不再贅述。以上所述僅為本發(fā)明的較佳實(shí)施例而已,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明保護(hù)的范圍之內(nèi)。
權(quán)利要求
1.一種處理源角色信息的方法,其特征在于,該方法包括確定使能hgress功能時,將源角色標(biāo)簽tag作為數(shù)據(jù)報文的內(nèi)層虛擬局域網(wǎng)VLAN插入數(shù)據(jù)報文;確定使能中間設(shè)備功能時,在轉(zhuǎn)發(fā)數(shù)據(jù)報文的過程中,對作為內(nèi)層VLAN標(biāo)簽的源角色 tag保持不變;確定使能Egress功能時,從數(shù)據(jù)報文中獲取作為內(nèi)層VLAN標(biāo)簽的源角色tag,用于對所述數(shù)據(jù)報文進(jìn)行基于角色的接入控制。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,對所述數(shù)據(jù)報文進(jìn)行基于角色的接入控制包括確定所述數(shù)據(jù)報文的目的角色信息,根據(jù)獲取的源角色tag和所述目的角色信息匹配基于角色的接入控制列表RBACL,按照匹配的結(jié)果對所述數(shù)據(jù)報文進(jìn)行接入控制處理。
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述源角色tag作為內(nèi)層VLAN標(biāo)簽時,所述內(nèi)層VLAN標(biāo)簽的標(biāo)簽協(xié)議標(biāo)識TPID為非0X8100的一個設(shè)定值;確定使能中間設(shè)備功能時,如果識別出接收到的數(shù)據(jù)報文的內(nèi)層VLAN標(biāo)簽的TPID為所述設(shè)定值時,對所述數(shù)據(jù)報文的內(nèi)層VLAN標(biāo)簽保持不變;確定使能Egress功能時,識別出接收到的數(shù)據(jù)報文的內(nèi)層VLAN標(biāo)簽的TPID為所述設(shè)定值時,從所述數(shù)據(jù)報文中獲取作為內(nèi)層VLAN標(biāo)簽的源角色tag。
4.根據(jù)權(quán)利要求1、2或3所述的方法,其特征在于,確定使能Egress功能或者確定使能中間設(shè)備功能時,還包括Al、如果接收到的數(shù)據(jù)報文中沒有包含虛擬局域網(wǎng)標(biāo)簽Vtag,則確定該數(shù)據(jù)報文的 Vtag,并將該Vtag作為外層VLAN標(biāo)簽插入數(shù)據(jù)報文,執(zhí)行A2 ;如果接收到的數(shù)據(jù)報文中已經(jīng)包含Vtag,則直接執(zhí)行A2 ;A2、利用數(shù)據(jù)報文包含的Vtag和數(shù)據(jù)報文的目的地址信息查找二層或三層轉(zhuǎn)發(fā)表確定出端口 ;A3、將剝離或不剝離所述Vtag,且攜帶所述源角色tag的數(shù)據(jù)報文通過確定的出端口進(jìn)行轉(zhuǎn)發(fā)。
5.根據(jù)權(quán)利要求1、2或3所述的方法,其特征在于,確定使能Egress功能時,還包括Bi、如果接收到的數(shù)據(jù)報文中沒有包含Vtag,則確定該數(shù)據(jù)報文的Vtag,并將該Vtag作為外層VLAN標(biāo)簽插入數(shù)據(jù)報文,執(zhí)行B2 ;如果接收到的數(shù)據(jù)報文中已經(jīng)包含Vtag,則直接執(zhí)行B2 ;B2、利用數(shù)據(jù)報文包含的Vtag和數(shù)據(jù)報文的目的地址信息查找二層或三層轉(zhuǎn)發(fā)表確定出端口 ;B3、剝離數(shù)據(jù)報文的源角色tag,剝離或不剝離所述Vtag,在所述接入控制處理需要轉(zhuǎn)發(fā)數(shù)據(jù)報文時,通過確定的出端口轉(zhuǎn)發(fā)數(shù)據(jù)報文。
6.一種處理源角色信息的轉(zhuǎn)發(fā)芯片,其特征在于,該轉(zhuǎn)發(fā)芯片包括Jngress功能模塊、中間設(shè)備功能模塊和Egress功能模塊;所述Egress功能模塊,用于在被使能時,將源角色標(biāo)簽tag作為數(shù)據(jù)報文的內(nèi)層虛擬局域網(wǎng)VLAN插入數(shù)據(jù)報文;所述中間設(shè)備功能模塊,用于在被使能時,在轉(zhuǎn)發(fā)數(shù)據(jù)報文的過程中,對作為內(nèi)層VLAN 標(biāo)簽的源角色tag保持不變;所述Egress功能模塊,用于在被使能時,從數(shù)據(jù)報文中獲取作為內(nèi)層VLAN標(biāo)簽的源角色tag,用于對所述數(shù)據(jù)報文進(jìn)行基于角色的接入控制。
7.根據(jù)權(quán)利要求6所述的轉(zhuǎn)發(fā)芯片,其特征在于,所述Egress功能模塊具體包括源角色獲取子模塊和接入控制子模塊;所述源角色獲取子模塊,用于從數(shù)據(jù)報文的內(nèi)層VLAN標(biāo)簽中獲取源角色tag并提供給所述接入控制子模塊;所述接入控制子模塊,用于確定所述數(shù)據(jù)報文的目的角色信息,根據(jù)所述源角色tag 和所述目的角色信息匹配基于角色的接入控制列表RBACL,按照匹配結(jié)果對所述數(shù)據(jù)報文進(jìn)行接入控制處理。
8.根據(jù)權(quán)利要求6所述的轉(zhuǎn)發(fā)芯片,其特征在于,所述內(nèi)層VLAN標(biāo)簽的標(biāo)簽協(xié)議標(biāo)識 TPID為非0X8100的一個設(shè)定值。
9.根據(jù)權(quán)利要求6、7或8所述的轉(zhuǎn)發(fā)芯片,其特征在于,該轉(zhuǎn)發(fā)芯片還包括第一轉(zhuǎn)發(fā)功能模塊,在所述Egress功能模塊被使能或所述中間設(shè)備功能模塊被使能時,第一轉(zhuǎn)發(fā)功能模塊被使能;所述第一轉(zhuǎn)發(fā)功能模塊具體包括第一外層標(biāo)簽插入子單元,用于該轉(zhuǎn)發(fā)芯片接收到的數(shù)據(jù)報文中沒有包含虛擬局域網(wǎng)標(biāo)簽Vtag時,確定所述數(shù)據(jù)報文的Vtag,并將該Vtag作為外層VLAN標(biāo)簽插入所述數(shù)據(jù)報文;第一轉(zhuǎn)發(fā)表查找子單元,用于利用該轉(zhuǎn)發(fā)芯片接收到的數(shù)據(jù)報文中包含的Vtag和目的地址信息,或者利用所述第一外層標(biāo)簽插入子單元處理后的數(shù)據(jù)報文中包含的Vtag和目的地址信息,查找二層或三層轉(zhuǎn)發(fā)表確定出端口 ;第一出口處理子單元,用于剝離或者不剝離數(shù)據(jù)報文中攜帶的Vtag后,將攜帶所述源角色tag的數(shù)據(jù)報文通過確定的出端口進(jìn)行轉(zhuǎn)發(fā)。
10.根據(jù)權(quán)利要求6、7或8所述的轉(zhuǎn)發(fā)芯片,其特征在于,該轉(zhuǎn)發(fā)芯片還包括第二轉(zhuǎn)發(fā)功能模塊,在所述Egress功能模塊被使能時,第二轉(zhuǎn)發(fā)功能模塊被使能;所述第二轉(zhuǎn)發(fā)功能模塊具體包括第二外層標(biāo)簽插入子單元,用于在該轉(zhuǎn)發(fā)芯片接收到的數(shù)據(jù)報文中沒有包含Vtag時, 確定所述數(shù)據(jù)報文的Vtag,并將該Vtag作為外層VLAN標(biāo)簽插入所述數(shù)據(jù)報文;第二轉(zhuǎn)發(fā)表查找子單元,用于利用該轉(zhuǎn)發(fā)芯片接收到的數(shù)據(jù)報文中包含的Vtag和目的地址信息,或者利用所述第二外層標(biāo)簽插入子單元處理后的數(shù)據(jù)報文中包含的Vtag和目的地址信息,查找二層或三層轉(zhuǎn)發(fā)表確定出端口 ;第二出口處理子單元,用于剝離所述數(shù)據(jù)報文的源角色tag,剝離或者不剝離數(shù)據(jù)報文中攜帶的Vtag后,在所述Egress功能模塊確定需要轉(zhuǎn)發(fā)數(shù)據(jù)報文時,將數(shù)據(jù)報文通過確定的出端口進(jìn)行轉(zhuǎn)發(fā)。
全文摘要
本發(fā)明提供了一種處理源角色信息的方法和轉(zhuǎn)發(fā)芯片,使能入口(Ingress)功能時,將源角色tag作為數(shù)據(jù)報文的內(nèi)層虛擬局域網(wǎng)(VLAN)標(biāo)簽插入數(shù)據(jù)報文;使能中間設(shè)備功能時,在轉(zhuǎn)發(fā)數(shù)據(jù)報文時,對數(shù)據(jù)報文中作為內(nèi)層VLAN標(biāo)簽的源角色tag保持不變;使能出口(Egress)功能時,從數(shù)據(jù)報文中獲取作為內(nèi)層VLAN標(biāo)簽的源角色tag從而進(jìn)行基于角色的接入控制。本發(fā)明利用了現(xiàn)有轉(zhuǎn)發(fā)芯片已有的QinQ功能,無需對現(xiàn)有網(wǎng)絡(luò)設(shè)備的功能進(jìn)行較大改動,降低了網(wǎng)絡(luò)的升級成本。同時提供了一種通用的轉(zhuǎn)發(fā)芯片,為上層軟件提供了更加靈活的基礎(chǔ),方便對轉(zhuǎn)發(fā)芯片的管理。
文檔編號H04L12/28GK102263679SQ201010187358
公開日2011年11月30日 申請日期2010年5月24日 優(yōu)先權(quán)日2010年5月24日
發(fā)明者宋玉兵, 楊小朋 申請人:杭州華三通信技術(shù)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點(diǎn)贊!
1
铜鼓县| 桃源县| 丹阳市| 会昌县| 常山县| 吴桥县| 枝江市| 连云港市| 钦州市| 前郭尔| 泽州县| 汉中市| 北川| 承德市| 浮山县| 揭东县| 塘沽区| 昆山市| 昌乐县| 杭州市| 大新县| 巫溪县| 临湘市| 漳浦县| 富蕴县| 台安县| 大田县| 乌拉特前旗| 毕节市| 曲靖市| 响水县| 安西县| 伊金霍洛旗| 张北县| 德兴市| 莱州市| 呼图壁县| 镶黄旗| 瓮安县| 丹东市| 武功县|