CN115225732A - 一种操作维护管理oam检测方法及装置 - Google Patents
一种操作维护管理oam检测方法及装置 Download PDFInfo
- Publication number
- CN115225732A CN115225732A CN202110656611.1A CN202110656611A CN115225732A CN 115225732 A CN115225732 A CN 115225732A CN 202110656611 A CN202110656611 A CN 202110656611A CN 115225732 A CN115225732 A CN 115225732A
- Authority
- CN
- China
- Prior art keywords
- message
- field
- oam
- oam message
- detection
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
-
- 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/02—Standardisation; Integration
-
- 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/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- 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/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0852—Delays
-
- 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/0852—Delays
- H04L43/087—Jitter
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/06—Notations for structuring of protocol data, e.g. abstract syntax notation one [ASN.1]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种操作维护管理OAM检测方法及装置,该方法包括:获取第一I Pv6报文,第一I Pv6报文的I Pv6扩展头携带第一OAM消息,其中,第一OAM消息包括类型T字段和值V字段,T字段指示第一OAM消息的类型,V字段承载第一OAM消息的内容;发送第一I Pv6报文。实施本申请,能够实现OAM消息的数据面处理,提高OAM消息的处理效率。
Description
本申请要求于2021年04月21日提交中国知识产权局、申请号为202110431348.6、发明名称为“一种通信方法,设备和系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信领域,尤其涉及一种操作维护管理OAM检测方法及装置。
背景技术
操作维护管理(Operation Administration and Maintenance,OAM)是一种监控网络故障的工具,其主要功能有:链路性能监测(例如,丢包、时延等)、连通性检测等。用户通过在两个点到点连接的设备上启用以太网OAM功能,可以监控这两台设备之间的链路状态。
OAM技术涉及连通性检测(Continuity Check,CC)/连通性验证(ContinuityVerification,CV)和性能检测(Performance Measurement,PM),现有OAM技术的实现需要多种协议,例如,用于CC的有多协议标签交换(Multiprotocol Label Switching,MPLS)Ping协议和双向转发检测(Bidirectional Forwarding Detection,BFD)协议,用于PM的双向主动测量(Two-Way Active Measurement Protocol,TWAMP)协议等。不同的协议具有不同的消息格式、会话标识、报文封装格式等,使得OAM技术的使用过程存在协议分散复杂、报文封装深导致消息处理效率低等缺点。
发明内容
本申请实施例公开了一种操作维护管理OAM检测方法和装置,能够实现OAM消息的数据面处理,提高OAM消息的处理效率。
第一方面,本申请实施例提供了一种操作维护管理OAM检测方法,该方法包括:获取第一IPV6报文,第一IPV6报文的IPV6扩展头携带第一OAM消息,第一OAM消息包括类型T字段和值V字段,其中,V字段用于承载第一OAM消息的内容,T字段用于指示第一OAM消息的类型;发送第一IPV6报文。
其中,OAM消息是一种操作维护管理消息,OAM消息可用于实现网络中任意两节点之间的性能测量和连通性检测功能中的一种或多种。上述方法中,通过IPV6扩展头携带OAM消息,实现OAM消息在数据面处理,提高了OAM消息的处理效率。另外,OAM消息中的T字段用于指示OAM消息的类型以及V字段用于承载OAM消息的内容,也就是说,对OAM消息的各种功能进行了整合,实现OAM消息的统一。
可选地,第一OAM消息不包括协议版本信息。
在现有技术中,基于不同协议的OAM检测报文,都分别携带各自的协议版本信息,协议分散复杂,报文封装深导致消息处理效率低,同时,网络设备需要维护多种协议,也增加了维护的难度。而根据本申请,由于采用了统一的OAM消息格式,因此在第一OAM消息中无需包括协议版本信息,因此可有效简化协议封装,设备无需支持多种协议版本信息的解析,将多种协议统一到网络层上处理,无需维护多个协议,大大降低了对设备的要求。
可选地,T字段指示第一OAM消息为回显echo消息。
其中,回显echo消息包括回显请求echo request消息和回显应答echo reply消息,T字段指示第一OAM消息为回显消息,使得第一OAM消息可用于实现连通性检测。
可选地,T字段取值为第一值时,指示第一OAM消息为echo request消息,T字段取值为第二值时,指示第一OAM消息为echo reply消息。
可选地,T字段取值为第三值时,指示第一OAM消息的类型为echo消息,此时不区分echo消息的具体类型。通过在TLV字段中增加标识字段,来标识echo消息的具体类型。例如,第一标识字段用于标识echo消息为echo request消息,第二标识字段用于标识echo消息为echo reply消息。对于标识字段的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。关于标识字段在TLV字段中的承载方式,本申请不做具体限定。一种具体的实现方式中,上述标识字段可以承载在V字段中。当然,也可以在T字段中设置预留的比特位,用于承载上述标识字段。
可选地,在获取第一IPv6报文之前,该方法还包括:接收第二IPv6报文,第二IPv6报文中包括第二OAM消息,第一OAM消息为第二OAM消息的响应;根据第二IPv6报文,获取第一IPv6报文。
可以理解,在此情况下,上述第二OAM消息为回显请求消息,第一OAM消息为回显应答消息。
可选地,V字段还包括以下一个或多个字段:序列号字段,用于承载该echo消息的序列号;返回代码return codes字段,其中,return codes字段用于承载反射端对发送端发送的echo消息的响应结果;第一回复模式字段,第一回复模式字段用于指示应答echo消息的方式;类型-长度-值TLV字段;以及预留字段,用于功能扩展。
实施上述方式,序列号字段可用于检测与回显请求消息对应的回显应答消息是否丢失,返回代码字段具体指示反射端对发送端发送的回显请求消息的响应结果,基于返回代码字段可实现网络中任意两节点之间的连通性检查及验证。另外,第一回复模式字段指示的应答方式例如可以是通过应用程序级别的控制通道进行回复、通过一个不带负载的IPv6数据包回复等。类型-长度-值TLV字段例如可以是下游详细映射TLV,利用下游详细映射TLV可使得源节点获取连通性检测过程中第一OAM消息经过的每一个节点的信息。
可选地,在T字段指示第一OAM消息为回显消息时,V字段由以下字段组成:标识字段,用于指示echo消息的类型;序列号字段,用于承载该echo消息的序列号;返回代码return codes字段,其中,return codes字段用于承载反射端对发送端发送的echo消息的响应结果;第一回复模式字段,第一回复模式字段用于指示应答echo消息的方式;类型-长度-值TLV字段;以及预留字段,用于功能扩展。
可选地,第一OAM消息不包括:时间戳信息。
实施上述方式,在T字段指示第一OAM为回显消息时,第一OAM消息不包括协议版本信息和时间戳信息,协议版本信息例如可以是MPLS echo协议版本号或者ICMPv6 echo的协议版本号,时间戳信息例如可以是发送端发出回显请求消息的发送时间戳、反射端接收回显请求消息的接收时间戳等。第一OAM消息中省略时间戳信息使得用于连通性检测的第一OAM消息更加轻量化,减小了报文传输过程中网络带宽的消耗。
可选地,T字段指示第一OAM消息为主动连通性检测消息,第一OAM消息可用于实现连通性检测的功能。
可选地,V字段包括:第一字段,用于指示发送端和接收端之间建立的主动连通性检测会话的状态;第二字段,用于指示发送端发送主动连通性检测消息的最小发送间隔;第三字段,用于指示发送端接收接收端发送的主动连通性检测消息的最小接收间隔;第四字段,用于指示发送端接收接收端发送的响应消息的最小接收间隔;第五字段,指示最近一次会话的状态改变的原因;第六字段,用于提供检测时间乘数,该检测时间乘数用于在异步模式下计算检测时间;第七字段,第七字段包括查询请求标志Demand、轮询标志Poll和终止标志Final。
其中,查询请求标志置1表示期望工作在查询模式,查询请求标志置0表示不希望工作在查询模式或者不支持查询模式;轮询标志置1表示发送端请求验证连通性或参数更改并期待带有F标志置位的主动连通性检测消息作为回复,轮询标志置0表示发送端不请求验证;响应F标志的主动性能检测消息中的终止标志需置1。
实施上述方式,在T字段指示第一OAM消息为主动连通性检测消息时,发送端和反射端基于第一OAM消息可实现网络中任意两个节点(或转发引擎)之间的双向路径中的连通性检测,支持双向的OAM检测。
可选地,V字段还包括:用于功能扩展的预留字段。
可选地,第一OAM消息不包括:协议版本信息、本地标识符和远端标识符。
实施上述方式,第一OAM消息例如是基于BFD协议扩展的控制报文时,上述协议版本信息包括BFD协议的版本号,本地标识符例如可以是BFD控制报文中的MyDiscriminator,远端标识符例如可以是BFD控制报文中的Your Discriminator。第一OAM消息中省略协议版本信息能有效简化协议封装,第一OAM消息省略本地标识符和远端标识符使得第一OAM消息更加轻量化。
可选地,T字段指示第一OAM消息为性能检测消息,可用于实现性能检测的功能。
可选地,V字段包括:第八字段,用于承载发送端发送的第一性能检测消息的序列号;第九字段:用于承载反射端发送的第二性能检测消息的序列号,第二性能检测消息是对第一性能检测消息的响应;第十字段,用于承载发送端发送第一性能检测消息的发送时间戳;第十一字段,用于承载反射端接收第一性能检测消息的接收时间戳;第十二字段,用于承载反射端发送第二性能检测消息的发送时间戳;第十三字段,用于承载发送端接收第二性能检测消息的接收时间戳。
实施上述方式,基于第八字段和第九字段可实现丢包测量的性能检测功能,基于第十字段、第十一字段、第十二字段和第十三字段可用于实现时延检测和时延抖动测量中的至少一种性能检测功能。
可选地,V字段还包括:填充变长字段。
实施上述方式,在第一OAM消息为性能检测消息时,填充变长字段可用于固定第一OAM消息的长度,实现第一OAM消息的定长。
可选地,在T字段指示第一OAM消息为性能检测消息时,T字段取值为第四值时,指示性能检测消息用于丢包检测,T字段取值为第五值时,指示性能检测消息用于时延检测或时延抖动测量,T字段取值为第六值时,指示性能检测消息用于丢包时延检测。
可选地,T字段也可以仅指示第一OAM消息为性能检测消息,通过在TLV字段中增加标识字段,来标识性能检测消息的具体功能。例如,第三标识字段用于指示性能检测消息用于丢包检测,第四标识字段用于指示性能检测消息用于时延检测,第五标识字段用于指示性能检测消息用于丢包时延检测。对于标识字段的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。关于标识字段在TLV字段中的承载方式,本申请不做具体限定。一种具体的实现方式中,上述标识字段可以承载在V字段中。当然,也可以在T字段中设置预留的比特位,用于承载上述标识字段。
可选地,V字段包括至少一个子TLV字段,该至少一个子TLV字段包括第一子TLV,第一子TLV指示性能检测消息用于丢包检测;第二子TLV,第二子TLV用于指示性能检测消息用于时延检测或时延抖动测量;第三子TLV,第三子TLV用于指示性能检测消息用于丢包时延检测。
由此,性能检测消息可提供多种可选的性能检测功能,例如,丢包检测、时延检测和时延抖动测量,增加了性能检测功能的多样性,以适应OAM检测的不同需求。
可选地,在性能检测消息用于丢包检测时,V字段还包括:第十四字段,用于承载发送端发送的第一数据报文的统计数量;第十五字段,用于承载反射端接收到的第一数据报文的统计数量;第十六字段,用于承载反射端发送的第二数据报文的统计数量,第二数据报文是对第一数据报文的响应;第十七字段,用于承载发送端接收到的第二数据报文的统计数量。
可选地,在性能检测消息用于时延检测或时延抖动测量时,V字段还包括:第十八字段,用于承载发送端发送第三性能检测消息的发送时间戳;第十九字段,用于承载反射端接收第三性能检测消息的接收时间戳;第二十字段,用于承载反射端发送第四性能检测消息的发送时间戳,第四性能检测消息是对第三性能检测消息的响应;第二十一字段,用于承载发送端接收第四性能检测消息的接收时间戳。在此情况下,基于上述第十八字段至第二十一字段,性能检测消息可以用于时延检测和/或时延抖动测量。
可选地,在性能检测消息用于丢包时延检测时,V字段包括上述第十四字段至第二十一字段。在此情况下,性能检测消息既用于丢包检测,又用于时延检测和/或时延抖动测量。
可选地,T字段指示第一OAM消息为第一复合OAM消息,第一复合OAM消息用于实现至少两种OAM功能。实施上述方式,在T字段指示第一OAM消息为第一复合OAM消息时,第一OAM可实现多种OAM功能。
可选地,至少两种OAM功能包括:连通性检测和性能测量。可选地,V字段包括第一标识和第二标识,第一标识用于指示第一复合OAM消息用于第一OAM检测,第二标识用于指示第一复合OAM消息用于第二OAM检测。例如,第一OAM检测为连通性检测,第二OAM检测为性能检测。对于第一标识、第二标识的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。另外,第一标识和第二标识可以承载在V字段中。当然,也可以在T字段中设置预留的比特位,用于承载第一标识和第二标识。
可选地,第一复合OAM消息包括第一指示信息,第一指示信息指示第一复合OAM消息为一个请求消息或一个响应消息。例如,第一指示信息可以是T字段,T字段取第七值时,指示第一复合OAM消息为一个请求消息,T字段取第八值时,指示第一复合OAM消息为一个应答消息;又例如,T字段仅指示第一OAM消息为第一复合OAM消息时,第一指示信息也可以是新增加的第一检测标识,第一检测标识取第一值,指示第一复合OAM消息是一个请求消息,第一检测标识取第二值,指示第一复合OAM消息是一个应答消息。对于第一检测标识的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。关于第一检测标识在TLV字段中的承载方式,本申请不做具体限定。一种具体的实现方式中,上述第一检测标识可以承载在V字段中。当然,也可以在T字段中设置预留的比特位,用于承载上述第一检测标识。
可选地,第一复合OAM消息还包括第二指示信息,第二指示信息指示性能检测的具体类型。例如,第三指示信息可以是T字段,T字段取第九值时,指示性能检测的类型为丢包检测,T字段取第十值时,指示性能检测的类型为时延检测或时延抖动检测,T字段取第十一值时,指示性能检测的类型为丢包时延检测;又例如,T字段仅指示第一OAM消息为第一复合OAM消息时,第二指示信息也可以是新增加的第二检测标识,第二检测标识取第一值,指示性能检测的类型为丢包检测,第二检测标识取第二值,指示性能检测的类型为时延检测或时延抖动测量,第二检测标识取第三值,指示性能检测的类型为丢包时延检测。对于第二检测标识的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。关于第二检测标识在TLV字段中的承载方式,本申请不做具体限定。一种具体的实现方式中,上述第二检测标识可以承载在V字段中。当然,也可以在T字段中设置预留的比特位,用于承载上述第二检测标识。
可选地,在获取第一IPv6报文之前,该方法还包括:接收第二IPv6报文,第二IPv6报文中包括第二OAM消息,第一OAM消息为第二OAM消息的响应;根据第二IPv6报文,获取第一IPv6报文。
可选地,V字段中用于连通性检测的字段包括以下一个或多个字段:序列号字段,用于承载发送端发送的第一复合OAM消息的序列号;返回代码return codes字段,returncodes字段用于承载反射端对发送端发送的第一复合OAM消息的响应结果;第二回复模式字段,第二回复模式字段用于指示应答第一复合OAM消息的方式;类型-长度-值TLV字段;以及预留字段,用于功能扩展。
实施上述方式,基于序列号字段可检测第一复合OAM消息的响应消息是否丢失,返回代码字段可用于指示反射端对发送端发送的第一复合OAM消息的响应结果,基于该字段可用于实现网络中任意两节点之间的连通性检查及验证。第二回复模式字段指示的应答方式例如可以是通过应用程序级别的控制通道进行回复、通过一个不带负载的IPv6数据包回复等。类型-长度-值TLV字段例如可以是下游详细映射TLV,利用下游详细映射TLV可使得源节点获取连通性检测中第一复合OAM消息经过的每一个节点的信息。
可选地,在第一复合OAM消息用于性能检测时,V字段中用于性能检测的字段包括:第二十二字段:用于承载反射端发送的第二复合OAM消息的序列号,第二复合OAM消息是对第一复合OAM消息的响应;第二十三字段,用于承载发送端发送第一复合OAM消息的发送时间戳;第二十四字段,用于承载反射端接收第一复合OAM消息的接收时间戳;第二十五字段,用于承载反射端发送第二复合OAM消息的发送时间戳;第二十六字段,用于承载发送端接收第二复合OAM消息的接收时间戳。
实施上述方式,基于第一复合OAM消息中的序列号字段和第二十二字段可实现丢包检测,基于第二十三字段至第二十六字段这四个字段可用于实现时延检测和时延抖动测量中的至少一种性能检测功能。
可选地,V字段还包括用于功能扩展的预留字段。
可选地,在第二检测标识指示性能检测为丢包检测时,V字段包括:第二十七字段,用于指示发送端发送的第三数据报文的统计数量;第二十八字段,用于指示反射端接收到的第三数据报文的统计数量;第二十九字段,用于指示反射端发送的第四数据报文的统计数量,第四数据报文是对第三数据报文的响应;第三十字段,用于指示发送端接收到的第四数据报文的统计数量。由此,上述第二十七字段至第三十字段这四个字段使得第一复合OAM消息能够用于丢包检测。
可选地,在第二检测标识指示性能检测为时延检测或时延抖动测量时,V字段包括:第三十一字段,用于承载发送端发送第一复合OAM消息的发送时间戳;第三十二字段,用于承载反射端接收第一复合OAM消息的接收时间戳;第三十三字段,用于承载反射端发送第二复合OAM消息的发送时间戳,第二复合OAM消息是对第一复合OAM消息的响应;第三十四字段,用于承载发送端接收第二复合OAM消息的接收时间戳。由此,上述第三十一字段至第三十四字段这四个字段使得第一复合OAM消息能够用于时延检测和/或时延抖动测量。
可选地,在第二检测标识指示性能检测为丢包时延检测时,V字段包括上述第二十七字段至第三十四字段这八个字段。由此,第一复合OAM消息既用于丢包检测,又用于时延检测和/或时延抖动测量。
可选地,在T字段指示第一OAM消息为第一复合OAM消息时,V字段由以下字段组成:上述中的第一检测标识,用于指示第一复合OAM消息为请求消息或应答消息;序列号字段,用于承载发送端发送的第一复合OAM消息的序列号;返回代码return codes字段,returncodes字段用于承载反射端对发送端发送的第一复合OAM消息的响应结果;第二回复模式字段,第二回复模式字段用于指示应答第一复合OAM消息的方式;类型-长度-值TLV字段;预留字段,用于功能扩展;以及上述第二十二字段至第二十六字段。
可选地,在T字段指示第一OAM消息为第一复合OAM消息时,V字段由以下字段组成:上述中的第一检测标识,用于指示第一复合OAM消息为请求消息或应答消息;序列号字段,用于承载发送端发送的第一复合OAM消息的序列号;返回代码return codes字段,returncodes字段用于承载反射端对发送端发送的第一复合OAM消息的响应结果;第二回复模式字段,第二回复模式字段用于指示应答第一复合OAM消息的方式;类型-长度-值TLV字段;预留字段,用于功能扩展;第二检测标识,用于指示性能检测为丢包检测;以及上述第二十七字段至第三十字段。
可选地,在T字段指示第一OAM消息为第一复合OAM消息时,V字段由以下字段组成:上述中的第一检测标识,用于指示第一复合OAM消息为请求消息或应答消息;序列号字段,用于承载发送端发送的第一复合OAM消息的序列号;返回代码return codes字段,returncodes字段用于承载反射端对发送端发送的第一复合OAM消息的响应结果;第二回复模式字段,第二回复模式字段用于指示应答第一复合OAM消息的方式;类型-长度-值TLV字段;预留字段,用于功能扩展;第二检测标识,用于指示性能检测为时延检测;以及上述第三十一字段至第三十四字段。
可选地,在T字段指示第一OAM消息为第一复合OAM消息时,V字段由以下字段组成:上述中的第一检测标识,用于指示第一复合OAM消息为请求消息或应答消息;序列号字段,用于承载发送端发送的第一复合OAM消息的序列号;返回代码return codes字段,returncodes字段用于承载反射端对发送端发送的第一复合OAM消息的响应结果;第二回复模式字段,第二回复模式字段用于指示应答第一复合OAM消息的方式;类型-长度-值TLV字段;预留字段,用于功能扩展;第二检测标识,用于指示性能检测为丢包时延检测;以及上述第二十七字段至第三十四字段。
可选地,在T字段指示第一OAM消息为第一复合OAM消息时,V字段由以下字段组成:第三十五字段,用于指示发送端和接收端之间建立的复合OAM检测会话的状态;第三十六字段,用于指示发送端发送第一复合OAM消息的最小发送间隔;第三十七字段,用于指示发送端接收接收端发送的第二复合OAM消息的最小接收间隔;第三十八字段,用于指示发送端接收接收端发送的响应消息的最小接收间隔;第三十九字段,指示最近一次会话的状态改变的原因;第四十字段,用于提供检测时间乘数,该检测时间乘数用于在异步模式下计算检测时间;第四十一字段包括查询请求标志Demand、轮询标志Poll和终止标志Final;第四十二字段,用于承载发送端发送的第五数据报文的统计数量;第四十三字段,用于承载接收端接收的第五数据报文的统计数量;第四十四字段,用于承载接收端接发送的第六数据报文的统计数量;第四十五字段:用于承载发送端接收的第六数据报文的统计数量;第四十六字段,用于承载发送端发送第一复合OAM消息的发送时间戳;第四十七字段,用于承载接收端接收第一复合OAM消息的接收时间戳;第四十八字段,用于承载接收端发送第二复合OAM消息的发送时间戳;第四十九字段,用于承载发送端接收第二复合OAM消息的接收时间戳。
实施上述方式,在T字段指示第一OAM消息为第一复合OAM消息时,V字段也可以只包括上述第三十五字段至第四十九字段这十五个字段,其中,第三十五字段至第四十一字段使得第一复合OAM消息能够用于主动连通性检测,第四十二字段至第四十九字段使得第一复合OAM消息能够用于性能检测。具体地,第四十二字段至第四十五字段使得第一复合OAM消息能够用于丢包测量,第四十六字段至第四十九字段使得第一复合OAM消息能够用于时延测量和/或时延抖动测量。
可选地,IPv6扩展头为目的地选项头DoH或分段路由报头SRH或比特索引显示复制BIER头。
实施上述方式,利用IPv6扩展头原生语义,实现第一OAM消息的数据面处理,减小了第一OAM消息的封装深度,提高了OAM检测的效率和准确度。在IPv6扩展头为分段路由报头SRH时,提供了SRv6场景下的OAM检测服务。在IPv6扩展头为BIER头时,提供了BIERv6组播下的OAM检测服务。
可选地,IPv6扩展头包括关联通道ACH,第一OAM消息承载于ACH中。
可选地,关联通道ACH包括选项类型字段和通道类型字段,选项类型字段指示关联通道,通道类型字段指示ACH所承载的通道类型为OAM通道,该OAM通道用于承载第一OAM消息。
可选地,第一IPv6报文还包括第一OAM消息的统一会话标识,统一会话标识用于第一OAM消息的发送端匹配第一OAM消息与发送端接收的来自对端的OAM消息。
在现有技术中,不同协议的OAM检测报文,分别携带各自协议的会话标识,例如,Ping协议会话标识为sender’s Handle,BFD协议的会话标识为My Discriminator和YourDiscriminator,LM-DM协议的会话标识为Session Identifier等,使得进行每个协议的OAM检测时,都需要先基于该协议的会话标识执行会话协商过程,消息处理过程繁琐、OAM检测效率低,而根据本申请,为上述四种类型的第一OAM消息采用一个统一会话标识,实现四种类型的OAM消息复用该统一会话标识,有效简化了会话的协商过程,减小网络开销,提高OAM检测效率。另外,基于统一会话标识使得第一OAM消息的发送端能快速匹配到第一OAM消息的响应消息。
第二方面,本申请实施例提供了一种操作维护管理OAM检测装置,该装置包括:处理单元,用于获取第一IPv6报文,第一IPv6报文的IPv6扩展头携带第一OAM消息,第一OAM消息包括类型T字段和值V字段,T字段指示第一OAM消息的类型,V字段承载第一OAM消息的内容;收发单元,用于发送第一IPv6报文。
需要说明的是,第二方面中第一OAM消息内各个字段的有益效果可参考上述第一方面中各个字段的有益效果的描述,在此不再赘述。
可选地,第一OAM消息不包括协议版本信息。
可选地,T字段指示第一OAM消息为回显echo消息。
可选地,T字段取值为第一值时,指示第一OAM消息为echo request消息,T字段取值为第二值时,指示第一OAM消息为echo reply消息。
可选地,T字段取值为第三值时,指示第一OAM消息的类型为echo消息,此时不区分echo消息的具体类型。通过在TLV字段中增加标识字段,来标识echo消息的具体类型。例如,第一标识字段用于标识echo消息为echo request消息,第二标识字段用于标识echo消息为echo reply消息。对于标识字段的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。关于标识字段在TLV字段中的承载方式,本申请不做具体限定。一种具体的实现方式中,上述标识字段可以承载在V字段中。当然,也可以在T字段中设置预留的比特位,用于承载上述标识字段。
可选地,收发单元,还用于在获取第一IPv6报文之前接收第二IPv6报文,第二IPv6报文中包括第二OAM消息,第一OAM消息为第二OAM消息的响应;处理单元具体用于根据第二IPv6报文,获取第一IPv6报文。
可选地,V字段还包括以下一个或多个字段:序列号字段,用于承载该echo消息的序列号;返回代码return codes字段,其中,return codes字段用于承载反射端对发送端发送的echo消息的响应结果;第一回复模式字段,第一回复模式字段用于指示应答echo消息的方式;类型-长度-值TLV字段;以及预留字段,用于功能扩展。
可选地,在T字段指示第一OAM消息为回显消息时,V字段由以下字段组成:标识字段,用于指示echo消息的类型;序列号字段,用于承载该echo消息的序列号;返回代码return codes字段,其中,return codes字段用于承载反射端对发送端发送的echo消息的响应结果;第一回复模式字段,第一回复模式字段用于指示应答echo消息的方式;类型-长度-值TLV字段;以及预留字段,用于功能扩展。
可选地,第一OAM消息不包括:时间戳信息。
可选地,T字段指示第一OAM消息为主动连通性检测消息。
可选地,V字段包括:第一字段,用于指示发送端和接收端之间建立的主动连通性检测会话的状态;第二字段,用于指示发送端发送主动连通性检测消息的最小发送间隔;第三字段,用于指示发送端接收接收端发送的主动连通性检测消息的最小接收间隔;第四字段,用于指示发送端接收接收端发送的响应消息的最小接收间隔;第五字段,指示最近一次会话的状态改变的原因;第六字段,用于提供检测时间乘数,该检测时间乘数用于在异步模式下计算检测时间;第七字段,第七字段包括查询请求标志Demand、轮询标志Poll和终止标志Final。
可选地,V字段还包括:预留字段,预留字段用于功能扩展。
可选地,第一OAM消息不包括:协议版本信息、本地标识符和远端标识符。
可选地,T字段指示第一OAM消息为性能检测消息。
可选地,V字段包括:第八字段,用于承载发送端发送的第一性能检测消息的序列号;第九字段:用于承载反射端发送的第二性能检测消息的序列号,第二性能检测消息是对第一性能检测消息的响应;第十字段,用于承载发送端发送第一性能检测消息的发送时间戳;第十一字段,用于承载反射端接收第一性能检测消息的接收时间戳;第十二字段,用于承载反射端发送第二性能检测消息的发送时间戳;第十三字段,用于承载发送端接收第二性能检测消息的接收时间戳。
可选地,V字段还包括:填充变长字段。
可选地,在T字段指示第一OAM消息为性能检测消息时,T字段取值为第四值时,指示性能检测消息用于丢包检测,T字段取值为第五值时,指示性能检测消息用于时延检测或时延抖动测量,T字段取值为第六值时,指示性能检测消息用于丢包时延检测。
可选地,T字段也可以仅指示第一OAM消息为性能检测消息,通过在TLV字段中增加标识字段,来标识性能检测消息的具体功能。例如,第三标识字段用于指示性能检测消息用于丢包检测,第四标识字段用于指示性能检测消息用于时延检测,第五标识字段用于指示性能检测消息用于丢包时延检测。对于标识字段的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。关于标识字段在TLV字段中的承载方式,本申请不做具体限定。一种具体的实现方式中,上述标识字段可以承载在V字段中。当然,也可以在T字段中设置预留的比特位,用于承载上述标识字段。
可选地,V字段包括至少一个子TLV字段,该至少一个子TLV字段包括第一子TLV,第一子TLV用于指示性能检测消息用于丢包检测;第二子TLV,第二子TLV用于指示性能检测消息用于时延检测或时延抖动测量;第三子TLV,第三子TLV用于指示性能检测消息用于丢包时延检测。
可选地,在性能检测消息用于丢包检测时,V字段还包括:第十四字段,用于承载发送端发送的第一数据报文的统计数量;第十五字段,用于承载反射端接收到的第一数据报文的统计数量;第十六字段,用于承载反射端发送的第二数据报文的统计数量,第二数据报文是对第一数据报文的响应;第十七字段,用于承载发送端接收到的第二数据报文的统计数量。
可选地,在性能检测消息用于时延检测或时延抖动测量时,V字段还包括:第十八字段,用于承载发送端发送第三性能检测消息的发送时间戳;第十九字段,用于承载反射端接收第三性能检测消息的接收时间戳;第二十字段,用于承载反射端发送第四性能检测消息的发送时间戳,第四性能检测消息是对第三性能检测消息的响应;第二十一字段,用于承载发送端接收第四性能检测消息的接收时间戳。
可选地,在性能检测消息用于丢包时延检测时,V字段包括上述第十四字段至第二十一字段。在此情况下,性能检测消息既用于丢包检测,又用于时延检测和/或时延抖动测量。
可选地,T字段指示第一OAM消息为第一复合OAM消息,第一复合OAM消息用于实现至少两种OAM功能。
可选地,至少两种OAM功能包括:连通性检测和性能测量。
可选地,V字段包括第一标识和第二标识,第一标识用于指示第一复合OAM消息用于第一OAM检测,第二标识用于指示第一复合OAM消息用于第二OAM检测。
可选地,第一OAM检测为连通性检测,第二OAM检测为性能检测。
可选地,第一复合OAM消息包括第一指示信息,第一指示信息指示第一复合OAM消息为一个请求消息或一个响应消息。例如,第一指示信息可以是T字段,T字段取第七值时,指示第一复合OAM消息为一个请求消息,T字段取第八值时,指示第一复合OAM消息为一个应答消息;又例如,T字段仅指示第一OAM消息为第一复合OAM消息时,第一指示信息也可以是新增加的第一检测标识,第一检测标识取第一值,指示第一复合OAM消息是一个请求消息,第一检测标识取第二值,指示第一复合OAM消息是一个应答消息。对于第一检测标识的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。关于第一检测标识在TLV字段中的承载方式,本申请不做具体限定。一种具体的实现方式中,上述第一检测标识可以承载在V字段中。当然,也可以在T字段中设置预留的比特位,用于承载上述第一检测标识。
可选地,第一复合OAM消息还包括第二指示信息,第二指示信息指示性能检测的具体类型。例如,第三指示信息可以是T字段,T字段取第九值时,指示性能检测的类型为丢包检测,T字段取第十值时,指示性能检测的类型为时延检测或时延抖动检测,T字段取第十一值时,指示性能检测的类型为丢包时延检测;又例如,T字段仅指示第一OAM消息为第一复合OAM消息时,第二指示信息也可以是新增加的第二检测标识,第二检测标识取第一值,指示性能检测的类型为丢包检测,第二检测标识取第二值,指示性能检测的类型为时延检测或时延抖动测量,第二检测标识取第三值,指示性能检测的类型为丢包时延检测。对于第二检测标识的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。关于第二检测标识在TLV字段中的承载方式,本申请不做具体限定。一种具体的实现方式中,上述第二检测标识可以承载在V字段中。当然,也可以在T字段中设置预留的比特位,用于承载上述第二检测标识。
可选地,收发单元还用于在获取第一IPv6报文之前接收第二IPv6报文,第二IPv6报文中包括第二OAM消息,第一OAM消息为第二OAM消息的响应;处理单元还用于根据第二IPv6报文,获取第一IPv6报文。
可选地,V字段中用于连通性检测的字段包括以下一个或多个字段:序列号字段,用于承载发送端发送的第一复合OAM消息的序列号;返回代码return codes字段,returncodes字段用于承载反射端对发送端发送的第一复合OAM消息的响应结果;第二回复模式字段,第二回复模式字段用于指示应答第一复合OAM消息的方式;类型-长度-值TLV字段;以及预留字段,用于功能扩展。
可选地,在第一复合OAM消息用于性能检测时,V字段中用于性能检测的字段包括:第二十二字段:用于承载反射端发送的第二复合OAM消息的序列号,第二复合OAM消息是对第一复合OAM消息的响应;第二十三字段,用于承载发送端发送第一复合OAM消息的发送时间戳;第二十四字段,用于承载反射端接收第一复合OAM消息的接收时间戳;第二十五字段,用于承载反射端发送第二复合OAM消息的发送时间戳;第二十六字段,用于承载发送端接收第二复合OAM消息的接收时间戳。
可选地,V字段还包括用于功能扩展的预留字段。
可选地,在第二检测标识指示性能检测为丢包检测时,V字段包括:第二十七字段,用于指示发送端发送的第三数据报文的统计数量;第二十八字段,用于指示反射端接收到的第三数据报文的统计数量;第二十九字段,用于指示反射端发送的第四数据报文的统计数量,第四数据报文是对第三数据报文的响应;第三十字段,用于指示发送端接收到的第四数据报文的统计数量。
可选地,在第二检测标识指示性能检测为时延检测或时延抖动测量时,V字段包括:第三十一字段,用于承载发送端发送第一复合OAM消息的发送时间戳;第三十二字段,用于承载反射端接收第一复合OAM消息的接收时间戳;第三十三字段,用于承载反射端发送第二复合OAM消息的发送时间戳,第二复合OAM消息是对第一复合OAM消息的响应;第三十四字段,用于承载发送端接收第二复合OAM消息的接收时间戳。
可选地,在第二检测标识指示性能检测为丢包时延检测时,V字段包括上述第二十七字段至第三十四字段这八个字段。由此,第一复合OAM消息既用于丢包检测,又用于时延检测和/或时延抖动测量。
可选地,在T字段指示第一OAM消息为第一复合OAM消息时,V字段由以下字段组成:上述中的第一检测标识,用于指示第一复合OAM消息为请求消息或应答消息;序列号字段,用于承载发送端发送的第一复合OAM消息的序列号;返回代码return codes字段,returncodes字段用于承载反射端对发送端发送的第一复合OAM消息的响应结果;第二回复模式字段,第二回复模式字段用于指示应答第一复合OAM消息的方式;类型-长度-值TLV字段;预留字段,用于功能扩展;以及上述第二十二字段至第二十六字段。
可选地,在T字段指示第一OAM消息为第一复合OAM消息时,V字段由以下字段组成:上述中的第一检测标识,用于指示第一复合OAM消息为请求消息或应答消息;序列号字段,用于承载发送端发送的第一复合OAM消息的序列号;返回代码return codes字段,returncodes字段用于承载反射端对发送端发送的第一复合OAM消息的响应结果;第二回复模式字段,第二回复模式字段用于指示应答第一复合OAM消息的方式;类型-长度-值TLV字段;预留字段,用于功能扩展;第二检测标识,用于指示性能检测为丢包检测;以及上述第二十七字段至第三十字段。
可选地,在T字段指示第一OAM消息为第一复合OAM消息时,V字段由以下字段组成:上述中的第一检测标识,用于指示第一复合OAM消息为请求消息或应答消息;序列号字段,用于承载发送端发送的第一复合OAM消息的序列号;返回代码return codes字段,returncodes字段用于承载反射端对发送端发送的第一复合OAM消息的响应结果;第二回复模式字段,第二回复模式字段用于指示应答第一复合OAM消息的方式;类型-长度-值TLV字段;预留字段,用于功能扩展;第二检测标识,用于指示性能检测为时延检测;以及上述第三十一字段至第三十四字段。
可选地,在T字段指示第一OAM消息为第一复合OAM消息时,V字段由以下字段组成:上述中的第一检测标识,用于指示第一复合OAM消息为请求消息或应答消息;序列号字段,用于承载发送端发送的第一复合OAM消息的序列号;返回代码return codes字段,returncodes字段用于承载反射端对发送端发送的第一复合OAM消息的响应结果;第二回复模式字段,第二回复模式字段用于指示应答第一复合OAM消息的方式;类型-长度-值TLV字段;预留字段,用于功能扩展;第二检测标识,用于指示性能检测为丢包时延检测;以及上述第二十七字段至第三十四字段。
可选地,在T字段指示第一OAM消息为第一复合OAM消息时,V字段由以下字段组成:第三十五字段,用于指示发送端和接收端之间建立的复合OAM检测会话的状态;第三十六字段,用于指示发送端发送第一复合OAM消息的最小发送间隔;第三十七字段,用于指示发送端接收接收端发送的第二复合OAM消息的最小接收间隔;第三十八字段,用于指示发送端接收接收端发送的响应消息的最小接收间隔;第三十九字段,指示最近一次会话的状态改变的原因;第四十字段,用于提供检测时间乘数,该检测时间乘数用于在异步模式下计算检测时间;第四十一字段,第七字段包括查询请求标志Demand、轮询标志Poll和终止标志Final;第四十二字段,用于承载发送端发送的第五数据报文的统计数量;第四十三字段,用于承载接收端接收的第五数据报文的统计数量;第四十四字段,用于承载接收端接发送的第六数据报文的统计数量;第四十五字段:用于承载发送端接收的第六数据报文的统计数量;第四十六字段,用于承载发送端发送第一复合OAM消息的发送时间戳;第四十七字段,用于承载接收端接收第一复合OAM消息的接收时间戳;第四十八字段,用于承载接收端发送第二复合OAM消息的发送时间戳;第四十九字段,用于承载发送端接收第二复合OAM消息的接收时间戳。
可选地,IPv6扩展头为目的地选项头DoH或分段路由报头SRH或比特索引显示复制BIER头。
可选地,IPv6扩展头包括关联通道ACH,第一OAM消息承载于ACH中。
可选地,关联通道ACH包括选项类型字段和通道类型字段,选项类型字段指示关联通道,通道类型字段指示ACH所承载的通道类型为OAM通道,该OAM通道用于承载第一OAM消息。
可选地,第一IPv6报文还包括第一OAM消息的统一会话标识,统一会话标识用于第一OAM消息的发送端匹配第一OAM消息与发送端接收的来自对端的OAM消息。
第三方面,申请实施例提供了一种用于操作维护管理OAM检测的系统,该系统包括发送端和接收端,其中,发送端用于发送第一IPv6报文,第一IPv6报文的IPv6扩展头携带第一OAM消息,第一OAM消息包括类型T字段和值V字段,T字段指示第一OAM消息的类型,V字段承载第一OAM消息的内容;接收端用于接收第一IPv6报文,根据第一IPv6报文获得第二IPv6报文,向发送端发送第二IPv6报文,第二IPv6报文包括第二OAM消息,第二OAM消息是对第一OAM消息的响应。
需要说明的是,下述各种类型的第一OAM消息的具体消息格式可参考上述第一方面中同种类型的第一OAM消息的具体消息格式。
可选地,第一OAM消息不包括协议版本信息。
可选地,T字段指示第一OAM消息为回显echo消息。在此情况下,第一OAM消息不包括协议版本信息和时间戳信息。
可选地,T字段指示第一OAM消息为主动连通性检测消息。在此情况下,第一OAM消息不包括协议版本信息、本地标识符和远端标识符。
可选地,T字段指示第一OAM消息为性能检测消息。
可选地,T字段指示第一OAM消息为第一复合OAM消息,第一复合OAM消息用于实现至少两种OAM功能。
可选地,IPv6扩展头为目的地选项头DoH或分段路由报头SRH或比特索引显示复制BIER头。
可选地,IPv6扩展头包括关联通道ACH,第一OAM消息承载于ACH中。
可选地,关联通道ACH包括选项类型字段和通道类型字段,选项类型字段指示该关联通道,通道类型字段指示ACH所承载的通道类型为OAM通道,该OAM通道用于承载第一OAM消息。
可选地,第一IPv6报文还包括统一会话标识,该统一会话标识被发送端用于匹配第一OAM消息与第二OAM消息。
第四方面,本申请实施例提供了一种装置,该装置包括处理器和存储器;其中,存储器用于存储程序指令;所述处理器调用所述存储器中的程序指令,使得所述装置执行第一方面或者第一方面的任一可能的实现方式中的方法。
第五方面,本申请实施例提供了一种计算机可读存储介质,包括指令,当该指令被计算机执行时,实现第一方面或者第一方面的任一可能的实现方式中的方法的部分或全部操作。
第六方面,本申请实施例提供了一种计算机程序产品,该计算机程序软件产品包括程序,当该程序被处理器执行时,实现前述第一方面或者第一方面的任一可能的实施例中的所述方法的部分或全部操作。该计算机程序产品可以为一个软件安装包,在需要使用前述第一方面的任一种可能的设计提供的方法的情况下,可以下载该计算机程序产品并在装置上执行该计算机程序产品,以实现第一方面或者第一方面的任一可能的实施例中的所述方法。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是一种MPLS Ping消息格式的示意图;
图2是一种ICMPv6 Ping消息格式的示意图;
图3是一种BFD控制报文格式的示意图;
图4A是一种STAMP发送端测量报文的示意图;
图4B是一种STAMP反射端测量报文的示意图;
图4C是另一种STAMP发送端测量报文的示意图;
图4D是另一种STAMP反射端测量报文的示意图;
图5A是一种MPLS丢包测量(LM)报文的示意图;
图5B是一种MPLS时延测量(DM)报文的示意图;
图5C是一种MPLS丢包时延测量(LM-DM)报文的示意图;
图6是本申请实施例提供的一种通信系统示意图;
图7是本申请实施例提供的一种OAM消息的通用格式示意图;
图8是本申请实施例提供的一种消息类型为回显消息时的OAM消息的示意图;
图9是本申请实施例提供的一种消息类型为主动连通性检测消息时的OAM消息的示意图;
图10是本申请实施例提供的一种消息类型为性能检测消息时的OAM消息的示意图;
图11是本申请实施例提供的又一种消息类型为性能检测时消息的OAM消息的示意图;
图12A是本申请实施例提供的一种用于丢包检测的OAM消息的示意图;
图12B是本申请实施例提供的一种用于时延检测的OAM消息的示意图;
图12C是本申请实施例提供的一种用于丢包时延检测的OAM消息的示意图;
图13是本申请实施例提供的一种消息类型为复合OAM消息时的OAM消息的示意图;
图14是本申请实施例提供的一种消息类型为复合OAM消息时的OAM消息的示意图;
图15是本申请实施例提供的一种消息类型为复合OAM消息时的OAM消息的示意图;
图16是本申请实施例提供的一种OAM消息的封装格式;
图17是本申请实施例提供的又一种OAM消息的封装格式;
图18是本申请实施例提供的又一种OAM消息的封装格式;
图19是本申请实施例提供的又一种OAM消息的封装格式;
图20是本申请实施例提供的又一种OAM消息的封装格式;
图21是本申请实施例提供的一种OAM检测的方法流程图;
图22是本申请实施例提供的又一种OAM检测的方法流程图;
图23是本申请实施例提供的一种装置的结构示意图;
图24是本申请实施例提供的一种装置的功能结构示意图。
具体实施方式
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。本申请实施例中的说明书和权利要求书中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。
OAM技术涉及连通性检测(Continuity Check,CC)/连通性验证(ContinuityVerification,CV)和性能检测(Performance Measurement,PM),现有OAM技术的实现需要多种协议,例如,用于CC的有多协议标签交换(Multiprotocol Label Switching,MPLS)Ping协议和双向转发检测(Bidirectional Forwarding Detection,BFD)协议,用于PM的双向主动测量(Two-Way Active Measurement Protocol,TWAMP)协议等。
在介绍本申请提供的OAM消息的通用格式前,先介绍一些涉及到的协议的格式:
(1)MPLSPing协议
MPLSPing协议是一种简单有效的检测MPLS标签交换路径(Label SwitchingPath,LSP)中的数据面故障,主要通过发送MPLS Echo消息实现,其定义了一个称为“MPLS回显请求(MPLS echo request)”的探测报文和一个称为“MPLS回显应答(MPLS echo reply)”的响应消息,MPLS echo reply用于返回探测的结果。MPLS Echo消息封装在IPv4或IPv6的用户数据报协议(User Datagram Protocol,UDP)报文中。图1示例性地给出了一种MPLSEcho消息的报文格式,下面对图1中的各个字段进行相关说明:
Version Number:版本号,MPLS Echo的版本号目前为1;
Global Flags:全局标志,其包括:
验证FEC堆栈标志(Validate FEC Stack flag,简称V标志):V标志置1表示发送者希望接收者执行转发等价类(Forwarding Equivalence Class,FEC)堆栈验证;
验证返回路径标志(Validate Reverse Path flag,简称R标志):用于指示接收者返回反向路径FEC信息;
生存时长到期响应标志(Respond Only If TTL Expired flag,简称T标志):T标志仅由发送者设置,若T标志置1且MPLS标签的生存时间值(Time to Live,TTL)大于1,则接收者丢弃MPLS echo request消息;
Message Type:消息类型,包括MPLS echo request消息和MPLS echo reply消息;
Reply mode:回复模式,用于指定接收者对MPLS echo request报文的应答模式,具体地,Reply mode定义有四个值,value=1表示不回复,value=2表示通过一个IPv4或IPv6 UDP数据包进行回复,value=3表示通过一个带有路由器警报的IPv4或IPv6 UDP数据包进行回复,value=4表示通过应用程序级别的控制通道进行回复;
Return Code:返回代码,发送者设置为0,接收者可以设置相应的值;
具体地,返回代码的值具体有以下几种:
Value=0表示无返回代码;
Value=1表示接收到异常的回显请求;
Value=2表示至少一个可变长字段无法理解;
Value=3表示应答路由器是FEC在堆栈深度的出节点;
Value=4表示应答路由器在堆栈深度没有FEC的映射;
Value=5表示下游映射不匹配;
Value=6表示上游接口索引未知;
Value=7表示预留位;
Value=8表示在堆栈深度执行了标签交换;
Value=9表示标签交换但在堆栈深度无MPLS转发;
Value=10表示FEC的映射并不是堆栈深度给定的标签;
Value=11表示堆栈深度无标签入口;
Value=12表示协议未与FEC堆栈深度的接口关联;
Value=13表示标签堆叠缩小至单个标签导致Ping提前终止;
Value=14表示有关返回码和返回子码的含义参见DDMAP TLV;
Value=15表示标签随FEC改变而切换;
Return Subcode(RSC):返回子代码,其包含标签堆栈的处理终止的点,如果RSC为0,表示报文没有携带标签,不需要处理标签;否则,报文携带了标签;
Sender’s Handle:发送者句柄,用于标识MPLS echo request,接收者在MPLSecho reply中不加修改的返回,发送者通过该字段将请求与应答进行匹配;单次的LSPPing操作可产生多个MPLS echo request,但这多个MPLS echo request包含的Sender’sHandle相同;
Sequence Number:序列号,由发送者匹配,可用于检测应答报文是否丢失;单次的LSP Ping操作可产生多个Sequence Number;
TimeStamp Sent:发送者时间戳,记录MPLS echo request的发送时间;
TimeStamp Received:接收者时间戳,记录MPLS echo reply的接收时间;
TLVs:类型/长度/值。
(2)ICMPv6 based Ping协议
互联网控制信息协议版本6(Internet Control Message Protocol for theIPv6,ICMPv6)是IPv6的基础协议之一,ICMPv6用于向源节点报告关于向目的地传输IP数据包过程中的错误,以及执行其他网络互连层功能,例如,诊断(ICMPv6“Ping”)。参加图2示例性地给出了一种ICMPv6消息的报文格式,下面对图2中的各个字段进行相关说明:
ICMPv6消息包括Type、Code、Checksum和ICMPv6 Data四个部分,其中,Type表示消息类型,其中,0-127表示出错消息,128-255表示指示消息,指示消息主要包括回显请求消息(Echo Request)和回显应答消息(Echo Reply),这两种消息也就是通常使用的Ping消息,其中,回显请求消息的Type字段值为128,Code字段的值为0,回显应答消息的Type字段的值为129,Code字段的值为0;Code表示代码,用于生成消息粒度的附加层;Checksum表示校验和,用于检测ICMPv6消息和IPv6首部部分中的数据错误;ICMPv6 Data进一步包括Identifier、Sequence Number和Data,其中,Identifier表示标识,用于帮助回显应答消息匹配回显请求消息的标识符,Sequence Number表示序列号,用于帮助回显应答消息匹配回显请求消息的序列号,Data可以是0或更多字节的任意数据。
(3)BFD协议
BFD协议称为双向转发检测协议,用于快速检测、监控网络中链路或IP路由的转发连通情况。其检测原理为:在两个节点间的一条链路上建立一个BFD会话,两个节点中的至少一个节点发送BFD控制报文(一个特定格式的UDP报文),如果在检测时间内没有收到对端的BFD控制报文,则认为对应链路故障。BFD的检测模型有异步模式、查询模式和回声模式三种。
BFD控制报文具有强制部分和可选的身份验证部分。身份验证部分的格式取决于使用的身份验证类型。图3是一种BFD控制报文的必选部分的示意图,下面对图3中的各个字段进行相关说明:
Vers(Version):版本号,BFD协议版本号目前为1;
Diag(Diagnostic):诊断字,用于指示本地BFD系统最近一次会话状态发生变化的原因;
Sta(State):本地BFD会话状态;
P(Poll):轮询标志,P标志置1表示发送者请求验证连接性或参数更改;P标志置0表示发送者不请求验证;
F(Final):终止标志,响应P标志的应答报文中须将F标志置位,F标志置1表示发送者响应一个P标志为1的BFD控制报文,F标志置0表示发送者不响应一个P标志为1的BFD控制报文;
C(Control Plane Independent):转发控制分离标志,置0表示BFD控制报文在控制平面传输,置1表示BFD控制报文在转发平面传输,控制平面的变化不影响BFD检测;
A(Authentication Present):认证标志,置1表示需对会话进行身份认证;
D(Demand):查询请求标志,置1表示希望工作在查询模式,置0表示不希望工作在查询模式;
M(Multipoint):多点标志,为BFD未来支持点对多点扩展而设的预留位;
Detected Mult:检测时间乘数,用于为对端提供异步查询模式下的检测时间;
Length:BFD控制报文的长度;
My Discriminator:BFD会话的本地标识符,传输系统生成的唯一的非零标识符值,用于区分BFD会话;
Your Discriminator:BFD会话的远端标识符,该字段反映了My Discriminator的对端接收值,若该值未知,则为0;
Desired Min TX Interval:本地支持的BFD控制报文的最小发送间隔;
Desired Min RX Interval:本地支持的BFD控制报文的最小接收间隔;
Required Min Echo RX Interval:本地支持的BFD回显报文的最小接收间隔。
(4)TWAMP-Light/STAMP协议
TWAMP-Light是TWAMP协议的轻量级架构,其包括发送端Controller和反射端Responder,其中,发送端Controller集合了TWAMP标准框架中的Control-Client、Server和Session-Sender角色,在完成测量会话报文的发送接收、性能数据采集和计算并将最后结果上送给网管平台;反射端Responder仅包括TWAMP标准框架中的Session-Reflector角色,只负责测量会话报文的反射。
STAMP(Simple Two-way Active Measurement Protocol,简化的双向主动测量协议)是TWAMP Light(informative in RFC5357)在IETF IPPM组的标准化协议。在STAMP框架中,Configuration and Management(配置和管理)用于配置STAMPSession-Sender和STAMPSession-Reflector的统计的参数,待配置完实例后,STAMPSession-Sender端和STAMPSession-Reflector端之间通过发送测量Test报文来计算出该网络的丢包率、时延和时延抖动等性能数据。STAMP中,Session-Sender Test报文和Session-ReflectorTest报文封装格式可细分为非认证模式和认证模式,具体报文格式可参考图4A-图4D:
参见图4A,图4A提供了一种STAMPSession-Sender在非认证模式下的测量报文格式,下面对图4A中的各个字段进行相关说明:
Sequence Number:序列号,Sender根据传输顺序生成的报文序列号;
Timestamp:时间戳,表示Sender发送测量报文的发送时间;
Error Estimate:错误检测字段,指定了错误的检测和同步;
MBZ:必须填为0。
参见图4B,图4B提供了一种STAMPSession-Reflector在非认证模式下的测量报文格式,下面对图4B中的各个字段进行相关说明:
Sequence Number:序列号,Reflector生成的测量报文的序列号;
Timestamp:时间戳,为Reflector发送测量报文的发送时间;
Error Estimate:Reflector的错误测量;
Receive Timestamp:接收时间戳,为Reflector接收到测量报文的接收时间;
Sender Sequence Number:Sender的序列号,即为图4A中Sequence Number;
Sender Timestamp:Sender的时间戳,表示Sender发送测量报文的发送时间,即为图4A中的Timestamp;
Sender Error Estimate:Sender的错误测量,即为图4A中的Error Estimate;
Sender TTL:Sender发送的测量报文的生存时间值;
MBZ:必须填为0。
参见图4C,图4C提供了一种STAMPSession-Sender在认证模式下的测量报文格式,下面对图4C中的各个字段进行相关说明:
HMAC:哈希运算消息认证码,在认证模式下,HMAC字段包含的块为16字节;
图4C中的Sequence Number、Timestamp、Error Estimate、MBZ字段可参考图4A中的相关叙述,在此不再赘述。
参见图4D,图4D提供了一种STAMPSession-Reflector在认证模式下的Test报文格式,下面对图4D中的各个字段进行相关说明:
HMAC:哈希运算消息认证码,在认证模式下,HMAC字段包含的块为16字节;
图4D中的Sequence Number、Timestamp、Error Estimate等其它字段可参考图4B中的相关叙述,在此不再赘述。
(5)MPLS Loss and Delay Measurement
MPLS网络的性能测量包括丢包测量(Loss Measurement,LM)和时延测量(DelayMeasurement,DM),通过LM消息查询和DM消息查询可实现单向或双向的丢包、时延测量。
参见图5A,图5A提供了一种MPLS LM消息的格式,下面对图5A中的各个字段进行相关说明:
Version:版本号;
Flags:标志位,1)R-flag置0表示查询,置1表示响应;2)T-flag置1表示测量的是特定流量类别的数据包,置0表示非特定流量类别;在T-flag置1时,DS字段表示测得的流量类别;
Control Code:控制代码,用于指示查询类型或响应类型;
Message Length:消息长度;
Dflags(Data Format Flags):数据标志;
OTF(Origin Timestamp Format):时间戳格式;
Reserved:预留;
Session Identifier:会话标识,在查询中任意设置并在响应中复制;
DS(Differentiated Services):区分服务标志,置1表示此字段设置为DSCP值,置0表示此字段为任意值,且该字段可是视作会话标识的一部分;
Origin TimeStamp:初始时间戳,表示查询消息的发送时间;
Counter1-Counter4:计数器1-4,当A发送查询时,计数器1设置为A_TxP,其他计数器字段设置为0。在B处接收到查询时,计数器2设置为B_RxP。此时,B将计数器1复制到计数器3,将计数器2复制到计数器4,并将计数器1和计数器2重新初始化为0。当B发送响应时,计数器1设置为B_TxP。当在A处收到响应时,计数器2设置为A_RxP。
TLV Block:类型-长度-值,可选的。
参见图5B,图5B提供了一种MPLS DM消息的格式,下面对图5B中的各个字段进行相关说明:
Version:版本号;
Flags:标志位,1)R-flag置0表示查询,置1表示响应;2)T-flag置1表示测量的是特定流量类别的数据包,置0表示非特定流量类别;在T-flag置1时,DS字段表示测得的流量类别;
Control Code:控制代码,用于指示查询类型或响应类型;
Message Length:消息长度;
QTF(Querier Timestamp Format):查询器的时间戳的格式;
RTF(Responder Timestamp Format):响应器的时间戳的格式;
RPTF(Responder’sPreferred Timestamp Format):响应器的首选时间戳的格式;
Reserved:预留位;
Session Identifier:会话标识,在查询中任意设置并在响应中复制;
DS(Differentiated Services):区分服务标志为,置1表示此字段设置为DSCP值,置0表示此字段为任意值,且该字段可是视作会话标识的一部分;
Timestamp1-Timestamp4:时间戳1-4,当从A发送查询时,时间戳1设置为T1,其他时间戳字段设置为0。在B处接收到查询时,时间戳2设置为T2。此时,B将时间戳1复制到时间戳3,将时间戳2复制到时间戳4,并将时间戳1和时间戳2重新初始化为0。当B发送响应时,时间戳1设置为T3。当在A处收到响应时,时间戳2设置为T4。
TLV Block:类型-长度-值块,可选的。
参见图5C,图5C提供了一种MPLS LM-DM消息的格式,可以看出,图5C所示的MPLSLM-DM消息格式是将图5A和图5B中的消息格式进行组合,其MPLS LM消息中的OTF字段与MPLS DM消息中的QTF字段的含义相同,MPLS LM消息中的段Origin Timestamp字段与MPLS DM消息中的Timestamp 1字段的含义相同,故在图5C中,QTF和Timestamp 1字段分别替代了MPLS LM消息的OTF和Origin Timestamp字段。需要说明的是,图5C中的其他字段与图5A或图5B中的相应字段具有相同的含义,图5C中各个字段的说明可参考图5A和图5B中的相关叙述,为了说明书的简洁,在此不再赘述。
需要说明的是,上述现有技术中各个协议的版本号version也可以称为协议版本信息或协议版本号,例如,BFD协议中的version也可以称作BFD协议的协议版本信息或协议版本号。
可以看出,OAM涉及的多个协议分散复杂,不同的协议具有不同的消息格式且部分协议功能的重复度高,例如,Ping消息中的Timestamp Sent、Timestamp Received字段与STAMP消息中的Sender Timestamp、Receive Timestamp字段均可用于时延测量。另外,各个协议的会话标识复杂,例如,Ping协议会话标识为sender’s Handle,BFD协议的会话标识为My Discriminator和Your Discriminator,LM-DM协议的会话标识为Session Identifier等,消息处理过程繁琐。可以看出,BFD消息和STAMP消息均以UDP格式封装,封装较深,只能进行端点处理导致中间转发节点无法感知消息的具体内容。
也有人提出基于BFD检测报文扩展TLVs将时延、丢包性能检测合并获得一种综合的OAM(Integrated OAM,IntOAM)协议,这种综合OAM协议扩展了BFD报文,即增加了可变的TLVs字段用于丢包、时延的性能测量,违背了BFD报文的轻量级设计初衷,赋予BFD报文额外的时延、丢包检测会影响BFD协议亚秒级的故障检测性能,另外,由于BFD报文是周期性发送的,因此,BFD报文扩展后携带的多种TLVs字段会增加网络带宽的消耗。
针对上述问题,本申请实施例提出一种统一OAM消息格式,可用于支持和执行OAM的各种功能,例如,连通性检测、丢包性能检测、时延性能检测等,能够提高消息的处理效率,节省开销。
参见图6,图6是本申请实施例提供的一种通信系统示意图,该系统用于基于OAM消息实现网络中任意两节点之间的连通性检测和性能检测功能中的至少一种。如图6所示,该系统至少包括及节点A、节点B和至少一个中间节点,节点A通过至少一个中间节点与节点B以有线或无线的方式进行连接。其中,节点A或节点B可以是计算机(例如、服务器、个人电脑等),至少一个中间节点包括至少一个路由器、交换机、集线器等硬件。
节点A通过至少一个中间节点向节点B发送IPv6报文A,IPv6报文1的IPv6扩展头携带OAM消息A,节点B在接收到来自节点A的IPv6报文A后,获取OAM消息并生成IPv6报文B,IPv6报文B携带OAM消息B,OAM消息B是对OAM消息A的响应,节点B将IPv6报文B发送给节点A,从而节点A基于OAM消息A以及OAM消息B实现节点A与节点B之间的连通性检测/验证以及性能检测中的至少一种。
需要说明的是,IPv6扩展头可以是目的地选项头(Destination Options Header,DoH)或分段路由报头(Segmant Routing Header,SRH)。在一些可能的实施例中,IPv6扩展头也可以是逐跳选项头(Hop-by-hop Options Header)。
本申请实施例定义了一种OAM消息,能够实现两节点之间的连通性检测和性能测量中的一种或多种。参见图7,图7是本申请实施例提供的一种OAM消息的通用格式示意图,如图7,OAM消息包括消息类型和OAM消息内容,其中,OAM消息内容与消息类型对应。在一些可能的实施例中,若不同的消息类型对应的OAM消息内容的长度不同,则OAM消息还包括消息长度,消息长度用于指示OAM消息内容的长度。需要说明的是,OAM消息位于IPv6报文的IPv6扩展头中,OAM消息可以以TLV的形式表示,其中,T字段用于指示OAM消息的消息类型,V字段用于承载OAM消息的内容,L字段用于指示OAM消息的内容的长度。需要说明的是,本申请实施例提供的OAM消息不包括协议版本信息。
在本申请实施例中,图7中所示OAM消息的消息类型包括4种,分别为:(1)回显消息(包括回显请求Echo Req消息/回显应答Echo Rep消息),(2)主动连通性检测(ProactiveCC)消息,(3)性能检测(PM)消息,(4)复合OAM(Hybrid OAM)消息。需要说明的是,第一种和第二种均可实现连通性检测功能,第三种可实现性能检测功能,第四种可实现连通性检测和性能检测功能。
下面分别介绍这四种消息类型对应的OAM消息内容的具体形式:
第一种:消息类型为回显消息
在OAM消息的消息类型为回显消息时,即T字段指示OAM消息为回显echo消息,其中,echo消息包括回显请求消息和回显应答消息。回显请求消息和回显应答消息用于实现对两节点之间的连通性的检测及验证。
参见图8,图8是本申请实施例提供的一种消息类型为回显消息时的OAM消息,其中,图8中的深色部分即为消息类型为回显消息对应的OAM消息内容(下文简称OAM消息内容1),下面对OAM消息内容1中的各个字段进行说明:
类型(Type):用于指示OAM消息为回显请求消息或回显应答消息;
序列号(Sequence Number):发送端发送的回显请求消息的序列号,用于匹配回显请求消息与回显应答消息以检测回显应答消息是否丢失;
返回代码(Return Code):该字段用于承载反射端对发送端发送的回显请求消息的响应结果;发送端设置为0,反射端可以设置相应的值;
具体地,返回代码的值例如可以是:
Value=0表示无返回代码;
Value=1表示接收到异常的回显请求;
Value=2表示至少一个可变长字段无法理解;
Value=3表示数据包转发成功;
Value=4表示没有到达目的地的路由;
Value=5表示行政上禁止与目的地通信;
Value=6表示超出源地址范围;
Value=7表示地址不可达;
Value=8表示端口不可达;
Value=9表示源地址失败的入口/出口策略;
Value=10表示拒绝达到目的地的路由;
Value=11表示超出IPv6最大传输单元的最小值;
Value=12表示传输中超出跳数限制;
Value=13表示超出片段重组时间;
Value=14表示遇到错误的头字段;
Value=15表示遇到无法识别的下一个头的类型;
Value=16表示遇到无法识别的IPv6选项;
需要说明的是,上述返回代码的取值只是示例,还可以是其他的值或者上述值中的几种,本申请实施例不做具体限定;
预留位:用于后续功能的扩展;
回复模式(Reply Mode):用于指示应答回显请求消息的方式;
具体地,回复模式的值例如可以是:
Value=1表示不回复;
Value=2表示通过一个IPv6 UDP数据包回复;
Value=3表示通过一个不带负载的IPv6数据包回复;
Value=4表示通过应用程序级别的控制通道进行回复;
需要说明的是,上述回复模式的取值只是示例,还可以是其他的值或者上述值中的几种,本申请实施例不做具体限定;
类型-长度-值(TLV)或子-类型-长度-值(sub-TLVs):TLVs/sub-TLVs例如可以是下游详细映射TLV(Downstream Detailed Mapping TLV)、填充TLV(Padding TLV)等。
例如,下游详细映射TLV包括:最大传输单元(Maximum Transmission Unit,MTU)字段、地址类型(Address Type)字段、下游地址(Downstream Address)、下游接口地址(Downstream Interface Address)、预留字段、类型字段和长度字段。其中,地址类型字段用于确定下游接口的IP地址类型和长度,地址类型字段置1表示IPv6有编号,地址类型字段置2表示IPv6无编号。若地址类型字段为1,则将下游地址设置为下游接口地址;若地址类型字段为2,则将下游地址设置为下游路由器的IPv6地址,并且下游接口地址设置为上游路由器分配给该接口的索引。
在一些可能的实施例中,图8中的“类型”字段的功能也可由T字段替代,例如,T字段取第一值,表示OAM消息为回显请求消息,T字段取第二值,表示OAM消息为回显应答消息。
在一些可能的实施例中,图8中的“类型”字段的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。图8中的“类型”字段可以承载在V字段中。当然,也可以在T字段中设置预留的比特位,用于承载图8中的“类型”字段,本申请实施例不做具体限定。
在一些可能的实施例中,图8中的预留位、回复模式和类型-长度-值/子-类型-长度-值这三个字段是可选的,本申请实施例不做具体限定。
在一些可能的实施例中,在消息类型为回显消息时,OAM消息内容中不包括协议版本号和时间戳信息,其中,协议版本号可以是MPLS Echo的版本号,时间戳信息例如可以是:发送端发送回显请求消息的发送时间戳、反射端接接收回显请求消息的接收时间戳等。在一些可能的实施例中,协议版本号也可以是ICMPv6协议号。
一具体实施中,图8所示的OAM消息是对MPLS Echo报文的一种改进示例,相较于图1所示的MPLS Echo报文,图8所示的OAM消息省略了图1中的Version Number、GlobalFlags、Sender’s Handle、TimeStamp Sent和TimeStamp Received等字段。
可以看出,图8所示的消息类型为回显消息下的OAM消息不仅可实现连通性检测功能,该OAM消息也更加简化,例如,省略了各个时间戳信息以及会话标识。
下面基于图8所示的OAM消息说明图6中节点A与节点B之间的连通性检测过程:
A11:节点A生成IPv6报文1,IPv6报文1携带OAM消息1。
其中,OAM消息1包括图8所示的各个字段,其中,在OAM消息1中,节点A填写的字段有:类型、序列号和回复模式,其中,类型填写为“回显请求”,其余字段(例如,返回代码)设置为空,本申请实施例不做具体限定。在一些可能的实施例中,OAM消息1还可以携带Downstream Detailed Mapping TLV等。
A12:节点A向节点B发送IPv6报文1。
A13:节点B接收IPv6报文1,根据IPv6报文1生成IPv6报文2。
具体地,节点B根据接收到的IPv6报文1生成IPv6报文2,其中,IPv6报文2携带有OAM消息2,OAM消息2是对OAM消息1的响应,OAM消息2包括图8所示的各个字段。在OAM消息2中,节点B填写的字段有:序列号、返回代码和类型,其中,类型填写为“回显应答”,序列号是拷贝OAM消息1中的序列号。
A14:节点B向节点A发送IPv6报文2。
具体地,节点B向节点A发送IPv6报文2。相应地,节点A接收到IPv6报文2,基于IPv6报文2中的返回代码,节点A可以判断自身与节点B之间的连通性。例如,若IPv6报文2中的返回代码值为上述中的“3”时,则说明节点A与节点B之间是互通的。在一些可能的实施例中,若节点A接收到IPv6报文1的响应报文,例如,IPv6报文1的响应报文中的返回代码的值为“7”,则说明图6中所示的中间节点转发IPv6报文1过程中遇到故障,该响应报文是由节点A与节点B之间的中间节点发送给节点A的,IPv6报文1未达到节点B,则说明节点A与节点B之间不连通。
第二种:消息类型为主动连通性检测消息
在OAM消息的消息类型为主动连通性检测消息时,即T字段用于指示OAM消息为主动连通性检测消息,主动连通性检测消息用于检测两个转发引擎之间的双向路径的连通性。
参见图9,图9是本申请实施例提供的一种消息类型为主动连通性检测消息时的OAM消息,其中,图9中的深色部分即为消息类型为主动连通性检测消息对应的OAM消息内容(下文简称OAM消息内容2),下面对OAM消息内容2中的各个字段进行说明:
本地会话状态(State,Sta):发送端与接收端之间建立的主动连通性检测会话的状态;
具体地,本地会话状态的值例如可以是以下几种:
Value=0表示管理下线(AdminDown),表示会话可以在管理上保持关闭状态;
Value=1表示下线(Down),表示拆除主动连通性检测会话;
Value=2表示初始(Init),表示发送端正与接收端处在通信协商中;
Value=3表示上线(Up),表示发送端与接收端之间的主动连通性检测会话已成功建立,发送端与接收端之间连接正常;
诊断字(Diagnostic,Diag):用于指示发送端最近一次会话的状态改变的原因;
具体地,诊断字的值具体有以下几种:
Value=0表示无诊断字;
Value=1表示控制检测时间到期;
Value=2表示回显功能失败;
Value=3表示邻居通知会话失效;
Value=4表示转发平面重启;
Value=5表示通道失效;
Value=6表示连接通道失效;
Value=7表示管理性关闭;
Value=8表示反向连接通道失效;
Value=9-31表示保留位可供未来使用;
标志位:包括轮询标志Poll(P)、终止标志Final(F)和查询请求标志Demand(D);在一些可能的实施例中,标志位还可以包括转发控制分离标志Control Plane Independent(C)、认证标志Authentication Present(A)和多点标志Multipoint(M);
其中,P标志置1表示发送端请求验证连通性或参数更改并期待带有F标志置位的主动连通性检测消息作为回复,P标志置0表示发送端不请求验证;对于F标志,若发送端接收到的主动检测性检测消息中的P标志置位,则将下一个发送的主动连通性检测消息中的F标志置位作为应答,即响应P标志的应答报文中须将F标志置1;C标志也可称为控制平面独立标志,C标志置1表示主动连通性检测消息在转发平面传输,控制平面的变化不影响主动连通性检测,C标志置0表示主动连通性检测消息在控制平面传输;A标志置1表示需对会话进行身份认证;D标志也可称作查询请求位,D标志置1表示期望工作在查询模式,D标志置0表示不希望工作在查询模式或者不支持查询模式;M标志用于为主动连通性检测未来支持点对多点扩展而设的标志位;
主动连通性检测消息的最小发送间隔(Desired Min TX Interval):发送端支持的发送主动连通性检测消息之间的最小发送间隔;
主动连通性检测消息的最小接收间隔(Required Min RX Interval):发送端支持的接收接收端发送的主动连通性检测消息之间的最小接收间隔;
主动连通性回声消息的最小接收间隔(Required Min Echo RX Interval):发送端支持的接收接收端发送的响应消息之间的最小间隔;
检测时间乘数(Detect Mult):用于协商发送间隔乘以检测时间乘数为接收端(或称为远端)提供异步模式下的检测时间;
预留位:用于后续功能的扩展。
在一些可能的实施例中,图9中的预留位是可选的,本申请实施例不做具体限定。
在一些可能的实施例中,在消息类型为主动连通性检测时,OAM消息内容中不包括协议版本号、本地标识符和远端标识符。例如,当OAM是基于现有的BFD协议改造的消息时,该协议版本号是指BFD协议的版本号,本地标识符是指BFD控制报文中的MyDiscriminator,远端标识符是指BFD控制报文中的Your Discriminator。
一具体实施中,图9所示的OAM消息是对BFD控制报文的一种改进示例,相较于图3所示的BFD控制报文,图9所示的OAM消息省略了图3中的Vers、My Discriminator、YourDiscriminator等字段,图9所示的各字段的含义以及功能可参考BFD控制报文中相同字段对应的解释。
可以看出,图9所示的消息类型为主动连通性检测消息下的OAM消息不仅实现了连通性检测功能,该OAM消息也变得更加轻量化。
在介绍基于图9所示OAM消息进行图6中节点A与节点B之间的连通性检测前,图6中的节点A和节点B之间需先通过三次握手建立主动连通性检测会话(下文简称为“检测会话”),检测会话建立成功后,节点A和节点B两端的检测会话状态均为“Up”,同时在此过程中节点A和节点B双方同时协商好各自的主动连通性检测消息的检测时间、发送间隔等参数。需要说明的是,检测时间也可以称作有效检测时长,本申请不做具体限定。
以节点A为例说明节点A侧的主动连通性检测消息的发送间隔、检测时间的协商过程:节点A侧协商的发送间隔为节点A的Desired Min TX Interval与节点B的Required MinRX Interval之中的最大值,节点A侧协商的检测时间为节点B发送的主动连通性检测消息中的Detect Mult乘以节点B的协商好的发送间隔。同理。节点B侧协商的发送间隔为节点B的Desired Min TX Interval与节点A的Required Min RX Interval之中的最大值,节点B侧的协商的检测时间为节点A发送的主动连通性检测消息中的Detect Mult乘以节点A的协商后的发送间隔。
基于图9所示的OAM消息的连通性检测提供了下述三种方式:
(1)异步模式:发送端和接收端以自身协商后的发送间隔周期性地互相发送主动连通性检测消息,如果在本地对应的协商的检测时间内没有接收到对端发送的主动连通性检测消息,则发送端和接收端两端的检测会话状态更新为Down,说明发送端与接收端之间不连通;若在本地对应的协商的检测时间内接收到对端发送的主动连通性检测消息,则发送端和接收端两端的检测会话状态保持为UP,说明发送端与接收端之间连通。
(2)查询模式:在检测会话建立完成后,发送端和接收端停止发送主动连通性检测消息。若发送端需要验证连通性,则发送端以协商的发送间隔周期性地发送设置了P标志的主动连通性检测消息,接收端接收到发送端发送的主动连通性检测消息后会返回一个设置了F标志的主动连通性检测消息,则发送端与接收端之间的检测会话状态保持为UP,说明发送端与接收端之间连通;若在发送端对应的检测时间内未收到设置了F标志的主动连通性检测消息,则发送端和接收端两端的检测会话状态更新为Down,说明发送端与接收端之间不连通。
(3)回声模式:发送端以协商后的发送间隔周期性地向接收端发送一组主动连通性检测消息,接收端将接收到的主动连通性检测消息不做任何修改地环回给发送端,若发送端在检测时间内未接收到的主动连通性检测消息的个数大于等于预设阈值,则发送端和接收端两端的检测会话状态更新为Down,说明发送端与接收端之间不连通;若发送端在检测时间内未接收到的主动连通性检测消息的个数小于预设阈值,则发送端和接收端两端的检测会话状态保持为UP,说明发送端与接收端之间连通。
下面以上述查询模式为例基于图9所示的OAM消息说明图6中节点A与节点B之间的连通性检测过程:
A21:节点A生成IPv6报文3,IPv6报文3携带OAM消息3。
其中,OAM消息3包括图9所示的各个字段,其中,在OAM消息3中,节点A填写的字段有:本地会话状态、检测时间乘数、诊断字、主动连通性检测消息的最小发送间隔和主动连通性检测消息的最小接收间隔,另外,将主动连通性回显消息的最小接收间隔这个字段置0以及将标志位中的D标志和P标志均置1。需要说明的是,OAM消息3中节点A填写的字段均为节点A本地支持的,例如,主动连通性检测消息的最小发送间隔是指节点A支持的发送主动性能检测消息的最小发送间隔,主动连通性检测消息的最小接收间隔是指节点A支持的接收主动性能检测消息的最小发送间隔。
A22:节点A向节点B发送IPv6报文3。
A23:节点B接收IPv6报文3,根据IPv6报文3生成IPv6报文4。
具体地,节点B根据接收到的IPv6报文3生成IPv6报文4,其中,IPv6报文4携带有OAM消息4,OAM消息4是对OAM消息3的响应,OAM消息4包括图9所示的各个字段。在OAM消息4中,节点B填写的字段有:本地会话状态、检测时间乘数、诊断字、主动连通性检测消息的最小发送间隔和主动连通性检测消息的最小接收间隔,另外,将主动连通性回显消息的最小接收间隔置0以及将标志位中的D标志和F标志均置1。需要说明的是,OAM消息4中节点B填写的字段均为节点B本地支持的,例如,主动连通性检测消息的最小发送间隔是指节点B支持的发送主动性能检测消息的最小发送间隔,主动连通性检测消息的最小接收间隔是指节点B支持的接收主动性能检测消息的最小发送间隔。
A24:节点B向节点A发送IPv6报文4。
具体地,节点B向节点A发送IPv6报文4。相应地,若节点A在协商的检测时间内接收到IPv6报文4,则说明节点A与节点B之间是互相连通的;若节点A在协商的检测时间内未接收到IPv6报文4,则说明节点A与节点B之间不连通。
第三种:消息类型为性能检测消息
在OAM消息的消息类型为性能检测消息时,即T字段用于指示OAM消息为性能检测消息,性能检测消息用于检测两个转发引擎之间的双向路径中的丢包、时延和时延抖动检测中的一种或多种。
参见图10,图10是本申请实施例提供的一种消息类型为性能检测消息时的OAM消息,其中,图10中的深色部分即为消息类型为性能检测消息对应的OAM消息内容(下文简称OAM消息内容3),由图10可以看出,OAM消息内容3进一步包括:
发送端发送的性能检测消息的序列号(Sender Sequence Number);
反射端发送的性能检测消息的序列号(Reflector Sequence Number);
发送端发送性能检测消息的发送时间戳(Sender Timestamp);
反射端接收性能检测消息的接收时间戳(Reflector Receive Timestamp);
反射端发送性能检测消息的发送时间戳(Reflector Timestamp);
发送端接收性能检测消息的接收时间戳(Sender Receive Timestamp)。
需要说明的是,上述反射端发送的性能检测消息是对发送端发送的性能检测消息的响应。
在一些可能的实施例中,图10所示OAM消息还包括用于填充变长字段,且填充变长字段是可选的,本申请实施例不做具体限定。
需要说明的是,图10中的两个序列号可用于两个转发引擎之间的丢包测量,图10中的四个时间戳可用于两个转发引擎之间的时延测量和时延抖动测量中的至少一种。例如,发送端发送的性能检测消息的发送时间戳和反射端接收性能检测消息的接收时间戳可用于测量发送端至反射端这条路径的时延,反射端发送性能检测消息的发送时间戳和发送端接收性能检测消息的接收时间戳可用于测量反射端至发送端这条路径的时延。
在一些可能的实施例中,图10中的两个序列号也可以通过不同的序列号字段编号区分,例如,发送端发送的性能检测消息的序列号可表示为Sequence Number1,反射端发送的性能检测消息的序列号可表示为Sequence Number2。另外,图10中的四个时间戳也可以通过不同的时间戳字段编号区分,例如,发送端发送性能检测消息的发送时间戳表示为Timestamp1,反射端接收性能检测消息的接收时间戳表示为Timestamp2,…,发送端接收性能检测消息的接收时间戳表示为Timestamp4。
一具体实施中,图10所示的OAM消息是对STAMP测量报文的一种改进示例,相较于图4A-图4D所示的发送端的测量报文和反射端的测量报文,图10所示的OAM消息省略了图4A-图4D中的Error Estimate、HMAC等字段,图10所示的各字段的含义以及功能可参考STAMP测量报文中相同字段对应的解释。
可以看出,图10提供了一种消息类型为性能检测消息时的OAM消息,相较于图4A-图4D所示的STMAP的测量报文,且图10提供的OAM消息对STAMP涉及的发送端和反射端两端的测量报文进行了合并和删减,使得消息类型为性能检测消息时的OAM消息更加轻量化。
下面以图10所示的OAM消息说明图6中节点A与节点B之间的性能检测过程:
A31:节点A生成IPv6报文5,IPv6报文5携带OAM消息5。
其中,OAM消息5包括图10所示的字段,其中,在OAM消息5中,节点A填写的字段有:发送端发送的性能检测消息的序列号和发送端发送性能检测消息的发送时间戳,其余字段,例如:反射端发送的性能检测消息的序列号、反射端接收性能检测消息的接收时间戳、反射端发送性能检测消息的发送时间戳和发送端接收性能检测消息的接收时间戳,均置0或设置为空。
A32:节点A向节点B发送IPv6报文5。
A33:节点B接收IPv6报文5,根据IPv6报文5生成IPv6报文6。
具体地,节点B根据接收到的IPv6报文5生成IPv6报文6,其中,IPv6报文6携带有OAM消息6,OAM消息6是对OAM消息5的响应,OAM消息6包括图10所示的字段。在OAM消息6中,节点B填写的字段有:反射端发送的性能检测消息的序列号、反射端接收性能检测消息的接收时间戳、反射端发送性能检测消息的发送时间戳。另外,OAM消息6中发送端发送的性能检测消息的序列号和发送端发送性能检测消息的发送时间戳这两个字段为节点B从OAM消息5拷贝的,OAM消息6中发送端接收性能检测消息的接收时间戳置0或设置为空。
A34:节点B向节点A发送IPv6报文6。
具体地,节点B向节点A发送IPv6报文6。相应地,节点A在接收到IPv6报文6后,可填写OAM消息6中发送端接收性能检测消息的接收时间戳这个字段。
经过步骤A31-A34即完成了节点A(即发送端)与节点B(即反射端)之间的主动性能检测消息的一次交互,可获取图10中各个字段的取值,将发送端发送性能检测消息的发送时间戳记作T1,反射端接收性能检测消息的接收时间戳记作T2,反射端发送性能检测消息的发送时间戳记作T3,发送端接收性能检测消息的接收时间戳记作T4,基于图10中所示的字段可执行下述功能检测中的至少一种:
时延测量:
双向链路(节点A-节点B-节点A)的时延=(T4-T1)-(T3-T2);
前向链路(节点A-节点B)的时延=(T2-T1);
反向链路(节点B-节点A)的时延=(T4-T3);
时延抖动测量:
时延抖动表示本次时延与上次时延之间的差值的绝对值。例如,节点A在本次的双向链路时延为S0,节点A在上次的双向链路时延值为S1,则时延抖动=|S0-S1|;
丢包测量:
对于丢包测量,在单个采样周期内,发送端节点A发送主动性能检测消息时携带有生成的序列号,反射端节点B不会独立生成序列号,而是直接复制接收到的性能检测消息的序列号作为自身的应答序列号,节点A会统计发出的主动性能检测消息的消息个数N1以及从节点B返回的主动性能检测消息的消息个数N2,则单个采样周期内的丢包率为(N1-N2)/N1。
参见图11,图11是本申请实施例提供的另一种消息类型为性能检测消息时的OAM消息,其中,图11中的带颜色部分即为消息类型为性能检测消息对应的OAM消息内容(下文简称OAM消息内容4),OAM消息内容4包括性能检测类型和性能检测类型对应的消息内容。其中,性能检测类型是对“消息类型=性能检测”的细分类型,性能检测类型可分为三种,分别为:1)丢包测量(Loss Measurement),2)时延测量(Delay Measurement),3)复合丢包时延测量(Combined LossDelay Measurement)。性能检测类型对应的消息内容具体可参见下述图12A-图12C的描述。在一些可能的实施例中,在不同性能检测类型对应的消息的长度不同时,OAM消息内容4还可以包括长度这个字段,用于指示性能检测类型对应的消息的长度。
一具体实施中,OAM消息内容4可通过至少一个子TLV字段承载,可参见下述图12A-图12C所示的示意图,其中,一个子类型T字段用于指示性能检测类型,一个值V字段用于承载性能检测类型对应的消息内容,一个长度L字段用于承载性能检测类型对应的消息的长度。
一具体实施中,也可以通过指示位指示性能检测类型。作为示例,可以通过比特映射的方式,也可以通过二进制取值的方式来指示具体的性能检测类型。以二进制取值为例,例如,由上述可以性能检测类型共有3种,则可通过2个比特位来指示,具体地,“00”表示性能检测类型为丢包测量,“01”表示性能检测类型为时延测量,“10”表示性能检测类型为复合丢包时延测量。又例如,也可以通过3个比特位来指示,具体地,“100”表示性能检测类型为丢包测量,“010”表示性能检测类型为时延测量,“001”表示性能检测类型为复合丢包时延测量,本申请实施例不做具体限定。
参见图12A,在性能检测类型为丢包测量时,性能检测类型对应的消息内容包括:用于承载发送端发送的数据报文的统计数量的字段、用于承载反射端接收的数据报文的统计数量的字段、用于承载反射端发送的数据报文的统计数量的字段和用于承载发送端接收的数据报文的统计数量的字段。需要说明的是,反射端发送的数据报文是对发送端发送的数据报文的响应。
一具体实施中,图12A所示的OAM消息是对MPLS LM消息的一种改进示例,相较于图5A所示的MPLS LM消息,图12A所示的OAM消息省略了图5A中的Version、Flags、ControlCode、Session Identifier等字段,图12A所示的各字段的含义以及功能可参考MPLS LM消息中相同字段对应的解释。
一具体实施中,在性能检测类型为丢包测量时,性能检测类型对应的消息内容也可以是图5A所示的MPLS LM消息内容,本申请实施例不做具体限定。
下面以图12A所示的OAM消息说明图6中节点A与节点B之间的丢包测量过程:
A41:节点A生成IPv6报文7,IPv6报文7携带OAM消息7。
其中,OAM消息7包括图12A所示的字段,其中,在OAM消息7中,节点A填写的字段仅为发送端发送的数据报文的统计数量,其余字段,例如:反射端发送的数据报文的统计数量、发送端接收的数据报文的统计数量和反射端接收的数据报文的统计数量,均置0或设置为空。
A42:节点A向节点B发送IPv6报文7。
A43:节点B接收IPv6报文7,根据IPv6报文7生成IPv6报文8。
具体地,节点B根据接收到的IPv6报文7生成IPv6报文8,其中,IPv6报文8携带有OAM消息8,OAM消息8是对OAM消息7的响应,OAM消息8包括图12A所示的字段。在OAM消息8中,节点B填写的字段有:反射端接收的数据报文的统计数量和反射端发送的数据报文的统计数量。另外,OAM消息8中发送端发送的数据报文的统计数量这个字段的值为节点B从OAM消息7中拷贝的,OAM消息8中发送端接收的数据报文的统计数量这个字段置0或设置为空。
A44:节点B向节点A发送IPv6报文8。
具体地,节点B向节点A发送IPv6报文8。相应地,节点A在接收到IPv6报文8后,可填写OAM消息8中发送端接收的数据报文的统计数量这个字段。
经过步骤A41-A44即说明节点A(即发送端)与节点B(即反射端)之间完成了一个回合的携带OAM消息的报文互传,节点A与节点B之间经过两个回合的报文互传后,可计算节点A(即发送端)的丢包数以及节点B(即反射端)的丢包数,将发送端发送的数据报文的统计数量记作A_TxP,反射端接收的数据报文的统计数量记作B_RxP,反射端发送的数据报文的统计数量记作B_TxP、发送端接收的数据报文的统计数量记作A_RxP:
则节点A侧的丢包数=(A_TxP[2]-A_TxP[1])-(A_RxP[2]-A_RxP[1]),其中,A_TxP[2]、A_RxP[2]分别对应当前回合中节点A发送的、接收的数据报文的统计数量,A_TxP[1]、A_RxP[1]分别对应上一回合中节点A发送的、接收的数据报文的统计数量;
节点B侧的丢包数=(B_TxP[2]-B_TxP[1])-(B_RxP[2]-B_RxP[1]),B_TxP[2]、B_RxP[2]分别对应当前回合节点B发送的、接收的数据报文的统计数量,B_TxP[1]、B_RxP[1]分别对应上一回合节点B发送的、接收的数据报文的统计数量。
参见图12B,在性能检测类型为时延测量时,性能检测类型对应的消息内容包括:发送端发送性能检测消息的发送时间戳、反射端接收性能检测消息的接收时间戳、反射端发送性能检测消息的发送时间戳和发送端接收性能检测消息的接收时间戳。需要说明的是,反射端发送的性能检测消息是对发送端发送的性能检测消息的响应。
一具体实施中,图12B所示的OAM消息是对MPLS DM消息的一种改进示例,相较于图5B所示的MPLS DM消息,图12B所示的OAM消息省略了图5B中的Version、Flags、ControlCode、Session Identifier等字段,图12B所示的各字段的含义以及功能可参考MPLS DM消息中相同字段对应的解释。
一具体实施中,在性能检测类型为时延测量时,性能检测类型对应的消息内容也可以是图5B所示的MPLS DM消息内容,本申请实施例不做具体限定。
下面以图12B所示的OAM消息说明图6中节点A与节点B之间的时延或抖动测量过程:
A51:节点A生成IPv6报文9,IPv6报文9携带OAM消息9。
其中,OAM消息9包括图12B所示的字段,其中,在OAM消息9中,节点A填写的字段仅为:发送端发送性能检测消息的发送时间戳,其余字段,例如,反射端接收性能检测消息的接收时间戳、反射端发送性能检测消息的发送时间戳和发送端接收性能检测消息的接收时间戳,均置0或设置为空。
A52:节点A向节点B发送IPv6报文9。
A53:节点B接收IPv6报文9,根据IPv6报文9生成IPv6报文10。
具体地,节点B根据接收到的IPv6报文9生成IPv6报文10,其中,IPv6报文10携带有OAM消息10,OAM消息10是对OAM消息9的响应,OAM消息10包括图12B所示的字段。在OAM消息10中,节点B填写的字段有:反射端接收性能检测消息的接收时间戳和反射端发送性能检测消息的发送时间戳。另外,OAM消息10中发送端发送性能检测消息的发送时间戳这个字段的值为节点B从OAM消息9中拷贝的,OAM消息10中发送端接收性能检测消息的接收时间戳置0或设置为空。
A54:节点B向节点A发送IPv6报文10。
具体地,节点B向节点A发送IPv6报文10。相应地,节点A在接收到IPv6报文10后,可填写OAM消息10中发送端接收性能检测消息的接收时间戳这个字段。
经过步骤A51-A54即说明节点A(即发送端)与节点B(即反射端)之间完成了一个回合的携带OAM消息的报文互传,可获得图12B中所示的四个时间戳,从而可计算节点A与节点B之间双向链路的时延。将发送端发送性能检测消息的发送时间戳记作T1,反射端接收性能检测消息的接收时间戳记作T2,反射端发送性能检测消息的发送时间戳记作T3,发送端接收性能检测消息的接收时间戳记作T4,可实现下述时延测量和/或时延抖动测量:
时延测量:
双向链路的时延=(T4-T1)-(T3-T2);
单向(节点A-节点B)的时延=(T2-T1);
单向(节点B-节点A)的时延=(T4-T3);
时延抖动测量:
时延抖动表示本次时延与上次时延之间的差值的绝对值。例如,节点A在本次的双向链路时延为S2,节点A在上次的双向链路时延值为S3,则时延抖动=|S2-S3|。
参见图12C,在性能检测类型为复合丢包时延测量时,性能检测类型对应的消息内容包括:发送端发送的数据报文的统计数量、反射端接收的数据报文的统计数量、反射端发送的数据报文的统计数量、发送端接收的数据报文的统计数量、发送端发送性能检测消息的发送时间戳、反射端接收性能检测消息的接收时间戳、反射端发送性能检测消息的发送时间戳和发送端接收性能检测消息的接收时间戳。需要说明的是,反射端发送的数据报文是对发送端发送的数据报文的响应。
一具体实施中,图12C所示的OAM消息是对MPLS DM消息的一种改进示例,相较于图5B所示的MPLS LM DM消息,图12C所示的OAM消息省略了图5C中的Version、Flags、ControlCode、Session Identifier等字段,图12C所示的各字段的含义以及功能可参考MPLS LM DM消息中相同字段对应的解释。
一具体实施中,在性能检测类型为复合丢包时延测量时,性能检测类型对应的消息内容也可以是图5C所示的MPLS LM DM消息内容,本申请实施例不做具体限定。
基于图12C所示的OAM消息既可实现网络中任意两节点之间的丢包测量又可实现时延、时延抖动测量中的至少一种,其具体过程可参考上述图12A和图12B实施过程的相关叙述,为了说明书的简洁,在此不再赘述。
可以看出,采用图11所示的OAM消息的格式,可以实现丢包、时延和时延抖动检测中的一种或多种,增加了性能检测选择的多样性。
第四种:消息类型为复合OAM消息
在OAM消息的消息类型为复合OAM消息时,即T字段用于指示OAM消息为复合OAM消息,复合OAM消息可用于实现至少两种OAM功能,至少两种OAM功能包括连通性检测和性能检测。
在一些可能的实施中,复合OAM消息的V字段包括第一标识和第二标识,其中,第一标识用于指示复合OAM消息用于连通性检测,第二标识用于指示复合OAM消息用于性能检测。对于第一标识、第二标识的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。另外,第一标识和第二标识可以承载在V字段中。当然,也可以在T字段(即图13-图15中的“消息类型”字段)中设置预留的比特位,用于承载第一标识和第二标识。
基于上述实施例中用于连通性检测的OAM消息格式以及用于性能检测的OAM消息格式进行组合,复合OAM消息的格式例举的有三种形式,具体可参考图13-图15的描述,但本申请实施例并不限定复合OAM消息的格式仅为图13-图15所示。
参见图13,图13是本申请实施例提供的一种复合OAM消息,如图13所示,其中,图13中的非白色部分即为复合OAM消息对应的OAM消息内容(下文简称OAM消息内容5)。需要说明的是,OAM消息内容5基于上述图8的OAM消息内容1和图11的OAM消息内容4进行组合获得的。OAM消息内容5具体包括:
类型:指示复合OAM消息为请求消息或应答消息;
序列号:表示发送端发送的复合OAM消息的序列号;
返回代码:用于承载反射端对发送端发送的复合OAM消息的响应结果,返回代码的值可参考图8中返回代码的值的相关叙述;
回复模式:用于指示应答发送端发送的复合OAM消息的方式,回复模式的值可参考图8中回复模式的值的相关叙述;
类型-值-长度/子-类型-值-长度:可以是下游详细映射TLV(DownstreamDetailed Mapping TLV)、填充TLV(Padding TLV)等;
预留位:用于功能扩展;
其中,预留位、回复模式、类型-值-长度/子-类型-值-长度字段是可选的;需要说明的是,类型、序列号、返回代码、类型-值-长度/子-类型-值-长度等字段使得复合OAM消息具备连通性检测或验证的功能;
OAM消息内容5还包括支持性能检测功能的字段,即性能检测类型、长度和性能检测类型对应的消息内容,也就是说,OAM消息内容5还包括上述图11中的消息内容4,由于性能检测类型是对性能检测功能的细分,参考上述图11中的相关描述,可知性能检测类型可分为三种,分别为:1)丢包测量(Loss Measurement),2)时延测量(Delay Measurement),3)复合丢包时延测量(Combined LossDelay Measurement),则性能检测类型对应的消息内容具体可以是上述图12A-图12C,图13中支持性能检测功能的字段的含义可参考图12A-图12C中的相应字段的含义,但图12A-图12C中“性能检测消息”替换为“复合OAM消息”。由此可以看出,图13所示的复合OAM消息可用于丢包、时延和时延抖动性能检测中的至少一种。
在一些可能的实施例中,图13中的“类型”、“性能检测类型”字段的表示方式,可以是比特映射的方式,也可以采用二进制取值或者子TLV的方式,本申请不做具体限制。关于图13中的“类型”、“性能检测类型”字段在TLV字段中的承载方式,本申请不做具体限定。一种具体的实现方式中,图13中的“类型”和“性能检测类型”字段可以承载在V字段中。当然,也可以在T字段(即图13中的“消息类型”字段)中设置预留的比特位,用于承载“类型”和“性能检测类型”字段。
以性能检测类型为时延测量为例,参考图12B,在图13中,在性能检测类型为时延测量的情况下,性能检测类型对应的消息内容包括:发送端发送复合OAM消息的发送时间戳、反射端接收复合OAM消息的接收时间戳、反射端发送复合OAM消息的发送时间戳和发送端接收复合OAM消息的接收时间戳。需要说明的是,反射端发送的复合OAM消息是对发送端发送的复合OAM消息的响应。
需要说明的是,图13所示的OAM消息仅说明包含的字段,而对于OAM消息内各字段的排列位置不做具体限定。例如,类型-长度-值/子-类型-值-长度这个字段也可以放置在最下方,即放置在性能检测类型对应的消息内容的下方,本申请不做具体限定。
参见图14,图14是本申请实施例提供的又一种复合OAM消息,其中,图14中的非白色部分即为复合OAM消息对应的OAM消息内容(下文简称OAM消息内容6)。需要说明的是,OAM消息内容6是基于图8的OAM消息内容1和图10的OAM消息内容3拼接获得的。OAM消息内容6具体包括:
类型、序列号、返回代码、回复模式(可选的)、类型-值-长度/子-类型-值-长度(可选的)和预留位(可选的);这些字段的具体含义与图13中的类型、序列号、返回代码、回复模式、类型-值-长度/子-类型-值-长度以及预留位中各字段的含义相同,具体可参考图13中对应字段的说明;
反射端发送的复合OAM消息的序列号;
发送端发送复合OAM消息的发送时间戳;
反射端接收复合OAM消息的接收时间戳;
反射端发送复合OAM消息的发送时间戳;
发送端接收复合OAM消息的接收时间戳。
其中,反射端发送的复合OAM消息是对发送端发送的复合OAM消息的响应。
在图14所示的字段中,类型、序列号、返回代码等字段使得复合OAM消息具备连通性检测或验证的功能;序列号、反射端发送的复合OAM消息的序列号、发送端发送复合OAM消息的发送时间戳、反射端接收复合OAM消息的接收时间戳、反射端发送复合OAM消息的发送时间戳和发送端接收复合OAM消息的接收时间戳这些字段使得复合OAM消息能够用于性能检测,且图14所示的复合OAM消息可实现丢包、时延和时延抖动这三种性能检测。
下面以图14所示的复合OAM消息说明图6中节点A与节点B之间的连通性检测和性能检测过程:
A61:节点A生成IPv6报文11,IPv6报文11携带OAM消息11。
其中,OAM消息11包括图14所示的字段,其中,在OAM消息11中,节点A填写的字段有:类型、序列号、回复模式和发送端发送复合OAM消息的发送时间戳,其中,类型填写为“请求”,其余字段,例如:返回代码、反射端发送的复合OAM消息的序列号、反射端接收复合OAM消息的接收时间戳、反射端发送复合OAM消息的发送时间戳和发送端接收复合OAM消息的接收时间戳,均置0或设置为空。在一些可能的实施例中,OAM消息11还可以携带TLV或子TLV。
A62:节点A向节点B发送IPv6报文11。
A63:节点B接收IPv6报文11,根据IPv6报文11生成IPv6报文12。
具体地,节点B根据接收到的IPv6报文11生成IPv6报文12,其中,IPv6报文12携带有OAM消息12,OAM消息12是对OAM消息11的响应,OAM消息12包括图14所示的字段。在OAM消息12中,节点B填写的字段有:类型、返回代码、反射端接收复合OAM消息的接收时间戳、反射端发送的复合OAM消息的序列号和反射端发送复合OAM消息的发送时间戳,其中,类型填写为“应答”。另外,OAM消息12中的序列号和发送端发送复合OAM消息的发送时间戳这两个字段的值为节点B从OAM消息11拷贝的,OAM消息12中发送端接收复合OAM消息的接收时间戳置0或设置为空。
A64:节点B向节点A发送IPv6报文12。
具体地,节点B向节点A发送IPv6报文12。相应地,节点A接收到IPv6报文12,基于IPv6报文2中的返回代码,节点A可以判断自身与节点B之间的连通性。若IPv6报文12的返回代码未指示与连通性相关的错误,例如,返回代码的值为上述图8实施例中的“3”、“0”、“1”等,则节点A与节点B之间是互相连通的,在此情况下,节点A还可以记录接收IPv6报文12的接收时间戳,作为OAM消息12中发送端接收复合OAM消息的接收时间戳,该参数可用于下述中的性能检测。在一些可能的实施例中,若节点A接收到IPv6报文11的响应报文,但IPv6报文11的响应报文中的返回代码指示的是与连通性相关的错误,例如,返回代码的值为上述图8实施例中的“7”、“8”、“10”等,则该响应报文是由节点A与节点B之间的中间节点发送给节点A的,节点A与节点B之间的中间节点存在故障,故节点A与节点B之间不连通。
在IPv6报文12中的返回代码未指示与连通性相关的序偶无时,即节点A与节点B之间互通的情况下,可以基于IPv6报文12中剩余的字段执行下述各种性能检测:
时延测量:
将发送端发送复合OAM消息的发送时间戳记作T5,反射端接收复合OAM消息的接收时间戳记作T6,反射端发送复合OAM消息的发送时间戳记作T7,发送端接收复合OAM消息的接收时间戳记作T8,
双向链路(节点A-节点B-节点A)的时延=(T8-T5)-(T7-T6);
前向链路(节点A-节点B)的时延=(T6-T5);
反向链路(节点B-节点A)的时延=(T8-T7);
时延抖动测量:
时延抖动表示本次时延与上次时延之间的差值的绝对值。例如,节点A在本次的双向链路时延为S4,节点A在上次的双向链路时延值为S5,则时延抖动=|S4-S5|;
丢包测量:
对于丢包测量,在单个采样周期内,发送端节点A发送复合OAM消息时携带有生成的序列号,反射端节点B不会独立生成序列号,而是直接复制接收到的复合OAM消息的序列号作为自身的应答序列号和自身发出的复合OAM消息的序列号。因此,在单个采样周期内,节点A会统计发出的复合OAM消息的消息个数N3以及从节点B发送的复合OAM消息的消息个数N4,则单个采样周期内的丢包率为(N3-N4)/N3。
在一些可能的实施例中,复合OAM消息中用于实现连通性检测功能的字段也可以采用图9所示的主动性能检测消息中的字段,本申请实施例不做具体限定。
例如,参见图15,图15是本申请实施例提供的又一种复合OAM消息的消息格式示例图,其中,图15中的非白色部分即为复合OAM消息对应的OAM消息内容(下文简称OAM消息内容7)。需要说明的是,OAM消息内容7是基于图9的OAM消息内容2和图12C的OAM消息内容拼接获得的。OAM消息内容7具体包括:
本地会话状态:指示发送端与反射端建立的复合OAM消息会话的状态;
诊断字:指示最近一次会话的状态改变的原因;
复合OAM消息的最小发送间隔:发送端发送复合OAM消息的最小发送间隔;
复合OAM消息的最小接收间隔:发送端接收反射端发送的复合OAM消息的最小接收间隔;
复合OAM回声消息的最小接收间隔:发送端接收自身发出的复合OAM消息的最小接收间隔;
检测时间乘数:用于在异步模式下计算检测时间;
标志位:包括查询请求标志Demand(D)、轮询标志Poll(P)和终止标志Final(F),其中,P标志置1表示发送端请求验证连通性或参数更改,D标志置1表示发送端期望工作在查询模式,对于F标志,响应P标志的应答报文中须将F标志置1;在一些可能的实施例中,标志位还可以包括Control Plane Independent(C)、认证标志Authentication Present(A)和多点标志Multipoint(M),C标志置1表示复合OAM消息在转发平面传输,A标志置1表示需对会话进行身份认证,M用于为连通性检测未来支持点对多点扩展而设的预留位;
预留位:用于功能扩展;
发送端发送的数据报文的统计数量;
反射端接收的数据报文的统计数量;
反射端发送的数据报文的统计数量;
发送端接收的数据报文的统计数量;
发送端发送复合OAM消息的发送时间戳;
反射端接收复合OAM消息的接收时间戳;
反射端发送复合OAM消息的发送时间戳;
发送端接收复合OAM消息的接收时间戳。
其中,反射端发送的复合OAM消息是对发送端发送的复合OAM消息的响应。
在图15所示的字段中,本地会话状态、复合OAM消息的最小发送间隔、复合OAM消息的最小接收间隔、检测时间乘数、标志位等字段使得复合OAM消息具备连通性检测的功能;发送端发送的数据报文的统计数量、反射端接收的数据报文的统计数量、反射端发送的数据报文的统计数量和发送端接收的数据报文的统计数量这四个字段可用于丢包测量;发送端发送复合OAM消息的发送时间戳、反射端接收复合OAM消息的接收时间戳、反射端发送复合OAM消息的发送时间戳和发送端接收复合OAM消息的接收时间戳这四个字段可用于时延测量、时延抖动测量中的至少一种。
图15中基于本地会话状态、复合OAM消息的最小发送间隔、复合OAM消息的最小接收间隔、检测时间乘数、标志位等字段进行连通性检测的原理可参考图9实施例的相关叙述,区别在于,图9中发送端与接收端互传的消息称作主动检测性消息,而图15中发送端与反射端互传的消息称作复合OAM消息。另外,基于图15所示的复合OAM消息进行连通性检测时发送端和反射端两侧的发送间隔、检测时间(或检测时长)的协商也可以参见图9实施例中的相关叙述。
下面以查询模式为例基于图15所示的复合OAM消息说明图6中节点A与节点B之间的连通性检测和性能检测过程:
A71:节点A生成IPv6报文13,IPv6报文13携带OAM消息13。
其中,OAM消息13包括图15所示的各个字段,其中,在OAM消息13中,节点A填写的字段有:本地会话状态、检测时间乘数、诊断字、复合OAM消息的最小发送间隔、复合OAM消息的最小接收间隔、发送端发送的数据报文的统计数量和发送端发送复合OAM消息的发送时间戳,另外,将复合OAM回声消息的最小接收间隔这个字段的值置0以及将标志位中的D标志和P标志均置1。
A72:节点A向节点B发送IPv6报文13。
A73:节点B接收IPv6报文13,根据IPv6报文13生成IPv6报文14。
具体地,节点B根据接收到的IPv6报文13生成IPv6报文14,其中,IPv6报文14携带有OAM消息14,OAM消息14是对OAM消息13的响应,OAM消息14包括图15所示的各个字段。在OAM消息14中,节点B填写的字段有:本地会话状态、检测时间乘数、诊断字、复合OAM消息的最小发送间隔、复合OAM消息的最小接收间隔、反射端接收的数据报文的统计数量、反射端发送的数据报文的统计数量、反射端接收复合OAM消息的接收时间戳和反射端发送复合OAM消息的发送时间戳。另外,将复合OAM回声消息的最小接收间隔字段的值置0以及将标志位中的D标志和F标志均置1,OAM消息14中的发送端发送的数据报文的统计数量和发送端发送复合OAM消息的发送时间戳这两个字段的值是从OAM消息13中拷贝的。
A74:节点B向节点A发送IPv6报文14。
具体地,节点B向节点A发送IPv6报文14。相应地,若节点A在协商的检测时间内接收到IPv6报文14,则说明节点A与节点B之间是互相连通的;若节点A在协商的检测时间内未接收到IPv6报文14,则说明节点A与节点B之间不连通。在节点A与节点B互通的情况下,可基于图15中的承载统计数量的字段和承载时间戳的字段执行下述性能测量:
丢包测量:
经过步骤A71-A74即说明节点A(即发送端)与节点B(即反射端)之间完成了一个回合的携带复合OAM消息的报文互传,节点A与节点B之间经过两个回合的报文互传后,可计算节点A(即发送端)的丢包数以及节点B(即反射端)的丢包数,将发送端发送的数据报文的统计数量记作A_TxP,反射端接收的数据报文的统计数量记作B_RxP,反射端发送的数据报文的统计数量记作B_TxP、发送端接收的数据报文的统计数量记作A_RxP:
则节点A侧的丢包数=(A_TxP[2]-A_TxP[1])-(A_RxP[2]-A_RxP[1]),其中,A_TxP[2]、A_RxP[2]分别对应当前回合中节点A发送的、接收的数据报文的统计数量,A_TxP[1]、A_RxP[1]分别对应上一回合中节点A发送的、接收的数据报文的统计数量;
节点B侧的丢包数=(B_TxP[2]-B_TxP[1])-(B_RxP[2]-B_RxP[1]),B_TxP[2]、B_RxP[2]分别对应当前回合节点B发送的、接收的数据报文的统计数量,B_TxP[1]、B_RxP[1]分别对应上一回合节点B发送的、接收的数据报文的统计数量。
时延测量:
在节点A与节点B之间经过一个回合的报文互传后,可获得图15中所示的四个时间戳,从而可计算节点A与节点B之间双向链路的时延。将发送端发送复合OAM消息的发送时间戳记作T9,反射端接收复合OAM消息的接收时间戳记作T10,反射端发送复合OAM消息的发送时间戳记作T11,发送端接收复合OAM消息的接收时间戳记作T12,可实现下述时延测量和/或时延抖动测量:
双向链路的时延=(T12-T9)-(T11-T10);
单向(节点A-节点B)的时延=(T10-T9);
单向(节点B-节点A)的时延=(T12-T11);
时延抖动测量:
时延抖动表示本次时延与上次时延之间的差值的绝对值。例如,节点A在本次的双向链路时延为S6,节点A在上次的双向链路时延值为S7,则时延抖动=|S6-S7|。
在一些可能的实施例中,图15中所示的复合OAM消息的消息格式中可以删除发送端发送的数据报文的统计数量、反射端接收的数据报文的统计数量、反射端发送的数据报文的统计数量和发送端接收的数据报文的统计数量这四个字段,则图15中剩余的字段组成的复合OAM消息只可实现连通性检测和时延/时延抖动测量。在一些可能的实施例中,图15中所示的复合OAM消息的消息格式中可以删除发送端发送复合OAM消息的发送时间戳、反射端接收复合OAM消息的接收时间戳、反射端发送复合OAM消息的发送时间戳和发送端接收复合OAM消息的接收时间戳这四个字段,则图15中剩余的字段组成的复合OAM消息只可实现连通性检测和丢包测量。
可以看出,图15所示的复合OAM消息中,V字段也可以没有上述中用于指示复合OAM消息的类型的“类型”字段和用于指示性能检测的类型的“性能检测类型”字段。
在一些可能的实施例中,复合OAM消息的消息可以是基于图9中的OAM消息内容2和图10中的OAM消息内容3生成,即复合OAM消息对应的OAM消息内容除了包括图15中支持连通性检测的字段以及四个用于承载时间戳的字段外,还包括发送端发送的复合OAM消息的序列号、反射端发送的复合OAM消息的序列号。在此情况下,该复合OAM消息可用于实现连通性检测以及丢包、时延和时延抖动测量这三种性能检测。
需要说明的是,上述图8-图15所示的OAM消息仅用于说明包含的字段,而对于各字段在OAM消息内的排列位置不做具体限定。
综上,本申请实施例提供了图7所示的统一的OAM消息,对OAM消息的功能进行了整合,针对不同的检测功能,OAM消息具体可以是图8-图15所示的消息格式。本申请实施例提供的OAM消息中不包括现有技术中各个协议所采用的已有的会话标识,例如,图8所示OAM消息相较于MPLS Echo报文删除了Sender’s Handle字段、图9所示OAM消息相较于BFD控制报文删除了My Discriminator、Your Discriminator字段、图12A所示OAM消息相较于LM消息删除了Session Identifier字段,但后续对OAM消息进行封装时采用了统一的会话标识,即IPv6报文中还包括OAM消息的统一会话标识,该统一会话标识可供上述四种类型的OAM消息复用,从而可以简化OAM检测过程中会话标识的协商过程,该统一会话标识用于发送端匹配发送端发送的OAM消息与发送端接收的来自对端的OAM消息。例如,将IPv6段路由SRv6网络中定义的Path Segment字段作为OAM消息统一会话标识,其不仅用来标识一条SRv6路径作为OAM作用的对象,还可以用于发送端匹配发送端发送的OAM消息与发送端接收的来自对端的OAM消息。也就是说,统一会话标识可用于关联或匹配正向的OAM消息和反向的OAM消息,即使得发送端可以快速匹配到发送端发送的OAM消息的响应消息。
例如,假设网络中有两个节点,即节点1和节点1,向节点3发送IPv6报文,其中,节点1发送的IPv6报文1’中除了携带OAM消息1’外还包括Path Segment1,节点2发送的IPv6报文2’中中除了携带OAM消息2’外还包括Path Segment2,节点3对来自节点1的IPv6报文1’和来自节点2的IPv6报文2’分别进行响应,若节点1接收到的响应报文中包括Path Segment1,则说明该响应报文是对节点1发送的IPv6报文1’的响应,也就是说Path Segment1使得节点1匹配到OAM消息1’的响应消息;若节点1接收到的响应报文中不包括Path Segment1,则说明该响应报文不是对节点1发送的IPv6报文1’的响应。同理,Path Segment2可用于节点2匹配IPv6报文2’中OAM消息2’的响应消息。
可以看出,实施本申请实施例,提供了一种统一的OAM消息,实现了对OAM功能的整合,使得实现连通性检测功能或性能检测功能对应的OAM消息更加轻量化,有利于减少网络带宽的开销。另外,为上述实现各种功能的OAM消息设置了统一会话标识,能有效简化会话标识的协商过程,减小网络带宽的消耗,提高了OAM消息的处理效率。
上述定义的OAM消息携带于IPv6扩展头中,IPv6扩展头可以是目的地选项头(Destination Options Header,DoH)、分段路由报头(Segmant Routing Header,SRH)或逐跳选项头(Hop-by-hop Options Header)等。在一些可能的实施例中,IPv6扩展头还可以包括关联通道(Associated Channel,ACH),OAM消息可以承载于ACH中。在一些可能的实施例中,OAM消息也可以携带于IPv6报文的一个新增扩展头中,本申请实施例不做具体限定。将本申请提供的统一的OAM消息封装于IPv6扩展头,能有效减小OAM消息的封装深度,提高OAM消息的处理效率。
OAM消息可应用于不同的组网和隧道场景中,例如,IPv6段路由(Segment RoutingIPv6,SRv6)、基于IPv6的位索引显示复制(Bit Indexed Explicit Replication usingIPv6 Data Plane,BIERv6)等,下面具体描述本申请实施例提供的OAM消息在不同应用场景下的封装方式。
应用一:SRv6
具体地,SRv6是指使用SR IPv6数据平面传送IPv6数据包。在SRv6场景下,将本申请实施例提供的OAM消息封装在IPv6扩展头中,替代了原始UDP或TCP的封装格式,从原始的控制面处理转为数据面处理,可实现SRv6隧道场景下端到端的连通性检测和性能检测中的一种或多种。
一般地,可参见图16-图19,原始SRv6的报文封装格式包括:IPv6头部、SRH、DoH和IPv6包负荷(IPv6 Packet Payload),其中,IPv6头部包括源地址、目的地址和下一个报头的标识,SRH包括分段标识列表(Segment ID List,SID)、路径段(Path Segment)和选项类-长度-值(Option TLV),DoH可用于携带只被封包的目的地节点检查的选项信息,IPv6包负荷用于携带具体IPv6数据包。需要说明的是,SRH和DoH均可称作IPv6扩展头。
方式A:OAM消息位于DoH
参见图16,图16是本申请实施例提供的一种OAM消息在SRv6场景下的封装示意图。如图16所示,上述OAM消息位于DoH中。具体地,DoH为紧邻SRH的下一个报头,OAM消息可以承载于DOH的一个或多个TLV中,另外,DoH中还可以包括:Next Header字段、Hdr Ext Len字段、OptionType字段和Option Lenth字段,其中,Next Header字段用于指示紧随DoH的下一个报头的类型,Hdr Ext Len字段用于指示该选项的长度,Option Type字段用于指示选项类型为OAM,Option Lenth字段用于指示选项长度。需要说明的是,OAM消息即为本申请实施例提供的OAM消息,具体可以是上述图8-图15中的任意一种,本申请实施例不做具体限定。
方式B:OAM消息位于SRH
参见图17,图17是本申请实施例提供的又一种OAM消息在SRv6场景下的封装示意图。如图17所示,上述OAM消息位于IPv6扩展头SRH中。由于SRH可携带一个或多个OptionTLV,因此,OAM可由SRH中的一个或多个Option TLV承载。OAM消息的具体格式可为上述图8-图15中的任意一种,本申请实施例不做具体限定。
方式C:OAM消息承载于关联通道ACH中
参见图18,图18是本申请实施例提供的又一种OAM消息在SRv6场景下的封装示意图。如图18所示,OAM消息承载于ACH中。具体地,IPv6扩展头DoH包括ACH,ACH包括选项类型(Option Type)字段和通道类型(Channel Type)字段,选项类型字段指示通用关联通道G-ACH,通道类型字段指示通用关联通道G-ACH中承载OAM消息,其中,OAM消息的具体格式可为上述图8-图15中的任意一种,本申请实施例不做具体限定。需要说明的是,图18中剩余字段的含义可参考上述图16中对应字段的说明,在此不再赘述。
参见图19,图19是本申请实施例提供的又一种OAM消息在SRv6场景下的封装示意图。如图19所示,OAM消息承载于ACH中。具体地,IPv6扩展头SRH包括ACH,ACH承载于SRH中的一个或多个选项TLV中。ACH包括选项类型(Option Type)字段和通道类型(Channel Type)字段,选项类型字段指示通用关联通道G-ACH,通道类型字段指示通用关联通道G-ACH中承载OAM消息,其中,OAM消息的具体格式可为上述图8-图15中的任意一种,本申请实施例不做具体限定。需要说明的是,图18中剩余字段的含义可参考上述对应字段的说明,在此不再赘述。
可以看到,实施本申请实施例,基于图16-图19中的任意一种,可实现SRv6隧道场景下端到端的性能检测和连通性检测中的一种或多种。另外,将SRv6中定义的PathSegment字段作为本申请实施例提出的OAM消息中的统一会话标识和SRv6路径标识,采用这种统一的会话标识能有效简化性能检测或连通性检测过程中会话标识的协商过程,提高处理效率。
应用二:BIERv6
具体地,BIERv6是一种基于比特索引显示复制(或称作位索引显示复制)的新型组播技术,实现在组播域中进行无状态转发。其利用IPv6扩展头、IPv6地址可达性及其可编程空间,以native IPv6的方式实现的BIER多播架构,提供更好的多播部署能力和扩展支持后续native IPv6特性的能力。在BIERv6场景下,将本申请实施例提供的OAM消息封装在IPv6扩展头中,替代了原始UDP或TCP的封装格式,从原始的控制面处理转为数据面处理,可实现BIERv6组播场景下端到端的连通性检测和性能检测中的一种或多种。
一般地,原始BIERv6的报文封装格式包括:IPv6头部、目的地选项报头DoH和IP多播包负荷(IP Multicast Packet Payload),其中,DoH承载了比特索引显示复制BIER头,BIER头包括BIER转发所需的必要信息,例如,位索引转发表(Bit Index ForwardingTable,BIFT)、位转发路由器标识(BitForwarding Router-id)等。需要说明的是,DoH是一个IPv6扩展头。
参见图20,图20是本申请实施例提供的又一种OAM消息在BIERv6场景下的封装示意图。如图17所示,上述OAM消息位于IPv6扩展头DoH中,DoH包括BIER头,OAM消息可承载于DoH中BIER头之后的一个或多个选项TLV中,OAM消息的具体格式可为上述图8-图15中的任意一种,本申请实施例不做具体限定。一具体实施中,TLV中的选项类型字段直接作为OAM消息中的Message Type。另一具体实施中,TLV中的一个选项类型字段用于指示OAM,另一个类型字段作为OAM消息中的Message Type,本申请实施例不做具体限定。
下面对图20中的剩余字段进行简要说明,在图20中,DoH具体包括:Next Header字段、Hdr Ext Len字段、Option Type字段、Option Lenth字段和非MPLS BIER报头(Non-MPLSBIER Header),其中,Next Header字段用于指示紧随DoH的下一个报头的类型,Hdr ExtLen字段用于指示该选项的长度,Option Type字段用于指示选项类型为BIER选项(BIEROption)Option Lenth字段用于指示选项长度,而非MPLS BIER报头除了承载上述OAM消息外,还包括下述字段:
BIFT-id:BIFT标识,表示一个特定的位索引转发表(Bit Index ForwardingTable,BIFT),BIFT存储了组播域中出口节点与其他节点之间的映射关系;
TC:流量类别(Traffic Class);
S:栈底标识;
TTL:生存时长,表示消息经BIERv6转发处理的跳数,每经过一个BIERv6转发节点后,TTL值减1,当TTL为0时,报文被丢弃;
Nibble:半字节;
Ver:表示BIERv6报文格式版本;
BSL:BitstringLength,位串长度;
Entropy:熵,用于负载平衡;
OAM:操作维护管理标识;
Rsv:预留位;
DSCP:差分服务代码点;
Proto:下一层协议标识,用于标识BIERv6报文头后面的Payload类型;
BFIR-id:位转发路由器标识;
BitString:位串,用于标识组播报文目的节点的集合,BitString字段的每一位表示一个BFER节点。
需要说明是,图20中的BIFD-id、BFIR-id和Entropy这三者可唯一标识一个组播流,其也可以作为OAM消息的统一会话标识,用于发送端快速匹配发送端发送的上述OAM消息的响应消息。
可以看到,实施本申请实施例,基于图20所示格式实现上述OAM消息在BIERv6组播场景下的应用,可实现BIERv6组播场景下端到端的性能检测和连通性检测中的一种或多种。
参见图21,图21是本申请实施例提供的一种OAM检测方法,应用于第一装置,第一装置为发送端或OAM检测的发起端。第一装置可以是图6中的节点A或节点B。该方法包括但不限于以下步骤:
S101、第一装置获取第一IPv6报文,第一IPv6报文的IPv6扩展头携带第一OAM消息。
在本申请实施例中,第一装置获取第一IPv6报文可以是第一装置生成第一IPv6报文,第一IPv6报文的IPv6扩展头携带第一OAM消息,其中,第一OAM消息包括类型T字段和值V字段,V字段用于承载第一OAM消息的内容,T字段用于承载第一OAM消息的类型。需要说明的是,T字段与图7中的消息类型对应,V字段与图7中的OAM消息内容对应。
一具体实施中,第一OAM消息不包括协议版本信息。例如,协议版本信息可以是OAM功能涉及的各种协议的版本号。
一具体实施中,T字段指示第一OAM消息为回显echo消息。
一具体实施中,T字段取值为第一值时,指示第一OAM消息为echo request消息,T字段取值为第二值时,指示第一OAM消息为echo reply消息。
一具体实施中,T字段取值为第三值时,指示第一OAM消息的类型为echo消息,此时不区分echo消息的具体类型。通过在TLV字段中增加标识字段,来标识echo消息的具体类型。例如,第一标识字段用于标识echo消息为echo request消息,第二标识字段用于标识echo消息为echo reply消息。对于标识字段的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。关于标识字段在TLV字段中的承载方式,本申请不做具体限定。一种具体的实现方式中,上述标识字段可以承载在V字段中。当然,也可以在T字段中设置预留的比特位,用于承载上述标识字段。需要说明的是,标识字段与图8中的“类型”对应。
一具体实施中,在第一OAM消息为回显echo消息的情况下,V字段还包括以下一个或多个字段:序列号字段,用于承载发送端(即第一装置)发送的echo消息的序列号;返回代码return codes字段,其中,return codes字段用于承载反射端对发送端(即第一装置)发送的echo消息的响应结果;类型-长度-值TLV字段、预留字段以及第一回复模式字段,其中,TLV字段可以是下游详细映射TLV、填充TLV等,预留字段用于功能扩展,第一回复模式字段用于指示应答回显消息的方式。需要说明的是,序列号字段与图8中的序列号对应,返回代码字段与图8中的返回代码对应,第一回复模式字段与图8中的回复模式对应,预留字段与图8中的预留位对应,类型-长度-值TLV字段与图8中的类型-长度-值/子-类型-长度-值对应。
一具体实施中,在第一OAM消息为回显echo消息的情况下,V字段由以下字段组成:标识字段,用于指示echo消息的类型;序列号字段,用于承载该echo消息的序列号;返回代码return codes字段,其中,return codes字段用于承载反射端对发送端发送的echo消息的响应结果;第一回复模式字段,第一回复模式字段用于指示应答echo消息的方式;类型-长度-值TLV字段;以及预留字段,用于功能扩展。需要说明的是,此实施方式对应的消息格式即为图8所示的消息格式。
一具体实施中,在第一OAM消息为回显echo消息的情况下,第一OAM消息不包括协议版本信息和时间戳信息,例如,协议版本信息可以是MPLS echo协议的版本号或者ICMPv6echo的协议版本号,时间戳信息例如可以是第一装置发出回显请求消息的发送时间戳、反射端接收回显请求消息的接收时间戳等。
示例性地,在第一OAM消息为回显请求消息的情况下,第一IPv6报文可以是上述IPv6报文1,则第一OAM消息为上述OAM消息1。
一具体实施中,T字段指示第一OAM消息为主动连通性检测消息。
一具体实施中,在第一OAM消息为主动连通性检测消息的情况下,V字段包括第一字段,用于指示发送端和接收端之间建立的主动连通性检测会话的状态;第二字段,用于指示发送端发送主动连通性检测消息的最小发送间隔Desired Min TX Interval;第三字段,用于指示发送端接收接收端发送的主动连通性检测消息的最小接收间隔Required Min RXInterval;第四字段,用于指示发送端接收接收端发送的响应消息的最小接收间隔Required Min Echo RX Interval;第五字段,指示最近一次会话的状态改变的原因;第六字段,用于提供检测时间乘数,该检测时间乘数用于在异步模式下计算检测时间;第七字段,包括查询请求标志Demand、轮询标志Poll和终止标志Final。需要说明的是,第一字段与图9中的本地会话状态对应,第二字段与图9中的主动连通性检测消息的最小发送间隔对应,第三字段与图9中的主动连通性检测消息的最小接收间隔对应,第四字段与图9中的主动连通性回声消息的最小接收间隔对应,第五字段与图9中的诊断字对应,第六字段与图9中的检测时间乘数对应,第七字段与图9中的标志位对应。
一具体实施中,在第一OAM消息为主动连通性检测消息的情况下,V字段还包括预留字段,预留字段用于功能扩展。需要说明的是,预留字段与图9中的预留位对应,标志字段与图9中的标志位对应。
示例性地,在第一OAM消息为主动连通性检测消息的情况下,第一IPv6报文也可以是上述IPv6报文3,则第一OAM消息为上述OAM消息3。
一具体实施中,在第一OAM消息为主动连通性检测消息的情况下,第一OAM消息不包括协议版本信息、本地标识符和远端标识符,例如,协议版本信息可以是BFD协议的版本号、本地标识符为BFD会话的My Discriminator字段,远端标识符为BFD会话的YourDiscriminator字段。
一具体实施中,T字段指示第一OAM消息为性能检测消息。
一具体实施中,在第一OAM消息为性能检测消息的情况下,V字段包括:第八字段,用于承载发送端发送的第一性能检测消息的序列号;第九字段:用于承载反射端发送的第二性能检测消息的序列号,第二性能检测消息是对第一性能检测消息的响应;第十字段,用于承载发送端发送第一性能检测消息的发送时间戳;第十一字段,用于承载反射端接收第一性能检测消息的接收时间戳;第十二字段,用于承载反射端发送第二性能检测消息的发送时间戳;第十三字段,用于承载发送端接收第二性能检测消息的接收时间戳。需要说明的是,第八字段与图10中的发送端发送的性能检测消息的序列号对应,第九字段与图10中的反射端发送的性能检测消息的序列号对应,第十字段与图10中的发送端发送性能检测消息的发送时间戳对应,第十一字段与图10中的反射端接收性能检测消息的接收时间戳对应,第十二字段与图10中的反射端发送性能检测消息的发送时间戳对应;第十三字段于图10中的发送端接收性能检测消息的接收时间戳对应。
一具体实施中,在第一OAM消息为性能检测消息的情况下,V字段还包括:填充变长字段,与图10中的填充变长字段对应。
示例性地,在第一OAM消息为性能检测消息的情况下,第一IPv6报文也可以是上述IPv6报文5,则第一OAM消息为上述OAM消息5。
一具体实施中,在T字段指示第一OAM消息为性能检测消息的情况下,T字段取值为第四值时,指示性能检测消息用于丢包检测,T字段取值为第五值时,指示性能检测消息用于时延检测或时延抖动测量,T字段取值为第六值时,指示性能检测消息用于丢包时延检测。
一具体实施中,T字段也可以仅指示第一OAM消息为性能检测消息,通过在TLV字段中增加标识字段,来标识性能检测消息的具体功能。例如,第三标识字段用于指示性能检测消息用于丢包检测,第四标识字段用于指示性能检测消息用于时延检测,第五标识字段用于指示性能检测消息用于丢包时延检测。对于标识字段的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。关于标识字段在TLV字段中的承载方式,本申请不做具体限定。一种具体的实现方式中,上述标识字段可以承载在V字段中。当然,也可以在T字段中设置预留的比特位,用于承载上述标识字段。需要说明的是,此实施方式中的标识字段与图12A-图12C中的“性能检测类型”字段对应。
一具体实施中,V字段包括至少一个子TLV字段,该至少一个子TLV字段包括第一子TLV,第一子TLV指示性能检测消息用于丢包检测;第二子TLV,第二子TLV用于指示性能检测消息用于时延检测或时延抖动测量;第三子TLV,第三子TLV用于指示性能检测消息用于丢包时延检测。
一具体实施中,在性能检测消息用于丢包检测时,V字段还包括:第十四字段,用于承载发送端发送的第一数据报文的统计数量;第十五字段,用于承载反射端接收到的第一数据报文的统计数量;第十六字段,用于承载反射端发送的第二数据报文的统计数量,第二数据报文是对第一数据报文的响应;第十七字段,用于承载发送端接收到的第二数据报文的统计数量。需要说明的是,第十四字段与图12A或图12C中的发送端发送的数据报文的统计数量对应,第十五字段与图12A或图12C中的反射端接收的数据报文的统计数量对应,第十六字段与图12A或图12C中的反射端发送的数据报文的统计数量对应,第十七字段,与图12A或图12C中的发送端接收到的数据报文的统计数量对应。且此实施例对应的消息格式对图12A所示的消息格式对应。
示例性地,在第一OAM消息为性能检测消息的情况下,第一IPv6报文也可以是上述IPv6报文7,则第一OAM消息为上述OAM消息7。
一具体实施中,在性能检测用于时延检测或时延抖动测量时,V字段还包括:第十八字段,用于承载发送端发送第三性能检测消息的发送时间戳;第十九字段,用于承载反射端接收第三性能检测消息的接收时间戳;第二十字段,用于承载反射端发送第四性能检测消息的发送时间戳,第四性能检测消息是对第三性能检测消息的响应;第二十一字段,用于承载发送端接收第四性能检测消息的接收时间戳。需要说明的是,第十八字段与图12B或图12C中的发送端发送性能检测消息的发送时间戳对应,第十九字段与图12B或图12C中的反射端接收性能检测消息的接收时间戳对应,第二十字段与图12B或图12C中的反射端发送性能检测消息的发送时间戳对应,第二十一字段,与图12B或图12C中的发送端接收性能检测消息的接收时间戳对应。且此实施例对应的消息格式对图12B所示的消息格式对应。
示例性地,在第一OAM消息为性能检测消息的情况下,第一IPv6报文也可以是上述IPv6报文9,则第一OAM消息为上述OAM消息9。
一具体实施中,在性能检测消息用于丢包时延检测时,V字段包括上述第十四字段至第二十一字段这八个字段的内容,此实施例与上述图12C对应。
一具体实施中,T字段指示第一OAM消息为第一复合OAM消息,第一复合OAM消息用于实现至少两种OAM功能。其中,至少两种OAM功能包括连通性检测和性能测量。
一具体实施中,在第一OAM消息为第一复合OAM消息的情况下,V字段包括第一标识和第二标识,第一标识用于指示第一复合OAM消息用于第一OAM检测,第二标识用于指示第一复合OAM消息用于第二OAM检测。具体地,第一OAM检测为连通性检测,第二OAM检测为性能检测。对于第一标识、第二标识的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。另外,第一标识和第二标识可以承载在V字段中。当然,也可以在T字段中设置预留的比特位,用于承载第一标识和第二标识。
一具体实施中,第一复合OAM消息包括第一指示信息,第一指示信息指示第一复合OAM消息为一个请求消息或一个响应消息。例如,第一指示信息可以是T字段,T字段取第七值时,指示第一复合OAM消息为一个请求消息,T字段取第八值时,指示第一复合OAM消息为一个应答消息;又例如,T字段仅指示第一OAM消息为第一复合OAM消息时,第一指示信息也可以是新增加的第一检测标识,第一检测标识取第一值,指示第一复合OAM消息是一个请求消息,第一检测标识取第二值,指示第一复合OAM消息是一个应答消息。对于第一检测标识的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。关于第一检测标识在TLV字段中的承载方式,本申请不做具体限定。一种具体的实现方式中,上述第一检测标识可以承载在V字段中。当然,也可以在T字段中设置预留的比特位,用于承载上述第一检测标识。需要说明的是,第一检测标识可以与图13中的“类型”字段对应。
可选地,第一复合OAM消息还包括第二指示信息,第二指示信息指示性能检测的具体类型。例如,第三指示信息可以是T字段,T字段取第九值时,指示性能检测的类型为丢包检测,T字段取第十值时,指示性能检测的类型为时延检测或时延抖动检测,T字段取第十一值时,指示性能检测的类型为丢包时延检测;又例如,T字段仅指示第一OAM消息为第一复合OAM消息时,第二指示信息也可以是新增加的第二检测标识,第二检测标识取第一值,指示性能检测的类型为丢包检测,第二检测标识取第二值,指示性能检测的类型为时延检测或时延抖动测量,第二检测标识取第三值,指示性能检测的类型为丢包时延检测。对于第二检测标识的表示方式,可以是比特映射的方式,也可以采用二进制取值的方式,本申请不做具体限制。关于第二检测标识在TLV字段中的承载方式,本申请不做具体限定。一种具体的实现方式中,上述第二检测标识可以承载在V字段中。当然,也可以在T字段中设置预留的比特位,用于承载上述第二检测标识。需要说明的是,第二检测标识可以与图13中的“性能检测类型”字段对应。
一具体实施中,第一复合OAM消息的V字段中用于连通性检测的字段还包括以下一个或多个字段:序列号字段,用于承载发送端(即第一装置)发送的第一复合OAM消息的序列号;返回代码return codes字段,其中,所述return codes字段用于承载反射端对发送端发送的第一复合OAM消息的响应结果;预留字段、第二回复模式字段和类型-长度-值TLV字段,例如,TLV字段可以是下游详细映射TLV,预留字段用于功能扩展,第二回复模式字段用于指示应答第一复合OAM消息的方式。需要说明的是,序列号字段与图13或图14中的序列号对应,返回代码字段与图13或图14中的返回代码对应,预留字段与图13或图14中的预留位对应,第二回复模式字段与图13或图14中的回复模式对应,类型-长度-值TLV字段与图13或图14中的类型-长度-值/子-类型-长度-值对应。
一具体实施中,在第一复合OAM消息用于性能检测,V字段中用于性能检测的字段包括:第二十二字段:用于承载反射端发送的第二复合OAM消息的序列号,第二复合OAM消息是对第一复合OAM消息的响应;第二十三字段,用于承载发送端发送第一复合OAM消息的发送时间戳;第二十四字段,用于承载反射端接收第一复合OAM消息的接收时间戳;第二十五字段,用于承载反射端发送第二复合OAM消息的发送时间戳;第二十六字段,用于承载发送端接收第二复合OAM消息的接收时间戳。在一些可能的实施例中,V字段还包括用于功能扩展的预留字段。需要说明的是,第二十二字段与图14中的反射端发送的复合OAM消息的序列号对应,第二十三字段与图14中的发送端发送复合OAM消息的发送时间戳对应,第二十四字段与图14中的反射端接收复合OAM消息的接收时间戳对应,第二十五字段与图14中的反射端发送复合OAM消息的发送时间戳对应,第二十六字段与图14中的发送端接收复合OAM消息的接收时间戳对应。
示例性地,在第一OAM消息为复合OAM消息的情况下,第一IPv6报文也可以是上述IPv6报文11,则第一OAM消息为上述OAM消息11。
一具体实施中,在第二检测标识指示性能检测为丢包检测时,V字段包括:第二十七字段,用于指示发送端发送的第三数据报文的统计数量;第二十八字段,用于指示反射端接收到的第三数据报文的统计数量;第二十九字段,用于指示反射端发送的第四数据报文的统计数量,第四数据报文是对第三数据报文的响应;第三十字段,用于指示发送端接收到的第四数据报文的统计数量。
一具体实施中,在第二检测标识指示性能检测为时延检测或时延抖动测量时,V字段包括:第三十一字段,用于承载发送端发送第一复合OAM消息的发送时间戳;第三十二字段,用于承载反射端接收第一复合OAM消息的接收时间戳;第三十三字段,用于承载反射端发送第二复合OAM消息的发送时间戳,第二复合OAM消息是对第一复合OAM消息的响应;第三十四字段,用于承载发送端接收第二复合OAM消息的接收时间戳。
一具体实施中,在第二检测标识指示性能检测为丢包时延检测时,V字段包括上述第二十七字段至第三十四字段这八个字段。
一具体实施中,在T字段指示第一OAM消息为第一复合OAM消息时,V字段由以下字段组成:第三十五字段,用于指示发送端和接收端之间建立的复合OAM检测会话的状态;第三十六字段,用于指示发送端发送第一复合OAM消息的最小发送间隔;第三十七字段,用于指示发送端接收接收端发送的第二复合OAM消息的最小接收间隔;第三十八字段,用于指示发送端接收接收端发送的响应消息的最小接收间隔;第三十九字段,指示最近一次会话的状态改变的原因;第四十字段,用于提供检测时间乘数,该检测时间乘数用于在异步模式下计算检测时间;第四十一字段,第七字段包括查询请求标志Demand、轮询标志Poll和终止标志Final;第四十二字段,用于承载发送端发送的第五数据报文的统计数量;第四十三字段,用于承载接收端接收的第五数据报文的统计数量;第四十四字段,用于承载接收端接发送的第六数据报文的统计数量;第四十五字段:用于承载发送端接收的第六数据报文的统计数量;第四十六字段,用于承载发送端发送第一复合OAM消息的发送时间戳;第四十七字段,用于承载接收端接收第一复合OAM消息的接收时间戳;第四十八字段,用于承载接收端发送第二复合OAM消息的发送时间戳;第四十九字段,用于承载发送端接收第二复合OAM消息的接收时间戳。需要说明的是,第三十五字段与图15中的本地会话状态对应,第三十六字段与图15中的复合OAM消息的最小发送间隔对应,第三十七字段与图15中的复合OAM消息的最小接收间隔对应,第三十八字段与图15中的复合OAM回声消息的最小接收间隔对应,第三十九字段与图15中的诊断字对应;第四十字段与图15中的检测时间乘数对应,第四十一字段与图15中的标志位对应,第四十二字段与图15中的发送端发送的数据报文的统计数量对应,第四十三字段与图15中的反射端接收的数据报文的统计数量对应,第四十四字段与图15中的反射端发送的数据报文的统计数量对应,第四十五字段与图15中的发送端接收的数据报文的统计数量对应,第四十六字段与图15中的发送端发送复合OAM消息的发送时间戳对应,第四十七字段与图15中的反射端接收复合OAM消息的接收时间戳对应,第四十八字段与图15中的反射端发送复合OAM消息的发送时间戳对应,第四十九字段与图15中的发送端接收复合OAM消息的接收时间戳对应。此实施例对应的消息格式与15所示的消息格式对应。
示例性地,在第一OAM消息为复合OAM消息的情况下,第一IPv6报文也可以是上述IPv6报文13,则第一OAM消息为上述OAM消息13。
一具体实施中,在T字段指示第一OAM消息为第一复合OAM消息时,V字段由以下字段组成:上述中的第一检测标识,用于指示第一复合OAM消息为请求消息或应答消息;序列号字段,用于承载发送端发送的第一复合OAM消息的序列号;返回代码return codes字段,return codes字段用于承载反射端对发送端发送的第一复合OAM消息的响应结果;第二回复模式字段,第二回复模式字段用于指示应答第一复合OAM消息的方式;类型-长度-值TLV字段;预留字段,用于功能扩展;以及上述第二十二字段至第二十六字段。需要说明的是,此实施例对应的消息格式与图14所示的消息格式对应。
一具体实施中,在T字段指示第一OAM消息为第一复合OAM消息时,V字段由以下字段组成:上述中的第一检测标识,用于指示第一复合OAM消息为请求消息或应答消息;序列号字段,用于承载发送端发送的第一复合OAM消息的序列号;返回代码return codes字段,return codes字段用于承载反射端对发送端发送的第一复合OAM消息的响应结果;第二回复模式字段,第二回复模式字段用于指示应答第一复合OAM消息的方式;类型-长度-值TLV字段;预留字段,用于功能扩展;第二检测标识,用于指示性能检测为丢包检测;以及上述第二十七字段至第三十字段。需要说明的是,此实施例对应的消息格式与图13所示的消息格式的一种(即性能检测类型为丢包检测)对应。
一具体实施中,在T字段指示第一OAM消息为第一复合OAM消息时,V字段由以下字段组成:上述中的第一检测标识,用于指示第一复合OAM消息为请求消息或应答消息;序列号字段,用于承载发送端发送的第一复合OAM消息的序列号;返回代码return codes字段,return codes字段用于承载反射端对发送端发送的第一复合OAM消息的响应结果;第二回复模式字段,第二回复模式字段用于指示应答第一复合OAM消息的方式;类型-长度-值TLV字段;预留字段,用于功能扩展;第二检测标识,用于指示性能检测为时延检测;以及上述第三十一字段至第三十四字段。需要说明的是,此实施例对应的消息格式与图13所示的消息格式的一种(即性能检测类型为时延检测或时延抖动测量)对应。
一具体实施中,在T字段指示第一OAM消息为第一复合OAM消息时,V字段由以下字段组成:上述中的第一检测标识,用于指示第一复合OAM消息为请求消息或应答消息;序列号字段,用于承载发送端发送的第一复合OAM消息的序列号;返回代码return codes字段,return codes字段用于承载反射端对发送端发送的第一复合OAM消息的响应结果;第二回复模式字段,第二回复模式字段用于指示应答第一复合OAM消息的方式;类型-长度-值TLV字段;预留字段,用于功能扩展;第二检测标识,用于指示性能检测为丢包时延检测;以及上述第二十七字段至第三十四字段。需要说明的是,此实施例对应的消息格式与图13所示的消息格式的一种(即性能检测类型为丢包时延检测)对应。
一具体实施中,第一IPv6报文中还包括第一OAM消息的统一会话标识,统一会话标识用于第一OAM消息的发送端匹配第一OAM消息与发送端接收的来自对端的OAM消息。例如,若第一OAM消息为上述中的OAM消息1,则来自对端的OAM消息可以为上述中的OAM消息2。需要说明的是,统一会话标识可以是图16-图19中的Path Segment字段,也可以由图20中的BIFD-id、BFIR-id和Entropy字段组成,本申请实施例不做具体限定。
S102、第一装置发送第一IPv6报文。
在本申请实施例中,第一装置发送第一IPv6报文,第一IPv6报文的IPv6扩展头携带第一OAM消息。
需要说明的是,根据S101中的相关叙述可知,第一IPv6报文可以是上述实施例中的IPv6报文1、IPv6报文3、IPv6报文5、IPv6报文7、IPv6报文9、IPv6报文11和IPv6报文13中的任意一种,第一IPv6报文携带的第一OAM消息具体可参考上述对应报文的相关叙述,在此不再赘述。
一具体实施中,IPv6扩展头为目的地选项头DoH。此实施例具体可参考图16、图18或图20的相关叙述。
一具体实施中,IPv6扩展头为分段路由报头SRH。此实施例具体可参考图17或图19的相关叙述。
一具体实施中,IPv6扩展头包括关联通道ACH,第一OAM消息承载于ACH中。具体地,关联通道ACH包括选项类型字段和通道类型字段,其中,选项类型字段指示关联通道,通道类型字段指示ACH所承载的通道类型为OAM通道,该OAM通道用于承载第一OAM消息。此实施例具体可参考图18或图19的相关叙述。
一具体实施中,IPv6扩展头包括比特索引显示复制BIER头。此实施例具体可参考图20的相关叙述。
可以看到,实施本申请实施例,对OAM消息进行了统一表达,实现了对OAM功能的整合,使得OAM消息更加轻量化,使得OAM消息可以用于连通性检测/验证以及性能检测功能中的至少一种。另外,还简化了OAM消息的封装过程,实现OAM消息在数据面处理,提高OAM消息的处理效率,有利于减少网络带宽的开销。
参见图22,图22是本申请实施例提供的一种OAM检测方法,应用于第二装置,第二装置可以是接收端或反射端。需要说明的是,图22实施例可以独立于图21所示实施例,也可以是对图21所示实施例的补充。该方法包括但不限于以下步骤:
S201、第二装置接收第二IPv6报文,第二IPv6报文中包括第二OAM消息。
在本申请实施例中,第二IPv6报文即为图21中S101中的第一IPv6报文,第二OAM消息即为图21中S101中的第一OAM消息,第二IPv6报文的说明可参考S101中第一IPv6报文的相关叙述,第二OAM消息的说明可参考S101中第一OAM消息的相关叙述,为了说明书的简洁,在此不再赘述。
根据上述S101可知,第二IPv6报文可以是上述实施例中的IPv6报文1、IPv6报文3、IPv6报文5、IPv6报文7、IPv6报文9、IPv6报文11和IPv6报文13中的任意一种,相应地,第二OAM消息为OAM消息1、OAM消息3、OAM消息5、OAM消息7、OAM消息9、OAM消息11和OAM消息13中对应的那一种。例如,若第二IPv6报文为IPv6报文1时,则第二OAM消息为OAM消息1。
S202、第二装置根据第二IPv6报文获取第一IPv6报文,第一IPv6报文的IPv6扩展头携带第一OAM消息。
在本申请实施例中,第二装置在接收到第二IPv6报文后,根据第二IPv6报文生成第一IPv6报文,第一IPv6报文携带第一OAM消息,第一OAM消息是对第二OAM消息的响应。
一具体实施中,第二IPv6报文携带的第二OAM消息为回显请求消息,第二装置根据第二IPv6报文生成的第一IPv6报文,第一IPv6报文携带的即第一OAM消息是对第二OAM消息的响应,第二OAM消息为回显应答消息。
一具体实施中,第二IPv6报文携带的第二OAM消息为第一复合OAM消息,第二装置根据第二IPv6报文生成的第一IPv6报文,第一IPv6报文携带的即第一OAM消息是对第二OAM消息的响应。
示例性地,在第二IPv6报文为上述实施例中的IPv6报文1时,第一IPv6报文为上述实施例中的IPv6报文2,则第一OAM消息为上述中的OAM消息2。
示例性地,在第二IPv6报文为上述实施例中的IPv6报文3时,第一IPv6报文为上述实施例中的IPv6报文4,则第一OAM消息为上述中的OAM消息4。
示例性地,在第二IPv6报文为上述实施例中的IPv6报文5时,第一IPv6报文为上述实施例中的IPv6报文6,则第一OAM消息为上述中的OAM消息6。
示例性地,在第二IPv6报文为上述实施例中的IPv6报文7时,第一IPv6报文为上述实施例中的IPv6报文8,则第一OAM消息为上述中的OAM消息8。
示例性地,在第二IPv6报文为上述实施例中的IPv6报文9时,第一IPv6报文为上述实施例中的IPv6报文10,则第一OAM消息为上述中的OAM消息10。
示例性地,在第二IPv6报文为上述实施例中的IPv6报文11时,第一IPv6报文为上述实施例中的IPv6报文12,则第一OAM消息为上述中的OAM消息12。
示例性地,在第二IPv6报文为上述实施例中的IPv6报文13时,第一IPv6报文为上述实施例中的IPv6报文14,则第一OAM消息为上述中的OAM消息14。
S203、第二装置发送第一IPv6报文。
在本申请实施例中,第二装置发送第一IPv6报文,第一IPv6报文携带第一OAM消息。
根据S202的叙述可知,第一IPv6报文可以是上述实施例中的IPv6报文2、IPv6报文4、IPv6报文6、IPv6报文8、IPv6报文10、IPv6报文12和IPv6报文14中的任意一种,相应地,第一OAM消息为OAM消息2、OAM消息4、OAM消息6、OAM消息8、OAM消息10、OAM消息12和OAM消息14中对应的一种。
一具体实施中,IPv6扩展头为目的地选项头DoH。此实施例具体可参考图16、图18或图20的相关叙述。
一具体实施中,IPv6扩展头为分段路由报头SRH。此实施例具体可参考图17或图19的相关叙述。
一具体实施中,IPv6扩展头包括关联通道ACH,第一OAM消息承载于ACH中。具体地,关联通道ACH包括选项类型字段和通道类型字段,其中,选项类型字段指示关联通道,通道类型字段指示ACH所承载的通道类型为OAM通道,该OAM通道用于承载第一OAM消息。此实施例具体可参考图18或图19的相关叙述。
一具体实施中,IPv6扩展头包括比特索引显示复制BIER头。此实施例具体可参考图20的相关叙述。
一具体实施中,第一IPv6报文还包括第一OAM消息的统一会话标识,该统一会话标识用于第一OAM消息的发送端匹配第一OAM消息与发送端接收的来自对端的OAM消息。例如,若第一OAM消息为上述中的OAM消息3,则来自对端的OAM消息可以为上述中的OAM消息4。例如,统一会话标识可以是图16-图19中的Path Segment字段,也可以由图20中的BIFD-id、BFIR-id和Entropy字段组成,本申请实施例不做具体限定。
可以看到,实施本申请实施例,对OAM消息进行了统一表达,实现了对OAM功能的整合,使得OAM消息更加轻量化,使得OAM消息可以用于连通性检测/验证以及性能检测功能中的至少一种。另外,还简化了OAM消息的封装过程,实现OAM消息在数据面处理,提高OAM消息的处理效率,有利于减少网络带宽的开销。
参见图23,图23是本申请实施例提供的一种装置30的结构示意图,该装置30能够用于实现本申请上述实施例所描述的方法。装置30可以是路由器,交换机等网络设备,也可以是用于上述网络设备的能够实现上述方法的组件,例如单板,芯片,线卡等。装置30包括至少一个处理器110、存储器111和收发器112。装置30可以是图21中的第一装置,也可以是图22中的第二装置,本申请不做具体限定。
处理器110用于生成第一IPv6报文,第一IPv6报文的IPv6扩展头携带第一OAM消息。处理器110可以是处理器110可以由一个或者多个处理器构成,例如中央处理器(Central Processing Unit,CPU),网络处理器(Network Processor,简称NP)或者CPU和硬件芯片的组合。上述硬件芯片可以是专用集成电路(Application-Specific IntegratedCircuit,ASIC)、可编程逻辑器件(Programmable Logic Device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、通用阵列逻辑(Generic Array Logic,GAL)或其任意组合。
收发器112例如可以是通信接口或光模块等。在装置30为图21中的第一装置时,收发器112用于发送第一IPv6报文,在此情况下,第一IPv6报文是一个请求。在装置30为图22所示的第二装置时,收发器112在发送第一IPv6报文之前,收发器112先用于接收第二IPv6报文,第二IPv6报文包括第二OAM消息,第一IPv6报文携带的第一OAM消息是对第二OAM消息的响应。
存储器111可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其它类型的静态存储设备,也可以是随机存取存储器(random access memory,RAM)或者可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only Memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其它光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器111可以独立存在,也可以与处理器110集成在一起。存储器111可以是一个,也可以是多个。
存储器111存储的有处理单元和收发单元,其中,收发单元用于存储收发器112执行上述操作,例如,S102、S201或S203所需的程序和数据,处理单元用于存储处理器110执行上述操作,例如,S101或者S202所需的程序和数据。
一具体实施中,装置30可以对应于上述方法实施例中的发送端和图21所示实施例中的第一装置,装置30中的各模块可用于实现图21所示实施例中的各步骤,具体细节可参见上述图21实施例的相关叙述,为了简洁,在此不再赘述。
一具体实施中,装置30可以对应于上述方法实施例中的反射端和图22所示实施例中的第二装置,装置30中的各模块可用于实现图22所示实施例中的各步骤,具体细节可参见上述图22实施例的相关叙述,为了简洁,在此不再赘述。
参见图24,图24是本申请实施例提供的一种装置的功能结构示意图,装置41包括处理单元411和收发单元412。其中,收发单元412用于执行本申请上述各方法实施例中所涉及的收发相关的操作,处理单元411用于执行本申请上述各方法实施例中所涉及的收发相关的操作以外的操作。该装置41可以通过硬件、软件或者软硬件结合的方式来实现。
一具体实施中,处理单元411用于获取第一IPv6报文,第一IPv6报文的IPv6扩展头携带第一OAM消息,第一OAM消息包括类型T字段和值V字段,T字段指示第一OAM消息的类型,V字段承载第一OAM消息的内容;收发单元412用于发送第一IPv6报文。
另一具体实施中,收发单元412用于接收第二IPv6报文,第二IPv6报文携带第二OAM消息;处理单元411根据第二IPv6报文获取第一IPv6报文,第一IPv6报文的IPv6扩展头携带第一OAM消息,第一OAM消息是对第二OAM消息的响应;收发单元412还用于发送第一IPv6报文。
装置41的各功能模块可用于实现图21实施例或图22实施例所描述的方法。在图21实施例中,处理单元411可用于执行S101,收发单元412可用于执行S102。在图22实施例中,处理单元411可用于执行S202,收发单元412可用于执行S201和S203。
本申请实施例还提供了一种用于OAM检测的系统,该系统包括发送端和接收端。该通信系统用于执行本申请上文各实施例所描述的方法。本申请所述的发送端和反射端可以是路由器,交换机等网络设备,也可以是应用于上述网络设备中能够执行相应的方法步骤的组件,例如单板,线卡,芯片等。
具体地,在该系统中,发送端用于发送第一IPv6报文,第一IPv6报文的IPv6扩展头携带第一OAM消息,第一OAM消息包括类型T字段和值V字段,T字段指示第一OAM消息的类型,V字段承载第一OAM消息的内容;接收端用于接收第一IPv6报文,根据第一IPv6报文获得第二IPv6报文,向发送端发送第二IPv6报文,第二IPv6报文中包括第二OAM消息,第二OAM消息是第一OAM消息的响应。
示例性地,第一IPv6报文为上述实施例中的IPv6报文1时,第一OAM消息为上述中的OAM消息1,则第二IPv6报文为上述实施例中的IPv6报文2,第二OAM消息为上述中的OAM消息2。
示例性地,第一IPv6报文为上述实施例中的IPv6报文3时,第一OAM消息为上述中的OAM消息3,则第二IPv6报文为上述实施例中的IPv6报文4,第二OAM消息为上述中的OAM消息4。
示例性地,第一IPv6报文为上述实施例中的IPv6报文5时,第一OAM消息为上述中的OAM消息5,则第二IPv6报文为上述实施例中的IPv6报文6,第二OAM消息为上述中的OAM消息6。
示例性地,第一IPv6报文为上述实施例中的IPv6报文7时,第一OAM消息为上述中的OAM消息7,则第二IPv6报文为上述实施例中的IPv6报文8,第二OAM消息为上述中的OAM消息8。
示例性地,第一IPv6报文为上述实施例中的IPv6报文9时,第一OAM消息为上述中的OAM消息9,则第二IPv6报文为上述实施例中的IPv6报文10,第二OAM消息为上述中的OAM消息10。
示例性地,第一IPv6报文为上述实施例中的IPv6报文11时,第一OAM消息为上述中的OAM消息11,则第二IPv6报文为上述实施例中的IPv6报文12,第二OAM消息为上述中的OAM消息12。
示例性地,第一IPv6报文为上述实施例中的IPv6报文13时,第一OAM消息为上述中的OAM消息13,则第二IPv6报文为上述实施例中的IPv6报文14,第二OAM消息为上述中的OAM消息14。
一具体实施中,发送端可以是上述图21中的第一装置,接收端可以是上述图22中的第二装置,在此情况下,发送端发送的第一IPv6报文即为图21方法实施例中的第一IPv6报文,具体可参考图21中第一IPv6报文的相关描述,接收端发送的第二IPv6报文即为图22方法实施例中的第一IPv6报文,具体可参考图22中第一IPv6报文的相关描述,在此不再赘述。
一具体实施中,IPv6扩展头为目的地选项头DoH。此实施例具体可参考图16、图18或图20的相关叙述。
一具体实施中,IPv6扩展头为分段路由报头SRH。此实施例具体可参考图17或图19的相关叙述。
一具体实施中,IPv6扩展头包括关联通道ACH,第一OAM消息承载于ACH中。具体地,关联通道ACH包括选项类型字段和通道类型字段,其中,选项类型字段指示关联通道,通道类型字段指示ACH所承载的通道类型为OAM通道,该OAM通道用于承载第一OAM消息。此实施例具体可参考图18或图19的相关叙述。
一具体实施中,IPv6扩展头包括比特索引显示复制BIER头。此实施例具体可参考图20的相关叙述。
一具体实施中,第一IPv6报文还包括第一OAM消息的统一会话标识,该统一会话标识用于第一OAM消息的发送端匹配第一OAM消息与发送端接收的来自对端的OAM消息。例如,若第一OAM消息为上述中的OAM消息3,则来自对端的OAM消息可以为上述中的OAM消息4。例如,统一会话标识可以是图16-图19中的Path Segment字段,也可以由图20中的BIFD-id、BFIR-id和Entropy字段组成,本申请实施例不做具体限定。
在本文上述的实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其他实施例的相关描述。
需要说明的是,本领域普通技术人员可以看到上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random AccessMemory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(CompactDisc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机程序产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是个人计算机,服务器,或者网络设备、机器人、单片机、芯片、机器人等)执行本申请各个实施例所述方法的全部或部分步骤。
Claims (50)
1.一种操作维护管理OAM检测方法,其特征在于,所述方法包括:
获取第一IPv6报文,所述第一IPv6报文的IPv6扩展头携带第一OAM消息,所述第一OAM消息包括类型T字段和值V字段,所述T字段指示所述第一OAM消息的类型,所述V字段承载所述第一OAM消息的内容;
发送所述第一IPv6报文。
2.根据权利要求1所述的方法,其特征在于,所述第一OAM消息不包括协议版本信息。
3.根据权利要求1或2所述的方法,其特征在于,所述T字段指示所述第一OAM消息为回显echo消息。
4.根据权利要求3所述的方法,其特征在于,所述V字段包括标识字段,所述标识字段用于指示所述echo消息的类型。
5.根据权利要求3或4所述的方法,其特征在于,在所述获取第一IPv6报文之前,所述方法还包括:
接收第二IPv6报文,所述第二IPv6报文中包括第二OAM消息,所述第一OAM消息为所述第二OAM消息的响应;
根据所述第二IPv6报文,获取所述第一IPv6报文。
6.根据权利要求3-5任一项所述的方法,其特征在于,所述V字段还包括以下一个或多个字段:
序列号字段,用于承载所述echo消息的序列号;
返回代码return codes字段,其中,所述return codes字段用于承载反射端对发送端发送的所述echo消息的响应结果;
第一回复模式字段,所述第一回复模式字段用于指示应答发送端发送的echo消息的方式;
类型-长度-值TLV字段;以及
预留字段,用于功能扩展。
7.根据权利要求3-6任一项所述的方法,其特征在于,所述第一OAM消息不包括:协议版本信息和时间戳信息。
8.根据权利要求1或2所述的方法,其特征在于,所述T字段指示所述第一OAM消息为主动连通性检测消息。
9.根据权利要求8所述的方法,其特征在于,所述V字段包括:
第一字段,用于指示发送端和接收端之间建立的主动连通性检测会话的状态;
第二字段,用于指示所述发送端发送主动连通性检测消息的最小发送间隔;
第三字段,用于指示所述发送端接收所述接收端发送的主动连通性检测消息的最小接收间隔;
第四字段,用于指示所述发送端接收所述接收端发送的响应消息的最小接收间隔;
第五字段,指示最近一次会话的状态改变的原因;
第六字段,用于提供检测时间乘数,该检测时间乘数用于在异步模式下计算检测时间;
第七字段,所述第七字段包括查询请求标志Demand、轮询标志Poll和终止标志Final。
10.根据权利要求8或9所述的方法,其特征在于,所述第一OAM消息不包括:协议版本信息、本地标识符和远端标识符。
11.根据权利要求1或2所述的方法,其特征在于,所述T字段指示所述第一OAM消息为性能检测消息。
12.根据权利要求11所述的方法,其特征在于,所述V字段包括:
第八字段,用于承载发送端发送的第一性能检测消息的序列号;
第九字段:用于承载反射端发送的第二性能检测消息的序列号,所述第二性能检测消息是对所述第一性能检测消息的响应;
第十字段,用于承载所述发送端发送所述第一性能检测消息的发送时间戳;
第十一字段,用于承载所述反射端接收所述第一性能检测消息的接收时间戳;
第十二字段,用于承载所述反射端发送所述第二性能检测消息的发送时间戳;
第十三字段,用于承载所述发送端接收所述第二性能检测消息的接收时间戳。
13.根据权利要求1或2所述的方法,其特征在于,所述T字段指示所述第一OAM消息为第一复合OAM消息,所述第一复合OAM消息用于实现至少两种OAM功能。
14.根据权利要求13所述的方法,其特征在于,所述V字段包括第一标识和第二标识,所述第一标识用于指示所述第一复合OAM消息用于第一OAM检测,所述第二标识用于指示所述第一复合OAM消息用于第二OAM检测。
15.根据权利要求1-14任一项所述的方法,其特征在于,所述IPv6扩展头为目的地选项头DoH或分段路由报头SRH或比特索引显示复制BIER头。
16.根据权利要求1-14任一项所述的方法,其特征在于,所述IPv6扩展头包括关联通道ACH,所述第一OAM消息承载于所述ACH中。
17.根据权利要求16所述的方法,其特征在于,所述关联通道ACH包括选项类型字段和通道类型字段,所述选项类型字段指示所述关联通道,所述通道类型字段指示所述ACH所承载的通道类型为OAM通道,该OAM通道用于承载所述第一OAM消息。
18.根据权利要求1-17任一项所述的方法,其特征在于,所述第一IPv6报文还包括统一会话标识,所述统一会话标识用于所述第一OAM消息的发送端匹配所述第一OAM消息与所述发送端接收的来自对端的OAM消息。
19.一种用于操作维护管理OAM检测的装置,其特征在于,所述装置包括:
处理单元,用于获取第一IPv6报文,所述第一IPv6报文的IPv6扩展头携带第一OAM消息,所述第一OAM消息包括类型T字段和值V字段,所述V字段用于承载所述第一OAM消息的内容,所述T字段用于指示所述第一OAM消息的类型;
收发单元,用于发送所述第一IPv6报文。
20.根据权利要求19所述的装置,其特征在于,所述第一OAM消息不包括协议版本信息。
21.根据权利要求19或20所述的装置,其特征在于,所述T字段指示所述第一OAM消息为回显echo消息。
22.根据权利要求21所述的装置,其特征在于,所述V字段包括标识字段,所述标识字段用于指示所述echo消息的类型。
23.根据权利要求21或22所述的装置,其特征在于,所述收发单元还用于:
接收第二IPv6报文,所述第二IPv6报文中包括第二OAM消息,所述第一OAM消息为所述第二OAM消息的响应;
所述处理单元具体用于根据所述第二IPv6报文,获取所述第一IPv6报文。
24.根据权利要求21-23任一项所述的装置,其特征在于,所述V字段还包括以下一个或多个字段:
序列号字段,用于承载所述echo消息的序列号;
返回代码return codes字段,其中,所述return codes字段用于承载反射端对发送端发送的所述echo消息的响应结果;
第一回复模式字段,所述第一回复模式字段用于指示应答发送端发送的echo消息的方式;
类型-长度-值TLV字段;以及
预留字段,用于功能扩展。
25.根据权利要求21-24任一项所述的装置,其特征在于,所述第一OAM消息不包括:协议版本信息和时间戳信息。
26.根据权利要求19或20所述的装置,其特征在于,所述T字段指示所述第一OAM消息为主动连通性检测消息。
27.根据权利要求26所述的装置,其特征在于,所述V字段包括:
第一字段,用于指示发送端和接收端之间建立的主动连通性检测会话的状态;
第二字段,用于指示所述发送端发送主动连通性检测消息的最小发送间隔;
第三字段,用于指示所述发送端接收所述接收端发送的主动连通性检测消息的最小接收间隔;
第四字段,用于指示所述发送端接收所述接收端发送的响应消息的最小接收间隔;
第五字段,指示最近一次会话的状态改变的原因;
第六字段,用于提供检测时间乘数,该检测时间乘数用于在异步模式下计算检测时间;
第七字段,所述第七字段包括查询请求标志Demand、轮询标志Poll和终止标志Final。
28.根据权利要求26或27所述的装置,其特征在于,所述第一OAM消息不包括:协议版本信息、本地标识符和远端标识符。
29.根据权利要求19或20所述的装置,其特征在于,所述T字段指示所述第一OAM消息为性能检测消息。
30.根据权利要求29所述的装置,其特征在于,所述V字段包括:
第八字段,用于承载发送端发送的第一性能检测消息的序列号;
第九字段:用于承载反射端发送的第二性能检测消息的序列号,所述第二性能检测消息是对所述第一性能检测消息的响应;
第十字段,用于承载所述发送端发送所述第一性能检测消息的发送时间戳;
第十一字段,用于承载所述反射端接收所述第一性能检测消息的接收时间戳;
第十二字段,用于承载所述反射端发送所述第二性能检测消息的发送时间戳;
第十三字段,用于承载所述发送端接收所述第二性能检测消息的接收时间戳。
31.根据权利要求19或20所述的装置,其特征在于,所述T字段指示所述第一OAM消息为第一复合OAM消息,所述第一复合OAM消息用于实现至少两种OAM功能。
32.根据权利要求31所述的装置,其特征在于,所述V字段包括第一标识和第二标识,所述第一标识用于指示所述第一复合OAM消息用于第一OAM检测,所述第二标识用于指示所述第一复合OAM消息用于第二OAM检测。
33.根据权利要求19-32任一项所述的装置,其特征在于,所述IPv6扩展头为目的地选项头DoH或分段路由报头SRH或比特索引显示复制BIER头。
34.根据权利要求19-32任一项所述的装置,其特征在于,所述IPv6扩展头包括关联通道ACH,所述第一OAM消息承载于所述ACH中。
35.根据权利要求34所述的装置,其特征在于,所述关联通道ACH包括选项类型字段和通道类型字段,所述选项类型字段指示所述关联通道,所述通道类型字段指示所述ACH所承载的通道类型为OAM通道,该OAM通道用于承载所述第一OAM消息。
36.根据权利要求19-35任一项所述的装置,其特征在于,所述第一IPv6报文还包括统一会话标识,所述统一会话标识用于所述第一OAM消息的发送端匹配所述第一OAM消息与所述发送端接收的来自对端的OAM消息。
37.一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在被处理器运行时,实现如权利要求1-18任一项所述的方法。
38.一种计算机程序产品,所述计算机程序产品包括计算机程序代码,在所述计算机程序代码被处理器执行时,所述处理器执行前述权利要求1-18中任一项所述的方法。
39.一种用于操作维护管理OAM检测的系统,其特征在于,所述系统包括:
发送端,用于发送第一IPv6报文,所述第一IPv6报文的IPv6扩展头携带第一OAM消息,所述第一OAM消息包括类型T字段和值V字段,所述T字段指示所述第一OAM消息的类型,所述V字段承载所述第一OAM消息的内容;
接收端,用于接收所述第一IPv6报文,根据所述第一IPv6报文获得第二IPv6报文,向所述发送端发送所述第二IPv6报文,所述第二IPv6报文包括第二OAM消息,所述第二OAM消息是所述第一OAM消息的响应。
40.根据权利要求39所述的系统,其特征在于,所述第一OAM消息不包括协议版本信息。
41.根据权利要求40所述的系统,其特征在于,所述T字段指示第一OAM消息为回显echo消息。
42.根据权利要求41所述的系统,其特征在于,所述第一OAM消息不包括:协议版本信息和时间戳信息。
43.根据权利要求39或40所述的系统,其特征在于,所述T字段指示所述第一OAM消息为主动连通性检测消息。
44.根据权利要求43所述的系统,其特征在于,所述第一OAM消息不包括协议版本信息、本地标识符和远端标识符。
45.根据权利要求39或40所述的系统,其特征在于,所述T字段指示所述第一OAM消息为性能检测消息。
46.根据权利要求39或40所述的系统,其特征在于,所述T字段指示所述第一OAM消息为第一复合OAM消息,所述第一复合OAM消息用于实现至少两种OAM功能。
47.根据权利要求39-46任一项所述的系统,其特征在于,所述IPv6扩展头为目的地选项头DoH或分段路由报头SRH或比特索引显示复制BIER头。
48.根据权利要求39-46任一项所述的系统,其特征在于,所述IPv6扩展头包括关联通道ACH,所述第一OAM消息承载于所述ACH中。
49.根据权利要求48所述的系统,其特征在于,所述关联通道ACH包括选项类型字段和通道类型字段,所述选项类型字段指示所述关联通道,所述通道类型字段指示所述ACH所承载的通道类型为OAM通道,该OAM通道用于承载所述第一OAM消息。
50.根据权利要求39-49任一项所述的系统,其特征在于,所述第一IPv6报文还包括统一会话标识,所述统一会话标识被所述发送端用于匹配所述第一OAM消息与所述第二OAM消息。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/CN2021/143648 WO2022222544A1 (zh) | 2021-04-21 | 2021-12-31 | 一种操作维护管理oam检测方法及装置 |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN2021104313486 | 2021-04-21 | ||
| CN202110431348 | 2021-04-21 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| CN115225732A true CN115225732A (zh) | 2022-10-21 |
Family
ID=83606023
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202110656611.1A Pending CN115225732A (zh) | 2021-04-21 | 2021-06-11 | 一种操作维护管理oam检测方法及装置 |
Country Status (2)
| Country | Link |
|---|---|
| CN (1) | CN115225732A (zh) |
| WO (1) | WO2022222544A1 (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN118573619A (zh) * | 2024-05-24 | 2024-08-30 | 新华三技术有限公司 | 通信方法及装置 |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE10219153A1 (de) * | 2002-04-29 | 2003-11-20 | Siemens Ag | Verfahren zur Überprüfung der Durchgängigkeit von Verbindungen in MPLS-Netzen |
| US9276833B2 (en) * | 2013-07-24 | 2016-03-01 | Cisco Technology, Inc. | Path-ping and ECMP-traceroute for IPv6 overlay virtualized networks |
| CN105577413B (zh) * | 2014-10-17 | 2019-09-10 | 中兴通讯股份有限公司 | 操作、管理和维护oam报文处理方法及装置 |
| US10270690B2 (en) * | 2016-02-29 | 2019-04-23 | Cisco Technology, Inc. | System and method for dataplane-signaled packet capture in IPV6 environment |
-
2021
- 2021-06-11 CN CN202110656611.1A patent/CN115225732A/zh active Pending
- 2021-12-31 WO PCT/CN2021/143648 patent/WO2022222544A1/zh not_active Ceased
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN118573619A (zh) * | 2024-05-24 | 2024-08-30 | 新华三技术有限公司 | 通信方法及装置 |
Also Published As
| Publication number | Publication date |
|---|---|
| WO2022222544A1 (zh) | 2022-10-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| ES2458423T3 (es) | Método, dispositivo y enrutador para detección de pérdidas de paquetes | |
| CN113328902B (zh) | 网络性能检测方法、装置及网络设备 | |
| CN101056217B (zh) | 一种网络性能测量方法及系统 | |
| CN101160816B (zh) | 一种测量多协议标签交换网络性能参数的方法 | |
| EP2509261B1 (en) | Monitoring of a network element in a packet-switched network | |
| CN103580894B (zh) | 操作、管理和维护oam配置的方法、设备及系统 | |
| WO2016058245A1 (zh) | 操作、管理和维护oam报文处理方法及装置 | |
| CN102217378B (zh) | 探测路径信息的方法、设备及系统 | |
| WO2018210213A1 (zh) | 一种实现ioam封装的方法及装置、存储介质 | |
| WO2016045098A1 (zh) | 交换机、控制器、系统及链路质量检测方法 | |
| CN101459547B (zh) | 标签转发路径故障的检测方法及系统 | |
| US11509561B2 (en) | Performance measurement using extended bidirectional forwarding control packet | |
| WO2018210225A1 (zh) | 一种自动实现ioam封装的方法及装置、存储介质 | |
| WO2022062931A1 (zh) | 网络异常确定方法及装置 | |
| CN102185780A (zh) | Oam报文处理方法及装置 | |
| CN105634937B (zh) | 一种报文的处理方法和装置 | |
| CN110381071B (zh) | 一种报文传输方法、装置及发送方设备 | |
| US12040970B2 (en) | Method and apparatus for collecting bit error information | |
| CN114598636A (zh) | 流量调度方法、设备及系统 | |
| CN115225732A (zh) | 一种操作维护管理oam检测方法及装置 | |
| US20250126061A1 (en) | Network loopback packet test request and response | |
| CN116057911B (zh) | 使用多协议标签交换的服务功能链中的负载均衡和oam | |
| CN102752169B (zh) | 传输监控方法及装置 | |
| CN117319270A (zh) | 一种网络测试方法以及相关装置 | |
| WO2023240438A1 (zh) | 报文处理 |
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 |