CN108259261B - 路径探测方法和装置 - Google Patents
路径探测方法和装置 Download PDFInfo
- Publication number
- CN108259261B CN108259261B CN201710210833.4A CN201710210833A CN108259261B CN 108259261 B CN108259261 B CN 108259261B CN 201710210833 A CN201710210833 A CN 201710210833A CN 108259261 B CN108259261 B CN 108259261B
- Authority
- CN
- China
- Prior art keywords
- forwarding
- message
- detection
- header
- detection message
- 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
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/10—Active monitoring, e.g. heartbeat, ping or trace-route
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/34—Signalling channels for network management communication
- H04L41/342—Signalling channels for network management communication between virtual entities, e.g. orchestrators, SDN or NFV entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/20—Arrangements for monitoring or testing data switching networks the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
-
- 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/20—Hop count for routing purposes, e.g. TTL
-
- 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/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- 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/645—Splitting route computation layer and forwarding layer, e.g. routing according to path computational element [PCE] or based on OpenFlow functionality
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Cardiology (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Theoretical Computer Science (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了业务流的路径探测方法和装置。本申请中,转发设备通过模仿实际业务流的报文头构造用于探测业务流经由路径的探测报文,如此,各转发设备在依据探测报文的报文头包含的转发信息转发探测报文时,能够确保探测报文与实际业务流的转发行为一致,能够最终精准确定出实际业务流经由的路径;进一步地,本申请中,通过在转发出错消息携带设备地址,能够方便SDN控制器快捷确定实际业务流经由路径,减少SDN控制器的工作量。
Description
技术领域
本申请涉及网络通信技术,特别涉及路径探测方法和装置。
背景技术
为了实现IP网络运维的需要,经常需要探测业务流在网络中经过的路径。
目前,常用的一种路径探测方法是路由追踪(Traceroute)机制。Traceroute机制是基于目的主机的IP地址(简称目的IP地址)发送探测报文以探测业务流从源主机至目的主机所经由的路径。
Traceroute机制中的探测报文不同于业务流的业务流报文,比如,为了规避探测报文对业务流的影响,探测报文的端口号配置为不同于业务流报文的端口号。
发明内容
本申请提供了路径探测方法和装置,以准确探测业务流经由的路径。
本申请提供的技术方案包括:
一种路径探测方法,该方法应用于转发设备,包括:
接收来自对端转发设备的第一探测报文,所述第一探测报文为所述对端转发设备根据SDN控制器的控制命令构造的用于探测业务流经由路径的探测报文,或者,为对端转发设备接收的用于探测所述业务流经由路径的探测报文;第一探测报文的报文头包含的转发信息和所述业务流的报文头包含的转发信息相同;
向所述SDN控制器发送转发出错消息,所述转发出错消息携带所述第一探测报文的载荷中的设备地址;
将本设备的设备地址添加到所述第一探测报文的载荷得到第二探测报文,并依据第二探测报文的报文头中所述的转发信息转发所述第二探测报文。
一种路径探测方法,该方法应用于SDN控制器,包括:
接收来自转发设备的转发出错消息,所述转发出错消息为所述转发设备接收到探测报文时发送的,所述转发出错消息携带所述探测报文的载荷中的设备地址;所述探测报文的报文头包含的转发信息和业务流的报文头包含的转发信息相同;
依据接收的最后一个所述转发出错消息携带的设备地址确定所述业务流经由的路径。
一种路径探测装置,该装置应用于转发设备,包括:
接收模块,用于接收来自对端转发设备的第一探测报文,所述第一探测报文为所述对端转发设备根据SDN控制器的控制命令构造的用于探测业务流经由路径的探测报文,或者,为对端转发设备接收的用于探测所述业务流经由路径的探测报文;第一探测报文的报文头包含的转发信息和所述业务流的报文头包含的转发信息相同;
转发模块,用于向所述SDN控制器发送转发出错消息,所述转发出错消息携带所述第一探测报文的载荷中的设备地址;以及,
将本设备的设备地址添加到所述第一探测报文的载荷得到第二探测报文,并依据第二探测报文的报文头中所述的转发信息转发所述第二探测报文。
一种路径探测装置,该装置应用于SDN控制器,包括:
接收模块,用于接收来自转发设备的转发出错消息,所述转发出错消息为所述转发设备接收到探测报文时发送的,所述转发出错消息携带所述探测报文的载荷中的设备地址;所述探测报文的报文头包含的转发信息和业务流的报文头包含的转发信息相同;
确定模块,用于依据接收的最后一个所述转发出错消息携带的设备地址确定所述业务流经由的路径。
由以上技术方案可以看出,本申请中,转发设备通过模仿实际业务流的报文头构造用于探测业务流经由路径的探测报文,如此,各转发设备在依据探测报文的报文头包含的转发信息转发探测报文时,能够确保探测报文与实际业务流的转发行为一致,能够最终精准确定出实际业务流经由的路径;
进一步地,本申请中,通过在转发出错消息携带设备地址,能够方便SDN控制器快捷确定实际业务流经由路径,减少SDN控制器的工作量。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1为本申请提供的方法流程图;
图2为本申请提供的报文结构对比图;
图3为本申请提供的实施例示意图;
图4至图9为本申请实施例提供的探测报文结构图;
图10为本申请提供的装置结构示意图;
图11为本申请提供的装置硬件结构示意图;
图12为本申请提供的另一装置结构示意图;
图13为本申请提供的图12所示装置硬件结构示意图。
具体实施方式
Traceroute机制中,用于探测业务流经由路径的探测报文的报文头所包含的转发信息不同于业务流的报文头包含的转发信息,以转发信息为UDP端口号为例,UDP端口号一般对应一些预先定义的应用,为了规避探测报文对实际业务应用的潜在影响,Traceroute机制中,探测报文的报文头包含的UDP端口号一般为特定UDP端口号(比如大于30000的UDP端口号),不对应任何业务应用,其不同于业务流的报文头包含的用于对应业务流应用的UDP端口号;而不管是转发探测报文还是转发业务流,若存在等价路径或者策略路由(PBR)则是依赖于报文头包含的转发信息选择路径转发的,因为探测报文的报文头包含的转发信息不同于业务流的报文头包含的转发信息,这导致探测报文最终探测出的路径与业务流实际经由的路径不同。
而本申请中,通过模仿实际业务流的报文头构造用于探测业务流经由路径的探测报文,如此,各转发设备在依据探测报文的报文头包含的转发信息转发探测报文时,能够确保探测报文与实际业务流的转发行为一致,能够最终精准确定出实际业务流经由的路径。
为了使本申请的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本申请进行详细描述。
参见图1,图1为本申请提供的方法流程图。该流程应用于转发设备。作为一个实施例,这里的转发设备比如为路由器等,本申请并不具体限定。
如图1所示,该流程可包括以下步骤:
步骤101,转发设备接收来自对端转发设备的第一探测报文。
在本申请中,作为一个实施例,第一探测报文为对端转发设备根据SDN控制器的控制命令构造的用于探测业务流经由路径的探测报文,其中,控制命令携带了业务流的报文头包含的转发信息,以使构造的探测报文的报文头包含的转发信息和所述业务流的报文头包含的转发信息相同。需要说明的是,在本申请中,假如第一探测报文为对端转发设备构造的,则作为一个实施例,该对端转发设备可为业务流经由的首个转发设备。其中,SDN控制器可通过以下方式确定业务流经由的首个转发设备:依据业务流的源IP地址、目的IP地址并结合其管理的网络拓扑计算出从源IP地址至目的IP地址的各路径,对各路径上的首个转发设备进行业务流采样,通过采样的方式确定有业务流经过的转发设备为上述业务流经由的首个转发设备。
在本申请中,作为另一个实施例,第一探测报文也可为对端转发设备接收的用于探测业务流经由路径的探测报文。
综上可以看出,不管第一探测报文是对端转发设备根据SDN控制器的控制命令构造的用于探测业务流经由路径的探测报文,还是对端转发设备接收的用于探测业务流经由路径的探测报文,第一探测报文的报文头包含的转发信息和所述业务流的报文头包含的转发信息相同。下文会举例描述第一探测报文的报文头包含的转发信息,这里暂不赘述。
步骤102,转发设备向SDN控制器发送转发出错消息,转发出错消息携带所述第一探测报文的载荷中的设备地址。
在本申请中,作为一个实施例,第一探测报文的报文头包含TTL,其中,TTL为初始值;
基于第一探测报文的报文头包含的TTL,步骤102中转发设备向SDN控制器发送转发出错消息,包括:
更新第一探测报文的报文头中的TTL,若更新后的TTL等于0,则确认所述第一探测报文的转发出错,向所述SDN控制器发送转发出错消息。作为一个实施例,更新第一探测报文的报文头中的TTL具体为:将第一探测报文的报文头中的TTL减去预设值。预设值与上述的初始值相等。
在本申请中,作为一个实施例,转发出错消息为报文头中的TTL更新为0的第一探测报文。
将本设备的设备地址添加到所述第一探测报文的载荷得到第二探测报文,并依据第二探测报文的报文头中所述的转发信息转发所述第二探测报文
步骤103,转发设备将本设备的设备地址添加到第一探测报文的载荷得到第二探测报文,并依据第二探测报文的报文头中所述的转发信息转发所述第二探测报文。
在本申请中,基于步骤102中转发设备向SDN控制器发送转发出错消息的描述,步骤103中,转发设备在依据第二探测报文的报文头中所述的转发信息转发第二探测报文之前,还需进一步将第二探测报文的报文头中的TTL重置为初始值,以使第二探测报文经由的转发设备收到第二探测报文时,通过将第二探测报文的报文头中的TTL减去预设值(与初始值相等,比如均为1)得到用于确认第二探测报文的转发出错的值(具体为0),以执行如步骤102中的向SDN控制器上报转发出错消息。
在本申请中,作为一个实施例,为了方便SDN控制器确定业务流经由的路径,若上述第一探测报文为对端转发设备构造的探测报文,则第一探测报文的载荷携带对端转发设备的设备地址。而若第一探测报文为对端转发设备接收的探测报文,按照步骤103的描述可以得到第一探测报文的载荷携带其经由的每一转发设备的设备地址。结合上面步骤102描述的转发出错消息携带第一探测报文的载荷中的设备地址,则最终能够使SDN控制器依据收到的转发出错消息携带的设备地址确定出业务流经由的路径,实现准确探测业务流经由路径的目的,这可以参见应用于SDN控制器的图2所示流程,这里暂不赘述。
在本申请中,第一探测报文的报文头还包括校验和,校验和配置为指示校验和错误的指定校验值,以使业务流的目的主机接收到第一探测报文时丢弃第一探测报文。
作为一个实施例,第一探测报文的报文头细分为IP头部和传输层协议头部(TCP/UDP头部)。其中,上述的TTL为IP头部的字段,校验和为TCP/UDP头部的字段。IP头部包含的转发信息包括:源IP地址、目的IP地址、协议类型、差分服务代码点(DSCP);TCP/UDP头部包含的转发信息包括:源端口号、目的端口号。
需要说明的是,在本申请中,也可以根据实际需求在步骤101构造的探测报文中增加更多的头部,比如如果要探测VXLAN报文路径,可以在步骤101构造的探测报文中增加VXLAN头部。
至此,完成图1所示流程。
通过上面描述的流程可以看出,在本申请中,转发通过模仿实际业务流的报文头构造用于探测业务流经由路径的探测报文,如此,各转发设备在依据探测报文的报文头包含的转发信息转发探测报文时,能够确保探测报文与实际业务流的转发行为一致,能够最终精准确定出实际业务流经由的路径。
参见图2,图2为本申请的另一方法流程图。该流程与图1所示流程对应,应用于SDN控制器。
如图2所示,该流程可包括以下步骤:
步骤201,SDN控制器接收来自转发设备的转发出错消息。
如上描述,这里的转发出错消息为转发设备接收到探测报文时发送的。其中,该探测报文为转发设备从对端转发设备接收的;具体地,探测报文为对端转发设备构造的探测报文,也可为对端转发设备接收的探测报文。其中,当对端转发设备构造的探测报文时,在执行图2所示流程之前,SDN控制器还需要确定对端转发设备为业务流经由的首个转发设备,向对端转发设备发送控制命令,以使对端转发设备构造探测报文。这里,SDN控制器可通过上述采样方式确定对端转发设备为业务流经由的首个转发设备。
在本申请中,转发设备发送的转发出错消息携带探测报文的载荷中的设备地址,这里的设备地址为探测报文到达所述转发设备之前已经由的各转发设备的地址。
作为一个实施例,上述转发设备具体是在对探测报文的报文头中的TTL更新后确认探测报文的转发出错时发送的。其中,对探测报文的报文头中TTL更新具体为:将探测报文的报文头中TTL减去预设值。若更新后的TTL等于0,确认探测报文的转发出错。
在本申请中,作为一个实施例,这里的转发出错消息具体为TTL更新为0的探测报文。探测报文的报文头包含的转发信息和业务流的报文头包含的转发信息相同。
步骤202,SDN控制器依据接收的最后一个转发出错消息携带的设备地址确定所述业务流经由的路径。
在本申请中,SDN控制器会针对业务流经由路径的探测进行时间限制,若在设定时间内未接收到针对业务流探测的转发出错消息,则将最近收到的一个转发出错消息确定为最后一个转发出错消息,依据最后一个转发出错消息携带的设备地址确定业务流经由的路径。
如上描述的转发出错消息携带设备地址,则本步骤202中,SDN控制器依据接收的最后一个转发出错消息携带的设备地址确定业务流经由的路径具体为:
SDN控制器依据最后一个转发出错消息携带的设备地址,并结合已确定的业务流经由的最后一个转发设备的设备地址确定业务流经由的路径。其中,SDN控制器确定业务流经由的最后一个转发设备与上述SDN控制器确定业务流经由的首个转发设备的方式类似,具体为:SDN控制器依据业务流的源IP地址、目的IP地址并结合其管理的网络拓扑计算出从源IP地址至目的IP地址的各路径,对各路径上的最后一个转发设备进行业务流采样,通过采样的方式确定有业务流经过的转发设备为上述业务流经由的最后一个转发设备。
至此,完成图2所示的流程。
通过图2所示流程可以看出,本申请中,通过在转发出错消息携带设备地址,能够方便SDN控制器快捷确定实际业务流经由路径,减少SDN控制器的工作量。
下面通过一个具体实施例对图1所示流程进行描述:
参见图3,图3为本申请提供的实施例流程图。本实施例以探测业务流(Flow)为例描述。Flow1为视频报文,其报文格式如图4所示。
SDN控制器基于Flow1的源IP地址、目的IP地址并结合已收集的图3所示网络的网络拓扑计算出Flow1可能经由的路径,并通过对计算出的各路径上的首个转发设备进行业务流采样,通过采样的方式确定路由器(Router)B为Flow1经由的首个转发设备。
SDN控制器向Flow1经由的首个转发设备Router B下发控制命令,控制命令携带Flow1的报文头包含的转发信息。其中,Flow1的报文头包含的转发信息包含:Flow1的IP头部所包含的转发信息和Flow1的UDP头部所包含的转发信息。Flow1的IP头部所包含的转发信息举例包括:源IP地址(IP1)、目的IP地址(IP3)、协议类型、DSCP;Flow1的UDP头部所包含的转发信息举例包括:源端口号、目的端口号。
Router B接收控制命令,依据控制命令中的转发信息构造用于探测Flow1的探测报文。为便于描述,这里将构造的探测报文记为探测报文1_1。图5示出了探测报文1_1的格式。探测报文1_1的IP头中TTL为初始值(本实施例以1为例)。探测报文1_1的IP头还包含已接收的Flow1的IP头部所包含的转发信息比如源IP地址(IP1)、目的IP地址(IP3)、协议类型、DSCP;探测报文1_1的UDP头中校验和为用于指示校验和错误的指定校验值(以0x0为例),探测报文1_1的UDP头还包含已接收的Flow1的UDP头部所包含的转发信息比如源端口号、目的端口号。
Router B将本Router B的IP地址添加至探测报文1_1。作为一个实施例,这里可在探测报文1_1的报文头后面添加Router B的IP地址。为便于描述,这里将添加了Router B的IP地址的探测报文记为探测报文1_2。图6示出了探测报文1_2的格式。
Router B依据探测报文1_2的IP头中的转发信息以及UDP头中的转发信息转发探测报文1_2。作为一个实施例,Router B将已发送探测报文1_2的消息通知给SDN控制器,以使SDN控制器获知Flow1经由的路径已开始探测。
假如Router B依据探测报文1_2的IP头中的转发信息以及UDP头中的转发信息转发探测报文1_2,最终会转发至Router A。
Router A收到探测报文1_2;
Router A将探测报文1_2的TTL减去预设值(以1为例),得到0,确定此时探测报文1_2的转发出错。此时,探测报文1_2的TTL为0,为便于描述,这里将此时的探测报文1_2记为探测报文1_3。
Router A将探测报文1_3作为转发出错消息向SDN控制器上报。
Router A将探测报文1_3中的TTL更新为初始值(以1为例),将本Router A的IP地址添加至探测报文1_3。为便于描述,这里将添加了Router A的IP地址的探测报文记为探测报文1_4。此时,探测报文1_4就携带了Router B的IP地址、Router A的IP地址。本实施例以探测报文1_4携带的Router B的IP地址、Router A的IP地址是按添加至探测报文的先后顺序排列的,其中,Router A的IP地址排在Router B的IP地址之后,图7示出了探测报文1_4的报文结构。
Router A依据探测报文1_4的IP头中的转发信息以及UDP头中的转发信息转发探测报文1_4。假如Router A依据探测报文1_4的IP头中的转发信息以及UDP头中的转发信息转发探测报文1_4,最终会转发至Router C。
Router C收到探测报文1_4;
Router C将探测报文1_4的TTL减去预设值(以1为例),得到0,确定此时探测报文1_4的转发出错。此时,探测报文1_4的TTL为0,为便于描述,这里将此时的探测报文1_4记为探测报文1_5。
Router C将探测报文1_5作为转发出错消息向SDN控制器上报。
Router C将探测报文1_5中的TTL更新为初始值(以1为例),将本Router C的IP地址添加至探测报文1_5。为便于描述,这里将添加了Router C的IP地址的探测报文记为探测报文1_6。此时,探测报文1_6就携带了Router B的IP地址、Router A的IP地址、Router C的IP地址。本实施例以探测报文1_6携带的Router B的IP地址、Router A的IP地址、Router C的IP地址是按添加至探测报文的先后顺序排列的,其中,Router A的IP地址排在Router B的IP地址之后,Router C的IP地址排在Router A的IP地址之后,图8示出了探测报文1_6的报文结构。
Router C依据探测报文1_6的IP头中的转发信息以及UDP头中的转发信息转发探测报文1_6。假如Router C依据探测报文1_6的IP头中的转发信息以及UDP头中的转发信息转发探测报文1_6,最终会转发至Router F。
Router F收到探测报文1_6。
Router F将探测报文1_6的TTL减去预设值(以1为例),得到0,确定此时探测报文1_6的转发出错。此时,探测报文1_6的TTL为0,为便于描述,这里将此时的探测报文1_6记为探测报文1_7。
Router F将探测报文1_7作为转发出错消息向SDN控制器上报。
Router F将探测报文1_7中的TTL更新为初始值(以1为例),将本Router F的IP地址添加至探测报文1_7。为便于描述,这里将添加了Router F的IP地址的探测报文1_7记为探测报文1_8。此时,探测报文1_8就携带了Router B的IP地址、Router A的IP地址、RouterC的IP地址、Router F的IP地址。本实施例以探测报文1_8携带的Router B的IP地址、RouterA的IP地址、Router C的IP地址、Router F的IP地址是按添加至探测报文的先后顺序排列的,其中,Router A的IP地址排在Router B的IP地址之后,Router C的IP地址排在Router A的IP地址之后,Router F的IP地址排在Router C的IP地址之后,图9示出了探测报文1_8的格式。
Router F依据探测报文1_8的IP头中的转发信息以及UDP头中的转发信息转发探测报文1_8。假如Router F依据探测报文1_8的IP头中的转发信息以及UDP头中的转发信息转发探测报文1_8,最终会转发至目的主机PC3。
PC3收到探测报文1_8,对探测报文1_8的UDP头进行解析发现探测报文1_8的UDP头中的校验和为用于指示校验和错误的指定校验值(以0x0为例),则丢弃探测报文1_8。至此,探测报文转发过程结束。
SDN控制器在设定时间内未接收到转发出错消息,将最后收到的转发出错消息即上述的探测报文1_7携带的设备地址即Router B的IP地址、Router A的IP地址、Router C的IP地址,并依据之前通过采样的方式确定的Flow1经由的最后一个转发设备Router F确定Flow1经由的路径。很明显,最终计算出的路径是Flow1实际转发的路径。
至此,完成实施例的描述。
以上对本申请提供的方法进行了描述。下面对本申请提供的装置进行描述:
参见图10,图10为本申请提供的装置结构图。该装置应用于转发设备。
如图10所示,该装置包括:
接收模块,用于接收来自对端转发设备的第一探测报文,所述第一探测报文为所述对端转发设备根据SDN控制器的控制命令构造的用于探测业务流经由路径的探测报文,或者,为对端转发设备接收的用于探测所述业务流经由路径的探测报文;第一探测报文的报文头包含的转发信息和所述业务流的报文头包含的转发信息相同;
转发模块,用于向所述SDN控制器发送转发出错消息,所述转发出错消息携带所述第一探测报文的载荷中的转发设备的地址;以及,
将本设备的地址添加到所述第一探测报文的载荷得到第二探测报文,并依据第二探测报文的报文头中所述的转发信息转发所述第二探测报文。
优选地,若所述探测报文为所述对端转发设备构造的探测报文,则所述第一探测报文的载荷携带所述对端转发设备的地址。
优选地,所述第一探测报文的报文头包含TTL,所述TTL为初始值;
所述向SDN控制器发送转发出错消息,包括:
更新所述第一探测报文的报文头中的TTL,若更新后的TTL等于0,则确认所述第一探测报文的转发出错,向所述SDN控制器发送转发出错消息。
优选地,所述转发出错消息携带TTL更新为0的第一探测报文;
所述第二探测报文的报文头中的TTL重置为初始值。
优选地,所述第一探测报文的报文头还包括校验和,所述校验和配置为指示校验和错误的指定校验值,以使业务流的目的主机接收到所述第一探测报文时丢弃所述第一探测报文。
优选地,所述第一探测报文的报文头包括IP头部和传输层协议头部;
所述TTL为所述IP头部的字段;所述校验和为传输层协议头部的字段;
其中,所述IP头部包含的转发信息包括:源IP地址、目的IP地址、协议类型、差分服务代码点DSCP;
所述传输层协议头部包含的转发信息包括:源端口号、目的端口号。
至此,完成图10所示的装置描述。
对应地,本发明还提供了图10所示装置的硬件结构。参见图11,图7为本申请提供的图10所示装置的硬件结构示意图。该装置包含:
存储器,用于存放接收模块运行的程序指令、转发模块运行的程序指令;
处理器,用于执行接收模块运行的程序指令、用于执行转发模块运行的程序指令。其中,处理器执行接收模块运行的程序指令所执行的操作如上接收模块执行的操作,处理器执行转发模块运行的程序指令所执行的操作如上转发模块执行的操作。
如图11所示,该硬件结构还可以包括一个电源组件被配置为执行装置的电源管理,一个有线或无线网络接口被配置为将装置连接到网络,和一个输入输出(I/O)接口。
至此,完成图11所示的硬件结构描述。
本申请还提供了另一装置结构图。参见图12,图12为本申请提供的另一装置结构图。该装置应用于SDN控制器,包括:
接收模块,用于接收来自转发设备的转发出错消息,所述转发出错消息为所述转发设备接收到探测报文时发送的,所述转发出错消息携带所述探测报文的载荷中的设备地址,所述设备地址为所述探测报文到达所述转发设备之前已经由的各转发设备的地址;所述探测报文的报文头包含的转发信息和业务流的报文头包含的转发信息相同;
确定模块,用于依据接收的最后一个所述转发出错消息携带的转发设备的地址确定所述业务流经由的路径。
优选地,所述探测报文为所述转发设备从对端转发设备接收的;
所述探测报文为所述对端转发设备构造的探测报文时,该装置还包括:
命令模块,用于确定所述对端转发设备为所述业务流经由的首个转发设备时,向所述对端转发设备发送控制命令,以使所述对端转发设备构造所述探测报文;
优选地,所述探测报文为所述对端转发设备接收的探测报文。
优选地,所述确定模块,在所述接收模块在设定时间内未接收到转发出错消息,则将最近收到的一个转发出错消息确定为最后一个所述转发出错消息。
至此,完成图12所示的装置描述。
对应地,本发明还提供了图12所示装置的硬件结构。参见图13,图13为本申请提供的图12所示装置的硬件结构示意图。该装置包含:
存储器,用于存放接收模块运行的程序指令、确定模块运行的程序指令、命令模块运行的程序指令;
处理器,用于执行接收模块运行的程序指令、用于执行确定模块运行的程序指令、用于执行命令模块运行的程序指令。其中,处理器执行接收模块运行的程序指令所执行的操作如上接收模块执行的操作,处理器执行确定模块运行的程序指令所执行的操作如上确定模块执行的操作,处理器执行命令模块运行的程序指令所执行的操作如上命令模块执行的操作。
如图13所示,该硬件结构还可以包括一个电源组件被配置为执行装置的电源管理,一个有线或无线网络接口被配置为将装置连接到网络,和一个输入输出(I/O)接口。
至此,完成图13所示的硬件结构描述。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (18)
1.一种路径探测方法,其特征在于,该方法应用于转发设备,包括:
接收来自对端转发设备的第一探测报文,所述第一探测报文为所述对端转发设备根据SDN控制器的控制命令构造的用于探测业务流经由路径的探测报文,或者,为对端转发设备接收的用于探测所述业务流经由路径的探测报文;第一探测报文的报文头包含的转发信息和所述业务流的报文头包含的转发信息相同;
向所述SDN控制器发送转发出错消息,所述转发出错消息携带所述第一探测报文的载荷中的设备地址;
将本设备的设备地址添加到所述第一探测报文的载荷得到第二探测报文,并依据第二探测报文的报文头中所述的转发信息转发所述第二探测报文。
2.根据权利要求1所述的方法,其特征在于,
若所述第一探测报文为所述对端转发设备构造的探测报文,则所述第一探测报文的载荷携带所述对端转发设备的设备地址。
3.根据权利要求1所述的方法,其特征在于,
所述第一探测报文的报文头包含TTL,所述TTL为初始值;
所述向SDN控制器发送转发出错消息,包括:
更新所述第一探测报文的报文头中的TTL,若更新后的TTL等于0,则确认所述第一探测报文的转发出错,向所述SDN控制器发送转发出错消息。
4.根据权利要求3所述的方法,其特征在于,
所述转发出错消息携带TTL更新为0的第一探测报文;
所述第二探测报文的报文头中的TTL重置为初始值。
5.根据权利要求3所述的方法,其特征在于,所述第一探测报文的报文头还包括校验和,所述校验和配置为指示校验和错误的指定校验值,以使业务流的目的主机接收到所述第一探测报文时丢弃所述第一探测报文。
6.根据权利要求5所述的方法,其特征在于,所述第一探测报文的报文头包括IP头部和传输层协议头部;
所述TTL为所述IP头部的字段;所述校验和为传输层协议头部的字段;
其中,所述IP头部包含的转发信息包括:源IP地址、目的IP地址、协议类型、差分服务代码点DSCP;
所述传输层协议头部包含的转发信息包括:源端口号、目的端口号。
7.一种路径探测方法,其特征在于,该方法应用于SDN控制器,包括:
接收来自转发设备的转发出错消息,所述转发出错消息为所述转发设备接收到探测报文时发送的,所述转发出错消息携带所述探测报文的载荷中的设备地址,所述探测报文的报文头包含的转发信息和业务流的报文头包含的转发信息相同;
依据接收的最后一个所述转发出错消息携带的设备地址确定所述业务流经由的路径。
8.根据权利要求7所述的方法,其特征在于,
所述探测报文为所述转发设备从对端转发设备接收的;
所述探测报文为所述对端转发设备构造的探测报文,该方法还包括:
确定所述对端转发设备为所述业务流经由的首个转发设备时,向所述对端转发设备发送控制命令,以使所述对端转发设备构造所述探测报文;
或者,
所述探测报文为所述对端转发设备接收的探测报文。
9.根据权利要求7所述的方法,其特征在于,所述SDN控制器在设定时间内未接收到转发出错消息,则将最近收到的一个转发出错消息确定为最后一个所述转发出错消息。
10.一种路径探测装置,其特征在于,该装置应用于转发设备,包括:
接收模块,用于接收来自对端转发设备的第一探测报文,所述第一探测报文为所述对端转发设备根据SDN控制器的控制命令构造的用于探测业务流经由路径的探测报文,或者,为对端转发设备接收的用于探测所述业务流经由路径的探测报文;第一探测报文的报文头包含的转发信息和所述业务流的报文头包含的转发信息相同;
转发模块,用于向所述SDN控制器发送转发出错消息,所述转发出错消息携带所述第一探测报文的载荷中的设备地址;以及,
将本设备的设备地址添加到所述第一探测报文的载荷得到第二探测报文,并依据第二探测报文的报文头中所述的转发信息转发所述第二探测报文。
11.根据权利要求10所述的装置,其特征在于,
若所述探测报文为所述对端转发设备构造的探测报文,则所述第一探测报文的载荷携带所述对端转发设备的地址。
12.根据权利要求10所述的装置,其特征在于,
所述第一探测报文的报文头包含TTL,所述TTL为初始值;
所述向SDN控制器发送转发出错消息,包括:
更新所述第一探测报文的报文头中的TTL,若更新后的TTL等于0,则确认所述第一探测报文的转发出错,向所述SDN控制器发送转发出错消息。
13.根据权利要求12所述的装置,其特征在于,
所述转发出错消息携带TTL更新为0的第一探测报文;
所述第二探测报文的报文头中的TTL重置为初始值。
14.根据权利要求12所述的装置,其特征在于,所述第一探测报文的报文头还包括校验和,所述校验和配置为指示校验和错误的指定校验值,以使业务流的目的主机接收到所述第一探测报文时丢弃所述第一探测报文。
15.根据权利要求14所述的装置,其特征在于,所述第一探测报文的报文头包括IP头部和传输层协议头部;
所述TTL为所述IP头部的字段;所述校验和为传输层协议头部的字段;
其中,所述IP头部包含的转发信息包括:源IP地址、目的IP地址、协议类型、差分服务代码点DSCP;
所述传输层协议头部包含的转发信息包括:源端口号、目的端口号。
16.一种路径探测装置,其特征在于,该装置应用于SDN控制器,包括:
接收模块,用于接收来自转发设备的转发出错消息,所述转发出错消息为所述转发设备接收到探测报文时发送的,所述转发出错消息携带所述探测报文的载荷中的设备地址;所述探测报文的报文头包含的转发信息和业务流的报文头包含的转发信息相同;
确定模块,用于依据接收的最后一个所述转发出错消息携带的设备地址确定所述业务流经由的路径。
17.根据权利要求16所述的装置,其特征在于,
所述探测报文为所述转发设备从对端转发设备接收的;
所述探测报文为所述对端转发设备构造的探测报文,所述装置还包括:
命令模块,用于确定所述对端转发设备为所述业务流经由的首个转发设备时,向所述对端转发设备发送控制命令,以使所述对端转发设备构造所述探测报文;
或者,
所述探测报文为所述对端转发设备接收的探测报文。
18.根据权利要求16所述的装置,其特征在于,所述确定模块,在所述接收模块在设定时间内未接收到转发出错消息,则将最近收到的一个转发出错消息确定为最后一个所述转发出错消息。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710210833.4A CN108259261B (zh) | 2017-03-31 | 2017-03-31 | 路径探测方法和装置 |
PCT/CN2018/081569 WO2018177437A1 (zh) | 2017-03-31 | 2018-04-02 | 路径探测 |
US16/499,841 US11025523B2 (en) | 2017-03-31 | 2018-04-02 | Path detection |
JP2019553943A JP6877573B2 (ja) | 2017-03-31 | 2018-04-02 | パス検出 |
EP18775605.1A EP3591899B1 (en) | 2017-03-31 | 2018-04-02 | Path detection |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710210833.4A CN108259261B (zh) | 2017-03-31 | 2017-03-31 | 路径探测方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108259261A CN108259261A (zh) | 2018-07-06 |
CN108259261B true CN108259261B (zh) | 2020-02-11 |
Family
ID=62721766
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710210833.4A Active CN108259261B (zh) | 2017-03-31 | 2017-03-31 | 路径探测方法和装置 |
Country Status (5)
Country | Link |
---|---|
US (1) | US11025523B2 (zh) |
EP (1) | EP3591899B1 (zh) |
JP (1) | JP6877573B2 (zh) |
CN (1) | CN108259261B (zh) |
WO (1) | WO2018177437A1 (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10812392B2 (en) * | 2018-03-05 | 2020-10-20 | Schweitzer Engineering Laboratories, Inc. | Event-based flow control in software-defined networks |
CN112422357B (zh) * | 2019-08-23 | 2024-03-08 | 华为云计算技术有限公司 | 网络通信路径的状态检测方法以及设备 |
CN110995583B (zh) * | 2019-09-12 | 2021-04-20 | 华为技术有限公司 | 路径探测方法、装置及计算机存储介质 |
US11496382B2 (en) * | 2020-09-30 | 2022-11-08 | Charter Communications Operating, Llc | System and method for recording a routing path within a network packet |
CN115699685A (zh) * | 2021-05-28 | 2023-02-03 | 新华三技术有限公司 | 随流检测方法和电子设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101771604A (zh) * | 2008-12-31 | 2010-07-07 | 华为技术有限公司 | 路由探测方法、系统以及中间路由装置 |
CN102437931A (zh) * | 2011-12-29 | 2012-05-02 | 华为技术有限公司 | 一种业务路径的探测方法及设备 |
CN104219144A (zh) * | 2014-09-09 | 2014-12-17 | 华为技术有限公司 | 确定业务流的转发路径的方法、系统和网络管理系统 |
CN104780095A (zh) * | 2015-04-30 | 2015-07-15 | 杭州华三通信技术有限公司 | 一种sdn网络中的路径探测方法和装置 |
CN106230726A (zh) * | 2016-07-26 | 2016-12-14 | 杭州迪普科技有限公司 | 转发路径的探测方法和装置 |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2004128723A (ja) * | 2002-09-30 | 2004-04-22 | Fujitsu Ltd | ラベルスイッチルータ及びそのパス切替制御方法 |
US7454494B1 (en) | 2003-01-07 | 2008-11-18 | Exfo Service Assurance Inc. | Apparatus and method for actively analyzing a data packet delivery path |
US7277936B2 (en) * | 2003-03-03 | 2007-10-02 | Hewlett-Packard Development Company, L.P. | System using network topology to perform fault diagnosis to locate fault between monitoring and monitored devices based on reply from device at switching layer |
JP2007201564A (ja) * | 2006-01-23 | 2007-08-09 | Nec Corp | 推定システム、端末、推定方法、およびプログラム |
US7738383B2 (en) * | 2006-12-21 | 2010-06-15 | Cisco Technology, Inc. | Traceroute using address request messages |
US8116213B2 (en) | 2009-04-24 | 2012-02-14 | Verizon Patent And Licensing Inc. | Tracing routes and protocols |
US9344320B1 (en) * | 2012-10-18 | 2016-05-17 | Amazon Technologies, Inc. | Return path trace |
JP6063826B2 (ja) | 2013-06-21 | 2017-01-18 | エヌ・ティ・ティ・コムウェア株式会社 | 経路確認装置、経路確認システム、経路確認方法、及びプログラム |
US9379956B2 (en) | 2014-06-30 | 2016-06-28 | Nicira, Inc. | Identifying a network topology between two endpoints |
US9998542B2 (en) * | 2014-12-18 | 2018-06-12 | Yokogawa Electric Corporation | System and method for determining routing information |
WO2016123314A1 (en) * | 2015-01-28 | 2016-08-04 | Hewlett-Packard Development Company, L.P. | Data loop determination in a software-defined network |
US10015162B2 (en) | 2015-05-11 | 2018-07-03 | Huawei Technologies Co., Ltd. | Firewall authentication of controller-generated internet control message protocol (ICMP) echo requests |
-
2017
- 2017-03-31 CN CN201710210833.4A patent/CN108259261B/zh active Active
-
2018
- 2018-04-02 WO PCT/CN2018/081569 patent/WO2018177437A1/zh unknown
- 2018-04-02 EP EP18775605.1A patent/EP3591899B1/en active Active
- 2018-04-02 JP JP2019553943A patent/JP6877573B2/ja active Active
- 2018-04-02 US US16/499,841 patent/US11025523B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101771604A (zh) * | 2008-12-31 | 2010-07-07 | 华为技术有限公司 | 路由探测方法、系统以及中间路由装置 |
CN102437931A (zh) * | 2011-12-29 | 2012-05-02 | 华为技术有限公司 | 一种业务路径的探测方法及设备 |
CN104219144A (zh) * | 2014-09-09 | 2014-12-17 | 华为技术有限公司 | 确定业务流的转发路径的方法、系统和网络管理系统 |
CN104780095A (zh) * | 2015-04-30 | 2015-07-15 | 杭州华三通信技术有限公司 | 一种sdn网络中的路径探测方法和装置 |
CN106230726A (zh) * | 2016-07-26 | 2016-12-14 | 杭州迪普科技有限公司 | 转发路径的探测方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
JP2020512788A (ja) | 2020-04-23 |
EP3591899A4 (en) | 2020-01-22 |
US20200028770A1 (en) | 2020-01-23 |
US11025523B2 (en) | 2021-06-01 |
JP6877573B2 (ja) | 2021-05-26 |
CN108259261A (zh) | 2018-07-06 |
EP3591899A1 (en) | 2020-01-08 |
WO2018177437A1 (zh) | 2018-10-04 |
EP3591899B1 (en) | 2021-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108259261B (zh) | 路径探测方法和装置 | |
US11831526B2 (en) | Service chain fault detection method and apparatus | |
US11876883B2 (en) | Packet processing method, network node, and system | |
US10868730B2 (en) | Methods, systems, and computer readable media for testing network elements of an in-band network telemetry capable network | |
US11075824B2 (en) | In-line performance monitoring | |
US8117301B2 (en) | Determining connectivity status for unnumbered interfaces of a target network device | |
US10044830B2 (en) | Information system, control apparatus, method of providing virtual network, and program | |
EP3306871B1 (en) | Method and apparatus for acquiring path information | |
JP6053003B2 (ja) | 伝送システム、伝送装置、及び伝送方法 | |
US9503344B2 (en) | Data path performance measurement using network traffic in a software defined network | |
EP3355532A1 (en) | Method for path detection in vxlan, and controller and network device | |
US20160323165A1 (en) | Method of diagnosis of service functions in an ip network | |
EP2552060A1 (en) | Information system, control apparatus, method of controlling virtual network, and program | |
JPWO2011155510A1 (ja) | 通信システム、制御装置、パケットキャプチャ方法およびプログラム | |
JP2015533049A (ja) | ネットワークにおけるトポロジ及びパス検証のための方法及び装置 | |
CN108259335B (zh) | 路径探测方法和装置 | |
CN110557342B (zh) | 用于分析和减轻丢弃的分组的设备 | |
JP6801409B2 (ja) | 経路探索システム、経路探索方法及び経路探索プログラム | |
US10623278B2 (en) | Reactive mechanism for in-situ operation, administration, and maintenance traffic | |
WO2014112614A1 (ja) | 制御情報管理装置、制御情報提示方法及びプログラム | |
CN112350844A (zh) | 用于数据传输的方法和装置 | |
JP2014502063A (ja) | 通信経路検証システム、経路検証装置、通信経路検証方法および経路検証プログラム | |
JP2017050708A (ja) | 通信システム、制御装置、スイッチ、通信方法及びプログラム | |
WO2023093227A1 (zh) | 信息的收集方法、装置、存储介质及电子装置 | |
JP2016225933A (ja) | 制御装置、中継装置の制御方法、プログラム及び通信システム |
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 |