本申請涉及網(wǎng)絡(luò)傳輸,特別涉及一種報(bào)文處理方法,還涉及一種報(bào)文處理裝置、電子設(shè)備以及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。
背景技術(shù):
1、vpp(vector?package?process,矢量包處理)是一種用戶態(tài)協(xié)議棧,通常結(jié)合dpdk(data?plane?development?kit數(shù)據(jù)平面轉(zhuǎn)發(fā)套件)實(shí)現(xiàn)數(shù)據(jù)的快速轉(zhuǎn)發(fā),vpp使用cpu資源,使用指令加速、批處理、資源預(yù)取、功能節(jié)點(diǎn)化、插件化等技術(shù),具備高性能、功能豐富、模塊化、靈活性、可延展性等特性,當(dāng)前已廣泛用于各類網(wǎng)絡(luò)轉(zhuǎn)發(fā)設(shè)備中。
2、目前,vpp中對(duì)數(shù)據(jù)報(bào)文的處理流程劃分為多個(gè)階段,每個(gè)階段只做一部分處理,報(bào)文經(jīng)過所有的階段處理后完成報(bào)文的處理,一個(gè)階段稱為節(jié)點(diǎn),即一個(gè)報(bào)文從某個(gè)接口收上來后會(huì)經(jīng)過一系列的節(jié)點(diǎn)處理,然后從某個(gè)口發(fā)送出去。然而,vpp從收包開始一直處于批量報(bào)文處理狀態(tài),一個(gè)節(jié)點(diǎn)處理完全部報(bào)文后才進(jìn)入下一節(jié)點(diǎn)處理,下一節(jié)點(diǎn)再處理這一批的全部報(bào)文,直到這一批報(bào)文的全部節(jié)點(diǎn)處理完為止,數(shù)據(jù)報(bào)文在vpp內(nèi)部進(jìn)行過多的節(jié)點(diǎn)流轉(zhuǎn)開銷,導(dǎo)致了報(bào)文吞吐性能的降低和嚴(yán)重的報(bào)文轉(zhuǎn)發(fā)時(shí)延。
3、因此,如何實(shí)現(xiàn)快速高效的報(bào)文轉(zhuǎn)發(fā)處理,保證vpp中的報(bào)文吞吐性能是本領(lǐng)域技術(shù)人員亟待解決的問題。
技術(shù)實(shí)現(xiàn)思路
1、本申請的目的是提供一種報(bào)文處理方法,該報(bào)文處理方法可以實(shí)現(xiàn)快速高效的報(bào)文轉(zhuǎn)發(fā)處理,保證了vpp中的報(bào)文吞吐性能;本申請的另一目的是提供一種報(bào)文處理裝置、電子設(shè)備及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),均具有上述有益效果。
2、第一方面,本申請公開了一種報(bào)文處理方法,應(yīng)用于vpp協(xié)議設(shè)備,所述vpp協(xié)議設(shè)備包括快速路徑節(jié)點(diǎn)和普通路徑節(jié)點(diǎn),所述方法包括:
3、當(dāng)接收到目標(biāo)報(bào)文時(shí),在所述目標(biāo)報(bào)文中提取目標(biāo)報(bào)文信息;
4、根據(jù)所述目標(biāo)報(bào)文信息確定所述目標(biāo)報(bào)文的處理模式;
5、若所述處理模式為快速處理模式,則將所述目標(biāo)報(bào)文發(fā)送至快速路徑節(jié)點(diǎn),以使所述快速路徑節(jié)點(diǎn)在歷史報(bào)文記錄中調(diào)取所述目標(biāo)報(bào)文對(duì)應(yīng)的歷史處理參數(shù),并利用所述歷史處理參數(shù)對(duì)所述目標(biāo)報(bào)文進(jìn)行處理;
6、若所述處理模式為普通處理模式,則將所述目標(biāo)報(bào)文發(fā)送至普通路徑節(jié)點(diǎn),以使所述普通路徑節(jié)點(diǎn)對(duì)所述目標(biāo)報(bào)文進(jìn)行處理。
7、可選地,所述根據(jù)所述目標(biāo)報(bào)文信息確定所述目標(biāo)報(bào)文的處理模式,包括:
8、判斷所述目標(biāo)報(bào)文信息是否命中所述歷史報(bào)文記錄;
9、若所述目標(biāo)報(bào)文信息命中所述歷史報(bào)文記錄,則確定所述目標(biāo)報(bào)文的處理模式為所述快速處理模式;
10、若所述目標(biāo)報(bào)文信息未命中所述歷史報(bào)文記錄,則確定所述目標(biāo)報(bào)文的處理模式為所述普通處理模式。
11、可選地,若所述處理模式為普通處理模式,所述方法還包括:
12、通過所述普通路徑節(jié)點(diǎn)在對(duì)所述目標(biāo)報(bào)文處理的過程中,提取所述目標(biāo)報(bào)文的目標(biāo)處理參數(shù);
13、將所述目標(biāo)處理參數(shù)和所述目標(biāo)報(bào)文信息對(duì)應(yīng)存儲(chǔ)至所述歷史報(bào)文記錄。
14、可選地,所述利用所述歷史處理參數(shù)對(duì)所述目標(biāo)報(bào)文進(jìn)行處理,包括:
15、對(duì)所述目標(biāo)報(bào)文進(jìn)行加解密處理,獲得加密報(bào)文或解密報(bào)文;
16、利用所述歷史處理參數(shù)對(duì)所述加密報(bào)文或所述解密報(bào)文進(jìn)行重封裝,獲得第一重封裝報(bào)文。
17、可選地,所述將所述目標(biāo)報(bào)文發(fā)送至普通路徑節(jié)點(diǎn),以使所述普通路徑節(jié)點(diǎn)對(duì)所述目標(biāo)報(bào)文進(jìn)行處理,包括:
18、將所述目標(biāo)報(bào)文發(fā)送至普通路徑節(jié)點(diǎn),以使所述普通路徑節(jié)點(diǎn)確定所述目標(biāo)報(bào)文的傳輸模式;
19、若所述傳輸模式為加解密模式,則對(duì)所述目標(biāo)報(bào)文依次進(jìn)行加解密處理和重封裝處理,獲得第二重封裝報(bào)文;
20、若所述傳輸模式不為所述加解密模式,則對(duì)所述目標(biāo)報(bào)文進(jìn)行重封裝處理,獲得第三重封裝報(bào)文。
21、可選地,所述在所述目標(biāo)報(bào)文中提取目標(biāo)報(bào)文信息,包括:
22、在所述目標(biāo)報(bào)文中提取五元組信息作為所述目標(biāo)報(bào)文信息。
23、可選地,所述歷史處理參數(shù)包括ipsec隧道信息、報(bào)文策略信息、輸出以太網(wǎng)頭信息、出接口號(hào)信息中的一種或多種的組合。
24、第二方面,本申請還公開了一種報(bào)文處理裝置
25、第三方面,本申請還公開了一種電子設(shè)備,包括:
26、存儲(chǔ)器,用于存儲(chǔ)計(jì)算機(jī)程序;
27、處理器,用于執(zhí)行所述計(jì)算機(jī)程序時(shí)實(shí)現(xiàn)如上所述的任一種報(bào)文處理方法的步驟。
28、第四方面,本申請還公開了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如上所述的任一種報(bào)文處理方法的步驟。
29、本申請?zhí)峁┝艘环N報(bào)文處理方法,應(yīng)用于vpp協(xié)議設(shè)備,所述vpp協(xié)議設(shè)備包括快速路徑節(jié)點(diǎn)和普通路徑節(jié)點(diǎn),所述方法包括:當(dāng)接收到目標(biāo)報(bào)文時(shí),在所述目標(biāo)報(bào)文中提取目標(biāo)報(bào)文信息;根據(jù)所述目標(biāo)報(bào)文信息確定所述目標(biāo)報(bào)文的處理模式;若所述處理模式為快速處理模式,則將所述目標(biāo)報(bào)文發(fā)送至快速路徑節(jié)點(diǎn),以使所述快速路徑節(jié)點(diǎn)在歷史報(bào)文記錄中調(diào)取所述目標(biāo)報(bào)文對(duì)應(yīng)的歷史處理參數(shù),并利用所述歷史處理參數(shù)對(duì)所述目標(biāo)報(bào)文進(jìn)行處理;若所述處理模式為普通處理模式,則將所述目標(biāo)報(bào)文發(fā)送至普通路徑節(jié)點(diǎn),以使所述普通路徑節(jié)點(diǎn)對(duì)所述目標(biāo)報(bào)文進(jìn)行處理。
30、應(yīng)用本申請所提供的技術(shù)方案,在vpp協(xié)議設(shè)備中增設(shè)快速路徑節(jié)點(diǎn),用以實(shí)現(xiàn)數(shù)據(jù)報(bào)文的快速處理,在接收到目標(biāo)報(bào)文之后,可以根據(jù)其目標(biāo)報(bào)文信息確定其處理模式,在快速處理模式下,可以利用快速路徑節(jié)點(diǎn)在歷史報(bào)文記錄中調(diào)取該目標(biāo)報(bào)文對(duì)應(yīng)的歷史處理參數(shù),并對(duì)其進(jìn)行快速處理,而無需進(jìn)入各個(gè)普通路徑節(jié)點(diǎn)進(jìn)行依次流轉(zhuǎn)處理;在普通處理模式下,再利用各個(gè)普通路徑節(jié)點(diǎn)進(jìn)行處理即可。由此可見,本技術(shù)方案通過在vpp協(xié)議設(shè)備中增設(shè)快速路徑節(jié)點(diǎn)實(shí)現(xiàn)了快速高效的報(bào)文轉(zhuǎn)發(fā)處理,有效地保證了vpp協(xié)議設(shè)備的報(bào)文吞吐性能。
31、本申請所提供的一種報(bào)文處理裝置、電子設(shè)備以及計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),同樣具有上述技術(shù)效果,本申請?jiān)诖瞬辉儋樖觥?/p>
技術(shù)特征:
1.一種報(bào)文處理方法,其特征在于,應(yīng)用于vpp協(xié)議設(shè)備,所述vpp協(xié)議設(shè)備包括快速路徑節(jié)點(diǎn)和普通路徑節(jié)點(diǎn),所述方法包括:
2.根據(jù)權(quán)利要求1所述的報(bào)文處理方法,其特征在于,所述根據(jù)所述目標(biāo)報(bào)文信息確定所述目標(biāo)報(bào)文的處理模式,包括:
3.根據(jù)權(quán)利要求2所述的報(bào)文處理方法,其特征在于,若所述處理模式為普通處理模式,所述方法還包括:
4.根據(jù)權(quán)利要求1所述的報(bào)文處理方法,其特征在于,所述利用所述歷史處理參數(shù)對(duì)所述目標(biāo)報(bào)文進(jìn)行處理,包括:
5.根據(jù)權(quán)利要求1所述的報(bào)文處理方法,其特征在于,所述將所述目標(biāo)報(bào)文發(fā)送至普通路徑節(jié)點(diǎn),以使所述普通路徑節(jié)點(diǎn)對(duì)所述目標(biāo)報(bào)文進(jìn)行處理,包括:
6.根據(jù)權(quán)利要求1所述的報(bào)文處理方法,其特征在于,所述在所述目標(biāo)報(bào)文中提取目標(biāo)報(bào)文信息,包括:
7.根據(jù)權(quán)利要求1所述的報(bào)文處理方法,其特征在于,所述歷史處理參數(shù)包括ipsec隧道信息、報(bào)文策略信息、輸出以太網(wǎng)頭信息、出接口號(hào)信息中的一種或多種的組合。
8.一種報(bào)文處理裝置,其特征在于,應(yīng)用于vpp協(xié)議設(shè)備,所述vpp協(xié)議設(shè)備包括快速路徑節(jié)點(diǎn)和普通路徑節(jié)點(diǎn),所述方法包括:
9.一種電子設(shè)備,其特征在于,包括:
10.一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),其特征在于,所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)上存儲(chǔ)有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序被處理器執(zhí)行時(shí)實(shí)現(xiàn)如權(quán)利要求1至7任一項(xiàng)所述的報(bào)文處理方法的步驟。