CN101766000A - 管理组播组的方法和设备 - Google Patents

管理组播组的方法和设备 Download PDF

Info

Publication number
CN101766000A
CN101766000A CN200780100049A CN200780100049A CN101766000A CN 101766000 A CN101766000 A CN 101766000A CN 200780100049 A CN200780100049 A CN 200780100049A CN 200780100049 A CN200780100049 A CN 200780100049A CN 101766000 A CN101766000 A CN 101766000A
Authority
CN
China
Prior art keywords
source
router
record
message
main frame
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN200780100049A
Other languages
English (en)
Inventor
A·费尔南德斯古铁雷斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Soporte Multivendor S L
Original Assignee
Soporte Multivendor S L
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Soporte Multivendor S L filed Critical Soporte Multivendor S L
Publication of CN101766000A publication Critical patent/CN101766000A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/185Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership

Abstract

本发明涉及管理数据网络中的组播流量的方法,和使用所述方法的设备。主机(200、220、225、230)为每个组播组保存包含源记录和排除源记录,主机的网络接口向路由器(260)发送消息,所述消息含有关于包含源记录的信息,和/或关于排除源记录的信息。路由器(260)也为每个组播组保存包含源记录和排除源记录,并且当路由器(260)通过其网络接口从主机(200、220、225、230)收到含有关于包含源列表的信息,和/或关于排除源列表的信息的消息时,更新所述包含源记录和/或排除源记录。所述设备是与所述方法相适合的路由器、主机设备和网络设备。

Description

管理组播组的方法和设备
技术领域
本发明涉及数据网络中的组播技术领域。更具体地说,本发明涉及管理数据网络中的组播流量的方法,在所述数据网络中,源发送以至少一个组播组为目的地的数据,多个主机从路由器接收由在所述组播组中进行发送的一个或几个所述源发送的数据,所述主机和所述路由器借助允许组播主机-路由器通信的通信协议,比如IGMP协议(因特网组管理协议)或MLD(组播侦听者发现)协议相互通信,通过组播主机-路由器通信,对于所述组播组,所述主机能够定义包含源列表和排除源列表,所述包含源列表指示所述主机希望接收由所述列表的源发送的数据,所述排除源列表指示所述主机希望接收来自所述组播组的除所述列表的源之外的所有源的流量。
本发明还涉及应用所述方法的设备。
背景技术
组播技术使得能够通过数据网络,从单个源向许多接收器发送数据,而不必建立单播通信,即,源和每个接收器之间的一对一的单独通信。为此,源以数据分组形式向与组播组相关的单一地址发送数据,有兴趣成为所述数据发送的接收器的设备能够订阅所述组播组。称为组播地址,也称为组播组地址的该地址是在为组播应用保留的范围内选择的IP(网际协议)地址。由源发给组播地址的数据分组随后在不同的网络路由器中被复制,以致它们能够到达加入组播组的接收器。
组播组中的数据发送接收器通常是借助代理或路由器与数据网络连接的设备。下面,将使用常见的术语“主机”来表示所述设备。例如,主机可以是计算机或者与电视机连接的机顶盒。
当主机想要接收由组播组的一个或几个源发送的信息时,它向最近的路由器,或者向中间代理发送订阅所述组播组的订阅消息,以致路由器将由组播组的源发送,并通过数据网络到达的数据传送给所述主机。同样地,当主机希望停止接收组播组中的数据发送时,它向路由器或者向代理发送停止接收数据发送的取消订阅消息。
在主机和最近的路由器之间交换的管理组播组的成员资格的消息按照路由器是利用IP协议(网际协议)的版本4(IPv4)还是版本6(IPv6),分别使用IGMP协议(因特网组管理协议)或者MLD(组播侦听者发现)协议。
当在主机和路由器之间存在代理时,该代理也使用IGMP/MLD协议与主机、最近的路由器或者其它中间代理交换组播组成员资格消息。在这些情况下,该代理能够从不同的主机接收订阅或者取消订阅组播组的请求,该代理组装所述请求,从而减少它发给路由器的IGMP/MLD消息流量。
另外,路由器相互交换信息,以便定义允许高效地把数据从源路由到已订阅组播组的主机的路由。为此,路由器使用特定的协议,包括众所周知的PIM-SM(协议独立组播-稀疏模式)。
总之,路由器以IGMP/MLD消息的形式,从主机接收指定它们想要从哪些组播组接收流量的信息,并且它们借助例如PIM-SM协议与其它路由器通信,以便设定把主机请求的流量传送到这种主机的路由。
所有提及的协议都由因特网工程任务组(IETF)定义和文档化。
目前使用的IGMP协议版本是在由IETF在线公布的RFC 3376规范(B.Cain等,Engineering Task Force,Network Working Group,Request for Comments 3376,October 2002;目前可从因特网地址http://tools.ietf.org/html/rfc3376获得)中描述的IGMPv3。
就MDL协议来说,目前使用的版本是在由IETF在线公布的RFC 3810规范(R.Vida等,Engineering Task Force,Network WorkingGroup,Request for Comments 3810,June 2004;目前可从因特网地址http://tools.ietf.org/html/rfc3810获得)中描述的MLDv2。
在由IETF在线公布的RFC 4605规范(B.Fenner等,EngineeringTask Force,Network Working Group,Request for Comments 4605,August 2006;目前可从因特网地址http://tools.ietf.org/html/rfc4605获得)中,描述了使用IGMP/MLD协议的IGMP代理的操作。
在由IETF在线公布的RFC 4601规范(B.Fenner等,EngineeringTask Force,Network Working Group,Request for Comments 4601,August 2006;目前可从因特网地址http://tools.ietf.org/html/rfc4601获得)中,描述了用于路由器之间的通信的PIM-SM协议。
最初实现组播技术主要是为了应用于多对多通信模式,称为ASM(任意源组播),其中许多用户相互通信,他们中的任意一个能够发送数据,也能够从每个其它用户接收数据。典型的ASM应用是借助因特网的多方呼叫。
随后实现组播技术是为了应用于一对多通信模式,称为SSM(特定源组播),其中单一源为许多接收器发送数据。借助因特网的无线电广播和电视是SSM应用。这是SSM目前非常引入注意的原因。
在IGMP协议的早期版本中,主机不能选择组播组内它不希望订阅的数据发送源,相反,主机只能关于所有源订阅或取消订阅组播组。主机发给路由器的消息非常简单:从组播组G接收流量的加入Join(G)和停止从组播组G接收流量的离开Leave(G)。于是,IGMP协议的早期版本不允许SSM。
在IGMP协议的IGMPv3版本中提出了主机可在组播组内选择源的可能性,以允许SSM。为此,主机可发送两种IGMP消息:
-INCLUDE(包含)消息,由指示主机希望从其接收数据发送的源IP地址组成。按照RFC 3376规范的术语学,这些被包含源的IP地址被称为INCLUDE源。
-EXCLUDE(排除)消息,由指示主机不希望从其接收数据发送的源IP地址组成。这种情况下,认为主机希望接收由除在消息中排除地指示的源之外的所有源发送的数据。另外,按照RFC 3376规范的术语学,这些被排除源的IP地址被称为EXCLUDE源。
为了节约存储器、数据流量或者由于其它原因,在IGMPv3版本中决定每个网络接口和组播组只按照下述两种模式之一工作,能够从一种模式切换到另一种模式:其中网络接口定义INCLUDE源列表的INCLUDE模式,或者其中网络接口定义EXCLUDE源列表的EXCLUDE模式。
网络接口可接收对每个组播组G1的几个不同请求。对于相同的组播组,每个请求包含INCLUDE源列表或者EXCLUDE源列表。为了解决这种情况,并保持每个网络接口只能按照INCLUDE模式或EXCLUDE模式工作的限制,IGMPv3协议规定网络接口必须应用下述规则:
规则1.如果组播组G1的任意数据源是EXCLUDE,那么对于组播组G1,网络接口按EXCLUDE模式工作,网络接口的源列表是EXCLUDE源列表减去INCLUDE源列表的交集。
规则2.如果所有源都是INCLUDE源,那么对于组播组G1,网络接口按INCLUDE模式工作,网络接口的源列表是所有INCLUDE源的并集。
下面根据本发明的几个实施例的描述,显然这些规则使通信显著变复杂。
在ASM组播中,当主机希望从特定的组播组G接收流量时,必须解决下述技术问题:主机只知道组播组G的地址,不知道组播组G的正在发送数据的源IP地址。存在路由器之间的以不同方式解决该问题的不同组播通信协议。目前,主要应用PIM-SM协议,它通过指定称为Rendez-vous Point的路由器(下面称为RP路由器)作为负责了解单一组播域的所有源(使用相同RP路由器的路由器组)的路由器,来解决该问题。为了找出源IP地址,每个路由器与RP路由器建立第一组播通信,以致RP路由器向其发送所请求的组播流量。当路由器收到第一组播流量数据时,它发现源IP地址。随后,最后的路由器,即直接从主机接收IGMP消息的路由器设法通过使用SPT树(最短路径树)直接从源接收数据,所述SPT树建立通过网络的最短路径,称为SPT路径。当路由器开始既通过RP路由器又直接通过SPT路径以副本形式接收数据时,它切断与RP路由器的通信,只保持通过SPT路径的直接通信。
在SSM中,并不存在找出组播组的源IP地址的问题,因为选择希望从其接收组播流量的源的是用户。于是,主机能够向路由器或者向代理指示源IP地址。从而,在SSM中能够消除ASM特有的许多技术复杂性。特别地,能够消除与查明源IP地址相关的技术复杂性。例如,在SSM中,不必使用RP路由器,因为路由器能够知道源IP地址,当主机订阅组播组时,主机指出所述源IP地址。于是,在SSM中,能够应用与目前使用的算法相比更高效的算法。
前面提及的关于IGMPv3协议的规则使得不能利用SSM系统的这些优点。当网络接口按EXCLUDE模式工作时,它不知道源IP地址,于是被迫通过RP路由器查找所述IP地址,如前关于ASM所述,缺点在于ASM的路由过程更复杂。
IETF最近公布了一种新的提案,该提案修改IGMP协议和MDL协议的IGMPv3和MLDv2版本规范,以设法解决上面提及的缺陷,在由IETF在线公布的RFC 4604规范(H.Holbrook等,EngineeringTask Force,Network Working Group,Request for Comments 4604,August 2006;目前可从因特网地址http://tools.ietf.org/html/rfc4604获得)中,描述了该提案。提出的修改主要包括为SSM组播地址保留一定的范围,并禁止SSM组播系统中的主机发送EXCLUDE消息。这种限制不必要地对SSM的充分发展设置障碍,因为它使主机不能侦听相同组播组内的其它新的源。
已知目的在于改进组播通信的许多专利或专利申请。应指出下述专利或专利申请:US6434622B1,US6785294B1,US6977891B1,US2003/0067917A1,US2005/0207354A1,US2006/0120368,US2006/0182109A1和WO2006/001803A1。不过,它们都没有解决上面提及的问题。
发明内容
本发明的主要目的是提供一种管理数据网络中的组播通信,尤其是适用于SSM通信的改进系统。
本发明的一个目的是提高数据发送源和请求接收所述数据发送的主机之间的路由效率。
本发明的另一个目的在于通过利用现有协议作为基础,并按照与这些现有协议的早期版本兼容的方式,以改进的组播主机-路由器通信协议的形式实现本发明。
为此,提出了一种管理在最初指出的那种数据网络中的组播流量的方法,其特征在于按照允许组播主机-路由器通信的所述通信协议:
-对于每个组播组和网络接口,主机保存两个独立的记录:含有包含源列表的包含源记录,和含有排除源列表的排除源记录;
-每个主机的网络接口向所述路由器发送消息,所述消息包含关于单一组播组的所述主机的包含源记录的源列表的信息,和/或所述主机的排除源记录的源列表的信息;
-对于每个组播组,路由器保存两个独立的记录:含有包含源列表的信息的包含源记录,和含有排除源列表的信息的排除源记录;
-当所述路由器通过其网络接口从主机收到含有关于包含源列表的信息,和/或关于排除源列表的信息的消息时,对每个组播组,所述路由器更新它的包含源记录和/或它的排除源记录。
本发明设想每个主机的网络接口发给所述路由器的所述消息是含有所述主机的包含源记录的源列表和所述主机的排除源记录的源列表的状态消息。
本发明还设想每个主机的网络接口发给所述路由器的所述消息是当所述主机检测到它的包含源记录的变化,或者它的排除源记录的变化时,发送的状态消息的变化,状态消息的所述变化包含每个组播组的一个或两个数据块,其中每个所述数据块含有和包含源记录的源列表的修改有关的信息,或者和排除源记录的源列表的修改有关的信息,其中每个所述数据块包含指示该数据块是否与包含源列表的修改,或者与排除源列表的修改相关的字段。
有利的是,路由器使用包含在它接收的所述消息中的包含源列表的信息来请求所述包含源发送的数据流量。
当网络接口是主机的网络接口时,为使用所述网络接口的每个套接字和每个组播组,保持包含源记录和排除源记录,为所述网络接口保持分别根据套接字的所述包含源记录的内容和根据套接字的所述排除源记录更新的包含源记录和排除源记录。
在一个有利的实施例中,到达路由器的网络接口的所述状态消息包含和为了建立从所述包含源到所述路由器的路由树,所述路由器必须应用的方法有关的指令。最好,为了把所述指令包含在状态消息中,所述状态消息指示在为组播地址保留的范围之外的组播地址;路由器检测到指示的组播地址在范围之外,认为所述组播地址包含所述指令,并读取包含在所述组播地址中的呈数字代码形式的所述指令。
路由器和主机之间的通信协议最好是某一版本的IGMP协议(因特网组管理协议)或MLD(组播侦听者发现)协议,其中由网络接口或者由设备接口发送的状态消息能够把包含源列表和排除源列表包含在同一消息中。
本发明还涉及一种与按照本发明的方法相适合的网络设备,所述网络设备包含网络接口,并且适合于在所述主机和所述路由器之间的交换线路中工作,其特征在于它保存可执行指令,所述可执行指令用于:
-为每个组播组,保持包含源记录和排除源记录;
-向朝向所述路由器的附近网络接口发送消息,所述消息包含关于一个组播组的、所述包含源记录的源列表的信息和/或所述排除源记录的源列表的信息;
-当所述网络设备的网络接口从另一个网络接口收到含有关于包含源列表的信息,和/或关于排除源列表的信息的消息时,对每个组播组,更新所述包含源记录和/或所述排除源记录。
本发明还涉及一种与按照本发明的方法相适合的设备,所述设备包含网络接口,并且适合于起主机作用,其特征在于它保存可执行指令,所述可执行指令用于为使用所述网络接口的每个套接字和为每个组播组,保持包含源记录和排除源记录,为所述网络接口保持分别根据套接字的所述包含源记录的内容和根据套接字的所述排除源记录更新的包含源记录和排除源记录。
本发明还涉及一种与按照本发明的方法相适合的路由器,其特征在于它保存可执行指令,所述可执行指令用于:
-为每个组播组保持两个独立的记录:包含源记录和排除源记录;和
-当所述路由器通过其网络接口收到含有关于包含源列表的信息,和/或关于排除源列表的信息的消息时,对每个组播组,更新所述包含源记录和/或所述排除源记录。
所述路由器最好使用包含在路由器接收的所述消息中的包含源列表的信息向其它路由器请求由所述包含源发送的数据流量。
为了请求由所述包含源发送的所述数据流量,所述路由器最好使用PIM-SM(协议独立组播-稀疏模式)协议。
在一个优选实施例中,当收到告知主机不再希望接收来自特定组播组和特定包含源的流量的消息时,所述路由器检查是否存在所述组播组的排除源记录,如果所述记录存在,并且不包含和所述包含源具有相同IP地址的排除源,那么所述路由器继续传送所述特定组播组和所述特定包含源的所述流量,而不发送IGMP协议中的Group-And-Source Specific查询(组和源特定查询)式消息以检查是否存在仍然希望接收所述流量的另一个主机。
另外在一个优选实施例中,当收到更新排除源记录的信息的消息时,其中所述消息请求封锁来自特定源和组播组的流量,所述路由器检查是否存在所述组播组的包含源记录,如果所述记录存在,并且包含和所述消息请求封锁的源具有相同IP地址的包含源,那么所述路由器继续传送所述特定组播组和所述特定包含源的所述流量,而不发送IGMP协议中的Group-And-Source Specific查询式消息以检查是否存在仍然希望接收所述流量的另一个主机。
附图说明
在下面的结合附图描述本发明的优选实施例的说明中,能够了解本发明的其它优点和特征,所述说明不是对本发明的限制。附图中:
图1表示数据网络中的组播系统的基本例子;
图2表示数据网络中的组播系统的更详细例子;
图3表示在IGMPv3协议中,在IGMPv3协议和在按照本发明的改进的IGMP协议这两者中,由路由器发给主机的MembershipQuery(成员资格查询)消息的格式;
图4表示在IGMPv3协议和在按照本发明的改进的IGMP协议这两者中,由主机发给路由器的Membership Report(成员资格报告)消息的格式;
图5表示在IGMPv3协议中,包含在Membership Query消息或者Membership Report消息中的Group Record(组记录)数据块的内部格式;
图6表示当应用按照本发明的改进的IGMP协议时,与图2中的系统中由DSLAM 240发给路由器260的消息对应的MembershipReport消息的格式。
具体实施方式
图1表示数据网络中的组播系统的基本例子。在本例中,三个主机101、102、103通过CPE 104、105(CPE:用户驻地设备)与数据网络连接。CPE是位于用户接入线路一端的用于连接网络的终端,它例如借助DSL(数据用户线路)调制解调器通信。主机101与用户线路的CPE 104连接,而两个主机102和103与另一条用户线路的另一个CPE 105连接。CPE 104、105与DSLAM 106(DSLAM:数字用户线接入复用器)连接,DSLAM 106把来自不同CPE 104、105的流量经交换机107导引到路由器108,路由器108又与IP(网际协议)网络109连接。另一个路由器110连接在IP网络109的另一点处,路由器110集中由组播组的几个源111、112发送的数据分组。
为了清楚起见,图1表示了由与路由器107连接的几个主机101、102、103形成的一个组,和与路由器110连接的源111、112的一个组。当然,组播系统实际上由许多这些组合体和组构成。
图1还表示了IGMP和PIM-SM协议中的每一个的范围:IGMP协议应用于接收主机和路由器之间经CPE和DSLAM的通信,而PIM-SM协议应用于不同路由器之间经IP网络的通信。
本例中假定路由器利用IP协议的IPv4版本操作,于是,系统使用IGMP协议。不过,所陈述的原因也适用于利用MLD协议(IP协议的IPv6版本)的系统。
CPE和DSLAM是能够实现IGMP代理功能的设备,IGMP代理功能由接收几个IGMP请求,并组装所述几个IGMP请求,以减小发给路由器的IGMP消息的量组成。在开始提及的IETF的RFC 4605规范中说明了该操作。
图1中表示的组播系统的基本操作如下所示。
主机101、102、103向CPE 104、105发送几个IGMP消息,其中它们识别组的组播地址,和它们希望从其接收数据发送的源地址。和图1的例子中的CPE 105的情况一样,从不同主机接收几个IGMP消息的CPE组装这些IGMP消息,从而向DSLAM发送单一的IGMP消息。对DSLAM来说,DSLAM 106从不同的CPE(这种情况下是CPE 104、105)接收IGMP消息,并组装它们,从而通过交换机107向路由器108发送其中对于每个组播组,只指示INCLUDE或EXCLUDE源的IGMP消息。
路由器108通过交换机107接收DSLAM 106发送的IGMP消息,并利用PIM-SM协议与其它IP网络路由器通信,以建立通过IP网络的路由,从而使由在路由器108接收的IGMP消息中指定的源发送的数据到达路由器108。
如下面的更详细例子中所述,在现有技术中,路由器108不总是知道由主机指定的源IP地址,因为当网络接口组装最初由主机发送的IGMP消息时,该信息已丢失。于是,路由器108必须通过应用复杂并且相当低效的过程,查明源IP地址。
应用现有技术的方法(IGMPv3协议)的组播系统的操作例子
图2更详细地表示组播系统,和该组播系统进行工作所必需的不同通信。
为了基于图2的示图证明本发明的原理和优点,首先解释按照现有技术的应用IGMPv3协议的操作。然后参考图2的相同示图解释按照本发明的操作。
主机200是其中执行能够请求组播流量的两个应用程序201、202的个人计算机PC。计算机200配有连接到CPE 208的网卡203,CPE208又与DSLAM 240连接。
主机220和225是都配有连接到单一CPE 228的网卡222、223的两台个人计算机PC,所述CPE 228又与DSLAM 240连接。在每台计算机220、225中分别执行能够请求组播流量的单一应用程序221、226。
主机231是与电视机230连接的STB(机顶盒)解码器,它允许经因特网接收电视频道。解码器231配有与CPE 229连接的网卡232,CPE 229又与DSLAM 240连接。
DSLAM 240通过交换机250与路由器260连接。路由器260与由其它路由器形成的IP网络连接,在本例中,所述其它路由器是路由器261、262、263、264、265、266、267和268。
路由器264是RP(Rendez-vous Point)路由器,即,PIM-SM协议用于建立组播组的发送源和当其不知道发送源的IP地址时,希望从这些源接收发送的主机之间的路由的路由器。
在图2的例子中,存在属于单一组播组G1的五个发送源295、296、297、298、299。为了简化说明,下面的描述通过其相应的IP地址表示这些源,如图2中所示,它们分别为S1、S2、S3、S4和S5。
源S1、S2和S3通过路由器266与IP网络连接,而源S4和S5通过路由器262被连接。
在主机200中执行的应用程序201和202希望接收组播组G1中的数据发送,但是每个应用程序希望从不同的源接收发送:
-应用程序201希望从源S1和S2接收发送,为此,它将产生INCLUDE({S1,S2};G1)式请求;
-应用程序202希望从除S4之外的所有源接收发送,为此,它将产生EXCLUDE({S4};G1)式请求。
网卡203是必须通过应用IGMPv3协议规则,组合与应用程序201和202相关的不同套接字的状态的网络接口。由于套接字之一按EXCLUDE模式工作,因此,网络接口203将只按EXCLUDE模式工作,并将向CPE 208发送下述消息EXCLUDE({S4};G1)。
理论上,看起来发送EXCLUDE({S4};G1)消息会使得不必发送INCLUDE({S1,S2};G1)消息,因为第一条消息暗中包括除S4之外的所有源,于是它包括源S1和S2。不过,通过按照这种方式工作,包含在由应用程序201发送的IGMP消息中的有价值的信息被丢失:源S1和S2的IP地址。
网卡203发送的EXCLUDE({S4};G1)消息被传送给DSLAM240,而不存在由CPE 208修改的源的信息,因为CPE 208只从一个起源接收IGMP消息。
在计算机220中执行的应用程序221产生INCLUDE({S5},G1)式请求,指示它希望从源S5接收发送。网卡222不必组合几个请求,因为它只从与应用程序221相关的套接字接收请求。于是,网卡222向CPE 228发送包含和应用程序221的请求,即,INCLUDE({S5},G1)消息相同的信息的IGMP消息。
在计算机225中执行的应用程序226产生INCLUDE({S3},G1)式请求,指示它希望从源S3接收发送。网卡223不必组合几个请求,因为它只从与应用程序226相关的套接字接收请求。于是,网卡223向CPE 228发送包含和应用程序226的请求,即,INCLUDE({S3},G1)消息相同的信息的IGMP消息。
CPE 228充当IGMP代理,应用IGMPv3协议规则,以组合分别由网络接口222和223发送的消息。由于所有接收的消息都是INCLUDE式消息,因此网络接口228将只按照INCLUDE模式工作,并将向DSLAM 240传送下述消息:INCLUDE({S3,S5};G1)。
STB 231发送INCLUDE({S1},G1)消息,指示它希望从源S1接收发送。CPE 229把该消息完整地传送给DSLAM 240,因为它从单一起源接收IGMP消息。
于是,DSLAM 240接收下述三种IGMP消息:
来自CPE 208的EXCLUDE({S4};G1),
来自CPE 228的INCLUDE({S3,S5};G1),
来自CPE 229的INCLUDE({S1},G1)。
DSLAM 240是必须通过应用IGMPv3协议规则,组合这些不同消息的代理。由于接收的与组播组G1相关的消息之一是EXCLUDE式消息,因此对于所述组播组G1来说,网络接口240将只按照EXCLUDE模式工作,并通过交换机250向路由器260传送下述消息:EXCLUDE({S4};G1),指示路由器260必须把来自组播组G1的除S4之外的所有源的发送传给DSLAM 240。
路由器260随后利用PIM-SM协议与其它IP网络路由器通信,以接收由在IGMP消息中请求的源发送的数据,所述在IGMP消息中请求的源是组播组G1的除源S4之外的所有源。PIM-SM协议是允许建立两种路由树:使其中心位于RP路由器(这种情况下是路由器264)的RPT(Rendez-vous Point Tree)树,和建立最短路径的STP(ShortestPath Tree)的复合协议。RP路由器被PIM-SM协议指定为负责了解组播组的所有源的IP地址的路由器。路由器260最初总是通过RPT树接收来自组播组的流量,因为只有RP路由器知道源IP地址。当下面将说明的一些条件被满足时,路由器260随后使用SPT树,并放弃通过RP树的传输。
在图2的例子中,当最初使用RPT树时,路由器260通过用虚线指示的路径281,接收来自源S1、S2和S3的发送,并且通过用虚线指示的路径282接收来自源S5的发送。于是,路由器260通过最长的路径,而不是按照SPT树的最短路径接收数据,按照SPT树的最短路径是用实线指示的路径291和292。
路由器260不知道被包含源的IP地址,因为它仅仅从DSLAM240收到EXCLUDE({S4};G1)消息。于是,路由器260不能直接利用SPT树向被包含源请求流量。如一开始所述,这是一个严重的缺陷。另一个缺陷在于如果路由器仅仅按照SSM组播模式工作,那么它将不接受EXCLUDE消息的事实。此外,如果路由器是只能够直接与源连接的简化路由器,那么如果它不知道源的IP地址,那么它不能直接与源连接。
在RFC 4601规范,具体地说在定义称为CheckSwitchToSpt(S,G)的函数的4.2.1节“Last Hop Switchover to the SPT”中详细说明了由PIM-SM协议提供的关于特定通道(S,G),即,由组播组G中的源S定义的通道,从RPT树转换到SPT树的条件:
void
CheckSwitchToSpt(S,G){
  if((pim_include(*,G)(-)pim_exclude(S,G)
        (+)pim_include(S,G)!=NULL)
    AND SwitchToSptDesired(S,G)){
        #Note:Restarting the KAT will result in
        #the SPT switch set KeepaliveTimer(S,G)to
        #Keepalive_Period
  }
}
CheckSwitchToSpt(S,G)函数具有可配置部分,由可配置的“SwitchToSptDesired(S,G)”函数定义,和不可配置部分。当这两部分的条件都被满足时,执行从RPT树到SPT树的转换。
通常,可配置的“SwitchToSptDesired(S,G)”函数被用于确定来自源S的流量的数量阈值,以致如果所述阈值未被超过,那么不执行从RPT树到SPT树的转换。
构成PIM-SM协议编程代码的一部分的不可配置部分如下所示:
(pim_include(*,G)(-)pim_exclude(S,G)(+)pim_include(S,G)!=NULL)
该不可配置条件规定如果存在收到INCLUDE(S,G)IGMP消息的路由器的网络接口,或者如果存在收到指示希望从组播组G的所有源接收流量的IGMP式消息的路由器的网络接口,并且所述网络接口没有收到EXCLUDE(S,G)IGMP消息,那么路由器仅仅关于特定通道(S,G)从RPT树转换到SPT树。由于该不可配置条件只与IGMP消息相关,因此能够发起到SPT树的转换,以建立与通道(S,G)的输入路由器的直接连接的唯一路由器是接收IGMP消息的路由器,即图2的例子中的路由器260。在未通过其网络接口直接收到IGMP消息的路由器中,该条件决不会被满足,以致这些路由器决不会发起到SPT树的转换。
在图2的例子中,路由器260接收的唯一消息是EXCLUDE({S4};G1),从而所述不可配置的条件不被满足。因此,路由器260不能从RPT树转换到SPT树,流量将长时期地继续通过经RP路由器264的最长路径281、282,而不是通过最短的路径291、292。从而,流量是以相当低效的方式分发的,不必要地使RP路由器过载。
总之,本例表明应用IGMPv3协议组合INCLUDE式消息和EXCLUDE式消息的规则会不利地影响路由系统效率。本领域的技术人员易于明白在具有与图2中所示组合不同的组合的其它组播系统中,也会发生这种情况。
按照本发明的改进的IGMP协议
通过应用改进的IGMP协议,以致网络接口能够传送由主机发送的消息,而不失去包含在所述消息中的信息,本发明解决了这些问题。
按照本发明的改进的IGMP协议和IGMPv3协议的不同之处在于网络接口能够按双重模式工作:它们独立地保存和传送包含在INCLUDE式IGMP消息中的信息,和包含在EXCLUDE式IGMP消息中的信息。
下面说明按照本发明的改进的IGMP协议。为了便于说明,将参考按照一开始提及的IETF的RFC 3376规范的IGMPv3协议的描述,只详细描述改进的IGMP协议相对于所述IGMPv3协议的变化。未详细描述的部分适应于IGMPv3协议,于是在本领域的技术人员的能力范围之内。
所述描述是按照下述章节组织的:
1)接口.状态信息.组装源的方式的描述
2)删除状态记录的方式
3)得到网络接口记录的规则
4)IGMP消息的描述
5)当记录的信息变化时的行为
6)当主机收到Membership Query消息时的行为
7)路由器用协议的描述
8)与IGMPv3主机的兼容性
9)改进的IGMP代理
1)接口.状态信息.组装源的方式的描述
IGMPv3协议的RFC 3376规范说明系统必须支持按照下述函数的IGMP消息,以允许主机选择组播数据源:
IPMulticastListen(socket,interface,multicast-address,filter-mode,{source-list})
其中:
“socket”是允许区分在系统中执行的,调用IPMulticastListen函数的不同应用程序的参数。例如,所述应用程序可以是在与数据网络连接的单一计算机中执行的不同应用程序。
“interface”是其中指示将被接收的组播数据源的网卡或网络接口的本地标识符。
“multicast-address”是组播组的地址。
“filter-mode”是网络接口模式,它可以是INCLUDE或EXCLUDE。在INCLUDE模式下,网络接口把source-list定义为INCLUDE;这意味由列表上的所有源发送的流量都必须被发送。在EXCLUDE模式下,网络接口把source-list定义为EXCLUDE;这意味除了列表上的源之外,来自组播组中进行发送的所有源的流量都必须被发送。
“source-list”是INCLUDE或EXCLUDE源列表。
RFC 3376规范明确说明对于特定的套接字,网络接口和组播组组合,只能够存在一种filter-mode,它可以是INCLUDE或EXCLUDE。
系统为每个有效套接字保存一个状态记录。该记录包含下述信息:
(interface,multicast-address,filter-mode,{source-list})
对于每个套接字,该记录的filter-mode只能够是INCLUDE或EXCLUDE。
系统还为每个网络接口保存一个记录。该记录包含下述信息:
(multicast-address,filter-mode,{source-list})
对于每个网络接口和组播组,该记录的filter-mode只能够是INCLUDE或EXCLUDE。每个网络接口的记录源自于套接字记录。当网络接口的记录必须源自于不同记录的组合时,应用一开始解释的和在下面转录的规则:
规则1.如果组播组G1的任意数据源是EXCLUDE,那么对于组播组G1,网络接口将具有EXCLUDE filter-mode,网络接口的源列表是EXCLUDE源列表减去INCLUDE源列表的交集。
规则2.如果所有源都是INCLUDE式源,那么对于组播组G1,网络接口将具有INCLUDE filter-mode,源列表是所有INCLUDE源的并集。
至此说明了按照RFC 3376规范的IGMPv3协议的特性。
按照本发明的改进IGMP协议保持IGMPv3协议的IPMulticastListen函数的相同结构。
IPMulticastListen(socket,interface,multicast-address,filter-mode,{source-list})
但是差别在于对于每个套接字和每个网络接口,系统保存两个记录:一个记录用于EXCLUDE filter-mode,另一个记录用于INCLUDEfilter-mode。
于是,系统保存每个套接字的两个记录:
INCLUDE记录:(interface,multicast-address,INCLUDE,{source-list})
EXCLUDE记录:(interface,multicast-address,EXCLUDE,{source-list})
和每个网络接口和组播组的两个记录:
INCLUDE记录:(multicast-address,INCLUDE,{source-list})
EXCLUDE记录:(multicast-address,EXCLUDE,{source-list})
只要只存在INCLUDE源或只存在EXCLUDE源,系统就只需要一个记录。不过,如果对于具有INCLUDE和EXCLUDE源信息的相同组播组,存在对IPMulticastListen函数的不同调用,那么系统把信息保存在两个记录中,而不是如同现有技术中的IGMPv3协议那样混合所述信息。
对IPMulticastListen函数的每个调用替换关于特定组播组的记录的内容,如果不存在记录,那么它创建一个记录(例如,当首次为所述组播组调用该函数时,发生这种情况)。
2)删除记录的方式
为了删除IGMPv3协议中特定组播组G1的记录,发送具有空的源列表的INCLUDE式消息:INCLUDE({},G1)。另外,在过去一定时间之后,特定组播组G1的EXCLUDE模式的记录自动转换到INCLUDE模式,而不需要发送任何消息。为此,IGMPv3协议中的记录具有用于每个组播组的计时器,如果记录状态为EXCLUDE,那么所述计时器不等于0。当计时器到达0时,记录从EXCLUDE模式转换成INCLUDE模式。
为了删除按照本发明的改进的IGMP协议中的特定组播组G1的INCLUDE记录,使用和IGMPv3协议中相同的系统:发送具有空的源列表的INCLUDE式消息:INCLUDE({})。
为了自动删除特定组播组G1的EXCLUDE记录,和IGMPv3协议中一样,在改进的IGMP协议中EXCLUDE记录也具有用于每个组播组的计时器,不过操作更简单,因为不必从INCLUDE模式转换到EXCLUDE模式:当计时器达到0时,只是删除EXCLUDE记录。
可选的是,改进的IGMP系统增加用于更快速地删除EXCLUDE状态记录的新系统,所述新系统适用于:
-用IPMulticastListen函数更新的主机记录;
-借助IGMP消息更新的代理和路由器记录。
在改进的IGMP协议中包含称为Filter_Delete_Exclude的新的filter-mode参数,以借助IPMulticastListen函数删除EXCLUDE记录。当IPMulticastListen函数收到带有该参数的调用时,它知道它必须从在组播地址中指示的组播组中删除EXCLUDE记录。
为了借助IGMP消息从代理和路由器删除EXCLUDE记录,利用下面的精简描述,在改进的IGMP协议中定义了MembershipReport消息的Group Record Type字段的新值:
7DELEX-Type MODE_IS_DELETE_EXCLUDE
该新值被增加到已存在于IGMPv3协议中的,具有下述精简描述的Group Record Type字段的值1-6(RFC 3376规范的4.2.12节)中:
1IS_IN(x)-Type MODE_IS_INCLUDE
2IS_EX(x)-Type MODE_IS_EXCLUDE
3TO_IN(x)-Type CHANGE_TO_INCLUDE_MODE
4TO_EX(x)-Type CHANGE_TO_EXCLUDE_MODE
5ALLOW(x)-Type ALLOW_NEW_SOURCES
6BLOCK(x)-Type BLOCK_OLD_SOURCES
其中x是源IP地址的列表。
3)得到网络接口记录的规则
如1)节中所述,改进的IGMP协议允许为每个网络接口和组播组保存两条记录:
INCLUDE记录:(multicast-address,INCLUDE,{source-list})
EXCLUDE记录:(multicast-address,EXCLUDE,{source-list})
其中multicast-address是组播组的地址,source-list是源列表.
和IGMPv3协议中一样,网络接口记录得自于套接字记录。不过,当应用改进的IGMP协议时,过程更简单,因为不必混合单一组播组的INCLUDE源和EXCLUDE源。
改进的IGMP协议对每个网络接口和组播组应用下述规则:
规则1.对于每个组播组,网络接口的每个INCLUDE记录包含利用所述网络接口的套接字的INCLUDE记录的所有源的并集。
规则2.对于每个组播组,网络接口的每个EXCLUDE记录包含利用所述网络接口的套接字的EXCLUDE记录的所有源的交集。
4)IGMP消息的描述
为了简化说明,本节中在假定在路由器和主机之间不存在IGMP代理的情况下,说明路由器和主机之间的IGMP消息。IGMP代理的行为将在下面的章节9中说明。
对于主机和路由器之间的通信,改进的IGMP协议使用和在RFC3376规范的章节4中描述的IGMPv3协议相同的消息,不过具有下面说明的修改。
图3表示IGMPv3协议中由路由器发给主机的消息的格式。这些消息被称为Membership Query消息。图3中所示的格式既适用于IGMPv3协议,又适用于改进的IGMP协议。
图4表示IGMPv3协议中由主机发给路由器的消息的格式。这些消息被称为Membership Report消息。图4中所示的格式既适用于IGMPv3协议,又适用于改进的IGMP协议。
图5表示包含在每个Membership Report消息中的称为GroupRecord的数据块的内部格式。Group Address字段包含组播组地址。Source Address字段包含和源有关的信息。Number of Source字段指示存在于每个Group Record中的Source Address字段的数目。图5中所示的格式适用于IGMPv3协议。
在改进的IGMP协议中,当发送Membership Report式消息时,和IGMPv3协议中一样,使用相同的消息格式,不过当对于相同的组播组来说,存在INCLUDE源并且还存在EXCLUDE源时,如下面讨论的图6中所示,发送两个Group Record。由于源未被混合,因此对于每个网络接口和组播组可存在两个记录,系统可传送具有单一组播地址或组播组的两个不同Group Record的消息:Group Record之一传送和INCLUDE源有关的信息,另一个Group Record传送和EXCLUDE源有关的信息。
在IGMPv3协议中,路由器发送General Query式MembershipQuery消息,以关于主机的状态询问主机。响应该消息,主机发送Current-State Record式Membership Report状态消息。在改进的IGMP协议中保持该系统,不过主机发送的Current-State Record消息可包含单一组播组的两个Group Record:INCLUDE模式的一个Group Record,和EXCLUDE模式的另一个Group Record。和IGMPv3协议中一样,INCLUDE或EXCLUDE模式分别由RecordType字段的内容识别:
Record Type=1=MODE_IS_INCLUDE
Record Type=2=MODE_IS_EXCLUDE
从而,在单一的Current-State Record消息中传送和所述两个记录有关的信息。
在IGMPv3协议中,主机发送Source-List-Change Record消息,以报告已存在于INCLUDE源和EXCLUDE源中的变化。不同于Current-State Record消息,Source-List-Change Record消息不是响应路由器发送的Membership Query消息而发送的,相反它们由主机发送,以指示在其源记录中发生了变化。
和IGMPv3协议中一样,在改进的IGMP协议中,主机也发送Source-List-Change Record消息,不过具有下述差别:由于对于单一的组播组可存在两条不同的记录(INCLUDE记录和EXCLUDE记录),因此Source-List-Change Record消息必须指出它涉及的是这两条记录中的哪一个。为此,在改进的IGMP协议中利用下面的精简表达式定义了四种新的Group Record Type:
8ALLOWIN(x)-Type ALLOW_NEW_SOURCES_INCLUDE
9BLOCKIN(x)-Type BLOCK_OLD_SOURCES_INCLUDE
10ALLOWEX(x)-Type ALLOW_NEW_SOURCES_EXCLUDE
11BLOCKEX(x)-Type BLOCK_OLD_SOURCES_EXCLUDE
其中x是源IP地址的列表。
新的Group Record Type 8和9,即,ALLOWIN(x)和BLOCKIN(x)表达式被用于发送分别向INCLUDE记录中的源列表增加元素,或者从INCLUDE记录中的源列表中除去元素的消息。
新的Group Record Type 10和11,即,ALLOWEX(x)和BLOCKEX(x)表达式被用于发送消息,以致它分别允许或阻止由源x发送的流量。
图6表示当应用按照本发明的改进的IGMP协议时,与图2的图中由DSLAM 240发给路由器260的消息对应的MembershipReport消息的例子。下面详细说明该消息的内容。DSLAM 240充当位于路由器260与主机200、220、225和231之间的IGMP代理。于是,这种情况下,通过用DSLAM 240代替主机,适用前面与路由器和所述主机之间的IGMP消息有关的说明。在其与IGMP路由器的通信中,IGMP代理充当主机,在其与主机的通信中,IGMP代理充当IGMP路由器。
下面示出当应用按照本发明的改进的IGMP协议时,保存在图2的每个设备中的记录。
在PC 200中,如果应用程序201和202分别使用socket1和socket2时,socket1和socket2状态记录分别如下所示:
INCLUDE记录:(Interface 203,Group G1,INCLUDE,{S1,S2})
EXCLUDE记录:(Interface 203,Group G1,EXCLUDE,{S4})
与CPE 208的网络接口的状态相符的PC 200的网络接口203的状态记录如下所示:
INCLUDE记录:(Group G1,INCLUDE,{S1,S2})
EXCLUDE记录:(Group G1,EXCLUDE,{S4})
在PC 220中,如果应用程序221使用socket1,那么socket1状态记录如下:
INCLUDE记录:(Group G1,INCLUDE,{S5})
在PC 225中,如果应用程序226使用socket1,那么socket1状态记录如下:
INCLUDE记录:(Group G1,INCLUDE,{S3})
在组装源之后,起IGMP代理作用的CPE 228的网络接口的状态记录如下所示:
INCLUDE记录:(Group G1,INCLUDE,{S3,S5})
在STB 231中,与CPE 229的网络接口的状态相符的网络接口232的状态记录如下所示:
INCLUDE记录:(Group G1,INCLUDE,{S1})
每个CPE 208、228和229把它的IGMP消息发给DSLAM 240,DSLAM 240再次组装所述IGMP消息,但是不混合INCLUDE源和EXCLUDE源。
在组装源之后,起IGMP代理作用的DSLAM 240的网络接口的状态记录如下所示:
INCLUDE记录:(Group G1,INCLUDE,{S1,S2,S3,S5})
EXCLUDE记录:(Group G1,EXCLUDE,{S4})
响应路由器260发送的General Query消息,DSLAM 240向路由器260发送下面分析的图6中所示的消息。
Type==0x22指示它是Membership Report,Number of GroupRecords=2指示对于相同的组播组G1发送两个数据块或GroupRecord。Group Record之一包含和INCLUDE源有关的信息,另一个Group Record包含和EXCLUDE源有关的信息。第一个GroupRecord具有等于1的Record Type。这意味它是MODE_IS_INCLUDE式记录,即,它包含和INCLUDE源有关的信息。在该数据块中,Number of Sources等于4,意味将要发送四个INCLUDE源的信息。在Multicast Address字段中指出组播组G1。四个SourceAddress[1]-Source Address[4]字段包含和四个INCLUDE源:S1、S2、S3和S5有关的信息。下面示出Record Type等于2的第二个GroupRecord。这意味它是MODE_IS_EXCLUDE式记录,即,它包含和EXCLUDE源有关的信息。Number of Sources等于1,意味将要发送和一个EXCLUDE源有关的信息。在Multicast Address字段中指出组播组G1。Source Address[1]字段包含和EXCLUDE源:S4有关的信息。
路由器260已收到所有源的完整信息。现在由PIM-SM协议规定的关于从RPT树转换到SPT树的要求被满足,如下所述。
默认配置PIM-SM协议的SwitchToSptDesired(S,G)条件(它是关于通道(S,G),从RPT树转换到SPT树的转换条件的可配置部分),以致当第一数据分组从源S经SPT树到达时,该条件被满足。当应用改进的IGMP协议时,所述转换条件的不可配置条件总是被满足,因为有兴趣从源S接收流量的路由器将会总是收到INCLUDE(S,G)IGMP消息,或者会收到指示它希望从组播组G的所有源接收流量的IGMP式消息,而不是会收到EXCLUDE(S,G)IGMP消息。
于是,当应用改进的IGMP协议时,已收到关于某一源的流量请求的所有路由器能够转到SPT树,并通过最短路径从所述源接收流量。
于是,在图2的例子中,由源S1、S2和S3发送的流量将通过最短路径291,由源S5发送的流量将通过最短路径292。
可选的是,路由器260从最初起就能够直接与每个源S1、S2、S3和S5的SPT树连接,因为它知道这些源的IP地址,于是能够直接使用SPT树。为此,足以使SwitchToSptDesired(S,G)函数始终为真。
此外,可选的是,每个主机能够在实际的IGMP消息中向路由器260指出按照每个源,它何时必须开始从RPT树到SPT树的转换。为此,按照本发明,使用在组播地址的范围之外的组播地址字段,其中放入消息而不是组播地址。例如,组播地址的前两个字节被设为0,通过使下述含意与接下来的两个字节相联系,接下来的这两个字节被用于向路由器发送消息:
100=借助SPT树直接连接
200=使用路由器的默认配置,并评估SwitchToSptDesired(S,G)函数,以决定转换到STP树
300=总是使用RPT树,决不转换到SPT树。
路由器检测该地址在组播地址的范围之外,并把这4个字节解释成之后包括在相同Group Record中的组播地址中的指示它必须从RPT树转换到SPT树的方式的消息。
5)当记录的信息变化时的行为
在改进的IGMP协议中,当关于特定组播组的网络接口的状态记录变化时,系统必须通过发送Source-List-Change Record消息,简单地传送所述变化,如在前面的章节中所示。
在IGMPv3协议中,该过程更复杂,因为系统必须考虑filter-mode和其中的可能变化。在改进的IGMP协议中不存在这种复杂性,因为INCLUDE源和EXCLUDE源的信息被分别保存和传送。
6)当主机收到Membership Query消息时的行为
在IGMPv3协议中和在改进的IGMP协议中,路由器向主机发送称为Membership Query消息的消息,以致主机告知它们希望接收的组播组和通道。在改进的IGMP协议中,主机向路由器发送和它们在IGMPv3协议中发送的响应消息类似的响应消息,不过差别在于关于INCLUDE源和EXCLUDE源的信息是分别发送的。
使用几个计时器来防止主机同时作出响应,所述计时器延迟主机的响应,以便考虑到在Membership Query消息中规定的时隙分配它们。在改进的IGMP协议中和在IGMPv3协议中,其操作是相同的。
存在三种Membership Query消息:General Query,Group-Specific Query和Group-and-Source-Specific Query。
每隔一定时间(默认125秒),路由器发送General Query式消息,以致所有主机通过发送被称为Current-State Record的MembershipReport消息,告知它们希望接收的组播组和通道。主机借以响应General Query请求的消息包括被称为Group Record的数据块,Group Record可以是下述两种:
Record Type=1MODE_IS_INCLUDE
Record Type=2MODE_IS_EXCLUDE
如上所示,在如图4中所示的单一消息或者Membership Report中发送如图5中所示的称为Group Record的几个数据块。图5的第一个字段,即,Group Record的第一个字段是指示每个数据块的含意的Record Type字段(在图5的例子中,Record Type字段是表示成Type的字段)。
在IGMPv3协议中,由于每个组播组只能够或者处于INCLUDE状态,或者处于EXCLUDE状态,因此对于每个组播组,每个主机只发送一个Group Record,同时Record Type分别具有与INCLUDE或EXCLUDE组的状态相应的值1或值2。
在改进的IGMP协议中,由于INCLUDE源和EXCLUDE源的信息被分别保存和发送的事实,对于单一组播组,主机可能需要发送两个Group Record:Record Type=1的告知INCLUDE源的第一个Group Record,和Record Type=2的告知EXCLUDE源的第二个Group Record。这可从图6中看出,其中存在关于相同组播组G1的两个Group Record。
对于Group-Specific Query和Group-and-Source-Specific Query式消息,存在上面说明的相同差异:当主机应答这些消息时,它们能够利用两个Group Record,分别地发送来自INCLUDE源和EXCLUDE源的信息。
7)路由器用协议的描述
按照改进的IGMP协议的操作与IGMPv3协议和MLDv2协议的操作非常类似。于是,下面使用与在一开始提及的RFC 3376规范(IGMPv3协议)和RFC 3810规范(MLDv2协议)中使用的术语相同的术语,以帮助理解。
相对于本领域的现有技术的IGMPv3协议和MLDv2协议的主要差别在于在改进的IGMP协议中,对于每个组播组,路由器具有两个状态记录:INCLUDE记录和EXCLUDE记录。
由于路由器从主机接收关于INCLUDE源和EXCLUDE源的详细信息的事实,改进的IGMP协议使路由器可以更好地利用路由算法。路由器在它们直接连接的所有网络中执行IGMP协议。如果组播路由器具有与相同网络连接的多于一个的网络接口,那么它只需要在与所述网络连接的网络接口之一中执行该协议。不同于IGMPv3协议,在改进的IGMP协议中,对于每个组播组和网络接口,路由器不再排他地按INCLUDE模式或EXCLUDE模式工作。于是,它不再需要允许它从INCLUDE模式变换到EXCLUDE模式,和从EXCLUDE模式变换到INCLUDE的所有机制。
对于每个网卡或者网络接口,以及组播组,利用改进的IGMP协议的路由器把分别来自组播INCLUDE源和EXCLUDE源的信息保存在两个记录中:
INCLUDE记录:(multicast-address,INCLUDE,{source list and timers})
EXCLUDE记录:(multicast-address,group-timer,EXCLUDE,{source list and timers})
其中{source list and timers}是元素(source-address,source-timer)的列表,其中source-address是源IP地址,source-timer是与所述源相关的计时器。
计时器是存储器中的变量,它包含随着时间的过去而有规律地减小,直到达到0为止的值。
于是,保存在路由器中的这两个INCLUDE记录和EXCLUDE记录包含与每个source-address相关的一个source-timer。
如上在涉及删除记录的方式的细目2中所述,与组播组相关的每个EXCLUDE记录还包含当过去特定的时间而路由器没有收到具有EXCLUDE式流量请求的报告时,用于消除EXCLUDE状态记录的group-timer。
如上所述,路由器定期向主机发送如图3中所示的称为Membership Query消息的消息,以致主机答复与它们希望从其接收组播流量的组播组和源有关的信息。主机还能够向路由器发送消息,以请求组播流量,而不等待主机发送Membership Query消息。
路由器使用计时器来保证在发送了Group Specific Query消息或者Group and Source Specific Query消息之后,所有主机都具有足够的时间来答复所述消息。计时器的值随着时间的过去而逐渐减小,如果路由器从主机收到Membership Report消息,那么路由器再次重新启动对应的计时器。
INCLUDE记录中的计时器按照下述方式工作:对于特定的网络接口、特定的组播组和特定的被包含源地址,只要source-timer大于0,路由器将继续从通道(源,组播组)通过所述网络接口传送组播流量;当source-timer达到0时,路由器将停止传送所述流量,并将从该组播组的INCLUDE源列表中删除该源。
EXCLUDE记录中的计时器按照类似的方式工作,不过差别在于EXCLUDE源被分成两个列表:被称为Requested List的第一个列表包含其source-timer的值大于0的源,被称为Exclude List的第二个列表包含其source-timer的值为0的源。
对于每个组播组Gi,路由器传送INCLUDE源所请求的所有流量。如果对于所述组播组Gi另外存在一个EXCLUDE记录,那么路由器还传送除出自EXCLUDE List的EXCLUDE源之外的组播组Gi的所有剩余流量。
存在Requested List的原因在于在具有向一个路由器发送消息的几个主机的网络中,在不同主机的请求之间可能存在冲突。例如,当一个主机请求来自特定源的流量,另一个主机请求除所述源之外的流量时会发生所述冲突。例如,主机1把第一个EXCLUDE({S1},G1)消息,相同以太网中的另一个主机2随后把第二个EXCLUDE({S1,S2,S3},G1)消息发给相同的路由器。当收到第二个消息时,如果路由器把第二个消息的源{S1,S2,S3}放入Exclude List中,那么主机1会停止接收由于它曾希望接收除来自源S1的流量之外的所有流量,因而主机1曾经想要接收的来自源S2和S3的流量。为了避免这种问题,路由器只把新消息的一组源与在接收新消息之前已在Exclude List中的一组源的交集放入Exclude List中。剩余的EXCLUDE源转到Requested List中,可选的是,路由器向主机发送Group-And-Source Specific Query消息,以询问是否存在仍然有兴趣接收来自组播组G1的源S2和S3的流量的任何主机。
按照source-timer的值,把EXCLUDE源分成两个列表,Requested List和Exclude List的原理与在IGMPv3协议和MLDv2协议中应用的原理类似。在最初提及的RFC 3810规范(MLDv2协议)包含该原理的说明。
表1(在本说明书的结尾)表示应用按照本发明的改进的IGMP协议的改进路由器的操作。在其初始状态下,对于特定的组播组G,该路由器具有所述组播组G的两个状态记录,因为它具有INCLUDE源,还具有EXCLUDE源。在表1中,第一列State1表示路由器的INCLUDE记录和EXCLUDE记录的初始状态;第二列Message表示路由器接收的Membership Report消息的内容;第三列State 2表示在收到Membership Report消息之后,路由器的所述记录的状态;第四列也是最后一列Actions表示在收到所述Membership Report消息之后,路由器执行的动作。表1包含用虚线分开的六行。表1的每一行是路由器的基于初始状态并且取决于它所收到消息的操作的例子。
表1独立地涉及每个组播组G。每个组播组G将具有它自己的INCLUDE状态记录和EXCLUDE状态记录,所述INCLUDE状态记录和EXCLUDE状态记录将受该路由器涉及所述G组播组接收的消息影响。
表1中使用了下述术语:
-(A+B)意味源的集合A和源的集合B的并集。
-(A*B)意味源的集合A和源的集合B的交集。
-(A-B)意味源的集合A减去集合A的也存在于集合B中的源。
-INCLUDE(A)指示该路由器具有INCLUDE记录,所述INCLUDE记录包含称为A的一组源。
-EXCLUDE(X,Y)指示该路由器具有EXCLUDE状态记录,因为存在EXCLUDE源。
-X是Requested List。
-Y是Exclude List。
-GMI是包含时间值的称为Group Membership间隔的参数。默认使用250秒的值。
-LMQT是包含时间值的称为Last Member Query Time的参数。它是主机必须答复Group-And-Source Specific Query式消息的时间。在该时间之后,如果没有主机答复对该数据感兴趣,那么路由器停止传送所述数据。
-T(S)是源S的源计时器。
-GT是“组计时器”,即,所有组播组的EXCLUDE记录的计时器。
-SEND Q(G,S)意味路由器向主机发送Group-And-SourceSpecific Query消息,以检查是否仍然存在对组播组G的源S感兴趣的主机。当执行该动作时,路由器还把源S的计时器减小到LMQT值。如果作为响应,路由器收到表示对任意源S感兴趣的消息,那么它随后把存在感兴趣主机的所述源的计时器的值初始化为等于GMI的初始值。
改进的IGMP协议的另一优点在于它允许路由器在发送“Source-And-Group Specific Query”式消息,并从消息的源列表中除去某些源之前,咨询所述两个INCLUDE记录和EXCLUDE记录,以致如果所有源都被除去,消息甚至也能够被清除。
为此,当如在表1的行4中所示的例子中一样,路由器收到BLOCKIN(B)式消息时,在进行动作SEND Q(G,A*B)之前,它能够检查对于相同组播组G是否存在EXCLUDE记录,并从消息Q(G,A*B)中除去未包括在Exclude List中的所有源,因为这意味某人已借助EXCLUDE消息请求了它们。
按照相同的方式,当类似于在表1的行6中所示的例子中一样,路由器收到BLOCKEX(B)式消息时,路由器能够咨询INCLUDE记录的源列表,并使用该信息从消息Q(G,B-Y)中清除在INCLUDE记录中的源。
这两种检查能够消除大量的Group-And-Source Specific Query消息,减少网络中的流量,及主机和路由器不得不处理的消息的数目。
8)与IGMPv3主机的兼容性
使用改进的IGMP协议的路由器(下面称为改进路由器)能够利用IGMPv3协议与主机通信。例如,以太网可具有与之连接的使用IGMPv3协议的主机,和使用按照本发明的改进的IGMP协议的主机。
为此,能够处理改进的IGMP协议的新消息的改进路由器也能够处理由IGMPv3协议和MLDv2协议使用而未在改进的IGMP协议中使用的消息。
当改进路由器收到ALLOW(B)式消息时,路由器表现为好像它已收到关于在INCLUDE记录中的集合B上的源的ALLOWIN(B)消息,并且路由器表现为好像它已收到关于具有EXCLUDE状态记录的集合B上的源的ALLOWEX(B)消息。
如果ALLOW(B)消息的集合B上的源同时在路由器的INCLUDE记录和EXCLUDE记录中,那么路由器的操作可被配置成以致该路由器表现为好像它已收到所述两个ALLOWIN(B)消息和ALLOWEX(B)消息,或者表现为好像它只收到所述两个消息之一。在路由器配置中可在这两种选项之间进行选择。
按照相同的方式处理路由器接收BLOCK(B)式消息的情况:路由器的操作可被配置成以致该路由器表现为好像它已收到两个BLOCKIN(B)和/或BLOCKEX(B)消息。
当路由器收到TO_IN(B)消息时,它把该消息看作好像是IS_IN(B)消息,因为由于路由器能够按照双重模式工作,路由器不必从INCLUDE模式变换成EXCLUDE模式,和从EXCLUDE模式变换成INCLUDE模式。
按照相同的方式,当路由器收到TO_EX(B)消息时,它把该消息看作好像是IS_EX(B)消息。
9)改进的IGMP代理
按照本发明的改进的IGMP代理和在最初提及的RFC 4605规范中定义的IGMP代理的不同之处在于它分别保存和传送关于INCLUDE源和EXCLUDE源的信息。
改进的IGMP代理能够为每个网络接口和组播组保存两个记录:
INCLUDE记录:(multicast-address,INCLUDE,{source list})
EXCLUDE记录:(multicast-address,EXCLUDE,{source list})
IGMP代理的功能是组装它从其与主机连接的网络接口接收的消息,从而发送由连接该IGMP代理与IGMP路由器或者另一个IGMP代理的网络接口组装或总结的消息。所述面对IGMP路由器的网络接口通常被称为上游接口。
为此,IGMP代理应用和上面在章节3中解释的规则类似的规则,以根据套接字记录推断来自主机的网络接口的记录,不过差别在于由于存在两个独立的记录,一个是关于INCLUDE源的记录,另一个是关于EXCLUDE源的记录,因此从EXCLUDE源记录推断源列表就不必考虑关于INCLUDE源的信息,因为所述信息包括在INCLUDE源记录中。
改进的IGMP代理对每个网络接口和组播组应用的这些规则是下述规则:
规则1.对每个组播组,每个INCLUDE记录包含在代理的所有网络接口中接收的与所述组播组相关的INCLUDE消息的所有INCLUDE源的并集。
规则2.对每个组播组,每个EXCLUDE记录包含在代理的所有网络接口中接收的与所述组播组相关的EXCLUDE消息的所有EXCLUDE源的交集。
为了独立地把和既包含INCLUDE源又包括EXCLUDE源的组播组有关的信息传送给路由器,使用和在细目4中所述同样的具有两个“Group Record”的消息系统。
改进的IGMP代理能够同时与利用IGMPv3协议的主机一道工作,和与利用按照本发明的改进IGMP协议的主机一道工作。
表1
Figure GPA00001009728100331

Claims (15)

1.一种管理数据网络中的组播流量的方法,在所述数据网络中,源(295、296、297、298、299)发送以至少一个组播组为目的地的数据,多个主机(200、220、225、230)从路由器(260)接收由在所述组播组中进行发送的一个或几个所述源(295、296、297、298、299)发送的数据,所述主机(200、220、225、230)和所述路由器(260)借助允许组播主机-路由器通信的通信协议相互通信,通过组播主机-路由器通信,主机(200、220、225、230)能够为所述组播组定义包含源列表和排除源列表,所述包含源列表表示主机(200、220、225、230)希望接收由所述包含源列表上的源发送的数据,所述排除源列表表示主机(200、220、225、230)希望接收除所述排除源列表上的源之外,来自所述组播组的所有源的流量;其特征在于按照所述通信协议:
-主机(200、220、225、230)为每个组播组和网络接口,保存两个独立的记录:含有包含源列表的包含源记录,和含有排除源列表的排除源记录;
-每个主机(200、220、225、230)的网络接口向所述路由器(260)发送消息,所述消息包含关于单一组播组的所述主机(200、220、225、230)的包含源记录的源列表的信息,和/或所述主机(200、220、225、230)的排除源记录的源列表的信息;
-路由器(260)为每个组播组保存两个独立的记录:含有包含源列表的信息的包含源记录,和含有排除源列表的信息的排除源记录;
-当所述路由器(260)通过其网络接口从主机(200、220、225、230)收到含有关于包含源列表的信息,和/或关于排除源列表的信息的消息时,对每个组播组,所述路由器(260)更新它的包含源记录和/或它的排除源记录。
2.按照权利要求1所述的方法,其特征在于每个主机(200、220、225、230)的网络接口发给所述路由器(260)的所述消息是含有所述主机(200、220、225、230)的包含源记录的源列表和所述主机(200、220、225、230)的排除源记录的源列表的状态消息。
3.按照权利要求1所述的方法,其特征在于每个主机(200、220、225、230)的网络接口发给所述路由器(260)的所述消息是当所述主机(200、220、225、230)检测到它的包含源记录的变化,或者它的排除源记录的变化时,发送的状态消息的变化,状态消息的所述变化包含每个组播组的一个或两个数据块,其中每个所述数据块含有和包含源记录的源列表的修改有关的信息,或者和排除源记录的源列表的修改有关的信息,其中每个所述数据块包含指示该数据块是否与包含源列表的修改,或者与排除源列表的修改相关的字段。
4.按照权利要求1-3任意之一所述的方法,其特征在于所述路由器(260)使用包含在它接收的所述消息中的包含源列表的信息来请求所述包含源发送的数据流量。
5.按照权利要求1-4任意之一所述的方法,其特征在于按照所述通信协议,对于主机(200、220、225、230)的网络接口(203、222、223、232),对于使用所述网络接口(203、222、223、232)的每个套接字和对于每个组播组,保持包含源记录和排除源记录,对于所述网络接口(203、222、223、232)保持分别根据套接字的所述包含源记录的内容和根据套接字的所述排除源记录的内容更新的包含源记录和排除源记录。
6.按照权利要求1-5任意之一所述的方法,其特征在于到达路由器(260)的网络接口的所述状态消息包含和为了建立从所述包含源到所述路由器(260)的路由树,所述路由器(260)必须应用的方法有关的指令。
7.按照权利要求6所述的方法,其特征在于为了把所述指令包含在状态消息中,在所述状态消息中指示在为组播地址保留的范围之外的组播地址;路由器(260)检测到指示的组播地址在范围之外,认为所述组播地址包含所述指令,并读取包含在所述组播地址中的呈数字代码形式的所述指令。
8.按照权利要求1-7中的任意一个所述的方法,其特征在于路由器(260)和主机(200、220、225、230)之间的所述通信协议是某一版本的IGMP协议(因特网组管理协议)或MLD(组播侦听者发现)协议,其中由网络接口或者由设备接口发送的状态消息能够把包含源列表和排除源列表包含在同一消息中。
9.一种与按照权利要求1所述的方法相适合的网络设备(203、208、222、223、232、208、228、229、240),所述网络设备包含网络接口,并且适合于在所述主机(200、220、225、230)和所述路由器(260)之间的交换线路中工作,其特征在于它保存可执行指令,所述可执行指令用于:
-为每个组播组,保持包含源记录和排除源记录;
-向面对所述路由器(260)的附近网络接口发送消息,所述消息包含关于一个组播组的所述包含源记录的源列表的信息,和/或所述排除源记录的源列表的信息;
-当所述网络设备的网络接口从另一个网络接口收到含有关于包含源列表的信息,和/或关于排除源列表的信息的消息时,对每个组播组,更新所述包含源记录和/或所述排除源记录。
10.一种与按照权利要求5所述的方法相适合的设备(200、220、225、230),所述设备包含网络接口(203、222、223、232),并且适合于起主机作用,其特征在于它保存可执行指令,所述可执行指令用于为使用所述网络接口(203、222、223、232)的每个套接字和为每个组播组,保持包含源记录和排除源记录,为所述网络接口(203、222、223、232)保持分别根据套接字的所述包含源记录的内容和根据套接字的所述排除源记录的内容更新的包含源记录和排除源记录。
11.一种与按照权利要求1所述的方法相适合的路由器(260),其特征在于它保存可执行指令,所述可执行指令用于:
-为每个组播组保持两个独立的记录:包含源记录和排除源记录;和
-当所述路由器(260)通过其网络接口收到含有关于包含源列表的信息,和/或关于排除源列表的信息的消息时,对每个组播组,更新所述包含源记录和/或所述排除源记录。
12.按照权利要求11所述的路由器(260),其特征在于所述路由器(260)使用与包含在路由器(260)接收的所述消息中的包含源列表有关的信息向其它路由器请求由所述包含源发送的数据流量。
13.按照权利要求12所述的路由器(260),其特征在于为了请求由所述包含源发送的所述数据流量,所述路由器(260)使用PIM-SIM(协议独立组播-稀疏模式)协议。
14.按照权利要求11所述的路由器(260),其特征在于当收到告知主机不再希望接收来自特定组播组和特定包含源的流量的消息时,所述路由器检查是否存在所述组播组的排除源记录,如果所述记录存在,并且不包含和所述包含源具有相同IP地址的排除源,那么所述路由器(260)继续传送所述特定组播组和所述特定包含源的所述流量,而不发送IGMP协议中的Group-And-Source Specific Query式消息以检查是否存在仍然希望接收所述流量的另一个主机。
15.按照权利要求11所述的路由器(260),其特征在于当收到更新与排除源记录有关的信息的消息时,其中所述消息请求封锁来自特定源和组播组的流量,所述路由器(260)检查是否存在所述组播组的包含源记录,如果所述记录存在,并且包含和所述消息请求封锁的源具有相同IP地址的包含源,那么所述路由器(260)继续传送所述特定组播组和所述特定源的所述流量,而不发送IGMP协议中的Group-And-Source Specific Query式消息以检查是否存在仍然希望接收所述流量的另一个主机。
CN200780100049A 2007-06-26 2007-10-05 管理组播组的方法和设备 Pending CN101766000A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
ES200701775 2007-06-26
ES200701775 2007-06-26
PCT/EP2007/008655 WO2009000306A1 (en) 2007-06-26 2007-10-05 Method and device for managing multicast groups

Publications (1)

Publication Number Publication Date
CN101766000A true CN101766000A (zh) 2010-06-30

Family

ID=39092048

Family Applications (1)

Application Number Title Priority Date Filing Date
CN200780100049A Pending CN101766000A (zh) 2007-06-26 2007-10-05 管理组播组的方法和设备

Country Status (8)

Country Link
US (6) US7640333B1 (zh)
EP (2) EP2078376B1 (zh)
JP (1) JP5196685B2 (zh)
CN (1) CN101766000A (zh)
AT (2) ATE493811T1 (zh)
DE (1) DE602007011653D1 (zh)
ES (2) ES2358546T3 (zh)
WO (1) WO2009000306A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104104606A (zh) * 2013-04-01 2014-10-15 中兴通讯股份有限公司 一种调制解调器及其实现igmp报文版本自适应的方法

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080114695A1 (en) 2006-11-10 2008-05-15 Semantic Components S.L. Process for implementing a method for the on-line sale of software product use licenses through a data network, and software component which allows carrying out said process
US20100046516A1 (en) * 2007-06-26 2010-02-25 Media Patents, S.L. Methods and Devices for Managing Multicast Traffic
CN101766000A (zh) 2007-06-26 2010-06-30 传媒专利有限公司 管理组播组的方法和设备
US8184630B2 (en) 2007-10-15 2012-05-22 Media Patents, S.L. Method for managing multicast traffic in a data network and network equipment using said method
US8064449B2 (en) 2007-10-15 2011-11-22 Media Patents, S.L. Methods and apparatus for managing multicast traffic
WO2009056175A1 (en) 2007-10-30 2009-05-07 Soporte Multivendor S.L. Method for managing multicast traffic between routers communicating by means of a protocol integrating the pim protocol; and router and switch involved in said method
WO2009095041A1 (en) 2008-02-01 2009-08-06 Soporte Multivendor S.L. Method for managing multicast traffic through a switch operating in the layer 2 of the osi model, and router and switch involved in said method
US9031068B2 (en) 2008-02-01 2015-05-12 Media Patents, S.L. Methods and apparatus for managing multicast traffic through a switch
WO2009109684A1 (es) * 2008-03-05 2009-09-11 Media Patents, S. L. Procedimiento para monitorizar o gestionar equipos conectados a una red de datos
US7984097B2 (en) 2008-03-18 2011-07-19 Media Patents, S.L. Methods for transmitting multimedia files and advertisements
ES2326949B1 (es) 2008-03-18 2010-07-14 Clarity Systems, S.L. Procedimiento utilizado por un servidor de streaming para realizar una transmision de un fichero multimedia en una red de datos.
US8588056B1 (en) * 2009-04-15 2013-11-19 Sprint Communications Company L.P. Elimination of unwanted packets entering a restricted bandwidth network
US9154532B2 (en) 2009-04-27 2015-10-06 Zaron Remote Llc Methods and apparatus for transmitting multimedia files in a data network
US8379641B2 (en) * 2009-07-20 2013-02-19 Telefonaktiebolaget L M Ericsson (Publ) Light host management protocol on multicast capable router
US8325725B2 (en) * 2009-07-20 2012-12-04 Telefonaktiebolaget L M Ericsson (Publ) Efficient host management protocol on multicast capable router
US8189584B2 (en) * 2009-07-27 2012-05-29 Media Patents, S. L. Multicast traffic management in a network interface
CN101719919B (zh) * 2009-12-09 2012-09-05 中兴通讯股份有限公司 一种实现组播源控制的方法及装置
US20110149960A1 (en) * 2009-12-17 2011-06-23 Media Patents, S.L. Method and apparatus for filtering multicast packets
US8495497B2 (en) * 2010-01-28 2013-07-23 International Business Machines Corporation Graphical guides to aid user selection of groups of instruction packages
CN101808004B (zh) * 2010-03-23 2014-04-30 中兴通讯股份有限公司 一种实现任意播汇聚点机制的方法和系统
US20110274107A1 (en) * 2010-05-05 2011-11-10 Telefonaktiebolaget L M Ericsson (Publ) Source selection by routers
CN102340409B (zh) * 2010-07-23 2016-09-07 希姆通信息技术(上海)有限公司 网络设备的管理方法
CN102822511A (zh) 2011-04-05 2012-12-12 三菱重工业株式会社 再生能量型发电装置
KR20120139667A (ko) 2011-04-05 2012-12-27 미츠비시 쥬고교 가부시키가이샤 재생 에너지형 발전 장치
JP5736972B2 (ja) * 2011-05-30 2015-06-17 富士ゼロックス株式会社 蓄積装置及び通信システム
US9590856B1 (en) 2011-07-08 2017-03-07 The Boeing Company Multicast stream mapping
UA113291C2 (xx) 2011-08-04 2017-01-10 Метаболіти транскломіфену і їх застосування
CN103152748B (zh) 2011-12-07 2015-11-25 华为技术有限公司 通信监听方法、基站和终端
US9306836B2 (en) * 2012-07-30 2016-04-05 Hewlett Packard Enterprise Development Lp Searching for multicast consumers in a network of interconnected nodes
WO2014070523A1 (en) 2012-11-02 2014-05-08 Repros Therapeutics Inc. Trans-clomiphene for use in cancer therapy
CN102970152A (zh) * 2012-11-23 2013-03-13 上海斐讯数据通信技术有限公司 静态实现IGMP Snooping的方法
US9438435B2 (en) * 2014-01-31 2016-09-06 Intenational Business Machines Corporation Secure, multi-tenancy aware and bandwidth-efficient data center multicast
US9674075B1 (en) * 2014-12-22 2017-06-06 Juniper Networks, Inc. Multicast only fast re-route for PIM ASM mode
US11575775B2 (en) * 2017-01-04 2023-02-07 Extreme Networks, Inc. Overlay IP multicast over unicast IP networks
EP3367122B1 (en) * 2017-02-27 2020-10-14 Nxp B.V. Apparatus for a radio device
US11082294B2 (en) * 2017-08-15 2021-08-03 Mueller International, Llc Broadcast remote firmware update
US10797900B2 (en) * 2018-01-05 2020-10-06 Arista Networks, Inc. System and method of filtering control plane data
US11039374B2 (en) 2018-09-07 2021-06-15 Blackberry Limited Indicating support for a broadcast service
US20200221262A1 (en) * 2019-01-08 2020-07-09 Blackberry Limited Controlling transmission of group-addressed data
US11431635B2 (en) * 2020-03-09 2022-08-30 Vmware, Inc. Load balancing designated routers for multicast groups

Family Cites Families (108)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4024505A (en) 1974-11-18 1977-05-17 Compucorp Interface system for coupling an indeterminate number of peripheral devices to a central processing unit
US4149238A (en) 1977-08-30 1979-04-10 Control Data Corporation Computer interface
US6370142B1 (en) 1995-07-12 2002-04-09 Nortel Networks Limited Method and apparatus for performing per-port IP multicast pruning
JP3123417B2 (ja) 1995-12-26 2001-01-09 日本ビクター株式会社 小規模ネットワークにおける通信方法及び同通信方法に適用される制御装置と従属装置
US5778187A (en) 1996-05-09 1998-07-07 Netcast Communications Corp. Multicasting method and apparatus
US6331983B1 (en) 1997-05-06 2001-12-18 Enterasys Networks, Inc. Multicast switching
JP4080599B2 (ja) 1998-06-17 2008-04-23 富士通株式会社 通信制御装置およびマルチキャスト対応lanに適用される通信制御方法
US6219720B1 (en) 1998-08-10 2001-04-17 Micron Technology, Inc. Core logic unit with internal register for peripheral status
US6442617B1 (en) 1999-03-31 2002-08-27 3Com Corporation Method and system for filtering multicast packets in a peripheral component environment
US6721318B1 (en) 1999-07-29 2004-04-13 Nortel Networks Limited Extending router functionality to report static group membership
US6914907B1 (en) 1999-08-05 2005-07-05 Alcatel Canada Inc. Method and apparatus for providing multi-cast transmissions using a distributed router
US6785294B1 (en) 1999-12-30 2004-08-31 Intel Corporation Methods and apparatuses for supporting IGMP and GMRP concurrently
KR100512755B1 (ko) 2000-04-14 2005-09-07 엔티티 도꼬모 인코퍼레이티드 멀티캐스트 서비스 제공 시스템, 멀티캐스트 서비스 제공방법, 정보일제송신장치, 무선단말 및 무선기지국
WO2002003614A2 (en) 2000-06-29 2002-01-10 Cachestream Corporation Virtual multicasting
CN1329392C (zh) * 2000-08-14 2007-08-01 奥索-麦克尼尔药品公司 取代的吡唑
US6847638B1 (en) 2000-10-16 2005-01-25 Cisco Technology, Inc. Multicast system for forwarding desired multicast packets in a computer network
US7283521B1 (en) 2000-10-26 2007-10-16 Nortel Networks Limited System and method for reporting communication related information in a packet mode communication
US7068598B1 (en) 2001-02-15 2006-06-27 Lucent Technologies Inc. IP packet access gateway
US6977891B1 (en) 2001-06-30 2005-12-20 Extreme Networks, Inc. Method and system for multicast traffic reduction
US20030067917A1 (en) 2001-10-04 2003-04-10 Adc Broadband Access Systems, Inc. IGMP proxy
US7355970B2 (en) 2001-10-05 2008-04-08 Broadcom Corporation Method and apparatus for enabling access on a network switch
CN100592731C (zh) 2001-12-07 2010-02-24 艾利森电话股份有限公司 端到端加密数据电信的合法侦听
DE60108404T2 (de) 2001-12-10 2005-12-22 Alcatel Vorrichtung und Verfahren zum Ausrichten des Mehrfachdatenverkehrs in einem Ethernet-MAN
US7272652B1 (en) 2002-04-30 2007-09-18 Alcatel Lucent Facilitating accelerated processing of internet group management protocol messages
US7346053B1 (en) 2002-05-07 2008-03-18 Cisco Technology, Inc. Methods and apparatus for supporting IP multicast for a mobile router
US6741595B2 (en) 2002-06-11 2004-05-25 Netrake Corporation Device for enabling trap and trace of internet protocol communications
US7236465B2 (en) 2002-06-13 2007-06-26 International Business Machines Corporation System and method for gathering multicast content receiver data
EP1516449B1 (en) 2002-06-21 2016-06-22 BRITISH TELECOMMUNICATIONS public limited company Timer-based feedback in multicast communication
US7936752B2 (en) 2002-07-31 2011-05-03 Cisco Technology, Inc. Source specific multicast group to source mapping
ES2229073T3 (es) 2002-08-08 2005-04-16 Alcatel Interceptacion legal de llamadas voip en redes basadas en ip.
JP4165196B2 (ja) * 2002-11-26 2008-10-15 株式会社日立製作所 パケット中継装置
US7228356B2 (en) 2002-12-12 2007-06-05 Alcatel Canada Inc. IGMP expedited leave triggered by MAC address
US7233987B2 (en) 2002-12-20 2007-06-19 Alcatel Canada Inc. System and method for converting requests between different multicast protocols in a communication network
JP4077330B2 (ja) 2003-02-06 2008-04-16 富士通株式会社 データ生成装置
US7797459B1 (en) 2003-02-11 2010-09-14 At&T Intellectual Property Ii, L.P. Access independent common architecture for real-time communications services for networking environments
US20040165709A1 (en) 2003-02-24 2004-08-26 Pence Robert Leslie Stealth interception of calls within a VoIP network
US20040219911A1 (en) 2003-03-25 2004-11-04 Kouchri Farrokh Mohammadzadeh Virtual communications assistance for law enforcement act (CALEA) device
JP4066867B2 (ja) 2003-03-31 2008-03-26 富士通株式会社 移動ノード、パケット中継装置、パケット転送方法
US7447909B2 (en) 2003-06-05 2008-11-04 Nortel Networks Limited Method and system for lawful interception of packet switched network services
US7532622B2 (en) 2003-06-16 2009-05-12 National University Of Singapore Methods, devices and software for merging multicast groups in a packet switched network
US7450551B2 (en) 2003-07-14 2008-11-11 Samsung Electronics Co., Ltd. Multicast transmission method in GEM mode in Gigabit-capable passive optical network and method of processing frame
JP2005065045A (ja) 2003-08-18 2005-03-10 Kddi Corp L2スイッチ装置及びその制御方法
US7412726B1 (en) 2003-12-08 2008-08-12 Advanced Micro Devices, Inc. Method and apparatus for out of order writing of status fields for receive IPsec processing
EP1548978B1 (en) * 2003-12-23 2008-11-19 Motorola Inc. Route-optimised multicast traffic for a mobile network node
US20050175156A1 (en) 2004-02-05 2005-08-11 Afshar Siroos K. Calea in a VPN environment (formerly called restricted anti-calea
US7587757B2 (en) 2004-02-11 2009-09-08 Texas Instruments Incorporated Surveillance implementation in managed VOP networks
JP4382528B2 (ja) 2004-02-27 2009-12-16 富士通株式会社 マルチキャストネットワーク装置,マルチキャストネットワークシステムおよびマルチキャスト方法
JP4063786B2 (ja) * 2004-03-25 2008-03-19 Necアクセステクニカ株式会社 マルチキャストパケット配信システム
US7502474B2 (en) 2004-05-06 2009-03-10 Advanced Micro Devices, Inc. Network interface with security association data prefetch for high speed offloaded security processing
DE602004011485T2 (de) 2004-05-28 2009-01-22 Alcatel Lucent Breitbandfernmeldesystem und darin verwendetes Verfahren zur Reduzierung der Latenzzeit eines Kanal-Zappings von einem Multimedia-Empfänger
WO2006001803A1 (en) 2004-06-14 2006-01-05 Alloptic, Inc. Distributed igmp processing
US8688834B2 (en) 2004-07-09 2014-04-01 Toshiba America Research, Inc. Dynamic host configuration and network access authentication
US20060018255A1 (en) 2004-07-26 2006-01-26 Avaya Technology Corp. Defining a static path through a communications network to provide wiretap law compliance
DE102004040482B4 (de) 2004-08-20 2006-05-24 Siemens Ag Vorrichtung zum Nutzdatenabgriff multimedialer Verbindungen in einem Paketnetz
DE102004040454B4 (de) 2004-08-20 2006-05-18 Siemens Ag Vorrichtung zum Nutzdatenabgriff multimedialer Verbindungen in einem Paketnetz
US8819213B2 (en) 2004-08-20 2014-08-26 Extreme Networks, Inc. System, method and apparatus for traffic mirror setup, service and security in communication networks
JP2006101471A (ja) 2004-09-06 2006-04-13 Hitachi Communication Technologies Ltd マルチキャスト冗長経路ルータ、マルチキャスト冗長化方式
US8619774B2 (en) 2004-10-26 2013-12-31 Cisco Technology, Inc. Method and apparatus for providing multicast messages within a virtual private network across a data communication network
US7464267B2 (en) 2004-11-01 2008-12-09 Innomedia Pte Ltd. System and method for secure transmission of RTP packets
WO2006053027A2 (en) * 2004-11-09 2006-05-18 Nexthop Technologies, Inc. Systems and methods for multicast routing on packet switched networks
US7783880B2 (en) 2004-11-12 2010-08-24 Microsoft Corporation Method and apparatus for secure internet protocol (IPSEC) offloading with integrated host protocol stack management
US8014390B2 (en) 2004-11-30 2011-09-06 Broadcom Corporation Policy based routing using a fast filter processor
US7489684B2 (en) 2004-12-08 2009-02-10 Alcatel Lucent Access network architecture for multicasting using xDSL and IGMP
US7701938B1 (en) * 2004-12-13 2010-04-20 Cisco Technology, Inc. Advanced multicast support for cable
US7835276B2 (en) 2004-12-30 2010-11-16 Cisco Technology, Inc. Admission control mechanism for multicast receivers
US8194640B2 (en) 2004-12-31 2012-06-05 Genband Us Llc Voice over IP (VoIP) network infrastructure components and method
US20060159091A1 (en) 2005-01-19 2006-07-20 Arjen Boers Active multicast information protocol
CN100396055C (zh) 2005-02-04 2008-06-18 华为技术有限公司 组播源过滤的处理方法
US7577137B2 (en) 2005-02-15 2009-08-18 Telefonaktiebolage L M Ericsson (Publ) Optimized multicast distribution within a hybrid PPPoE/IPoE broadband access network
US7724739B2 (en) 2005-03-18 2010-05-25 Cisco Technology, Inc. Source specific multicast layer 2 networking device and method
US7646739B2 (en) 2005-04-05 2010-01-12 Cisco Technology, Inc. Multicast routing over unidirectional links
US8089964B2 (en) 2005-04-05 2012-01-03 Cisco Technology, Inc. Transporting multicast over MPLS backbone using virtual interfaces to perform reverse-path forwarding checks
US7477654B2 (en) 2005-04-14 2009-01-13 Alcatel Lucent Method and system for managing access to multicast groups
US7710983B2 (en) 2005-04-21 2010-05-04 Cisco Technology, Inc. Method and apparatus for determining information associated with a particular multicast channel in a multicast network
US7599289B2 (en) 2005-05-13 2009-10-06 Lockheed Martin Corporation Electronic communication control
US8675653B2 (en) * 2005-05-17 2014-03-18 Alcatel Lucent Co-existing static and dynamic IP multicast
US20070041558A1 (en) 2005-05-17 2007-02-22 Parayil Shiby S Subscriber status determination and call content interception
CN1881913A (zh) 2005-06-15 2006-12-20 上海贝尔阿尔卡特股份有限公司 一种网络接入设备中用户接口组播管理方法及其装置
US8503446B2 (en) 2005-08-29 2013-08-06 Alcatel Lucent Multicast host authorization tracking, and accounting
US8689317B2 (en) 2005-12-19 2014-04-01 Level 3 Communications, Llc Providing SIP signaling data for third party surveillance
US20070168555A1 (en) 2006-01-18 2007-07-19 Dorenbosch Jheroen P Efficient multicast call setup method and system
US7839850B2 (en) 2006-01-30 2010-11-23 Juniper Networks, Inc. Forming equal cost multipath multicast distribution structures
US7512146B1 (en) 2006-01-31 2009-03-31 Garrettcom, Inc. Method and apparatus for layer 2 multicast traffic management
US7684547B2 (en) 2006-02-07 2010-03-23 International Business Machines Corporation Wiretapping VoIP calls
CN101438256B (zh) 2006-03-07 2011-12-21 索尼株式会社 信息处理设备、信息通信系统、信息处理方法
US7693146B2 (en) 2006-03-10 2010-04-06 Cisco Technology, Inc. Method and system for filtering traffic from unauthorized sources in a multicast network
US7599393B1 (en) 2006-03-24 2009-10-06 Sierra Wireless, Inc. Architecture for emulating an ethernet network interface card
US7953089B1 (en) * 2006-05-16 2011-05-31 Cisco Technology, Inc. Systems and methods for multicast switching in a private VLAN
CN101079728B (zh) * 2006-05-26 2010-11-10 华为技术有限公司 一种优化组管理协议的方法、服务器及系统
US8934609B2 (en) 2006-06-21 2015-01-13 Genband Us Llc Method and apparatus for identifying and monitoring VoIP media plane security keys for service provider lawful intercept use
US8050273B2 (en) 2006-06-22 2011-11-01 Alcatel Lucent Lawful interception in IP networks
US8249068B2 (en) 2006-10-20 2012-08-21 Alcatel Lucent Method and apparatus for establishing multicast groups
US7672325B2 (en) 2006-11-28 2010-03-02 Alcatel Lucent Method and apparatus for improved IGMP group membership messaging
ATE531178T1 (de) 2007-02-09 2011-11-15 Nokia Siemens Networks Gmbh Verfahren, vorrichtung und rechnerprogrammprodukt für dynamische bandbreitenverwaltung in einem ip- netzwerk
US8724533B2 (en) 2007-03-07 2014-05-13 Cisco Technology, Inc. Multicast support by mobile routers in a mobile ad hoc network
US20100046516A1 (en) 2007-06-26 2010-02-25 Media Patents, S.L. Methods and Devices for Managing Multicast Traffic
CN101766000A (zh) 2007-06-26 2010-06-30 传媒专利有限公司 管理组播组的方法和设备
US7813287B2 (en) * 2007-08-29 2010-10-12 Alcatel Lucent Fast TV channel changing in IPTV network
US8064449B2 (en) 2007-10-15 2011-11-22 Media Patents, S.L. Methods and apparatus for managing multicast traffic
US8346912B2 (en) 2007-10-15 2013-01-01 Dell Products, Lp System and method of emulating a network controller within an information handling system
US8184630B2 (en) 2007-10-15 2012-05-22 Media Patents, S.L. Method for managing multicast traffic in a data network and network equipment using said method
WO2009056175A1 (en) 2007-10-30 2009-05-07 Soporte Multivendor S.L. Method for managing multicast traffic between routers communicating by means of a protocol integrating the pim protocol; and router and switch involved in said method
WO2009065526A1 (en) 2007-11-23 2009-05-28 Media Patents S.L. A process for the on-line distribution of audiovisual contents with advertisements, advertisement management system, digital rights management system and audiovisual content player provided with said systems
US8649309B2 (en) * 2008-01-24 2014-02-11 Samsung Electronics Co., Ltd. Apparatus and method for creating data path for broadcasting service in cellular network
US9031068B2 (en) 2008-02-01 2015-05-12 Media Patents, S.L. Methods and apparatus for managing multicast traffic through a switch
WO2009095041A1 (en) 2008-02-01 2009-08-06 Soporte Multivendor S.L. Method for managing multicast traffic through a switch operating in the layer 2 of the osi model, and router and switch involved in said method
WO2009109684A1 (es) 2008-03-05 2009-09-11 Media Patents, S. L. Procedimiento para monitorizar o gestionar equipos conectados a una red de datos
US8189584B2 (en) 2009-07-27 2012-05-29 Media Patents, S. L. Multicast traffic management in a network interface

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104104606A (zh) * 2013-04-01 2014-10-15 中兴通讯股份有限公司 一种调制解调器及其实现igmp报文版本自适应的方法
CN104104606B (zh) * 2013-04-01 2018-06-12 南京中兴软件有限责任公司 一种调制解调器及其实现igmp报文版本自适应的方法

Also Published As

Publication number Publication date
US20090319689A1 (en) 2009-12-24
US7908354B2 (en) 2011-03-15
EP2078376A1 (en) 2009-07-15
US7921198B2 (en) 2011-04-05
EP2276198A1 (en) 2011-01-19
US8094602B2 (en) 2012-01-10
ATE542327T1 (de) 2012-02-15
WO2009000306A1 (en) 2008-12-31
US7640333B1 (en) 2009-12-29
US20090310609A1 (en) 2009-12-17
ES2358546T3 (es) 2011-05-11
US20100054247A1 (en) 2010-03-04
JP2010531586A (ja) 2010-09-24
DE602007011653D1 (de) 2011-02-10
EP2276198B1 (en) 2012-01-18
ES2381175T3 (es) 2012-05-23
US8086716B2 (en) 2011-12-27
JP5196685B2 (ja) 2013-05-15
US20120063456A1 (en) 2012-03-15
US20100054248A1 (en) 2010-03-04
ATE493811T1 (de) 2011-01-15
US20100054249A1 (en) 2010-03-04
EP2078376B1 (en) 2010-12-29

Similar Documents

Publication Publication Date Title
CN101766000A (zh) 管理组播组的方法和设备
US8571028B2 (en) Methods and apparatus for managing multicast traffic
US8416777B2 (en) Method for managing multicast traffic in a data network and network equipment using said method
US20100046516A1 (en) Methods and Devices for Managing Multicast Traffic
CN102057623B (zh) 用于获得终端状态的方法
US8681668B2 (en) Methods and apparatus for transmitting multicast traffic in a data network
JP2024003368A (ja) ルータ

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 1141908

Country of ref document: HK

C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20100630

REG Reference to a national code

Ref country code: HK

Ref legal event code: WD

Ref document number: 1141908

Country of ref document: HK