CN101616015B - 一种获取ip网络中组播拓扑信息的方法和装置 - Google Patents
一种获取ip网络中组播拓扑信息的方法和装置 Download PDFInfo
- Publication number
- CN101616015B CN101616015B CN200910161520XA CN200910161520A CN101616015B CN 101616015 B CN101616015 B CN 101616015B CN 200910161520X A CN200910161520X A CN 200910161520XA CN 200910161520 A CN200910161520 A CN 200910161520A CN 101616015 B CN101616015 B CN 101616015B
- Authority
- CN
- China
- Prior art keywords
- multicast
- network element
- network
- path
- last
- 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.)
- Expired - Fee Related
Links
Images
Abstract
本发明公开了一种获取IP网络中组播拓扑信息的方法,包括:选择组播路径上的一网元作为当前网元,获取所述当前网元的组播路由的入接口和所有的协议无关组播PIM邻居网元;查找所述PIM邻居网元中组播路由下一跳的出接口与所述当前网元的组播路由的入接口一致的网元,作为所述当前网元的上一跳网元;重复上述步骤,查找组播路径上所有网元的上一跳网元;将组播路径上所有网元及其上一跳网元串接起来,形成组播拓扑。本发明可以主动及时地获取组播拓扑信息,为网络的监管提供了方便。
Description
技术领域
本发明涉及组播技术领域,尤其涉及一种获取IP网络中组播拓扑信息的方法和装置。
背景技术
组播是一种在IP网络中,介于单播与广播之间的通信方式,允许一个或多个发送者发送单一的数据包到多个接收者的网络技术。目前广泛应用于网络视频会议、网络音频/视频广播、多媒体远程教育、远程会诊等领域。采用组播技术可以很好的解决网络的拥塞问题,提高传输效率。但随着组播技术的广泛应用,组播网络的规模和复杂程度也在不断的发展和提高,因此对网络进行有效的监管和维护的困难程度也在不断的加大。
在组播网络中,如果某个网元出现故障,其组播流量就会由其他网元来承担,则必然会增加其他网元的工作压力,降低了网络的可靠性,随着组网规模的不断扩大,及时的发现有故障的网元也越来越困难。
组播报文在网络中是通过路由转发项进行转发的。所有的组播转发项串接起来就构成了组播树。组播转发项是由组播路由协议形成的。常用的组播路由协议有DVMRP(Distance Vector Multicast Routing Protocol,距离矢量组播路由协议),PIM-DM(Protocol Independent Multicast Dense Mode,协议无关组播密集模式),PIM-SM(Protocol Independent Multicast SparseMode,协议无关组播稀疏模式)等。由组播路由协议形成的组播转发项是动态创建的。在通常情况下,最终形成组播树是相对比较稳定的,但是如果当组播树上的某个网元出现故障,则会导致组播转发项发生变化,从而最终会导致组播树发生变化。
现有的组播树发现方法存在以下不足:获取组播拓扑信息的方法依赖被动接收节点发送的组播信息,从而形成组播拓扑。用户无法根据自己需要主动的去获取组播拓扑信息。
发明内容
本发明要解决的技术问题就是提出一种获取IP网络中组播拓扑信息的方法和装置,解决现有技术中无法根据需要主动获取组播拓扑信息的问题。
为了解决上述技术问题,本发明提供一种获取IP网络中组播拓扑信息的方法,包括:
选择组播路径上的一网元作为当前网元,获取所述当前网元的组播路由的入接口和所有的协议无关组播PIM邻居网元;
查找所述PIM邻居网元中组播路由下一跳的出接口与所述当前网元的组播路由的入接口一致的网元,作为所述当前网元的上一跳网元;
重复上述步骤,查找组播路径上所有网元的上一跳网元;
将组播路径上所有网元及其上一跳网元串接起来,形成组播拓扑;
所述选择组播路径上的一网元作为当前网元,具体是指:
选择网元中组播路由的组播源地址和组播组地址与组播路径的组播源地址和组播组地址一致的网元作为当前网元。
进一步地,上述方法还可具有以下特点:
根据所述组播路径的组播源地址和组播组地址,查询所述当前网元的组播路由表,获取所述当前网元的组播路由的入接口。
进一步地,上述方法还可具有以下特点:
根据所述当前网元的组播路由的入接口,查询PIM邻居表,获取所述所有的PIM邻居网元的地址。
进一步地,上述方法还可具有以下特点:
查询所述PIM邻居网元的组播路由下一跳表,根据所述组播路径的组播源地址和组播组地址,获得所述PIM邻居网元的组播路由下一跳的出接口。
为了解决上述技术问题,本发明还提供一种获取IP网络中组播拓扑信息的装置,包括相连的上一跳网元查找模块和组播拓扑形成模块;
所述上一跳网元查找模块用于选择组播路径上的一网元作为当前网元,获取所述当前网元的组播路由的入接口和所有的协议无关组播PIM邻居网元,查找所述PIM邻居网元中组播路由下一跳的出接口与所述当前网元的组播路由的入接口一致的网元,作为所述当前网元的上一跳网元;进一步用于查找组播路径上所有网元的上一跳网元,并告知所述组播拓扑形成模块;
所述组播拓扑形成模块用于将组播路径上所有网元及其上一跳网元串接起来,形成组播拓扑;
所述上一跳网元查找模块进一步用于选择网元中组播路由的组播源地址和组播组地址与组播路径的组播源地址和组播组地址一致的网元作为当前网元。
进一步地,上述装置还可具有以下特点:
所述上一跳网元查找模块进一步用于根据所述组播路径的组播源地址和组播组地址,查询所述当前网元的组播路由表,获取所述当前网元的组播路由的入接口。
进一步地,上述装置还可具有以下特点:
所述上一跳网元查找模块进一步用于根据所述当前网元的组播路由的入接口,查询PIM邻居表,获取所述所有的PIM邻居网元的地址。
进一步地,上述装置还可具有以下特点:
所述上一跳网元查找模块进一步用于查询所述PIM邻居网元的组播路由下一跳表,根据所述组播路径的组播源地址和组播组地址,获得所述PIM邻居网元的组播路由下一跳的出接口。
本发明通过读取节点的MIB(Management Information Base,管理信息数据库)参数获取组播路径,从而得到了组播拓扑信息,而且这种信息可以进行主动的及时的获取,可以使网络维护人员及时的了解到组播拓扑的结构,为网络的监管提供了方便。
附图说明
图1是本发明实施例的获取IP网络中组播拓扑信息的方法流程图;
图2是本发明实施例的获取IP网络中组播拓扑信息的装置示意图。
具体实施方式
本发明的核心思想是:查找组播路径上所有网元的上一跳网元,将组播路径上所有网元及其上一跳网元串接起来,形成组播拓扑。
下面结合附图及具体实施例对本发明进行详细说明。
如图1所示,本发明实施例的获取IP网络中组播拓扑信息的方法包括如下步骤:
步骤101,选择组播路径上的一网元作为当前网元,获取所述当前网元的组播路由的入接口;
其中,组播路径由组播源地址和组播组地址确定,当指定了组播源地址和组播组地址,则确定了组播路径;需要获得的组播拓扑是指定组播源到组播组的组播树。
选择当前网元,具体是选择网元中组播路由的组播源地址和组播组地址与组播路径的组播源地址和组播组地址一致的网元作为当前网元。
在本步骤中,根据所述组播路径的组播源地址和组播组地址,查询所述当前网元的组播路由表,获取所述当前网元的组播路由的入接口。
组播路由表(ipMcastRouteTable)是RFC(Request For Comment)5132中定义的,用于保存组播路由信息。
进行查询时需要读取在组播路由表中的ipMcastRouteGroup、ipMcastRouteSource和ipMcastRouteInIfIndex三个字段的参数值。其中ipMcastRouteGroup表示组播组的IP地址,ipMcastRouteSource表示组播源的IP地址,ipMcastRouteInIfIndex为组播入接口的索引。
当组播源S开始向组播组G发送数据时,在路由器接收到组播报文后 首先根据单播路由进行RPF检查,如果检查通过路由器会创建一个(S,G)表项。当表项为(*,G)时表示无论是哪个源发出的,发送至组播组G的组播包都适应于该表项。当条目为(S,G)时ipMcastRouteGroup的值为G的IP地址,ipMcastRouteSource的值为S的IP地址。当条目为(*,G)时ipMcastRouteGroup的值为G的IP地址,ipMcastRouteSource的值为0.0.0.0。
若获取表项为(*,G)时的组播拓扑,即不指定组播源的组播拓扑,则需要搜索ipMcastRouteSource的值为0.0.0.0,ipMcastRouteGroup的值为G的表项,其中ipMcastRouteSource的值为0.0.0.0可以认为是特殊的组播源地址。
一个组播组、组播源地址只唯一对应一个入接口,根据组播组、源地址找到这个入接口的接口索引,并保存。
步骤102,根据所述入接口获取所述当前网元的所有的PIM(ProtocolIndependent Multicast,协议无关组播)邻居网元;
在本步骤中,根据所述当前网元的组播路由的入接口,查询PIM邻居表,获取所述所有的PIM邻居网元的IP地址。
其中PIM邻居表(pimNeighborTable)是RFC5060中定义的,用于保存PIM协议生成的PIM邻居信息。
进行查询时需要查询出pimNeighborIfIndex和pimNeighborAddress字段,其中pimNeighborIfIndex是指PIM邻居的接口索引,pimNeighborAddress是指PIM邻居的IP地址。查询时需要遍历出所有的PIM邻居接口索引和IP地址后,过滤出pimNeighborIfIndex的值与步骤101中找到的入接口索引相同的所有pimNeighborAddress的值。
步骤103,查找所述PIM邻居网元中组播路由下一跳的出接口与所述当前网元的组播路由的入接口一致的网元,作为所述当前网元的上一跳网元;
具体地,查询所述PIM邻居网元的组播路由下一跳表,根据所述组播路径的组播源地址和组播组地址,获得所述PIM邻居网元的组播路由下一跳的出接口。
组播路由下一跳表(ipMcastRouteNextHopTable)是RFC5132中定义的,用于保存指定的组播源到组播组的IP数据包经过的某出接口的下一跳实体 列表,需要读取的字段包括:ipMcastRouteNextHopGroup(组播组地址)、ipMcastRouteNextHopSource(组播源地址)、ipMcastRouteNextHopIfIndex(接口索引)。
首先根据步骤102中查询出的所有邻居IP地址找到对应的网元。然后遍历这些网元,查询组播路由下一跳MIB表。查询时需要根据步骤101中指定的组播源、组播组地址查询出接口索引。然后用此接口索引与步骤101中的入接口比较,如果相同,则此网元就是步骤101所指定网元的唯一的上一跳。
步骤104,将组播路径上所有网元及其上一跳网元串接起来,形成组播拓扑;
重复执行步骤101至步骤103,找出所有网元的唯一的上一跳,将组播路径上所有网元及其上一跳网元串接起来,形成组播拓扑(组播树)。
如图2所述,本发明实施例的一种获取IP网络中组播拓扑信息的装置,包括相连的上一跳网元查找模块和组播拓扑形成模块;
其中,所述上一跳网元查找模块用于选择组播路径上的一网元作为当前网元,获取所述当前网元的组播路由的入接口和所有的PIM邻居网元,查找所述PIM邻居网元中组播路由下一跳的出接口与所述当前网元的组播路由的入接口一致的网元,作为所述当前网元的上一跳网元;进一步用于查找组播路径上所有网元的上一跳网元,并告知所述组播拓扑形成模块;
所述组播拓扑形成模块用于将组播路径上所有网元及其上一跳网元串接起来,形成组播拓扑。
所述上一跳网元查找模块进一步用于选择网元中组播路由的组播源地址和组播组地址与组播路径的组播源地址和组播组地址一致的网元作为当前网元。
所述上一跳网元查找模块进一步用于根据所述组播路径的组播源地址和组播组地址,查找所述当前网元的组播路由表,获取所述当前网元的组播路由的入接口。
所述上一跳网元查找模块进一步用于根据所述当前网元的组播路由的入接口,查询PIM邻居表,获取所述所有的PIM邻居网元的地址。
所述上一跳网元查找模块进一步用于查询所述PIM邻居网元的组播路由下一跳表,根据所述组播路径的组播源地址和组播组地址,获得所述PIM邻居网元的组播路由下一跳的出接口。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的技术人员当可根据本发明作出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (8)
1.一种获取IP网络中组播拓扑信息的方法,包括:
选择组播路径上的一网元作为当前网元,获取所述当前网元的组播路由的入接口和所有的协议无关组播PIM邻居网元;
查找所述PIM邻居网元中组播路由下一跳的出接口与所述当前网元的组播路由的入接口一致的网元,作为所述当前网元的上一跳网元;
重复上述步骤,查找组播路径上所有网元的上一跳网元;
将组播路径上所有网元及其上一跳网元串接起来,形成组播拓扑;
所述选择组播路径上的一网元作为当前网元,具体是指:
选择网元中组播路由的组播源地址和组播组地址与组播路径的组播源地址和组播组地址一致的网元作为当前网元。
2.如权利要求1所述的方法,其特征在于,
根据所述组播路径的组播源地址和组播组地址,查询所述当前网元的组播路由表,获取所述当前网元的组播路由的入接口。
3.如权利要求1所述的方法,其特征在于,
根据所述当前网元的组播路由的入接口,查询PIM邻居表,获取所述所有的PIM邻居网元的地址。
4.如权利要求1~3中任意一项所述的方法,其特征在于,
查询所述PIM邻居网元的组播路由下一跳表,根据所述组播路径的组播源地址和组播组地址,获得所述PIM邻居网元的组播路由下一跳的出接口。
5.一种获取IP网络中组播拓扑信息的装置,其特征在于,包括相连的上一跳网元查找模块和组播拓扑形成模块;
所述上一跳网元查找模块用于选择组播路径上的一网元作为当前网元,获取所述当前网元的组播路由的入接口和所有的协议无关组播PIM邻居网元,查找所述PIM邻居网元中组播路由下一跳的出接口与所述当前网元的组播路由的入接口一致的网元,作为所述当前网元的上一跳网元;进一步用于查找组播路径上所有网元的上一跳网元,并告知所述组播拓扑形成模块;
所述组播拓扑形成模块用于将组播路径上所有网元及其上一跳网元串接起来,形成组播拓扑;
所述上一跳网元查找模块进一步用于选择网元中组播路由的组播源地址和组播组地址与组播路径的组播源地址和组播组地址一致的网元作为当前网元。
6.如权利要求5所述的装置,其特征在于,
所述上一跳网元查找模块进一步用于根据所述组播路径的组播源地址和组播组地址,查询所述当前网元的组播路由表,获取所述当前网元的组播路由的入接口。
7.如权利要求5所述的装置,其特征在于,
所述上一跳网元查找模块进一步用于根据所述当前网元的组播路由的入接口,查询PIM邻居表,获取所述所有的PIM邻居网元的地址。
8.如权利要求5~7中任意一项所述的装置,其特征在于,所述上一跳网元查找模块进一步用于查询所述PIM邻居网元的组播路由下一跳表,根据所述组播路径的组播源地址和组播组地址,获得所述PIM邻居网元的组播路由下一跳的出接口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910161520XA CN101616015B (zh) | 2009-07-24 | 2009-07-24 | 一种获取ip网络中组播拓扑信息的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910161520XA CN101616015B (zh) | 2009-07-24 | 2009-07-24 | 一种获取ip网络中组播拓扑信息的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101616015A CN101616015A (zh) | 2009-12-30 |
CN101616015B true CN101616015B (zh) | 2011-08-10 |
Family
ID=41495442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910161520XA Expired - Fee Related CN101616015B (zh) | 2009-07-24 | 2009-07-24 | 一种获取ip网络中组播拓扑信息的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101616015B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102647312B (zh) * | 2012-05-09 | 2015-08-05 | 浙江宇视科技有限公司 | 一种整网组播拓扑的探测方法及装置 |
CN106789146B (zh) * | 2016-04-15 | 2021-04-02 | 新华三技术有限公司 | 一种拓扑获得方法及装置 |
CN106357540B (zh) * | 2016-08-24 | 2019-02-19 | 浪潮(北京)电子信息产业有限公司 | 一种组播控制方法及装置、组播系统 |
CN109195117B (zh) * | 2018-09-25 | 2021-05-11 | 重庆金美通信有限责任公司 | 一种在广播型多跳无线网络中pim-sm的改进方法 |
CN111917622B (zh) * | 2019-09-23 | 2021-08-03 | 华为技术有限公司 | 一种反向路径转发rpf检查方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101035063A (zh) * | 2006-03-07 | 2007-09-12 | 华为技术有限公司 | 组播流转发方法及其路由器和系统 |
CN101227310A (zh) * | 2008-01-29 | 2008-07-23 | 华为技术有限公司 | 获取组播拓扑信息的方法、装置和系统 |
-
2009
- 2009-07-24 CN CN200910161520XA patent/CN101616015B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101035063A (zh) * | 2006-03-07 | 2007-09-12 | 华为技术有限公司 | 组播流转发方法及其路由器和系统 |
CN101227310A (zh) * | 2008-01-29 | 2008-07-23 | 华为技术有限公司 | 获取组播拓扑信息的方法、装置和系统 |
Non-Patent Citations (1)
Title |
---|
JP特开2007-6228A 2007.01.11 |
Also Published As
Publication number | Publication date |
---|---|
CN101616015A (zh) | 2009-12-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2017059708A1 (zh) | Bier信息的发送方法、接收方法及装置 | |
CN108063672B (zh) | 一种视频会议终端的管理方法和装置 | |
CN101616015B (zh) | 一种获取ip网络中组播拓扑信息的方法和装置 | |
CN101227310B (zh) | 获取组播拓扑信息的方法、装置和系统 | |
JP2009213120A (ja) | 端末装置及びn−ツリー構築方法 | |
Teranishi et al. | Scalable and locality-aware distributed topic-based pub/sub messaging for IoT | |
JP2004179811A (ja) | パケット中継装置 | |
US20090089408A1 (en) | XML Router and method of XML Router Network Overlay Topology Creation | |
CN102957589A (zh) | 业务数据传输的方法、网络节点及系统 | |
RU2009109194A (ru) | Система и способ для маршрутизации и поддержки системы доменных имен мобильного узла | |
JP3828898B2 (ja) | Cbt基盤オーバーレイマルチキャストのための方向性基盤cbt構成方法 | |
CN101800742B (zh) | 路由设备上游信息的更新处理方法、路由设备及网络系统 | |
CN102647312A (zh) | 一种整网组播拓扑的探测方法及装置 | |
CN101534252A (zh) | 管理请求的方法、以及关联的管理设备和网络设备 | |
CN101383757B (zh) | 组播路由方法、装置及系统、媒体网关和媒体网关控制器 | |
CN101800701A (zh) | 基于集中控制的组播路由控制方法 | |
WO2016131359A1 (zh) | 环型组网组播线路切换的方法及装置 | |
CN107454647A (zh) | 周期性路由信息的发送方法及装置 | |
CN102595248A (zh) | 组播转发表项维护方法及协议无关组播路由器 | |
CN1968275A (zh) | 利用自动树结构方式的应用层组播的媒体流传送系统及方法 | |
CN102263695A (zh) | 组播跨越ldp网络的方法及系统 | |
Tian et al. | Scalable Multicasting Over Next-generation Internet: Design, Analysis and Applications | |
US20180069830A1 (en) | Method and System for Reducing PIM Protocol DR Change | |
CN105337939A (zh) | 一种bgp逻辑拓扑生成的方法及装置 | |
CN106572050B (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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110810 Termination date: 20190724 |