System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于组播表项缓存的报文转发方法、交换机装置制造方法及图纸_技高网

基于组播表项缓存的报文转发方法、交换机装置制造方法及图纸

技术编号:41263984 阅读:4 留言:0更新日期:2024-05-11 09:21
本发明专利技术涉及以太网交换机技术领域,具体涉及一种基于组播表项缓存的报文转发方法、交换机装置,包括:S1:当接收到组播控制报文时,对组播控制报文提取地址控制信息和对应于地址控制信息的待控制地址;S2:将地址控制信息和待控制地址添加至组播表项缓存中;S3:当交换机装置进入整机封包间隙时,读取并依照组播表项缓存对组播表项存储器中的组播列表进行更新。有益效果在于:在交换机装置中引入了独立的组播表项缓存,先对地址控制信息和待控制地址进行缓存,而不进行组播列表的维护。进入整机封包间隙时,再一次性进行更新。通过上述方式避免了在转发组播串流报文的同时,还需要查找、更新组播列表导致的额外性能开销,降低了芯片成本。

【技术实现步骤摘要】

本专利技术涉及以太网交换机,具体涉及一种基于组播表项缓存的报文转发方法、交换机装置


技术介绍

1、组播又称多目标广播、多播。网络中使用的一种传输方式,它允许把所发消息传送给所有可能目的地中的一个经过选择的子集,即向明确指出的多种地址输送信息。是一种在一个发送者和多个接收者之间进行通信的方法。1985年9月,steve与其导师提出了支持ip组播的扩展模型,明确了internet组管理协议(internet group management protocol,igmp)概念。12月,steve将此概念提交给了ietf,而后经过两次更新该组播模型。

2、现有技术中,为实现组播数据的转发流程,通常会采用multicast engine来对输入的组播数据包进行识别、分发至发起过接收请求的接收者一侧。一般而言,multicastengine的实现为借助部分switch core硬件表项然后主要以cpuss(cpu+内存+flash/其他非易失存储设备))参与逻辑运算来实现组播控制。当输入组播控制数据包时,该硬件会对报文中的组播地址(gip)和预先存储的地址列表(gip table)进行查找,当地址列表中存在对应地址时,对该地址的驻留时间进行刷新,如果不存在且为join类型,则进行组播地址的添加流程,如果存在且为leave类型,则进行组播地址的删除流程。基于上述流程来维护组播表项,并在输入组播串流数据包时,依照组播表项对组播串流数据包进行转发。

3、但是,在实际实施过程中,专利技术人发现,组播控制数据报文在应用中往往是慢速协议,而在某些地址列表只允许t1组播数据访问一次的场景下,即使组播串流数据包不进行列表维护,但是同一时刻t1,对于地址列表来说也需要进行2次操作,而地址列表应用中往往数量较大(如4k/8k...等),如果改动地址列表项硬件特性如支持更多的并行操作而允许t1多次操作的话,那么会带来芯片成本的大幅增加。


技术实现思路

1、针对现有技术中存在的上述问题,现提供一种基于组播表项缓存的报文转发方法;另一方面,还提供用于实施该报文转发方法的交换机装置。

2、具体技术方案如下:

3、一种基于组播表项缓存的报文转发方法,适用于交换机装置,所述交换机装置中设置有组播表项缓存和组播表项存储器,所述报文转发方法包括:

4、步骤s1:当接收到组播控制报文时,对所述组播控制报文提取地址控制信息和对应于所述地址控制信息的待控制地址;

5、所述地址控制信息用于表示将所述待控制地址关联于组播列表进行操作的操作方式,包括将所述待控制地址加入组播列表或自所述组播列表中将所述待控制地址删除;

6、步骤s2:将所述地址控制信息和所述待控制地址添加至所述组播表项缓存中;

7、步骤s3:当所述交换机装置进入整机封包间隙时,读取并依照所述组播表项缓存对所述组播表项存储器中的所述组播列表进行更新。

8、另一方面,于执行所述步骤s1之前还包括报文判别过程,所述报文判别过程包括:

9、步骤a01:接收组播协议报文,判断所述组播协议报文是否为所述组播控制报文;

10、若是,转向所述步骤s1;

11、若否,表明所述组播协议报文为组播串流报文,依照所述组播列表对所述组播串流报文进行处理。

12、另一方面,所述步骤a01中,当所述组播协议报文为所述组播串流报文时,转向步骤a02;

13、步骤a02:获取所述组播串流报文中的待转发地址端口信息;

14、步骤a03:依照所述待转发地址端口信息对所述组播列表进行查找,以判断是否存在匹配项;

15、若是,依照所述匹配项对所述组播串流报文进行转发;

16、若否,舍弃所述组播串流报文。

17、另一方面,所述步骤s2包括:

18、步骤s21:查找所述组播表项缓存,以确定所述组播表项缓存的队列末尾;

19、步骤s22:于所述队列末尾添加所述地址控制信息和所述待控制地址。

20、另一方面,所述步骤s3包括:

21、步骤s31:依照所述组播表项缓存中的队列顺序依次读取所述组播表项缓存的缓存条目;

22、每组缓存条目分别包括一条所述地址控制信息和对应于所述地址控制信息的待控制地址;

23、步骤s32:依照所述缓存条目依次对所述组播列表进行更新,随后删除所述组播表项缓存中的所述缓存条目,并返回所述步骤s31,直至遍历所有的所述缓存条目。

24、另一方面,所述步骤s32中,对所述组播列表进行更新包括:增加组播地址、删除组播地址和更新组播地址的保持时间。

25、另一方面,在执行所述步骤s2之后还包括:

26、步骤b3:依照所述组播控制报文包含的转发信息对所述组播控制报文进行转发或舍弃。

27、一种交换机装置,包括组播表项缓存和组播表项存储器,所述交换机芯片用于实施上述的报文转发方法。

28、上述技术方案具有如下优点或有益效果:

29、针对现有技术中的组播列表维护方法对列表访问次数较多,开销较大的问题,本方案中在交换机装置中引入了独立的组播表项缓存,并在接收到组播控制报文,先对地址控制信息和待控制地址进行缓存,而不进行组播列表的维护。待交换机装置进入整机封包间隙时,再一次性读取地址控制信息和待控制地址对组播列表进行更新。通过上述方式避免了在转发组播串流报文的同时,还需要查找、更新组播列表导致的额外性能开销,降低了芯片成本。

本文档来自技高网...

【技术保护点】

1.一种基于组播表项缓存的报文转发方法,其特征在于,适用于交换机装置,所述交换机装置中设置有组播表项缓存和组播表项存储器,所述报文转发方法包括:

2.根据权利要求1所述的报文转发方法,其特征在于,于执行所述步骤S1之前还包括报文判别过程,所述报文判别过程包括:

3.根据权利要求2所述的报文转发方法,其特征在于,所述步骤A01中,当所述组播协议报文为所述组播串流报文时,转向步骤A02;

4.根据权利要求1所述的报文转发方法,其特征在于,所述步骤S2包括:

5.根据权利要求1所述的报文转发方法,其特征在于,所述步骤S3包括:

6.根据权利要求5所述的报文转发方法,其特征在于,所述步骤S32中,对所述组播列表进行更新包括:增加组播地址、删除组播地址和更新组播地址的保持时间。

7.根据权利要求1所述的报文转发方法,其特征在于,在执行所述步骤S2之后还包括:

8.一种交换机装置,其特征在于,包括组播表项缓存和组播表项存储器,所述交换机芯片用于实施如权利要求1-7任意一项所述的报文转发方法。

【技术特征摘要】

1.一种基于组播表项缓存的报文转发方法,其特征在于,适用于交换机装置,所述交换机装置中设置有组播表项缓存和组播表项存储器,所述报文转发方法包括:

2.根据权利要求1所述的报文转发方法,其特征在于,于执行所述步骤s1之前还包括报文判别过程,所述报文判别过程包括:

3.根据权利要求2所述的报文转发方法,其特征在于,所述步骤a01中,当所述组播协议报文为所述组播串流报文时,转向步骤a02;

4.根据权利要求1所述的报文转发方法,其特征在于,所述步骤s2包...

【专利技术属性】
技术研发人员:高莹忠
申请(专利权)人:裕太微电子股份有限公司
类型:发明
国别省市:

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

1