组播调度方法、装置、非易失性存储介质及电子设备与流程

文档序号:37310118发布日期:2024-03-13 20:58阅读:19来源:国知局
组播调度方法、装置、非易失性存储介质及电子设备与流程

本发明涉及计算机领域,具体而言,涉及一种组播调度方法、装置、非易失性存储介质及电子设备。


背景技术:

1、传统家庭网关中,当机顶盒向家庭网关发起igmp请求,希望能够加入某个组播组来转发该组播流的时候,转发模块会通知到网关的组播管理程序,由组播管理分析igmp请求并添加硬件加速模块,同时更新硬件转发表。但因硬件加速条目的限制,无法处理存在两种vlan tag的组播流。

2、对于硬件加速条目,参数仅有组播ip、port、vlan tag这些参数。当存在两种组播vlan的情况下,组播模块只能添加其中一种vlan,加组和离组都可能导致相互之间存在影响。

3、例:机顶盒a和机顶盒b使用不同组播vlana和vlanb,都希望在port1下观看组播ipa。当机顶盒a成功加入组播vlana时,机顶盒a也就无法加入组播vlanb,进而也就无法对组播vlanb进行转发,进而机顶盒b因为vlan的限制无法加入组播vlanb,或就算可以机顶盒b可以成功加入组播vlanb,但是也会导致机顶盒a的硬件加速条目失效,也即使机顶盒a离开组播vlana。

4、目前,在传统网关上的做法是将某个port固定设置为固定vlan,通过在使用方式上做限制来规避此类问题。但由此引发的问题就是有限的port口被占用,同时原本自由且灵活的组网结构也因此受到影响。

5、但是,采用port口与vlan进行绑定的操作,将一个port口认为是一个只存在一个vlan id的trunk,这种通过使用方式的约束来规避问题的解决方案本质上没有解决实际存在的问题。对于一个设备来说,port口的数量是有限的,如果在将来存在更多类似业务需求的情况下,业务可扩展性会受到极大限制,同时也存在整体架构需要进行更改的风险。

6、综上,现有组播调度的方式,每个机顶盒只能加入一个组播vlan,而无法同时加入多个组播vlan,因此,在机顶盒所在物理网络中,无法实现多个组播vlan的转发。

7、针对上述现有技术中设备无法加入多个组播的问题,目前尚未提出有效的解决方案。


技术实现思路

1、本发明实施例提供了一种组播调度方法、装置、非易失性存储介质及电子设备,以至少解决现有技术中设备无法加入多个组播的技术问题。

2、根据本发明实施例的一个方面,提供了一种组播调度方法,包括:接收目标设备发起的组播请求,其中,所述组播请求用于指示所述目标设备请求加入目标组播;从所述组播请求中获取所述目标设备的目标标识;在转发规则映射表中,查询与所述目标标识对应的预设加速条目,得到目标加速条目,其中,所述转发规则映射表用于记录:多个所述预设加速条目,和每个所述预设加速条目对应预设设备的预设标识,所述预设加速条目至少包括:用于指示所述预设设备使用硬件加速加入预设组播的预设硬件加速条目;在所述目标加速条目包括所述预设硬件加速条目的情况下,为所述目标加速条目添加目标cpu加速条目,其中,所述目标cpu加速条目用于调度所述目标设备使用软件加速加入所述目标组播。

3、可选地,在所述目标加速条目包括所述预设硬件加速条目的情况下,为所述目标加速条目添加目标cpu加速条目包括:在所述目标加速条目包括所述预设硬件加速条目的情况下,调用cpu加速模块在cpu转发表中添加目标cpu转发条目,其中,所述目标cpu转发条目指示在基于所述cpu转发表更新所述转发规则映射表的情况下,为所述目标加速条目添加目标cpu加速条目;基于所述cpu转发表更新所述转发规则映射表,为所述目标加速条目添加所述目标cpu加速条目。

4、可选地,所述方法还包括:在调用所述cpu加速模块在所述cpu转发表中添加所述目标cpu转发条目的情况下,为所述目标cpu转发条目添加cpu亲和性指标,其中,所述cpu亲和性指标用于减少所述目标设备对所述目标cpu加速条目的迁移次数。

5、可选地,在转发规则映射表中,查询所述目标标识对应的预设加速条目包括目标加速条目包括:在转发规则映射表中不包括与所述目标标识对应的预设加速条目的情况下,为所述目标标识建立空白的目标加速条目。

6、可选地,所述方法还包括:在所述目标加速条目不包括所述预设硬件加速条目的情况下,为所述目标加速条目添加目标硬件加速条目,其中,所述目标硬件加速条目用于调度所述目标设备使用硬件加速加入所述目标组播。

7、可选地,所述目标加速条目不包括所述预设硬件加速条目的情况下,为所述目标加速条目添加目标硬件加速条目包括:在所述目标加速条目不包括所述预设硬件加速条目的情况下,调用硬件加速模块在硬件转发表中添加目标硬件转发条目,其中,所述目标硬件转发条目指示在基于所述硬件转发表更新所述转发规则映射表的情况下,为所述目标加速条目添加目标硬件加速条目;基于所述目标硬件转发表更新所述转发规则映射表,为所述目标加速条目添加所述目标硬件加速条目。

8、可选地,所述方法还包括:按照预设时间间隔检测所述转发规则映射表中的每个预设加速条目;在所述预设加速条目中不包括所述预设硬件加速条目,且包括预设cpu加速条目的情况下,确定所述预设加速条目为待更新加速条目,其中,所述预设加速条目还包括:用于指示所述预设设备使用软件加速加入预设组播的预设cpu加速条目;为所述待更新加速条目添加更新硬件加速条目,并删除所述预设cpu加速条目,其中,所述更新硬件加速条目用于指示:将所述预设设备从使用软件加速加入所述预设组播,调度为使用软件加速加入所述预设组播;基于所述更新硬件加速条目更新所述待更新加速条目,得到更新后的所述预设加速条目。

9、根据本发明实施例的另一方面,还提供了一种组播调度装置,包括:接收模块,用于接收目标设备发起的组播请求,其中,所述组播请求用于指示所述目标设备请求加入目标组播;获取模块,用于从所述组播请求中获取所述目标设备的目标标识;查询模块,用于在转发规则映射表中,查询与所述目标标识对应的预设加速条目,得到目标加速条目,其中,所述转发规则映射表用于记录:多个所述预设加速条目,和每个所述预设加速条目对应预设设备的预设标识,所述预设加速条目至少包括:用于指示所述预设设备使用硬件加速加入预设组播的预设硬件加速条目;调度模块,用于在所述目标加速条目包括所述预设硬件加速条目的情况下,为所述目标加速条目添加目标cpu加速条目,其中,所述目标cpu加速条目用于调度所述目标设备使用软件加速加入所述目标组播。

10、根据本发明实施例的另一方面,还提供了一种非易失性存储介质,所述非易失性存储介质用于存储程序,其中,在所述程序运行时控制所述非易失性存储介质所在设备执行上述组播调度方法。

11、根据本发明实施例的另一方面,还提供了一种电子设备,包括:存储器和处理器,所述处理器用于运行存储在所述处理器中的程序,其中,所述程序运行时执行上述组播调度方法。

12、在本发明实施例中,接收目标设备发起的组播请求,其中,组播请求用于指示目标设备请求加入目标组播;从组播请求中获取目标设备的目标标识;在转发规则映射表中,查询与目标标识对应的预设加速条目,得到目标加速条目,其中,转发规则映射表用于记录:多个预设加速条目,和每个预设加速条目对应预设设备的预设标识,预设加速条目至少包括:用于指示预设设备使用硬件加速加入预设组播的预设硬件加速条目;在目标加速条目包括预设硬件加速条目的情况下,为目标加速条目添加目标cpu加速条目,其中,目标cpu加速条目用于调度目标设备使用软件加速加入目标组播;从而同一目标设备可以分别使用硬件加速和软件加速的方式分别加入不同组播,从而实现了使同一设备可以加入多个组播的技术效果,进而解决了现有技术中设备无法加入多个组播技术问题。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1