实现二三层组播路径跟踪切换的方法、系统及路由器的制作方法

文档序号:7682601阅读:188来源:国知局
专利名称:实现二三层组播路径跟踪切换的方法、系统及路由器的制作方法
技术领域
本发明涉及组播领域,特别涉及实现二三层组播路径跟踪切换的方法、 系统及路由器。
背景技术
组播路径跟踪是指对组播数据接收者到组播源的完整组播转发路径进
行跟踪。现有的组播路由跟踪(Mtracert, Multicast Trace Route )是一种组 播路由协议的故障诊断工具,网络管理员通过该工具对网络上组播转发业务 进行故障分析、定位,实现组播路径跟踪。
目前,采用Mtracert能够实现三层组播路径跟踪,其采用的是IETF协 议标准draft-fenner-traceroute-ipm-01 .txt。三层组播^各径跟踪是指从直连组播 成员的最后 一跳路由器逆向跟踪到直连组播源的第 一跳路由器,从而得到组 播树的一条叶到根的路径。参见图1,图1为现有技术中的一种组播结构示 意图,其中,实线箭头表示的数据流部分为采用Mtracert实现三层组播路径 跟踪的实现流程。
查询装置A为安装有Mtracert工具的路由器或网管主机,网络管理员 在查询装置A上输入组播跟踪(mtrace)命令,要求对从组播数据接收者 PC4到组播源服务器(Server) 1的组播路径进行跟踪,该命令中包含Server 1的IP地址S (即源地址)、PC4的IP地址Dl (即目的地址)、以及PC4 所在组播组的地址G1。根据该命令,查询装置A向到达目的地址的最后一 跳路由器R5发送因特网用户组管理协议跟踪询问(IGMP Tracert Query )报 文,参见图2,图2为现有技术IGMP Tracert Query报文的结构示意图,IGMP Tracert Query报文包括长度为20字节的IP报文首部、IP选项、以及长度为24字节的内容部分,其中,IP选项可能有0个或多个。
路由器R5收到IGMP Tracert Query报文后,发起三层组播3各径跟踪。 具体操作过程为R5沿着到源地址的逆向组播路径向上一跳路由器R4发送 IGMP跟踪请求(IGMP Tracert Request)报文,该报文是通过修改IGMP Tracert Query报文内容部分中的IGMP类型(IGMP Type )字段、并在修改 后的IGMP Tracert Query报文后面增加本节点的IGMP Tracert Response data 形成的,其中,IGMP Tracert Response data中携带路由器R5的自身信息。 参见图3 ,图3为现有技术IGMP Tracert Response data的结构示意图。
R4收到R5发送的IGMP Tracert R叫uest报文后,在该报文后面增加包 含R4自身信息的IGMP Tracert Response data,形成新的IGMP Tracert Request报文,发送至R2。依次类推,当连接组播源Server 1的第 一跳路由 器Rl收到IGMP Tracert R叫uest报文后,则向查询装置A发送IGMP Tracert 响应(Response)冲艮文,该IGMP Tracert Response报文是通过》务改IGMP Tracert Request报文内容部分中的IGMP Type字段,并在修改后的IGMP Tracert R叫uest报文中增加本节点的IGMP Tracert Response data形成的,所 以包含有IGMP Tracert R叫uest报文传输过程中每个路由器所添加的IGMP Tracert Response data,向查询装置A报告由最后 一跳路由器R5到第 一跳路 由器R1的组播流量信息。
由上述过程看出,现有技术中的组播路径跟踪过程中,当最后一跳路由 器收到IGMP Tracert Query报文后,即向上一跳节点发送IGMP Tracert Request报文,发起组播路径跟踪;当第一跳路由器收到IGMP Tracert R叫uest 后,即向IGMP Tracert R叫uest指定的响应地址( 一般设为查询装置A)发 送IGMP Tracert Response报文,返回组播路径跟踪响应。最后一跳路由器 不向下游交换机透传IGMP Tracert Query报文,第 一跳路由器不向上游交换 机透传IGMP Tracert Request报文,因此不能实现二三层组播路径跟踪的切 换。

发明内容
本发明实施例提出两种实现二三层组播路径跟踪切换的方法、系统及路 由器,实现二三层组播路径跟踪的切换。
本发明的技术方案是这样实现的 一种实现二三层组播路径跟踪切换的方法,包括
查询装置判断是否执行二层组播路径跟踪,如果是,则在IGMP Tracert Query净艮文中添加二层组播^各径跟踪IP选项;
最后一跳路由器接收IGMP Tracert Query报文,判断所述报文是否包含 二层组播路径跟踪IP选项,如果包含,则向下游二层节点透传所述IGMP Tracert Query报文;如果不包含,则发起三层组播路径跟踪。
一种实现二三层组播路径跟踪切换的方法,包括
查询装置判断是否执行二层组播路径跟踪,如果是,则在IGMP Tracert Query报文中添加二层组播路径跟踪IP选项;
第一跳路由器接收由所述IGMP Tracert Query报文生成的IGMP Tracert R叫uest报文,判断所述IGMP Tracert Request报文是否包含二层组播路径跟踪 IP选项,如果包含,则在所述IGMP Tracert Request报文中增加本节点的因特 网用户组管理协议跟踪响应数据块(IGMP Tracert Response data),重新生成 IGMP Tracert Request才艮文,将重新生成的IGMP Tracert Request才艮文发送至上 游二层节点;如果不包含,则返回三层组播路径跟踪响应。
一种实现二三层组播路径跟踪切换的系统,包括
查询装置,用于判断是否执行二层组播路径跟踪,如果是,则在IGMP Tracert Query报文中添加二层组播路径跟踪IP选项;
最后一跳路由器,用于接收IGMP Tracert Query报文,判断所述报文是 否包含二层组播路径跟踪IP选项,如果包含,则向下游二层节点透传所述 IGMP Tracert Query报文;如果不包含,则发起三层组播路径跟踪。
一种路由器,其特征在于,所述路由器包括接收模块,用于接收IGMP Tracert Query报文;
判断模块,用于判断接收模块所接收的IGMP Tracert Query报文中是否包 含二层组播路径跟踪IP选项;
透传模块,用于当判断模块的判断结果为包含时,向下游二层节点透传所 述IGMP Tracert Query报文;
发起模块,用于当判断模块的判断结果为不包含时,发起三层组播路径跟踪。
一种实现二三层组播路径跟踪切换的系统,包括
查询装置,用于判断是否执行二层组播路径跟踪,如果是,则在IGMP Tracert Query报文中添加二层组播路径跟踪IP选项;
第一跳路由器,用于接收由所述IGMP Tracert Query报文生成的IGMP Tracert Request报文,判断所述IGMP Tracert Request报文是否包含二层组播路 径跟踪IP选项,如果包含,则在所述IGMP Tracert Request报文中增加本节点 的IGMP Tracert Response data,重新生成IGMP Tracert Request报文,将重新生 成的IGMP Tracert Request报文发送至上游二层节点;如果不包含,则返回三层 组^^各径^艮踪响应。
一种路由器,包括
接收模块,用于接收IGMP Tracert Request报文;
判断模块,用于判断接收模块所接收的IGMP Tracert Request报文中是否包 含二层组播路径跟踪IP选项;
透传模块,用于当判断模块的判断结果为包含时,在所述IGMP Tracert Request才艮文中增加本节点的IGMP Tracert Response data,重新生成IGMP Tracert Request报文,将重新生成的IGMP Tracert Request才艮文发送至上游二层
节点;
返回模块,用于当判断模块的判断结果为不包含时,返回三层组播路径 ^艮踪响应。
可见,本发明实施例提出的实现二三层组播路径跟踪切换的方法、系统及路由器,通过根据用户的选择、在组播IGMP Tracert Query报文中添加或 不添加二层组播路径跟踪IP选项,使得最后一跳路由器或第一跳路由器在 接收到組播路径跟踪过程中的报文时,可以通过判断报文中是否包含二层组 播路径跟踪IP选项来决定是否执行二层组播路径跟踪,从而实现了二三层 组播路径跟踪的切换。


图1为现有技术中的一种組播结构示意图2为现有技术IGMP Tracert Query报文的结构示意图3为现有技术IGMP Tracert Response data的结构示意图4为现有技术IP Traceroute选项的结构示意图5为本发明实施例二层组播路径跟踪IP选项的结构示意图。
具体实施例方式
本发明实施例提出 一种实现二三层组播路径跟踪切换的方法,使最后一 跳路由器接收到IGMP Tracert Query报文后,通过判断IGMP Tracert Query 报文中是否携带有表示进行二层组播路径跟踪的信息,从而决定是透传 IGMP Tracert Query报文、还是发起三层组播路径跟踪;或者,使第一跳路 由器接收到IGMP Tracert R叫uest报文后,通过判断IGMP Tracert R叫uest 报文中是否携带有表示进行二层组播路径跟踪切换信息,从而决定是向上层 节点发送IGMP Tracert Query报文、还是返回三层组播路径跟踪响应。
本发明实施例定义一种二层组播路径跟踪IP选项,用于实现二三层组 播路径跟踪切换。该二层组播路径跟踪IP选项可以复用现有技术中已有的 IP组播路径跟踪(Traceroute )选项,该IP Traceroute选项的长度为12字节, 参见图4,图4为现有技术IP Traceroute选项的结构示意图。其中,IP Traceroute选项包括
F字段(表示是否复制到分片中)=0 (表示"否");C字段(表示该IP选项的分类)=2 (表示"调试&测量"); 序号(Number)字段(表示该IP选项的序号)=18; 长度(Length)字段(表示该IP选项的长度,单位为字节)=12; 值(Value)字段(表示该IP选项携带的值)。
本发明实施例定义的二层组播路径跟踪IP选项可以复用上述已有的IP Traceroute选项,二层组播路径跟踪IP选项的长度可以定为4字节。参见图 5,图5为本发明实施例二层组播路径跟踪IP选项的结构示意图。其中,二 层组播路径跟踪IP选项包括
F字段(表示是否复制到分片中)=0 (表示"否"); C字段(表示该IP选项的分类)=2 (表示"调试&测量',); 序号(Number)字段(表示该IP选项的序号)=18; 长度(Length)字段(表示该IP选项的长度,单位为字节)=4; 值(Value)字段(表示该IP选项携带的值)=0 (表示执行二层组播路 径跟踪)。
本发明实施例定义的二层组播路径跟踪IP选项的Number字段与现有
当然,本发明实施例并不限制二层组播路径跟踪IP选项复用现有的IP Traceroute选项,也可以复用现有的其它IP选项、或者定义新的IP选项; 并且不限制二层组播路径跟踪IP选项的长度及取值等。只要定义出一种二 层组播路径跟踪IP选项,使得最后一跳交换机、或者第一跳交换机收到携 带该二层组播路径跟踪IP选项的报文后,能够执行相应操作,从而实现二
三层组播路径跟踪切换即可。本领域技术人员容易想到其他结构的二层组播 i 各径S艮踪IP选项,在此不再——赘述。
现有技术中,用户在查询装置上输入mtmce命令后,查询装置生成IGMP Tracert Query报文,要求进行组播路径跟踪。本发明实施例可以利用该IGMP Tracert Query报文,当用户选择进行二层组播路径跟踪时,则在IGMP Tracert Query报文中添加上文所述的二层组播路径跟踪IP选项。即查询装置判断是否执行二层组播路径跟踪,如果是,则在IGMP Tracert Query报文中添加 二层组4番路径跟踪IP选项;
IGMP Tracert Query报文传输至最后一跳路由器时,最后一跳路由器接收 IGMP Tracert Query报文,判断所述报文是否包含二层组播路径跟踪IP选项, 如果包含,则向下游二层节点透传所述IGMP Tracert Query报文;如果不包含, 则发起三层组播路径跟踪。此处所述的发起三层组播路径跟踪为向上游节点 发送IGMP Tracert Request报文
或者,由IGMP Tracert Query报文生成的IGMP Tracert R叫uest报文传输至 第一跳路由器时,第一跳路由器接收IGMP Tracert R叫uest报文,判断所述IGMP Tracert Request纟良文是否包含二层组播路径^艮踪IP选项,如果包含,则重新生 成IGMP Tracert R叫uest 4艮文,将重新生成的IGMP Tracert R叫uest 4艮文发送至 上游二层节点;如果不包含,则返回三层组播路径跟踪响应。此处所述的返回 三层组〗番路径跟踪响应为向IGMP Tracert R叫uest指定的响应地址( 一般设为 查询装置A)发送IGMP Tracert Response报文。
可见,通过上述方式,可以在查询装置生成IGMP Tracert Query后,判 断是否执行二层组播路径跟踪,如果执行,则在IGMP Tracert Query报文中 添加二层组播路径跟踪IP选项。后续最后一跳路由器或第一跳路由器收到 报文后,即可以根据该报文中是否包含二层组播路径跟踪IP选项来实现二 三层组播路径跟踪切换。
本发明实施例还提出实现二三层组播路径跟踪切换的系统,包括
查询装置,用于判断是否执行二层组播路径跟踪,如果是,则在IGMPTracert Query才艮文中添加二层组插J各径跟踪IP选项;
最后一跳路由器,用于接收IGMP Tracert Query报文,判断所述报文是否 包含二层组播路径跟踪IP选项,如果包含,则向下游二层节点透传所述IGMP Tracert Query报文;如果不包含,则发起三层組播路径跟踪。
本发明实施例还提出一种路由器,包括
接收模块,用于接收IGMP Tracert Query报文;判断模块,用于判断接收模块所接收的IGMP Tracert Query报文中是否包 含二层组播路径跟踪IP选项;
透传模块,用于当判断模块的判断结果为包含时,向下游二层节点透传所 述IGMP Tracert Query报文;
发起模块,用于当判断模块的判断结果为不包含时,发起三层组播路径跟踪。
本发明实施例还提出另 一种实现二三层组播路径跟踪切换的系统,包括
查询装置,用于判断是否执行二层组播路径跟踪,如果是,则在IGMP Tracert Query才艮文中添加二层组播路径跟踪IP选项;
第一跳路由器,用于接收由所述IGMP Tracert Query报文生成的IGMP Tracert Request报文,判断所述IGMP Tracert Request报文是否包含二层组播路 径跟踪IP选项,如果包含,则在所述IGMP Tracert R叫uest报文中增加本节点 的IGMP Tracert Response data,重新生成IGMP Tracert Request才艮文,将重新生 成的IGMP Tracert Request报文发送至上游二层节点;如果不包含,则返回三层 组播路径跟踪响应。
本发明实施例还提出另一种路由器,包括
接收模块,用于接收IGMP Tracert Request报文;
判断模块,用于判断接收模块所接收的IGMP Tracert Request报文中是否包 含二层组播路径跟踪IP选项;
透传模块,用于当判断模块的判断结果为包含时,在所述IGMP Tracert Request报文中增加本节点的IGMP Tracert Response data,重新生成IGMP Tracert Request报文,将重新生成的IGMP Tracert Request报文发送至上游二层
节点;
返回模块,用于当判断模块的判断结果为不包含时,返回三层组播路径跟 踪响应。
可见,本发明实施例提出的方法、系统及路由器,定义了二层组播路径 跟踪IP选项,最后一跳路由器、或者第一跳路由器通过判断接收的报文中是否包含该二层组播路径跟踪IP选项,可以实现二三层组播的跟踪切换。
综上所述,以上仅为对本发明精神的展示,而非用于限制本发明的保护范 围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均 应包含在本发明的保护范围之内。
权利要求
1、一种实现二三层组播路径跟踪切换的方法,其特征在于,所述方法包括查询装置判断是否执行二层组播路径跟踪,如果是,则在因特网用户组管理协议跟踪询问IGMP Tracert Query报文中添加二层组播路径跟踪IP选项;最后一跳路由器接收IGMPTracert Query报文,判断所述报文是否包含二层组播路径跟踪IP选项,如果包含,则向下游二层节点透传所述IGMP TracertQuery报文;如果不包含,则发起三层组播路径跟踪。
2、 根据权利要求1所述的方法,其特征在于,所述二层组播路径跟踪IP 选项的序号字段与IP组播路径跟踪Traceroute选项的序号字段相同。
3、 根据权利要求1所述的方法,其特征在于,所述发起三层组播路径跟踪 包括向上游节点发送IGMP Tracert请求R叫uest报文。
4、 一种实现二三层组播路径跟踪切换的方法,其特征在于,所述方法包括 查询装置判断是否执行二层组播路径跟踪,如果是,则在IGMP TracertQuery报文中添加二层组播路径跟踪IP选项;第一跳路由器接收由所述IGMP Tracert Query报文生成的IGMP Tracert Request报文,判断所述IGMP Tracert Request纟艮文是否包含二层组播路径跟踪 IP选项,如果包含,则在所述IGMP Tracert Request报文中增加本节点的因特 网用户组管理协议跟踪响应lt据块IGMP Tracert Response data,重新生成IGMP Tracert Request报文,将重新生成的IGMP Tracert Request才艮文发送至上游二层 节点;如果不包含,则返回三层组播路径跟踪响应。
5、 根据权利要求4所述的方法,其特征在于,所述二层组播路径跟踪IP 选项的序号字段与IP组播J各径跟踪Traceroute选项的序号字4殳相同。
6、 根据权利要求4所述的方法,其特征在于,所述返回三层组播路径跟踪 响应包括向所述IGMP Tracert Request才艮文中指定的响应地址发送IGMP Tracert Response才艮文。
7、 一种实现二三层组播路径跟踪切换的系统,其特征在于,所述系统包括查询装置,用于判断是否执行二层组播路径跟踪,如果是,则在IGMP Tracert Query报文中添加二层组播路径跟踪IP选项;最后一跳路由器,用于接收IGMP Tracert Query报文,判断所述报文是否 包含二层组播路径跟踪IP选项,如果包含,则向下游二层节点透传所述IGMP Tracert Query报文;如果不包含,则发起三层组播路径跟踪。
8、 一种路由器,其特征在于,所述路由器包括 接收模块,用于接收IGMP Tracert Query报文;判断模块,用于判断接收模块所接收的IGMP Tracert Query报文中是否包 含二层组〗番路径跟踪IP选项;透传模块,用于当判断模块的判断结果为包含时,向下游二层节点透传所 述IGMP Tracert Query才艮文;发起模块,用于当判断模块的判断结果为不包含时,发起三层组播路径跟踪。
9、 一种实现二三层组播路径跟踪切换的系统,其特征在于,所述系统包括 查询装置,用于判断是否执行二层组播路径跟踪,如果是,则在IGMP TracertQuery才艮文中添加二层组播路径跟踪IP选项;第一跳路由器,用于接收由所述IGMP Tracert Query报文生成的IGMP Tracert Request报文,判断所述IGMP Tracert Request报文是否包含二层组播路 径跟踪IP选项,如果包含,则在所述IGMP Tracert R叫uest报文中增加本节点 的IGMP Tracert Response data,重新生成IGMP Tracert Request *艮文,将重新生 成的IGMP Tracert Request报文发送至上游二层节点;如果不包含,则返回三层 组播J各径跟踪响应。
10、 一种路由器,其特征在于,所述路由器包括 接收模块,用于接收IGMP Tracert Request报文;判断模块,用于判断接收模块所接收的IGMP Tracert Request报文中是否包 含二层组播路径跟踪IP选项;透传模块,用于当判断模块的判断结果为包含时,在所述IGMP TracertRequest报文中增加本节点的IGMP Tracert Response data,重新生成IGMPTracert Request报文,将重新生成的IGMP Tracert Request才艮文发送至上游二层节点;返回模块,用于当判断模块的判断结果为不包含时,返回三层组播路径跟踪响应。
全文摘要
本发明提出实现二三层组播路径跟踪切换的方法、系统及路由器,其中一种方法包括查询装置判断是否执行二层组播路径跟踪,如果是,则在因特网用户组管理协议跟踪询问(IGMP Tracert Query)报文中添加二层组播路径跟踪IP选项;最后一跳路由器接收IGMP Tracert Query报文,判断所述报文是否包含二层组播路径跟踪IP选项,如果包含,则向下游二层节点透传所述IGMPTracert Query报文;如果不包含,则发起三层组播路径跟踪。本发明提出的方法、系统及路由器能够实现二三层组播路径跟踪的切换。
文档编号H04L12/56GK101483582SQ20081000270
公开日2009年7月15日 申请日期2008年1月9日 优先权日2008年1月9日
发明者军 潘 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1