一种广播报文的转发方法及系统技术方案

技术编号:20550062 阅读:33 留言:0更新日期:2019-03-09 22:21
本发明专利技术实施例提供一种广播报文的转发方法及系统。所述方法包括:接收广播报文,计算所述广播报文的哈希值;根据哈希值与虚拟交换链路VSL的映射关系,确定所述广播报文对应的n条虚拟交换链路VSL;根据所述n条虚拟交换链路VSL各自对应的芯片配置的所述哈希值对应的广播过滤表项的转发行为,转发所述广播报文。本发明专利技术实施例提供的广播报文的转发方法,通过广播报文的哈希值,利用芯片的广播过滤表项,将广播报文按照哈希值分配到不同的虚拟交换链路中,避开了跨芯片VSL口不能组成物理TRUNK的限制,实现了跨设备广播流按照哈希值进行均衡的目的,减少了虚拟交换链路因广播流量过大导致的丢包,保证了跨设备系统的稳定运行。

【技术实现步骤摘要】
一种广播报文的转发方法及系统
本专利技术实施例涉及通信
,具体涉及一种广播报文的转发方法及系统。
技术介绍
堆叠系统,即虚拟交换单元(VirtualSwitchUnit,VSU),是将多台物理交换设备通过虚拟化技术组合成一台虚拟交换设备,堆叠系统可简化网络设备的配置复杂度,提供高可靠性、高冗余的网络。堆叠口,即HG口,是一种用于芯片间互联的端口类型。堆叠链路,即虚拟交换链路(VirtualSwitchLink,VSL),是指VSU中连接相邻两台物理交换设备间的链路。VSL链路两端的端口称为VSL口,其端口类型为HG口。在机箱式VSU中,为了保证更高的可靠性,VSL链路往往部署在不同的板卡上。图1为堆叠系统VSL链路示意图,如图1所示,堆叠系统包括交换1和交换机2,交换机1的6个卡槽分别为1、2、3、4、5和6,交换机2的6个卡槽分别为10、11、12、13、14和15,交换机1与交换机2之间有三条VSL链路:VSL1,对应的VSL口为2和11;VSL2对应的VSL口为4和13;VSL3,对应的VSL口为6和15。物理TRUNK,是指硬件上将多个HG口进行组合,形成的链路聚合口。物理TRUNK可以有效的提升硬件芯片间的有效带宽,同时达到互相备份的高可靠性的目的。由于目前箱式交换机不支持不同芯片上的VSL口组成物理TRUNK,只能简单的基于报文的源目的信息进行处理,导致跨机箱流量无法很好的均衡到多条VSL链路上,在大流量的场景下,会出现部分VSL链路带宽不足的问题。特别的,对于广播报文,由于报文出口并不唯一,均衡效果更差。面对当前网络设备日益增多的流量,堆叠系统的跨设备广播流量均衡问题急需解决。由于广播流量的转发行为是在对应的虚拟局域网(VirtualLocalAreaNetwork,VLAN)内泛洪,而有效的VLAN范围是1-4094。因此,现有广播流量均衡方法是将这些VLAN均匀的分布在VSL链路上,如图1所示,VLAN1-VLAN4094均匀分布到VSL链路VSL1、VSL2和VSL3上,可对广播流量进行简单的均衡。然而现有方案仅基于VLAN对广播报文进行均衡,即某个固定VLAN的广播报文仅经过1条固定的VSL链路转发。当某一个VLAN内广播报文较多时,会出现对应VSL链路的带宽不足,而其他VSL链路的带宽闲置的问题,影响报文的正常转发。
技术实现思路
针对现有技术中的缺陷,本专利技术实施例提供了一种广播报文的转发方法及系统。第一方面,本专利技术实施例提供一种广播报文的转发方法,包括:接收广播报文,计算所述广播报文的哈希值;根据哈希值与虚拟交换链路VSL的映射关系,确定所述广播报文对应的n条虚拟交换链路VSL,其中n大于等于1;根据所述n条虚拟交换链路VSL各自对应的芯片配置的与所述哈希值对应的广播过滤表项中的转发行为,转发所述广播报文。如上方法,可选地,所述确定所述广播报文对应的n条虚拟交换链路VSL之后,还包括:当n大于等于2时,根据所述哈希值与虚拟交换链路VSL的映射关系,确定所述n条虚拟交换链路VSL中的第一虚拟交换链路VSL;将所述第一虚拟交换链路VSL所在芯片中的与所述哈希值对应的广播过滤表项中的转发行为配置为允许转发;将所述n条虚拟交换链路VSL中的除了所述第一虚拟交换链路VSL的其他虚拟交换链路VSL所在芯片中的与所述哈希值对应的广播过滤表项中的转发行为配置为禁止转发。如上方法,可选地,所述根据所述哈希值与虚拟交换链路VSL的映射关系,确定所述n条虚拟交换链路VSL中的第一虚拟交换链路VSL,包括:若NH≥n,则根据链路总数均分所有哈希值,确定所述n条虚拟交换链路VSL中第一虚拟交换链路VSL,其中,n为链路总数,NH为哈希值总数。如上方法,可选地,所述根据链路总数均分所有哈希值,确定所述n条虚拟交换链路VSL中第一虚拟交换链路VSL,包括:根据下述公式确定每条虚拟交换链路VSL配置转发的至少一个哈希值:Yi=(i-1)+NV*j其中,1≤i≤n,j≥0,i,j为整数,且Yi≤NH,Yi为第i条虚拟交换链路VSL配置的哈希值;将配置转发所述哈希值的虚拟交换链路VSL,作为所述n条虚拟交换链路VSL中第一虚拟交换链路VSL。。如上方法,可选地,还包括:若判断获知虚拟交换链路VSL的链路总数n发生变化,则更新所述虚拟交换链路VSL的链路总数;根据更新后的链路总数,更新所述哈希值与虚拟交换链路VSL的映射关系;根据更新后的映射关系确定每条虚拟交换链路VSL所在芯片中每个哈希值对应的广播过滤表项中的预更新转发行为,将配置结果标记为未处理;遍历变化后的虚拟交换链路VSL中所有未处理的广播过滤表项,若变化后的虚拟交换链路VSL中的第二虚拟交换链路VSL所在芯片中的与所述哈希值对应的第二广播过滤表项中的转发行为由允许转发预更新为禁止转发,则将所述第二虚拟交换链路VSL中所述哈希值对应的第二广播过滤表项中的转发行更新为禁止转发,并将所述第二广播过滤表项中所述哈希值对应的配置结果更新为已处理;若虚拟交换链路VSL中的第二虚拟交换链路VSL所在芯片中的与所述哈希值对应的第二广播过滤表项中的转发行为由禁止转发预更新为允许转发,则遍历变化后的虚拟交换链路VSL中的除所述第二虚拟交换链路VSL以外的其他虚拟交换链路VSL所在芯片中的与所述哈希值对应的已处理的所有广播过滤表项,若其他虚拟交换链路VSL所在芯片中的与所述哈希值对应的已处理的广播过滤表项中的转发行为全部为禁止转发,则将所述第二虚拟交换链路VSL所在芯片中的与所述哈希值对应的第二广播过滤表项中的转发行为更新为允许转发,并将所述第二广播过滤表项中所述哈希值对应的配置结果更新为已处理。如上方法,可选地,还包括:若第二广播过滤表项中所述哈希值对应的配置结果为已处理,则将所述哈希值对应的配置结果通告至其他虚拟交换链路VSL。第二方面,本专利技术实施例提供一种广播报文的转发系统,包括:接收模块,用于接收广播报文,计算所述广播报文的哈希值;映射模块,用于根据哈希值与虚拟交换链路VSL的映射关系,确定所述广播报文对应的n条虚拟交换链路VSL,其中n大于等于1;转发模块,用于根据所述n条虚拟交换链路VSL各自对应的芯片配置的与所述哈希值对应的广播过滤表项中的转发行为,转发所述广播报文。如上述系统,可选地,还包括:选择模块,用于当n大于等于2时,根据所述哈希值与虚拟交换链路VSL的映射关系,确定所述n条虚拟交换链路VSL中的第一虚拟交换链路VSL;第一配置模块,用于将所述第一虚拟交换链路VSL所在芯片中的与所述哈希值对应的广播过滤表项中的转发行为配置为允许转发;第二配置模块,用于将所述n条虚拟交换链路VSL中的除了所述第一虚拟交换链路VSL的其他虚拟交换链路VSL所在芯片中的与所述哈希值对应的广播过滤表项中的转发行为配置为禁止转发。如上述系统,可选地,所述选择模块具体用于:若NH≥n,则根据链路总数均分所有哈希值,确定所述n条虚拟交换链路VSL中第一虚拟交换链路VSL,其中,n为链路总数,NH为哈希值总数。如上述系统,可选地,所述选择模块具体用于:根据下述公式确定每条虚拟交换链路VSL配置转发的至少一个哈希值:Yi=(i-1)+NV*j其中,1≤i≤n,j≥0,i,j本文档来自技高网
...

【技术保护点】
1.一种广播报文的转发方法,其特征在于,包括:接收广播报文,计算所述广播报文的哈希值;根据哈希值与虚拟交换链路VSL的映射关系,确定所述广播报文对应的n条虚拟交换链路VSL,其中n大于等于1;根据所述n条虚拟交换链路VSL各自对应的芯片配置的与所述哈希值对应的广播过滤表项中的转发行为,转发所述广播报文。

【技术特征摘要】
1.一种广播报文的转发方法,其特征在于,包括:接收广播报文,计算所述广播报文的哈希值;根据哈希值与虚拟交换链路VSL的映射关系,确定所述广播报文对应的n条虚拟交换链路VSL,其中n大于等于1;根据所述n条虚拟交换链路VSL各自对应的芯片配置的与所述哈希值对应的广播过滤表项中的转发行为,转发所述广播报文。2.根据权利要求1所述的方法,其特征在于,所述确定所述广播报文对应的n条虚拟交换链路VSL之后,还包括:当n大于等于2时,根据所述哈希值与虚拟交换链路VSL的映射关系,确定所述n条虚拟交换链路VSL中的第一虚拟交换链路VSL;将所述第一虚拟交换链路VSL所在芯片中的与所述哈希值对应的广播过滤表项中的转发行为配置为允许转发;将所述n条虚拟交换链路VSL中的除了所述第一虚拟交换链路VSL的其他虚拟交换链路VSL所在芯片中的与所述哈希值对应的广播过滤表项中的转发行为配置为禁止转发。3.根据权利要求2所述的方法,其特征在于,所述根据所述哈希值与虚拟交换链路VSL的映射关系,确定所述n条虚拟交换链路VSL中的第一虚拟交换链路VSL,包括:若NH≥n,则根据链路总数均分所有哈希值,确定所述n条虚拟交换链路VSL中第一虚拟交换链路VSL,其中,n为链路总数,NH为哈希值总数。4.根据权利要求3所述的方法,其特征在于,所述根据链路总数均分所有哈希值,确定所述n条虚拟交换链路VSL中第一虚拟交换链路VSL,包括:根据下述公式确定每条虚拟交换链路VSL配置转发的至少一个哈希值:Yi=(i-1)+NV*j其中,1≤i≤n,j≥0,i,j为整数,且Yi≤NH,Yi为第i条虚拟交换链路VSL配置的哈希值;将配置转发所述哈希值的虚拟交换链路VSL,作为所述n条虚拟交换链路VSL中第一虚拟交换链路VSL。5.根据权利要求2-4任一所述的方法,其特征在于,还包括:若判断获知虚拟交换链路VSL的链路总数n发生变化,则更新所述虚拟交换链路VSL的链路总数;根据更新后的链路总数,更新所述哈希值与虚拟交换链路VSL的映射关系;根据更新后的映射关系确定每条虚拟交换链路VSL所在芯片中每个哈希值对应的广播过滤表项中的预更新转发行为,将配置结果标记为未处理;遍历变化后的虚拟交换链路VSL中所有未处理的广播过滤表项,若变化后的虚拟交换链路VSL中的第二虚拟交换链路VSL所在芯片中的与所述哈希值对应的第二广播过滤表项中的转发行为由允许转发预更新为禁止转发,则将所述第二虚拟交换链路VSL中所述哈希值对应的第二广播过滤表项中的转发行更新为禁止转发,并将所述第二广播过滤表项中所述哈希值对应的配置结果更新为已处理;若虚拟交换链路VSL中的第二虚拟交换链路VSL所在芯片中的与所述哈希值对应的第二广播过滤表项中的转发行为由禁止转发预更新为允许转发,则遍历变化后的虚拟交换链路VSL中的除所述第二虚拟交换链路VSL以外的其他虚拟交换链路VSL所在芯片中的与所述哈希值对应的已处理的所有广播过滤表项,若其他虚拟交换链路VSL所在芯片中的与所述哈希值对应的已处理的广播过滤表项中的转发行为全部为禁止转发,则将所述第二虚拟交换链路VSL所在芯片中的与所述哈希值对应的第二广播过滤表项中的转发行为更新为允许转发,并将所述第二广播过滤表项中所述哈希值对应的配置结果更新为已处理。6.根据权利要求5所述的方法,其特征在于,还包括:若第二广播过滤表项中所述哈希值对应的配置结果为已处理,则将所述哈希值对应的配置结果通告至其他虚...

【专利技术属性】
技术研发人员:黄伟山蔡世兴
申请(专利权)人:锐捷网络股份有限公司
类型:发明
国别省市:福建,35

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1