亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

標(biāo)簽封裝方法及裝置與流程

文檔序號:11410848閱讀:398來源:國知局
標(biāo)簽封裝方法及裝置與流程

本申請涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,特別涉及一種標(biāo)簽封裝方法及裝置。



背景技術(shù):

mpls(multiprotocollabelswitching,多協(xié)議標(biāo)簽交換)是一種應(yīng)用比較廣泛的骨干網(wǎng)技術(shù)。mpls在無連接的ip(internetprotocol,因特網(wǎng)協(xié)議)網(wǎng)絡(luò)上引入面向連接的標(biāo)簽交換概念,將第三層(layer3)路由技術(shù)和第二層(layer2)交換技術(shù)相結(jié)合,充分發(fā)揮了ip路由的靈活性和二層交換的簡潔性。

在mpls網(wǎng)絡(luò)中,在接收到報文后,lsr(labelswitchingrouter,標(biāo)簽交換路由器)中的轉(zhuǎn)發(fā)芯片會通過查表確定對應(yīng)的fec_next_hop(轉(zhuǎn)發(fā)等價類下一跳)信息,然后,通過fec_next_hop信息獲取encap_db表項中包含的出標(biāo)簽(outlabel),將該出標(biāo)簽封裝到該報文中后轉(zhuǎn)發(fā)出去。

在現(xiàn)有技術(shù)中,某些轉(zhuǎn)發(fā)芯片在報文中封裝的標(biāo)簽數(shù)量是有限的,最多只能封裝4層標(biāo)簽,從而無法按照實際組網(wǎng)的需求進(jìn)行更多層標(biāo)簽的封裝,應(yīng)用范圍受限。具體的封裝過程如下:

轉(zhuǎn)發(fā)芯片確定出待轉(zhuǎn)發(fā)報文的fec_next_hop信息后,從fec_next_hop信息中獲取出端口的標(biāo)識(id)和第一級encap_db(封裝數(shù)據(jù)庫)表項的索引index1_1,通過索引index1_1查找第一級encap_db表項并從該表項中獲取2個標(biāo)簽值和第二級encap_db表項的索引index1_2,通過索引index1_2查找第二級encap_db表項并從該表項中獲取2個標(biāo)簽值,從而最終獲取到4個標(biāo)簽值,這4個標(biāo)簽值即為待轉(zhuǎn)發(fā)報文的出標(biāo)簽的標(biāo)簽值。將攜帶這些標(biāo)簽值的標(biāo)簽封裝到待轉(zhuǎn)發(fā)報文中后,將封裝得到的標(biāo)簽封裝報文從該出端口上轉(zhuǎn)發(fā)出去。

可見,在此種轉(zhuǎn)發(fā)芯片中,fec_next_hop信息中的encap_db表項可以采用指針?biāo)饕问竭M(jìn)行級聯(lián),但是級聯(lián)次數(shù)有限,只能級聯(lián)2次,而每個encap_db表項中只能包含2個標(biāo)簽值,因此,最多只能在報文中封裝4層標(biāo)簽。



技術(shù)實現(xiàn)要素:

有鑒于此,本申請?zhí)峁┮环N標(biāo)簽封裝方法及裝置。

具體地,本申請是通過如下技術(shù)方案實現(xiàn)的:

一方面,提供了一種標(biāo)簽封裝方法,該方法應(yīng)用于標(biāo)簽交換轉(zhuǎn)發(fā)設(shè)備中的轉(zhuǎn)發(fā)芯片,該方法包括:

確定待轉(zhuǎn)發(fā)報文對應(yīng)的第一級fec_next_hop信息、以及與第一級fec_next_hop信息級聯(lián)的第二級fec_next_hop信息,其中,第二級fec_next_hop信息中包含出端口標(biāo)識和第一級encap_db表項的索引;

通過第二級fec_next_hop信息,查找第一級encap_db表項、以及與第一級encap_db表項級聯(lián)的第二級encap_db表項;

從第一級fec_next_hop信息、第一級encap_db表項、以及第二級encap_db表項中獲取附加信息和原有標(biāo)簽值,得到一個以上附加信息和一個以上原有標(biāo)簽值,其中,第一級fec_next_hop信息、第一級encap_db表項、第二級encap_db表項中的一個或兩個以上包含附加信息,第一級encap_db表項和第二級encap_db表項中包含原有標(biāo)簽值;

將攜帶原有標(biāo)簽值的原有標(biāo)簽封裝到待轉(zhuǎn)發(fā)報文中得到標(biāo)準(zhǔn)標(biāo)簽封裝報文;

將每個附加信息作為一個新增標(biāo)簽的標(biāo)簽值封裝到標(biāo)準(zhǔn)標(biāo)簽封裝報文中,得到擴(kuò)展標(biāo)簽封裝報文。

另一方面,還提供了一種標(biāo)簽封裝裝置,該裝置應(yīng)用于標(biāo)簽交換轉(zhuǎn)發(fā)設(shè)備中的轉(zhuǎn)發(fā)芯片上,該裝置包括:

查找單元,用于確定待轉(zhuǎn)發(fā)報文對應(yīng)的第一級fec_next_hop信息、以及與第一級fec_next_hop信息級聯(lián)的第二級fec_next_hop信息,其中,第二級fec_next_hop信息中包含出端口標(biāo)識和第一級encap_db表項的索引;通過第二級fec_next_hop信息,查找第一級encap_db表項、以及與第一級encap_db表項級聯(lián)的第二級encap_db表項;

獲取單元,用于從第一級fec_next_hop信息、第一級encap_db表項、以及第二級encap_db表項中獲取附加信息和原有標(biāo)簽值,得到一個以上附加信息和一個以上原有標(biāo)簽值,其中,第一級fec_next_hop信息、第一級encap_db表項、第二級encap_db表項中的一個或兩個以上包含附加信息,第一級encap_db表項和第二級encap_db表項中包含原有標(biāo)簽值;

封裝單元,用于將攜帶原有標(biāo)簽值的原有標(biāo)簽封裝到待轉(zhuǎn)發(fā)報文中得到標(biāo)準(zhǔn)標(biāo)簽封裝報文;將每個附加信息作為一個新增標(biāo)簽的標(biāo)簽值封裝到標(biāo)準(zhǔn)標(biāo)簽封裝報文中,得到擴(kuò)展標(biāo)簽封裝報文。

通過本申請的以上技術(shù)方案,轉(zhuǎn)發(fā)芯片可以在報文中封裝更多層的標(biāo)簽,最多可以封裝7層標(biāo)簽,從而可以按照實際組網(wǎng)的需求進(jìn)行更多層標(biāo)簽的封裝,擴(kuò)大了應(yīng)用范圍。

附圖說明

圖1是本申請實施例示出的標(biāo)簽封裝方法的流程圖;

圖2是本申請實施例示出的確定第一級fec_next_hop信息和第二級fec_next_hop信息的一種示意圖;

圖3是本申請實施例示出的確定第一級fec_next_hop信息和第二級fec_next_hop信息的另一種示意圖;

圖4是本申請實施例示出的查找第一級encap_db表項和第二級encap_db表項的示意圖;

圖5是本申請實施例示出的標(biāo)簽格式示意圖;

圖6是本申請實施例示出的擴(kuò)展標(biāo)簽封裝報文中的7層標(biāo)簽的結(jié)構(gòu)示意圖;

圖7是本申請實施例示出的標(biāo)簽封裝裝置的結(jié)構(gòu)示意圖。

具體實施方式

這里將詳細(xì)地對示例性實施例進(jìn)行說明,其示例表示在附圖中。下面的描述涉及附圖時,除非另有表示,不同附圖中的相同數(shù)字表示相同或相似的要素。以下示例性實施例中所描述的實施方式并不代表與本申請相一致的所有實施方式。相反,它們僅是與如所附權(quán)利要求書中所詳述的、本申請的一些方面相一致的裝置和方法的例子。

在本申請使用的術(shù)語是僅僅出于描述特定實施例的目的,而非旨在限制本申請。在本申請和所附權(quán)利要求書中所使用的單數(shù)形式的“一種”、“所述”和“該”也旨在包括多數(shù)形式,除非上下文清楚地表示其他含義。還應(yīng)當(dāng)理解,本文中使用的術(shù)語“和/或”是指并包含一個或多個相關(guān)聯(lián)的列出項目的任何或所有可能組合。

應(yīng)當(dāng)理解,盡管在本申請可能采用術(shù)語第一、第二、第三等來描述各種信息,但這些信息不應(yīng)限于這些術(shù)語。這些術(shù)語僅用來將同一類型的信息彼此區(qū)分開。例如,在不脫離本申請范圍的情況下,第一信息也可以被稱為第二信息,類似地,第二信息也可以被稱為第一信息。取決于語境,如在此所使用的詞語“如果”可以被解釋成為“在……時”或“當(dāng)……時”或“響應(yīng)于確定”。

在現(xiàn)有技術(shù)中,lsr中的交換芯片最多只能在待轉(zhuǎn)發(fā)報文中封裝4層標(biāo)簽,從而無法按照實際組網(wǎng)的需求進(jìn)行更多層標(biāo)簽的封裝,應(yīng)用范圍受限。為了解決上述問題,本申請以下實施例中提供了一種標(biāo)簽封裝方法,以及一種可以應(yīng)用該方法的裝置。

本申請實施例的標(biāo)簽封裝方法可以由標(biāo)簽交換轉(zhuǎn)發(fā)設(shè)備中的轉(zhuǎn)發(fā)芯片來執(zhí)行,上述標(biāo)簽交換轉(zhuǎn)發(fā)設(shè)備例如可以是lsr等具有標(biāo)簽分發(fā)和交換能力的轉(zhuǎn)發(fā)設(shè)備。目前,標(biāo)準(zhǔn)的轉(zhuǎn)發(fā)芯片可以實現(xiàn)fec_next_hop信息級聯(lián),但是,受到芯片硬件資源的限制,fec_next_hop信息的級聯(lián)次數(shù)有限,只能級聯(lián)兩次,這樣,本申請實施例中可以利用上述fec_next_hop信息級聯(lián)的特點,當(dāng)fec_next_hop信息級聯(lián)時,第一級fec_next_hop信息中包括第二級fec_next_hop信息的索引,即第一級fec_next_hop信息指向第二級fec_next_hop信息,而將出端口標(biāo)識和第一級encap_db表項的索引攜帶在第二級fec_next_hop信息中,此時,第一級fec_next_hop信息中可以提供20比特的保留位用于攜帶附加信息。

另外,現(xiàn)有的第一級encap_db表項和第二級encap_db表項中也可以提供20比特的保留位用于攜帶附加信息。

在實際實施過程中,附加信息的具體值可以由用戶進(jìn)行配置,本申請實施例中對此不做限定。在本申請實施例中,可以在第一級fec_next_hop信息、第一級encap_db表項、第二級encap_db表項中的任意一個中攜帶附加信息,也可以這三者中的任意兩個中攜帶附加信息,或者還可以在這三者中均攜帶附加信息。

基于此,本申請實施例的標(biāo)簽封裝方法中包括:確定待轉(zhuǎn)發(fā)報文對應(yīng)的第一級fec_next_hop信息、以及與第一級fec_next_hop信息級聯(lián)的第二級fec_next_hop信息,其中,第二級fec_next_hop信息中包含出端口標(biāo)識和第一級encap_db表項的索引;通過第二級fec_next_hop信息,查找第一級encap_db表項、以及與第一級encap_db表項級聯(lián)的第二級encap_db表項;從第一級fec_next_hop信息、第一級encap_db表項、以及第二級encap_db表項中獲取附加信息和原有標(biāo)簽值,得到一個以上附加信息和一個以上原有標(biāo)簽值,其中,第一級fec_next_hop信息、第一級encap_db表項、第二級encap_db表項中的一個或兩個以上包含附加信息,第一級encap_db表項和第二級encap_db表項中包含原有標(biāo)簽值;將攜帶原有標(biāo)簽值的原有標(biāo)簽封裝到待轉(zhuǎn)發(fā)報文中得到標(biāo)準(zhǔn)標(biāo)簽封裝報文;將每個附加信息作為一個新增標(biāo)簽的標(biāo)簽值封裝到標(biāo)準(zhǔn)標(biāo)簽封裝報文中,得到擴(kuò)展標(biāo)簽封裝報文。

下面以一個具體實例對上述標(biāo)簽封裝方法進(jìn)行詳細(xì)說明。標(biāo)準(zhǔn)轉(zhuǎn)發(fā)芯片的內(nèi)部功能可以分為:固定邏輯、可配置邏輯、以及可編程邏輯。在現(xiàn)有技術(shù)中,由固定邏輯和可配置邏輯來完成標(biāo)簽封裝過程,可編程邏輯無需參與該過程。本申請實施例中,為了能夠在第一級fec_next_hop信息、第一級encap_db表項、第二級encap_db表項中的一個或多個中攜帶附加信息,并且,后續(xù),能夠?qū)⒚總€附加信息作為一個新增標(biāo)簽的標(biāo)簽值封裝到標(biāo)準(zhǔn)標(biāo)簽封裝報文中,可以通過可配置邏輯和可編程邏輯實現(xiàn)以下3點:

(1)通過可配置邏輯實現(xiàn)fec_next_hop信息的級聯(lián),第一級fec_next_hop信息中包括:20比特的附加信息和第二級fec_next_hop信息的索引;第二級fec_next_hop信息中包括:出端口標(biāo)識和第一級encap_db表項的索引。

(2)通過可配置邏輯,在第一級encap_db表項和第二級encap_db表項中分別攜帶20比特的附加信息,這樣,每一級encap_db表項中除了攜帶原有標(biāo)簽值外,還可以攜帶附加信息。

(3)通過可編程邏輯,可以將每個附加信息作為一個新增標(biāo)簽的標(biāo)簽值封裝到標(biāo)準(zhǔn)標(biāo)簽封裝報文中,其中,標(biāo)準(zhǔn)標(biāo)簽封裝報文是按照現(xiàn)有技術(shù)封裝得到的報文,標(biāo)準(zhǔn)標(biāo)簽封裝報文中最多攜帶4層原有標(biāo)簽。

下面以第一級fec_next_hop信息、第一級encap_db表項、第二級encap_db表項中均包含附加信息為例進(jìn)行說明。

如圖1所示,本申請實施例的轉(zhuǎn)發(fā)芯片執(zhí)行的標(biāo)簽封裝方法包括以下步驟:

步驟s101,確定待轉(zhuǎn)發(fā)報文對應(yīng)的第一級fec_next_hop信息、以及與第一級fec_next_hop信息級聯(lián)的第二級fec_next_hop信息;

其中,第一級fec_next_hop信息中包括:20比特的附加信息1000和第二級fec_next_hop信息的索引index2_2;第二級fec_next_hop信息中包括:出端口標(biāo)識port1和第一級encap_db表項的索引index3_1。

具體的,如圖2所示,當(dāng)待轉(zhuǎn)發(fā)報文是ip報文時,根據(jù)待轉(zhuǎn)發(fā)報文的目的ip地址,在fib(forwardinginformationbase,轉(zhuǎn)發(fā)信息庫)表中查找第一級fec_next_hop信息的索引index2_1,通過該索引index2_1查找第一級fec_next_hop信息;通過第一級fec_next_hop信息中包含的第二級fec_next_hop信息的索引index2_2,查找第二級fec_next_hop信息。

或者,如圖3所示,當(dāng)待轉(zhuǎn)發(fā)報文是標(biāo)簽封裝報文(例如,mpls報文)時,根據(jù)待轉(zhuǎn)發(fā)報文中攜帶的標(biāo)簽,在lfib(labelforwardinginformationbase,標(biāo)簽轉(zhuǎn)發(fā)信息庫)表中查找第一級fec_next_hop信息的索引index2_1,通過該索引index2_1查找第一級fec_next_hop信息;通過第一級fec_next_hop信息中包含的第二級fec_next_hop信息的索引index2_2,查找第二級fec_next_hop信息。

步驟s102,通過第二級fec_next_hop信息,查找第一級encap_db表項、以及與第一級encap_db表項級聯(lián)的第二級encap_db表項;

具體的,如圖4所示,從第二級fec_next_hop信息中獲取第一級encap_db表項的索引index3_1,通過該索引index3_1查找第一級encap_db表項,其中,第一級encap_db表項中包括:第二級encap_db表項的索引index3_2、2個原有標(biāo)簽值100和200、以及20比特的附加信息2000;通過該索引index3_2查找第二級encap_db表項,其中,第二級encap_db表項中包括:2個原有標(biāo)簽值300和400、以及20比特的附加信息3000。

步驟s103,從第一級fec_next_hop信息、第一級encap_db表項和第二級encap_db表項中獲取附加信息和原有標(biāo)簽值,得到3個附加信息1000、2000、3000,以及4個原有標(biāo)簽值100、200、300、400。

步驟s104,將攜帶有原有標(biāo)簽值的原有標(biāo)簽封裝到待轉(zhuǎn)發(fā)報文中,得到標(biāo)準(zhǔn)標(biāo)簽封裝報文;

具體的,針對獲取到的4個原有標(biāo)簽值中的每個標(biāo)簽值,將攜帶有該原有標(biāo)簽值的原有標(biāo)簽封裝到待轉(zhuǎn)發(fā)報文中,具體的封裝過程同現(xiàn)有技術(shù),這里不再詳述。標(biāo)簽的封裝格式如圖5所示:

label字段:用于攜帶標(biāo)簽值,該字段的長度為20比特。

tc(trafficclass,流量等級)字段:又稱為exp(experimental)字段,該字段的長度為3比特,用于進(jìn)行qos(qualityofservice,服務(wù)質(zhì)量)。

s字段:又稱為bos字段,該字段為標(biāo)簽棧底標(biāo)識位(bottom-of-stackindicator),字段長度為1比特。由于mpls支持多重標(biāo)簽,即在報文中可以封裝多層標(biāo)簽,形成標(biāo)簽棧。由于標(biāo)簽封裝在報文的鏈路層幀頭和網(wǎng)絡(luò)層報文頭之間,因此,靠近鏈路層幀頭的最外層標(biāo)簽為棧頂標(biāo)簽,靠近網(wǎng)絡(luò)層報文頭的最內(nèi)層標(biāo)簽為棧底標(biāo)簽。s位為1時表示該標(biāo)簽為棧底標(biāo)簽,s位為0時表示該標(biāo)簽為非棧底標(biāo)簽。

ttl(timetolive,生存時間)字段:該字段長度為8比特,該字段的含義與ip報文中的ttl意義相同,可以用來防止環(huán)路。

假設(shè),標(biāo)準(zhǔn)標(biāo)簽封裝報文中的4個原有標(biāo)簽中的標(biāo)簽值,按照從內(nèi)層到外層的順序依次為:100、200、300、400,其中,100為最內(nèi)層的棧底標(biāo)簽的標(biāo)簽值。

在實際實施過程中,上述步驟s101至步驟s104具體可以由轉(zhuǎn)發(fā)芯片中的固定邏輯和可配置邏輯來執(zhí)行,在執(zhí)行步驟s103獲取附加信息和原有標(biāo)簽值時,固定邏輯和可配置邏輯無法識別附加信息,即不知道附加信息是何種類型的信息,并且,在執(zhí)行步驟s104封裝原有標(biāo)簽時無法將附加信息作為標(biāo)簽值封裝到報文中。在執(zhí)行完步驟s104后,固定邏輯和可配置邏輯會將獲取到的3個附加信息1000、2000、3000攜帶在芯片內(nèi)部的邏輯轉(zhuǎn)發(fā)信息中,將該邏輯轉(zhuǎn)發(fā)信息和標(biāo)準(zhǔn)標(biāo)簽封裝報文一起傳送給可編程邏輯。

其中,為了能夠讓可編程邏輯判斷出附加信息是第一級fec_next_hop信息、第一級encap_db表項、第二級encap_db表項中的哪一個攜帶的,還需要為每個附加信息設(shè)置對應(yīng)的標(biāo)識,用于表示該附加信息屬于第一級fec_next_hop信息、第一級encap_db表項、第二級encap_db表項中的哪一個。

步驟s105,針對第一級fec_next_hop信息中包含的附加信息1000,生成標(biāo)簽值為1000的第一新增標(biāo)簽,將第一新增標(biāo)簽作為最內(nèi)層的棧底標(biāo)簽封裝到標(biāo)準(zhǔn)標(biāo)簽封裝報文中;針對第一級encap_db表項中包含的附加信息2000,生成標(biāo)簽值為2000的第二新增標(biāo)簽,將第二新增標(biāo)簽封裝到標(biāo)準(zhǔn)標(biāo)簽封裝報文中的原有標(biāo)簽的最外層;針對第二級encap_db表項中包含的附加信息3000,生成標(biāo)簽值為3000的第三新增標(biāo)簽,將第三新增標(biāo)簽封裝到標(biāo)準(zhǔn)標(biāo)簽封裝報文中的原有標(biāo)簽的最外層。

可編程邏輯可以提供多條指令來靈活的對報文進(jìn)行編輯,本申請實施例中利用可編程邏輯的上述特點,通過可編程邏輯執(zhí)行上述步驟s105。具體的,在步驟s105中,可編程邏輯在接收到邏輯轉(zhuǎn)發(fā)信息和標(biāo)準(zhǔn)標(biāo)簽封裝報文后,會獲取標(biāo)準(zhǔn)標(biāo)簽封裝報文中的棧底標(biāo)簽中的tc值和s值,然后,按照以下三種情況進(jìn)行新增標(biāo)簽的封裝:

情況一:第一級fec_next_hop信息中包含附加信息1000

將標(biāo)準(zhǔn)標(biāo)簽封裝報文中當(dāng)前的棧底標(biāo)簽(標(biāo)簽值為100的原有標(biāo)簽)中的s值置為0,此時,該標(biāo)簽變?yōu)榉菞5讟?biāo)簽;生成標(biāo)簽值為1000的第一新增標(biāo)簽,并將第一新增標(biāo)簽中的tc值和s值分別設(shè)置為獲取到的tc值和s值,將第一新增標(biāo)簽中的s值置為1,表示第一新增標(biāo)簽為棧底標(biāo)簽;然后,將第一新增標(biāo)簽插入到標(biāo)準(zhǔn)標(biāo)簽封裝報文中原有標(biāo)簽的最內(nèi)層,成為新的棧底標(biāo)簽。

情況二:第一級encap_db表項中包含附加信息2000

生成標(biāo)簽值為2000的第二新增標(biāo)簽,并將第二新增標(biāo)簽中的tc值和s值分別設(shè)置為獲取到的tc值和s值,將第二新增標(biāo)簽中的s值置為0;然后,將第二新增標(biāo)簽插入到標(biāo)準(zhǔn)標(biāo)簽封裝報文中的原有標(biāo)簽的最外層。

情況三:第二級encap_db表項中包含附加信息3000

生成標(biāo)簽值為3000的第三新增標(biāo)簽,并將第三新增標(biāo)簽中的tc值和s值分別設(shè)置為獲取到的tc值和s值,將第三新增標(biāo)簽中的s值置為0;然后,將第三新增標(biāo)簽插入到標(biāo)準(zhǔn)標(biāo)簽封裝報文中的原有標(biāo)簽的最外層。

在實際實施過程中,由于不同的原有標(biāo)簽中的tc值相同,ttl值也相同,因此,在封裝新增標(biāo)簽時,可以獲取標(biāo)準(zhǔn)標(biāo)簽封裝報文中的棧底標(biāo)簽(原有標(biāo)簽)中的tc值和ttc值,作為新增標(biāo)簽中的tc值和ttc值;也可以獲取其它原有標(biāo)簽中的tc值和ttc值,本申請實施例對此不做限定??梢?,擴(kuò)展標(biāo)簽封裝報文中的原有標(biāo)簽與新增標(biāo)簽中的tc值相等,且ttl值也相等。

另外,攜帶附加信息2000的第二新增標(biāo)簽和攜帶附加信息3000的第三新增標(biāo)簽,均需要插入到原有標(biāo)簽的最外層,這兩個新增標(biāo)簽之間可以不限定內(nèi)外層關(guān)系,也就是說,第二新增標(biāo)簽可以在第三新增標(biāo)簽的內(nèi)層或外層。

如果第二新增標(biāo)簽位于第三新增標(biāo)簽的內(nèi)層,此時,擴(kuò)展標(biāo)簽封裝報文中封裝有7層標(biāo)簽,這7層標(biāo)簽中的標(biāo)簽值按照從內(nèi)層到外層的順序依次為:1000、100、200、300、400、2000、3000,如圖6所示??梢姡ㄟ^本申請實施例的方法,可以在報文中封裝最多7層的標(biāo)簽。

與前述標(biāo)簽封裝方法的實施例相對應(yīng),本申請還提供了標(biāo)簽封裝裝置的實施例,該裝置應(yīng)用于標(biāo)簽交換轉(zhuǎn)發(fā)設(shè)備中的轉(zhuǎn)發(fā)芯片上。

請參考圖7,本申請實施例的標(biāo)簽封裝裝置中包括:查找單元701、獲取單元702和封裝單元703,其中:

查找單元701,用于確定待轉(zhuǎn)發(fā)報文對應(yīng)的第一級fec_next_hop信息、以及與第一級fec_next_hop信息級聯(lián)的第二級fec_next_hop信息,其中,第二級fec_next_hop信息中包含出端口標(biāo)識和第一級encap_db表項的索引;通過第二級fec_next_hop信息,查找第一級encap_db表項、以及與第一級encap_db表項級聯(lián)的第二級encap_db表項;

獲取單元702,用于從第一級fec_next_hop信息、第一級encap_db表項、以及第二級encap_db表項中獲取附加信息和原有標(biāo)簽值,得到一個以上附加信息和一個以上原有標(biāo)簽值,其中,第一級fec_next_hop信息、第一級encap_db表項、第二級encap_db表項中的一個或兩個以上包含附加信息,第一級encap_db表項和第二級encap_db表項中包含原有標(biāo)簽值;

封裝單元703,用于將攜帶原有標(biāo)簽值的原有標(biāo)簽封裝到待轉(zhuǎn)發(fā)報文中得到標(biāo)準(zhǔn)標(biāo)簽封裝報文;將每個附加信息作為一個新增標(biāo)簽的標(biāo)簽值封裝到標(biāo)準(zhǔn)標(biāo)簽封裝報文中,得到擴(kuò)展標(biāo)簽封裝報文。

其中,第一級fec_next_hop信息中的保留比特位用于攜帶附加信息;

第一級encap_db表項中的保留比特位用于攜帶附加信息;

第二級encap_db表項中的保留比特位用于攜帶附加信息。

其中,封裝單元703具體用于通過以下方式將每個附加信息作為一個新增標(biāo)簽的標(biāo)簽值封裝到標(biāo)準(zhǔn)標(biāo)簽封裝報文中:

若第一級fec_next_hop信息中包含附加信息,則生成標(biāo)簽值為該附加信息的第一新增標(biāo)簽,將第一新增標(biāo)簽作為最內(nèi)層的棧底標(biāo)簽封裝到標(biāo)準(zhǔn)標(biāo)簽封裝報文中;

若第一級encap_db表項中包含附加信息,則生成標(biāo)簽值為該附加信息的第二新增標(biāo)簽,將第二新增標(biāo)簽封裝到標(biāo)準(zhǔn)標(biāo)簽封裝報文中的原有標(biāo)簽的最外層;

若第二級encap_db表項中包含附加信息,則生成標(biāo)簽值為該附加信息的第三新增標(biāo)簽,將第三新增標(biāo)簽封裝到標(biāo)準(zhǔn)標(biāo)簽封裝報文中的原有標(biāo)簽的最外層。

其中,在擴(kuò)展標(biāo)簽封裝報文中,新增標(biāo)簽中的tc值與原有標(biāo)簽中的tc值相等,且新增標(biāo)簽中的ttl值與原有標(biāo)簽中的ttl值相等。

其中,原有標(biāo)簽的數(shù)量范圍在1至4之間,新增標(biāo)簽的數(shù)量范圍在1至3之間。

上述裝置中各個單元的功能和作用的實現(xiàn)過程具體詳見上述方法中對應(yīng)步驟的實現(xiàn)過程,在此不再贅述。

對于裝置實施例而言,由于其基本對應(yīng)于方法實施例,所以相關(guān)之處參見方法實施例的部分說明即可。以上所描述的裝置實施例僅僅是示意性的,其中所述作為分離部件說明的單元可以是或者也可以不是物理上分開的,作為單元顯示的部件可以是或者也可以不是物理單元,即可以位于一個地方,或者也可以分布到多個網(wǎng)絡(luò)單元上??梢愿鶕?jù)實際的需要選擇其中的部分或者全部模塊來實現(xiàn)本申請方案的目的。本領(lǐng)域普通技術(shù)人員在不付出創(chuàng)造性勞動的情況下,即可以理解并實施。

以上所述僅為本申請的較佳實施例而已,并不用以限制本申請,凡在本申請的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本申請保護(hù)的范圍之內(nèi)。

當(dāng)前第1頁1 2 
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1