CN102136917B - 以太网组播的方法及装置 - Google Patents
以太网组播的方法及装置 Download PDFInfo
- Publication number
- CN102136917B CN102136917B CN2010102261493A CN201010226149A CN102136917B CN 102136917 B CN102136917 B CN 102136917B CN 2010102261493 A CN2010102261493 A CN 2010102261493A CN 201010226149 A CN201010226149 A CN 201010226149A CN 102136917 B CN102136917 B CN 102136917B
- Authority
- CN
- China
- Prior art keywords
- multicast
- root node
- group
- management device
- destination
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/54—Store-and-forward switching systems
- H04L12/56—Packet switching systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/407—Bus networks with decentralised control
- H04L12/413—Bus networks with decentralised control with random access, e.g. carrier-sense multiple-access with collision detection [CSMA-CD]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/02—Details
- H04L12/16—Arrangements for providing special services to substations
- H04L12/18—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
- H04L12/185—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with management of multicast group membership
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40006—Architecture of a communication node
- H04L12/40013—Details regarding a bus controller
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/16—Multipoint routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Small-Scale Networks (AREA)
Abstract
本发明公开一种以太网组播的方法及装置,涉及通信技术领域,提升了以太网中组播数据分发的性能。包括:接收来自主机/组播源的请求,所述请求携带有目的组播组的组播介质访问控制MAC地址;根据所述请求确定所述目的组播组的组播MAC地址没有对应的组播根节点时,选取满足特定优化条件的交换机作为与所述目的组播组的组播MAC地址对应的组播根节点;发送所述组播根节点的标识给所述主机/组播源。本发明实施例主要应用于在以太网中进行组播数据分发的过程中。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种以太网组播的方法及装置。
背景技术
随着以太网技术的蓬勃发展,以太网交换机的性能也不断提升。由于以太网交换机的价格非常便宜,维护和配置的成本也非常低廉,使得许多大型的网络,如Data Center、城域网等在组网时的大量采用以太网交换机进行组网。在由以太网交换机组成的网络中,采用组播方式分发数据具有建网成本低,数据分发效率高等诸多优点。然而,传统以太网由于扩展性不好,限制了以太网的规模,使得在以太网中进行组播的优势无法展现。
为了解决传统以太网的扩展性问题,更好地在以太网中应用组播方式分发数据,现有技术提供一种称之为SEATTLE的网络体系结构,它既能够拥有IP的扩展能力,又能够保持以太网的简单性。SEATTLE采用DHT路由寻址的机制(Distributed Hash Table,分布式哈希表)实现以太网的扩展。具体实现过程如下:一方面在进行主机位置的解析时,主机使用目录服务去发布和维持MAC地址和当前位置的映射关系,通过这种映射关系转发数据。例如,当一个主机a,其MAC地址为MACa,到达它的接入交换机Sa,该交换机必须在目录服务中发布该主机a的MAC到位置的映射关系。交换机Sa通过运算F(MACa)=ra,指示交换机ra存储(MACa,Sa)。此时,该交换机Sa作为主机a的位置解析器。然后,当主机b连接到交换机Sb,想要发送数据到MACa,主机b就转发数据到接入交换机Sb,接入交换机Sb通过计算F(MACa)=ra,得到交换机ra的信息,然后转发数据到交换机ra。由于从接入交换机Sb到交换机ra可能有好几跳,交换机Sb将ra的地址作为目的地的头封装数据包。交换机ra接收到数据包后,查询主机a的接入交换机为Sa,然后转发数据到Sa。为了限制穿越解析器的数据包的数量,ra也通知交换机Sb:主机a的当前位置是Sa。交换机Sb然后缓存主机a的当前位置是Sa的相关信息。后续转发数据包的时候,交换机Sb可以通过查找缓存中的信息进行数据包的转发,提高了数据转发的效率。
另一方面,由于在传统的以太网中,主机是通过ARP的方式去查找与IP地址对应的MAC地址,而SEATTLE避免了传统以太网中的ARP洪泛,还对ARP进行了扩展,使得ARP不仅返回主机的MAC地址而且返回了与主机相连的交换机的信息(该信息反映了主机的位置)。由于感知了主机的位置信息,数据包可以选择最短路径转发ARP请求。
然而,发明人在SEATTLE架构的以太网中进行组播时候,选取组播根节点,通过哈希函数将组播组随机地映射到一个交换机,由该交换机充当组播的根节点,这种构建组播树的方式没有考虑到网络的拓扑结构,可能造成选取的组播树根节点远离所有的接收主机,进而降低了以太网组播的性能。
发明内容
本发明的实施例提供一种以太网组播的方法及装置,提升了以太网中组播数据分发的性能。
为达到上述目的,本发明的实施例采用如下技术方案:
一种以太网组播的方法,包括:
接收来自主机/组播源的请求,所述请求携带有目的组播组的组播介质访问控制MAC地址;
根据所述请求确定所述目的组播组的组播MAC地址没有对应的组播根节点时,选取满足特定优化条件的交换机作为与所述目的组播组的组播MAC地址对应的组播根节点,所述特定优化条件包括:在组播管理装置所管理的交换机中,选取出的交换机的负荷最低;或者,选取出的交换机到所述主机/组播源的路径最短;
发送所述组播根节点的标识给所述主机/组播源。
一种以太网组播的方法,包括:
以目的组播组的组播MAC地址为自变量,采用预设哈希函数计算得出组播管理装置的标识,根据所述组播管理装置的标识确定组播管理装置;
向所述组播管理装置发送携带有所述目的组播组的组播MAC地址的请求;
接收所述组播管理装置发送的与所述目的组播组的组播MAC地址对应的组播根节点的标识。
一种组播管理装置,包括:
第一接收单元,用于接收来自主机/组播源的请求,所述请求携带有目的组播组的组播介质访问控制MAC地址;
初选单元,用于根据所述请求确定所述目的组播组的组播MAC地址没有对应的组播根节点时,选取满足特定优化条件的交换机作为与所述目的组播组的组播MAC地址对应的组播根节点,所述特定优化条件包括:在组播管理装置所管理的交换机中,选取出的交换机的负荷最低;或者,选取出的交换机到所述主机/组播源的路径最短;
第一发送单元,用于发送所述组播根节点的标识给所述主机/组播源。
一种通信装置,包括:
确定单元,用于以目的组播组的组播MAC地址为自变量,采用预设哈希函数计算得出组播管理装置的标识,根据所述组播管理装置的标识确定组播管理装置;
发送单元,用于向所述组播管理装置发送携带有所述目的组播组的组播MAC地址的请求;
接收单元,用于接收所述组播管理装置发送的与所述目的组播组的组播MAC地址对应的组播根节点的标识。
由上述技术方案所描述的本发明实施例中,当某个主机/组播源想要加入目的组播组时,首先根据目的组播组的组播MAC地址确定组播管理装置,向组播管理装置发送携带有所述目的组播组的组播MAC地址的请求,组播管理装置根据所述请求确定所述目的组播组的组播MAC地址没有对应的组播根节点时,选取满足特定优化条件的交换机作为所述目的组播组对应的组播根节点。选取出组播根节点之后,发送所述组播根节点的标识给所述主机/组播源。
本发明实施例中通过上述组播管理装置选取组播根节点时,选取出满足特定优化条件的交换机作为组播根节点,比如选择距离所述主机或者组播源的距离最近/比较近的交换机,与现有技术通过哈希函数随机获得组播根节点的位置相比,本发明实施例可以减少选取出的组播根节点远离所有接收主机的情况,提高了以太网中组播数据传输的性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为实施例1中以太网组播的方法的流程图;
图2为实施例1中从主机一侧描述的以太网组播的方法的流程图;
图3为实施例1中从组播源一侧描述的以太网组播的方法的流程图;
图4为实施例2中以太网组播的方法的流程图;
图5为实施例2中以太网组播的方法的流程图;
图6为实施例3中通信装置的结构示意图;
图7为实施例3中组播管理装置的第一种结构示意图;
图8为实施例3中组播管理装置的第二种结构示意图;
图9为实施例3中组播管理装置的第三种结构示意图;
图10为实施例3中组播管理装置的第四种结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1:
本发明实施例假设应用场景采用层次化的网络拓扑结构,位于同一个以太网中的所有组播管理装置在逻辑上构成一个DHT环,他们共同管理整个以太网中的组播组。该环下的每个组播管理装置都管理一组交换机,这些交换机和组播管理装置可以通过链路直接连接,也可以是通过其他设备,如交换机进行互连。当然,实际应用场景不局限于上述层次化的网络中。
本发明实施例提供一种以太网组播的方法,包括如下步骤:
1001、接收来自主机/组播源的请求,所述请求携带有目的组播组的组播MAC(Medium Access Control,介质访问控制)地址。
1002、根据所述请求确定所述目的组播组的组播MAC地址没有对应的组播根节点时,选取满足特定优化条件的交换机作为与所述目的组播组的组播MAC地址对应的组播根节点。
1003、发送所述组播根节点的标识给所述主机/组播源。
需要说明的是,如果步骤1001中接收到的为来自主机的请求,则本步骤中将发送所述组播根节点的标识给所述主机。如果步骤1001中接收到的为来自组播源的请求,则本步骤中将发送所述组播根节点的标识给所述组播源。
本发明实施例还提供另一种以太网组播的方法,包括如下步骤:
2001、根据目的组播组的组播介质访问控制MAC地址确定组播管理装置;
2002、向组播管理装置发送携带有所述目的组播组的组播MAC地址的请求;
2003、接收所述组播管理装置发送的与所述目的组播组的组播MAC地址对应的组播根节点的标识。
如果是主机接收到所述组播管理装置发送的组播根节点的标识,那么该主机可以向所述组播根节点发送加入报文,所述加入报文根据最短路径协议,转发到组播根节点,该最短转发路径上的所有接收到所述加入报文的交换机,都会在其转发表中自动生成包含所述组播组和组播根节点的表项,从而构建出一条从所述主机到所述组播根节点的组播树分支。
如果是组播源接到所述组播管理装置发送的组播根节点的标识,那么该组播源可以根据最短转发路径向所述组播根节点发送组播数据流,根据该最短转发路径从而确定从所述组播源到所述组播根节点的组播树分支的构建。
本发明实施例中通过上述组播管理装置选取组播根节点时,选取出满足特定优化条件的交换机作为组播根节点,比如选择距离所述主机或者组播源的距离最近/比较近的交换机,与现有技术通过哈希函数随机获得组播根节点的位置相比,本发明实施例可以减少选取出的组播根节点远离所有接收主机的情况,提高了以太网中组播数据传输的性能。
另外,上述对组播根节点的选取及管理是通过组播管理装置进行的,使得以太网中组播的管理功能与根节点相互独立,提高了组播管理的灵活度和便捷性。
进一步地,为了更清楚地说明本发明实施例提供的以太网组播的方法的实现过程,如图1所示的实施例详细描述一种以太网组播的方法,包括以下步骤:
101、在主机/组播源一侧,根据目的组播组的组播MAC地址确定组播管理装置。
具体应用过程中,本步骤可以通过主机/组播源发送请求到与其直连的交换机DS(Direction Swtich,直连交换机),由DS进行哈希运算发现对应的组播管理装置。或者也可以是主机/组播源自己通过哈希运算发现对应的组播管理装置。
102、向组播管理装置发送携带有所述目的组播组的组播MAC地址的请求。
该请求可以为加入组播组的请求,也可以为获取所述目的组播组对应的组播根节点标识的请求。该标识可以是组播根节点的IP地址、MAC地址,也可以是标识组播根节点的字符,如组播根节点的ID)。
103、在组播管理装置一侧,接收来自主机/组播源的请求,所述请求携带有目的组播组的组播MAC地址。
104、组播管理装置根据所述请求确定所述目的组播组的组播MAC地址没有对应的组播根节点时,通过优化算法选取满足特定优化条件的交换机作为所述目的组播组对应的组播根节点。比如,可以在所述组播管理装置所管理的交换机中选取一个负荷最低的交换机,或者也可以参考所述主机/组播源所处的地理位置,选取一个离所述(或所有)主机/组播源距离最近的主机充当所述目的组播组的根节点。
105、组播管理装置保存所述目的组播组的组播MAC地址与所述选取出的组播根节点的映射关系。例如,将上述映射关系保存到映射表中,当其他主机或者组播源也请求加入所述组播组时,根据所述步骤103接收到的请求在所述映射关系表中查询所述目的组播组的组播MAC地址对应的组播根节点,将查询到的所述组播根节点的标识发送给所述主机/组播源。这样,通过查询该映射表就可以直接将所述组播组的组播MAC地址对应的组播根节点返回给相应的主机或者组播源,无须在进行重新选取组播根节点,可以提高管理组播根节点的效率。
106、组播管理装置发送与所述目的组播组的组播MAC地址对应的组播根节点的标识给所述主机/组播源。
107、所述主机/组播源接收到所述组播根节点的标识后,可以向所述组播根节点发送相应的数据。
需要说明的是,如果步骤101从主机一侧进行描述时,则步骤102-107中的数据通信将在组播管理装置与所述主机之间进行。同理,如果步骤101从组播源一侧进行描述时,步骤102-107中的数据通信将在组播管理装置与所述组播源之间进行。
本发明实施例通过独立的组播管理装置,选取满足特定优化条件的交换机作为组播根节点,比如选择距离所述主机距离最近/比较近的交换机,可以减少现有技术中选取的组播根节点距离主机位置较远导致组播性能下降的问题,可以提高组播的性能。
为了更清楚地说明上述以太网组播方法中组播根节点的选取过程,下面分别从主机一侧和组播源一侧进行详细描述。
首先描述主机一侧实现上述组播根节点选取的一种技术方案,如图2所示,包括如下步骤:
201、主机a通过主机发现协议找到与其直连的交换机Sa,主机a向该直连的交换机Sa发起加入目的组播组G的请求,所述请求携带有目的组播组的组播MAC地址。
202、所述直连交换机Sa接收到上述主机a发送的加入目的组播组G的请求后,根据目的组播组的组播MAC地址确定组播管理装置。具体可以通过以所述目的组播组的组播MAC地址为自变量,采用预设哈希函数计算得出组播管理装置的标识,例如,F1(MulticastMACAddress)=ManagementUnitID,其中,F1表示预设哈希函数,MulticastMACAddress表示所述目的组播组的组播MAC地址,ManagementUnitID为计算得出的组播管理装置ra的标识,具体可以为IP地址、MAC地址或者标识字符如ID字符,并向该组播管理装置ra发送请求获取组播根节点RP地址的报文。
203、组播管理装置ra根据所述请求确定所述目的组播组的组播MAC地址没有对应的组播根节点时,选取满足特定优化条件的交换机作为与所述目的组播组的组播MAC地址对应的组播根节点。
具体实施时,组播管理装置ra可以结合所处网络的拓扑信息和所述主机的地理位置,通过根节点选择算法在其所管理的交换机中选取满足特定优化条件的一台交换机,如:选取一个负荷最轻的交换机充当该目的组播组G的根节点,或者选择一个距离所述主机最近的交换机,并保存该目的组播组的组播MAC地址和所选择的组播根节点的映射关系,如该映射关系可以保存为(MulticastMACAddress,RP),其中MulticastMACAddress表示目的组播组G的组播MAC地址,RP表示所选取出的组播根节点的标识,该标识可以为IP地址、MAC地址或者标识字符如ID。
204、组播管理装置ra将选取的该组播组根节点的标识转发给直连交换机Sa。
205、直连交换机Sa将该组播组根节点的标识发送给主机a,具体实施过程中,该方案中的本步骤也可以没有。
206、该直连交换机Sa接收所述组播组根节点的标识之后,向该组播组G所对应的组播根节点RP方向逐跳发送加入报文,发送报文的路径遵循最短路径优先的算法,由此构建组播转发树SPT(Shortest Path Tree,最短路径树)的分支;位于所述SPT上的所有交换机中生成包含了所述目的组播组和组播根节点的表项,该表项可以表示为(RP,MulticastMACAddress,ports),ports表示交换机的转发端口。上述生成的SPT以组播根节点RP为根,以直连交换机DS为叶子。
上述步骤201主机发送的是加入所述目的组播组的请求,此时主机不感知组播根节点的信息,而是由直连的交换机Sa完成组播根节点的获取,以及向组播根节点请求加入目的组播组,构建组播树等。具体应用过程中,可选的,一种替换方案为:
该步骤201中主机先不发送加入所述目的组播组的请求,而是通过直连交换机发送获取所述目的组播组对应的组播根节点的请求;
在步骤202中由所述直连交换机转发该获取组播根节点的请求;
然后,在步骤205中,所述直连交换机将所述组播根节点发送给主机;
在步骤206中,主机接收到所述组播根节点的标识后,向所述直连交换机Sa发送加入所述目的组播组的请求,如,类似IGMP join的消息,所述直连交换机Sa向所述组播根节点发送加入所述目的组播组的请求。此时所述主机在向所述直连交换机Sa发送加入所述目的组播组的请求中可以携带该组播根节点的标识,也可以不携带组播根节点的标识。如果在上述加入请求中不携带组播根节点的信息,那么在步骤5中需要通过直连交换机Sa保存该组播根节点的信息。
在上面所描述的主机一侧请求获取组播根节点的过程中,其直连交换机通过哈希运算确定所述组播管理装置,实际应用过程中,第二种可行的方案为:由上述主机本身通过哈希运算确定所述组播管理装置,在向其直连交换机发送的请求中携带该组播管理装置的标识,然后由该直连交换机向该组播管理装置转发来自所述主机的请求。
上面是对主机一侧的描述,下面对组播源一侧进行描述,如图3所示,包括如下步骤:
301、组播源通过主机发现协议找到与其直连的交换机,该组播源向其直连的交换机发起加入目的组播组G的请求,所述请求携带有目的组播组G的组播MAC地址。
302、所述直连交换机Sa接收到上述组播源发送的加入目的组播组G的请求后,根据目的组播组的组播介质访问控制MAC地址确定组播管理装置。
具体可以以所述目的组播组的组播MAC地址为自变量,采用预设哈希函数计算得出组播管理装置的标识,即通过哈希运算(该哈希运算通过哈希组播MAC地址得到组播管理装置的标识,该标识可以为IP地址、MAC地址或者标识字符如ID)找到组播管理装置,并向该组播管理装置发送请求获取组播根节点RP地址的报文。
303、组播管理装置根据所述请求确定所述目的组播组的组播MAC地址没有对应的组播根节点时,选取满足特定优化条件的交换机作为与所述目的组播组的组播MAC地址对应的组播根节点。
具体实施过程中,组播管理装置可以根据所述请求在映射关系表中查询所述目的组播组的组播MAC地址对应的组播根节点,如果在所述映射关系表中已经保存了所述目的组播组的组播MAC地址对应的组播根节点,那么只需要将查询到的所述组播根节点的标识发送给所述组播源即可。
如果在上述映射关系表中没有目的组播组的组播MAC地址对应的组播根节点的记录,此时,所述组播管理装置通过一种算法选择一台交换机,如:选取一个负荷最轻的交换机充当该目的组播组G的根节点,或者选择一个距离所述组播源最近的交换机,并保存该目的组播组的组播MAC地址和所选择的组播根节点的映射关系,如该映射关系可以保存为(MulticastMACAddress,RP),其中MulticastMACAddress表示目的组播组G的组播MAC地址,RP表示所选取出的组播根节点。
304、组播管理装置将选取的该组播组根节点的标识转发给直连交换机。
305、直连交换机将该组播组根节点的标识发送给组播源。
306、该组播源接收所述组播组根节点的标识之后,向所述直连交换机发送组播数据流,所述直连交换机选取一条到该组播根节点RP最短的路径,以单播的形式转发来自组播源的数据流,从而完成从组播源到组播根节点之间的分发树的构建。
在上述组播源一侧请求获取组播根节点的过程中,其直连交换机通过哈希运算确定所述组播管理装置,实际应用过程中,可选的,也可以由上述组播源本身通过哈希运算确定所述组播管理装置,在向其直连交换机发送的请求中携带该组播管理装置的标识,然后由该直连交换机向该组播管理装置转发来自所述组播源的请求。
本发明实施例通过上述组播管理装置选取组播根节点时,结合所处网络的拓扑信息和主机或者组播源的地理位置,选取出满足特定优化条件的交换机作为组播根节点,比如选择距离所述主机或者组播源的距离比较近的交换机,与现有技术通过哈希函数随机获得组播根节点的标识相比,本发明实施例可以减少选取出的组播根节点远离所有接收主机的情况,提高了以太网中组播数据传输的性能。
实施例2:
为了更好对以太网中的组播组进行管理,本发明实施例还提供一种优化的技术方案,在不同的时间,本发明实施例中的组播管理装置可以触发组播根节点的重选,对现有的组播树进行调整,从而可以更加合理地构建组播分发树,进一步地提升了以太网中组播数据分发的性能。下面对组播根节点的重选进行详细的描述。
如图4所示,一种以太网组播的方法,包括以下步骤:
501、组播管理装置发送重选消息给指定组播根节点,通知所述指定组播根节点选取满足重选条件的新组播根节点。具体应用时,组播管理装置可以周期性触发旧的组播根节点进行根节点的重选,也可是组播管理装置通过检测某个加入组播组中所有主机的变化,以及拓扑等信息,根据某种算法决策触发旧组播根重选新的组播根节点,该选择算法能够保证构建的组播分发树最优/次优,例如,通过采用优化算法选取出的新组播根节点使得全网的流量最优;或者,所述新组播根节点到其所在组播组中各个主机的平均跳数最小;又或者,所述新组播根节点构建成的组播树分支由最短路径组成。新选取的根节点可以限定,也可以不限定在原组播管理装置所管理的交换机集合中。
当所述指定组播根节点重选好新组播根节点之后,将所述新组播根节点的标识发送给组播管理装置。
502、所述组播管理装置接收所述指定组播根节点发送的携带有新组播根节点的标识。
实际应用过程中,另一种可行的方案为组播管理装置自身触发组播根节点的重选,通过组播管理装置本身选取满足重选条件的新组播根节点。
上述触发重选组播根节点的因素可以有很多,如基于配置信息进行触发根节点重选,检测网络条件变化,基于优化算法触发根节点重选等。具体的触发因素不只局限于提到的上述触发因素。
如图5所示,组播管理装置获得新组播根节点的标识后,将进行新组播树的构建和旧组播树的拆除,进一步地,上述方法还包括以下步骤:
503、组播管理装置将所述新组播根节点的标识发送给所述指定组播根节点所在组播组中的各个主机的直连交换机;
504、各个直连交换机收到该新组播根节点信息后,重新向新组播根节点发送加入报文,由此构建新的组播树,所述新组播树中的所有交换机在其转发表中生成(RP,MulticastMACAddress,Ports)的表项。
505、当新组播根节点接收到上述加入报文后,向组播管理装置发送新组播树构建成功消息。
506、组播管理装置接收所述新组播根节点发送的新组播树构建成功消息后,将所述新组播根节点的标识发送给所述指定组播根节点所在组播组中的组播源,通知所述组播源组播根节点发生了变更;
507、组播源根据上述组播管理装置的通知,向所述新组播根节点发送组播数据流;
508、所述新组播根节点接收到组播数据流之后,发送组播数据流接收成功消息到组播管理装置;
509、组播管理装置根据该组播数据流接收成功消息,向所述指定组播根节点发送拆除组播树消息;
510、所述指定组播根节点通知其作在组播组中的各个交换机删除包含有所述指定组播根节点的转发表项,从而完成旧的组播树的拆除。
上述步骤504中,可选的替代方案为:直连的交换机将请求发送给主机,主机收到该请求后,向直连的交换机发起请求,由直连的交换机向新组播根节点RP发送加入报文,由此构建新的组播树。
本发明实施例提供的组播方法中,可以对旧组播树进行重新调整,选取更加优化的新组播根节点,如,新组播根节点使得全网的流量最优,或者新组播根节点到所在组中的所有主机的平均位置最近,然后构建由所述新组播根节点组成的新组播树,如,新组播树的根节点到所在组中的所有主机的平均位置最近,可以进一步地提升以太网中组播数据分发的性能。
另外,现有技术中还有一种组播方法,在由以太网交换机组成的层次化网络中,通过采用hash函数,将组播组hash到特定的Core Switch(核心交换机),由该Core Switch充当组播的根节点,数据包都发送到该Core Switch进行分发。然而该方法固定选取树状拓扑结构中的核心交换机充当组播根节点,也容易导致组播根节点远离所有的接收主机。而本发明实施例可以结合网络的拓扑信息和主机所在的地理位置进行组播根节点的选取与调整,可以优化组播根节点与所有接收主机之间的传输性能,从而提高组播性能。
实施例3:
本发明实施例提供一种通信装置,如图6所示,该装置包括:确定单元11,发送单元12和接收单元13。
当所述通信装置想要加入目的组播组时,所述确定单元11用于根据目的组播组的组播介质访问控制MAC地址确定组播管理装置;所述发送单元12用于向组播管理装置发送携带有所述目的组播组的组播MAC地址的请求。组播管理装置根据所述目的组播组的组播MAC地址返回相应的组播根节点的标识,具体可以为IP地址、MAC地址或其他标识字符如组播根节点的ID。
所述接收单元13用于接收所述组播管理装置发送的与所述目的组播组的组播MAC地址对应的组播根节点的标识。
进一步地,所述确定单元11以所述目的组播组的组播MAC地址为自变量,采用预设哈希函数计算得出组播管理装置的标识,根据所述组播管理装置的标识确定组播管理装置。实际应用时,该通信装置采用的功能实体可以为主机,也可以为主机和其直连交换机的组合。例如,主机以所述目的组播组的组播MAC地址为自变量,通过采用预设哈希函数计算得出组播管理装置的标识。又如,主机发送加入所述目的组播组的请求,其直连交换机根据该请求通过哈希运算确定组播管理装置的标识,然后直连交换机向所述组播管理装置发送获取所述组播根节点的请求。
该通信装置采用的功能实体还可以为组播源,或者组播源和其直连交换机的组合。
相应地,本发明实施例提供一种组播管理装置,如图7所示,该装置包括:第一接收单元21,初选单元22和第一发送单元24。
第一接收单元21用于接收来自主机/组播源的请求,所述请求携带有目的组播组的组播介质访问控制MAC地址;初选单元22用于根据所述请求确定所述目的组播组的组播MAC地址没有对应的组播根节点时,选取满足特定优化条件的目的交换机作为所述目的组播组对应的组播根节点;第一发送单元24用于发送所述组播根节点的标识给所述主机/组播源。
需要说明的是,当第一个主机或者组播源加入目的组播组时,通过初选单元选取组播根节点,如图8所示,该组播管理装置还包括:保存单元23和查询单元25。所述保存单元23将所述目的组播组的组播MAC地址与所述初选单元选取出的组播根节点的映射关系保存到映射表中。当有其他的主机或者组播源请求加入上述目的组播组时,查询单元25用于根据所述第一接收单元21接收到的请求在所述映射关系表中查询所述目的组播组的组播MAC地址对应的组播根节点。所述第一发送单元24还用于将查询到的所述组播根节点的标识发送给所述主机/组播源。
进一步地,为了对组播树进行优化,在预设周期内,该组播管理装置可以触发组播根节点的选取,如图9所示,该组播管理装置还包括:第二发送单元26和第二接收单元27。
所述第二发送单元26用于发送重选消息给指定组播根节点,通知所述指定组播根节点选取满足重选条件的新组播根节点;所述第二接收单元27用于接收所述指定组播根节点发送的携带有新组播根节点的标识,该标识可以为IP地址、MAC地址或者标识字符如ID。
可选的,如图9所示,该组播管理装置还包括:重选单元211,所述重选单元211用于选取满足重选条件的新组播根节点。
进一步地,为了构建由所述新组播根节点组成的新组播树,如图10所示,该组播管理装置还包括:第一处理单元28,第二处理单元29和第三处理单元210。
第一处理单元28用于将所述新组播根节点的标识发送给所述指定组播根节点所在组播组中的各个主机,指示所述各个主机向所述新组播根节点发送加入报文,接收所述新组播根节点发送的新组播树构建成功消息;
第二处理单元29用于将所述新组播根节点的标识发送给所述指定组播根节点所在组播组中的组播源,指示所述组播源发送组播数据流到所述新组播根节点;接收所述新组播根节点发送的组播数据流接收成功消息;
第三处理单元210用于向所述指定组播根节点发送拆除组播树消息,指示所述指定组播根节点通知其作在组播组中的各个交换机删除包含有所述指定组播根节点的转发表项。
实际应用过程中,上述组播管理装置具体可以为交换机、服务器、路由器等网元实体或者是他们的一个或多个形成的组合。
本发明实施例中提供的组播管理装置选取组播根节点时,结合所处网络的拓扑信息和主机或者组播源的地理位置,选取出满足特定优化条件的交换机作为组播根节点,并可以通过组播根节点的重选,对组播树进行调整,与现有技术通过哈希函数随机获得组播根节点的标识相比,本发明实施例可以减少选取出的组播根节点远离所有接收主机的情况,提高了以太网中组播数据传输的性能。
本发明实施例主要应用于计算机网络领域,特别地,在以太网中进行组播数据分发时,提高了以太网的组播性能。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(RandomAccess Memory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (11)
1.一种以太网组播的方法,其特征在于,包括:
接收来自主机/组播源的请求,所述请求携带有目的组播组的组播介质访问控制MAC地址;
根据所述请求确定所述目的组播组的组播MAC地址没有对应的组播根节点时,选取满足特定优化条件的交换机作为与所述目的组播组的组播MAC地址对应的组播根节点,所述特定优化条件包括:在组播管理装置所管理的交换机中,选取出的交换机的负荷最低;或者,选取出的交换机到所述主机/组播源的路径最短;
发送所述组播根节点的标识给所述主机/组播源。
2.根据权利要求1所述的以太网组播的方法,其特征在于,还包括:
将所述目的组播组的组播MAC地址与选取出的组播根节点的映射关系保存到映射表中;
根据所述请求在所述映射关系表中查询所述目的组播组的组播MAC地址对应的组播根节点;
将查询到的所述组播根节点的标识发送给所述主机/组播源。
3.根据权利要求2所述的以太网组播的方法,其特征在于,还包括:
发送重选消息给指定组播根节点,通知所述指定组播根节点选取满足重选条件的新组播根节点;接收所述指定组播根节点发送的携带有新组播根节点标识的消息;或者
组播管理装置选取满足重选条件的新组播根节点。
4.根据权利要求3所述的以太网组播的方法,其特征在于,所述重选条件包括:
所述新组播根节点使得全网的流量最优;
或者,所述新组播根节点到其所在组播组中各个主机的平均跳数最小;
或者,所述新组播根节点构建成的组播树分支由最短路径组成。
5.根据权利要求3或4所述的以太网组播的方法,其特征在于,还包括:
将所述新组播根节点标识发送给所述指定组播根节点所在组播组中的各个主机,指示所述各个主机向所述新组播根节点发送加入报文,接收所述新组播根节点发送的新组播树构建成功消息;
将所述新组播根节点标识发送给所述指定组播根节点所在组播组中的组播源,指示所述组播源发送组播数据流到所述新组播根节点,接收所述新组播根节点发送的组播数据流接收成功消息;
向所述指定组播根节点发送拆除组播树消息,指示所述指定组播根节点通知其所在组播组中的各个交换机删除包含有所述指定组播根节点的转发表项。
6.一种以太网组播的方法,其特征在于,包括:
以目的组播组的组播MAC地址为自变量,采用预设哈希函数计算得出组播管理装置的标识,根据所述组播管理装置的标识确定组播管理装置;
向所述组播管理装置发送携带有所述目的组播组的组播MAC地址的请求;
接收所述组播管理装置发送的与所述目的组播组的组播MAC地址对应的组播根节点的标识。
7.一种组播管理装置,其特征在于,包括:
第一接收单元,用于接收来自主机/组播源的请求,所述请求携带有目的组播组的组播介质访问控制MAC地址;
初选单元,用于根据所述请求确定所述目的组播组的组播MAC地址没有对应的组播根节点时,选取满足特定优化条件的交换机作为与所述目的组播组的组播MAC地址对应的组播根节点,所述特定优化条件包括:在组播管理装置所管理的交换机中,选取出的交换机的负荷最低;或者,选取出的交换机到所述主机/组播源的路径最短;
第一发送单元,用于发送所述组播根节点的标识给所述主机/组播源。
8.根据权利要求7所述的组播管理装置,其特征在于,还包括:
保存单元,用于将所述目的组播组的组播MAC地址与所述选取出的组播根节点的映射关系保存到映射表中;
查询单元,用于根据所述请求在所述映射关系表中查询所述目的组播组的组播MAC地址对应的组播根节点;
所述第一发送单元还用于将查询到的所述组播根节点的标识发送给所述主机/组播源。
9.根据权利要求8所述的组播管理装置,其特征在于,还包括以下至少一组单元:
第一组单元为第二发送单元和第二接收单元,所述第二发送单元,用于发送重选消息给指定组播根节点,通知所述指定组播根节点选取满足重选条件的新组播根节点;所述第二接收单元,用于接收所述指定组播根节点发送的携带有新组播根节点的标识;或者,
第二组单元为重选单元,所述重选单元用于选取满足重选条件的新组播根节点。
10.根据权利要求9所述的组播管理装置,其特征在于,还包括:
第一处理单元,用于将所述新组播根节点的标识发送给所述指定组播根节点所在组播组中的各个主机,指示所述各个主机向所述新组播根节点发送加入报文,接收所述新组播根节点发送的新组播树构建成功消息;
第二处理单元,用于将所述新组播根节点的标识发送给所述指定组播根节点所在组播组中的组播源,指示所述组播源发送组播数据流到所述新组播根节点;接收所述新组播根节点发送的组播数据流接收成功消息;
第三处理单元,用于向所述指定组播根节点发送拆除组播树消息,指示所述指定组播根节点通知其所在组播组中的各个交换机删除包含有所述指定组播根节点的转发表项。
11.一种通信装置,其特征在于,包括:
确定单元,用于以目的组播组的组播MAC地址为自变量,采用预设哈希函数计算得出组播管理装置的标识,根据所述组播管理装置的标识确定组播管理装置;
发送单元,用于向所述组播管理装置发送携带有所述目的组播组的组播MAC地址的请求;
接收单元,用于接收所述组播管理装置发送的与所述目的组播组的组播MAC地址对应的组播根节点的标识。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102261493A CN102136917B (zh) | 2010-07-14 | 2010-07-14 | 以太网组播的方法及装置 |
PCT/CN2011/073719 WO2012006893A1 (zh) | 2010-07-14 | 2011-05-06 | 以太网组播的方法及装置 |
EP11806235.5A EP2560321B1 (en) | 2010-07-14 | 2011-05-06 | Ethernet multicast method and device |
US13/676,924 US9137045B2 (en) | 2010-07-14 | 2012-11-14 | Ethernet multicast method and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2010102261493A CN102136917B (zh) | 2010-07-14 | 2010-07-14 | 以太网组播的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102136917A CN102136917A (zh) | 2011-07-27 |
CN102136917B true CN102136917B (zh) | 2013-04-17 |
Family
ID=44296578
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2010102261493A Active CN102136917B (zh) | 2010-07-14 | 2010-07-14 | 以太网组播的方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9137045B2 (zh) |
EP (1) | EP2560321B1 (zh) |
CN (1) | CN102136917B (zh) |
WO (1) | WO2012006893A1 (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103067284B (zh) * | 2011-10-18 | 2016-01-13 | 清华大学 | 数据中心可扩展组播方法及系统 |
CN102387079B (zh) * | 2011-10-19 | 2014-04-02 | 华为技术有限公司 | 一种优化802.1aq协议组播处理的方法和网络设备 |
CN102510356B (zh) * | 2011-11-21 | 2015-01-07 | 华为技术有限公司 | 一种删除转发表项的方法和根节点 |
GB2520451B (en) | 2012-03-20 | 2015-09-30 | Media Network Services As | Data distribution system |
CN102780568B (zh) * | 2012-07-13 | 2015-12-09 | 深圳市龙视传媒有限公司 | 一种单向网络中数据的组播方法、装置、终端及系统 |
CN102752183B (zh) * | 2012-07-19 | 2015-01-14 | 杭州华三通信技术有限公司 | 一种接入网的快速收敛方法和装置 |
US20140241351A1 (en) * | 2013-02-28 | 2014-08-28 | Siva Kollipara | Dynamic determination of the root node of an mldp tunnel |
CN104113827B (zh) * | 2013-04-16 | 2018-03-16 | 华为技术有限公司 | 组播控制器、无线接入设备、组播系统及组播创建方法 |
US10873473B2 (en) | 2017-07-17 | 2020-12-22 | Nicira, Inc. | Distributed multicast logical router |
US11063872B2 (en) | 2019-10-24 | 2021-07-13 | Vmware, Inc. | Scalable overlay multicast routing |
US12316471B2 (en) | 2021-01-21 | 2025-05-27 | VMware LLC | Distributing multicast receiver information across multi-tier edge gateways |
US11895010B2 (en) | 2021-06-29 | 2024-02-06 | VMware LLC | Active-active support of multicast streams in virtualized environment |
US11595296B2 (en) * | 2021-06-29 | 2023-02-28 | Vmware, Inc. | Active-active support of multicast streams in virtualized environment |
US11784926B2 (en) | 2021-11-22 | 2023-10-10 | Vmware, Inc. | Optimized processing of multicast data messages in a host |
CN115022233B (zh) * | 2022-06-16 | 2023-04-07 | 电子科技大学 | 一种可定制点到多点数据传输完成时间的传输方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1324863C (zh) * | 2003-03-28 | 2007-07-04 | 三星电子株式会社 | 针对基于cbt的层叠组播配置基于方向的基于核心的树 |
CN101299671A (zh) * | 2007-04-30 | 2008-11-05 | 上海贝尔阿尔卡特股份有限公司 | 用于组播数据包发送与接收的方法和装置 |
CN100512286C (zh) * | 2005-06-15 | 2009-07-08 | 北京交通大学 | 一种覆盖网络组播协议技术 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6032194A (en) * | 1997-12-24 | 2000-02-29 | Cisco Technology, Inc. | Method and apparatus for rapidly reconfiguring computer networks |
US6795403B1 (en) * | 2000-03-31 | 2004-09-21 | Cisco Technology, Inc. | Automatic discovery of switch devices in a network |
FR2858897A1 (fr) * | 2003-08-12 | 2005-02-18 | France Telecom | Procede de diffusion d'information multicast etendue, systeme et produit logiciel correspondant |
JP4328283B2 (ja) * | 2003-10-22 | 2009-09-09 | パナソニック株式会社 | パケット配送制御方法 |
US7649884B1 (en) * | 2004-12-01 | 2010-01-19 | Hrl Laboratories, Llc | Collaborative multicast routing (CMR) for multicasting in unidirectional, hybrid, multi-tiered mobile wireless network |
CN100454893C (zh) * | 2005-03-21 | 2009-01-21 | 中兴通讯股份有限公司 | 一种快速组播的实现方法 |
JP4231061B2 (ja) * | 2006-05-10 | 2009-02-25 | 株式会社日立コミュニケーションテクノロジー | 加入者接続装置およびネットワークシステム |
US7957287B2 (en) * | 2006-08-14 | 2011-06-07 | Intel Corporation | Broadband wireless access network and method for internet protocol (IP) multicasting |
CN101771551B (zh) * | 2008-12-29 | 2012-11-21 | 华为技术有限公司 | 一种虚拟专有组播业务中流媒体分发的方法、装置及系统 |
US9444720B2 (en) * | 2009-05-05 | 2016-09-13 | Ciena Corporation | Method and apparatus for multicast implementation in a routed ethernet mesh network |
US9497039B2 (en) * | 2009-05-28 | 2016-11-15 | Microsoft Technology Licensing, Llc | Agile data center network architecture |
CN102387140B (zh) * | 2011-10-18 | 2015-01-21 | 华为技术有限公司 | 无线局域网络中开展多媒体业务的方法、装置及系统 |
US8848509B2 (en) * | 2012-04-27 | 2014-09-30 | Telefonaktiebolaget L M Ericsson (Publ) | Three stage folded Clos optimization for 802.1aq |
-
2010
- 2010-07-14 CN CN2010102261493A patent/CN102136917B/zh active Active
-
2011
- 2011-05-06 EP EP11806235.5A patent/EP2560321B1/en active Active
- 2011-05-06 WO PCT/CN2011/073719 patent/WO2012006893A1/zh active Application Filing
-
2012
- 2012-11-14 US US13/676,924 patent/US9137045B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1324863C (zh) * | 2003-03-28 | 2007-07-04 | 三星电子株式会社 | 针对基于cbt的层叠组播配置基于方向的基于核心的树 |
CN100512286C (zh) * | 2005-06-15 | 2009-07-08 | 北京交通大学 | 一种覆盖网络组播协议技术 |
CN101299671A (zh) * | 2007-04-30 | 2008-11-05 | 上海贝尔阿尔卡特股份有限公司 | 用于组播数据包发送与接收的方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
US9137045B2 (en) | 2015-09-15 |
EP2560321A1 (en) | 2013-02-20 |
WO2012006893A1 (zh) | 2012-01-19 |
EP2560321A4 (en) | 2013-02-20 |
US20130070767A1 (en) | 2013-03-21 |
EP2560321B1 (en) | 2014-07-09 |
CN102136917A (zh) | 2011-07-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102136917B (zh) | 以太网组播的方法及装置 | |
WO2018006671A1 (zh) | 报文发送方法和装置、网络架构、计算机存储介质 | |
KR101337461B1 (ko) | 명칭 주소 맵핑 시스템, 데이터 전송 방법 및 명칭 주소 맵핑 유지 방법 | |
WO2018072704A1 (zh) | 报文传输方法、装置、节点和计算机存储介质 | |
KR20070084547A (ko) | 대규모 무선 메쉬 네트워크에 있어서 멀티캐스트 라우팅을지원하는 시스템 및 방법 | |
CN101222414A (zh) | 实现组播通信的装置、系统和方法 | |
WO2007048309A1 (fr) | Méthode de routage de mn dans un réseau maillé sans fil et système de communication correspondant | |
WO2009036678A1 (en) | Method, device and network system for message forwarding | |
CN101489276A (zh) | 一种移动Ad Hoc网络多播路由方法 | |
CN101841485B (zh) | 组播流量分担的方法及相关装置 | |
EP3200404B1 (en) | Content-centric network on-demand distance vector route method | |
CN101932065B (zh) | 分布式卫星网络资源发现方法 | |
Mukherjee et al. | Achieving scalable push multicast services using global name resolution | |
CN101640628B (zh) | 基于Mesh网络的路由管理与路由方法、节点、装置及系统 | |
Kim et al. | Revisiting Ethernet: Plug-and-play made scalable and efficient | |
Azgin et al. | On-demand mobility support with anchor chains in Information Centric Networks | |
US8305959B2 (en) | Hierarchical mobility label-based network | |
CN102118396B (zh) | 实况监控方法及视频管理服务器 | |
CN101409905A (zh) | 一种基于任播方式的移动多跳分组无线网络路由方法 | |
US20230090204A1 (en) | Signaling configuration method and apparatus for bier network, and storage medium | |
CN102904933B (zh) | P2p流量疏导优化网络系统 | |
Chen et al. | Shortcut anycast tree routing in MANETs | |
CN102035894B (zh) | 一种基于距离的状态同步方法 | |
WO2024255246A1 (zh) | 消息的通告方法、装置、存储介质及电子装置 | |
CN117478624A (zh) | 一种用于复杂网络的按需动态路由方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |