CN109639574B - 一种自适应多播路由选择方法 - Google Patents
一种自适应多播路由选择方法 Download PDFInfo
- Publication number
- CN109639574B CN109639574B CN201910093919.2A CN201910093919A CN109639574B CN 109639574 B CN109639574 B CN 109639574B CN 201910093919 A CN201910093919 A CN 201910093919A CN 109639574 B CN109639574 B CN 109639574B
- Authority
- CN
- China
- Prior art keywords
- multicast
- datagram
- router
- multicast group
- core
- 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
- 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
- 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
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
-
- 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/26—Route discovery packet
-
- 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/74—Address processing for routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
- H04L47/825—Involving tunnels, e.g. MPLS
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种自适应多播路由选择方法,根据当前具体的多播组及网络环境,自适应地选择最优的路由方法,为多播组成员密度变化率较大的多播组选择基于核心的发现方法进行数据传输,为多播组成员比较密集的多播组选择洪泛与剪除方法进行数据传输,为多播组成员比较分散的用户选择隧道方法进行数据传输,具有较高的灵活性,能够在各种环境下都最高效率地发挥多播技术的优势。此外,本发明还可以服务到单播网络的用户,可与现有多播技术及应用层技术无缝连接,共同使用,具有广泛的应用范围。
Description
技术领域
本发明属于无线网络通信技术领域,具体涉及一种自适应多播路由选择方法的设计。
背景技术
1988年,Deering提出了IP多播的概念,从此IP多播技术得到了广泛的关注。多播介于单播通信和广播通信之间,它可以将发送者发送的数据包发送给位于分散在不同子网中的一组接收者。多播的基础概念是“组”,一个多播组(multicast group)就是一组希望接收特定数据流的接收者。这个组没有物理或者地理的边界:组内的主机可以位于互联网或者专用网络的任何地方。多播组中的每一个节点被称为多播组成员(multicast groupmember)。
在多播的各种应用中,均可实现单播,但是随着接收者的增多,需要发送的数据包里线性增长,对于多个接收者,需要发送同一个数据包的n份拷贝,这样通信量就会成倍的增加,也会占用网络的许多带宽,有时会引起网络堵塞。但是多播通信IP数据包仅发送一次,路由器会自动的转发到位于不同网段上的每一个接收者,可以是在网络中传输的报文拷贝的数量最小,因此多播技术是很有必要的。
然而在现有的传统多播方式下,均是采用单一的路由选择机制,无法根据多播组中成员的聚集程度而选择最优化的路由选择方案,其灵活性较低,无法在各种环境下都最高效率地发挥多播技术的优势。
发明内容
本发明的目的是为了解决现有的传统多播方式均采用单一的路由选择机制,无法在各种环境下都最高效率地发挥多播技术的优势的问题,提出了一种自适应多播路由选择方法。
本发明的技术方案为:一种自适应多播路由选择方法,包括以下步骤:
S1、在服务器端的多播模式下运行RTP协议,并将流媒体数据发送到由组播地址标识的多播通道。
S2、将多播范围内每个发出多播请求业务的用户作为一个多播组成员,统计得到多播组成员的数量N。
S3、将多播组成员数量N除以多播范围的面积,得到多播组成员密度ρ。
S4、判断在时间阈值Tm内多播组成员密度ρ的变化率V是否大于变化率阈值Vm,若是则进入步骤S5,否则进入步骤S6。
S5、在多播通道内通过基于核心的发现方法进行数据传输。
S6、判断多播组成员密度ρ是否大于成员密度阈值ρm,若是则进入步骤S7,否则进入步骤S8。
S7、在多播通道内通过洪泛与剪除方法进行数据传输。
S8、在多播通道内通过隧道方法进行数据传输。
进一步地,步骤S5包括以下分步骤:
S51、为多播组指定核心路由器,并获取其IP单播地址。
S52、将核心路由器作为根节点,创建多播组的转发树。
S53、当转发树中的任意一个路由器向核心路由器发送数据报时,通过核心路由器与该路由器之间的每个中间路由器对数据报进行处理。
进一步地,步骤S53中中间路由器对数据报进行处理的具体方法为:
若发送的数据报为多播数据报,且其目的地址是多播组的组地址,则通过中间路由器向多播组中的每个成员转发该数据报;
若发送的数据报是请求加入该多播组的数据报,则将该数据报加入中间路由器的路由中,并向发出该数据报的路由器转发每一个多播数据报的一个副本。
进一步地,步骤S7包括以下分步骤:
S71、为多播组指定核心路由器,并获取其IP单播地址。
S72、将核心路由器作为根节点,创建多播组的转发树。
S73、判断转发树上的每个路由器的下游树枝是否有该多播组的成员,若是则进入步骤S74,否则进入步骤S75。
S74、保留该路由器及其下游树枝,并进入步骤S76。
S75、将该路由器及其下游树枝剪除,并进入步骤S76。
S76、当转发树中的每一个路由器收到一个多播数据报时,判断其是否从源点经最短路径发送过来,若是则进入步骤S77,否则进入步骤S78。
S77、向所有其他方向转发收到的多播数据报。
S78、将该多播数据报丢弃。
进一步地,步骤S8包括以下分步骤:
S81、在数据报发送端的路由器向多播数据报添加普通数据报的首部,进行再次封装,得到向单一目的站发送的单播数据报。
S82、将单播数据报通过隧道发送至数据报接收端的路由器。
S83、在数据报接收端的路由器剥去单播数据报的首部,使其恢复为原来的多播数据报,继续向其它目的站转发。
本发明的有益效果是:
(1)本发明根据当前具体的多播组及网络环境,自适应地选择最优的路由方法,为多播组成员密度变化率较大的多播组选择基于核心的发现方法进行数据传输,为多播组成员比较密集的多播组选择洪泛与剪除方法进行数据传输,为多播组成员比较分散的用户选择隧道方法进行数据传输,具有较高的灵活性,能够在各种环境下都最高效率地发挥多播技术的优势。
(2)本发明还可以服务到单播网络的用户,可与现有多播技术及应用层技术无缝连接,共同使用,具有广泛的应用范围。
(3)本发明在进行多播组成员统计之前,首先在服务器端的多播模式下运行RTP协议,并将流媒体数据发送到由组播地址标识的多播通道,这样有利于服务器发送的数据不受接收端数量影响。
附图说明
图1所示为本发明实施例提供的一种自适应多播路由选择方法流程图。
图2所示为本发明实施例提供的基于核心的发现方法流程图。
图3所示为本发明实施例提供的洪泛与剪除方法流程图。
图4所示为本发明实施例提供的隧道方法流程图。
图5所示为本发明实施例提供的隧道方法应用场景示意图。
图6所示为本发明实施例提供的对多播数据报进行封装示意图。
具体实施方式
现在将参考附图来详细描述本发明的示例性实施方式。应当理解,附图中示出和描述的实施方式仅仅是示例性的,意在阐释本发明的原理和精神,而并非限制本发明的范围。
本发明实施例提供了一种自适应多播路由选择方法,如图1所示,包括以下步骤S1~S8:
S1、在服务器端的多播模式下运行RTP协议,并将流媒体数据发送到由组播地址标识的多播通道。这样的设计有利于服务器发送的数据不受接收端数量影响。
S2、将多播范围内每个发出多播请求业务的用户作为一个多播组成员,统计得到多播组成员的数量N。
S3、将多播组成员数量N除以多播范围的面积,得到多播组成员密度ρ。
S4、判断在时间阈值Tm内多播组成员密度ρ的变化率V是否大于变化率阈值Vm,若是则进入步骤S5,否则进入步骤S6。
本发明实施例中,时间阈值Tm设置为10分钟,变化率阈值Vm设置为10%,即如果在10分钟内多播组成员密度ρ的变化率V超过10%,则认为该多播组的成员密度ρ变化较大,进入步骤S5,否则进入步骤S6。
S5、在多播通道内通过基于核心的发现方法进行数据传输。
如图2所示,步骤S5包括以下分步骤S51~S53:
S51、为多播组指定核心路由器,并获取其IP单播地址。
S52、将核心路由器作为根节点,创建多播组的转发树。
S53、当转发树中的任意一个路由器向核心路由器发送数据报时,通过核心路由器与该路由器之间的每个中间路由器对数据报进行处理,具体处理方法为:
若发送的数据报为多播数据报,且其目的地址是多播组的组地址,则通过中间路由器向多播组中的每个成员转发该数据报;若发送的数据报是请求加入该多播组的数据报,则将该数据报加入中间路由器的路由中,并向发出该数据报的路由器转发每一个多播数据报的一个副本。
例如,如果有一个路由器R1向核心路由器发送数据报,那么它在途中经过的每一个中间路由器都要检查其内容并对数据报进行处理。设路由器R2为一个中间路由器,如果R1发出的是一个多播数据报,其目的地址是多播组的组地址,R2就向多播组的成员转发这个多播数据报;如果R1发出的数据报是一个请求加入多播组的数据报,R2就把这个信息加到它的路由中,并向R1转发每一个多播数据报的一个副本。这样,参加到多播组的路由器就从核心向外增多了,扩大了多播转发树的覆盖范围。因此,基于核心的发现方法适合于多播组成员在较大的范围内变化的情况。
S6、判断多播组成员密度ρ是否大于成员密度阈值ρm,若是则进入步骤S7,否则进入步骤S8。
本发明实施例中,成员密度阈值ρm设置为104个/km2,即多播组成员密度ρ若是超过104个/km2,则认为多播组成员比较密集,进入步骤S7,否则认为多播组成员比较分散,进入步骤S8。
S7、在多播通道内通过洪泛与剪除方法进行数据传输。
洪泛与剪除方法适用于多播组成员的分布非常集中的情况,例如多播组成员都在一个机构之内。其核心即是反向路径广播RPB(Reverse Path Broadcasting)的策略,即每一个路由器在收到一个多播数据报时,先检查数据报是否从源点经最短路径传送来的。之所以叫做反向路径,因为在计算最短路径时是把源点当作终点。
如图3所示,步骤S7包括以下分步骤S71~S78:
S71、为多播组指定核心路由器,并获取其IP单播地址。
S72、将核心路由器作为根节点,创建多播组的转发树。
S73、判断转发树上的每个路由器的下游树枝是否有该多播组的成员,若是则进入步骤S74,否则进入步骤S75。
本发明实施例中,某个路由器的下游树枝即为其叶节点方向的多播组成员。
S74、保留该路由器及其下游树枝,并进入步骤S76。
S75、将该路由器及其下游树枝剪除,并进入步骤S76。
S76、当转发树中的每一个路由器收到一个多播数据报时,判断其是否从源点经最短路径发送过来,若是则进入步骤S77,否则进入步骤S78。
本发明实施例中,判断多播数据报是否从源点经最短路径发送过来的具体方法为:当一个路由器收到一个多播数据报时,从本路由器寻找到源点的最短路径上的第一个路由器,判断其是否就是刚才把多播数据报发送过来的路由器,若是则说明多播数据报从源点经最短路径发送过来,否则说明多播数据报并非从源点经最短路径发送过来。
需要特别说明的是,如果一个路由器有好几个相邻路由器都处在到源点的最短路径上(即存在几条同样长度的最短路径),那么只能选择一条最短路径,选择的准则就是看这几条最短路径中的相邻路由器谁的IP地址最小。
S77、向所有其他方向转发收到的多播数据报(进入方向除外)。
S78、将该多播数据报丢弃。
S8、在多播通道内通过隧道方法进行数据传输。
隧道方法适用于多播组成员的位置在地理上很分散的情况,如图4所示,步骤S8包括以下分步骤S81~S83:
S81、在数据报发送端的路由器向多播数据报添加普通数据报的首部,进行再次封装,得到向单一目的站发送的单播数据报。
S82、将单播数据报通过隧道发送至数据报接收端的路由器。
S83、在数据报接收端的路由器剥去单播数据报的首部,使其恢复为原来的多播数据报,继续向其它目的站转发。
例如,如图5所示,网A和网B都支持多播,但路由器R1和R2之间的网络并不支持多播,因而R1和R2不能按多播地址转发数据报。为此,路由器R1需要对多播数据报进行再次封装,即再添加普通数据报首部,使之成为向单一目的站发送的单播数据报,封装过程如图6所示,然后通过“隧道”从路由器R1发送到R2。单播数据报到达路由器R2后,再由路由器R2剥去其首部,使它又恢复成原来的多播数据报,继续向其它多个目的站转发。
本领域的普通技术人员将会意识到,这里所述的实施例是为了帮助读者理解本发明的原理,应被理解为本发明的保护范围并不局限于这样的特别陈述和实施例。本领域的普通技术人员可以根据本发明公开的这些技术启示做出各种不脱离本发明实质的其它各种具体变形和组合,这些变形和组合仍然在本发明的保护范围内。
Claims (4)
1.一种自适应多播路由选择方法,其特征在于,包括以下步骤:
S1、在服务器端的多播模式下运行RTP协议,并将流媒体数据发送到由组播地址标识的多播通道;
S2、将多播范围内每个发出多播请求业务的用户作为一个多播组成员,统计得到多播组成员的数量N;
S3、将多播组成员数量N除以多播范围的面积,得到多播组成员密度ρ;
S4、判断在时间阈值Tm内多播组成员密度ρ的变化率V是否大于变化率阈值Vm,若是则进入步骤S5,否则进入步骤S6;
S5、在多播通道内通过基于核心的发现方法进行数据传输;
S6、判断多播组成员密度ρ是否大于成员密度阈值ρm,若是则进入步骤S7,否则进入步骤S8;
S7、在多播通道内通过洪泛与剪除方法进行数据传输;
S8、在多播通道内通过隧道方法进行数据传输;
所述步骤S5包括以下分步骤:
S51、为多播组指定核心路由器,并获取其IP单播地址;
S52、将核心路由器作为根节点,创建多播组的转发树;
S53、当转发树中的任意一个路由器向核心路由器发送数据报时,通过核心路由器与该路由器之间的每个中间路由器对数据报进行处理。
2.根据权利要求1所述的自适应多播路由选择方法,其特征在于,所述步骤S53中中间路由器对数据报进行处理的具体方法为:
若发送的数据报为多播数据报,且其目的地址是多播组的组地址,则通过中间路由器向多播组中的每个成员转发该数据报;
若发送的数据报是请求加入该多播组的数据报,则将该数据报加入中间路由器的路由中,并向发出该数据报的路由器转发每一个多播数据报的一个副本。
3.根据权利要求1所述的自适应多播路由选择方法,其特征在于,所述步骤S7包括以下分步骤:
S71、为多播组指定核心路由器,并获取其IP单播地址;
S72、将核心路由器作为根节点,创建多播组的转发树;
S73、判断转发树上的每个路由器的下游树枝是否有该多播组的成员,若是则进入步骤S74,否则进入步骤S75;
S74、保留该路由器及其下游树枝,并进入步骤S76;
S75、将该路由器及其下游树枝剪除,并进入步骤S76;
S76、当转发树中的每一个路由器收到一个多播数据报时,判断其是否从源点经最短路径发送过来,若是则进入步骤S77,否则进入步骤S78;
S77、向所有其他方向转发收到的多播数据报;
S78、将该多播数据报丢弃。
4.根据权利要求1所述的自适应多播路由选择方法,其特征在于,所述步骤S8包括以下分步骤:
S81、在数据报发送端的路由器向多播数据报添加普通数据报的首部,进行再次封装,得到向单一目的站发送的单播数据报;
S82、将单播数据报通过隧道发送至数据报接收端的路由器;
S83、在数据报接收端的路由器剥去单播数据报的首部,使其恢复为原来的多播数据报,继续向其它目的站转发。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910093919.2A CN109639574B (zh) | 2019-01-30 | 2019-01-30 | 一种自适应多播路由选择方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910093919.2A CN109639574B (zh) | 2019-01-30 | 2019-01-30 | 一种自适应多播路由选择方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109639574A CN109639574A (zh) | 2019-04-16 |
CN109639574B true CN109639574B (zh) | 2021-02-09 |
Family
ID=66064258
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910093919.2A Active CN109639574B (zh) | 2019-01-30 | 2019-01-30 | 一种自适应多播路由选择方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109639574B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114079627B (zh) * | 2020-08-14 | 2024-07-09 | 华为技术有限公司 | 数据传输装置和方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102316419A (zh) * | 2011-09-22 | 2012-01-11 | 华为技术有限公司 | 无线局域网络中开展多媒体业务的方法、装置及*** |
CN102378122A (zh) * | 2011-10-31 | 2012-03-14 | 中国科学院计算技术研究所 | 自适应多播传输机制选择方法 |
CN103747421A (zh) * | 2014-01-13 | 2014-04-23 | 中国科学院计算技术研究所 | 一种两阶段协作多播方法及*** |
EP3096575A1 (en) * | 2015-05-20 | 2016-11-23 | Alcatel Lucent | Method, system and computer-readable medium for updating a broadcast area |
CN108235158A (zh) * | 2018-01-15 | 2018-06-29 | 北京邮电大学 | 光网络多播业务的处理方法和装置 |
CN108307470A (zh) * | 2018-05-11 | 2018-07-20 | 重庆邮电大学 | 一种基于节点群体关系度的网络分簇方法 |
CN108989972A (zh) * | 2017-06-02 | 2018-12-11 | 成都鼎桥通信技术有限公司 | 基于区域位置的广播组呼处理方法及装置 |
CN109104697A (zh) * | 2017-06-20 | 2018-12-28 | 中国电信股份有限公司 | 用于无线局域网的组播控制方法和无线接入设备 |
-
2019
- 2019-01-30 CN CN201910093919.2A patent/CN109639574B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102316419A (zh) * | 2011-09-22 | 2012-01-11 | 华为技术有限公司 | 无线局域网络中开展多媒体业务的方法、装置及*** |
CN102378122A (zh) * | 2011-10-31 | 2012-03-14 | 中国科学院计算技术研究所 | 自适应多播传输机制选择方法 |
CN103747421A (zh) * | 2014-01-13 | 2014-04-23 | 中国科学院计算技术研究所 | 一种两阶段协作多播方法及*** |
EP3096575A1 (en) * | 2015-05-20 | 2016-11-23 | Alcatel Lucent | Method, system and computer-readable medium for updating a broadcast area |
CN108989972A (zh) * | 2017-06-02 | 2018-12-11 | 成都鼎桥通信技术有限公司 | 基于区域位置的广播组呼处理方法及装置 |
CN109104697A (zh) * | 2017-06-20 | 2018-12-28 | 中国电信股份有限公司 | 用于无线局域网的组播控制方法和无线接入设备 |
CN108235158A (zh) * | 2018-01-15 | 2018-06-29 | 北京邮电大学 | 光网络多播业务的处理方法和装置 |
CN108307470A (zh) * | 2018-05-11 | 2018-07-20 | 重庆邮电大学 | 一种基于节点群体关系度的网络分簇方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109639574A (zh) | 2019-04-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7254132B2 (en) | Mobile communication system, mobile communication method, wireless base station, mobile station, and program | |
JP5448211B2 (ja) | 無線通信装置、無線ネットワークシステム、データ転送方法、及び、プログラム | |
Ozaki et al. | Bandwidth-efficient multicast routing for multihop, ad-hoc wireless networks | |
Ozaki et al. | Bandwidth-efficient multicast routing protocol for ad-hoc networks | |
Noguchi et al. | Performance evaluation of new multicast architecture with network coding | |
Tu et al. | Resource-aware video multicasting via access gateways in wireless mesh networks | |
CN101789874B (zh) | 一种在pim-sm中实现组播树切换的方法、装置及路由设备 | |
US20110051651A1 (en) | Method and apparatus for multicast tree management in multi-hop relay communication system | |
CN109981308A (zh) | 报文传输方法及装置 | |
EP3547690B1 (en) | Real-time video transmission method of multipath network | |
CN109639574B (zh) | 一种自适应多播路由选择方法 | |
CN110999230B (zh) | 传输组播报文的方法、网络设备和*** | |
WO2008154796A1 (fr) | Procédé et équipement permettant de commander la transmission de paquets de données de multidiffusion dans la station de base et la passerelle du système wimax | |
EP1430645B1 (en) | Implementing multicasting | |
Rümmler et al. | Multicast in third-generation mobile networks: services, mechanisms and performance | |
CN114915588B (zh) | 用于任播部署的上游多播跳umh扩展 | |
KR100965053B1 (ko) | 제한적 멀티캐스트 기반의 인터넷 방송 데이터 전송 방법 | |
Kafaie et al. | Network coding with link layer cooperation in wireless mesh networks | |
Boudani et al. | Multicast tree in MPLS network | |
Vijayalakshmi et al. | Efficient Multicast Routing Protocol For Manets | |
He et al. | Performance evaluation of a WiMAX multi-hop relay system to support multicast/broadcast service | |
KR100434913B1 (ko) | 이동호스트 지원 멀티캐스팅 환경에서의 홈에이전트 선택방법 | |
Borcoci | Advanced Technologies TCP/IP | |
Borcoci | Architectures for Networks and Services | |
Chakraborty et al. | Multicast: Concept, problems, routing protocols, algorithms and QoS extensions |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |