多播组成员资格管理制造技术

技术编号:27094145 阅读:20 留言:0更新日期:2021-01-25 18:30
本申请的各实施例涉及多播组成员资格管理。一种网络设备可以从与网络设备的用户空间相关联的应用截取加入多播组或离开多播组的请求消息。请求消息可以被寻址到网络设备的内核。网络设备可以将请求消息引导到与网络设备的用户空间相关联的服务守护进程。网络设备可以使用服务守护进程确定与用户空间相关联的另一应用是否是多播组的成员。网络设备可以使用服务守护进程并且基于与用户空间相关联的另一应用是否是多播组的成员,基于请求消息来选择性地生成通告消息,并且在通告消息被生成时传输通告消息。时传输通告消息。时传输通告消息。

【技术实现步骤摘要】
多播组成员资格管理


[0001]本申请的各实施例涉及多播组成员资格管理。

技术介绍

[0002]在计算机联网中,多播是一种群组通信,其中数据传输同时被寻址到一组目的地计算机。多播可以是一对多或多对多分发。

技术实现思路

[0003]根据一些实现,一种方法可以包括由网络设备从与网络设备的用户空间相关联的应用检测加入多播组或离开多播组的请求消息,其中该请求消息被寻址到网络设备的内核;由网络设备将请求消息重新寻址到网络设备的服务守护进程,其中服务守护进程与网络设备的用户空间相关联;由网络设备基于对请求消息重新寻址来将请求消息引导到服务守护进程;由网络设备使用服务守护进程基于请求消息来选择性地生成通告消息,其中如果与用户空间相关联的其他应用都不是多播组的成员,则通告消息将被生成,并且其中如果与用户空间相关联的至少一个其他应用是多播组的成员,则通告消息将不被生成;以及在通告消息被生成时,由网络设备传输通告消息。
[0004]根据一些实现,一种网络设备可以包括一个或多个存储器和一个或多个处理器,一个或多个处理器用以:从与网络设备的用户空间相关联的应用截取加入多播组或离开多播组的请求消息,其中请求消息被寻址到网络设备的内核;将请求消息引导到与网络设备的用户空间相关联的服务守护进程;使用服务守护进程确定与用户空间相关联的另一应用是否是多播组的成员;使用服务守护进程并且基于与用户空间相关联的另一应用是否是多播组的成员,基于请求消息来选择性地生成通告消息;以及在通告消息被生成时,传输通告消息。
[0005]根据一些实现,一种非暂态计算机可读介质可以存储一个或多个指令,这些指令在由一个或多个处理器执行时可以使得一个或多个处理器:截取加入多播组或离开多播组的请求消息,其中请求消息源自网络设备的用户空间的应用;确定与用户空间相关联的另一应用是否是多播组的成员;基于与用户空间相关联的另一应用是否是多播组的成员,基于请求消息来选择性地生成通告消息;以及在通告消息被生成时,传输通告消息。
附图说明
[0006]图1是本文中描述的示例实现的图;
[0007]图2是可以实现本文中描述的系统和/或方法的示例环境的图;
[0008]图3A和图3B是图2的一个或多个设备的示例组件的图;以及
[0009]图4至图6是用于多播组成员资格管理的示例过程的流程图。
具体实施方式
[0010]以下对示例实现的详细描述参考附图。不同附图中的相同的附图标记可以标识相同或相似的元素。
[0011]在网络设备中,套接字可以用于在内核与用户空间进程(诸如在网络设备上运行的应用)之间传输信息。例如,网络设备的应用可以使用套接字向内核提供请求。作为示例,应用可以向内核提供加入或离开多播组的请求。内核可以根据由内核保持的网络状态来处理请求并且提供所请求的多播支持。然而,在一些情况下,网络状态可能是分布式的,使得多个网络设备(例如,网络的节点)保持网络状态的至少一部分。在这种情况下,当网络状态被分发到多个网络设备时,网络设备的应用可以生成加入或离开多播组的请求,并且该请求可能由于内核没有存储与网络状态相关的信息而失败。结果,可能会阻止应用在网络设备上操作,从而降低网络设备的可用性,对包括网络设备的网络的利用产生负面影响,等等。此外,定制用于在网络设备上部署的每个应用可能需要过多的计算资源用于应用修改、应用测试等。
[0012]根据本文中描述的一些实现,网络设备可以使用用户空间进程来提供多播组成员资格管理。在一些实现中,网络设备可以监测并且检测加入或离开被引导到网络设备的内核的多播组的请求,可以截取该请求,并且可以修改该请求以使得能够使用网络设备的用户空间服务守护进程来成功地满足该请求。以这种方式,网络设备使得能够利用需要多播支持的应用,从而改善网络设备的功能,改进包括网络设备的网络的功能,减少与处理失败的请求相关的处理利用率,等等。此外,网络设备使得能够实现需要多播支持的应用而无需应用定制,从而降低了与生成多个版本的定制应用,存储多个版本的定制应用等相关联的处理利用率、存储器利用率等。
[0013]图1是本文中描述的示例实现100的图。如图1中所示,示例实现100可以包括一组网络设备和多播组主机。如图1中进一步所示,网络设备可以包括与网络设备的用户空间相关联的应用(例如,第三方应用)、截取库和服务守护进程。网络设备可以是消费(即,不路由)从另一多播主机(例如,多播组主机)传输的多播业务的多播主机。网络设备可以使用该应用来消费多播业务。因此,应用可以是用于视频会议、游戏、流视频、远程学习等的多播应用。
[0014]如图1中并且由附图标记105所示,网络设备的应用可以发送加入多播组或离开多播组的请求(例如,多播请求)。例如,可以在网络设备的用户空间中操作的应用可以打开套接字并且生成套接字系统调用(例如,“setsockopt()”)。套接字系统调用可以涉及加入多播组(例如,使用“IP_ADD_MEMBERSHIP”选项或“IPV6_ADD_MEMBERSHIP”选项的“setsockopt()”),或者可以涉及离开多播组(例如,使用“IP_DROP_MEMBERSHIP”或“IPV6_DROP_MEMBERSHIP”选项的“setsockopt()”)。在一些实现中,应用可以为请求设置特定目的地地址。例如,应用可以将请求的目的地套接字地址中的套接字标识符设置为内核中的套接字地址,以尝试加入或离开多播组。
[0015]在一些实现中,请求是加入多播组,并且请求(例如,套接字系统调用)可以标识要加入的特定多播组以及应用将要在其上接收特定多播组的多播业务的网络设备的特定接口。附加地或备选地,请求可以是离开多播组,并且请求(例如,套接字系统调用)可以标识要离开的特定多播组以及应用将要停止在其上接收特定多播组的多播业务的网络设备的
特定接口。
[0016]如由附图标记110所示,网络设备可以截取应用的请求。例如,网络设备可以检测请求,截取请求,以及改变(例如,重新寻址)请求。在这种情况下,网络设备可以实现截取库,该截取库可以包括用于检测请求,截取请求以及改变请求的一个或多个功能。网络设备可以在应用的运行时加载(例如,预加载)截取库。例如,在应用的运行时,网络设备可以在加载应用的默认库之前加载截取库。以这种方式,在截取库中提供的请求的修订定义将替换在默认库中提供的请求的默认定义,以便根据截取库的修订定义来处理请求。
[0017]在一些实现中,网络设备可以使用截取库来检测请求并且重新寻址请求。例如,网络设备可以使用截取库来改变请求的套接字标识符。作为示例,网络设备可以使用截取库来将请求重新寻址到与服务守护进程相关联的目的地套接字地址。以这种方式,网络设备使得网络设备的内核不处理请求,并且将请求引导到服务守护进程,从而避免了请求失败。
[0018]如由附图标记115所示,网络设备可以将请求引导到服务守护进程。例如,基于网络设备使用截取库来截取和重新寻址请求,网络设备可以将请求引导到本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种方法,包括:由网络设备从与所述网络设备的用户空间相关联的应用检测加入多播组或离开所述多播组的请求消息,其中所述请求消息被寻址到所述网络设备的内核;由所述网络设备将所述请求消息重新寻址到所述网络设备的服务守护进程,其中所述服务守护进程与所述网络设备的所述用户空间相关联;由所述网络设备基于对所述请求消息重新寻址来将所述请求消息引导到所述服务守护进程;由所述网络设备使用所述服务守护进程基于所述请求消息来选择性地生成通告消息,其中如果与所述用户空间相关联的其他应用都不是所述多播组的成员,则所述通告消息将被生成,其中如果与所述用户空间相关联的至少一个其他应用是所述多播组的成员,则所述通告消息将不被生成;以及在所述通告消息被生成时,由所述网络设备传输所述通告消息。2.根据权利要求1所述的方法,其中重新寻址所述请求消息包括:将所述请求消息的目的地套接字地址设置为所述服务守护进程的套接字的套接字标识符;以及将所述请求消息引导到所述服务守护进程包括:使用所述服务守护进程的所述套接字的所述套接字标识符将所述请求消息引导到所述服务守护进程。3.根据权利要求1所述的方法,其中所述通告消息涉及加入所述多播组,并且其中所述方法还包括:基于生成所述通告消息来将所述网络设备的网络堆栈配置为接受与所述多播组相关联的多播业务。4.根据权利要求1所述的方法,其中所述通告消息涉及离开所述多播组,并且其中所述方法还包括:基于生成所述通告消息来将所述网络设备的网络堆栈配置为不接受与所述多播组相关联的多播业务。5.根据权利要求1所述的方法,其中所述服务守护进程存储针对与所述网络设备的所述用户空间相关联的一个或多个应用的所述多播组的成员资格的状态。6.根据权利要求1所述的方法,其中所述请求消息是套接字系统调用。7.根据权利要求1所述的方法,其中所述请求消息标识所述多播组以及用以接收所述多播组的多播业务的所述网络设备的接口。8.一种网络设备,包括:一个或多个存储器;以及一个或多个处理器,用以:从与所述网络设备的用户空间相关联的应用截取加入多播组或离开所述多播组的请求消息,其中所述请求消息被寻址到所述网络设备的内核;
将所述请求消息引导到与所述网络设备的所述用户空间相关联的服务守护进程;使用所述服务守护进程确定与所述用户空间相关联的另一应用是否是所述多播组的成员;使用所述服务守护进程并且基于与所述用户空间相关联的所述另一应用是否是所述多播组的所述成员,基于所述请求消息来选择性地生成通告消息;以及在所述通告消息被生成时,传输所述通告消息。9.根据权利要求8所述的网络设备,其中所述一个或多个处理器在确定与所述用户空间相关联的所述另一应用是否是所述多播组的所述成员时,用以:根据由...

【专利技术属性】
技术研发人员:S
申请(专利权)人:瞻博网络公司
类型:发明
国别省市:

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

1
相关领域技术
  • 暂无相关专利