本技術(shù)涉及通信,尤其涉及一種數(shù)據(jù)傳輸方法、網(wǎng)絡(luò)設(shè)備、裝置及存儲介質(zhì)。
背景技術(shù):
1、目前使用基站自定義協(xié)議棧(do?it?yourself?protocol?stack,diyps)的任務(wù)主動查詢數(shù)據(jù)平面開發(fā)套件(data?plane?development?kit,dpdk)的控制類隊(duì)列。
2、基站為減少對中央處理器(central?processing?unit,cpu)的獨(dú)占,避免擠壓其他進(jìn)程的處理,采用了阻塞式接收方式。數(shù)據(jù)收到后,需要經(jīng)過dps協(xié)議棧處理,剝離各層的媒體訪問控制(media?access?control,mac)頭,互聯(lián)網(wǎng)協(xié)議(internet?protocol,ip)頭,用戶數(shù)據(jù)報(bào)協(xié)議(user?datagram?protocol,udp)頭后,再經(jīng)過協(xié)議適配模塊(protocoladaptation?module,pam)適配層傳遞到應(yīng)用層。同理,發(fā)送流程自上而下,經(jīng)“層層加碼”后通過dpdk驅(qū)動發(fā)送到網(wǎng)卡設(shè)備。
3、但是,上述流程有200微秒(us)睡眠操作,難以滿足低時(shí)延的要求。
技術(shù)實(shí)現(xiàn)思路
1、針對現(xiàn)有技術(shù)存在的問題,本技術(shù)實(shí)施例提供一種數(shù)據(jù)傳輸方法、網(wǎng)絡(luò)設(shè)備、裝置及存儲介質(zhì)。
2、第一方面,本技術(shù)實(shí)施例提供一種數(shù)據(jù)傳輸方法,包括:
3、確定數(shù)據(jù)需要在應(yīng)用層和數(shù)據(jù)平面開發(fā)套件dpdk層之間進(jìn)行二層轉(zhuǎn)發(fā);
4、調(diào)用所述dpdk層的輸入輸出控制ioctl接口,在所述應(yīng)用層和所述dpdk層之間傳輸數(shù)據(jù)。
5、在一些實(shí)施例中,所述方法還包括:
6、為每個(gè)數(shù)據(jù)發(fā)送進(jìn)程申請專用控制池;
7、在數(shù)據(jù)發(fā)送進(jìn)程中,從所述數(shù)據(jù)發(fā)送進(jìn)程對應(yīng)的專用控制池申請內(nèi)存,填充需要發(fā)送的數(shù)據(jù)。
8、在一些實(shí)施例中,所述方法還包括:
9、為每個(gè)媒體訪問控制mac軟核申請一個(gè)網(wǎng)絡(luò)通信引擎ice中斷,每個(gè)ice中斷對應(yīng)一個(gè)中斷隊(duì)列;
10、查詢所述一個(gè)中斷隊(duì)列對應(yīng)的多個(gè)訪問控制列表acl規(guī)則對應(yīng)的數(shù)據(jù)類型;
11、基于數(shù)據(jù)類型區(qū)分不同的acl規(guī)則數(shù)據(jù),所述不同的acl規(guī)則數(shù)據(jù)包括所述第一數(shù)據(jù)傳輸通道的第一類數(shù)據(jù)和所述第二數(shù)據(jù)傳輸通道的第二類數(shù)據(jù),其中,所述第一數(shù)據(jù)傳輸通道為在dpdk層與應(yīng)用層之間進(jìn)行二層轉(zhuǎn)發(fā)的數(shù)據(jù)傳輸通道,所述第二數(shù)據(jù)傳輸通道為在dpdk層與應(yīng)用層之間通過dps協(xié)議棧進(jìn)行轉(zhuǎn)發(fā)的數(shù)據(jù)傳輸通道;
12、將所述第一類數(shù)據(jù)和所述第二輪數(shù)據(jù)放入不同的環(huán)形ring隊(duì)列中,并觸發(fā)不同數(shù)據(jù)類型對應(yīng)的中斷通知消息。
13、在一些實(shí)施例中,所述查詢所述中斷隊(duì)列對應(yīng)的多個(gè)訪問控制列表acl規(guī)則對應(yīng)的數(shù)據(jù)類型,包括:
14、查詢所述多個(gè)acl規(guī)則中的元數(shù)據(jù)字段,讀取數(shù)據(jù)類型值;
15、基于所述數(shù)據(jù)類型值,獲取所述中斷隊(duì)列對應(yīng)的多個(gè)acl規(guī)則對應(yīng)的數(shù)據(jù)類型。
16、在一些實(shí)施例中,所述方法還包括:
17、為每個(gè)數(shù)據(jù)傳輸進(jìn)程設(shè)定mac地址,所述mac地址中包含第一優(yōu)先級信息和第二優(yōu)先級信息;
18、其中,所述第一優(yōu)先級信息與所述每個(gè)數(shù)據(jù)傳輸進(jìn)程對應(yīng)的進(jìn)程優(yōu)先級,所述第二優(yōu)先級信息為所述每個(gè)數(shù)據(jù)傳輸進(jìn)程對應(yīng)的業(yè)務(wù)優(yōu)先級,所述第一優(yōu)先級信息的優(yōu)先級高于所述第二優(yōu)先級信息的優(yōu)先級;
19、所述第一優(yōu)先級信息與數(shù)據(jù)傳輸通道關(guān)聯(lián),所述數(shù)據(jù)傳輸通道包括:所述dpdk層與所述應(yīng)用層之間進(jìn)行二層轉(zhuǎn)發(fā)的第一數(shù)據(jù)傳輸通道,和,所述dpdk層與所述應(yīng)用層之間通過dps協(xié)議棧進(jìn)行轉(zhuǎn)發(fā)的第二數(shù)據(jù)傳輸通道。
20、第二方面,本技術(shù)實(shí)施例還提供一種網(wǎng)絡(luò)設(shè)備,包括存儲器,收發(fā)機(jī),處理器;
21、存儲器,用于存儲計(jì)算機(jī)程序;收發(fā)機(jī),用于在所述處理器的控制下收發(fā)數(shù)據(jù);處理器,用于讀取所述存儲器中的計(jì)算機(jī)程序并執(zhí)行第一方面提供的數(shù)據(jù)傳輸方法。
22、第三方面,本技術(shù)實(shí)施例還提供一種數(shù)據(jù)傳輸裝置,包括:
23、確定單元,用于確定數(shù)據(jù)需要在應(yīng)用層和數(shù)據(jù)平面開發(fā)套件dpdk層之間進(jìn)行二層轉(zhuǎn)發(fā);
24、調(diào)用單元,用于調(diào)用所述dpdk層的輸入輸出控制ioctl接口,在所述應(yīng)用層和所述dpdk層之間傳輸數(shù)據(jù)。
25、在一些實(shí)施例中,所述裝置還包括第一申請單元,用于:
26、為每個(gè)數(shù)據(jù)發(fā)送進(jìn)程申請專用控制池;
27、在數(shù)據(jù)發(fā)送進(jìn)程中,從所述數(shù)據(jù)發(fā)送進(jìn)程對應(yīng)的專用控制池申請內(nèi)存,填充需要發(fā)送的數(shù)據(jù)。
28、在一些實(shí)施例中,所述裝置還包括:
29、第二申請單元,用于為每個(gè)媒體訪問控制mac軟核申請一個(gè)網(wǎng)絡(luò)通信引擎ice中斷,每個(gè)ice中斷對應(yīng)一個(gè)中斷隊(duì)列;
30、查詢單元,用于查詢所述一個(gè)中斷隊(duì)列對應(yīng)的多個(gè)訪問控制列表acl規(guī)則對應(yīng)的數(shù)據(jù)類型;
31、區(qū)分單元,用于基于數(shù)據(jù)類型區(qū)分不同的acl規(guī)則數(shù)據(jù),所述不同的acl規(guī)則數(shù)據(jù)包括所述第一數(shù)據(jù)傳輸通道的第一類數(shù)據(jù)和所述第二數(shù)據(jù)傳輸通道的第二類數(shù)據(jù),其中,所述第一數(shù)據(jù)傳輸通道為在dpdk層與應(yīng)用層之間進(jìn)行二層轉(zhuǎn)發(fā)的數(shù)據(jù)傳輸通道,所述第二數(shù)據(jù)傳輸通道為在dpdk層與應(yīng)用層之間通過dps協(xié)議棧進(jìn)行轉(zhuǎn)發(fā)的數(shù)據(jù)傳輸通道;
32、觸發(fā)單元,用于將所述第一類數(shù)據(jù)和所述第二輪數(shù)據(jù)放入不同的環(huán)形ring隊(duì)列中,并觸發(fā)不同數(shù)據(jù)類型對應(yīng)的中斷通知消息。
33、在一些實(shí)施例中,所述查詢單元還用于:
34、查詢所述多個(gè)acl規(guī)則中的元數(shù)據(jù)字段,讀取數(shù)據(jù)類型值;
35、基于所述數(shù)據(jù)類型值,獲取所述中斷隊(duì)列對應(yīng)的多個(gè)acl規(guī)則對應(yīng)的數(shù)據(jù)類型。
36、在一些實(shí)施例中,所述裝置還包括:
37、設(shè)定單元,用于為每個(gè)數(shù)據(jù)傳輸進(jìn)程設(shè)定mac地址,所述mac地址中包含第一優(yōu)先級信息和第二優(yōu)先級信息;
38、其中,所述第一優(yōu)先級信息與所述每個(gè)數(shù)據(jù)傳輸進(jìn)程對應(yīng)的進(jìn)程優(yōu)先級,所述第二優(yōu)先級信息為所述每個(gè)數(shù)據(jù)傳輸進(jìn)程對應(yīng)的業(yè)務(wù)優(yōu)先級,所述第一優(yōu)先級信息的優(yōu)先級高于所述第二優(yōu)先級信息的優(yōu)先級;
39、所述第一優(yōu)先級信息與數(shù)據(jù)傳輸通道關(guān)聯(lián),所述數(shù)據(jù)傳輸通道包括:所述dpdk層與所述應(yīng)用層之間進(jìn)行二層轉(zhuǎn)發(fā)的第一數(shù)據(jù)傳輸通道,和,所述dpdk層與所述應(yīng)用層之間通過dps協(xié)議棧進(jìn)行轉(zhuǎn)發(fā)的第二數(shù)據(jù)傳輸通道。
40、第四方面,本技術(shù)實(shí)施例還提供一種處理器可讀存儲介質(zhì),所述處理器可讀存儲介質(zhì)存儲有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序用于使所述處理器執(zhí)行如上所述第一方面提供的數(shù)據(jù)傳輸方法。
41、第五方面,本技術(shù)實(shí)施例還提供一種非瞬時(shí)可讀存儲介質(zhì),所述非瞬時(shí)可讀存儲介質(zhì)存儲有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序用于使計(jì)算機(jī)執(zhí)行如上所述第一方面提供的數(shù)據(jù)傳輸方法。
42、第六方面,本技術(shù)實(shí)施例還提供一種通信設(shè)備,所述通信設(shè)備中存儲有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序用于使通信設(shè)備執(zhí)行如上所述第一方面提供的數(shù)據(jù)傳輸方法。
43、第七方面,本技術(shù)實(shí)施例還提供一種芯片產(chǎn)品,所述芯片產(chǎn)品中存儲有計(jì)算機(jī)程序,所述計(jì)算機(jī)程序用于使芯片產(chǎn)品執(zhí)行如上所述第一方面提供的數(shù)據(jù)傳輸方法。
44、本技術(shù)實(shí)施例提供的數(shù)據(jù)傳輸方法、網(wǎng)絡(luò)設(shè)備、裝置及存儲介質(zhì),通過調(diào)用在dpdk層注冊的ioctl接口,在數(shù)據(jù)需要在應(yīng)用層和dpdk層之間進(jìn)行二層轉(zhuǎn)發(fā)的情況下,在應(yīng)用層和dpdk層之間直接傳輸數(shù)據(jù),去掉了三層及以上的處理,提高了數(shù)據(jù)傳輸?shù)臅r(shí)效性。