本技術(shù)涉及計算機(jī),尤其涉及一種以太網(wǎng)協(xié)議自動切換系統(tǒng)、設(shè)備及存儲介質(zhì)。
背景技術(shù):
1、以太網(wǎng)通信一般使用以太網(wǎng)協(xié)議芯片進(jìn)行數(shù)據(jù)傳輸,以太網(wǎng)芯片上包括了傳輸控制協(xié)議(transmission?control?protocol,tcp)、用戶數(shù)據(jù)報協(xié)議(user?datagramprotocol,udp)、網(wǎng)絡(luò)控制報文協(xié)議(internet?control?message?protocol,icmp)和地址解析協(xié)議(address?resolution?protocol,arp)等協(xié)議,其中,icmp協(xié)議和arp協(xié)議是以太網(wǎng)協(xié)議中基本的協(xié)議,arp協(xié)議是地址解析協(xié)議,用于實現(xiàn)從ip地址到mac地址的映射,即詢問目標(biāo)ip對應(yīng)的mac地址的一種協(xié)議,icmp協(xié)議是互聯(lián)網(wǎng)控制信息協(xié)議,用于在ip主機(jī)和路由器之間傳遞控制消息,用于報告主機(jī)是否可達(dá)、路由是否可用。
2、在有些特殊的領(lǐng)域,比如對網(wǎng)絡(luò)某些關(guān)鍵數(shù)據(jù)流時延敏感的情況,要根據(jù)關(guān)鍵數(shù)據(jù)流的特點制定一種自定義協(xié)議以實現(xiàn)特定的功能,一般以太網(wǎng)芯片無法滿足使用要求,這種情況可以使用fpga芯片進(jìn)行以太網(wǎng)協(xié)議的定制開發(fā)。
3、但是使用fpga芯片定制的以太網(wǎng)協(xié)議往往無法兼顧arp和icmp等基本網(wǎng)絡(luò)協(xié)議,無法實現(xiàn)arp協(xié)議、icmp協(xié)議和自定義協(xié)議的自動識別和切換。
技術(shù)實現(xiàn)思路
1、本技術(shù)提供一種以太網(wǎng)協(xié)議自動切換系統(tǒng)、設(shè)備及存儲介質(zhì),可以兼顧arp和icmp等基本網(wǎng)絡(luò)協(xié)議,實現(xiàn)arp協(xié)議、icmp協(xié)議和自定義協(xié)議的自動識別和切換。
2、為達(dá)到上述目的,本技術(shù)采用如下技術(shù)方案:
3、第一方面,本技術(shù)提供了一種以太網(wǎng)協(xié)議自動切換系統(tǒng),所述系統(tǒng)包括:輸出控制模塊和多個協(xié)議模塊;
4、多個協(xié)議模塊中的目標(biāo)協(xié)議模塊,用于接收外部網(wǎng)絡(luò)傳輸?shù)木W(wǎng)絡(luò)數(shù)據(jù),識別所述網(wǎng)絡(luò)數(shù)據(jù)是否屬于目標(biāo)協(xié)議的數(shù)據(jù),得到識別結(jié)果,如果識別結(jié)果表征所述網(wǎng)絡(luò)數(shù)據(jù)屬于目標(biāo)協(xié)議的數(shù)據(jù),對所述網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行處理后,得到目標(biāo)協(xié)議的數(shù)據(jù)包,向所述輸出控制模塊發(fā)送所述目標(biāo)協(xié)議的數(shù)據(jù)包,向所述輸出控制模塊發(fā)送目標(biāo)協(xié)議的控制信號,所述目標(biāo)協(xié)議模塊為多個協(xié)議模塊中的任意一個協(xié)議模塊;
5、所述輸出控制模塊,用于如果接收到所述目標(biāo)協(xié)議模塊發(fā)送目標(biāo)協(xié)議的控制信號,并且,所述輸出控制模塊的發(fā)送完成信號有效,則切換到目標(biāo)協(xié)議的收發(fā)狀態(tài),在所述目標(biāo)協(xié)議的收發(fā)狀態(tài)下,接收所述目標(biāo)協(xié)議模塊發(fā)送的目標(biāo)協(xié)議的數(shù)據(jù)包,對所述目標(biāo)協(xié)議的數(shù)據(jù)包處理后進(jìn)行轉(zhuǎn)發(fā)。
6、在一些可能的實現(xiàn)方式中,所述目標(biāo)協(xié)議模塊,具體用于如果網(wǎng)絡(luò)數(shù)據(jù)中包括目標(biāo)協(xié)議的請求數(shù)據(jù),則得到所述網(wǎng)絡(luò)數(shù)據(jù)屬于目標(biāo)協(xié)議的數(shù)據(jù)的識別結(jié)果,如果網(wǎng)絡(luò)數(shù)據(jù)中不包括目標(biāo)協(xié)議的請求數(shù)據(jù),則得到所述網(wǎng)絡(luò)設(shè)備不屬于目標(biāo)協(xié)議的數(shù)據(jù)的識別結(jié)果。
7、在一些可能的實現(xiàn)方式中,所述目標(biāo)協(xié)議模塊包括目標(biāo)接收子模塊、目標(biāo)控制子模塊、目標(biāo)發(fā)送子模塊;
8、所述目標(biāo)接收子模塊,用于在接收所述網(wǎng)絡(luò)數(shù)據(jù)時,向所述目標(biāo)控制模塊發(fā)送目標(biāo)接收開始信號,并將接收的網(wǎng)絡(luò)數(shù)據(jù)發(fā)送給所述目標(biāo)控制子模塊,在完成接收所述網(wǎng)絡(luò)數(shù)據(jù)時,向所述目標(biāo)控制子模塊發(fā)送目標(biāo)接收完成信號;
9、所述目標(biāo)控制子模塊,用于向目標(biāo)發(fā)送子模塊發(fā)送目標(biāo)使能信號以及所述網(wǎng)絡(luò)數(shù)據(jù);
10、所述目標(biāo)發(fā)送子模塊,用于對所述網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行處理,得到目標(biāo)協(xié)議的數(shù)據(jù)包,并向輸出控制模塊發(fā)送目標(biāo)協(xié)議的數(shù)據(jù)包,在完成發(fā)送目標(biāo)協(xié)議的數(shù)據(jù)包后向目標(biāo)控制子模塊發(fā)送目標(biāo)完成信號;
11、目標(biāo)控制子模塊,用于向輸出控制模塊發(fā)送目標(biāo)協(xié)議的控制信號,所述目標(biāo)協(xié)議的控制信號包括:所述目標(biāo)接收開始信號、所述目標(biāo)接收完成信號和所述目標(biāo)使能信號。
12、在一些可能的實現(xiàn)方式中,所述目標(biāo)協(xié)議模塊包括預(yù)設(shè)協(xié)議模塊或自定義協(xié)議模塊,所述輸出控制模塊的初始收發(fā)狀態(tài)為自定義協(xié)議的收發(fā)狀態(tài);
13、所述輸出控制模塊,用于在對所述自定義協(xié)議模塊發(fā)送的自定義協(xié)議的數(shù)據(jù)包處理并進(jìn)行轉(zhuǎn)發(fā)后,自定義發(fā)送完成信號由無效切換為有效,如果所述輸出控制模塊接收到所述預(yù)設(shè)協(xié)議的控制信號,則由自定義協(xié)議的收發(fā)狀態(tài)切換到預(yù)設(shè)協(xié)議的收發(fā)狀態(tài),對預(yù)設(shè)協(xié)議模塊發(fā)送的預(yù)設(shè)協(xié)議的數(shù)據(jù)包處理后并進(jìn)行轉(zhuǎn)發(fā)。
14、在一些可能的實現(xiàn)方式中,所述輸出控制模塊,還用于在對預(yù)設(shè)協(xié)議模塊發(fā)送的預(yù)設(shè)協(xié)議的數(shù)據(jù)包轉(zhuǎn)發(fā)后,由所述預(yù)設(shè)協(xié)議的收發(fā)狀態(tài)切換到所述自定義協(xié)議的收發(fā)狀態(tài)。
15、在一些可能的實現(xiàn)方式中,所述目標(biāo)協(xié)議模塊包括還包括存儲子模塊,所述存儲子模塊,用于接收所述目標(biāo)控制子模塊發(fā)送的網(wǎng)絡(luò)數(shù)據(jù),并對所述網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行存儲。
16、在一些可能的實現(xiàn)方式中,所述預(yù)設(shè)協(xié)議模塊包括地址解析arp協(xié)議模塊、網(wǎng)絡(luò)控制報文icmp協(xié)議模塊和用戶數(shù)據(jù)報udp協(xié)議模塊等。
17、第二方面,本技術(shù)提供了一種以太網(wǎng)協(xié)議自動切換方法,所述方法包括:
18、多個協(xié)議模塊中的目標(biāo)協(xié)議模塊接收外部網(wǎng)絡(luò)傳輸?shù)木W(wǎng)絡(luò)數(shù)據(jù),識別所述網(wǎng)絡(luò)數(shù)據(jù)是否屬于目標(biāo)協(xié)議的數(shù)據(jù),得到識別結(jié)果,如果識別結(jié)果表征所述網(wǎng)絡(luò)數(shù)據(jù)屬于目標(biāo)協(xié)議的數(shù)據(jù),對所述網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行處理后,得到目標(biāo)協(xié)議的數(shù)據(jù)包,向所述輸出控制模塊發(fā)送所述目標(biāo)協(xié)議的數(shù)據(jù)包,向所述輸出控制模塊發(fā)送目標(biāo)協(xié)議的控制信號,所述目標(biāo)協(xié)議模塊為多個協(xié)議模塊中的任意一個協(xié)議模塊;
19、輸出控制模塊如果接收到所述目標(biāo)協(xié)議模塊發(fā)送目標(biāo)協(xié)議的控制信號,并且,所述輸出控制模塊的發(fā)送完成信號有效,則切換到目標(biāo)協(xié)議的收發(fā)狀態(tài),在所述目標(biāo)協(xié)議的收發(fā)狀態(tài)下,接收所述目標(biāo)協(xié)議模塊發(fā)送的目標(biāo)協(xié)議的數(shù)據(jù)包,對所述目標(biāo)協(xié)議的數(shù)據(jù)包處理后進(jìn)行轉(zhuǎn)發(fā)。
20、第三方面,本技術(shù)提供了一種計算設(shè)備,包括存儲器和處理器;
21、其中,在所述存儲器中存儲有一個或多個計算機(jī)程序,所述一個或多個計算機(jī)程序包括指令;當(dāng)所述指令被所述處理器執(zhí)行時,使得所述計算設(shè)備執(zhí)行如第一方面中任一項所述的方法。
22、第四方面,本技術(shù)提供了一種計算機(jī)可讀存儲介質(zhì),所述計算機(jī)可讀存儲介質(zhì)用于存儲計算機(jī)程序,所述計算機(jī)程序用于執(zhí)行如第一方面中任一項所述的方法。
23、由上述技術(shù)方案可知,本技術(shù)至少具有如下有益效果:
24、在本技術(shù)中,提供了一種以太網(wǎng)自動切換系統(tǒng),該系統(tǒng)包括輸出控制模塊和多個協(xié)議模塊,多個協(xié)議模塊中的目標(biāo)協(xié)議模塊,用于接收外部網(wǎng)絡(luò)傳輸?shù)木W(wǎng)絡(luò)數(shù)據(jù),識別所述網(wǎng)絡(luò)數(shù)據(jù)是否屬于目標(biāo)協(xié)議的數(shù)據(jù),如果該網(wǎng)絡(luò)數(shù)據(jù)屬于目標(biāo)協(xié)議的數(shù)據(jù),則對該網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行處理,得到目標(biāo)協(xié)議的數(shù)據(jù)包,向輸出控制模塊發(fā)送目標(biāo)協(xié)議的數(shù)據(jù)包和目標(biāo)協(xié)議的控制信號;輸出控制模塊用于接收目標(biāo)協(xié)議模塊發(fā)送的目標(biāo)協(xié)議的控制信號,并且,輸出控制模塊的發(fā)送完成信號有效,則切換到目標(biāo)協(xié)議的收發(fā)狀態(tài),在目標(biāo)協(xié)議的收發(fā)狀態(tài)下,接收目標(biāo)協(xié)議模塊發(fā)送的目標(biāo)協(xié)議的數(shù)據(jù)包,對目標(biāo)協(xié)議的數(shù)據(jù)包處理后進(jìn)行轉(zhuǎn)發(fā)。而傳統(tǒng)方案中,在有些特殊的領(lǐng)域,比如對網(wǎng)絡(luò)某些關(guān)鍵數(shù)據(jù)流時延敏感的情況,要根據(jù)關(guān)鍵數(shù)據(jù)流的特點制定一種自定義協(xié)議以實現(xiàn)特定的功能,一般以太網(wǎng)芯片無法滿足使用要求,這種情況可以使用fpga芯片進(jìn)行以太網(wǎng)協(xié)議的定制開發(fā)。但是使用fpga芯片定制的以太網(wǎng)協(xié)議往往無法兼顧arp和icmp等基本網(wǎng)絡(luò)協(xié)議,要想同時實現(xiàn)arp協(xié)議、icmp協(xié)議和自定義協(xié)議需要制定三種芯片來配合使用。由此可見,本技術(shù)提供的方案可以兼顧arp和icmp等基本網(wǎng)絡(luò)協(xié)議,實現(xiàn)arp協(xié)議、icmp協(xié)議和自定義協(xié)議的自動識別和切換。
25、應(yīng)當(dāng)理解的是,本技術(shù)中對技術(shù)特征、技術(shù)方案、有益效果或類似語言的描述并不是暗示在任意的單個實施例中可以實現(xiàn)所有的特點和優(yōu)點。相反,可以理解的是對于特征或有益效果的描述意味著在至少一個實施例中包括特定的技術(shù)特征、技術(shù)方案或有益效果。因此,本說明書中對于技術(shù)特征、技術(shù)方案或有益效果的描述并不一定是指相同的實施例。進(jìn)而,還可以任何適當(dāng)?shù)姆绞浇M合本實施例中所描述的技術(shù)特征、技術(shù)方案和有益效果。本領(lǐng)域技術(shù)人員將會理解,無需特定實施例的一個或多個特定的技術(shù)特征、技術(shù)方案或有益效果即可實現(xiàn)實施例。在其他實施例中,還可在沒有體現(xiàn)所有實施例的特定實施例中識別出額外的技術(shù)特征和有益效果。