CN102739462B - 一种测试报文的发送方法以及装置 - Google Patents

一种测试报文的发送方法以及装置 Download PDF

Info

Publication number
CN102739462B
CN102739462B CN201110088580.0A CN201110088580A CN102739462B CN 102739462 B CN102739462 B CN 102739462B CN 201110088580 A CN201110088580 A CN 201110088580A CN 102739462 B CN102739462 B CN 102739462B
Authority
CN
China
Prior art keywords
routing device
test packet
routing
ttl
setting identification
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
Application number
CN201110088580.0A
Other languages
English (en)
Other versions
CN102739462A (zh
Inventor
黄璐
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Mobile Communications Group Co Ltd
Original Assignee
China Mobile Communications Group Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Mobile Communications Group Co Ltd filed Critical China Mobile Communications Group Co Ltd
Priority to CN201110088580.0A priority Critical patent/CN102739462B/zh
Publication of CN102739462A publication Critical patent/CN102739462A/zh
Application granted granted Critical
Publication of CN102739462B publication Critical patent/CN102739462B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开了一种测试报文的发送方法以及装置,主要包括:第一路由设备接收由源主机发送或由第二路由设备转发的来自源主机的第一测试报文;第一路由设备确定到达第一测试报文携带的目的主机地址的路由网段被添加设定标识;第一路由设备在确定第一测试报文满足携带的TTL大于1、且作为第一路由设备下一跳的第三路由设备可达的转发条件时,将第一测试报文转发给第三路由设备;第一路由设备在确定第一测试报文携带的TTL大于1、且作为第一路由设备下一跳的第三路由设备不可达时,丢弃第一测试报文。采用该技术方案进行测试报文的发送,源主机能够定位出路由路径上的故障位置。

Description

一种测试报文的发送方法以及装置
技术领域
本发明涉及网络通信技术领域,尤其涉及一种测试报文的发送方法以及装置。
背景技术
随着信息通信技术的飞速发展,计算机网络已经成为人们不可或缺的一部分。一旦网络通讯发生故障,可能导致工作陷入瘫痪状态,使人们的工作和生活蒙受损失。因此,当网络发生故障时,如何快速有效的定位出故障位置,一直是业界探求和期待解决的问题。
路由追踪(Traceroute)技术常用来检测数据报文从源主机到目的主机所经过的路由路径,以及检测到达目的主机地址的路由路径是否可达。目前,Traceroute技术主要通过源主机向目的主机发送测试报文的方式检测源主机到目的主机的路由路径,所使用的测试报文可以为目的端口号异常的用户数据包协议(User Datagram Protocol,简称UDP)数据报文(如设置目的端口号超大),也可以是控制报文协议(Internet Control Message Protocol)Internet,简称ICMP)应答请求报文。以下结合图1对通过Traceroute技术检测源主机到目的主机的路由路径的主要过程进行说明,该图1示出了源主机1到目的主机2之间的路由路径,假设目的主机对应的IP地址为1.1.1.1,从源主机1到目的主机2要经历的路由设备包括:路由设备A、路由设备B、路由设备C以及路由设备D,其中,路由设备A中保存的指向目的主机的路由表的下一跳为路由设备B,路由设备B中保存的指向目的主机的路由表的下一跳为路由设备C,路由设备C中保存的指向目的主机的路由表的下一跳为路由设备D。
如图2所示,检测源主机1到目的主机2之间的路由路径,主要包括如下步骤:
步骤201、源主机1发送一个生存时间(Time To Live,简称TTL)为1的测试报文给目的主机2。
步骤202、处理该测试报文的第一个路由设备A接收该测试报文后,将该测试报文中携带的TTL减1得到TTL为0的测试报文,丢弃该测试报文,并向源主机1发送TTL超时的ICMP报文。
步骤203、源主机1根据路由设备A发送的TTL超时的ICMP报文,获得该路由设备A的地址。
步骤204、源主机1保存路由设备A的地址,并向路由设备A发送一个TTL为2的测试报文,获得路由设备B的地址。
该步骤204中,测试报文到达路由设备A后,路由设备A将该测试报文的TTL减1得到TTL为1的测试报文,该路由设备A根据保存的路由表将该TTL为1的测试报文转发给路由设备B;路由设备B接收该TTL为1的测试报文后,将该测试报文的TTL减1得到TTL为0的测试报文,丢弃该测试报文,并发送一个TTL超时的ICMP报文,该TTL超时的ICMP报文通过路由设备A到达源主机1,源主机1根据路由设备B发送的该TTL超时的ICMP报文,获得该路由设备B的地址。
步骤205、源主机1保存路由设备B的地址,并向路由设备A发送一个TTL为3的测试报文,获得路由设备C的地址。
该步骤205的具体处理过程与上述步骤204的具体处理过程基本相同,即测试报文到达路由设备A后,路由设备A将该测试报文的TTL减1得到TTL为2的测试报文,该路由设备A根据保存的路由表将该TTL为2的测试报文转发给路由设备B;路由设备B接收该TTL为2的测试报文后,将测试报文的TTL减1得到TTL为1的测试报文,该路由设备B进一步根据保存的路由表将该TTL为1的测试报文转发给路由设备C;路由设备C接收该TTL为1的测试报文后,将该测试报文的TTL减1得到TTL为0的测试报文,路由设备C丢弃该测试报文,并发送一个TTL超时的ICMP报文,该TTL超时的ICMP报文通过路由设备B、路由设备A到达源主机1,源主机1根据路由设备C发送的TTL超时的ICMP报文,获得路由设备C的地址。
步骤206、源主机1保存获得的路由设备C的地址,向路由设备A发送一个TTL为4的测试报文,获得路由设备D的地址。
该步骤206的具体处理过程与上述步骤204的具体处理过程基本相同,即测试报文到达路由设备A后,路由设备A将该测试报文的TTL减1得到TTL为3的测试报文,该路由设备A根据保存的路由表将该TTL为3的测试报文转发给路由设备B;路由设备B接收该TTL为3的测试报文后,将该测试报文的TTL减1得到TTL为2的测试据报文,该路由设备B根据保存的路由表将该TTL为2的测试报文转发给路由设备C;路由设备C接收该TTL为2的测试报文后,将该测试报文的TTL减1得到TTL为1的测试报文,该路由设备C根据保存的路由表将该TTL为1的测试报文转发给路由设备D;路由设备D接收该TTL为1的测试报文后,将该测试报文的TTL减1得到TTL为0的测试报文,路由设备D丢弃该测试报文,并发送一个TTL超时的ICMP报文,该TTL超时的ICMP报文通过路由设备C、路由设备B、路由设备A到达源主机1后,源主机1根据路由设备D发送的该TTL超时的ICMP报文,获得路由设备D的地址。
步骤207、源主机1保存路由设备D的地址,向路由设备A发送一个TTL为5的测试报文到目的主机2,并接收目的主机2针对接收到的测试报文的反馈信息。
该步骤207中,若测试报文为端口号超大的UDP数据报文,则目的主机2接收到该报文后,由于目的主机的任何一个应用程序都没有使用该端口号,目的主机会产生端口不可达的错误的ICMP报文作为反馈信息发送给源主机1;若测试报文为ICMP应答请求报文,目的主机2接收到该报文后,向源主机1发送一个正常的ICMP应答报文。
通过上述流程,源主机1可以保存到达目的主机2的路由路径上各路由设备的地址,从而确定数据报文到达目的主机2的路由路径。
在IP路由网络中,当出现链路故障(或其它故障)导致到达某个目的主机地址的路由路径不可达时,该路由路径会在全网失效,源主机可以通过Traceroute技术检测该路由路径是否可达。具体地,假设图1中的路由设备D出现故障,则路由设备C会在全网发布路由失效消息,接收到路由失效消息的各路由设备(如路由设备A以及路由设备B)将路由表中指向该目的主机地址的路由网段设置为失效,这样,当源主机1需要检测到目的地址2的路由路径是否可达时,会发送检测报文到目的主机2,由于指向该报文的目的地址的路由网段被设置为无效,则路由设备A会将该检测报文直接丢弃,而不会进行后续转发,也不会向源主机1反馈相应的信息,在这种情况下,源主机1在设定时长内未收到路由设备A反馈的信息,则确定到目的主机2的路由路径不可达。
根据上述技术方案,源主机1只能检测出到达目的主机2的路由路径不可达,但无法检测出故障位置具体出现在路由路径的哪个链路,因此,源主机无法定位出路由路径上发生故障的位置。
发明内容
有鉴于此,本发明实施例提供一种测试报文的发送方法以及装置,采用该技术方案进行测试报文的发送,源主机能够定位出路由路径上的故障位置。
本发明实施例通过如下技术方案实现:
根据本发明实施例的一个方面,提供了一种测试报文的发送方法,包括:
第一路由设备接收由源主机发送或由第二路由设备转发的来自所述源主机的第一测试报文;其中,若所述第一测试报文由所述第二路由设备转发,则所述第一测试报文是所述源主机在接收到所述第一路由设备针对与所述第一测试报文具有相同目的主机地址的第二测试报文反馈的生存时间TTL超时的报文响应后发送的;
第一路由设备确定到达所述第一测试报文携带的目的主机地址的路由网段被添加设定标识,其中,所述设定标识用于指示通过所述路由网段到达的目的主机地址不可达、且用于指示所述第一测试报文在满足转发条件时继续被转发;
第一路由设备在确定所述第一测试报文满足携带的TTL大于1、且作为所述第一路由设备下一跳的第三路由设备可达的转发条件时,将所述第一测试报文转发给所述第三路由设备;
第一路由设备在确定所述第一测试报文携带的TTL大于1、且作为所述第一路由设备下一跳的第三路由设备不可达时,丢弃所述第一测试报文。
根据本发明实施例的另一个方面,还提供了一种测试报文的发送装置,包括:
测试报文接收单元,用于接收由源主机发送或由第二路由设备转发的来自所述源主机的第一测试报文;其中,若所述第一测试报文由所述第二路由设备转发,则所述第一测试报文是所述源主机在接收到第一路由设备针对与所述第一测试报文具有相同目的主机地址的第二测试报文反馈的生存时间TTL超时的报文响应后发送的;
设定标识识别单元,用于确定到达所述第一测试报文携带的目的主机地址的路由网段被添加设定标识,其中,所述设定标识用于指示通过所述路由网段到达的目的主机地址不可达、且用于指示所述第一测试报文在满足转发条件时继续被转发;
测试报文处理单元,用于在确定所述第一测试报文满足携带的TTL大于1、且作为所述第一路由设备下一跳的第三路由设备可达的转发条件时,将所述第一测试报文转发给所述第三路由设备;以及,在确定所述第一测试报文携带的TTL大于1、且作为所述第一路由设备下一跳的第三路由设备不可达时,丢弃所述第一测试报文。
根据本发明实施例的另一个方面,还提供了一种包括上述测试报文的发送装置的路由设备。
通过本发明实施例提供的上述至少一个技术方案,第一路由设备接收由源主机发送或由第二路由设备转发的来自该源主机的第一测试报文后,确定到达该第一测试报文携带的目的主机地址的路由网段被添加设定标识,其中,该设定标识用于指示通过该路由网段到达的目的主机地址不可达、且用于指示该第一测试报文在满足转发条件时继续被转发,第一路由设备在确定该第一测试报文满足携带的TTL大于1、且作为该第一路由设备下一跳的第三路由设备可达的转发条件时,将该第一测试报文中转发给第三路由设备,第一路由设备在确定该第一测试报文携带的TTL大于1、且作为该第一路由设备下一跳的第三路由设备不可达,则丢弃该第一测试报文。该技术方案与现有技术给出的当出现目的主机地址不可达时接收到源主机发送的测试报文的第一个路由设备直接丢弃该测试报文的方案相比,本发明技术方案能够在目的主机地址不可达、且该第一测试报文的TTL大于1、下一跳路由设备可达时,继续转发该第一测试报文,在该第一测试报文的TTL大于1且下一跳路由设备不可达时,才丢弃该第一测试报文,此时,由于第一测试报文在TTL大于1的情况下被丢弃,源主机将无法接收到针对该第一测试报文的TTL超时的报文响应,如果该第一测试报文由源主机发送,则可以确定作为该源主机之后第一跳的第一路由设备与其下一跳路由设备之间的链路出现故障;如果该第一测试报文由第二测试报文转发,由于该第一测试报文是源主机在接收到第一路由设备针对与该第一测试报文具有相同目的主机地址的第二测试报文反馈的TTL超时的报文响应后发送的,即表示第一路由设备之前的链路都正常,从而源主机能够确定该第一路由设备与其下一跳路由设备之间的链路出现故障。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1为背景技术提供的通过Traceroute技术检测源主机到目的主机的路由路径的示意图;
图2为背景技术提供的检测源主机1到目的主机2之间的路由路径的流程图;
图3为本发明实施例一提供的测试报文的发送流程图;
图4为本发明实施例一提供的为该不可达路由设备添加设定标识的流程图;
图5为本发明实施例一提供的利用traceroute定位故障点的流程图;
图6为本发明实施例二提供的一个测试报文的发送装置示意图;
图7为本发明实施例二提供的又一个测试报文的发送装置示意图;
图8为本发明实施例二提供的又一个测试报文的发送装置示意图。
具体实施方式
为了给出源主机能够定位出路由路径上的故障位置的实现方案,本发明实施例提供了一种测试报文的发送方法以及装置,以下结合说明书附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本发明各实施例中的路由网段,指路由表项中的该路由设备可达的目的IP网段,是一个地址区间。通常一个路由表项包括目的IP网段、下一跳地址、cost、优先级等信息,用于决定路由器的报文转发。
实施例一
本发明实施例一提供了一种测试报文的发送方法,该测试报文的发送方法可以在路由设备中实施,通过在路由设备中实施该测试报文的发送方法,能够使源主机确定出路由路径上的故障位置。
如图3所示,本发明实施例一提供的测试报文的发送流程,主要包括如下步骤:
步骤301、第一路由设备接收由源主机发送或由第二路由设备转发的来自所述源主机的第一测试报文。
该步骤中,如果该第一测试报文由第二路由设备转发,则该第一测试报文是源主机在接收到第一路由设备针对与该第一测试报文具有相同目的主机地址的第二测试报文反馈的TTL超时的报文响应后发送的。
步骤302、第一路由设备确定到达该第一测试报文携带的目的主机地址的路由网段被添加设定标识。
该步骤中,设定标识用于指示通过被添加设定标识的路由网段到达的目的主机地址不可达、且用于指示该第一测试报文在满足转发条件时继续被转发。
步骤303、判断该第一测试报文是否满足转发条件,如果是,执行步骤304,如果否,执行步骤305。
该步骤中,第一测试报文满足转发条件,即该第一测试报文满足携带的TTL大于1、且作为该第一路由设备下一跳的第三路由设备可达的转发条件。
步骤304、将该第一测试报文转发给第三路由设备。
该步骤中,第一测试报文转发给第三路由设备后,该第三路由设备采用与该第一路由设备采用的处理方式相同的方式对该第一测试报文进行处理,确定继续转发该第一测试报文或丢弃。
步骤305、丢弃该第一测试报文。
该步骤305中,不满足转发条件的一种情形为:该第一测试报文携带的TTL大于1、且作为第一路由设备下一跳的第三路由设备不可达,在该情况下,第一路由设备需要丢弃该第一测试报文,至此,对第一测试报文的发送流程结束。
本发明实施例提供的技术方案中,不满足转发条件的另一种情形为:该第一测试报文携带的TTL等于1,在该情况下,第一路由设备需要丢弃该第一测试报文,并向源主机反馈TTL超时的报文响应。
以上主要针对路由设备侧对测试报文的处理流程进行了描述,根据本发明实施例提供的上述技术方案,路由设备在进行测试报文的转发时,如果识别出到达测试报文的目的地址的路由网段被添加了设定标识,根据该设定标识确定通过该被添加设定标识的路由网段到达的目的主机地址不可达,该第一路由设备仍按照正常流程对该测试报文进行处理,即在该测试报文满足转发条件时继续转发该测试报文,与现有技术第一个接收到该测试报文的路由设备确定目的主机地址不可达直接丢弃测试报文的方案相比,本发明技术方案能够通过对该测试报文的转发确定出路由路径上的故障位置,即在目的主机地址不可达、且该第一测试报文的TTL大于1、下一跳路由设备可达时,继续转发该第一测试报文,在该第一测试报文的TTL大于1且下一跳路由设备不可达时,才丢弃该第一测试报文,此时,由于第一测试报文在TTL大于1的情况下被丢弃,源主机将无法接收到针对该第一测试报文的TTL超时的报文响应,如果该第一测试报文由源主机发送,则可以确定作为该源主机之后第一跳的第一路由设备与其下一跳第三路由设备之间的链路出现故障;如果该第一测试报文由第二测试报文转发,由于该第一测试报文是源主机在接收到第一路由设备针对与该第一测试报文具有相同目的主机地址的第二测试报文反馈的TTL超时的报文响应后发送的,即表示第一路由设备之前的链路都正常,从而源主机能够确定该第一路由设备与其下一跳第三路由设备之间的链路出现故障。
以下结合图4对本发明实施例中对于不可达路由设备添加设定标识的过程进行说明。
如图4所示,在第一路由设备确定下一跳的第三路由设备不可达时,为通过第三路由设备到达的目的主机地址所对应的路由网段添加设定标识的流程,主要包括如下步骤:
步骤401、第一路由设备在路由表中为通过第三路由设备到达的目的主机地址所对应的路由网段添加设定标识。
步骤402、第一路由设备向到达目的主机地址的路由路径上的各路由设备转发被添加设定标识的路由网段信息。
通过该步骤402,接收到被添加设定标识的路由网段信息的各路由设备会在各自路由表中保存该被添加设定标识的路由网段信息,实际应用中,该信息也可以不保存在路由表中而进行单独存储。
该步骤402中,第一路由设备向到达该目的主机地址的路由路径上的各路由设备转发被添加设定标识的路由网段信息的过程,主要由第一路由设备向其上一跳的第二路由设备发送该被添加设定标识的路由网段信息,然后由第二路由设备继续向其上一跳的路由设备转发。
至此,流程结束。
上述流程中,设定标识主要用于标识通过被添加设定标识的路由网段到达的目的主机地址不可达、且用于指示接收到测试报文的路由设备在该测试报文满足转发条件时继续转发该测试报文,该设定标识可以在测试报文的发送端以及接收端进行协商确定,或者由统一的管理设备确定,然后在全网内的路由设备之间发布该设定标识,以使各路由设备在识别出该设定标识后,可以确定被添加该设定标识的路由设备不可达、但与现有直接丢弃测试报文的处理方式不同,需要按照正常流程继续转发该测试报文。一个具体的实现方式中,为了减少对协议的更改,该设定标识可以设置为最大开销cost值,上述步骤402中,第一路由设备向该路由路径上的各路由设备转发被添加设定标识的路由网段信息的格式可以为(路由网段,最大cost值)。应当理解,此处对于添加设定标识的路由网段信息的格式仅为一个举例,实际应用中,可以灵活设定。
图4对应的流程通常由存在路由故障的路由设备的上一跳路由设备执行,并且为了成功确定出路由路径上的故障位置,上述流程可以在第一路由设备接收由源主机发送或由第二路由设备转发的来自源主机的第一测试报文之前执行。
根据本发明实施例提供的上述流程,在路由设备出现故障时,该路由设备的上一跳路由设备能够及时通知全网内的路由设备更新路由表(在路由表中保存被添加设定标识的路由网段信息),以在设备检测时及时检测出该出现故障的路由设备。
进一步地,在故障路由被修复后,第一路由设备还可以进行设定标识的删除,即该第一路由设备为通过第三路由设备到达的目的主机地址所对应的路由网段添加设定标识,以及向路由路径上的各路由设备转发被添加设定标识的路由网段信息后,还进一步执行如下步骤:
第一路由设备在确定作为第一路由设备下一跳的第三路由设备可达时,删除为通过该第三路由设备到达的目的主机地址所对应的路由网段添加的设定标识,并向路由路径上的各路由设备转发删除该被添加设定标识的路由网段信息的指示,用于指示各路由设备将路由表中被添加设定标识的路由网段信息删除。
根据本发明实施例提供的上述流程,在路由设备的故障恢复后,该路由设备的上一跳路由设备能够及时通知全网内的路由设备更新路由表(删除保存的被添加的设定标识的路由网段信息),以使该路由设备在故障恢复后及时投入使用,提高设备的利用率。
本发明实施例中涉及的测试报文主要用于检测路由路径上的故障位置,该测试报文可以为目的端口号异常的UDP数据报文,也可以为ICMP应答请求报文。
为了更好地理解本发明实施例一提供的上述技术方案,该实施例一还给出了结合具体应用场景进行测试报文转发的流程,具体如下:
该具体应用场景采用图1所示的应用场景,即目的主机对应的IP地址为1.1.1.1,从源主机1到目的主机2要经历的路由设备包括:路由设备A、路由设备B、路由设备C以及路由设备D,其中,路由设备A中保存的指向目的主机的路由表的下一跳为路由设备B,路由设备B中保存的指向目的主机的路由表的下一跳为路由设备C,路由设备C中保存的指向目的主机的路由表的下一跳为路由设备D。
假设路由设备D出现故障,即路由设备C和路由设备D之间的链路不可达时,则作为该路由设备D上一跳的路由设备C会发送携带设定标识的路由网段信息(如最大cost值的路由网段信息)。假设对应目的主机地址1.1.1.1的路由网段为1.0.0.0/8,则路由设备C向全网发布(1.0.0.0/8,cost=最大值)的信息。
收到添加了设定标识的路由网段信息的路由设备(图1中的路由设备A、路由设备B),该路由设备A和路由设备B在后续转发测试报文时,若确定到达测试报文目的地址的路由网段被添加了设定标识,则对测试报文进行正常转发处理,若测试报文的TTL=1,则接收到测试报文的路由设备A或B丢弃测试报文,并向源主机发送一份TTL超时的报文响应,若TTL>1,则接收到测试报文的路由设备A或B转发该测试报文到下一跳;对于其他非测试报文的正常的数据报文按丢弃处理(避免普通数据流量进行无效的转发)。
当测试报文到达直连下一跳路由设备已失效的路由设备C时,若TTL=1,则路由设备C向源主机回应TTL超时的报文响应,若TTL>1,则该路由设备C丢弃该测试报文。
结合上述应用场景利用traceroute定位故障点的过程,如图5所示,主要包括:
步骤501、源主机1发送TTL=1的测试报文,并接收路由设备A针对该测试报文反馈的报文响应。
该步骤中,测试报文到达路由设备A后,路由设备A将该测试报文中携带的TTL减1得到TTL为0的测试报文,丢弃该测试报文,并向源主机1发送TTL超时的ICMP报文。
步骤502、源主机1收到路由设备A发送的报文响应后,向路由设备A发送一个TTL为2的测试报文,并接收路由设备B针对该测试报文反馈的报文响应。
该步骤中,测试报文到达路由设备A后,路由设备A将该测试报文的TTL减1得到TTL为1的测试报文,该路由设备A根据保存的路由表将该TTL为1的测试报文转发给路由设备B,路由设备B将该测试报文中携带的TTL减1得到TTL为0的测试报文,丢弃该测试报文,并向源主机1发送TTL超时的ICMP报文。
步骤503、源主机1收到路由设备B发送的报文响应后,向路由设备A发送一个TTL为3的测试报文,并接收路由设备C针对该测试报文反馈的报文响应。
该步骤中,测试报文到达路由设备A后,路由设备A将该测试报文的TTL减1得到TTL为2的测试报文,该路由设备A根据保存的路由表将该TTL为2的测试报文转发给路由设备B;路由设备B接收该TTL为2的测试报文后,将测试报文的TTL减1得到TTL为1的测试报文,该路由设备B进一步根据保存的路由表将该TTL为1的测试报文转发给路由设备C;路由设备C接收该TTL为1的测试报文后,将该测试报文的TTL减1得到TTL为0的测试报文,路由设备C丢弃该测试报文,并向源主机1发送一个TTL超时的ICMP报文。
步骤504、源主机1收到路由设备C发送的报文响应后,向路由设备A发送一个TTL为4的测试报文,在设定时间内未收到针对该测试报文的报文响应,确定路由设备出现故障。
测试报文到达路由设备A后,路由设备A将该测试报文的TTL减1得到TTL为3的测试报文,该路由设备A根据保存的路由表将该TTL为3的测试报文转发给路由设备B;路由设备B接收该TTL为3的测试报文后,将该测试报文的TTL减1得到TTL为2的测试据报文,该路由设备B根据保存的路由表将该TTL为2的测试报文转发给路由设备C;路由设备C接收该TTL为2的测试报文后,确定路由设备D故障,则丢弃该测试报文。则源主机1将无法收到路由设备针对该TTL为4的测试报文反馈的报文响应,由此可以确定路由设备D出现故障(因为通过步骤401至步骤403可以确定路由设备A、B以及C均正常)。
至此,流程结束。
本发明实施例提供的上述技术方案适用于在进行路由路径故障检测的过程,即对测试报文进行上述处理,如果是正常的数据报文,则由于路由路径存在故障,则第一个接收到正常数据报文的路由设备直接丢弃该正常的数据报文。
实施例二
与上述实施例一提供的测试报文的发送方法流程对应,本发明实施例二提供了一种测试报文的发送装置,该测试报文的发送装置可以位于路由设备中,通过路由设备中的该测试报文的发送装置,能够使源主机确定出路由路径上的故障位置。
如图6所示,该实施例二提供的测试报文的发送装置,主要包括:
测试报文接收单元601、设定标识识别单元602以及测试报文处理单元603;
其中:
测试报文接收单元601,用于接收由源主机发送或由第二路由设备转发的来自源主机的第一测试报文;其中,若第一测试报文由第二路由设备转发,则第一测试报文是源主机在接收到第一路由设备针对与第一测试报文具有相同目的主机地址的第二测试报文反馈的生存时间TTL超时的报文响应后发送的;
设定标识识别单元602,用于确定到达所述第一测试报文携带的目的主机地址的路由网段被添加设定标识,其中,所述设定标识用于指示通过所述路由网段到达的目的主机地址不可达、且用于指示所述第一测试报文在满足转发条件时继续被转发;
测试报文处理单元603,用于在确定第一测试报文满足携带的TTL大于1、且作为第一路由设备下一跳的第三路由设备可达的转发条件时,将第一测试报文转发给第三路由设备;以及,在确定第一测试报文携带的TTL大于1、且作为第一路由设备下一跳的第三路由设备不可达时,丢弃第一测试报文。
本发明实施例二提供的一个优选实施方式中,图6所示装置包括的测试报文处理单元603,还用于:
在确定第一测试报文携带的TTL等于1时,丢弃第一测试报文,并向源主机反馈TTL超时的报文响应。
如图7所示,本发明实施例二提供的一个优选实施方式中,图6所示装置还可以包括:
设定标识添加单元604,用于在所述测试报文接收单元接收由源主机发送或由第二路由设备转发的来自所述源主机的第一测试报文之前,在确定作为所述第一路由设备下一跳的第三路由设备不可达时,为通过所述第三路由设备到达的目的主机地址所对应的路由网段添加所述设定标识;以及向到达所述目的主机地址的路由路径上的各路由设备转发被添加所述设定标识的路由网段信息。
如图8所示,本发明实施例二提供的一个优选实施方式中,图7所示装置还可以包括:
设定标识删除单元605,用于在所述设定标识添加单元为通过所述第三路由设备到达的目的主机地址所对应的路由网段添加所述设定标识,以及向所述路由路径上的各路由设备转发被添加所述设定标识的路由网段信息后,在确定作为所述第一路由设备下一跳的第三路由设备可达时,删除为通过所述第三路由设备到达的目的主机地址所对应的路由网段添加的所述设定标识;以及向所述路由路径上的各路由设备转发删除所述被添加所述设定标识的路由网段信息的指示。
应当理解,以上测试报文的发送装置包括的单元仅为根据该装置实现的功能进行的逻辑划分,实际应用中,可以进行上述单元的叠加或拆分。并且该实施例二提供的测试报文的发送装置所实现的功能与上述实施例一提供的测试报文的发送方法流程一一对应,对于该装置所实现的更为详细的处理流程,在上述实施例一中已做详细描述,此处不再详细描述。
并且,本实施例二中的测试报文的发送装置还具有能够实现实施例一方案的功能模块,此处不再赘述。
实施例三
本发明实施例三提供了一种路由设备,该路由设备包括上述实施例二提供的测试报文的发送装置,上述实施例二已经对测试报文的发送装置所实现的功能进行了详细描述,此处不再对该包括上述实施例二提供的测试报文的发送装置的路由设备进行详细描述。
通过本发明实施例提供的上述至少一个技术方案,第一路由设备接收由源主机发送或由第二路由设备转发的来自该源主机的第一测试报文后,确定到达该第一测试报文携带的目的主机地址的路由网段被添加设定标识,其中,该设定标识用于指示通过该路由网段到达的目的主机地址不可达、且用于指示该第一测试报文在满足转发条件时继续被转发,第一路由设备在确定该第一测试报文满足携带的TTL大于1、且作为该第一路由设备下一跳的第三路由设备可达的转发条件时,将该第一测试报文中转发给第三路由设备,第一路由设备在确定该第一测试报文携带的TTL大于1、且作为该第一路由设备下一跳的第三路由设备不可达,则丢弃该第一测试报文。该技术方案与现有技术给出的当出现目的主机地址不可达时接收到源主机发送的测试报文的第一个路由设备直接丢弃该测试报文的方案相比,本发明技术方案能够在目的主机地址不可达、且该第一测试报文的TTL大于1、下一跳路由设备可达时,继续转发该第一测试报文,在该第一测试报文的TTL大于1且下一跳路由设备不可达时,才丢弃该第一测试报文,此时,由于第一测试报文在TTL大于1的情况下被丢弃,源主机将无法接收到针对该第一测试报文的TTL超时的报文响应,如果该第一测试报文由源主机发送,则可以确定作为该源主机之后第一跳的第一路由设备与其下一跳路由设备之间的链路出现故障;如果该第一测试报文由第二测试报文转发,由于该第一测试报文是源主机在接收到第一路由设备针对与该第一测试报文具有相同目的主机地址的第二测试报文反馈的TTL超时的报文响应后发送的,即表示第一路由设备之前的链路都正常,从而源主机能够确定该第一路由设备与其下一跳路由设备之间的链路出现故障。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

Claims (11)

1.一种测试报文的发送方法,其特征在于,包括:
第一路由设备接收由源主机发送或由第二路由设备转发的来自所述源主机的第一测试报文;其中,若所述第一测试报文由所述第二路由设备转发,则所述第一测试报文是所述源主机在接收到所述第一路由设备针对与所述第一测试报文具有相同目的主机地址的第二测试报文反馈的生存时间TTL超时的报文响应后发送的;
第一路由设备确定到达所述第一测试报文携带的目的主机地址的路由网段被添加设定标识,其中,所述设定标识用于指示通过所述路由网段到达的目的主机地址不可达、且用于指示所述第一测试报文在满足转发条件时继续被转发;
第一路由设备在确定所述第一测试报文满足携带的TTL大于1、且作为所述第一路由设备下一跳的第三路由设备可达的转发条件时,将所述第一测试报文转发给所述第三路由设备;
第一路由设备在确定所述第一测试报文携带的TTL大于1、且作为所述第一路由设备下一跳的第三路由设备不可达时,丢弃所述第一测试报文。
2.如权利要求1所述的方法,其特征在于,还包括:
第一路由设备在确定所述第一测试报文携带的TTL等于1时,丢弃所述第一测试报文,并向所述源主机反馈TTL超时的报文响应。
3.如权利要求1或2所述的方法,其特征在于,所述测试报文包括:
目的端口号异常的用户数据包协议数据报文;或
控制报文协议应答请求报文。
4.如权利要求1所述的方法,其特征在于,第一路由设备接收由源主机发送或由第二路由设备转发的来自所述源主机的第一测试报文之前,还包括:
第一路由设备在确定作为所述第一路由设备下一跳的第三路由设备不可达时,为通过所述第三路由设备到达目的主机地址所对应的路由网段添加所述设定标识;以及
向到达所述目的主机地址的路由路径上的各路由设备转发被添加所述设定标识的路由网段信息。
5.如权利要求4所述的方法,其特征在于,第一路由设备为通过所述第三路由设备到达目的主机地址所对应的路由网段添加所述设定标识,以及向所述路由路径上的各路由设备转发被添加所述设定标识的路由网段信息后,还包括:
第一路由设备在确定作为所述第一路由设备下一跳的第三路由设备可达时,删除为通过所述第三路由设备到达目的主机地址所对应的路由网段添加的所述设定标识;以及
向所述路由路径上的各路由设备转发删除所述被添加所述设定标识的路由网段信息的指示。
6.如权利要求1所述的方法,其特征在于,所述设定标识为最大开销cost值。
7.一种测试报文的发送装置,其特征在于,包括:
测试报文接收单元,用于接收由源主机发送或由第二路由设备转发的来自所述源主机的第一测试报文;其中,若所述第一测试报文由所述第二路由设备转发,则所述第一测试报文是所述源主机在接收到第一路由设备针对与所述第一测试报文具有相同目的主机地址的第二测试报文反馈的生存时间TTL超时的报文响应后发送的;
设定标识识别单元,用于确定到达所述第一测试报文携带的目的主机地址的路由网段被添加设定标识,其中,所述设定标识用于指示通过所述路由网段到达的目的主机地址不可达、且用于指示所述第一测试报文在满足转发条件时继续被转发;
测试报文处理单元,用于在确定所述第一测试报文满足携带的TTL大于1、且作为所述第一路由设备下一跳的第三路由设备可达的转发条件时,将所述第一测试报文转发给所述第三路由设备;以及,在确定所述第一测试报文携带的TTL大于1、且作为所述第一路由设备下一跳的第三路由设备不可达时,丢弃所述第一测试报文。
8.如权利要求7所述的装置,其特征在于,所述测试报文处理单元,还用于:
在确定所述第一测试报文携带的TTL等于1时,丢弃所述第一测试报文,并向所述源主机反馈TTL超时的报文响应。
9.如权利要求7所述的装置,其特征在于,还包括:
设定标识添加单元,用于在所述测试报文接收单元接收由源主机发送或由第二路由设备转发的来自所述源主机的第一测试报文之前,在确定作为所述第一路由设备下一跳的第三路由设备不可达时,为通过所述第三路由设备到达目的主机地址所对应的路由网段添加所述设定标识;以及向到达所述目的主机地址的路由路径上的各路由设备转发被添加所述设定标识的路由网段信息。
10.如权利要求9所述的装置,其特征在于,还包括:
设定标识删除单元,用于在所述设定标识添加单元为通过所述第三路由设备到达的目的主机地址所对应的路由网段添加所述设定标识,以及向所述路由路径上的各路由设备转发被添加所述设定标识的路由网段信息后,在确定作为所述第一路由设备下一跳的第三路由设备可达时,删除为通过所述第三路由设备到达目的主机地址所对应的路由网段添加的所述设定标识;以及向所述路由路径上的各路由设备转发删除所述被添加所述设定标识的路由网段信息的指示。
11.一种路由设备,其特征在于,包括权利要求7至10任一项所述的测试报文的发送装置。
CN201110088580.0A 2011-04-08 2011-04-08 一种测试报文的发送方法以及装置 Active CN102739462B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110088580.0A CN102739462B (zh) 2011-04-08 2011-04-08 一种测试报文的发送方法以及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110088580.0A CN102739462B (zh) 2011-04-08 2011-04-08 一种测试报文的发送方法以及装置

Publications (2)

Publication Number Publication Date
CN102739462A CN102739462A (zh) 2012-10-17
CN102739462B true CN102739462B (zh) 2014-12-31

Family

ID=46994292

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110088580.0A Active CN102739462B (zh) 2011-04-08 2011-04-08 一种测试报文的发送方法以及装置

Country Status (1)

Country Link
CN (1) CN102739462B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103138988B (zh) * 2013-02-06 2017-01-18 北京德瑞塔时代网络技术有限公司 网络故障的定位处理方法及装置
CN111683006B (zh) * 2015-09-22 2023-12-08 华为技术有限公司 处理报文的方法及其网络设备
CN106301955B (zh) * 2016-09-27 2021-01-29 新华三技术有限公司 一种报文处理方法及装置
CN107959595B (zh) * 2016-10-14 2020-10-27 腾讯科技(深圳)有限公司 一种异常检测的方法、装置及系统
CN107659949B (zh) * 2017-09-26 2021-07-23 台州市吉吉知识产权运营有限公司 一种无线路由器云服务功能接口测试方法和系统
CN116208524A (zh) * 2018-06-06 2023-06-02 华为技术有限公司 一种数据报文的检测方法、设备及系统

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101471822A (zh) * 2007-12-29 2009-07-01 华为技术有限公司 一种定位网络故障的方法和系统
CN101945018A (zh) * 2010-08-30 2011-01-12 北京星网锐捷网络技术有限公司 节点探测方法、装置和网络中心节点

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6785735B2 (en) * 1999-11-12 2004-08-31 Cisco Technology Inc. Determining a path through a managed network
US8880724B2 (en) * 2008-01-31 2014-11-04 Cisco Technology, Inc. Event triggered traceroute for optimized routing in a computer network

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101471822A (zh) * 2007-12-29 2009-07-01 华为技术有限公司 一种定位网络故障的方法和系统
CN101945018A (zh) * 2010-08-30 2011-01-12 北京星网锐捷网络技术有限公司 节点探测方法、装置和网络中心节点

Also Published As

Publication number Publication date
CN102739462A (zh) 2012-10-17

Similar Documents

Publication Publication Date Title
US10581700B2 (en) Service flow processing method, apparatus, and device
JP6988511B2 (ja) 障害検知方法、ノード装置、通信システム
CN102739462B (zh) 一种测试报文的发送方法以及装置
US11588703B2 (en) Systems and methods for determining a topology of a network comprising a plurality of intermediary devices and paths
EP3086510A1 (en) Service chain management method, system and device
US20140254600A1 (en) Transmission system, transmission apparatus, and transmission method
CN108206753B (zh) 一种检测时延的方法、装置及系统
CN113411260B (zh) 一种IPv6网络中数据报文的发送方法及装置
CN105337785A (zh) 一种路径连通性检测方法及装置
JP5363658B1 (ja) 中継装置、中継装置の制御方法、及び、ネットワークシステム
CN109981323B (zh) 一种检测数据链路层组播路径状态的方法和网络设备
CN106656857B (zh) 一种报文限速的方法和装置
CN111801911B (zh) 业务功能链拥塞跟踪
CN102571492B (zh) 检测路由设备故障的方法和装置
CN101425942A (zh) 一种实现双向转发检测的方法、装置及系统
US9942138B2 (en) Method and device for policy based routing
CN102340451A (zh) 一种跟踪路由测试方法、系统、装置及设备
CN106656615B (zh) 一种基于tracert命令的报文处理方法及装置
US9313090B2 (en) Tunnel fault detection method and traffic engineering node
CN103117930A (zh) 静态路由配置的检测方法和装置
EP3291486B1 (en) Selective transmission of bidirectional forwarding detection (bfd) messages for verifying multicast connectivity
CN107528929B (zh) Arp条目的处理方法及装置
US9560058B2 (en) Monitoring device and monitoring method
US10320661B2 (en) Communication device and communication method
CN105634842A (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