本申請涉及通信,尤其涉及一種報文匹配方法、裝置、設(shè)備及可讀存儲介質(zhì)。
背景技術(shù):
1、業(yè)界通常采用dpu(data?process?unit,數(shù)據(jù)處理器)將虛擬交換機vswitch組件的部分或全部卸載到dpu中。利用dpu中的專用硬件加速引擎來實現(xiàn)流表匹配和報文轉(zhuǎn)發(fā),可大幅提升網(wǎng)絡(luò)轉(zhuǎn)發(fā)性能,同時可以釋放cpu資源留給上層業(yè)務(wù)使用,降低平臺開銷,提升計算資源利用率。
2、經(jīng)過dpu的專用硬件的加速,vswitch的轉(zhuǎn)發(fā)面性能大幅提升,同時為了提升轉(zhuǎn)發(fā)面的可靠性,在dpu中引入了入向統(tǒng)計表和出向統(tǒng)計表,實現(xiàn)對dpu收到的報文和發(fā)出的報文的統(tǒng)計和染色等運維操作。
3、但是,在dpu當前的處理機制下,在對同一類報文進行入向和出向同時匹配時,若在報文轉(zhuǎn)發(fā)表中發(fā)生了報文字段頭的修改(如三層轉(zhuǎn)發(fā)流表修改了源媒體接入控制(mediaaccess?control,mac)地址),則在出向統(tǒng)計表中就無法統(tǒng)計到目標報文。
技術(shù)實現(xiàn)思路
1、本申請實施例提供一種報文匹配方法、裝置、設(shè)備及可讀存儲介質(zhì),以提高對報文匹配的準確性。
2、第一方面,本申請實施例提供了一種報文匹配方法,應(yīng)用于dpu,包括:
3、掃描入向統(tǒng)計表,從待匹配的報文中獲得匹配的第一目標報文;
4、標記所述第一目標報文,得到第二目標報文;
5、掃描出向統(tǒng)計表,對所述第二目標報文進行匹配。
6、可選的,所述方法還包括:
7、設(shè)置所述入向統(tǒng)計表的操作(action)字段,用于指示對匹配的報文進行標記。
8、可選的,所述方法還包括:
9、向虛擬交換機發(fā)送所述第二目標報文以及第一信息,其中,所述第一信息用于指示所述第二目標報文為標記的報文。
10、可選的,所述掃描出向統(tǒng)計表,對所述第二目標報文進行匹配,包括:
11、從所述虛擬交換機獲取所述第一信息以及第三目標報文,其中,所述第三目標報文是由所述虛擬交換機對所述第二目標報文執(zhí)行操作后獲得的,所述虛擬交換機將所述第三目標報文通過再注入流程注入到所述虛擬交換機的轉(zhuǎn)發(fā)面;
12、根據(jù)所述第一信息掃描出向統(tǒng)計表,對所述第三目標報文進行匹配。
13、可選的,所述根據(jù)所述第一信息掃描出向統(tǒng)計表,對所述第三目標報文進行匹配,包括:
14、讀取所述出向統(tǒng)計表的匹配(match)字段;
15、若所述match字段與所述第一信息匹配,從所述第三目標報文中獲得匹配的第四目標報文;
16、對所述第四目標報文執(zhí)行操作action。
17、可選的,所述方法還包括:
18、向目標端口發(fā)送執(zhí)行操作之后的所述第四目標報文。
19、第二方面,本申請實施例還提供了一種報文匹配裝置,應(yīng)用于dpu,包括:
20、第一處理模塊,用于掃描入向統(tǒng)計表,從待匹配的報文中獲得匹配的第一目標報文;
21、第二處理模塊,用于標記所述第一目標報文,得到第二目標報文;
22、第三處理模塊,用于掃描出向統(tǒng)計表,對所述第二目標報文進行匹配。
23、可選的,所述裝置還可包括:
24、第四處理模塊,用于設(shè)置所述入向統(tǒng)計表的操作action字段,用于指示對匹配的報文進行標記。
25、可選的,所述裝置還可包括:
26、第一發(fā)送模塊,用于向虛擬交換機發(fā)送所述第二目標報文以及第一信息,其中,所述第一信息用于指示所述第二目標報文為標記的報文。
27、可選的,所述第三處理模塊包括:
28、第一獲取子模塊,用于從所述虛擬交換機獲取所述第一信息以及第三目標報文,其中,所述第三目標報文是由所述虛擬交換機對所述第二目標報文執(zhí)行操作后獲得的,所述虛擬交換機將所述第三目標報文通過再注入流程注入到所述虛擬交換機的轉(zhuǎn)發(fā)面;
29、第一處理子模塊,用于根據(jù)所述第一信息掃描出向統(tǒng)計表,對所述第三目標報文進行匹配。
30、可選的,所述第一處理子模塊用于:
31、讀取所述出向統(tǒng)計表的匹配match字段;
32、若所述match字段與所述第一信息匹配,從所述第三目標報文中獲得匹配的第四目標報文;
33、對所述第四目標報文執(zhí)行操作action。
34、可選的,所述裝置還可包括:
35、第二發(fā)送模塊,用于向目標端口發(fā)送執(zhí)行操作之后的所述第四目標報文。
36、第三方面,本申請實施例還提供了一種報文匹配裝置,應(yīng)用于dpu,包括:處理器和收發(fā)器;
37、其中,所述處理器,用于:
38、掃描入向統(tǒng)計表,從待匹配的報文中獲得匹配的第一目標報文;
39、標記所述第一目標報文,得到第二目標報文;
40、掃描出向統(tǒng)計表,對所述第二目標報文進行匹配。
41、可選的,所述處理器還用于:
42、設(shè)置所述入向統(tǒng)計表的操作action字段,用于指示對匹配的報文進行標記。
43、可選的,所述處理器還用于:
44、向虛擬交換機發(fā)送所述第二目標報文以及第一信息,其中,所述第一信息用于指示所述第二目標報文為標記的報文。
45、可選的,所述處理器還用于:
46、從所述虛擬交換機獲取所述第一信息以及第三目標報文,其中,所述第三目標報文是由所述虛擬交換機對所述第二目標報文執(zhí)行操作后獲得的,所述虛擬交換機將所述第三目標報文通過再注入流程注入到所述虛擬交換機的轉(zhuǎn)發(fā)面;
47、根據(jù)所述第一信息掃描出向統(tǒng)計表,對所述第三目標報文進行匹配。
48、可選的,所述處理器還用于:
49、讀取所述出向統(tǒng)計表的匹配match字段;
50、若所述match字段與所述第一信息匹配,從所述第三目標報文中獲得匹配的第四目標報文;
51、對所述第四目標報文執(zhí)行操作action。
52、可選的,所述處理器還用于:
53、向目標端口發(fā)送執(zhí)行操作之后的所述第四目標報文。
54、第四方面,本申請實施例還提供一種通信設(shè)備,包括:存儲器、處理器及存儲在存儲器上并可在處理器上運行的程序,所述處理器執(zhí)行所述程序時實現(xiàn)如上所述的報文匹配方法中的步驟。
55、第五方面,本申請實施例還提供一種可讀存儲介質(zhì),所述可讀存儲介質(zhì)上存儲程序,所述程序被處理器執(zhí)行時實現(xiàn)如上所述的報文匹配方法中的步驟。
56、在本申請實施例中,通過掃描入向統(tǒng)計表,獲得匹配的第一目標報文,并通過對第一目標報文進行標記得到第二目標報文,再通過掃描出向統(tǒng)計表對所述第二目標報文進行匹配。由此可以看出,通過對第一目標報文進行標記得到第二目標報文,可使得在掃描出向統(tǒng)計表時,對第二目標報文進行匹配,從而可在對進行報文匹配時,可實現(xiàn)對標記的報文的追蹤,從而可提高對報文匹配的準確性。
1.一種報文匹配方法,其特征在于,應(yīng)用于數(shù)據(jù)處理器dpu,包括:
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
3.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述方法還包括:
4.根據(jù)權(quán)利要求3所述的方法,其特征在于,所述掃描出向統(tǒng)計表,對所述第二目標報文進行匹配,包括:
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述根據(jù)所述第一信息掃描出向統(tǒng)計表,對所述第三目標報文進行匹配,包括:
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述方法還包括:
7.一種報文匹配裝置,其特征在于,應(yīng)用于dpu,包括:
8.一種報文匹配裝置,其特征在于,應(yīng)用于dpu,包括:處理器和收發(fā)器;
9.一種通信設(shè)備,包括:存儲器、處理器及存儲在所述存儲器上并可在所述處理器上運行的程序;其特征在于,所述處理器,用于讀取存儲器中的程序?qū)崿F(xiàn)如權(quán)利要求1至6中任一項所述的報文匹配方法中的步驟。
10.一種可讀存儲介質(zhì),用于存儲程序,其特征在于,所述程序被處理器執(zhí)行時實現(xiàn)如權(quán)利要求1至6中任一項所述的報文匹配方法中的步驟。