一種業(yè)務(wù)處理的方法、轉(zhuǎn)發(fā)器及分類器的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及通信技術(shù)領(lǐng)域,尤其涉及一種業(yè)務(wù)處理的方法、轉(zhuǎn)發(fā)器及分類器。
【背景技術(shù)】
[0002]為了擺脫運(yùn)營商成為“啞管道”的命運(yùn),實(shí)現(xiàn)全業(yè)務(wù)運(yùn)營的資源聯(lián)動優(yōu)勢,提升流量經(jīng)營能力,近年來,SDN( Sof tware Defined Network,軟件定義網(wǎng)絡(luò))及NFV(NetworkFunct1n Virtualizat1n,網(wǎng)絡(luò)功能虛擬化)技術(shù)的逐步發(fā)展和落地,為運(yùn)營商網(wǎng)絡(luò)的轉(zhuǎn)型和變革帶來了新的機(jī)遇,新的數(shù)據(jù)中心網(wǎng)絡(luò)和云架構(gòu)需要部署更靈活的業(yè)務(wù)功能,向虛擬平臺的迀移需要敏捷的業(yè)務(wù)嵌入模型以提供動態(tài)彈性的業(yè)務(wù)交付。Service Funct1nChaining(SFC,業(yè)務(wù)功能鏈)技術(shù)正是基于SDN/NFV技術(shù)將多個業(yè)務(wù)功能通過業(yè)務(wù)功能鏈串聯(lián)起來形成不同的業(yè)務(wù)功能組合,滿足不同的需求和部署場景。
[0003]目前SFC技術(shù)可以基于源路由實(shí)現(xiàn),即在數(shù)據(jù)源就決定好需要經(jīng)過哪些業(yè)務(wù)節(jié)點(diǎn),然后把這些業(yè)務(wù)節(jié)點(diǎn)的標(biāo)識都封裝在報文中,形成類似MPLS(Mult1-ProtocoI LabelSwi tching,多協(xié)議標(biāo)簽交換)的疊加隧道封裝。中間網(wǎng)絡(luò)節(jié)點(diǎn)可以根據(jù)報文的指定標(biāo)識進(jìn)行轉(zhuǎn)發(fā)處理。在這種方法中,服務(wù)路徑(SP,SerVice Path)信息被附加到每一個數(shù)據(jù)包作為頭部被轉(zhuǎn)發(fā),這就要求SF(Service Funct1n,業(yè)務(wù)功能)能夠識別數(shù)據(jù)包的頭部。由于業(yè)務(wù)類型的增多和SF的增多,使得越來越多的SF需要被配置有識別數(shù)據(jù)包頭的功能,導(dǎo)致網(wǎng)絡(luò)配置十分復(fù)雜。
【發(fā)明內(nèi)容】
[0004]本發(fā)明的實(shí)施例提供一種業(yè)務(wù)處理的方法、轉(zhuǎn)發(fā)器及分類器,用以簡化網(wǎng)絡(luò)配置。
[0005]為達(dá)到上述目的,本發(fā)明的實(shí)施例采用如下技術(shù)方案:
[0006]本發(fā)明實(shí)施例提供了一種業(yè)務(wù)處理的方法,包括:
[0007]轉(zhuǎn)發(fā)器從分類器中接收待處理數(shù)據(jù)包;
[0008]所述轉(zhuǎn)發(fā)器從所述待處理數(shù)據(jù)包中提取業(yè)務(wù)標(biāo)簽,所述業(yè)務(wù)標(biāo)簽攜帶有業(yè)務(wù)路徑頭部信息,所述業(yè)務(wù)路徑頭部信息攜帶有路徑標(biāo)識字段和位置信息字段;
[0009]所述轉(zhuǎn)發(fā)器根據(jù)所述路徑標(biāo)識字段,確定當(dāng)前需要使用的服務(wù)路徑,以及,根據(jù)所述位置信息字段,確定在所述服務(wù)路徑上的當(dāng)前服務(wù)功能模塊;
[0010]所述轉(zhuǎn)發(fā)器將所述待處理數(shù)據(jù)包發(fā)送至所述當(dāng)前服務(wù)功能模塊,以使得所述當(dāng)前服務(wù)功能模塊對所述待處理數(shù)據(jù)包進(jìn)行處理;
[0011]所述轉(zhuǎn)發(fā)器接收到所述當(dāng)前服務(wù)功能模塊的處理結(jié)果后,根據(jù)所述服務(wù)路徑,將所述位置信息字段中指示的當(dāng)前服務(wù)功能模塊修改為下一跳服務(wù)功能模塊;
[0012]所述轉(zhuǎn)發(fā)器將所述當(dāng)前服務(wù)功能模塊的處理結(jié)果發(fā)送至所述下一跳服務(wù)功能模塊,以使得所述下一跳服務(wù)功能模塊對所述待處理數(shù)據(jù)包進(jìn)行處理;
[0013]以此類推,直至所述轉(zhuǎn)發(fā)器接收到所述服務(wù)路徑上最后一跳服務(wù)功能模塊的處理結(jié)果后,所述轉(zhuǎn)發(fā)器將所述業(yè)務(wù)標(biāo)簽從所述最后一跳服務(wù)功能模塊的處理結(jié)果中去除。
[0014]本發(fā)明實(shí)施例還提供了一種轉(zhuǎn)發(fā)器,包括:
[0015]接收單元,用于從分類器中接收待處理數(shù)據(jù)包;
[0016]提取單元,用于從所述待處理數(shù)據(jù)包中提取業(yè)務(wù)標(biāo)簽,所述業(yè)務(wù)標(biāo)簽攜帶有業(yè)務(wù)路徑頭部信息,所述業(yè)務(wù)路徑頭部信息攜帶有路徑標(biāo)識字段和位置信息字段;
[0017]確定單元,用于根據(jù)所述路徑標(biāo)識字段,確定當(dāng)前需要使用的服務(wù)路徑,以及,根據(jù)所述位置信息字段,確定在所述服務(wù)路徑上的當(dāng)前服務(wù)功能模塊;
[0018]發(fā)送單元,用于將所述待處理數(shù)據(jù)包發(fā)送至所述當(dāng)前服務(wù)功能模塊,以使得所述當(dāng)前服務(wù)功能模塊對所述待處理數(shù)據(jù)包進(jìn)行處理;
[0019]修改單元,用于接收到所述當(dāng)前服務(wù)功能模塊的處理結(jié)果后,根據(jù)所述服務(wù)路徑,將所述位置信息字段中指示的當(dāng)前服務(wù)功能模塊修改為下一跳服務(wù)功能模塊;
[0020]所述發(fā)送單元,用于將所述當(dāng)前服務(wù)功能模塊的處理結(jié)果發(fā)送至所述下一跳服務(wù)功能模塊,以使得所述下一跳服務(wù)功能模塊對所述待處理數(shù)據(jù)包進(jìn)行處理;
[0021 ]去除單元,用于在所述轉(zhuǎn)發(fā)器接收到所述服務(wù)路徑上最后一跳服務(wù)功能模塊的處理結(jié)果后,所述轉(zhuǎn)發(fā)器將所述業(yè)務(wù)標(biāo)簽從所述最后一跳服務(wù)功能模塊的處理結(jié)果中去除。
[0022]本發(fā)明實(shí)施例還提供了一種分類器,包括:
[0023]分配單元,用于根據(jù)分類規(guī)則,為每一個原始數(shù)據(jù)包分配一個業(yè)務(wù)標(biāo)簽;
[0024]添加單元,用于將已分配的業(yè)務(wù)標(biāo)簽添加相應(yīng)的原始數(shù)據(jù)包中,得到待處理數(shù)據(jù)包。
[0025]本發(fā)明實(shí)施例提供的業(yè)務(wù)處理的方法、轉(zhuǎn)發(fā)器和分類器,實(shí)現(xiàn)了基于業(yè)務(wù)標(biāo)簽的SFC轉(zhuǎn)發(fā)方式,不同于現(xiàn)有技術(shù)的源路由轉(zhuǎn)發(fā)方法,這種方法為每一條服務(wù)鏈定義一個標(biāo)簽,并附加到每一個數(shù)據(jù)包中,如此省略了每個SF所需配置的流表,而且數(shù)據(jù)包的轉(zhuǎn)發(fā)由轉(zhuǎn)發(fā)器統(tǒng)一控制,不需要額外下達(dá)對轉(zhuǎn)發(fā)器或SF的轉(zhuǎn)發(fā)配置信息以實(shí)現(xiàn)數(shù)據(jù)包在業(yè)務(wù)路徑上的轉(zhuǎn)發(fā),這樣使得網(wǎng)絡(luò)配置更為簡單、準(zhǔn)確。
【附圖說明】
[0026]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0027]圖1為本發(fā)明實(shí)施例提供的一種業(yè)務(wù)處理網(wǎng)絡(luò)的組成框圖;
[0028]圖2為本發(fā)明實(shí)施例提供的一種業(yè)務(wù)處理的方法流程圖;
[0029]圖3為本發(fā)明實(shí)施例提供的另一種業(yè)務(wù)處理的方法流程圖;
[0030]圖4為本發(fā)明實(shí)施例提供的一種轉(zhuǎn)發(fā)器的組成框圖;
[0031 ]圖5為本發(fā)明實(shí)施例提供的一種分類器的組成框圖。
【具體實(shí)施方式】
[0032]下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。
[0033]本發(fā)明實(shí)施例提供了一種業(yè)務(wù)處理的方法,適用于如圖1所示的網(wǎng)絡(luò)架構(gòu)中。
[0034]在該網(wǎng)絡(luò)架構(gòu)中,分類器用于根據(jù)分類規(guī)則,對不同數(shù)據(jù)包添加不同業(yè)務(wù)標(biāo)簽;
[0035]轉(zhuǎn)發(fā)器為下述實(shí)施例的執(zhí)行主體,用于識別業(yè)務(wù)標(biāo)簽,并基于業(yè)務(wù)標(biāo)簽實(shí)現(xiàn)對數(shù)據(jù)包的轉(zhuǎn)發(fā);
[0036]服務(wù)功能(SF)模塊,用于對數(shù)據(jù)包進(jìn)行業(yè)務(wù)處理。
[0037]基于該網(wǎng)絡(luò)結(jié)構(gòu),本發(fā)明實(shí)施例提供的業(yè)務(wù)處理方法,如圖2所示,包括:
[0038]11、轉(zhuǎn)發(fā)器從分類器中接收待處理數(shù)據(jù)包。
[0039]102、所述轉(zhuǎn)發(fā)器從所述待處理數(shù)據(jù)包中提取業(yè)務(wù)標(biāo)簽,所述業(yè)務(wù)標(biāo)簽攜帶有業(yè)務(wù)路徑頭部信息,所述業(yè)務(wù)路徑頭部信息攜帶有路徑標(biāo)識字段和位置信息字段。
[0040]為避免數(shù)據(jù)包的超出網(wǎng)絡(luò)最小可用的MTU值限制,造成該數(shù)據(jù)包被進(jìn)行分片傳輸,以致網(wǎng)絡(luò)轉(zhuǎn)發(fā)壓力和數(shù)據(jù)丟包概率的增大。除業(yè)務(wù)路徑頭部信息外,本發(fā)明實(shí)施例對于業(yè)務(wù)標(biāo)簽還設(shè)置有基本頭部信息及上下文頭部信息。基本頭部信息、業(yè)務(wù)路徑頭部信息和上下文頭部信息均可以使用4個字節(jié)。
[0041 ]業(yè)務(wù)路徑頭部信息攜帶有路徑標(biāo)識字段和位置信息字段;
[0042]路徑標(biāo)識字段占3個字節(jié),用于識別服務(wù)路徑;
[0043]位置信息字段占I個字節(jié),用于標(biāo)識業(yè)務(wù)功能路徑的位置,即具體的業(yè)務(wù)服務(wù)模塊;
[0044]所述基本頭部信息攜帶有服務(wù)頭部字段、負(fù)載協(xié)議字段以及包長指示字段;
[0045]所述服務(wù)頭部字段用于指示所述業(yè)務(wù)標(biāo)簽的字段長度;
[0046]所述負(fù)載協(xié)議字段用于指示對具有所述業(yè)務(wù)標(biāo)簽的原始數(shù)據(jù)包進(jìn)行解析時需要使用的協(xié)議;
[0047]所述包長指示字段用于指示所述上下文頭部信息的字段長度是否允許被更改;
[0048]包長指示字段中定義了兩種類型,當(dāng)類型設(shè)置為Oxl時,表明業(yè)務(wù)標(biāo)簽中包含固定長度的上下文頭部信息;當(dāng)類型設(shè)置為0x2時,表明業(yè)務(wù)標(biāo)簽中包含可選擇的可變長度的上下文頭部信息。
[0049]所述上下文頭部信息攜帶有元數(shù)據(jù)信息字段和可變長編碼信息字段;
[0050]所述元數(shù)據(jù)信息字段用于指示具有所述業(yè)務(wù)標(biāo)簽的原始數(shù)據(jù)包的數(shù)據(jù)屬性;
[0051 ]所述可變長編碼信息字段為允許被修改字段長度的擴(kuò)展字段。
[0052]103、所述轉(zhuǎn)發(fā)器根據(jù)所述路徑標(biāo)識字段,確定當(dāng)前需要使用的服務(wù)路徑,以及,根據(jù)所述位置信息字段,確定在所述服務(wù)路徑上的當(dāng)前服務(wù)功能模塊。
[0053]104、所述轉(zhuǎn)發(fā)器將所述待處理數(shù)據(jù)包發(fā)送至所述當(dāng)前服務(wù)功能模塊,以使得所述當(dāng)前服務(wù)功能模塊對所述待處理數(shù)據(jù)包進(jìn)行處理。
[0054]105、所述轉(zhuǎn)發(fā)器接收到所述當(dāng)前服務(wù)功能模塊的處理結(jié)果后,根據(jù)所述服務(wù)路徑,將所述位置信息字段中指示的當(dāng)前服務(wù)功能模塊修改為下一跳服務(wù)功能模塊。
[0055]對于服務(wù)功能模塊的修改根本上就是對位置信息字段中攜帶的內(nèi)容進(jìn)行修改,例如,當(dāng)前服務(wù)功能模塊為業(yè)務(wù)路徑的第一跳,那么位置信息字段可以設(shè)置為I,那么下一跳服務(wù)功能模塊就應(yīng)該修改為2。當(dāng)然也可以根據(jù)需要設(shè)置其它步長來進(jìn)行地址指向的調(diào)整。
[0056]106、所述轉(zhuǎn)發(fā)器將所述當(dāng)前服務(wù)功能模塊的處理結(jié)果發(fā)送至所述下一跳服務(wù)功能模塊,以使得所述下一跳服務(wù)功能模塊對所述待處理數(shù)據(jù)包進(jìn)行處理。
[0057]107、以此類推,直至所述轉(zhuǎn)發(fā)器接收到所述服務(wù)路徑上最后