CN101304325A - 一种组播方法和装置 - Google Patents
一种组播方法和装置 Download PDFInfo
- Publication number
- CN101304325A CN101304325A CNA2007101068533A CN200710106853A CN101304325A CN 101304325 A CN101304325 A CN 101304325A CN A2007101068533 A CNA2007101068533 A CN A2007101068533A CN 200710106853 A CN200710106853 A CN 200710106853A CN 101304325 A CN101304325 A CN 101304325A
- Authority
- CN
- China
- Prior art keywords
- multicast
- forwarding
- subtree
- router
- data
- 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.)
- Granted
Links
Images
Classifications
-
- 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/1886—Arrangements for providing special services to substations for broadcast or conference, e.g. multicast with traffic restrictions for efficiency improvement, e.g. involving subnets or subdomains
-
- 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
-
- 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
-
- 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/50—Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种组播方法,该方法包括:在已建立的组播转发子树不需要进行数据转发时,将该组播转发子树设置为不转发组播数据状态;在已建立的组播转发子树需要转发数据时,将该组播转发子树的状态从不转发组播数据状态切换为转发组播数据状态,进行数据转发。本发明还公开一种组播装置。应用本发明能够缩短组播转发树的响应周期,改善组播应用业务,尤其是实时业务的体验质量,促进组播业务的发展。
Description
技术领域
本发明涉及组播技术领域,具体涉及一种组播方法和装置。
背景技术
组播技术是一种一对多的多方通信方式,通过建立最优的转发路径,减少多方通信时对网络资源的消耗。
目前,互联网协议(IP)组播主要使用协议无关组播(PIM)协议。另外,随着多协议标签(MPLS)技术的发展,还可以利用MPLS技术进行组播数据的转发,形成点对多点(P2MP)或者多点对多点(MP2MP)转发路径。其中,利用MPLS技术转发组播数据的主要构建方法包括:标志分布协议(LDP)方式或者基于流量工程扩展的资源预留协议(RSVP-TE)方式。
在现有技术中,无论是利用PIM协议或者利用MPLS技术,均通过动态建立的转发路径即组播转发子树来转发组播数据。例如,当组播转发树中加入一个组播数据接收成员即叶子路由器时,组播转发树根据网络拓扑,建立该叶子路由器对应的组播转发子树,进而通过该组播转发子树将组播数据转发给新加入的叶子路由器。当组播转发树中的叶子路由器离开时,组播转发树撤销该叶子路由器对应的组播转发子树。
这样一来,当叶子路由器确定需要加入组播转发树时,发起加入请求。收到加入请求的路由器计算路径并建立相应表项,然后将加入请求向上游路由器传递,最后建立对应该叶子路由器的组播转发子树。当组播转发子树建立完成后,组播转发树就通过组播转发子树将组播数据转发给叶子路由器。当叶子路由器确定需要离开组播转发树时,发起剪枝请求,组播转发树中对应的组播转发子树必然被撤销,从而保证了组播转发树能够根据叶子路由器的加入或者离开动态建立组播转发子树。
随着组播业务的逐步推广,组播业务对响应时间的要求越来越高,但是,由于现有技术中,叶子路由器从发起加入请求到接收到组播数据的过程需要很多步骤,例如收到加入请求的路由器需要对叶子路由器进行合法性检查,路径计算等,尤其是路径计算又包括路由表查找和分析等,造成了叶子路由器从发起加入请求到接收到组播数据的组播数据转发的响应周期较长,影响了组播应用的业务,尤其是实时业务的体验质量。
另外,当叶子路由器频繁的加入和离开组播转发树时,组播转发树需要针对同一组播转发子树重复进行建立和撤销操作,例如在交互式网络电视(IPTV)业务中,终端用户对节目的点播具有随机性,很可能发生频繁切换节目的情况。而组播转发树频繁建立和撤销组播转发子树,一方面造成了组播数据转发的响应周期过长,浪费了组播资源,另外还加重了组播设备的负担,影响了组播设备的性能,限制了组播业务的开展。
可见,现有技术中存在组播数据转发的响应周期较长的问题,影响了组播业务体验,无法满足组播业务发展的需要。
发明内容
有鉴于此,本发明实施例提出一种组播方法,能够提高组播数据接收的体验质量。
本发明实施例又提出一种组播装置,能够提高组播数据接收的体验质量。
为了达到上述目的,本发明实施例的技术方案是这样实现的:
一种组播方法,该方法包括:
在已建立的组播转发子树不需要进行数据转发时,将该组播转发子树设置为不转发组播数据状态;
在已建立的组播转发子树需要转发数据时,将该组播转发子树的状态从不转发组播数据状态切换为转发组播数据状态,进行数据转发。
一种组播装置,该装置包括组播数据存储模块、状态控制模块、转发路径模块和转发模块,其中,
组播数据存储模块,用于存储组播数据;
转发路径模块,用于存储组播转发子树中对应所述装置的转发路径;
状态控制模块,用于判断所述装置是否需要进行数据转发,如果不需要,设置所述装置处于不转发组播数据状态,发送停止转发命令给转发模块;如果需要,设置所述装置处于转发组播数据状态,发送转发命令给转发模块;
转发模块,用于根据来自所述状态控制模块的停止转发命令,停止组播数据的转发;根据来自所述状态控制模块的转发命令和来自所述转发路径模块的转发路径,转发来自所述组播数据存储模块的组播数据。
从上述方案可以看出,由于本发明实施例中,在已建立的组播转发子树不需要进行数据转发时,将该组播转发子树设置为不转发组播数据状态,在已建立的组播转发子树需要转发数据时,将该组播转发子树的状态从不转发组播数据状态切换为转发组播数据状态,进行数据转发。从而在需要转发数据时,组播转发子树只需要切换自身状态,避免了路径计算等步骤,从而有效地缩短了组播数据转发的响应周期,减少了组播转发子树从需要发送数据到进行数据转发的等待时间,当叶子路由器发起加入请求使得组播转发子树需要发送数据时,相应的减少了叶子路由器从发起加入请求到接收到组播数据的等待时间,提高了组播数据接收的体验质量。
进一步地,在组播转发子树不需要进行数据转发时,只将该组播转发子树设置为不转发组播数据状态,仍保留该组播转发子树。例如当叶子路由器离开组播转发树时,对应该叶子路由器的组播转发子树并不被撤销。进而当该叶子路由器需要再次加入组播转发树时,避免了组播转发树重复建立相同的组播转发子树。尤其是当叶子路由器频繁加入和离开组播转发树时,有效地减轻了组播设备的负担,提高了组播设备的处理效率,满足了组播业务发展的需要。
附图说明
图1为本发明实施例中组播方法的流程图;
图2为本发明实施例中组播转发树的结构的示意图;
图3为本发明实施例中叶子路由器加入组播转发树的方法的流程图;
图4为本发明实施例中叶子路由器离开组播转发树的方法的流程图;
图5为本发明实施例中组播装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,以下结合实施例对本发明进一步详细说明。
在本发明实施例中,为了便于描述,将组播转发子树的不转发组播数据状态称为待激活(standby)状态,将组播转发子树的转发组播数据状态称为激活(active)状态。
图1示出了本发明实施例中组播方法的流程。如图1所示,该方法包括:
步骤11:在已建立的组播转发子树不需要进行数据转发时,将该组播转发子树设置为standby状态。
在组播转发树中,一个路由器可以包含在多个组播转发子树中,支持多个组播转发树处于不同的状态。在本发明实施例中,以路由器所在的其中一条组播转发子树为例进行说明。
设置组播转发子树为standby状态,即已建立组播转发子树对应的转发路径,但不进行组播数据的转发。其中,组播转发子树的状态可以通过位于组播转发子树的路由器来设置。在组播转发子树中可以包含一个或多个路由器,在路由器中,通过设置对应该组播转发子树的下游分支的出接口状态,设置组播转发子树的状态。
在本实施例中,在路由器的对应组播转发子树的出接口信息中,设置使用数据结构表示的状态标识。状态标识的不同取值代表组播转发子树不同的状态。若状态标识的取值代表standby状态,则仅建立组播转发子树,并不进行组播数据的转发,若状态标识的取值代表active状态,则利用建立完成的组播转发子树进行组播数据的转发。其中,使用数据结构表示的状态标识可以是标志位,标志位可以利用取值1和0分别代表路由器的standby和active状态。组播转发子树中的路由器共同完成组播转发子树状态的设置,
在基于不同组播协议的组播转发子树中,通过设置状态标识来区分路由器出接口的状态是本领域技术人员的公知技术,在此不再赘述。其中基于不同组播协议的组播转发子树包括基于PIM协议、MPLS协议的组播转发子树等。
本发明实施例进一步包括:在建立组播转发子树的过程中,将组播转发子树设置为standby状态。
当组播转发子树未建立,满足预设的加入条件的路由器发起组播转发子树建立请求后,在建立组播转发子树的过程中将组播转发子树设置为standby状态。
其中,预设的加入条件可以手工配置或者根据策略动态配置。例如,在IPTV应用环境中,可以根据运营策略,设置预先加入条件为用户点播率较低,也就是说将用户点播率不高的冷僻节目对应的路由器确定为满足预设的加入条件的叶子路由器。这样一来,冷僻节目对应的路由器不需要接收组播数据,避免组播资源的浪费,同时由于冷僻节目也很有可能随机的被用户点播到,由于对应的组播转发子树已经建立,所以点播冷僻节目的用户无需经过长时间的等待就可以看到点播的节目,提高用户的组播体验质量。
组播转发子树建立请求可以由叶子路由器或者根节点路由器发起,通知组播转发树建立处于standby状态的组播转发子树。组播转发子树建立请求可以利用现有不同协议中的加入请求,在加入请求中增加指示消息类别的附加信息或者利用自定义的交互信息作为组播转发子树建立请求。
步骤12:在已建立的组播转发子树需要转发数据时,将该组播转发子树的状态从standby状态切换为active状态,进行数据转发。
当组播转发子树中的叶子路由器发起组播数据转发请求时,对应该叶子路由器的组播转发子树需要转发数据,则设置该组播转发子树处于active状态,通过组播转发子树传递组播数据。
当叶子路由器需要接收组播数据时,发起组播数据转发请求。组播转发子树上的路由器接收到组播数据转发请求,设置对应的出接口状态为active状态,并将组播数据转发请求向上传递给上游的路由器,最后使组播转发子树中所有的路由器的出接口状态都为active状态,从而使组播转发子树能够进行组播数据的转发。
可见,在步骤12中,在叶子路由器发起组播数据转发请求后,组播转发子树只需要将自身的状态从standby状态切换到active状态,无需经过路径计算等步骤就可以将组播数据转发给叶子路由器。也就是说,从叶子路由器发起加入请求到接收组播数据的周期大大缩短了,明显改善了组播应用业务,尤其是实时业务的体验质量,促进了组播业务的发展。
更进一步的,当满足预设的离开条件的叶子路由器发起状态切换请求,组播转发子树不需要转发组播数据,将该组播转发子树设置为standby状态,停止转发组播数据,但是保留该组播转发子树。
其中,预设的离开条件可以手工配置或者根据策略动态配置,使需要停止接收组播数据,但是很有可能重新加入组播转发树的路由器满足预设的离开条件。
当组播转发树接收到状态切换请求时,将组播转发子树的状态切换到standby状态。其中,状态切换请求可以由叶子路由器或者根节点路由器发起,通知组播转发树将组播转发子树由active状态切换到standby状态。状态切换请求可以利用现有不同协议中的剪枝请求,在剪枝请求中增加指示消息类别的附加信息或者是利用自定义的交互信息作为状态切换请求。
可见,当叶子路由器频繁加入和离开组播转发树时,避免了组播转发树重复建立和撤销相同的组播转发子树,而是在叶子路由器离开组播转发树时,仅停止组播数据转发,但是保留已建立的组播转发子树,当叶子路由器再次加入组播转发树时,修改组播转发子树的状态即可,从而有效地减轻了组播设备的负担,提高了组播设备的处理效率,满足了组播业务发展的需要。
图2示出了本发明实施例中组播转发树的结构的示意图。在图2所示的组播转发树由路由器A、路由器B、路由器C、路由器D、路由器E和路由器F组成。
如图2中实线所示,路由器A→路由器B→路由器C→路由器D构成第一组播转发子树,并且第一组播转发子树处于active状态,即该组播转发子树进行组播数据的转发。如图2中虚线所示,路由器B→路由器E→路由器F构成第二组播转发子树,并且第二组播转发子树处于standby状态,即该组播转发子树上不进行组播数据的转发。
其中,两条组播转发子树中均包括路由器B,则对于路由器B来说,对应第一组播转发子树的下游分支是路由器C,设置对应路由器C的出接口信息中的状态标识表示active状态;对应第二组播转发子树的下游分支是路由器E,设置对应路由器E的出接口信息中的状态标识表示standby状态。当路由器B收到组播数据后,仅向第一组播转发子树转发组播数据。
下面以基于MPLS组播中的LDP协议的图2所示的组播转发树为例,对本发明中叶子路由器加入组播转发树的方法进行详细说明。
图3示出了本发明实施例中叶子路由器加入组播转发树的方法的流程。在本实施例中,假设路由器F为满足预设的加入条件的叶子路由器,在图2所示的组播转发树中,假设第二组播转发子树未建立,路由器F需要加入第二组播转发子树。如图3所示,叶子路由器加入组播转发树的方法的流程包括:
步骤31:路由器F发送携带有附加信息的标签绘制(Label Mapping)消息给组播转发树,请求建立处于standby状态的组播转发子树。
根据图2所示组播转发树,路由器F的上游装置是路由器E,路由器E首先接收到来自路由器F的携带有附加信息的Label Mapping消息。
在本实施例中Label Mapping消息中携带的附加信息为一个数据位,假设当附加信息为1时表示组播转发子树设置为standby状态;当附加信息为0时表示需要建立组播转发子树并转发组播数据,也就是附加信息为0时不改变Label Mapping消息原有的功能。在本步骤中,附加信息为1,通知组播转发树建立处于standby状态组播转发子树。
叶子路由器还可以通过发送组播转发子树建立请求,加入基于PIM协议、RSVP-TE协议的组播转发树或者基于其它协议的组播转发树。其中,组播转发子树建立请求可以采用在协议中的加入消息或者其它信令中增加附加信息的方式实现,例如,叶子路由器加入基于PIM协议的组播转发树时,可以在加入(join)消息中加入附加信息,请求建立组播转发子树。在基于RSVP-TE协议的组播转发树中,既可以由叶子路由器将附加信息携带在响应(resv)消息中,请求建立组播转发子树,还可以由根节点路由器在路径(path)消息中携带附加信息,建立组播转发子树。另外,叶子路由器还可以利用连接管理协议中其它的消息或者依据协议自定义的协议扩展消息作为组播转发子树建立请求。
步骤32:建立第二组播转发子树,并设置第二组播转发子树处于standby状态。
当组播转发树中的路由器接收到附加信息为1的Label Mapping消息时,经过路由计算,确定上游路由器,并将Label Mapping消息依次向上传递,建立组播转发子树。接收到Label Mapping消息的路由器设置下游分支的出接口状态标识,设置第二组播转发子树处于standby状态。在图2所示组播转发树中,路由器E接收到来自路由器F的携带有附加信息的Label Mapping消息后,设置对应路由器F的出接口信息中的状态标识为standby状态,并通过路径选择,向上传递携带有附加信息的Label Mapping消息给路由器B,从而使路由器B增加对应第二组播转发子树的出接口,并将对应路由器E的出接口信息中状态标识设置为standby状态。
在本实施例中,状态标识是状态标志位,假设当状态标志位的值为1时,表示路由器对应下游分支的出接口的处于active状态,当状态标志位的值为0时,表示路由器对应下游分支的出接口的处于standby状态。
在本实施中采用取值为0或1的状态标志位来设置出接口的状态,仅是本发明的较佳示例,并不用于限制本发明。能够设置出接口处于两种不同状态的方法均在本发明实施利的保护范围之内。
通过步骤31和步骤32,路由器F虽然未接收组播数据,但是对应路由器F的第二组播转发子树已经建立。
步骤33:路由器F发起组播数据转发请求。
当路由器F需要接收组播数据时,发送携带有附加信息的Label Mapping消息给上游路由器,其中,附加信息为0,通知组播转发子树中的路由器进行组播数据的转发。
路由器F还可以直接发送未携带附加信息的Label Mapping消息,通知组播转发子树进行组播数据的转发。
步骤34:设置第二组播转发子树处于active状态,将组播数据传递给路由器F。
路由器E接收到Label Mapping消息后,将对应路由器F的出接口信息中的状态标识从standby状态切换到active状态,并将组播数据转发请求传递给上游装置路由器B。路由器B接收到组播数据转发请求,将对应路由器E的出接口信息中的状态标识从standby状态切换到active状态,由于路由器B到路由器A的组播转发子树已经处于active状态,路由器B不在传递组播数据转发请求。这样一来,路由器F通过第二组播转发子树接收组播数据。
由于路由器的一个出接口可能对应一个或一个以上的下游分支,例如图2所示的组播转发树中,路由器B对应路由器C和路由器E可能采用同一个出接口。如果路由器同时收到来自不同下游分支的附加信息为0和附加信息为1的Label Mapping消息,也就是说,有两条组播转发子树,一条组播转发子树需要建立组播转发子树但不转发组播数据,另外一条组播转发子树需要建立组播转发子树并且转发组播数据。那么,在路由器设置该出接口处于active状态。
可见,由于第二组播转发子树只需要将自身的状态从standby状态切换到active状态,无需经过路径计算等步骤就可以将组播数据转发给路由器F,从路由器F发起组播数据转发请求到接收组播数据的周期大大缩短了。以基于P2MP协议的组播转发树为例,在组播转发树中加入一个叶子路由器的时间由5秒至5分钟缩短到20毫秒到500毫秒,显著地缩短了从叶子路由器发起加入请求到接收组播数据的等待时间,明显改善了组播应用业务,尤其是实时业务的体验质量,促进了组播业务的发展。
图4示出了本发明实施例中叶子路由器离开组播转发树的方法的流程。在本实施例中,假设路由器D为满足预设的离开条件的叶子路由器,在图2所示的组播转发树中,假设路由器D需要第一组播转发子树,停止从第一组播转发子树接收组播数据。如图4所示,叶子路由器离开组播转发树的方法包括:
步骤41:路由器D发送携带有附加信息的Label withdraw消息给组播转发树,请求切换第一组播转发子树的状态,停止转发组播数据。
根据图2所示组播转发树,路由器D的上游装置是路由器C,路由器C首先接收到来自路由器D的携带有附加信息的Label withdraw消息。
在本实施例中,附加信息为一个数据位,假设当附加信息为1时表示组播转发子树设置为standby状态;当附加信息为0时表示需要停止转发组播数据并且撤销组播转发子树,也就是附加信息为0时不改变Label withdraw消息原有的功能。在本步骤中,附加信息为1,通知组播转发树仅停止转发组播数据。
叶子路由器还可以通过发送状态切换请求,离开基于PIM协议或者RSVP-TE协议的组播转发树。例如,叶子路由器离开基于PIM协议的组播转发树时,可以在撤销(prune)消息中加入附加信息,请求停止转发组播数据。在基于RSVP-TE协议的组播转发子树中,既可以由叶子路由器将附加信息携带在resv消息中,请求停止转发组播数据,还可以由根节点路由器在path消息中携带附加信息,通知组播转发子树停止转发组播数据。另外,叶子路由器还可以利用连接管理协议中其它的消息或者依据协议自定义的协议扩展消息作为状态切换请求。
步骤42:设置第一组播转发子树处于standby状态,停止转发组播数据。
在本实施例中,当组播转发子树中的路由器接收到附加信息为1的Label withdraw消息时,设置对应下游分支的出接口信息中的状态标识位的值为0,停止转发组播数据,保留组播转发子树。在图2所示组播转发树中,路由器C接收到附加信息为1的Label withdraw消息后,将对应出接口信息中的状态标识设置为standby状态,即停止转发组播数据,但是保留路由器D到路由器C的组播转发子树,同时将状态切换请求发送给路由器B。路由器B接收到状态切换请求后,将对应第一组播转发子树的出接口信息中的状态标识设置为standby状态。
如果路由器同时收到来自不同下游分支的附加信息为0和附加信息为1的Label withdraw消息,也就是说,有两条组播转发子树,一条组播转发子树需要停止转发组播数据而不撤销组播转发子树,一条组播转发子树需要停止转发组播数据并且撤销组播转发子树。那么,路由器设置该出接口处于standby状态,即停止转发组播数据,保留已有的组播转发子树。
如果路由器同时收到来自不同下游分支的的Label Mapping消息和Label withdraw消息,则该路由器执行Label Mapping消息,即保证组播转发子树能够转发组播数据。
如果步骤41中的路由器D在停止接收组播数据后,需要再次从组播转发子树接收组播数据,则执行步骤33和步骤34,也就是说,路由器B和路由器C只需要将对应的出接口状态设置为active即可,无需再进行路径选择和计算,避免重复建立和撤销组播转发子树,缩短了路由器D从发出接收数据请求到接收到转发数据的等待时间,提高了组播业务的体验。
更进一步的,当路由器D频繁离开和加入组播转发树时,可以重复执行步骤41、步骤42、步骤33和步骤34,由于第一组播转发子树始终被保留,所以路由器B和路由器C无需频繁的进行路由选择和计算,缩短了路由器D的等待时间,有效地降低了路由器B和路由器C的负担,提高了路由器B和路由器C的处理效率。
图5示出了本发明实施例中组播装置的结构,如图5所示,组播装置包括组播数据存储模块、状态控制模块、转发路径模块和转发模块。
其中,组播数据存储模块用于存储组播数据。
转发路径模块用于存储组播转发子树中对应自身所在装置的转发路径。
状态控制模块用于判断自身所在装置是否需要进行数据转发,如果不需要,设置自身所自装置处于不转发组播数据状态,发送停止转发命令给转发模块;如果需要,设置自身所自装置处于转发组播数据状态,发送转发命令给转发模块。
转发模块用于根据来自状态控制模块的停止转发命令,停止组播数据的转发;或者,根据来自状态控制模块的转发命令和来自所述转发路径模块的转发路径,转发来自组播数据存储模块的组播数据。
在本发明实施例中,组播装置进一步包括接收模块。接收模块用于接收来自下游装置或者上游装置的组播数据转发请求或者状态切换请求,将组播数据转发请求或者状态切换请求发送给状态控制模块。状态控制模块用于根据组播数据转发请求,判断自身所在装置需要进行数据转发;根据状态切换请求,判断自身所在装置不需要进行数据转发。
其中,接收模块进一步用于接收来自下游装置或上游装置的组播转发子树建立请求,将组播转发子树建立请求发送给转发路径模块;
转发路径模块根据来自接收模块的组播转发子树建立请求,建立组播转发子树中与所述装置对应的转发路径。
可见,本发明实施例中的组播装置在需要转发数据时,仅设置自身的状态从standby状态切换到active状态,无需经过路径计算等步骤,就可以进行组播数据的转发,缩短了组播数据转发的响应周期,明显改善了组播应用业务,尤其是实时业务的体验质量,促进了组播业务的发展。
另外,当组播装置的下游装置频繁的加入和离开时,组播装置无需重复建立和撤销相同的转发路径,而是在下游装置离开时,仅停止组播数据转发,但是装置内仍存储组播转发子树中对应的转发路径,从而有效地减轻了组播装置的负担,提高了组播装置的处理效率,满足了组播业务发展的需要。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (18)
1、一种组播方法,其特征在于,该方法包括:
在已建立的组播转发子树不需要进行数据转发时,将该组播转发子树设置为不转发组播数据状态;
在已建立的组播转发子树需要转发数据时,将该组播转发子树的状态从不转发组播数据状态切换为转发组播数据状态,进行数据转发。
2、根据权利要求1所述的组播方法,其特征在于,所述已建立的组播转发子树不需要进行数据转发为:所述组播转发子树中的叶子路由器或根节点路由器满足预设的离开条件。
3、根据权利要求2所述的组播方法,其特征在于,所述将该组播转发子树设置为不转发组播数据状态的方法为:
所述叶子路由器或者根节点路由器发起状态切换请求,接收到所述状态切换请求的路由器,将所述组播转发子树的对应下游分支的出接口状态设置为不转发数据状态。
4、根据权利要求2所述的组播方法,其特征在于,所述离开条件为预先手工配置或者根据策略动态配置。
5、根据权利要求3所述的组播方法,其特征在于,所述状态切换请求是携带有指示所述组播转发子树设置为不转发数据状态的附加消息的PIM协议中的撤销Prune消息、LDP协议中的标签撤销Label Withdraw消息、RSVP-TE协议中的RESV消息或者PATH消息。
6、根据权利要求1所述的组播方法,其特征在于,所述已建立的组播转发子树需要转发数据为:所述组播转发子树中叶子路由器或者根节点路由器需要接收组播数据。
7、根据权利要求6所述的组播方法,其特征在于,所述将该组播转发子树设置为转发组播数据状态的方法为:
所述叶子路由器或者根节点路由器发起组播数据转发请求,接收到所述组播数据转发请求的路由器,将所述组播转发子树的对应下游分支的出接口状态设置为转发数据状态。
8、根据权利要求1所述的组播方法,其特征在于,该方法进一步包括:在建立所述组播转发子树的过程中,将所述组播转发子树设置为不转发组播数据状态。
9、根据权利要求8所述的组播方法,其特征在于,所述建立组播转发子树,在满足预设的加入条件的路由器发起组播转发子树建立请求后执行。
10、根据权利要求9所述的组播方法,其特征在于,所述加入条件为预先手工配置或者根据策略动态配置。
11、根据权利要求9所述的组播方法,其特征在于,所述转发路径建立请求是携带有指示所述组播转发子树设置为不转发数据状态的附加消息的PIM协议中的加入Join消息、标志分布协议LDP协议中的标签绘制LabelMapping消息、基于流量工程扩展的资源预留RSVP-TE协议中的响应RESV消息或者路径PATH消息。
12、根据权利要求9所述的组播方法,其特征在于,将所述组播转发子树设置为不转发组播数据状态的方法为:接收到所述组播转发子树建立请求的路由器,将所述组播转发子树的对应下游分支的出接口状态设置为不转发数据状态。
13、根据权利要求3、7或12所述的组播方法,其特征在于,所述设置路由器的出接口的状态方法是:在对应所述出接口的出接口信息中设置使用数据结构表示的状态标识。
14、根据权利要求13所述的组播方法,其特征在于,所述使用数据结构表示的状态标识包括标志位。
15、根据权利要求1所述的组播方法,其特征在于,所述组播转发子树包括基于协议无关组播PIM协议或者多协议标签MPLS技术的组播转发子树。
16、一种组播装置,其特征在于,该装置包括组播数据存储模块、状态控制模块、转发路径模块和转发模块,其中,
所述组播数据存储模块,用于存储组播数据;
所述转发路径模块,用于存储组播转发子树中对应所述装置的转发路径;
所述状态控制模块,用于判断所述装置是否需要进行数据转发,如果不需要,设置所述装置处于不转发组播数据状态,发送停止转发命令给转发模块;如果需要,设置所述装置处于转发组播数据状态,发送转发命令给转发模块;
所述转发模块,用于根据来自所述状态控制模块的停止转发命令,停止组播数据的转发;根据来自所述状态控制模块的转发命令和来自所述转发路径模块的转发路径,转发来自所述组播数据存储模块的组播数据。
17、根据权利要求16所述的组播装置,其特征在于,该装置进一步包括接收模块;
所述接收模块,用于接收来自下游装置或者上游装置的组播数据转发请求或者状态切换请求,将所述组播数据转发请求或者状态切换请求发送给状态控制模块;
所述状态控制模块,用于根据所述组播数据转发请求,判断所述装置需要进行数据转发;根据所述状态切换请求,判断所述装置不需要进行数据转发。
18、根据权利要求17所述的组播装置,其特征在于,所述接收模块,进一步用于接收来自所述下游装置或上游装置的组播转发子树建立请求,将所述组播转发子树建立请求发送给转发路径模块;
所述转发路径模块,用于根据来自所述接收模块的组播转发子树建立请求,建立组播转发子树中与所述装置对应的转发路径。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710106853.3A CN101304325B (zh) | 2007-05-10 | 2007-05-10 | 一种组播方法和装置 |
PCT/CN2008/070312 WO2008138236A1 (fr) | 2007-05-10 | 2008-02-15 | Procédé et dispositif de diffusion multidestinataire |
EP08706685.8A EP2093932B1 (en) | 2007-05-10 | 2008-02-15 | Multicast method and device |
US12/481,036 US20090245255A1 (en) | 2007-05-10 | 2009-06-09 | Multicast method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710106853.3A CN101304325B (zh) | 2007-05-10 | 2007-05-10 | 一种组播方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101304325A true CN101304325A (zh) | 2008-11-12 |
CN101304325B CN101304325B (zh) | 2013-04-24 |
Family
ID=40001692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200710106853.3A Active CN101304325B (zh) | 2007-05-10 | 2007-05-10 | 一种组播方法和装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20090245255A1 (zh) |
EP (1) | EP2093932B1 (zh) |
CN (1) | CN101304325B (zh) |
WO (1) | WO2008138236A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103731279A (zh) * | 2012-10-11 | 2014-04-16 | 中兴通讯股份有限公司 | 操作执行方法及装置 |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9143336B2 (en) * | 2012-06-29 | 2015-09-22 | Brocade Communications Systems, Inc. | Efficient layer-2 multicast topology construction |
US9712334B2 (en) * | 2013-05-21 | 2017-07-18 | Brocade Communications Systems, Inc. | Efficient multicast topology construction in a routed network |
US10164907B2 (en) * | 2015-11-25 | 2018-12-25 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and system for completing loosely specified MDTs |
US10904136B2 (en) | 2018-08-06 | 2021-01-26 | Telefonaktiebolaget Lm Ericsson (Publ) | Multicast distribution tree versioning for minimizing multicast group traffic disruption |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5930238A (en) * | 1997-07-10 | 1999-07-27 | General Datacomm | Asynchronous transfer mode (ATM) multicast tree delivery switching |
AT502613B1 (de) * | 2003-04-15 | 2007-08-15 | Blum Gmbh Julius | Dämpfer mit gehäuse |
US8675653B2 (en) * | 2005-05-17 | 2014-03-18 | Alcatel Lucent | Co-existing static and dynamic IP multicast |
CN100396058C (zh) * | 2005-10-21 | 2008-06-18 | 清华大学 | 区分服务网络域内支持不同服务质量的ip组播方法 |
CN100386987C (zh) * | 2006-03-13 | 2008-05-07 | 华为技术有限公司 | 组播数据下发方法及实现该方法的数据下发装置和终端 |
-
2007
- 2007-05-10 CN CN200710106853.3A patent/CN101304325B/zh active Active
-
2008
- 2008-02-15 EP EP08706685.8A patent/EP2093932B1/en active Active
- 2008-02-15 WO PCT/CN2008/070312 patent/WO2008138236A1/zh active Application Filing
-
2009
- 2009-06-09 US US12/481,036 patent/US20090245255A1/en not_active Abandoned
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103731279A (zh) * | 2012-10-11 | 2014-04-16 | 中兴通讯股份有限公司 | 操作执行方法及装置 |
CN103731279B (zh) * | 2012-10-11 | 2019-01-25 | 中兴通讯股份有限公司 | 操作执行方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
EP2093932B1 (en) | 2014-01-22 |
US20090245255A1 (en) | 2009-10-01 |
EP2093932A4 (en) | 2009-11-25 |
CN101304325B (zh) | 2013-04-24 |
WO2008138236A1 (fr) | 2008-11-20 |
EP2093932A1 (en) | 2009-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP1865661B1 (en) | A method of fast-multicast and a system thereof | |
CN101588296B (zh) | 一种转发组播报文的方法、头节点和尾节点 | |
CN101242342A (zh) | 组播方法及组播路由方法 | |
CN105827529B (zh) | 一种路径建立方法及控制器 | |
CN101448003B (zh) | 一种处理igmp报文的方法和装置 | |
CN101304325B (zh) | 一种组播方法和装置 | |
US10225091B2 (en) | Method for implementing point-to-multipoint multicast, network node, and system | |
CN102158415B (zh) | 本地局域网中组播流量转发方法及组播路由器 | |
CN101141383A (zh) | 一种实现二层组播转发路径快速收敛的方法、系统及二层设备 | |
US20030137983A1 (en) | Traffic-engineering scheduling device for multi protocol label switching | |
CN102185776A (zh) | 以太网二层组播快速收敛的方法及以太网系统 | |
CN101610200A (zh) | 组播路由的切换方法及装置 | |
CN101262446A (zh) | 一种Hello报文的生成方法及装置 | |
CN102904809B (zh) | 标签转发路径的带宽资源管理方法、装置和系统 | |
CN101771553A (zh) | 一种多媒体组播业务的传输方法 | |
WO2013037319A1 (zh) | 标签转发路径的带宽资源管理方法、装置和系统 | |
CN103581027A (zh) | 一种优化pim-sm组播路由建立的方法 | |
CN102244602B (zh) | 在协议无关组播双重加入下转发数据的方法、装置及系统 | |
CN102843303B (zh) | Pim中的组播报文处理方法及装置 | |
CN102447612B (zh) | 双向点到多点标签转发路径建立、接枝和剪枝方法及系统 | |
CN100542142C (zh) | 转变三层网络设备接口状态的方法和装置 | |
CN101291242B (zh) | Pim dm支持带宽预留建立组播表项的方法、系统及设备 | |
CN101227430B (zh) | 组播数据转发方法 | |
CN103117943A (zh) | 虚拟专用局域网业务报文流量限速方法及装置 | |
CN104426780A (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 |