CN1780261A - 使用封装和单播的区分服务组播系统和方法 - Google Patents
使用封装和单播的区分服务组播系统和方法 Download PDFInfo
- Publication number
- CN1780261A CN1780261A CNA2005101268013A CN200510126801A CN1780261A CN 1780261 A CN1780261 A CN 1780261A CN A2005101268013 A CNA2005101268013 A CN A2005101268013A CN 200510126801 A CN200510126801 A CN 200510126801A CN 1780261 A CN1780261 A CN 1780261A
- Authority
- CN
- China
- Prior art keywords
- multicastapackets
- router
- clauses
- subclauses
- tree
- 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
Links
Images
Classifications
-
- 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]
-
- 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
- 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
-
- 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)
Abstract
一种DiffServ组播系统和方法,包括:当接收到组播分组时,根据组播分组的报头的信息来搜索路由表,以便确定能够发送组播分组的路由器的数目;复制组播分组,以便与所确定的、当接收到组播分组时能够发送组播分组的路由器的数目相对应;以及通过路由表检查与下一个路由器相连的条目,设置存储在组播分组报头的每一个条目的标记,并且发送组播分组。
Description
技术领域
本发明涉及一种区分服务(DiffServ)组播系统和方法,更具体地,涉及一种使用封装和单播的DiffServ组播系统和方法,用于提供DiffServ的体系结构,在不与DiffServ和组播这两个概念相反的情况下与现有机制相比改善了性能。
背景技术
DiffServ是一种将需要类似种类的服务质量(QoS)的流分类到一个等级从而按照等级来提供服务的体系。在网络上,边界(border)路由器执行控制业务量的所有功能。同样地,不需要关于每一个流的QoS信息,只要知道等级时,核心路由器就可以通过提供服务来保证可扩展性。
然而,为了保证可扩展性从核心路由器去除流信息使组播难以在DiffServ中获得支持。
首先,为了提供组播服务,需要关于感兴趣组的组播树的信息,并且需要在通过树的分支中必须提供的关于服务等级的信息。
然而,如果这种信息被存储在DiffServ的核心路由器中,这与DiffServ的应该在核心路由器中不存在流信息的概念相反。因此,发生关于可扩展性的问题。
其次,DiffServ是一种发送器确定QoS和所需资源以便与因特网服务提供商(即为用户、其它公司、组织、团体等提供接入因特网的公司)订立合约的机制。例如,在1994年6月韩国电信开始了面向普通市民的因特网商业服务,成为韩国的第一个ISP。此后,随着因特网的使用的快速增长,例如Dacom、韩国PC通信、Inet技术的各种ISP分配了资源并使用资源,从而提供因特网服务。
同样地,DiffServ具有与组播服务相反的概念,其中由请求希望服务的接收器提供服务。由于具有成员自由地加入或离开组的组播性质,DisffServ会导致比发送器与ISP订立的合约更大范围地使用资源。结果,产生中断现有业务的问题。
为了在DiffServ中支持组播服务,需要保持作为DiffServ基本概念的核心路由器的简易性,并且同时,需要满足要求各种QoS的接收器服务命令以及在任意时刻重复加入或离开组。
通常,所建议的满足这些条件的方法如下。
首先,根据现有IP组播在核心路由器中存储组的信息,其次,使用多个单播分组来支持组播服务。
对于上述应用现有的IP组播而不作任何改变的方法,必须在所有DiffServ的路由器中存储组播的树信息。该方法适用于当组播分组到达而要执行组播时查找相应组的信息。
因此,传统的使用IP组播的方法最大限度地使用了现有的IP组播,从而享有保持节约带宽的优点(事实上是组播的优点)并且用于保证不同的QoS。此外,该方法适用于通过允许成员在与ISP订立合约之前自由地加入组来使用资源,从而避免中断现有的业务。
然而,使用IP组播的传统方法存在与DiffServ的基本概念相冲突的问题,冲突在于在核心路由器不应该包含关于流的任意信息。
此外,当产生或删除组时并且当成员加入或离开组时,必须改变核心路由器的内容。因此,在较大的网络中可扩展性问题保持不变。
因此,只当组播业务量小于单播业务量时或者当组处于域或其成员是静态时,如上所述的传统方法才可用。
第二种方法可以在核心路由器不能复制分组时在DiffServ主域中支持组播,并且可以容易地保持核心路由器,从而适用于DiffServ概念。
然而,这种方法的使用会导致作为组播优点的节约带宽的丧失。
具体地,在具有密集服务组并由多个成员组成的域的情况中,带宽的损失一定会增加。因此,为了使用该方法,需要最少地使用带宽的教益。
发明内容
因此,本发明的一个目的是提供一种使用封装和单播的DiffServ组播系统和方法,具有改善整体性能的结构,按照快速和灵活的方式通过分布集中在DiffServ主域的入口路由器的负载来处理网络或组的变化。
根据本发明方案为了实现一个目的,提供一种使用封装和单播的区分服务(DiffServ)组播方法,该方法包括:当接收到组播分组时,根据组播分组的报头的信息来搜索路由表,以便确定能够发送组播分组的路由表的数目;复制组播分组,以便与所确定的当接收到组播分组时能够发送组播分组的路由器的数目相对应;并且通过路由表检查与下一个路由器相连的条目,设置存储在组播分组报头的每一个条目的标记,并且发送组播分组。
优选地,组播方法还包括当已经确定了能够发送组播分组的下一个路由器的数目为1时,将接收到的组播分组发送到相对应的路由器或接收器。
优选地,当接收到组播分组时根据组播分组的报头的信息来搜索路由表以便确定能够发送组播分组的路由器数目包括:接收组播分组;确定在组播分组中是否存在树封装报头;当确定在组播分组中存在树封装报头时确定存储在组播分组的树封装报头的所有条目的标记的状态;并且当确定了没有激活所有条目的标记时搜索路由表来确定能够发送组播分组的路由器数目。
优选地,组播方法还包括:当确定了树封装报头不存在时,使用组的成员和关于请求服务的等级的信息在组播分组的报头处额外地产生树封装报头;并且通过路由表激活要发送的组播分组的条目的字段并且当确定了没有激活所有条目的标记时搜索路由表来确定能够发送组播分组的路由器数目。
优选地,组播方法还包括确定了没有激活所有条目的标记时丢弃组播分组。
优选地,通过路由表检查与下一个路由器相连的条目、设置存储在组播分组报头的每一个条目的标记、并且发送组播分组包括:确定激活的条目是否使用路由表与下一个路由器相连;并且当确定了激活的条目与下一个路由器相连时,保持激活条目的标记的设置处于激活状态。
优选地,组播方法还包括当确定了激活的条目不与下一个路由器相连时,将激活条目的标记的设置改变到非激活状态。
优选地,当已经确定了能够发送组播分组的下一个路由器的数目为1时将接收到的组播分组发送到相对应的路由器或接收器包括:确定发送组播分组的下一个部件是否是接收器;并且当确定了下一个部件是接收器时删除组播分组的树封装报头并随后发送组播分组。
优选地,组播方法还包括当确定了下一个部件是路由器时,发送接收到的组播分组。
在当接收到组播分组、通过路由表检查到条目与下一个路由器相连、设置存储在组播分组的报头中的每一个条目的标记并且发送组播分组时复制组播分组以便与确定能够发送组播分组的路由器的数目相对应中,优选地,组播分组还包括树封装报头(tree encapsulationheader)。
优选地,树封装报头包括成员的部分信息、选项和至少一个条目。
优选地,具有树封装报头的组播分组的报头包括20字节的IP报头和2+2E字节的树封装报头。
优选地,在树封装报头中的条目的字段包括成员的标识符、成员要求的服务质量(QoS)和标记信息。
优选地,树封装报头中的条目标识符字段具有8个比特。
优选地,树封装中的QoS字段具有6个比特。
优选地,树封装报头中的标记具有1个比特。
优选地,组播数据分组中的E表示在组成组播树的节点中的出口路由器数目。
根据本发明方案,为了实现另一个目的,提供一种使用封装和单播的区分服务(DiffServ)组播方法,该方法包括:当入口路由器接收到组播分组时,使用组的成员和关于请求服务的等级的信息在组播分组的报头处产生树封装报头;由入口路由器通过搜索路由表来确定能够发送组播分组的路由器数目是一个或至少两个;当确定了能够发送组播分组的路由器数目是至少两个时,由入口路由器复制组播分组,以便与路由器数目相对应;并且由入口路由器发送每一个复制的组播分组。
优选地,组播方法还包括当确定了能够发送组播分组的路由器数目是一个时,由入口路由器将接收到的组播分组发送到下一个路由器。
根据本发明方案为了实现另一个目的,提供一种使用封装和单播的区分服务(DiffServ)组播方法,该方法包括:当核心路由器接收到组播分组时,由核心路由器通过搜索路由表来确定能够发送组播分组的路由器数目是一个或至少两个;当确定了能够发送组播分组的下一个路由器的数目是至少两个时,由核心路由器复制组播分组,以便与下一个路由器的数目相对应;并且由核心路由器发送每一个复制的组播分组。
优选地,组播方法还包括当确定了能够发送组播分组的下一个路由器数目是一个时,由核心路由器将接收到的组播分组发送到下一个路由器。
根据本发明方案,为了实现还一个目的,提供一种使用封装和单播的区分服务(DiffServ)组播系统,该系统包括:入口路由器,适用于当确定了从发送器接收到组播分组时产生树封装报头并且激活树封装报头的条目,以便将组播分组发送到下一个路由器;至少一个核心路由器,适用于从树封装报头中检查激活的条目、检查单播路由表以便按照可与激活的条目相连的下一个路由器的数目来复制组播分组、并且改变树封装报头的激活设置以便发送复制的组播分组;并且至少一个入口路由器,适用于当接收到具有树封装报头的组播分组时删除树封装报头、并且将组播分组发送到每一个接收器。
优选地,入口路由器适用于当接收到组播分组时产生树封装报头并且在组播分组的报头中包括树封装报头。
优选地,树封装报头包括成员、选择和至少一个条目的位置信息。
优选地,具有树封装报头的组播分组的报头包括20字节的IP报头和2+2E字节的树封装报头。
优选地,在树封装报头的条目中所包括的信息至少包括成员、成员要求的服务质量(QoS)和标记信息中的一个。
优选地,在树封装报头中的条目标识符字段具有8个比特。
优选地,在树封装报头中的QoS字段具有6个比特。
优选地,在树封装报头中的标记具有1个比特。
优选地,在组播数据分组中的E表示组成组播树的节点中的入口路由器的数目。
根据本发明方案,为了实现又一个目的,提供一种使用封装和单播的区分服务(DiffServ)组播系统,该系统包括:入口路由器,适用于当路由信息改变时,更新关于路由器树的信息以便管理关于所有组播树的信息,并且当从发送器接收到组播分组时,搜索关于相应组播树的信息来产生树封装报头,并且将树封装报头存储在组播分组中并发送组播分组;以及至少一个核心路由器,适用于当从入口路由器接收到组播分组时,解析组播分组的树封装报头以便将组播分组发送到目的地。
优选地,树封装报头包括成员的位置信息、选项和至少一个条目。
优选地,条目的字段包括1字节的条目标识符、6比特的要复制的条目信息以及3比特的每一个条目的服务质量(QoS)信息。
根据本发明方案为了实现又一个目的,提供一种使用封装和单播的区分服务(DiffServ)组播方法,该方法包括:发送IPv6分组;以及接收所述IPv6分组;其中所述IPv6分组包括树封装报头。
附图说明
当结合附图时参考下面的详细说明可以更好地理解本发明,本发明的完整理解及其所附优点将变得显而易见,附图中类似的参考符号表示相同或类似的组件,其中:
图1是根据本发明第一实施例使用封装和单播的DiffServ组播系统的视图;
图2是根据本发明第一实施例的组播分组的结构的视图;
图3是示出了根据本发明第一实施例使用封装和单播的DiffServ组播方法的流程图;
图4是在图3的使用封装和单播的DiffServ组播方法中第一步骤S1的详细配置的流程图;
图5是在图3的使用封装和单播的DiffServ组播方法中第三步骤S3的详细配置的流程图;
图6是在图3的使用封装和单播的DiffServ组播方法中第四步骤S4的详细配置的流程图;
图7(a)-(f)是在图3的使用封装和单播的DiffServ组播方法中的每一个路由器的组播分组的视图;
图8是根据本发明第二实施例在使用封装和单播的DiffServ组播方法中的入口路由器的操作的流程图;
图9是根据本发明第三实施例在使用封装和单播的DiffServ组播方法中的入口路由器的操作的流程图;以及
图10是根据本发明另一个实施例的组播分组的结构的视图。
具体实施方式
下文中,结合附图来更详细说明根据本发明第一实施例使用封装和单播的DiffServ组播系统和方法。
图1是根据本发明第一实施例使用封装和单播的DiffServ组播系统的视图。该DiffServ组播系统由入口路由器100、至少一个核心路由器200和至少一个出口路由器300组成。
当从发送器1接收到组播分组时,入口路由器100产生树封装报头、激活树封装报头的条目、并随后将组播分组发送到核心路由器200或出口路由器300。
当从入口路由器100接收到包括树封装报头的组播分组时,核心路由器200从树封装报头中检查激活的条目,检查路由表以便将组播分组复制与可与激活条目相连的下一个路由器的数目相同倍数,并随后改变树封装报头的激活设置以便将组播分组发送到另一个核心路由器200或出口路由器300。
此外,当从入口路由器100或核心路由器200接收到具有树封装报头的组播分组时,出口路由器300去除树封装报头,并随后将组播分组发送到至少一个接收器2。
下面结合图3来说明具有上述配置的使用封装和单播的DiffServ组播方法。
首先,当接收到组播分组时,搜索路由表,并且确定能够发送组播分组的路由器的数目(S1)。
下文中,结合图4来更详细地说明上述第一步骤S1的操作。
接收到组播分组(S11)。
随后,确定在组播分组中是否存在树封装报头(S12)。
如果在步骤S12中确定在组播分组中存在树封装报头,则确定存储在组播分组的树封装报头中的所有条目的标记状态(S13)。
如果在步骤S13中确定所有条目的标记不为“0(空)”,则搜索路由表并且确定应该发送组播分组的下一个路由器的数目(S14)。
如果在步骤S12中确定不存在树封装报头,则使用组的成员和关于请求服务等级的信息来相对于组播分组的报头额外地产生树封装报头(S15)。
然后,激活要通过路由表信息发送的组播分组的条目字段,并且前进到步骤S16。
相反地,如果在步骤S13中确定所有条目的标记为“0”,则丢弃组播分组(S17)。
如果在步骤S1中已经确定了能够发送组播分组的下一个路由器数目是至少两个,则复制组播分组以便与路由器的数目相对应(S2)。
然后,通过路由表检查与下一个路由器相连的条目,并且设置并发送存储在组播分组的封装报头中的每一个条目的标记。
下文中,结合图5来详细说明上述步骤S3的操作。
首先,通过路由表确定激活的条目是否与下一个路由器相连(S31)。
如果在步骤S31中确定条目与下一个路由器相连,则保持条目标记的设置为“1”(S32)。
如果在步骤S31中确定条目不与下一个路由器相连,则将条目标记的设置改变到“0”,并随后发送组播分组(S33)。
相反地,如果在步骤S1中确定了能够发送组播分组的下一个路由器的数目为1,则将接收到的组播分组发送到相应的路由器或接收器(54)。
下文中,结合图6来详细说明上述步骤S4的操作。
确定发送组播分组的下一个部件是否是接收器(S41)。
如果在步骤S41中确定下一个部件是接收器,则组播分组去除其树封装报头并且发送到接收器(S42)。
如果在步骤S41中确定下一个部件是路由器而不是接收器,则发送接收到的组播分组(S43)。
在步骤S2和S3中,组播分组还包括图2的树封装报头。具有树封装报头的组播分组具有22+2E字节,其中E表示在组成组播树的节点中的出口路由器300的数目。
树封装报头包括存储条目的数目、选择和至少一个条目,其中条目的字段包括成员的标识符(ID)、成员要求的QoS和关于标记的信息。
在树封装报头的条目字段中,条目ID字段具有8比特,QoS字段具有6比特,并且标记具有1比特。
下面结合图1到7来说明根据本发明第二实施例使用封装和单播的DiffServ组播方法,其中DiffServ组播方法具有上述的配置。
首先,对于从发送器1将组播分组发送到接收器2(接收器1、接收器2和接收器3)的过程,当从发送器1接收到组播分组时,入口路由器100搜索路由表,并且确定能够发送组播分组的路由器数目(S1)。
下文中,结合图4来详细说明上述步骤S1的操作。
入口路由器100从发送器1接收组播分组(S11)。随后,确定在组播分组中是否存在树封装报头(S12)。
如果在步骤S12中确定在组播分组中不存在树封装报头,则使用组的成员和关于请求服务等级的信息来相对于组播分组的报头额外地产生树封装报头(S15)。如图2所示,入口路由器1产生的树封装报头包括存储条目的数目、选择和至少一个条目,其中条目的字段包括成员的标识符(ID)、成员要求的QoS以及关于标记的信息。在树封装报头的条目字段中,条目ID字段具有8个比特,QoS字段具有6个比特,并且标记具有1个比特。
具有树封装报头的组播分组还具有22+2E字节,其中E表示组成组播树的节点中的出口路由器300的数目。
随后,入口路由器100通过路由表激活要发送的组播分组的条目字段(S16)。换句话说,通过检查要发送组播分组的检查接收器2(接收器1、接收器2和接收器3)、搜索分别与接收器2相连出口路由器300(E2、E3和E4)、以及激活条目字段,来执行条目字段的激活。例如,发送自发送器1的组播分组分别经由出口路由器300(E2、E3和E4)被发送到接收器2(接收器1、接收器2和接收器3)。
因此,入口路由器100通过路由表检查这种信息,使在组播分组条目中的接收器1、接收器2和接收器3的条目标记被设置为“1”并且被激活,然后前进到步骤S14。
入口路由器100搜索路由表来确定能够发送组播分组的下一个路由器的数目(S14)。
如果在步骤S1中确定能够发送组播分组的下一个路由器的数目为1,则入口路由器100将接收到的组播分组发送到核心路由器200(C1)(S4)。
下文中,结合图6来详细说明上述步骤S4的操作。
入口路由器100确定发送组播分组的下一个部件是否是接收器2(S41)。
如果在步骤S41中确定下一个部件是路由器,则入口路由器100将接收到的组播分组发送到核心路由器200(C1)(S43)。
然后,从入口路由器100接收到组播分组的核心路由器200(C1)搜索组播分组的报头以确定是否为自身处理组播分组,并且通过路由表的搜索来确定能够发送组播分组的路由器的数目(S1)。
下文中,结合图4来详细说明步骤S1的操作。
核心路由器200(C1)从入口路由器100接收到组播分组(S11)。
随后,核心路由器200(C1)确定在组播分组中是否存在树封装报头(S12)。
如果在步骤S12中确定树封装报头存在,则核心路由器200(C1)确定存储在组播分组的树封装报头中的所有条目的标记状态(S13)。
如果在步骤S13中确定所有条目的标记不为“0(空)”,则核心路由器200(C1)搜索路由表来确定能够发送组播分组的路由器数目(S14)。
如果在步骤S1中确定能够发送组播分组的下一个路由器的数目为至少两个,则复制组播分组,以便与下一个路由器的数目相对应(S2)。换句话说,核心路由器200(C1)通过路由表来检查组播分组应该传递到的下一个路由器。结果,当核心路由器200(C1)确定组播分组应该传递到的下一个路由器200的数目为2时,复制组播分组为两份。
随后,核心路由器200(C1)使用前面执行的路由结果来检查与下一个路由器相连的条目,并且设置存储在组播分组的报头中的每一个条目的标记,并随后将复制的组播分组分别发送到核心路由器200(C2和C4)(S3)。
下文中,结合图5来详细说明上述步骤S3的操作。
首先,核心路由器200(C1)通过路由表确定激活的条目是否与下一个路由器相连(S31)。
如果在步骤S31中确定条目与下一个路由器相连,则核心路由器200(C1)保持条目标记的设置为“1”(S32)。因此,如图7(a)所示,在组播分组的条目中只有与接收器2(接收器1)相连的出口路由器300(E2)的条目标记保持为“1”以便允许组播分组通过核心路由器200(C2)从核心路由器200(C1)发送到接收器2(接收器1)。
然而,如果在步骤S31中确定条目不与下一个路由器相连,则核心路由器200(C1)将条目标记的设置改变为“0”,并随后发送组播分组(S33)。因此,如图7(b)所示,核心路由器200(C1)将其它激活的条目的标记改变为“0”,并且将组播分组发送到核心路由器200(C2)。
核心路由器200(C1)确定激活的条目是否与下一个路由器相连(S31)。
如果在步骤S31中确定激活的条目与下一个路由器相连,则核心路由器200(C1)保持激活的条目标记的设置为“1”(S32)。因此,如图7(e)所示,在组播分组的条目中只有与接收器2(接收器3)相连的出口路由器300(E4)的条目标记保持为“1”以便允许组播分组通过核心路由器200(C2)从核心路由器200(C1)发送到接收器2(接收器1)。换句话说,核心路由器200(C1)接收到与图7(a)相同的组播分组,但是产生与图7(b)和7(c)相同的组播分组,以便将产生的分组分别发送到核心路由器C2和C4。
核心路由器200(C1)确定激活的条目是否与下一个路由器相连(S31)。
如果在步骤S31中确定激活的条目与下一个路由器相连,则核心路由器200(C1)保持激活的条目标记的设置为“1”(S32)。因此,如图7(c)所示,在组播分组的条目中只有与接收器2(接收器2和接收器3)相连的出口路由器E3和E4的条目标记保持为“1”以便允许组播分组通过核心路由器200(C4)从核心路由器200(C1)发送到接收器2(接收器2和接收器3)。
然而,如果在步骤S31中确定条目不与下一个路由器相连,则将条目标记的设置改变为“0”,并随后发送组播分组(S33)。因此,如图7(c)所示,核心路由器200(C1)使得其它激活的条目标记改变为“0”,并随后将组播分组发送到核心路由器200(C4)(C1)C4)。
然后,从核心路由器200(C1)接收组播分组的核心路由器200(C4)搜索路由表,以便确定能够发送组播分组的路由器数目(S1)。
下文中,结合图4来更详细说明步骤S1的操作。
核心路由器200(C4)从核心路由器200(C1)接收组播分组(S11)。
随后,核心路由器200(C4)确定在组播分组中是否存在树封装报头(S12)。
如果在步骤S12中确定存在树封装报头,则核心路由器200(C4)确定存储在组播分组的树封装报头中的所有条目标识的状态(S 13)。
如果在步骤S13中确定所有条目标记不为“0”,则核心路由器200(C4)搜索路由表,以便确定能够发送组播分组的路由器数目(S14)。
如果在步骤S1中确定能够发送组播分组的下一个路由器的数目为至少两个,则核心路由器200(C4)复制组播分组,以便与下一个路由器的数目相对应(S2)。换句话说,核心路由器200(C4)获得存在三个路由器的信息,并且作为路由的结果来复制组播分组。因此,核心路由器200(C4)将组播分组复制为两份并将其发送到出口路由器E3和E4。
随后,核心路由器200(C4)通过路由表检查与下一个路由器相连的条目,并随后设置存储在组播分组的报头中的每一个条目标记。然后,核心路由器200(C4)将组播分组分别发送到出口路由器300(E3和E4)。
下文中,结合图5来详细说明上述步骤S3的操作。
首先,核心路由器200(C4)使用路由表来确定激活的条目是否与下一个路由器相连(S31)。
如果在步骤S31中确定条目与下一个路由器相连,则核心路由器200(C4)保持条目标记的设置为“1”(S32)。因此,如图7(e)所示,在组播分组的条目中只有与接收器2(接收器3)相连的出口路由器300(E4)的条目标记保持为“1”以便允许组播分组经由出口路由器300(E4)从核心路由器200(C4)发送到接收器2(接收器3)。
然而,如果在步骤S31中确定条目不与下一个路由器相连,则核心路由器200(C4)将条目标记的设置改变为“0”,并随后发送组播分组(S33)。因此,如图7(e)所示,核心路由器200(C4)使其它激活的条目的标记改变为“0”,并且将组播分组发送到出口路由器300(E4)(C4)(E4)。
到达核心路由器C4的组播分组具有如图7(c)所示的格式。因此,对于执行路由,核心路由器C4只路由可用的接收器2(接收器2和接收器3)而与接收器(接收器1)无关。按照这种方式,核心路由器C4查找前进到出口路由器E3和E4的路径,从而将组播分组复制为两份并发送。复制的组播分组分别具有图7(d)和7(e)所示的格式。不发送具有如图7(f)所示的组播分组。
然后,从核心路由器200(C4)接收组播分组的出口路由器300(E4)搜索路由表,以便确定能够发送组播分组的路由器的数目(S1)。
下文中,结合图4来详细说明第一步骤S1的操作。
出口路由器300(E4)从核心路由器200(C4)接收组播分组(S11)。
随后,出口路由器300(E4)确定在组播分组中是否存在树封装报头(S12)。
如果在步骤S12中确定树封装报头存在,则出口路由器300(E4)确定存储在组播分组的树封装报头中的所有条目的标记状态(S13)。
如果在步骤S13中确定所有条目标记不为“0(空)”,则出口路由器300(E4)搜索路由表以便确定能够发送组播分组的路由器的数目(S14)。
如果在步骤S1中确定能够发送组播分组的下一个路由器的数目为1,则出口路由器300(E4)将接收到的分组发送到接收器2(接收器3)(S4)。
下文中,结合图6来详细说明上述第四步骤S4的操作。
出口路由器300(E4)确定发送组播分组的下一个部件是否是接收器2(S41)。
如果在步骤S41中确定下一个部件是接收器2,则出口路由器300(E4)去除组播分组的树封装报头,并随后将组播分组发送到接收器2(接收器3)(S42)。
然后,从核心路由器200(C4)接收到组播分组的出口路由器300(E3)搜索路由表,以确定能够发送组播分组的路由器的数目(S1)。
下文中,结合图4来详细说明第一步骤S1的操作。
出口路由器300(E3)从核心路由器200(C4)接收到组播分组(S11)。
随后,出口路由器300(E3)确定在组播分组中是否存在树封装报头(S12)。
如果在步骤S12中确定树封装报头存在,则出口路由器300(E3)确定存储在组播分组的树封装报头中的所有条目的标记状态(S13)。
如果在步骤S13中确定所有条目的标记不为“0(空)”,则出口路由器300(E3)搜索路由表来确定能够发送组播分组的路由器数目(S14)。
如果在步骤S1中确定能够发送组播分组的下一个路由器的数目为1,则出口路由器300(E3)将接收到的分组发送到接收器2(接收器3)(S4)。
下文中,结合图6来详细说明上述第四步骤S4的操作。
出口路由器300(E3)确定发送组播分组的下一个部件是否是接收器2(S41)。
如果在步骤S41中确定下一个部件是接收器2,则出口路由器300(E3)去除组播分组的树封装报头,并随后将组播分组发送到接收器2(接收器2)(S42)。
然后,从核心路由器200(C4)接收到组播分组的出口路由器300(E2)搜索路由表,以确定能够发送组播分组的路由器的数目(S1)。
下文中,结合图4来详细说明第一步骤S1的操作。
出口路由器300(E2)从核心路由器200(C2)接收到组播分组(S11)。
随后,出口路由器300(E2)确定在组播分组中是否存在树封装报头(S12)。
如果在步骤S12中确定树封装报头存在,则出口路由器300(E2)确定存储在组播分组的树封装报头中的所有条目的标记状态(S13)。
如果在步骤S13中确定所有条目的标记不为“0(空)”,则出口路由器300(E2)搜索路由表来确定能够发送组播分组的路由器数目(S14)。
如果在步骤S1中确定能够发送组播分组的下一个路由器的数目为1,则出口路由器300(E2)将接收到的分组发送到接收器2(接收器1)(S4)。
下文中,结合图6来详细说明上述第四步骤S4的操作。
出口路由器300(E2)确定发送组播分组的下一个部件是否是接收器2(S41)。
如果在步骤S41中确定下一个部件是接收器2,则出口路由器300(E2)去除组播分组的树封装报头,并随后将组播分组发送到接收器2(接收器1)(S42)。
下面结合图8来说明根据本发明第二实施例的使用封装和单播的DiffServ组播方法,其中DiffServ组播方法具有上述配置。
首先,当接收到组播分组时,入口路由器100使用组的成员和关于请求服务等级的信息,在组播分组处产生树封装报头(S110)。
入口路由器100通过搜索路由表来确定能够发送组播分组的路由器的数目是一个或至少两个(S120)。
如果在步骤S120中确定能够发送组播分组的路由器的数目是至少两个,则入口路由器100复制组播分组,以便与路由器的数目相对应(S130)。
随后,入口路由器100将复制的组播分组分别发送到下一个路由器(S140)。
如果在步骤S120中确定能够发送组播分组的路由器的数目为1,则入口路由器100将接收到的组播分组发送到下一个路由器(S150)。
下面将结合图9来说明根据本发明第三实施例使用封装和单播的DiffServ组播方法,其中DiffServ组播方法具有上述配置。
当接收到组播分组时,核心路由器200通过搜索路由表来确定能够发送组播分组的路由器的数目是一个或至少两个(S210)。
如果在步骤S210中确定能够发送组播分组的路由器的数目为至少两个时,则核心路由器200复制组播分组,以便与路由器的数目相对应(S220)。
随后,核心路由器200发送复制的每一个组播分组(S230)。
如果在步骤S210中确定能够发送组播分组的路由器的数目为1,则核心路由器200将接收到的组播分组发送到下一个路由器(S240)。
此外,如图10所示,本发明用IPv6来扩展树封装报头,从而能够将树封装报头添加到IPv6扩展报头。
尽管已经说明了本发明的典型实施例,本领域的技术人员可以理解到本发明不局限于上述典型实施例。当然,在权利要求书所定义的本发明的精神和范围内可以作各种改变和修改。
如上所述,利用根据本发明使用封装和单播的DiffServ组播方法,可能保持DiffServ的优点并且不改变组播、减少流量和网络中入口路由器的数据开销,并且快速地改变网络、组成员和路由信息。从而可以改善网络的性能。
因为不需要管理和更新关于组播树的信息和取决于入口路由器应该向其提供服务的组、树信息和拓扑的改变的QoS,可能减少流量和输入路由器的数据开销。
即使发生组和网络的改变时,入口路由不更新所有树的信息也没有关系。因此,可以快速地处理网络和组的改变并改善整体性能。
可以保持可扩展性并同时保持各种服务支持,并且不损害每一个接收器所需要的资源保留的简易性。
Claims (34)
1、一种使用封装和单播的区分服务(DiffServ)组播方法,包括:
当接收到组播分组时,根据组播分组的报头的信息来搜索路由表,以便确定能够发送组播分组的路由表的数目;
复制组播分组,以便与所确定的、当接收到组播分组时能够发送组播分组的路由器的数目相对应;以及
通过路由表检查与下一个路由器相连的条目,设置存储在组播分组报头的每一个条目的标记,并且发送组播分组。
2、根据权利要求1所述的组播方法,还包括当已经确定了能够发送组播分组的下一个路由器的数目为1时,将接收到的组播分组发送到相对应的路由器或接收器。
3、根据权利要求1所述的组播方法,其中,当接收到组播分组时根据组播分组的报头的信息来搜索路由表以便确定能够发送组播分组的路由器数目包括:
接收组播分组;
确定在组播分组中是否存在树封装报头;
当确定在组播分组中存在树封装报头时,确定存储在组播分组的树封装报头的所有条目的标记的状态;以及
当确定了没有激活所有条目的标记时,搜索路由表来确定能够发送组播分组的路由器数目。
4、根据权利要求3所述的组播方法,还包括:
当确定了树封装报头不存在时,使用组的成员和关于请求服务的等级的信息,在组播分组的报头处额外地产生树封装报头;以及
激活要通过路由表发送的组播分组的条目的字段并且当确定了没有激活所有条目的标记时,搜索路由表来确定能够发送组播分组的路由器数目。
5、根据权利要求3所述的组播方法,还包括当确定没有激活所有条目的标记时,丢弃组播分组。
6、根据权利要求1所述的组播方法,其中,通过路由表检查与下一个路由器相连的条目、设置存储在组播分组报头的每一个条目的标记、并且发送组播分组包括:
确定激活的条目是否利用路由表与下一个路由器相连;以及
当确定了激活的条目与下一个路由器相连时,保持激活条目的标记的设置处于激活状态。
7、根据权利要求6所述的组播方法,还包括当确定了激活的条目不与下一个路由器相连时,将激活条目的标记的设置改变到非激活状态。
8、根据权利要求2所述的组播方法,其中,当已经确定了能够发送组播分组的下一个路由器的数目为1时,将接收到的组播分组发送到相对应的路由器或接收器包括:
确定发送组播分组的下一个部件是否是接收器;以及
当确定了下一个部件是接收器时,删除组播分组的树封装报头并随后发送组播分组。
9、根据权利要求8所述的组播方法,还包括当确定了下一个部件是路由器时,发送接收到的组播分组。
10、根据权利要求1所述的组播方法,其中,在当接收到组播分组、通过路由表检查到条目与下一个路由器相连、设置存储在组播分组的报头中的每一个条目的标记并且发送组播分组时复制组播分组以便与确定能够发送组播分组的路由器的数目相对应中,组播分组还包括树封装报头。
11、根据权利要求10所述的组播方法,其中,树封装报头包括成员的部分信息、选项和至少一个条目。
12、根据权利要求10所述的组播方法,其中,具有树封装报头的组播分组的报头包括20字节的IP报头和2+2E字节的树封装报头。
13、根据权利要求11所述的组播方法,其中,在树封装报头中的条目的字段包括成员的标识符、成员要求的服务质量(QoS)和标记信息。
14、根据权利要求13所述的组播方法,其中,树封装报头中的条目标识符字段具有8个比特。
15、根据权利要求13所述的组播方法,其中,树封装报头中的QoS字段具有6个比特。
16、根据权利要求13所述的组播方法,其中,树封装报头中的标记具有1个比特。
17、根据权利要求12所述的组播方法,其中,组播数据分组中的E表示在组成组播树的节点中的出口路由器数目。
18、一种使用封装和单播的区分服务(DiffServ)组播方法,包括:
当入口路由器接收到组播分组时,使用组的成员和关于请求服务的等级的信息在组播分组的报头处产生树封装报头;
由入口路由器通过搜索路由表来确定能够发送组播分组的路由器数目是一个或至少两个;
当确定了能够发送组播分组的路由器数目是至少两个时,由入口路由器复制组播分组,以便与路由器数目相对应;以及
由入口路由器发送复制的每一个组播分组。
19、根据权利要求18所述的组播方法,还包括当确定了能够发送组播分组的路由器数目是1时,由入口路由器将接收到的组播分组发送到下一个路由器。
20、一种使用封装和单播的区分服务(DiffServ)组播方法,包括:
当核心路由器接收到组播分组时,由核心路由器通过搜索路由表来确定能够发送组播分组的路由器数目是一个或至少两个;
当确定了能够发送组播分组的下一个路由器的数目是至少两个时,由核心路由器复制组播分组,以便与下一个路由器的数目相对应;以及
由核心路由器发送复制的每一个组播分组。
21、根据权利要求20所述的组播方法,还包括当确定了能够发送组播分组的下一个路由器数目是1时,由核心路由器将接收到的组播分组发送到下一个路由器。
22、一种使用封装和单播的区分服务(DiffServ)组播系统,包括:
入口路由器,适用于当确定了从发送器接收到组播分组时,产生树封装报头并且激活树封装报头的条目,以便将组播分组发送到下一个路由器;
至少一个核心路由器,适用于从树封装报头中检查激活的条目、检查单播路由表以便按照可与激活的条目相连的下一个路由器的数目来复制组播分组、并且改变树封装报头的激活设置以便发送复制的组播分组;以及
至少一个入口路由器,适用于当接收到具有树封装报头的组播分组时删除树封装报头、并且将组播分组发送到每一个接收器。
23、根据权利要求22所述的组播系统,其中,入口路由器适用于当接收到组播分组时产生树封装报头并且在组播分组的报头中包括树封装报头。
24、根据权利要求23所述的组播系统,其中,树封装报头包括成员、选择和至少一个条目的位置信息。
25、根据权利要求24所述的组播系统,其中,具有树封装报头的组播分组的报头包括20字节的IP报头和2+2E字节的树封装报头。
26、根据权利要求24所述的组播系统,其中,在树封装报头的条目中所包括的信息至少包括成员、成员要求的服务质量(QoS)和标记信息中的一个。
27、根据权利要求26所述的组播系统,其中,在树封装报头中的条目标识符字段具有8个比特。
28、根据权利要求26所述的组播系统,其中,在树封装报头中的QoS字段具有6个比特。
29、根据权利要求24所述的组播系统,其中,在树封装报头中的标记具有1个比特。
30、根据权利要求25所述的组播系统,其中,在组播数据分组中的E表示组成组播树的节点中的入口路由器的数目。
31、一种使用封装和单播的区分服务(DiffServ)组播系统,包括:
入口路由器,适用于当路由信息改变时,更新关于路由器树的信息以便管理关于所有组播树的信息,并且当从发送器接收到组播分组时,搜索关于相应组播树的信息来产生树封装报头,并且将树封装报头存储在组播分组中并发送组播分组;以及
至少一个核心路由器,适用于当从入口路由器接收到组播分组时,解析组播分组的树封装报头以便将组播分组发送到目的地。
32、根据权利要求31所述的组播系统,其中,树封装报头包括成员的位置信息、选项和至少一个条目。
33、根据权利要求32所述的组播系统,其中,条目字段包括1字节的条目标识符、6比特的要复制的条目信息以及3比特的每一个条目的服务质量(QoS)信息。
34、一种使用封装和单播的区分服务(DiffServ)组播方法,包括:
发送IPv6分组;以及
接收所述IPv6分组;
其中,IPv6分组包括树封装报头。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040098243A KR100693043B1 (ko) | 2004-11-26 | 2004-11-26 | 캡슐화와 유니 캐스트 라우팅을 이용하는 디프 서브에서의멀티 캐스트 시스템 및 방법 |
KR1020040098243 | 2004-11-26 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1780261A true CN1780261A (zh) | 2006-05-31 |
Family
ID=36567317
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA2005101268013A Pending CN1780261A (zh) | 2004-11-26 | 2005-11-22 | 使用封装和单播的区分服务组播系统和方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20060114904A1 (zh) |
KR (1) | KR100693043B1 (zh) |
CN (1) | CN1780261A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105490948A (zh) * | 2015-12-28 | 2016-04-13 | 传线网络科技(上海)有限公司 | 数据包分发方法和系统 |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100814401B1 (ko) | 2006-09-20 | 2008-03-18 | 삼성전자주식회사 | 유니캐스트 기반의 VoIP 시스템에서의 멀티캐스트 처리방법 및 시스템 |
US8599725B2 (en) | 2008-03-17 | 2013-12-03 | Comcast Cable Communications, Llc | Representing and searching network multicast trees |
US8259594B2 (en) | 2008-03-17 | 2012-09-04 | Comcast Cable Holding, Llc | Method for detecting video tiling |
CN102025516B (zh) * | 2009-09-16 | 2015-05-13 | 中兴通讯股份有限公司 | 一种实现组播业务的方法及系统 |
US8687609B2 (en) * | 2009-11-04 | 2014-04-01 | Cisco Technology, Inc. | Managing router advertisement messages to support roaming of wireless mobile client devices |
US10033650B2 (en) * | 2010-06-08 | 2018-07-24 | Brocade Communication Systems Llc | Preserving quality of service across trill networks |
US9237025B2 (en) * | 2013-08-15 | 2016-01-12 | Verizon Patent And Licensing Inc. | Source routing in multicast transmissions |
WO2021263047A1 (en) * | 2020-06-24 | 2021-12-30 | Juniper Networks, Inc. | Layer-2 network extension over layer-3 network using encapsulation |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1796304A3 (en) * | 1999-07-09 | 2009-11-18 | Malibu Networks Inc. | TCP/IP packet-centric wireless transmission system architecture |
JP3526032B2 (ja) * | 2000-11-08 | 2004-05-10 | 日本電気株式会社 | モバイルネットワーク及びipパケットの転送方法 |
-
2004
- 2004-11-26 KR KR1020040098243A patent/KR100693043B1/ko not_active IP Right Cessation
-
2005
- 2005-11-18 US US11/281,435 patent/US20060114904A1/en not_active Abandoned
- 2005-11-22 CN CNA2005101268013A patent/CN1780261A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105490948A (zh) * | 2015-12-28 | 2016-04-13 | 传线网络科技(上海)有限公司 | 数据包分发方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
KR20060059073A (ko) | 2006-06-01 |
KR100693043B1 (ko) | 2007-03-12 |
US20060114904A1 (en) | 2006-06-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1780261A (zh) | 使用封装和单播的区分服务组播系统和方法 | |
CN1242593C (zh) | 源地址选择系统、路由器装置、通信节点和源地址选择方法 | |
CN101061672A (zh) | 通信系统、无线局域网基站控制装置和无线局域网基站装置 | |
CN1665221A (zh) | 多点发送控制装置及方法 | |
CN1297126C (zh) | 在移动通信系统中建立信令连接的方法 | |
CN1866919A (zh) | 基于虚拟局域网堆叠的业务交换方法 | |
CN1277395C (zh) | 通信系统、发送装置和接收装置 | |
CN1744573A (zh) | 业务流的识别方法 | |
CN1437363A (zh) | 网关装置及其控制方法 | |
CN1298592A (zh) | 建立网络中的接续 | |
CN101051980A (zh) | 一种文件数据分发方法及相关设备 | |
CN1434611A (zh) | 生成树绕过方法和装置 | |
CN1636341A (zh) | 将数据流按比例多路复用成一个数据流的方法和设备 | |
CN1652528A (zh) | 分布式路由器 | |
CN1863156A (zh) | 通过分组网络提供时钟同步的方法和系统 | |
CN1204504C (zh) | 文件传送系统、中继设备、和文件传送方法 | |
CN101051920A (zh) | 一种组播业务的实现方法和网络设备 | |
CN1852551A (zh) | 基于移动网络的组播业务数据的实现方法 | |
CN101047631A (zh) | 用户位置信息传递方法、mac地址自动分配方法、网络建立方法及系统 | |
CN1838642A (zh) | 利用即时消息系统实现问答业务的方法及系统 | |
CN1855872A (zh) | 跨不同自治系统的混合网络vpn站点间的通信方法和系统 | |
CN1870583A (zh) | 实现移动IPv6节点与IPv4通信伙伴通信的方法 | |
CN1925463A (zh) | 包通信装置 | |
CN1592273A (zh) | 网络系统、控制设备、路由器装置、接入点和移动终端 | |
CN1744596A (zh) | IPv6网络中主机获取网络配置参数的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |