CN111614564A - 互联网协议操作和管理选项 - Google Patents

互联网协议操作和管理选项 Download PDF

Info

Publication number
CN111614564A
CN111614564A CN201910570429.7A CN201910570429A CN111614564A CN 111614564 A CN111614564 A CN 111614564A CN 201910570429 A CN201910570429 A CN 201910570429A CN 111614564 A CN111614564 A CN 111614564A
Authority
CN
China
Prior art keywords
header
option
oam
network device
address
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.)
Pending
Application number
CN201910570429.7A
Other languages
English (en)
Inventor
R·博尼卡
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.)
Juniper Networks Inc
Original Assignee
Juniper Networks Inc
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 Juniper Networks Inc filed Critical Juniper Networks Inc
Publication of CN111614564A publication Critical patent/CN111614564A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/04Network management architectures or arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

网络设备可以接收包括IP分组报头的互联网协议(IP)分组。该IP分组可以包括至少一个扩展报头,至少一个扩展报头包括以下中的至少一项:逐跳选项报头、在路由报头之前的第一目的地选项报头、或者在上层报头之前的第二目的地选项报头。网络设备可以确定:逐跳选项报头包括操作和管理能力(OAM)选项,第一目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址或在路由报头中标识的路由IP地址相匹配,或者第二目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址相匹配。网络设备可以执行由OAM选项所指示的一个或多个动作。

Description

互联网协议操作和管理选项
背景技术
可以通过是网络的一部分的一个或多个网络设备来路由互联网协议(IP)分组。IP分组可以包括报头和一个或多个扩展报头,其向一个或多个网络设备提供关于如何处理IP分组的信息。
发明内容
根据一些实现,方法可以包括由网络设备接收包括IP分组报头的互联网协议(IP)分组,其中IP分组报头包括目的地IP地址,其中IP分组报头利用至少一个扩展报头而被补充,该至少一个扩展报头包括以下中的至少一项:逐跳选项报头、在路由报头之前的第一目的地选项报头、或者在上层报头之前的第二目的地选项报头。该方法可以包括由网络设备确定:逐跳选项报头包括操作和管理能力(OAM)选项,第一目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址或在路由报头中标识的路由IP地址相匹配,或者第二目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址相匹配。该方法可以包括执行由OAM选项所指示的一个或多个动作。
根据一些实现,网络设备可以包括:一个或多个存储器;以及一个或多个处理器,该一个或多个处理器用以接收包括IP分组报头的互联网协议(IP)分组,其中IP分组报头包括目的地IP地址,其中,IP分组报头利用至少一个扩展报头而被补充,该至少一个扩展报头包括以下中的至少一项:逐跳选项报头、在路由报头之前的第一目的地选项报头或者在上层报头之前的第二目的地选项报头。一个或多个处理器可以确定逐跳选项报头、第一目的地选项报头或者第二目的地选项报头包括操作和管理能力(OAM)选项。当处于以下情况时,一个或多个处理器可以执行由OAM选项所指示的一个或多个动作:逐跳选项报头包括OAM选项,第一目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址或在路由报头中标识的路由IP地址相匹配,或者第二目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址相匹配。
根据一些实现,非瞬态计算机可读介质可以存储一个或多个指令,该一个或多个指令在由网络设备的一个或多个处理器执行时使得一个或多个处理器:接收包括IP分组报头的互联网协议(IP)分组,其中,IP分组报头包括源IP地址和目的地IP地址,其中IP分组报头利用至少一个扩展报头而被补充,该至少一个扩展报头包括以下中的至少一项:逐跳选项报头、在路由报头之前的第一目的地选项报头或者在上层报头之前的第二目的地选项报头。一个或多个指令可以使得一个或多个处理器确定网络设备的IP地址并且确定:逐跳选项报头包括操作和管理能力(OAM)选项,第一目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址或在路由报头中标识的路由IP地址相匹配,或者第二目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址相匹配。一个或多个指令可以使得一个或多个处理器基于OAM选项生成ICMP OAM消息并且将ICMP OAM消息发送到源IP地址。
附图说明
图1A至1C是本文描述的一个或多个示例实现的示意图。
图2是被映射到一个或多个动作的操作和管理能力(OAM)选项的示例选项数据字段比特的示意图。
图3是示例互联网控制消息协议(ICMP)OAM消息格式的示意图。
图4是可以实现本文描述的系统和/或方法的示例环境的示意图。
图5A和5B是图4的一个或多个设备的示例组件的示意图。
图6至图8是互联网协议(IP)OAM选项的示例过程的流程图。
具体实施方式
示例实现的以下详细描述参照附图。不同附图中的相同附图标记可以表示相同或类似的元件。
网络设备的网络可以被用于路由分组。在许多情况下,网络的一个或多个网络设备可以通过网络路由互联网协议(IP)分组(例如,符合IP版本6(IPv6)的分组)。在一些情况下,网络的一个或多个网络设备中的特定网络设备不能正确起作用,并且无法促进IP分组通过网络的路由。在这种情况下,当前的网络诊断工具无法基于网络设备如何处理IP分组来标识特定网络设备的问题。而且,IPv6没有指明可以促进网络设备的诊断的操作和管理能力(OAM)选项。这可以使网络能利用附加资源(例如,帮助路由IP分组或替换IP分组的其它网络设备的资源)来补偿性能不佳、发生故障和/或不可操作的网络设备。
本文描述的一些实现提供了网络设备,该网络设备能够标识和处理被包括在由网络设备接收到的IP分组的扩展报头(例如,逐跳选项报头、在路由报头之前的第一目的地选项报头或者在上层报头之前的第二目的地选项报头)中的OAM选项。在一些实现中,当以下情况时,网络设备可以执行由OAM选项所指示的一个或多个动作:逐跳选项报头包括OAM选项,第一目的地选项报头包括OAM选项并且网络设备的IP地址与被包括在IP分组的IP分组报头中的目的地IP地址或在路由报头中标识的路由IP地址相匹配,或者第二目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址相匹配。在一些实现中,一个或多个动作可以包括:记录IP分组,增加与网络设备相关联的计数器,向被包括在IP分组报头中的源IP地址发送互联网控制消息协议(ICMP)OAM消息,或者向监测设备发送关于IP分组的遥测信息。
以这种方式,本文描述的一些实现可以通过启用将被由网络设备使用来促进关于网络设备的诊断的被包括在IP分组中的OAM选项来节省网络的资源,否则这些资源被用于补偿性能不佳、发生故障和/或不可操作的网络设备。例如,网络设备可以基于OAM选项记录关于IP分组的信息,将关于分组的ICMP OAM消息发送到IP分组的发起者(originator)或者将关于IP分组的遥测信息发送到监测设备。这提供了与IP分组和网络设备相关的信息,该信息可以被用于诊断关于网络设备和/或网络的问题。这允许问题被快速解决,减少了网络设备性能不佳、发生故障和/或不可操作的时间量。这可以产生网络的更有效操作。
图1A至图1C是本文描述的一个或多个示例实现100的示意图。例如,(多个)示例实现100可以包括一个或多个对等设备(未示出)、作为网络的一部分的一个或多个网络设备(示出为节点A至C)和监测设备。一个或多个网络设备可以将互联网协议(IP)分组(例如,符合IP版本6(IPv6)或后期版本的分组)从第一对等设备通过网络路由到第二对等设备。
IP分组可以包括IP分组报头和有效载荷。IP分组报头可以包括一个或多个字段,诸如,指示有效载荷的长度的有效载荷长度字段、指示IP分组的发起者(例如,生成和发送IP分组的对等设备和/或网络设备的IP地址)的源IP地址、指示IP分组的预期接收者(例如,最终接收IP分组的对等设备和/或网络设备的IP地址)的目的地IP地址、标识在IP分组报头之后的报头类型(例如,扩展报头、上层报头等)的下一报头字段等。
在IP分组中一个或多个扩展报头和/或上层报头可以在IP分组报头之后。一个或多个扩展报头可以包括逐跳选项报头、目的地选项报头、路由报头等。在IP分组报头之后并且上层报头之前,一个或多个扩展报头可以以任何顺序出现。逐跳选项报头可以指示要由每个网络设备处理的选项,诸如,本文描述的操作和管理能力(OAM)选项,该每个网络设备接收IP分组并且被配置为读取和处理逐跳报头。如果网络设备的IP地址与IP分组报头中的目的地IP地址相匹配和/或网络设备的IP地址与在路由报头中标识的一个或多个路由IP地址中的路由IP地址相匹配,则在路由报头之前的目的地选项报头可以包括将由网络设备处理的选项,诸如,本文描述的OAM选项。附加或备选地,如果网络设备的IP地址与IP分组报头中的目的地IP地址相匹配,则在上层报头之前的目的地选项报头可以包括将由网络设备处理的选项,诸如,本文描述的OAM选项。
如在图1A中并且由附图标记102所示出的,第一网络设备(被示出为节点A)可以将IP分组发送到网络内的第二网络设备(示出为节点B)和/或第二网络设备可以从第一网络设备获得IP分组。第一网络设备可以是IP分组的发起者和/或将IP分组路由到第二网络设备的中间网络设备。如图1A所示,IP分组可以包括IP分组报头、逐跳报头和有效载荷。逐跳报头可以包括一个或多个字段,诸如,标识在逐跳报头之后的报头类型的下一报头字段、指示逐跳报头的长度的逐跳报头长度字段、指示诸如本文描述的OAM选项的一个或多个选项的选项字段等。
如图1A中所示,OAM选项可以包括指示OAM选项的类型是OAM选项类型的选项类型字段、指示OAM选项的选项数据字段的长度的选项数据长度字段、以及指示本文描述的一个或多个动作的选项数据字段(参见图2和本文中的所附描述)。在一些实现中,选项类型字段可以包括多个比特,诸如,8个比特;选项数据长度字段可以包括多个比特,诸如,8个比特;选项数据字段可以包括多个比特,诸如,16个比特等。在一些实现中,选项类型字段的多个比特中的一个或多个比特(例如,选项类型字段的两个最高阶比特)可以向特定网络设备(例如,不识别选项类型字段)指示特定网络设备将跳过选项类型字段并且继续处理包括OAM选项的报头(例如,逐跳报头)。在一些实现中,选项类型字段的多个比特中的比特(例如,选项类型字段的第三高阶的比特)可以指示选项数据字段中的数据不能被网络设备改变。
如由附图标记104所示出的,第二网络设备可以标识逐跳报头中的OAM选项。例如,第二网络设备可以解析逐跳报头以确定逐跳报头在逐跳报头的选项字段中包括OAM选项。
由于OAM选项被包括在逐跳报头中,所以第二网络设备可以处理OAM选项而不管被包括在IP分组报头中的目的地IP地址或者被包括在IP分组的其它报头中的任何其它信息。在一些实现中,第二网络设备可以处理OAM选项以确定由选项数据字段所指示的一个或多个动作。一个或多个动作可以包括记录IP分组,增加与第二网络设备相关联的计数器,将互联网控制消息协议(ICMP)OAM消息(例如,符合ICMP版本6(ICMPv6)的消息)发送到被包括在IP分组报头中的源IP地址,将关于IP分组的遥测信息发送到监测设备等。
如由附图标记106所示出的,如果OAM选项的选项数据字段指示记录IP分组,则第二网络设备可以记录IP分组。例如,第二网络设备可以生成记录,该记录指示记录被生成的时间以及第二网络设备接收到IP分组的时间。第二网络设备可以向数据结构发送记录,将被保存在该数据结构中。数据结构可以是由第二网络设备、任何其它网络设备、对等设备、监测设备等可访问的。如由附图标记108所示出的,如果OAM选项的选项数据字段指示增加计数器,则第二网络设备可以增加与第二网络设备相关联的计数器。以这种方式,第二网络设备可以对由第二网络设备处理的任何IP分组进行计数并且追踪。
如由附图标记110所示出的,如果OAM选项的选项数据字段指示发送ICMP OAM消息,则第二网络设备可以生成ICMP OAM消息并且将其发送到被包括在IP分组报头中的源IP地址(在图1A中示出为节点A,第一网络设备)。ICMP OAM消息可以包括一个或多个字段,诸如,代码字段、原始数据报字段等(参见图3和本文中的伴随描述)。代码字段可以指示ICMPOAM消息是信息消息,ICMP OAM消息不是误差消息等。原始数据报字段可以包括IP分组或者适合于可以由第二网络设备在链路上传输的最大传输单元(MTU)的尽可能多的IP分组(例如,针对IP MTU是1280个字节)。原始数据报字段可以包括零填充到特定比特边界(例如,三十二比特边界)的IP分组。
如通过附图标记112所示出的,如果OAM选项的选项数据字段指示发送遥测信息,则第二网络设备可以将关于IP分组的遥测信息发送到监测设备。遥测信息可以包括IP分组和/或可以指示第二网络设备接收到IP分组的时间。监测设备可以分析遥测信息以确定与第二网络设备、一个或多个附加网络设备、网络等有关的性能问题。
如由附图标记114所示出的,在第二网络设备不是IP分组的预期接收者的实现中,第二网络设备可以将IP分组传输到第三网络设备(在图1A中被示出为节点C)。第二网络设备可以基于IP分组报头、路由报头、上层报头等来将IP分组传输到第三网络设备。附加或备选地,在第二网络设备不能传输IP分组(例如,在第二网络设备的路由表中,第二网络设备不维护去往IP分组的预期接收者的路由)的实现中,在处理OAM选项并且执行一个或多个动作之后和/或与其并行地,第二网络设备可以丢弃IP分组和/或将误差消息(例如,ICMP目的地不可到达消息)发送到IP分组的发起者。
如在图1B中由附图标记116所示出的,第一网络设备可以将不同的IP分组发送到网络内的第二网络设备,和/或第二网络设备可以以类似于如本文关于图1A所描述的方式来从第一网络设备获得不同的IP分组。如图1B中所示,不同的IP分组可以包括IP分组报头、在路由报头之前的目的地选项报头,以及有效载荷。目的地选项报头可以包括一个或多个字段,诸如,标识在目的地选项报头之后的报头类型(例如,路由报头类型)的下一报头字段、指示目的地选项报头的长度的目的地选项报头长度字段、指示诸如本文描述的OAM选项等一个或多个选项的选项字段等。路由报头可以包括一个或多个字段,诸如,标识在路由报头之后的报头类型的下一报头字段、指示路由报头的长度的路由报头长度字段、指示一个或多个路由IP地址(例如,IP分组在通过网络路由时将路由到的一个或多个网络设备)的特定于类型的数据字段等。
如由附图标记118所示出的,第二网络设备可以以类似于本文关于图1A所描述的方式来标识IP分组的目的地选项报头中的OAM选项。例如,第二网络设备可以解析目的地选项报头以确定目的地选项报头在目的地选项报头的选项字段中包括OAM选项。
由于OAM选项被包括在路由报头之前的目的地选项报头中,所以仅当第二网络设备的IP地址与IP分组报头中的目的地IP地址相匹配和/或网络设备的IP地址与在路由报头中标识的一个或多个路由IP地址中的路由IP地址相匹配时,第二网络设备才可以处理OAM选项。相应地,在一些实现中,第二网络设备可以确定第二网络设备的IP地址,并且可以确定第二网络的IP地址是否与目的地IP地址和/或路由IP地址相匹配。如果第二网络设备确定第二网络设备的IP地址与目的地IP地址和/或路由IP地址不匹配,则第二网络设备可以不处理OAM选项。附加或备选地,如在附图标记120所示出的,如果第二网络设备确定第二网络设备的IP地址与目的地IP地址和/或路由IP地址相匹配,则第二网络设备可以处理OAM选项以确定由OAM选项的选项数据字段所指示的一个或多个动作。
如由附图标记122所示出的,如果OAM选项的选项数据字段指示记录IP分组,则第二网络设备可以以类似于本文关于图1A所描述的方式来记录IP分组。如由附图标记124所示出的,如果OAM选项的选项数据字段指示增加计数器,则第二网络设备可以以类似于本文关于图1A所描述的方式来增加与第二网络设备相关联的计数器。如由附图标记126所示出的,如果OAM选项的选项数据字段指示发送ICMP OAM消息,则第二网络设备可以以类似于本文关于图1A所描述的类似来生成ICMP OAM消息并且将其发送到被包括在IP分组报头中的源IP地址(在图1B中被示出为节点A,第一网络设备)。如由附图标记128所示出的,如果OAM选项的选项数据字段指示发送遥测信息,则第二网络设备可以以类似于本文关于图1A所描述的方式来将关于IP分组的遥测信息发送到监测设备。
如由附图标记130所示出的,在第二网络设备不是IP分组的预期接收者的实现中,第二网络设备可以以类似于本文关于图1A所描述的方式来将IP分组传输到第三网络设备(在图1B中被示出为节点C)。第二网络设备可以基于IP分组报头、路由报头、上层报头等来将IP分组传输到第三网络设备。附加或备选地,在第二网络设备不能传输IP分组(例如,在第二网络设备的路由表中,第二网络设备不维护去往IP分组的预期接收者的路线)的实现中,在处理OAM选项并且执行一个或多个动作之后和/或与其并行地,第二网络设备可以丢弃IP分组和/或将误差消息(例如,ICMP目的地不可到达消息)发送到IP分组的发起者。
如在图1C中并且由附图标记1三十二所示出的,第一网络设备可以将附加IP分组发送到网络内的第二网络设备,和/或第二网络设备可以以类似于本文关于图1A和1B所描述的方式来从第一网络设备获得附加IP分组。如图1C中所示,该IP分组可以包括IP分组报头、在上层报头之前的目的地选项报头、以及有效载荷。目的地选项报头可以包括一个或多个字段,诸如,标识在目的地选项报头之后的报头类型(例如,上层报头类型)的下一报头字段、指示目的地选项报头的长度的目的地选项报头长度字段、指示诸如本文描述的OAM选项的一个或多个选项的选项字段等。上层报头可以包括一个或多个字段,诸如,标识在上层报头之后的报头类型的下一报头字段、指示路由报头的长度的上层报头长度字段、指示上层信息的特定于类型的数据字段等。
如由附图标记134所示出的,第二网络设备可以以类似于本文关于图1A和1B所描述的方式来标识IP分组的目的地选项报头中的OAM选项。例如,第二网络设备可以解析目的地选项报头以确定目的地选项报头在目的地选项报头的选项字段中包括OAM选项。
由于OAM选项被包括在上层报头之前的目的地选项报头中,所以仅当第二网络设备的IP地址与IP分组报头中的目的地IP地址相匹配时,第二网络设备才可以处理OAM选项。相应地,在一些实现中,第二网络设备可以确定第二网络设备的IP地址,并且可以确定第二网络的IP地址是否与目的地IP地址相匹配。如果第二网络设备确定第二网络设备的IP地址与目的地IP地址不匹配,则第二设备可以不处理OAM选项。附加或备选地,如由附图标记136所示出的,如果第二网络设备确定第二网络设备的IP地址与目的地IP地址相匹配,则第二网络设备可以处理OAM选项以确定由OAM选项的选项数据字段所指示的一个或多个动作。
如由附图标记138所示出的,如果OAM选项的选项数据字段指示记录IP分组,则第二网络设备可以以类似于本文关于图1A和1B所描述的方式来记录IP分组。如由附图标记140所示出的,如果OAM选项的选项数据字段指示增加计数器,则第二网络设备可以以类似于本文关于图1A和1B所描述的方式来增加与第二网络设备相关联的计数器。如由附图标记142所示出的,如果OAM选项的选项数据字段指示发送ICMP OAM消息,则第二网络设备可以以类似于本文关于图1A和1B所描述的方式来生成ICMP OAM消息并且将其发送到被包括在IP分组报头中的源IP地址(在图1C中被示出为节点A,第一网络设备)。如由附图标记144所示出的,如果OAM选项的选项数据字段指示发送遥测信息,则第二网络设备可以以类似于本文关于图1A和1B所描述的方式来将关于IP分组的遥测信息发送到监测设备。
如图1C中所示,第二网络设备是IP分组的预期接收者,因此第二网络设备在这种情况下不将IP分组传输到任何其它网络设备。
如上所述,以示例的方式来提供图1A至图1C。其它示例可以不同于关于图1A至1C所描述的内容。例如,与图1A至1C所示的设备和/或网络相比,可能存在附加设备和/或网络、更少设备和/或网络、不同设备和/或网络或者被不同布置地的设备和/或网络。此外,图1A至图1C所示的两个或多个设备可以被实现在单个设备内,或者图1A至1C所示的单个设备可以被实现为多个和/或分布式设备。附加或备选地,(多个)示例实现100的设备集合(例如,一个或多个设备)可以执行被描述为由(多个)示例实现100的另一设备集合执行的一个或多个功能。
图2是被映射到本文描述的一个或多个动作的示例操作和管理能力(OAM)选项200的示例选项数据字段比特的示意图(例如,选项数据字段是指示一个或多个动作的比特掩码)。例如,如图2中所示,选项数据字段的“0”位置中的比特可以指示将被由网络设备执行的“记录分组”动作(例如,记录IP分组,如本文所描述的)。“1”位置中的比特可以指示将被由网络设备执行的“对分组进行计数”动作(例如,增加与网络设备相关联的计数器,如本文所描述的)。“2”位置中的比特可以指示将被由网络设备执行的“发送ICMPv6OAM”动作(例如,将ICMP OAM消息发送到被包括在IP分组的IP分组报头中的源地址,如本文所描述的)。“3”位置中的比特可以指示将被由网络设备执行的“发送遥测”动作(例如,将关于IP分组的遥测信息发送到监测设备,如本文所描述的)。“4至15”位置中的位可以被预留用于附加动作。
如上所述,以示例的方式来提供图2。其它示例可以不同于关于图2所描述的。例如,与图2所示的字段和/或动作相比,可能存在附加字段和/或动作、更少字段和/或动作、不同字段和/或动作或者被不同布置的字段和/或动作。
图3是示例互联网控制消息协议(ICMP)OAM消息300的示意图。如图3中所示,OAM消息300可以包括一个或多个字段,诸如,类型字段、代码字段、校验和字段、长度字段、预留字段、以秒为单位的时间戳字段、以几分之一秒为单位的时间戳字段、原始数据报字段等。类型字段可以是八比特长,并且可以指示ICMP OAM消息的类型是ICMP OAM消息类型。代码字段可以是8比特长,并且可以指示ICMP OAM消息是信息消息,ICMP OAM消息不是误差消息等(例如,代码字段可以设置为零)。
校验和字段可以是16比特长,并且可以指示与ICMP OAM消息有关的校验和(例如,校验和可以是整个ICMP OAM消息的补码和的十六比特补码)。校验和字段可以被用于检测ICMP OAM消息中的数据损坏。长度字段可以是八比特长,并且可以指示原始数据报字段的长度。长度可以以三十二比特的字为单位来测量。预留字段可以是二十四比特长,并且可以被设置为零,使得网络设备忽略预留字段。
以秒为单位的时间戳字段可以是三十二比特长,并且可以指示网络设备接收到IP分组的、具有网络时间协议(NTP)格式的时间(例如,以秒为单位)。以几分之一秒为单位的时间戳字段可以是三十二比特长,并且可以指示根据NTP格式以几分之一秒为单位的网络设备接收到IP分组的时间。原始数据报字段可以具有是三十二比特的倍数的大小。原始数据报字段可以包括IP分组以及或者适合于可以由第二网络设备在链路上传输的最大传输单元(MTU)的尽可能多的IP分组的尽可能多的IP分组(例如,针对IP MTU是1280个字节)。原始数据报字段可以包括零填充到特定比特边界(例如,三十二比特边界)的IP分组。
如上所示,以示例的方式来提供图3。其它示例可以不同于关于图3所描述的。例如,与图3所示的字段和/或值相比,可能存在附加字段和/或值、更少字段和/或值、不同的字段和/或值、和/或被不同布置的的字段和/或值。
图4是其中可以实现本文描述的系统和/或方法的示例环境400的示意图。如图4中所示,环境400可以包括一个或多个对等设备410、一组网络设备420(被示出为网络设备420-1至网络设备420-N)、网络430和监测设备440。环境400的设备可以经由有线连接、无线连接或者有线和无线连接的组合而被互连。
对等设备410包括能够接收和/或提供网络流量的一个或多个设备。例如,对等设备410可以包括流量转移设备,诸如,路由器、网关、交换机、防火墙、集线器、桥接器、反向代理、服务器(例如,代理服务器、执行虚拟机的服务器等)、安全设备、入侵检测设备、负载平衡器或类似类型的设备。在一些实现中,对等设备410可以包括端点设备,该端点设备是网络流量的源或目的地。例如,对等设备410可以包括计算机或类似类型的设备。对等设备410可以(例如,通过使用(多个)网络设备420作为中介来路由IP分组)经由网络430从其它对等设备410接收网络流量和/或可以向其它对等设备410提供网络流量(例如,IP分组)。在一些实现中,对等设备410可以包括位于一个或多个网络的边缘处的边缘设备。例如,对等设备410从网络430外部的设备接收网络流量(例如,IP分组)和/或可以向网络430外部的设备提供网络流量。
网络设备420包括能够以本文描述的方式接收、处理、存储、路由和/或提供流量(例如,IP分组、ICMP OAM消息、遥测信息等)的一个或多个设备。例如,网络设备420可以包括路由器,诸如,标签交换路由器(LSR)、标签边缘路由器(LER)、入口路由器、出口路由器、运营商路由器(例如,运营商边缘路由器、运营商核心路由器等)、虚拟路由器等。附加或备选地,网络设备420可以包括网关、交换机、防火墙、集线器、桥接器、反向代理、服务器(例如,代理服务器、云服务器、数据中心服务器等)、负载平衡器和/或类似设备。
在一些实现中,网络设备420可以是被实现在外壳(诸如,机架)内的物理设备。在一些实现中,网络设备420可以是由云计算环境或数据中心的一个或多个计算机设备实现的虚拟设备。
在一些实现中,网络设备420可以从对等设备410接收IP分组。在一些实现中,网络设备420可以使用本文其它地方描述的一个或多个技术来将IP分组路由到另一网络设备420。在一些实现中,网络设备420可以是网络430中的边缘网络设备。在一些实现中,网络设备420可以是网络430中的中间网络设备(即,两个或多个边缘网络设备之间的网络设备)。
网络430包括一个或多个有线和/或无线网络。例如,网络430可以包括蜂窝网络(例如,第五代(5G)网络、第四代(4G)网络,诸如,长期演进(LTE)网络、第三代(3G)网络、码分多址(CDMA)网络、公共陆地移动网络(PLMN)、局域网(LAN)、广域网(WAN)、城域网(MAN)、电话网络(例如,公共交换电话网络(PSTN))、私有网络、自组网、内联网、互联网、基于光纤的网络、云计算网络等和/或这些或其它类型的网络的组合。
监测设备440包括能够存储、处理和/或路由与遥测信息相关联的信息的一个或多个设备。例如,监测设备440可以包括服务器设备,该服务器设备包括可以在与遥测信息相关联的路由信息的连接中被利用的计算资源。在一些实现中,监测设备440可以包括通信接口,该通信接口允许监测设备440从环境400中的其它设备(诸如,一个或多个对等设备410和/或一个或多个网络设备420)接收信息和/或将信息传输到环境400中的其它设备。
图4中所示的设备和网络的数目和布置被提供作为一个或多个示例。实际上,与图4所示的设备和/或网络相比,可能存在附加的设备和/或网络、更少设备和/或网络、不同的设备和/或网络、或者被不同布置的设备和/或网络。此外,图4所示的两个或多个设备可以实现在单个设备内,或者图4所示的单个设备可以被实现为多个分布式设备。附加或备选地,环境400的设备集合(例如,一个或多个设备)可以执行被描述为由环境400的另一设备集合执行的一个或多个功能。
图5A至图5B是图4的一个或多个设备的示例组件的示意图。图5A是设备500的示例组件的示意图。设备500可以对应于对等设备410、网络设备420和/或监测设备440。在一些实现中,对等设备410、网络设备420和/或监测设备可以包括一个或多个设备500和/或设备500的一个或多个组件。如图5A中所示,设备500可以包括总线505、处理器510、存储器515、存储组件520、输入组件525、输出组件530和通信接口535。
总线505包括允许在设备500的组件之间进行通信的组件。处理器510被实现在硬件、固件或硬件和软件的组合中。处理器510采取以下的形式:中央处理单元(CPU)、图形处理单元(GPU)、加速处理单元(APU)、微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、ASIC或另一类型的处理组件。在一些实现中,处理器510包括能够被编程来执行功能的一个或多个处理器。存储器515包括随机存取存储器(RAM)、只读存储器(ROM)和/或存储用于由处理器510使用的信息和/或指令的另一类型的动态或静态存储设备(例如,闪速存储器、磁性存储器和/或光学存储器)。
存储组件520存储与设备500的操作和使用相关的信息和/或软件。例如,存储组件520可以包括硬盘(例如,磁盘、光盘、磁光盘和/或固态盘)、光碟(CD)、数字通用光盘(DVD)、软盘、磁带盒、磁带和/或另一类型的非瞬态计算机可读介质以及对应的驱动器。
输入组件525包括允许设备500诸如经由用户输入(例如,触摸屏显示器、键盘、小键盘、鼠标、按钮、开关和/或麦克风)接收信息的组件。附加或备选地,输入组件525可以包括用于感测信息的传感器(例如,全球定位系统(GPS)组件、加速度计、陀螺仪和/或致动器)。输出组件530包括提供来自设备500的输出信息的组件(例如,显示器、扬声器和/或一个或多个发光二极管(LED))。
通信接口535包括使设备500能诸如经由有线连接、无线连接或者有线和无线连接的组合而与其它设备通信的收发器类组件(例如,收发器和/或单独的接收器和发射器)。通信接口535可以允许设备500从另一设备接收信息和/或向另一设备提供信息。例如,通信接口535可以包括以太网接口、光学接口、同轴接口、红外接口、射频(RF)接口、通用串行总线(USB)接口、Wi-Fi接口、蜂窝网络接口等。
设备500可以执行本文描述的一个或多个过程。设备500可以基于执行由非瞬态计算机可读介质(诸如,存储器515和/或存储组件520)存储的软件指令的处理器510来执行这些过程。计算机可读介质在本文中被定义为非瞬态存储器设备。存储器设备包括单个物理存储设备内的存储空间或者跨多个物理存储设备分布的存储空间。
可以经由通信接口535从另一计算机可读介质或者从另一设备将软件指令读取到存储器515和/或存储组件520中。在被执行时,被存储在存储器515和/或存储组件520中的软件指令可以使得处理器510执行本文描述的一个或多个过程。附加或备选地,硬连线电路系统可以代替软件指令使用或者与软件指令组合地被使用以执行本文描述的一个或多个过程。因此,本文描述的实现并不限于硬件电路系统和软件的任何特定组合。
图5A所示的组件的数目和布置作为示例被提供。实际上,与图5A所示的组件相比,设备500可以包括附加的组件、更少的组件、不同的组件、或者被不同布置的组件。附加或备选地,设备500的组件集合(例如,一个或多个组件)可以执行被描述为由设备500的另一组件集合执行的一个或多个功能。
图5B是设备550的示例组件的示意图。设备550可以对应于网络设备420。在一些实现中,网络设备420可以包括一个或多个设备550和/或设备550的一个或多个组件。如图5B所示,设备550可以包括一个或多个输入组件555-1至555-B(B>1)(在下文中统称为输入组件555,并且单独称为输入组件555)、交换组件560、一个或多个输出组件565-1至565-C(C>1)(在下文中统称为输出组件565,并且单独称为输出组件565)以及控制器570。
输入组件555可以是物理链路的附接点,并且可以是输入流量的入口点,诸如,分组(例如,IP分组)。输入组件555可以处理输入流量,诸如,通过执行数据链路层封装或解封装。在一些实现中,输入组件555可以发送和/或接收分组。在一些实现中,输入组件555可以包括输入线卡,其包括一个或多个分组处理组件(例如,具有集成电路的形式),诸如,一个或多个接口卡(IFC)、分组转发组件、线卡控制器组件、输入端口、处理器、存储器和/或输入队列。在一些实现中,设备550可以包括一个或多个输入组件555。
交换组件560可以使输入组件555与输出组件565互连。在一些实现中,交换组件560可以经由一个或多个交叉开关、经由总线和/或利用共享存储器而被实现。共享存储器可以充当临时缓冲器以在分组被最终调度以用于递送给输出组件565之前存储来自输入组件555的分组。在一些实现中,交换组件560可以支持输入组件555、输出组件565和/或控制器570进行通信。
输出组件565可以存储分组,并且可以调度分组以用于在输出物理链路上传输。输出组件565可以支持数据链路层封装或解封装和/或各种高级协议。在一些实现中,输出组件565可以发送分组和/或接收分组。在一些实现中,输出组件565可以包括输出线卡,其包括一个或多个分组处理组件(例如,集成电路的形式),诸如,一个或多个IFC、分组转发组件、线卡控制器组件、输出端口、处理器、存储器和/或输出队列。在一些实现中,设备550可以包括一个或多个输出组件565。在一些实现中,可以通过相同的组件集合来实现输入组件555和输出组件565(例如,并且输入/输出组件可以是输入组件555和输出组件565的组合)。
控制器570包括具有以下形式的的处理器:例如CPU、GPU、APU、微处理器、微控制器、DSP、FPGA、ASIC和/或另一类型的处理器。处理器被实现在硬件、固件或者硬件和软件的组合中。在一些实现中,控制器570可以包括可以被编程为执行功能的一个或多个处理器。
在一些实现中,控制器570可以包括RAM、ROM和/或存储用于控制器570使用的信息和/或指令的另一类型的动态或静态存储设备(例如,闪速存储器、磁性存储器、光学存储器等)。
在一些实现中,控制器570可以与被连接到设备500的其它设备、网络和/或系统通信以交换关于网络拓扑的信息。控制器570可以基于网络拓扑信息创建路由表,基于路由表创建转发表,并且将转发表转发到输入组件555和/或输出组件565。输入组件555和/或输出组件565可以使用转发表来执行针对输入和/或输出分组的路由查找。
控制器570可以执行本文描述的一个或多个过程。控制器570可以响应于执行由非瞬态计算机可读介质存储的软件指令来执行这些过程。计算机可读介质在本文中被定义为非瞬态存储器设备。存储器设备包括单个物理存储设备内的存储空间或者跨多个物理存储设备分布的存储空间。
可以经由通信接口从另一计算机可读介质或从另一设备将软件指令读取到与控制器570相关联的存储器和/或存储组件中。在被执行时,被存储在与控制器570相关联的存储器和/或存储组件中的软件指令可以使得控制器570执行本文描述的一个或多个过程。附加或备选地,硬连线电路系统可以代替软件指令使用或者与软件指令组合地使用以执行本文描述的一个或多个过程。因此,本文描述的实现并不限于硬件电路系统和软件的任何特定组合。
图5B所示的组件的数量和布置作为示例而被提供。实际上,与图5B所示的组件相比,设备550可以包括附加的组件、更少的组件、不同的组件或者被不同布置的组件。附加或备选地,设备550的组件集合(例如,一个或多个组件)可以执行被描述为由设备550的另一组件集合执行的一个或多个功能。
图6是针对IP OAM选项的示例过程600的流程图。在一些实现中,图6的一个或多个过程框可以由网络设备(例如,网络设备420)执行。在一些实现中,图6的一个或多个过程框可以由与网络设备分离或者包括网络设备的另一设备或设备组执行,诸如,对等设备(例如,对等设备410)、监测设备(例如,监测设备440)等。
如图6中所示,过程600可以包括接收包括IP分组报头的互联网协议(IP)分组,其中IP分组报头包括目的地IP地址,其中IP分组报头利用至少一个扩展报头而被补充,该至少一个扩展报头包括以下中的至少一项:逐跳选项报头、在路由报头之前的第一目的地选项报头或者在上层报头之前的第二目的地选项报头(框610)。例如,网络设备(例如,使用处理器510、存储器515、存储组件520、输入组件525、输出组件530、通信接口535、输入组件555、交换组件560、输出组件565、控制器570等)可以通过网络设备接收包括IP分组报头的互联网协议(IP)分组,如上所述。在一些实现中,IP分组报头包括目的地IP地址。在一些实现中,IP分组报头利用至少一个扩展报头而被补充,该至少一个扩展报头包括以下中的至少一项:逐跳选项报头、在路由报头之前的第一目的地选项报头或者在上层报头之前的第二目的地选项报头。
如图6进一步示出的,过程600可以包括:确定逐跳选项报头包括操作和管理能力(OAM)选项,第一目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址或在路由报头中标识的路由IP地址相匹配,或者第二目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址相匹配(框620)。例如,网络设备(例如,使用处理器510、存储器515、存储组件520、输入组件525、输出组件530、通信接口535、输入组件555、交换组件560、输出组件565、控制器570等)可以确定逐跳选项报头包括操作和管理能力(OAM)选项,第一目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址或在路由报头中标识的路由IP地址相匹配,或者第二目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址相匹配,如上面所描述的。
如图6进一步示出的,过程600可以包括执行由OAM选项所指示的一个或多个动作(框630)。例如,网络设备(例如,使用处理器510、存储器515、存储组件520、输入组件525、输出组件530、通信接口535、输入组件555、交换组件560、输出组件565、控制器570等)可以执行由OAM选项所指示的一个或多个动作,如上面所描述的。
过程600可以包括附加实现,诸如,任何单个实现或者下面描述和/或结合本文其它地方描述的一个或多个其它过程的实现的任何组合。
在一些实现中,OAM选项包括指示OAM选项的选项类型字段、指示OAM选项的选项数据字段的长度的选项数据长度字段以及指示一个或多个动作的选项数据字段。在一些实现中,OAM选项包括指示一个或多个动作的选项数据字段。
在一些实现中,一个或多个动作包括以下中的至少一项:记录IP分组,增加与网络设备相关联的计数器,将ICMP OAM消息发送到被包括在IP分组报头中的源IP地址或者将关于IP分组的遥测信息发送到监测设备。
在一些实现中,一个或多个动作包括将ICMP OAM消息发送到被包括在IP分组报头中的源IP地址。在一些实现中,ICMP OAM消息包括:类型字段;代码字段;校验和字段;长度字段;预留字段;以秒为单位的时间戳字段;以几分之一秒为单位的时间戳字段;以及原始数据报字段。
在一些实现中,一个或多个动作包括将ICMP OAM消息发送到被包括在IP分组报头中的源IP地址。在一些实现中,ICMP OAM消息包括指示ICMP OAM消息是信息消息的代码字段。
在一些实现中,一个或多个动作包括将ICMP OAM消息发送到被包括在IP分组报头中的源IP地址。在一些实现中,ICMP OAM消息包括原始数据报字段,该原始数据报字段包括IP分组。
尽管图6示出了过程600的示例框,但是在一些实现中,与图6所描绘的框相比,过程600可以包括附加的框、更少的框、不同的框或者被不同布置的框。附加或备选地,可以并行地执行过程600的两个或多个框。
图7是针对IP OAM选项的示例过程700的流程图。在一些实现中,图7的一个或多个过程框可以由网络设备(例如,网络设备420)执行。在一些实现中,图7的一个或多个过程框可以由与网络设备分离或者包括网络设备的另一设备或设备组执行,诸如,对等设备(例如,对等设备410)、监测设备(例如,监测设备440)等。
如图7所示,过程700可以包括接收包括IP分组报头的互联网协议(IP)分组,其中IP分组报头包括目的地IP地址,其中IP分组报头利用至少一个扩展报头而被补充,该至少一个扩展报头包括以下中的至少一项:逐跳选项报头、在路由报头之前的第一目的地选项报头或者在上层报头之前的第二目的地选项报头(框710)。例如,网络设备(例如,使用处理器510、存储器515、存储组件520、输入组件525、输出组件530、通信接口535、输入组件555、交换组件560、输出组件565、控制器570等)可以接收包括IP分组报头的互联网协议(IP)分组,如上面所描述的。在一些实现中,IP分组报头包括目的地IP地址。在一些实现中,IP分组报头利用至少一个扩展报头而被补充,该至少一个扩展报头包括以下中的至少一项:逐跳选项报头、在路由报头之前的第一目的地选项报头或者在上层报头之前的第二目的地选项报头。
如图7进一步示出的,过程700可以包括确定逐跳选项报头、第一目的地选项报头或者第二目的地选项报头包括操作和管理能力(OAM)选项(框720)。例如,网络设备(例如,使用处理器510、存储器515、存储组件520、输入组件525、输出组件530、通信接口535、输入组件555、交换组件560、输出组件565、控制器570等)可以确定逐跳选项报头、第一目的地选项报头或者第二目的地选项报头包括操作和管理能力(OAM)选项,如上面所描述的。
如图7进一步示出的,过程700可以包括当处于以下情况时执行由OAM选项所指示的一个或多个动作:逐跳选项报头包括OAM选项,第一目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址或在路由报头中被识别的路由IP地址相匹配,或者第二目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址相匹配(框730)。例如,网络设备(例如,使用处理器510、存储器515、存储组件520、输入组件525、输出组件530、通信接口535、输入组件555、交换组件560、输出组件565、控制器570等)可以在处于以下情况时执行由OAM选项所指示的一个或多个动作:逐跳选项报头包括OAM选项,第一目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址或在路由报头中标识的路由IP地址相匹配,或者第二目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址相匹配,如上面所描述的。
过程700可以包括附加实现,诸如,任何单个实现或者下面描述和/或结合本文其它地方描述的一个或多个其它过程的实现的任何组合。
在一些实现中,OAM选项包括八比特的选项类型字段、八比特的选项数据长度字段和十六比特的选项数据字段。在一些实现中,OAM选项包括指示一个或多个动作的选项数据字段。在一些实现中,选项数据字段包括多个比特,其中多个比特中的特定比特与一个或多个动作中的特定动作相关联。
在一些实现中,一个或多个动作包括记录IP分组。在一些实现中,当记录IP分组时,网络设备可以生成记录,该记录指示生成记录的时间和网络设备接收到IP分组的时间,并且可以向数据结构发送记录,将被保存在数据结构中。在一些实现中,一个或多个动作包括将ICMP OAM消息发送到被包括在IP分组报头中的源IP地址。在一些实现中,ICMP OAM消息包括:八比特的类型字段、八比特的代码字段、十六比特的校验和字段、八比特的长度字段、二十四比特的预留字段、三十二比特的以秒为单位的时间戳字段、三十二比特的以几分之一秒为单位的时间戳字段以及大小是三十二比特的倍数的原始数据报字段。
在一些实现中,一个或多个动作包括将ICMP OAM消息发送到被包括在IP分组报头中的源IP地址。在一些实现中,ICMP OAM消息包括指示ICMP OAM消息不是误差消息的代码字段。在一些实现中,一个或多个动作包括将ICMP OAM消息发送到被包括在IP分组报头中的源IP地址。在一些实现中,ICMP OAM消息包括以秒为单位的时间戳字段。在一些实现中,以秒为单位的时间戳字段指示网络设备接收到IP分组的、具有网络时间协议(NTP)格式的时间。在一些实现中,一个或多个动作包括将关于IP分组的遥测信息发送到监测设备。在一些实现中,遥测信息包括IP分组并且指示网络设备接收到IP分组的时间。
尽管图7示出了过程700的示例框,但是在一些实现中,与图7所描绘的框相比,过程700可以包括附加的框、更少的框、不同的框、或者被不同布置的框。附加或备选地,可以并行地执行过程700的两个或多个框。
图8是针对IP OAM选项的示例过程800的流程图。在一些实现中,图8的一个或多个过程框可以由网络设备(例如,网络设备420)执行。在一些实现中,图8的一个或多个过程框可以由与网络设备分离或者包括网络设备的另一设备或设备组执行,诸如,对等设备(例如,对等设备410)、监测设备(例如,监测设备440)等。
如图8中所示,过程800可以包括接收包括IP分组报头的互联网协议(IP)分组,其中IP分组报头包括源IP地址和目的地IP地址,其中IP分组报头利用至少一个扩展报头而被补充,该至少一个扩展报头包括以下中的至少一项:逐跳选项报头、在路由报头之前的第一目的地选项报头或者在上层报头之前的第二目的地选项报头(框810)。例如,网络设备(例如,使用处理器510、存储器515、存储组件520、输入组件525、输出组件530、通信接口535、输入组件555、交换组件560、输出组件565、控制器570等)可以接收包括IP分组报头的互联网协议(IP)分组,如上面所描述的。在一些实现中,IP分组报头包括源IP地址和目的地IP地址。在一些实现中,IP分组报头利用至少一个扩展报头而被补充,该至少一个扩展报头包括以下中的至少一项:逐跳选项报头、在路由报头之前的第一目的地选项报头或者在上层报头之前的第二目的地选项报头。
如图8中进一步示出的,过程800可以包括确定网络设备的IP地址(框820)。例如,网络设备(例如,使用处理器510、存储器515、存储组件520、输入组件525、输出组件530、通信接口535、输入组件555、交换组件560、输出组件565、控制器570等)可以确定网络设备的IP地址,如上面所描述的。
如图8中进一步示出的,过程800可以包括确定:逐跳选项报头包括操作和管理能力(OAM)选项,第一目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址或在路由报头中标识的路由IP地址相匹配,或者第二目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址相匹配(框830)。例如,网络设备(例如,使用处理器510、存储器515、存储组件520、输入组件525、输出组件530、通信接口535、输入组件555、交换组件560、输出组件565、控制器570等)可以确定:逐跳选项报头包括操作和管理能力(OAM)选项,第一目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址或在路由报头中标识的路由IP地址相匹配,或者第二目的地选项报头包括OAM选项并且网络设备的IP地址与目的地IP地址相匹配,如上面所描述的。
如图8进一步示出的,过程800可以包括基于OAM选项生成ICMP OAM消息(框840)。例如,网络设备(例如,使用处理器510、存储器515、存储组件520、输入组件525、输出组件530、通信接口535、输入组件555、交换组件560、输出组件565、控制器570等)可以基于OAM选项生成ICMP OAM消息,如上面所描述的。
如图8中进一步示出的,过程800可以包括将ICMP OAM消息发送到源IP地址(框850)。例如,网络设备(例如,使用处理器510、存储器515、存储组件520、输入组件525、输出组件530、通信接口535、输入组件555、交换组件560、输出组件565、控制器570等)可以将ICMP OAM消息发送到源IP地址,如上面所描述的。
过程800可以包括附加实现,诸如,任何单个实现或者下面描述和/或结合本文其它地方描述的一个或多个其它过程的实现的任何组合。
在一些实现中,OAM选项包括选项类型字段,该选项类型字段包括多个比特。在一些实现中,多个比特中的一个或多个比特向不识别选项类型字段的特定网络设备指示:特定网络设备将跳过选项类型字段,并且特定网络设备要继续处理包括OAM选项的逐跳选项报头、第一目的地选项报头或者第二目的地选项报头。
在一些实现中,ICMP OAM消息包括长度字段和原始数据报字段。在一些实现中,长度字段指示原始数据报字段的长度。在一些实现中,长度以三十二比特的字为单位来测量。
在一些实现中,ICMP OAM消息包括以秒为单位的时间戳字段和以几分之一秒为单位的时间戳字段。在一些实现中,以秒为单位的时间戳字段指示网络设备接收到IP分组的、根据网络时间协议(NTP)格式的以秒为单位的时间。在一些实现中,以几分之一秒为单位的时间戳字段指示网络设备接收到IP分组的、根据NTP格式的以几分之一秒为单位的时间。
在一些实现中,ICMP OAM消息包括原始数据报字段,该原始数据报字段包括零填充到最近的三十二比特边界的IP分组。
尽管图8示出了过程800的示例框,但是在一些实现中,与图8所描绘的框相比,过程800可以包括附加的框、更少的框、不同的框、或者被不同布置的框。附加或备选地,可以并行地执行过程800的两个或多个框。
根据本公开的一个方面,提供了互联网协议操作和管理选项的方法,包括:由网络设备接收包括IP分组报头的互联网协议(IP)分组,其中IP分组报头包括目的地IP地址,其中IP分组报头利用至少一个扩展报头而被补充,至少一个扩展报头包括以下中的至少一项:逐跳选项报头,在路由报头之前的第一目的地选项报头,或者在上层报头之前的第二目的地选项报头;由网络设备确定:逐跳选项报头包括操作和管理能力(OAM)选项,第一目的地选项报头包括OAM选项,并且网络设备的IP地址与目的地IP地址或者在路由报头中被标识的路由IP地址相匹配,或者第二目的地选项报头包括OAM选项,并且网络设备的IP地址与目的地IP地址相匹配;以及执行由OAM选项所指示的一个或多个动作。
根据本公开的实施例,其中OAM选项包括:指示OAM选项的选项类型字段、指示OAM选项的选项数据字段的长度的选项数据长度字段、以及指示一个或多个动作的选项数据字段。
根据本公开的实施例,其中OAM选项包括指示一个或多个动作的选项数据字段。
根据本公开的实施例,其中一个或多个动作包括以下中的至少一项:记录IP分组;增加与网络设备相关联的计数器;向被包括在IP分组报头中的源IP地址发送ICMP OAM消息;或者向监测设备发送关于IP分组的遥测信息。
根据本公开的实施例,其中一个或多个动作包括向被包括在IP分组报头中的源IP地址发送ICMP OAM消息,其中,ICMP OAM消息包括:类型字段;代码字段;校验和字段;长度字段;预留字段;以秒为单位的时间戳字段;以几分之一秒为单位的时间戳字段;以及原始数据报字段。
根据本公开的实施例,其中一个或多个动作包括向被包括在IP分组报头中的源IP地址发送ICMP OAM消息,其中ICMP OAM消息包括代码字段,代码字段指示ICMP OAM消息是信息消息。
根据本公开的实施例,其中一个或多个动作包括向被包括在IP分组报头中的源IP地址发送ICMP OAM消息,其中ICMP OAM消息包括原始数据报字段,原始数据报字段包括IP分组。
根据本公开的第二方面,提供了用于互联网协议操作和管理选项的网络设备,包括:一个或多个存储器;以及一个或多个处理器,用以:接收包括IP分组报头的互联网协议(IP)分组,其中IP分组报头包括目的地IP地址,其中IP分组报头利用至少一个扩展报头而被补充,至少一个扩展报头包括以下中的至少一项:逐跳选项报头,在路由报头之前的第一目的地选项报头,或者在上层报头之前的第二目的地选项报头;确定逐跳选项报头、第一目的地选项报头或者第二目的地选项报头包括操作和管理能力(OAM)选项;以及当处于以下情况时,执行由OAM选项所指示的一个或多个动作:逐跳选项报头包括OAM选项,第一目的地选项报头包括OAM选项,并且网络设备的IP地址与目的地IP地址或者在路由报头中被标识的路由IP地址相匹配,或者第二目的地选项报头包括OAM选项,并且网络设备的IP地址与目的地IP地址相匹配。
根据本公开的实施例,其中OAM选项包括八比特的选项类型字段、八比特的选项数据长度字段和十六比特的选项数据字段。
根据本公开的实施例,其中OAM选项包括指示一个或多个动作的选项数据字段,其中选项数据字段包括多个比特,其中多个比特中的特定比特与一个或多个动作中的特定动作相关联。
根据本公开的实施例,其中一个或多个动作包括记录IP分组,其中在记录IP分组时,一个或多个处理器进一步用以:生成记录,记录指示记录被生成的时间以及网络设备接收到IP分组的时间;以及向数据结构发送记录,将被保存在数据结构中。
根据本公开的实施例,其中一个或多个动作包括向被包括在IP分组报头中的源IP地址发送ICMP OAM消息,其中,ICMP OAM消息包括:八比特的类型字段;八比特的代码字段;十六比特的校验和字段;八比特的长度字段;二十四比特的预留字段;三十二比特的以秒为单位的时间戳字段;三十二比特的以几分之一秒为单位的时间戳字段;以及具有大小是三十二比特的倍数的原始数据报字段。
根据本公开的实施例,其中一个或多个动作包括向被包括在IP分组报头中的源IP地址发送ICMP OAM消息,其中ICMP OAM消息包括代码字段,代码字段指示ICMP OAM消息不是误差消息。
根据本公开的实施例,其中一个或多个动作包括向被包括在IP分组报头中的源IP地址发送ICMP OAM消息,其中ICMP OAM消息包括以秒为单位的时间戳字段,其中以秒为单位的时间戳字段指示网络设备接收到IP分组的、具有网络时间协议(NTP)格式的时间。
根据本公开的实施例,其中一个或多个动作包括向监测设备发送关于IP分组的遥测信息,其中遥测信息包括IP分组并且指示网络设备接收到IP分组的时间。
根据本公开的第三方面,提供了存储指令的非瞬态计算机可读介质,指令包括:一个或多个指令,一个或多个指令在由网络设备的一个或多个处理器执行时使得一个或多个处理器:接收包括IP分组报头的互联网协议(IP)分组,其中IP分组报头包括源IP地址和目的地IP地址,其中IP分组报头利用至少一个扩展报头而被补充,至少一个扩展报头包括以下中的至少一项:逐跳选项报头,在路由报头之前的第一目的地选项报头,或者在上层报头之前的第二目的地选项报头;确定网络设备的IP地址;确定:逐跳选项报头包括操作和管理能力(OAM)选项,第一目的地选项报头包括OAM选项,并且网络设备的IP地址与目的地IP地址或者在路由报头中被标识的路由IP地址相匹配,或者第二目的地选项报头包括OAM选项,并且网络设备的IP地址与目的地IP地址相匹配;基于OAM选项,生成ICMP OAM消息;以及向源IP地址发送ICMP OAM消息。
根据本公开的实施例,其中OAM选项包括选项类型字段,选项类型字段包括多个比特,其中多个比特中的一个或多个比特向不识别选项类型字段的特定网络设备指示:特定网络设备将跳过选项类型字段,以及特定网络设备将继续处理包括OAM选项的逐跳选项报头、第一目的地选项报头或者第二目的地选项报头。
根据本公开的实施例,其中ICMP OAM消息包括长度字段和原始数据报字段,其中长度字段指示原始数据报字段的长度,其中长度以三十二比特字为单位被测量。
根据本公开的实施例,其中ICMP OAM消息包括以秒为单位的时间戳字段和以几分之一秒为单位的时间戳字段,其中以秒为单位的时间戳字段指示网络设备接收到IP分组的、根据网络时间协议(NTP)格式的以秒为单位的时间,其中以几分之一秒为单位的时间戳字段指示网络设备接收到IP分组的、根据NTP格式的以几分之一秒为单位的时间。
根据本公开的实施例,其中ICMP OAM消息包括原始数据报字段,原始数据报字段包括被零填充到最近的三十二比特边界的IP分组。
前述公开内容提供了说明和描述,但并非旨在穷举实现或将实现限制于所公开的精确形式。鉴于以上公开内容,修改和变型是可能的,或者可以从实现的实践中获取修改和变型。
如本文所使用的,术语流量或内容可以包括分组的集合。分组可以指用于传送信息的通信结构,诸如,协议数据单元(PDU)、网络分组、数据报、区段、消息、块、小区、帧、子帧、时隙、符号、上述的任何的一部分和/或能够经由网络传输的另一类型的格式化或未格式化的数据单元。
如本文所使用的,术语“组件”旨在被广义地解释为硬件、固件和/或硬件和软件的组合。
将显见的是,本文描述的系统和/或方法可以以硬件、固件或者硬件和软件的组合的不同形式来实现。用于实现这些系统和/或方法的实际的专用控制硬件或软件代码并不限制该实现。因此,本文描述了系统和/或方法的操作和行为,而没有参照特定的软件代码–要理解,软件和硬件可以被设计为基于本文的描述来实现系统和/或方法。
即使特征的特定组合被记载在权利要求书中和/或公开在说明书中,但是这些组合并不旨在限制各种实现的公开内容。实际上,这些特征中的许多特征可以以未被具体记载在权利要求书中和/或公开在说明书中的方式被组合。尽管本文列举的每项从属权利要求都可以仅直接依赖于一项权利要求,但是各种实现的公开内容包括与权利要求集合中的每项其它权利要求组合的每项从属权利要求。
除非明确地这样描述,否则本文使用的元件、动作或指令不应被解释为关键或必要的。而且,如本文所使用的,冠词“一”和“一个”旨在包括一个或多个项目,并且可以与“一个或多个”互换使用。此外,如本文所使用的,术语“集合”旨在包括一个或多个项目(例如,相关项目、不相关项目、相关项目和不相关项目的组合等),并且可以与“一个或多个”互换使用。在仅有一个项目的情况下,使用术语“仅一个”或类似语言。而且,如本文所使用的,术语“具有(has)”、“具有(have)”、“具有(having)”等旨在作为开放式术语。进一步地,除非另有明确规定,否则短语“基于”旨在表示“至少部分地基于”。

Claims (20)

1.一种方法,包括:
由网络设备接收包括IP分组报头的互联网协议(IP)分组,
其中所述IP分组报头包括目的地IP地址,
其中所述IP分组报头利用至少一个扩展报头而被补充,所述至少一个扩展报头包括以下中的至少一项:
逐跳选项报头,
在路由报头之前的第一目的地选项报头,或者
在上层报头之前的第二目的地选项报头;
由所述网络设备确定:
所述逐跳选项报头包括操作和管理能力(OAM)选项,
所述第一目的地选项报头包括所述OAM选项,并且所述网络设备的IP地址与所述目的地IP地址或者在所述路由报头中被标识的路由IP地址相匹配,或者
所述第二目的地选项报头包括所述OAM选项,并且所述网络设备的所述IP地址与所述目的地IP地址相匹配;以及
执行由所述OAM选项所指示的一个或多个动作。
2.根据权利要求1所述的方法,其中所述OAM选项包括:指示所述OAM选项的选项类型字段、指示所述OAM选项的选项数据字段的长度的选项数据长度字段、以及指示所述一个或多个动作的所述选项数据字段。
3.根据权利要求1所述的方法,其中所述OAM选项包括指示所述一个或多个动作的选项数据字段。
4.根据权利要求1所述的方法,其中所述一个或多个动作包括以下中的至少一项:
记录所述IP分组;
增加与所述网络设备相关联的计数器;
向被包括在所述IP分组报头中的源IP地址发送ICMP OAM消息;或者
向监测设备发送关于所述IP分组的遥测信息。
5.根据权利要求1所述的方法,其中所述一个或多个动作包括向被包括在所述IP分组报头中的源IP地址发送ICMP OAM消息,
其中,所述ICMP OAM消息包括:
类型字段;
代码字段;
校验和字段;
长度字段;
预留字段;
以秒为单位的时间戳字段;
以几分之一秒为单位的时间戳字段;以及
原始数据报字段。
6.根据权利要求1所述的方法,其中所述一个或多个动作包括向被包括在所述IP分组报头中的源IP地址发送ICMP OAM消息,
其中所述ICMP OAM消息包括代码字段,所述代码字段指示所述ICMP OAM消息是信息消息。
7.根据权利要求1所述的方法,其中所述一个或多个动作包括向被包括在所述IP分组报头中的源IP地址发送ICMP OAM消息,
其中所述ICMP OAM消息包括原始数据报字段,所述原始数据报字段包括所述IP分组。
8.一种网络设备,包括:
一个或多个存储器;以及
一个或多个处理器,用以:
接收包括IP分组报头的互联网协议(IP)分组,
其中所述IP分组报头包括目的地IP地址,
其中所述IP分组报头利用至少一个扩展报头而被补充,所述至少一个扩展报头包括以下中的至少一项:
逐跳选项报头,
在路由报头之前的第一目的地选项报头,或者
在上层报头之前的第二目的地选项报头;
确定所述逐跳选项报头、所述第一目的地选项报头或者所述第二目的地选项报头包括操作和管理能力(OAM)选项;以及
当处于以下情况时,执行由所述OAM选项所指示的一个或多个动作:
所述逐跳选项报头包括所述OAM选项,
所述第一目的地选项报头包括所述OAM选项,并且所述网络设备的IP地址与所述目的地IP地址或者在所述路由报头中被标识的路由IP地址相匹配,或者
所述第二目的地选项报头包括所述OAM选项,并且所述网络设备的所述IP地址与所述目的地IP地址相匹配。
9.根据权利要求8所述的网络设备,其中所述OAM选项包括八比特的选项类型字段、八比特的选项数据长度字段和十六比特的选项数据字段。
10.根据权利要求8所述的网络设备,其中所述OAM选项包括指示所述一个或多个动作的选项数据字段,
其中所述选项数据字段包括多个比特,
其中所述多个比特中的特定比特与所述一个或多个动作中的特定动作相关联。
11.根据权利要求8所述的网络设备,其中所述一个或多个动作包括记录所述IP分组,
其中在记录所述IP分组时,所述一个或多个处理器进一步用以:
生成记录,所述记录指示所述记录被生成的时间以及所述网络设备接收到所述IP分组的时间;以及
向数据结构发送所述记录,将被保存在所述数据结构中。
12.根据权利要求8所述的网络设备,其中所述一个或多个动作包括向被包括在所述IP分组报头中的源IP地址发送ICMP OAM消息,
其中,所述ICMP OAM消息包括:
八比特的类型字段;
八比特的代码字段;
十六比特的校验和字段;
八比特的长度字段;
二十四比特的预留字段;
三十二比特的以秒为单位的时间戳字段;
三十二比特的以几分之一秒为单位的时间戳字段;以及
具有大小是三十二比特的倍数的原始数据报字段。
13.根据权利要求8所述的网络设备,其中所述一个或多个动作包括向被包括在所述IP分组报头中的源IP地址发送ICMP OAM消息,
其中所述ICMP OAM消息包括代码字段,所述代码字段指示所述ICMP OAM消息不是误差消息。
14.根据权利要求8所述的网络设备,其中所述一个或多个动作包括向被包括在所述IP分组报头中的源IP地址发送ICMP OAM消息,
其中所述ICMP OAM消息包括以秒为单位的时间戳字段,
其中所述以秒为单位的时间戳字段指示所述网络设备接收到所述IP分组的、具有网络时间协议(NTP)格式的时间。
15.根据权利要求8所述的网络设备,其中所述一个或多个动作包括向监测设备发送关于所述IP分组的遥测信息,
其中所述遥测信息包括所述IP分组并且指示所述网络设备接收到所述IP分组的时间。
16.一种存储指令的非瞬态计算机可读介质,所述指令包括:
一个或多个指令,所述一个或多个指令在由网络设备的一个或多个处理器执行时使得所述一个或多个处理器:
接收包括IP分组报头的互联网协议(IP)分组,
其中所述IP分组报头包括源IP地址和目的地IP地址,
其中所述IP分组报头利用至少一个扩展报头而被补充,所述至少一个扩展报头包括以下中的至少一项:
逐跳选项报头,
在路由报头之前的第一目的地选项报头,或者
在上层报头之前的第二目的地选项报头;
确定所述网络设备的IP地址;
确定:
所述逐跳选项报头包括操作和管理能力(OAM)选项,
所述第一目的地选项报头包括所述OAM选项,并且所述网络设备的所述IP地址与所述目的地IP地址或者在所述路由报头中被标识的路由IP地址相匹配,或者
所述第二目的地选项报头包括所述OAM选项,并且所述网络设备的所述IP地址与所述目的地IP地址相匹配;
基于所述OAM选项,生成ICMP OAM消息;以及
向所述源IP地址发送所述ICMP OAM消息。
17.根据权利要求16所述的非瞬态计算机可读介质,其中所述OAM选项包括选项类型字段,所述选项类型字段包括多个比特,
其中所述多个比特中的一个或多个比特向不识别所述选项类型字段的特定网络设备指示:
所述特定网络设备将跳过所述选项类型字段,以及
所述特定网络设备将继续处理包括所述OAM选项的所述逐跳选项报头、所述第一目的地选项报头或者所述第二目的地选项报头。
18.根据权利要求16所述的非瞬态计算机可读介质,其中所述ICMP OAM消息包括长度字段和原始数据报字段,
其中所述长度字段指示所述原始数据报字段的长度,
其中所述长度以三十二比特字为单位被测量。
19.根据权利要求16所述的非瞬态计算机可读介质,其中所述ICMP OAM消息包括以秒为单位的时间戳字段和以几分之一秒为单位的时间戳字段,
其中所述以秒为单位的时间戳字段指示所述网络设备接收到所述IP分组的、根据网络时间协议(NTP)格式的以秒为单位的时间,
其中所述以几分之一秒为单位的时间戳字段指示所述网络设备接收到所述IP分组的、根据所述NTP格式的以几分之一秒为单位的时间。
20.根据权利要求16所述的非瞬态计算机可读介质,其中所述ICMP OAM消息包括原始数据报字段,所述原始数据报字段包括被零填充到最近的三十二比特边界的所述IP分组。
CN201910570429.7A 2019-02-22 2019-06-27 互联网协议操作和管理选项 Pending CN111614564A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201962809148P 2019-02-22 2019-02-22
US62/809,148 2019-02-22

Publications (1)

Publication Number Publication Date
CN111614564A true CN111614564A (zh) 2020-09-01

Family

ID=72203117

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910570429.7A Pending CN111614564A (zh) 2019-02-22 2019-06-27 互联网协议操作和管理选项

Country Status (1)

Country Link
CN (1) CN111614564A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080159287A1 (en) * 2006-12-29 2008-07-03 Lucent Technologies Inc. EFFICIENT PERFORMANCE MONITORING USING IPv6 CAPABILITIES
CN102271079A (zh) * 2010-06-04 2011-12-07 华为技术有限公司 报文转发的方法、节点和系统
CN103181134A (zh) * 2011-10-20 2013-06-26 华为技术有限公司 用于发送和接收IPv6数据包的方法和装置
CN107567704A (zh) * 2015-04-27 2018-01-09 思科技术公司 使用带内元数据的网络路径通过验证

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080159287A1 (en) * 2006-12-29 2008-07-03 Lucent Technologies Inc. EFFICIENT PERFORMANCE MONITORING USING IPv6 CAPABILITIES
CN102271079A (zh) * 2010-06-04 2011-12-07 华为技术有限公司 报文转发的方法、节点和系统
CN103181134A (zh) * 2011-10-20 2013-06-26 华为技术有限公司 用于发送和接收IPv6数据包的方法和装置
CN107567704A (zh) * 2015-04-27 2018-01-09 思科技术公司 使用带内元数据的网络路径通过验证

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
S. DEERING等: "Internet Protocol, Version 6 (IPv6) Specification draft-ietf-6man-rfc2460bis-02", 《IETF 》 *
S. PREVIDI;INDIVIDUAL;C. FILSFILS等: "IPv6 Segment Routing Header (SRH) draft-ietf-6man-segment-routing-header-12", 《IETF 》 *
Z. ALI,等: ""Operations, Administration, and Maintenance (OAM) in Segment Routing Networks with IPv6 Data plane (SRv6) draft-ali-spring-srv6-oam-00.txt"", 《IETF》 *

Similar Documents

Publication Publication Date Title
EP3958521A1 (en) Method and apparatus for providing service for service flow
US11902153B1 (en) Compressed routing header
KR20230031979A (ko) 패킷 처리 방법, 관련 기기 및 컴퓨터 저장 매체
CN113285863B (zh) 经由多个隧道传输加密的分组的多个副本
CN110557342B (zh) 用于分析和减轻丢弃的分组的设备
CN111988266B (zh) 一种处理报文的方法
US20220255857A1 (en) Packet Processing Method, Network Node, and System
US20210014163A1 (en) Per path and per link traffic accounting
US11140200B1 (en) Distributing a network policy using connectivity fault management
CN112787922A (zh) 一种报文处理的方法、网络节点和系统
CN114915638B (zh) 用于网络管理的方法和设备以及计算机可读介质
US11909650B2 (en) Internet protocol operations and management option
US11757747B2 (en) Preventing traffic outages during address resolution protocol (ARP) storms
EP3585001A1 (en) A method for resetting a packet processing component to an operational state
CN111614564A (zh) 互联网协议操作和管理选项
US11570073B1 (en) Service status notification
US11777847B1 (en) Point-to-multipoint transport chain
CN113452543B (zh) 多宿主错误配置的检测
US20240098020A1 (en) Transport of vpn traffic with reduced header information
US12015544B1 (en) Backup route for network devices in multihoming configuration
US12003483B1 (en) Smart firewall filtering in a label-based network
US11516321B1 (en) Providing timing information from a network via a virtual network address
EP4415325A1 (en) Message processing method, apparatus and system
CN117440057A (zh) 报文转发方法、系统、网络设备、存储介质及程序产品
CN117376241A (zh) 具有路由区分符的比特索引显式复制(bier)通告

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
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20200901