本公开涉及虚拟专用局域网业务中mac地址学习,具体涉及一种虚拟专用局域网业务中mac地址学习方法、装置及相关设备。
背景技术:
1、源mac地址(media access control address,媒体存取控制地址)学习过程,具体是指设备收到vpls(virtual private lan service,虚拟专用局域网业务)报文后,会先根据报文的源mac地址查询mac地址转发表,如果未找到,说明需要执行源mac地址学习,设备收到的具备相同源mac地址的vpls报文根据源mac地址查找mac地址转发表成功,继续后续转发,不再执行源mac地址学习。
2、但是第一个报文触发源mac地址学习到通过学习芯片完成mac地址转发表创建并将转发表成功下发的这段时间,具备相同源mac地址的报文仍然需要执行源mac地址学习。也就是说,相关技术中,可能需要多次重复执行源mac地址学习的问题。
技术实现思路
1、本公开的目的在于提供一种虚拟专用局域网业务中mac地址学习方法、装置及相关设备,用于解决相关技术中,可能需要多次重复执行源mac地址学习的问题的技术问题。
2、第一方面,本公开实施例提供一种虚拟专用局域网业务中mac地址学习方法,应用于通信设备,所述通信设备包括转发芯片,所述转发芯片部署有多个虚拟转发实例vfi,所述方法包括以下步骤:
3、在接收到虚拟专用局域网业务vpls报文的情况下,根据所述vpls报文的源mac地址查找所述vpls报文所属vfi维护的mac地址转发表;
4、在未检索到所述vpls报文所属vfi维护的mac地址转发表情况下,根据所述vpls报文的源mac地址计算所述vpls报文对应的第一标识信息;
5、查找所述vpls报文所属vfi维护的登记信息中,所述第一标识信息对应的条目;
6、在所述第一标识信息对应的条目中记录的mac地址和需要执行源mac地址学习的mac地址不同的情况下,确认需要进行源mac地址学习。
7、在其中一些实施例中,所述第一标识信息对应的条目中记录的mac地址和需要执行源mac地址学习的mac地址不同,包括以下任一项:
8、在所述第一标识信息对应的条目为默认无效值;
9、属于相同vfi但源mac地址不同的vpls报文通过源mac地址计算出的标识信息相同。
10、在其中一些实施例中,所述通信设备还包括学习芯片,所述确认需要进行源mac地址学习之后,所述方法还包括:
11、将执行源mac地址学习的源mac地址记录到第一标识信息对应的条目;
12、向所述学习芯片发送执行源mac地址学习的源mac地址和入路径信息。
13、在其中一些实施例中,所述向所述学习芯片发送执行源mac地址学习的源mac地址和入路径信息之后,所述方法还包括:
14、接收所述学习芯片发送的mac地址转发表;以及
15、更新所述vpls报文所属vfi的登记信息中的条目。
16、在其中一些实施例中,所述方法还包括:
17、在所述学习芯片完成源mac地址学习之后,清除所述vpls报文所属vfi维护的登记信息结构保存的源mac地址。
18、在其中一些实施例中,所述接收所述学习芯片发送的mac地址转发表之后,所述方法还包括:
19、根据所述mac地址转发表中的mac地址,计算第二标识信息;
20、查找所述mac地址转发表所属vfi构建的登记信息中,所述第二标识信息对应的第二条目;
21、在所述第二条目保存保存的mac地址和第二mac地址转发表中的mac地址相同的情况下,将所述第二条目设置为默认无效值。
22、在其中一些实施例中,所述根据所述vpls报文的源mac地址查找所述vpls报文所属vfi维护的mac地址转发表之后,所述方法还包括:
23、在满足预设转发条件的情况下,转发所述vpls报文,其中,所述预设转发条件包括以下任一项:
24、检索到所述vpls报文所属vfi维护的mac地址转发表;
25、所述第一标识信息对应的条目中记录的mac地址和需要执行源mac地址学习的mac地址相同;
26、完成源mac地址学习。
27、第二方面,本公开实施例还提供一种虚拟专用局域网业务中mac地址学习装置,应用于通信设备,所述通信设备包括转发芯片,所述转发芯片部署有多个虚拟转发实例vfi,所述装置包括:
28、转发表查找模块,用于在接收到vpls报文的情况下,根据所述vpls报文的源mac地址查找所述vpls报文所属vfi维护的mac地址转发表;
29、计算模块,用于在未检索到所述vpls报文所属vfi维护的mac地址转发表情况下,根据所述vpls报文的源mac地址计算所述vpls报文对应的第一标识信息;
30、条目查找模块,用于查找所述vpls报文所属vfi维护的登记信息中,所述第一标识信息对应的条目;
31、确认模块,用于在所述第一标识信息对应的条目中记录的mac地址和需要执行源mac地址学习的mac地址不同的情况下,确认需要进行源mac地址学习。
32、第三方面,本公开实施例还提供一种电子设备,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述方法的步骤。
33、第四方面,本公开实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
34、在本公开实施例中,通过查找vpls报文所属vfi维护的登记信息中,第一标识信息对应的条目,并根据第一标识信息对应的条目中记录的mac地址和需要执行源mac地址学习的mac地址是否相同以确认是否需要进行源mac地址学习,避免重复触发源mac地址学习,能够优化学习过程,避免多次重复执行源mac地址学习。
1.一种虚拟专用局域网业务中mac地址学习方法,应用于通信设备,所述通信设备包括转发芯片,所述转发芯片部署有多个虚拟转发实例vfi,其特征在于,所述方法包括以下步骤:
2.如权利要求1所述的方法,其特征在于,所述第一标识信息对应的条目中记录的mac地址和需要执行源mac地址学习的mac地址不同,包括以下任一项:
3.如权利要求1或2所述的方法,其特征在于,所述通信设备还包括学习芯片,所述确认需要进行源mac地址学习之后,所述方法还包括:
4.如权利要求3所述的方法,其特征在于,所述向所述学习芯片发送执行源mac地址学习的源mac地址和入路径信息之后,所述方法还包括:
5.如权利要求3所述的方法,其特征在于,所述方法还包括:
6.如权利要求4所述的方法,其特征在于,所述接收所述学习芯片发送的mac地址转发表之后,所述方法还包括:
7.如权利要求1所述的方法,其特征在于,所述根据所述vpls报文的源mac地址查找所述vpls报文所属vfi维护的mac地址转发表之后,所述方法还包括:
8.一种虚拟专用局域网业务中mac地址学习装置,应用于通信设备,所述通信设备包括转发芯片,所述转发芯片部署有多个虚拟转发实例vfi,其特征在于,所述装置包括:
9.一种电子设备,其特征在于,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现如权利要求1至7中任一项所述方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7中任一项所述方法的步骤。