本技術(shù)涉及通信,尤其涉及一種多端口地址解析協(xié)議的轉(zhuǎn)發(fā)方法、裝置、設(shè)備及介質(zhì)。
背景技術(shù):
1、在通信技術(shù)領(lǐng)域,尤其是在具有網(wǎng)絡(luò)負(fù)載均衡(network?load?balancing,nlb)的場(chǎng)景下,nlb服務(wù)器一般可以工作在單播或者組播模式下,在不同模式下面群集的mac地址不一樣,單播時(shí)使用單播mac地址,組播模式下使用的是組播mac地址。組播模式下,設(shè)備收到arp應(yīng)答報(bào)文后,因?yàn)樵磎ac地址是組播,一般設(shè)備在處理單播與組播mac時(shí)轉(zhuǎn)發(fā)行為不一樣,因?yàn)榻M播mac會(huì)涉及到流量從多個(gè)端口出去,現(xiàn)在的芯片會(huì)在路由轉(zhuǎn)發(fā)的最后檢查mac地址是否是組播mac,如果是則會(huì)查找一下組播mac表,在從對(duì)應(yīng)的一組端口里面轉(zhuǎn)發(fā)出去。
2、但是上面的處理方法僅適用于特定的芯片,一旦芯片更換處理方案,上面的處理方法就不再適用,因此,現(xiàn)在亟需一種多端口arp協(xié)議的轉(zhuǎn)發(fā)方法。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)提供一種多端口地址解析協(xié)議的轉(zhuǎn)發(fā)方法、裝置、設(shè)備及介質(zhì),可以實(shí)現(xiàn)基于arp協(xié)議的多端口轉(zhuǎn)發(fā)流量,適用于多種芯片。
2、為達(dá)到上述目的,本技術(shù)采用如下技術(shù)方案:
3、第一方面,本技術(shù)提供了一種多端口地址解析協(xié)議的轉(zhuǎn)發(fā)方法,所述方法包括:
4、接收第一地址解析協(xié)議arp報(bào)文,所述第一arp報(bào)文攜帶有第一mac地址;
5、判斷所述第一mac地址是否為多播mac表中的mac地址,得到第一判斷結(jié)果,所述多播mac表包括參考端口與參考多播mac地址的映射關(guān)系;
6、如果所述第一判斷結(jié)果表征所述第一mac地址是多播mac表中的mac地址,則根據(jù)所述第一arp報(bào)文的目的ip地址去下發(fā)acl規(guī)則,根據(jù)acl規(guī)則,將與第一arp報(bào)文具有相同目的ip地址的流量數(shù)據(jù)向所述第一mac地址對(duì)應(yīng)的端口轉(zhuǎn)發(fā)。
7、在一些可能的實(shí)現(xiàn)方式中,所述根據(jù)所述第一arp報(bào)文的目的ip地址去下發(fā)acl規(guī)則,根據(jù)acl規(guī)則,將與第一arp報(bào)文具有相同目的ip地址的流量數(shù)據(jù)向所述第一mac地址對(duì)應(yīng)的端口轉(zhuǎn)發(fā),包括:
8、根據(jù)所述第一arp報(bào)文的目的ip地址去下發(fā)acl規(guī)則,根據(jù)acl規(guī)則去匹配在多播mac表中具有相同mac地址的端口,所述mac地址相同的端口至少包括一個(gè),則將與第一arp報(bào)文具有相同目的ip地址的流量數(shù)據(jù)向所述mac地址相同的端口轉(zhuǎn)發(fā)。
9、在一些可能的實(shí)現(xiàn)方式中,所述判斷所述第一mac地址是否為多播mac表中的mac地址,得到第一判斷結(jié)果,包括:
10、判斷所述第一mac地址是否為多播mac地址,得到第二判斷結(jié)果;
11、如果第二判斷結(jié)果表征所述第一mac地址是多播mac地址,則判斷所述第一mac地址是否為多播mac表中的mac地址,得到第一判斷結(jié)果。
12、在一些可能的實(shí)現(xiàn)方式中,所述方法還包括:
13、如果第二判斷結(jié)果表征所述第一mac地址不是多播mac地址,則停止判斷第一arp報(bào)文,判斷下一個(gè)arp報(bào)文。
14、在一些可能的實(shí)現(xiàn)方式中,所述方法還包括:
15、如果第一判斷結(jié)果表征所述第一mac地址不是多播mac表中的mac地址,則停止判斷第一arp報(bào)文,判斷下一個(gè)arp報(bào)文。
16、在一些可能的實(shí)現(xiàn)方式中,所述方法還包括:
17、如果第一mac地址對(duì)應(yīng)的端口中的第一端口出現(xiàn)故障,需要將第一端口更換為第四端口,則給第四端口配置與第一端口相同的多播mac地址,同步更新acl規(guī)則。
18、在一些可能的實(shí)現(xiàn)方式中,所述方法還包括:
19、所述多播mac表包括參考端口與參考多播mac地址的映射關(guān)系,一個(gè)參考多播mac地址配置至少一個(gè)參考端口。
20、第二方面,本技術(shù)提供了一種多端口地址解析協(xié)議的轉(zhuǎn)發(fā)裝置,所述裝置包括:
21、接收模塊,用于接收第一地址解析協(xié)議arp報(bào)文,所述第一arp報(bào)文攜帶有第一mac地址;
22、判斷模塊,用于判斷所述第一mac地址是否為多播mac表中的mac地址,得到第一判斷結(jié)果,所述多播mac表包括參考端口與參考多播mac地址的映射關(guān)系;如果所述第一判斷結(jié)果表征所述第一mac地址是多播mac表中的地址,則根據(jù)所述第一arp報(bào)文的目的ip地址去下發(fā)acl規(guī)則;
23、發(fā)送模塊,用于根據(jù)acl規(guī)則,將與第一arp報(bào)文具有相同目的ip地址的流量數(shù)據(jù)向所述第一mac地址對(duì)應(yīng)的端口轉(zhuǎn)發(fā)。
24、第三方面,本技術(shù)提供了一種計(jì)算設(shè)備,包括存儲(chǔ)器和處理器;
25、其中,在所述存儲(chǔ)器中存儲(chǔ)有一個(gè)或多個(gè)計(jì)算機(jī)程序,所述一個(gè)或多個(gè)計(jì)算機(jī)程序包括指令;當(dāng)所述指令被所述處理器執(zhí)行時(shí),使得所述計(jì)算設(shè)備執(zhí)行如第一方面中任一項(xiàng)所述的方法。
26、第四方面,本技術(shù)提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),所述計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)用于存儲(chǔ)計(jì)算機(jī)程序,所述計(jì)算機(jī)程序用于執(zhí)行如第一方面中任一項(xiàng)所述的方法。
27、第五方面,本技術(shù)提供了一種計(jì)算機(jī)程序產(chǎn)品,所述計(jì)算機(jī)程序產(chǎn)品包括一個(gè)或多個(gè)計(jì)算機(jī)指令,在所述計(jì)算機(jī)指令被計(jì)算機(jī)執(zhí)行時(shí),所述計(jì)算機(jī)執(zhí)行如第一方面中任一項(xiàng)所述的方法。
28、由上述技術(shù)方案可知,本技術(shù)至少具有如下有益效果:
29、在本技術(shù)中,接收第一地址解析協(xié)議arp報(bào)文,所述第一arp報(bào)文攜帶有第一mac地址;判斷第一mac地址是否為多播mac表中的mac地址,得到第一判斷結(jié)果;如果第一判斷結(jié)果表征第一mac地址是多播mac表中的地址,則根據(jù)所述第一arp報(bào)文的目的ip地址去下發(fā)acl規(guī)則,根據(jù)acl規(guī)則,將與第一arp報(bào)文具有相同目的ip地址的流量數(shù)據(jù)向第一mac地址對(duì)應(yīng)的端口轉(zhuǎn)發(fā),實(shí)現(xiàn)基于arp的多端口轉(zhuǎn)發(fā)。在現(xiàn)有技術(shù)中,mac地址是由舊芯片內(nèi)部的特定寄存器或者硬件電路生成并使用的,那么更換芯片后可能無(wú)法直接使用原來(lái)的多播mac地址,因?yàn)樾滦酒赡苡胁煌膍ac地址生成機(jī)制或者存儲(chǔ)方式,它可能會(huì)遵循自己的默認(rèn)mac地址設(shè)置或者有新的硬件限制,導(dǎo)致原來(lái)的多播mac地址無(wú)法正常工作。即使能夠繼續(xù)使用原來(lái)的多播mac地址,也需要考慮新芯片與現(xiàn)有網(wǎng)絡(luò)環(huán)境和軟件的兼容性??梢?jiàn),本技術(shù)通過(guò)arp協(xié)議以及acl規(guī)則實(shí)現(xiàn)基于arp的多端口轉(zhuǎn)發(fā),適用于多種芯片,避免由于芯片的更換導(dǎo)致原有的mac地址不適用。
30、應(yīng)當(dāng)理解的是,本技術(shù)中對(duì)技術(shù)特征、技術(shù)方案、有益效果或類(lèi)似語(yǔ)言的描述并不是暗示在任意的單個(gè)實(shí)施例中可以實(shí)現(xiàn)所有的特點(diǎn)和優(yōu)點(diǎn)。相反,可以理解的是對(duì)于特征或有益效果的描述意味著在至少一個(gè)實(shí)施例中包括特定的技術(shù)特征、技術(shù)方案或有益效果。因此,本說(shuō)明書(shū)中對(duì)于技術(shù)特征、技術(shù)方案或有益效果的描述并不一定是指相同的實(shí)施例。進(jìn)而,還可以任何適當(dāng)?shù)姆绞浇M合本實(shí)施例中所描述的技術(shù)特征、技術(shù)方案和有益效果。本領(lǐng)域技術(shù)人員將會(huì)理解,無(wú)需特定實(shí)施例的一個(gè)或多個(gè)特定的技術(shù)特征、技術(shù)方案或有益效果即可實(shí)現(xiàn)實(shí)施例。在其他實(shí)施例中,還可在沒(méi)有體現(xiàn)所有實(shí)施例的特定實(shí)施例中識(shí)別出額外的技術(shù)特征和有益效果。