CN113114403B - 一种链路检测方法以及相关设备 - Google Patents
一种链路检测方法以及相关设备 Download PDFInfo
- Publication number
- CN113114403B CN113114403B CN202010032837.XA CN202010032837A CN113114403B CN 113114403 B CN113114403 B CN 113114403B CN 202010032837 A CN202010032837 A CN 202010032837A CN 113114403 B CN113114403 B CN 113114403B
- Authority
- CN
- China
- Prior art keywords
- message
- equipment
- hop
- management
- time period
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04J—MULTIPLEX COMMUNICATION
- H04J3/00—Time-division multiplex systems
- H04J3/02—Details
- H04J3/06—Synchronising arrangements
- H04J3/0635—Clock or time synchronisation in a network
- H04J3/0638—Clock or time synchronisation among nodes; Internode synchronisation
- H04J3/0658—Clock or time synchronisation among packet nodes
- H04J3/0661—Clock or time synchronisation among packet nodes using timestamps
- H04J3/0667—Bidirectional timestamps, e.g. NTP or PTP for compensation of clock drift and for compensation of propagation delays
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本申请实施例公开了一种链路检测方法和相关设备,用于检测当前主时钟设备与从时钟设备之间的链路是否存在穿越设备。方法包括:管理设备指示第一设备生成第二报文,其中,第二报文携带第一校验信息,第一校验信息为第一报文对应的校验信息,第二报文与第一报文不一致;管理设备指示第一设备向第二设备发送第二报文;管理设备在第一时间段内,通过检测第二设备是否收到第二报文,确定第二设备与第一设备是否逐跳式连接。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种链路检测方法和相关设备。
背景技术
在现有通信网络中,各设备间进行时间同步的方案大部分是根据电器和电子工程师协会(institute of electrical and electronics engineers,IEEE)提出的网络测量和控制系统的精密时间协议(precision time protocol,PTP)标准来实现,该标准又称为IEEE 1588协议。IEEE1588协议的核心思想是采用主从时钟方式,在同步过程中,主时钟(master)设备周期性发布PTP报文,从时钟(slave)设备接收主时钟设备发过来的时间戳信息,据此计算出主从线路时间延迟及主从时间偏差,并利用该时间偏差调整本地时间,使从时钟设备时间保持与主时钟设备时间一致以实现时间同步。然而,在出现主从线路时间延迟及主从时间偏差导致无法进行时间同步时,难以发现其原因。
为了实现时间同步,IEEE1588协议中规定从时钟设备和与其对应的主时钟设备之间逐跳式连接(hop-by-hop),即从时钟设备和主时钟设备均具有逐跳支持(full timingsupport)功能,不能存在穿越设备,该穿越设备为不支持IEEE1588协议的设备。原因是:中继设备处理并转发主时钟设备发出的PTP报文,会带来时间误差,使得从时钟设备无法实现与主时钟设备的时间同步。
然而,由于通信网络日益复杂,在链路中不可避免地会有穿越设备参与通信。因此,检测链路中是否存在穿越设备,成为一个亟待解决的问题。
发明内容
本申请实施例提供了一种链路检测方法和相关设备,用于检测当前主时钟设备与从时钟设备之间的链路是否存在穿越设备。
有鉴于此,本申请实施例提供如下方案:
第一方面,本申请实施例提供了一种链路检测方法,该链路检测方法可以包括:
IEEE 1588协议中规定从时钟设备(第二设备)需要跟踪并锁定主时钟设备(第一设备),当从时钟设备未锁定主时钟设备时,此时认为从时钟设备(第二设备)时间失锁;如果从时钟设备可以锁定主时钟设备,但是从时钟设备与主时钟设备之间的时间偏差的累计和比较大,可认为从时钟设备(第二设备)处于异常中。该管理设备接收该第二设备上报的异常消息,该异常消息包括该第二设备时钟失锁,和/或该第一设备与该第二设备之间时间偏差的累计和大于预置门限;管理设备收到第二设备上报的异常消息后,确定第一设备,该第一设备为第二设备的主时钟设备。为了确定第一设备(主时钟设备)与第二设备(从时钟设备)之间是否存在第三设备(穿越设备),管理设备指示第一设备生成第二报文;管理设备指示第一设备生成第二报文,其中,该第二报文携带第一校验信息,该第一校验信息为第一报文对应的校验信息,该第一校验信息为第一设备对第一报文进行循环冗余校验(cyclicredundancy check,CRC)生成的校验信息,该第二报文与该第一报文不一致;该管理设备指示该第一设备向第二设备发送该第二报文;该管理设备在第一时间段内,通过检测该第二设备是否收到该第二报文,确定该第二设备与该第一设备是否逐跳式连接,当第一设备向第二设备发送第二报文后,管理设备启动定时器。管理设备在第一时间段内,通过检测第二设备是否收到第二报文,确定第二设备与第一设备是否逐跳式连接。第一时间段可以根据实际需求确定,例如是5分钟,此处不作限定。
本申请实施例中,首先,管理设备指示第一设备生成第二报文,该第二报文携带所对应的第一校验信息,该第一校验信息为第一报文对应的校验信息,且第二报文与第一报文不一致。其次,管理设备指示第一设备向第二设备发送该第二报文。当第一设备与第二设备之间不是逐跳式连接,即存在第三设备时:该第三设备接收到第二报文后,由于第三设备根据第二报文生成的校验信息一定与第二报文所携带的第一校验信息不符,因此第三设备对第二报文的校验一定失败,则第三设备会丢弃第二报文,不再向第二设备转发该第二报文。管理设备根据第一时间段内第二设备是否收到第二报文,以确定第二设备与第一设备是否逐跳式连接。当第二设备在第一时间段内未收到第二报文,则确定第二设备与第一设备并不是逐跳式连接,第二设备与第一设备之间存在穿越设备;当第二设备在第一时间段内收到第二报文,则确定第二设备与第一设备逐跳式连接,第二设备与第一设备之间无穿越设备。通过上述方法,可以有效确定当前链路中是否存在穿越设备。
在一些实现方式中,该管理设备在该第一时间段内,通过检测该第二设备是否收到该第二报文,确定该第二设备与该第一设备是否逐跳式连接,可以包括:当第一设备向第二设备发送第二报文后,管理设备启动定时器,该定时器设定的时长为第一时间段。在第一时间段内,第二设备检测所接收的报文中是否携带第一消息类型(MsgType)标识,当检测到接收的报文中携带第一消息类型标识,可确定第一设备与第二设备之间无穿越设备(第三设备)。若该管理设备检测该第二设备在该第一时间段内收到携带第一消息类型标识的报文,则该管理设备确定该第二设备收到该第二报文,该第一消息类型标识用于指示该报文为该第二报文;该管理设备确定该第二设备与该第一设备逐跳式连接;和/或若该管理设备检测该第二设备在该第一时间段内未收到携带该第一消息类型标识的该报文,则该管理设备确定该第二设备未收到该第二报文;该管理设备确定该第二设备与该第一设备之间存在第三设备。本申请实施例中,管理设备通过检测第二设备在第一时间段内是否收到携带第一消息类型标识的报文,确定第二设备与第一设备之间的链路情况。进而确定第二设备与第一设备是否逐跳式连接。提升了本方案的实现灵活性。
在一些实现方式中,该管理设备在该第一时间段内,通过检测该第二设备是否收到该第二报文,确定该第二设备与该第一设备是否逐跳式连接,可以包括:由于IEEE 1588协议规定主时钟设备与每个从时钟设备之间通过唯一的端口进行PTP报文交互,因此,对于主时钟设备来说,可以通过在特定的端口向特定的从时钟设备发送PTP报文,而从时钟设备可以通过检测某个端口是否有报文,以确定是否有来自主时钟设备的PTP报文。管理设备可以通过检测第二设备在当第一时间段内是否通过第一端口收到报文,以确定第二设备与第一设备之间的链路情况。该第一端口为第二设备与第一设备之间传输第二报文的端口。若该管理设备检测该第二设备在该第一时间段内通过第一端口收到报文,则该管理设备确定该第二设备收到该第二报文,该第一端口为该第二设备与该第一设备之间传输该第二报文的端口;该管理设备确定该第二设备与该第一设备逐跳式连接;和/或若该管理设备检测该第二设备在该第一时间段内通过该第一端口未收到报文,则该管理设备确定该第二设备未收到该第二报文;该管理设备确定该第二设备与该第一设备之间存在第三设备。本申请实施例中,管理设备通过检测第二设备在第一时间段内是否通过第一端口收到报文,确定第二设备与第一设备之间的链路情况。进而确定第二设备与第一设备是否逐跳式连接。提升了本方案的实现灵活性。
在一些实现方式中,该管理设备在该第一时间段内,通过检测该第二设备是否收到该第二报文,确定该第二设备与该第一设备是否逐跳式连接,可以包括:若该管理设备检测该第二设备在该第一时间段内收到携带第一设备标识的报文,则该管理设备确定该第二设备收到该第二报文,该第一设备标识用于指示该报文来自该第一设备,本申请提出的链路检测方法应用于配置了IEEE 1588协议的网络时,该第一设备标识为第一设备的时钟标识(clockid)。当本申请提出的链路检测方法应用于其它网络时,该第一设备标识是可以唯一标识第一设备的身份标识,例如第一设备的媒体接入控制(media access control,MAC)地址;该管理设备确定该第二设备与该第一设备逐跳式连接;和/或当第一时间段内(例如5分钟)第二设备都没有接收到携带第一设备的报文时,可以确定该携带第一设备的报文在链路中丢失,进而确定第二设备与第一设备之间的链路存在第三设备(穿越设备)。
在一些实现方式中,该管理设备指示该第一设备生成该第二报文,可以包括:
可选的,首先,第一设备生成完整的第一报文,该第一报文携带的校验信息为第一校验信息。然后,第一设备在第一报文的预留字段(reserved)中插入第一字段,插入第一字段后的第一报文称为第二报文。该第一字段既可以是任意字符,也可以是第一校验信息。该预留字段,既可以是消息头中的“Reserved”字段(例如“MsgType”中的“reserved”字段),也可以是帧结构中其它“Reserved”字段,此处不作限制。
可选的,首先,第一设备生成完整的第一报文,该第一报文携带的校验信息为第一校验信息。然后,第一设备修改第一报文中的任意字段,生成第二报文。例如:该任意字段既可以是“CorrectionField”字段,也可以是第一校验信息,此处不作限定。
该第一字段为第一校验信息,其中,该第一校验信息为该第一设备对该第一报文进行循环冗余校验CRC处理生成的校验信息。该第一报文为精密时间协议PTP报文,该第二报文为PTP报文。
本申请实施例中,第一设备可以通过多种方式生成第二报文,提升了本方案的实现灵活性。
第二方面,本申请实施例提供了一种链路检测方法,该链路检测方法包括:第一设备生成完整的第一报文,该第一报文携带的校验信息为第一校验信息。然后,第一设备在第一报文的预留字段(reserved)中插入第一字段,插入第一字段后的第一报文称为第二报文。该第一字段既可以是任意字符,也可以是第一校验信息。该预留字段,既可以是消息头中的“Reserved”字段(例如“MsgType”中的“reserved”字段),也可以是帧结构中其它“Reserved”字段,此处不作限制。该第一字段为第一校验信息,其中,该第一校验信息为该第一设备对该第一报文进行循环冗余校验CRC处理生成的校验信息。该第一报文为精密时间协议PTP报文,该第二报文为PTP报文。该第一校验信息为第一报文对应的校验信息,该第二报文与该第一报文不一致。
第一设备(主时钟设备)向第二设备(从时钟设备)发送第二报文,存在多种不同实现方案,下面分别进行描述。可选的,第一设备周期性向第二设备发送第二报文,例如,第一设备每秒向第二设备发送8次第二报文;可选的,当第二设备处于时钟失锁和/或第二设备与第一设备之间时间偏差的累计和大于预置门限时,第二设备发出告警消息以告知用户。用户根据该告警消息手动指示第一设备向第二设备发送第二报文;可选的,当第二设备处于时钟失锁和/或第二设备与第一设备之间时间偏差的累计和大于预置门限时,第二设备向第一设备发送告警消息。第一设备根据该告警消息向第二设备发送第二报文。
本申请实施例中,第二设备根据第一时间段内第二设备是否收到第二报文,以确定第二设备与第一设备是否逐跳式连接。当第二设备在第一时间段内未收到第二报文,则确定第二设备与第一设备并不是逐跳式连接,第二设备与第一设备之间存在穿越设备;当第二设备在第一时间段内收到第二报文,则确定第二设备与第一设备逐跳式连接,第二设备与第一设备之间无穿越设备。以实现确定从时钟设备无法实现与主时钟设备的时间同步的原因。
在一些实现方式中,该第一设备生成该第二报文,包括:首先,第一设备生成完整的第一报文,该第一报文携带的校验信息为第一校验信息。然后,第一设备修改第一报文中的任意字段,生成第二报文。例如:该任意字段既可以是“CorrectionField”字段,也可以是第一校验信息,此处不作限定。
该第一字段为第一校验信息,其中,该第一校验信息为该第一设备对该第一报文进行循环冗余校验CRC处理生成的校验信息。该第一报文为精密时间协议PTP报文,该第二报文为PTP报文。
本申请实施例中,第一设备可以通过多种方式生成第二报文,提升了本方案的实现灵活性。
第三方面,本申请实施例提供了一种链路检测方法,该链路检测方法包括:
在第一时间段内,第二设备通过检测是否收到第二报文,确定该第二设备与第一设备是否逐跳式连接,其中,该第二报文由该第一设备发送,该第一设备为该第二设备的主时钟设备。本申请实施例中,第二设备根据第一时间段内第二设备是否收到第二报文,以确定第二设备与第一设备是否逐跳式连接。当第二设备在第一时间段内未收到第二报文,则确定第二设备与第一设备并不是逐跳式连接,第二设备与第一设备之间存在穿越设备;当第二设备在第一时间段内收到第二报文,则确定第二设备与第一设备逐跳式连接,第二设备与第一设备之间无穿越设备。以实现确定从时钟设备无法实现与主时钟设备的时间同步的原因。
在一些实现方式中,在该第一时间段内,该第二设备通过检测是否收到第二报文,确定该第二设备与第一设备是否逐跳式连接,可以包括:由于IEEE 1588协议规定主时钟设备与每个从时钟设备之间通过唯一的端口进行PTP报文交互,因此,对于主时钟设备来说,可以通过在特定的端口向特定的从时钟设备发送PTP报文,而从时钟设备可以通过检测某个端口是否有报文,以确定是否有来自主时钟设备的PTP报文。
可选的,若该第二设备在该第一时间段内收到携带第一消息类型标识的报文,则该第二设备确定该第二设备收到该第二报文,该第一消息类型标识用于指示该报文为该第二报文;该第二设备确定该第二设备与该第一设备逐跳式连接;和/或若该第二设备在该第一时间段内未收到携带该第一消息类型标识的该报文,则确定该第二设备未收到该第二报文;该第二设备确定该第二设备与该第一设备之间存在第三设备。
可选的,若该第二设备在该第一时间段内通过第一端口收到报文,则该第二设备确定该第二设备收到该第二报文,该第一端口为该第二设备与该第一设备之间传输该第二报文的端口;该第二设备确定该第二设备与该第一设备逐跳式连接;和/或若该第二设备在该第一时间段内通过该第一端口未收到报文,则该第二设备确定该第二设备未收到该第二报文;该第二设备确定该第二设备与该第一设备之间存在第三设备。
可选的,若该第二设备在该第一时间段内收到携带第一设备标识的报文,则该第二设备确定该第二设备收到该第二报文,该第一设备标识用于指示该报文来自该第一设备;该第二设备确定该第二设备与该第一设备逐跳式连接;和/或若该第二设备在该第一时间段内未收到携带该第一设备标识的报文,则该第二设备确定该第二设备未收到该第二报文;该第二设备确定该第二设备与该第一设备之间存在第三设备。
本申请实施例中,第二设备可以通过多种方法确定是否收到第二报文,以确定第二设备与第一设备之间的链路情况。进而确定第二设备与第一设备是否逐跳式连接。提升了本方案的实现灵活性。
第四方面,本申请实施例提供了一种管理设备,该管理设备具有实现上述第一方面或第一方面任意一种可能实现方式的方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块,例如:发送模块、处理模块和接收模块。
第五方面,本申请实施例提供了一种管理设备,该管理设备包括至少一个处理器和存储器,该存储器中存储有可在处理器上运行的计算机指令,当该计算机指令被该处理器执行时,该处理器执行如上述第一方面或第一方面任意一种可能的实现方式该的方法。
第六方面,本申请实施例提供了一种第一设备,该设备具有实现上述第二方面或第二方面任意一种可能实现方式的方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块,例如:生成模块和发送模块。
第七方面,本申请实施例提供了一种第一设备,该设备包括至少一个处理器和存储器,该存储器中存储有可在处理器上运行的计算机指令,当该计算机指令被该处理器执行时,该处理器执行如上述第二方面或第二方面任意一种可能的实现方式该的方法。
第八方面,本申请实施例提供了一种第二设备,该管理设备具有实现上述第三方面或第三方面任意一种可能实现方式的方法的功能。该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。该硬件或软件包括一个或多个与上述功能相对应的模块,例如:处理模块。
第九方面,本申请实施例提供了一种第二设备,该设备包括至少一个处理器和存储器,该存储器中存储有可在处理器上运行的计算机指令,当该计算机指令被该处理器执行时,该处理器执行如上述第三方面或第三方面任意一种可能的实现方式该的方法。
第十方面,本申请实施例提供一种存储一个或多个计算机执行指令的计算机程序产品(或称计算机程序),当该计算机执行指令被该处理器执行时,该处理器执行上述任意一种可能实现方式的方法。
第十一方面,本申请提供了一种芯片系统,该芯片系统包括处理器,用于支持管理设备、第一设备或第二设备实现上述方面中所涉及的功能。在一种可能的设计中,该芯片系统还包括存储器,该存储器,用于保存终端设备必要的程序指令和数据。该芯片系统,可以由芯片构成,也可以包括芯片和其他分立器件。
其中,第四至第十一方面或者其中任一种可能实现方式所带来的技术效果可参见第一方面、第一方面不同可能实现方式、第二方面、第二方面不同可能实现方式、第三方面或第三方面不同可能实现方式所带来的技术效果,此处不再赘述。
从以上技术方案可以看出,本申请实施例具有以下优点:
管理设备指示第一设备生成第一报文,第一报文携带第一校验信息,第一校验信息为第一报文对应的校验信息;管理设备指示第一设备向第二设备发送第二报文,第二报文携带的校验信息为第一校验信息,第二报文与第一报文不一致;管理设备在第一时间段内,通过检测第二设备是否收到第二报文,确定第二设备与第一设备是否逐跳式连接。
首先,管理设备通过指示第一设备生成第一报文,该第一报文携带所对应的第一校验信息。其次,管理设备指示第一设备向第二设备发送第二报文,该第二报文所携带的校验信息为第一校验信息,且第二报文与第一报文不一致。当第一设备与第二设备之间不是逐跳式连接,即存在第三设备时:该第三设备接收到第二报文后,由于第三设备根据第二报文生成的校验信息一定与第二报文所携带的第一校验信息不符,因此第三设备对第二报文的校验一定失败,则第三设备会丢弃第二报文,不再向第二设备转发该第二报文。管理设备根据第一时间段内第二设备是否收到第二报文,以确定第二设备与第一设备是否逐跳式连接。当第二设备在第一时间段内未收到第二报文,则确定第二设备与第一设备并不是逐跳式连接,第二设备与第一设备之间存在穿越设备;当第二设备在第一时间段内收到第二报文,则确定第二设备与第一设备逐跳式连接,第二设备与第一设备之间无穿越设备。以实现确定从时钟设备无法实现与主时钟设备的时间同步的原因。
附图说明
图1为本申请实施例涉及的报文帧结构示意图;
图2为本申请实施例提出的一种链路检测方法的场景示意图;
图3为本申请实施例提出的一种链路检测方法的实施例示意图;
图4为本申请实施例提出的链路检测方法的另一种实施例示意图;
图5为本申请实施例提出的链路检测方法的另一种实施例示意图;
图6为本申请实施例提出的链路检测方法的另一种实施例示意图;
图7为本申请实施例涉及的一种报文帧结构示意图;
图8为本申请实施例涉及的一种报文帧结构示意图;
图9为本申请实施例提出的链路检测方法的另一种实施例示意图;
图10为本申请实施例中管理设备的一种实施例示意图;
图11为本申请实施例中第一设备1100的一种实施例示意图;
图12为本申请实施例中第二设备1200的一种实施例示意图;
图13为本申请实施例中的通信装置的硬件结构一个示意图。
具体实施方式
本申请实施例提供了一种链路检测方法,用于检测当前主时钟设备与从时钟设备之间的链路是否存在穿越设备。
下面结合附图,对本申请的实施例进行描述。本领域普通技术人员可知,随着技术的发展和新场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本申请的说明书和权利要求书及上述附图中的术语“第一”或“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的术语在适当情况下可以互换,这仅仅是描述本申请的实施例中对相同属性的对象在描述时所采用的区分方式。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,以便包含一系列单元的过程、方法、系统、产品或设备不必限于那些单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它单元。
首先,介绍本申请所涉及的一些概念:
(1)、IEEE 1588协议。
IEEE1588协议的全称是“网络测量和控制系统的精密时钟同步协议标准(IEEE1588 precision clock synchronization protocol)”,简称精密时间协议(precisiontime protocol,PTP),它的主要原理是通过一个同步信号周期性的对网络中所有节点的时钟进行校正同步,使得基于以太网的分布式系统达到精确同步,IEEE 1588协议可以应用于任何组播网络中。
(2)、PTP报文。
IEEE 1588协议中,根据报文收发过程中,是否需要记录精确时间戳定义了事件报文(event message)和通用报文(general message)两种格式的报文,这些报文统称为精密时间协议报文(PTP报文),也称为1588报文。其中,事件报文包括:“同步报文(sync)”、:“延迟请求报文(delay_req)”、“Pdelay_req报文”和“Pdelay_resp报文”;通用报文包括:“声明报文(announce)”、“延迟响应报文(delay_resp)”、“跟随报文(follow_up)”、“Pdelay_resp_Follow_up报文”、“管理报文(management)”和“信号报文(signaling)”。
示例性的,PTP报文的帧结构,请参阅图1,图1为本申请实施例涉及的报文帧结构示意图。其中,“offset”为当前域的子节距离报文首字节的偏移量,单位是“八位组(octet)”,八位组与位(bit)之间的换算关系为:1八位组=8位(bit)。图1中,每一行为32bit,例如,“MsgType”与“DomainNumber”的偏移量为32bit(4octet)。具体的,图1中各个字段所代表的含义,请参阅表1:
表1
下面结合附图,对本申请的实施例进行描述。
请参阅图2,图2为本申请实施例提出的一种链路检测方法的场景示意图。本申请实施例提出的一种链路检测方法可以应用于配置了IEEE 1588协议的网络,也可以应用于其它需要检测两个设备之间是否逐跳式连接的网络,此处不作限定。为了便于说明,此处以应用于配置了IEEE 1588协议的以太网(ethernet)为例进行说明。
图2中,当前通信网络存在第一设备与第二设备以及管理上述设备的管理设备。第一设备与第二设备可以是各类具有网络通信功能的设备,包括手持设备、车载设备、可穿戴设备、计算设备或连接到无线调制解调器的其它处理设备,例如是移动站(mobilestation,MS)、用户模块(subscriber unit)、蜂窝电话(cellular phone)、智能电话(smartphone)、无线数据卡、个人数字助理(personal digital assistant,PDA)电脑、平板型电脑、无线调制解调器(modem)、手持设备(handset)、膝上型电脑(laptop computer)、机器类型通信(machine type communication,MTC)终端等;还可以包括个人电脑(personalcomputer,PC)、服务器(server)或智能电子设备(intelligential electrical device,IED)等。
需要说明的是,该管理设备既可以是与第一设备和第二设备类似的各类具有网络通信功能的实体设备,也可以是部署于第一设备与第二设备内的虚拟设备,此处不作限制。
正常工作情况下,第一设备与第二设备均启用IEEE 1588协议,第一设备作为主时钟设备(或称为主节点),第二设备作为从时钟设备(或称为从节点),第一设备与第二设备之间通过“①”链路进行报文交互,例如图2中第一设备通过“①”链路向第二设备发送PTP报文,使得第二设备根据该报文调整时钟。
在一些情况下,第一设备与第二设备之间还存在第三设备,该第三设备与第一设备或第二设备类似,但是第三设备没有启用IEEE 1588协议(或不支持IEEE 1588协议),第三设备对于第一设备、第二设备和管理设备来说是未知的,第三设备收到第一设备的报文后,根据该报文的目的地(第二设备)将该报文转发至第二设备,即第一设备与第二设备之间实际是通过“②”链路进行报文交互。由于第二设备需要根据第一设备发送的PTP报文调整时钟,而当前链路存在的穿越设备(第三设备),使得该PTP报文指示的时间信息与实际链路存在的时间延迟不一致,第二设备根据该PTP报文调整时钟仍然存在较大偏差。因此,IEEE 1588协议中规定设备具有逐跳支持(Full timing support),即各个设备之间需要逐跳式连接,不得存在穿越设备。但是,随着通信网络日益复杂,网络中包括的设备越来越多,网络中不可避免的存在穿越设备。为了确定网络中存在的穿越设备,本申请提出了一种链路检测方法。
具体的,请参阅图3,图3为本申请实施例提出的一种链路检测方法的实施例示意图。本申请实施例提出的一种链路检测方法包括:
301、第二设备向管理设备上报异常消息。
本实施例中,以该链路检测方法应用于配置了IEEE 1588协议的网络为例进行说明。当第二设备处于时钟失锁和/或第二设备与第一设备之间时间偏差的累计和大于预置门限时,第二设备向管理设备上报异常消息。
具体的,由于IEEE 1588协议中规定从时钟设备(第二设备)需要跟踪并锁定主时钟设备(第一设备),当从时钟设备未锁定主时钟设备时,此时认为从时钟设备(第二设备)时间失锁;如果从时钟设备可以锁定主时钟设备,但是从时钟设备与主时钟设备之间的时间偏差的累计和比较大,例如:15分钟内,时间偏差的累计和(也称为偏差累计和)大于预置门限(例如是200纳秒)时,认为从时钟设备(第二设备)处于异常中。
需要说明的是,第二设备处于其他异常情况时,同样可以触发步骤301,例如,第二设备检测当前与第一设备之间的链路故障时,第二设备向管理设备上报异常消息,此处对第二设备向管理设备上报异常消息的前提条件不作限制。
302、指示第一设备生成第二报文。
本实施例中,管理设备收到第二设备上报的异常消息后,确定第一设备,该第一设备为第二设备的主时钟设备。为了确定第一设备(主时钟设备)与第二设备(从时钟设备)之间是否存在第三设备(穿越设备),管理设备指示第一设备生成第二报文。
具体的,第二设备与第一设备仅需报文交互时,第二设备记录第一设备所对应的设备标识,该设备标识称为第一设备标识。在IEEE 1588协议中,规定该设备标识是时钟标识(clockIdentity,clockid),当设备在接入网络后,根据该设备的物理地址,比如媒体接入控制(media access control,MAC)地址,生成时钟标识。时钟标识与MAC地址类似,都具有唯一性,因此可作为设备的身份标识。第二设备上报的异常消息中,携带第一设备的第一设备标识,因此管理设备可根据第一设备标识确定第一设备。
303、根据管理设备的指示生成第二报文。
本实施例中,第一设备收到管理设备的指示后,根据该指示首先生成第一报文,该第一报文携带第一校验信息,该第一校验信息为第一设备对第一报文进行循环冗余校验(cyclic redundancy check,CRC)生成的校验信息。可选的,第一设备根据管理设备的指示生成第一报文,该第一报文是一种PTP报文,该第一报文的内容此处不作限定。该第一报文所携带的第一校验信息为第一设备对第一报文的全量进行CRC所生成的校验信息,该第一校验信息填充的位置是第一报文的末端。
其次,第一设备根据第一报文生成第二报文。该第二报文携带第一校验信息,该第一校验信息为第一报文对应的校验信息,第二报文与第一报文不一致。因此,当其它设备接收该第二报文时,根据第二报文生成的校验信息与第二报文携带的第一校验信息不一致,则其它设备对第二报文校验失败。该其它设备为第三设备(穿越设备)时,第三设备在校验第二报文失败后,会丢弃该第二报文,因此,第二设备不会接收到来自第一设备的第二报文。管理设备可以根据第一时间段内第二设备未接收到第二报文,确定第二设备与第一设备之间不是逐跳式连接,第二设备与第一设备之间存在穿越设备(第三设备)。
具体的,当本链路检测方法应用于配置了IEEE 1588协议的网络时,该第一报文与该第二报文为PTP报文。首先第一设备根据指示生成第一报文,例如,该指示为管理设备通过网络管理协议(network management protocol)所下发的指示。第一设备根据第一报文生成第二报文,第二报文所携带的校验信息为第一校验信息,该第一校验信息是第一设备根据第一报文生成的校验信息。
可选的,首先,第一设备生成完整的第一报文,该第一报文携带的校验信息为第一校验信息。然后,第一设备在第一报文的预留字段(reserved)中插入第一字段,插入第一字段后的第一报文称为第二报文。该第一字段既可以是任意字符,也可以是第一校验信息。该预留字段,既可以是消息头中的“Reserved”字段(例如“MsgType”中的“reserved”字段),也可以是帧结构中其它“Reserved”字段,此处不作限制。
可选的,首先,第一设备生成完整的第一报文,该第一报文携带的校验信息为第一校验信息。然后,第一设备修改第一报文中的任意字段,生成第二报文。例如:该任意字段既可以是“CorrectionField”字段,也可以是第一校验信息,此处不作限定。
可选的,该第二报文所携带的第一消息类型(MsgType)标识为保留(“Reserved”)字段中的任一类型值。当前,IEEE 1588协议规定,“MsgType”对应的字段中,“0x04-7”和“0x0E-0x0F”为预留字段(“Reserved”),因此,可以定义该第二报文所携带的第一消息类型标识为上述预留字段中的任一类型值。例如,第二报文所携带的第一消息类型标识为“0x07”,即第二报文中“MsgType”的类型值为“0x07”。为了便于理解,请参阅图7,图7为本申请实施例涉及的一种报文帧结构示意图。图7中示意的是第二报文的一种可能的帧结构,该第二报文的“MsgType”字段的类型值为“7”,该第二报文的其余帧结构与声明报文(announce)类似。需要说明的是,此处不对该第二报文所携带的消息类型标识进行限定,第二报文也可以携带声明报文的消息类型标识,也可以是其它自定义的消息类型标识,例如图8中所示的“B”。
可选的,第二设备也可以直接生成第二报文,该第二报文所携带的校验信息为第一校验信息,该第一校验信息与第二设备根据第二报文的全量进行CRC所生成的校验信息不一致。
需要说明的是,当本链路检测方法应用于其它网络时,该第一报文与该第二报文还可以是其它格式的报文,此处不作限定。
304、向第二设备发送第二报文。
本实施例中,第一设备生成第二报文后,向第二设备发送该第二报文。第一设备向第二设备发送第二报文后,通知管理设备第二报文发送的时间,以便管理设备检测当前第一设备与第二设备之间的链路。
可选的,第一设备向第二设备发送该第二报文为周期性发送,例如,在第一时间段内,每一秒发送8份第二报文,此处不作限定。
305、确定第二设备与第一设备是否逐跳式连接。
本实施例中,当第一设备向第二设备发送第二报文后,管理设备启动定时器。管理设备在第一时间段内,通过检测第二设备是否收到第二报文,确定第二设备与第一设备是否逐跳式连接。第一时间段可以根据实际需求确定,例如是5分钟,此处不作限定。
本申请实施例中,首先,管理设备指示第一设备生成第二报文,该第二报文携带所对应的第一校验信息,该第一校验信息为第一报文对应的校验信息,且第二报文与第一报文不一致。其次,管理设备指示第一设备向第二设备发送该第二报文。当第一设备与第二设备之间不是逐跳式连接,即存在第三设备时:该第三设备接收到第二报文后,由于第三设备根据第二报文生成的校验信息一定与第二报文所携带的第一校验信息不符,因此第三设备对第二报文的校验一定失败,则第三设备会丢弃第二报文,不再向第二设备转发该第二报文。管理设备根据第一时间段内第二设备是否收到第二报文,以确定第二设备与第一设备是否逐跳式连接。当第二设备在第一时间段内未收到第二报文,则确定第二设备与第一设备并不是逐跳式连接,第二设备与第一设备之间存在穿越设备;当第二设备在第一时间段内收到第二报文,则确定第二设备与第一设备逐跳式连接,第二设备与第一设备之间无穿越设备。通过上述方法,可以有效确定当前链路中是否存在穿越设备。
图3对应的实施例中,步骤305管理设备确定第二设备与第一设备是否逐跳式连接存在多种可能的实现方案。下面,在图3对应的实施例的基础上,结合附图分别进行说明。请参阅图4,图4为本申请实施例提出的链路检测方法的另一种实施例示意图。本申请实施例提出的链路检测方法还包括:
401、检测第二设备在第一时间段内是否收到携带第一消息类型标识的报文。
本实施例中,管理设备在第一时间段内检测第二设备是否接收携带第一消息类型标识的报文,以确定第一设备与第二设备之间的链路情况。
具体的,当第一设备向第二设备发送第二报文后,管理设备启动定时器,该定时器设定的时长为第一时间段。在第一时间段内,第二设备检测所接收的报文中是否携带第一消息类型标识,当检测到接收的报文中携带第一消息类型标识,可确定第一设备与第二设备之间无穿越设备(第三设备),则进入步骤402,确定第二设备与第一设备逐跳式连接。
以IEEE 1588协议为例,从时钟设备与主时钟设备之间PTP报文(以声明announce报文为例)的发送频率为每一秒发送8份声明报文。因此,当第一时间段内(例如5分钟)第二设备都没有接收到携带第一消息类型的报文时,可以确定该携带第一消息类型的报文在链路中丢失,进而确定第二设备与第一设备之间的链路存在第三设备(穿越设备),进入步骤403。
402、确定第二设备与第一设备逐跳式连接。
403、确定第二设备与第一设备之间存在第三设备。
本申请实施例中,管理设备通过检测第二设备在第一时间段内是否收到携带第一消息类型标识的报文,确定第二设备与第一设备之间的链路情况。进而确定第二设备与第一设备是否逐跳式连接。提升了本方案的实现灵活性。
请参阅图5,图5为本申请实施例提出的链路检测方法的另一种实施例示意图。本申请实施例提出的链路检测方法还包括:
501、检测第二设备在第一时间段内是否通过第一端口收到报文。
本实施例中,当本申请提出的链路检测方法应用于配置了IEEE 1588协议的网络时,由于IEEE 1588协议规定主时钟设备与每个从时钟设备之间通过唯一的端口进行PTP报文交互,因此,对于主时钟设备来说,可以通过在特定的端口向特定的从时钟设备发送PTP报文,而从时钟设备可以通过检测某个端口是否有报文,以确定是否有来自主时钟设备的PTP报文。
通过上述描述,管理设备可以通过检测第二设备在当第一时间段内是否通过第一端口收到报文,以确定第二设备与第一设备之间的链路情况。该第一端口为第二设备与第一设备之间传输第二报文的端口。
具体的,当第一设备向第二设备发送第二报文后,管理设备启动定时器,该定时器设定的时长为第一时间段。在第一时间段内,第二设备检测是否通过第一端口接收报文,当检测到通过第一端口接收报文,可确定第一设备与第二设备之间无穿越设备(第三设备),则进入步骤502,确定第二设备与第一设备逐跳式连接。
当第一时间段内(例如5分钟)第二设备都没有通过第一端口接收报文,可以第一设备与第二设备之间的链路故障,进而确定第二设备与第一设备之间的链路存在第三设备(穿越设备),进入步骤503。
502、确定第二设备与第一设备逐跳式连接。
503、确定第二设备与第一设备之间存在第三设备。
本申请实施例中,管理设备通过检测第二设备在第一时间段内是否通过第一端口收到报文,确定第二设备与第一设备之间的链路情况。进而确定第二设备与第一设备是否逐跳式连接。提升了本方案的实现灵活性。
请参阅图6,图6为本申请实施例提出的链路检测方法的另一种实施例示意图。本申请实施例提出的链路检测方法还包括:
601、检测第二设备在第一时间段内是否收到携带第一设备标识的报文。
本实施例中,当本申请提出的链路检测方法应用于配置了IEEE 1588协议的网络时,该第一设备标识为第一设备的时钟标识(clockid)。当本申请提出的链路检测方法应用于其它网络时,该第一设备标识是可以唯一标识第一设备的身份标识,例如第一设备的MAC地址。
具体的,当第一设备向第二设备发送第二报文后,管理设备启动定时器,该定时器设定的时长为第一时间段。在第一时间段内,第二设备检测所接收的报文中是否携带第一设备标识,当检测到接收的报文中携带第一设备标识,可确定第一设备与第二设备之间无穿越设备(第三设备),则进入步骤602,确定第二设备与第一设备逐跳式连接。
当第一时间段内(例如5分钟)第二设备都没有接收到携带第一设备的报文时,可以确定该携带第一设备的报文在链路中丢失,进而确定第二设备与第一设备之间的链路存在第三设备(穿越设备),进入步骤603。
602、确定第二设备与第一设备逐跳式连接。
603、确定第二设备与第一设备之间存在第三设备。
本申请实施例中,管理设备通过检测第二设备在第一时间段内是否收到携带第一设备标识的报文,确定第二设备与第一设备之间的链路情况。进而确定第二设备与第一设备是否逐跳式连接。提升了本方案的实现灵活性。
可选的,在上述图1-图8对应的实施例的基础上,本申请提出的一种链路检测方法,还可以省去管理设备。在第一时间段内,第二设备(从时钟设备)通过检测是否收到第二报文,确定第二设备与第一设备是否逐跳式连接,该第二报文由第一设备发送,该第一设备为第二设备的主时钟设备。具体的,请参阅图9,图9为本申请实施例提出的链路检测方法的另一种实施例示意图。本申请实施例提出的链路检测方法,包括:
901、生成第二报文。
本实施例中,第一设备(主时钟设备)生成第二报文。具体的生成第二报文的方法,与前述步骤303类似,此处不再赘述。
902、向第二设备发送第二报文。
本实施例中,第一设备(主时钟设备)向第二设备(从时钟设备)发送第二报文,存在多种不同实现方案,下面分别进行描述。
可选的,第一设备周期性向第二设备发送第二报文,例如,第一设备每秒向第二设备发送8次第二报文。
可选的,当第二设备处于时钟失锁和/或第二设备与第一设备之间时间偏差的累计和大于预置门限时,第二设备发出告警消息以告知用户。用户根据该告警消息手动指示第一设备向第二设备发送第二报文。
可选的,当第二设备处于时钟失锁和/或第二设备与第一设备之间时间偏差的累计和大于预置门限时,第二设备向第一设备发送告警消息。第一设备根据该告警消息向第二设备发送第二报文。
903、确定第二设备与第一设备是否逐跳式连接。
本实施例中,当第二设备处于时钟失锁和/或第二设备与第一设备之间时间偏差的累计和大于预置门限时,在第一时间段内,第二设备通过检测是否收到第二报文,确定第二设备与第一设备是否逐跳式连接。
具体的,第二设备确定第二设备与第一设备是否逐跳式连接的方案,与前述图4-图6对应的实施例类似,此处不再赘述。
本申请实施例中,第二设备根据第一时间段内第二设备是否收到第二报文,以确定第二设备与第一设备是否逐跳式连接。当第二设备在第一时间段内未收到第二报文,则确定第二设备与第一设备并不是逐跳式连接,第二设备与第一设备之间存在穿越设备;当第二设备在第一时间段内收到第二报文,则确定第二设备与第一设备逐跳式连接,第二设备与第一设备之间无穿越设备。以实现确定从时钟设备无法实现与主时钟设备的时间同步的原因。
上述主要以方法的角度对本申请实施例提供的方案进行了介绍。可以理解的是,上述第一设备、第二设备与管理设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的模块及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对第一设备、第二设备与管理设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
下面分别对本申请中的第一设备、第二设备与管理设备进行详细描述,请参阅图10,图10为本申请实施例中管理设备的一种实施例示意图。管理设备1000包括:
发送模块1001,用于指示第一设备生成第二报文,其中,第二报文携带第一校验信息,第一校验信息为第一报文对应的校验信息,第二报文与第一报文不一致;
发送模块1001,还用于指示第一设备向第二设备发送第二报文;
处理模块1002,用于在第一时间段内,通过检测第二设备是否收到第二报文,确定第二设备与第一设备是否逐跳式连接。
在本申请的一些实施例中,管理设备1000还包括接收模块1003,
接收模块1003,具体用于接收第二设备上报的异常消息,异常消息包括第二设备时钟失锁,和/或第一设备与第二设备之间时间偏差的累计和大于预置门限;
处理模块1002,还用于根据异常消息确定第一设备,第一设备为第二设备的主时钟设备。
在本申请的一些实施例中,
处理模块1002,具体用于若处理模块1002检测第二设备在第一时间段内收到携带第一消息类型标识的报文,则确定第二设备收到第二报文,第一消息类型标识用于指示报文为第二报文;
处理模块1002确定第二设备与第一设备逐跳式连接;
和/或
若处理模块1002检测第二设备在第一时间段内未收到携带第一消息类型标识的报文,则处理模块1002确定第二设备未收到第二报文;
处理模块1002确定第二设备与第一设备之间存在第三设备。
在本申请的一些实施例中,
处理模块1002,具体用于若处理模块1002检测第二设备在第一时间段内通过第一端口收到报文,则处理模块1002确定第二设备收到第二报文,第一端口为第二设备与第一设备之间传输第二报文的端口;处理模块1002确定第二设备与第一设备逐跳式连接;
和/或
若处理模块1002检测第二设备在第一时间段内通过第一端口未收到报文,则处理模块1002确定第二设备未收到第二报文;处理模块1002确定第二设备与第一设备之间存在第三设备。
在本申请的一些实施例中,
处理模块1002,具体用于若处理模块1002检测第二设备在第一时间段内收到携带第一设备标识的报文,则处理模块1002确定第二设备收到第二报文,第一设备标识用于指示报文来自第一设备;处理模块1002确定第二设备与第一设备逐跳式连接;
和/或
若处理模块1002检测第二设备在第一时间段内未收到携带第一设备标识的报文,则处理模块1002确定第二设备未收到第二报文;处理模块1002确定第二设备与第一设备之间存在第三设备。
在本申请的一些实施例中,
发送模块1001,还用于指示第一设备生成第一报文;
发送模块1001,还用于指示第一设备在第一报文的预留字段中插入第一字段,生成第二报文,其中,第二报文的预留字段中携带第一字段。
在本申请的一些实施例中,第一字段为第一校验信息,其中,第一校验信息为第一设备对第一报文进行循环冗余校验CRC处理生成的校验信息。
在本申请的一些实施例中,第一报文为精密时间协议PTP报文,第二报文为PTP报文。
请参阅图11,图11为本申请实施例中第一设备的一种实施例示意图。第一设备1100包括:
生成模块1101,用于生成第二报文,其中,第二报文携带第一校验信息,第一校验信息为第一报文对应的校验信息,第二报文与第一报文不一致;
发送模块1102,用于向第二设备发送第二报文,以使得第二设备确定第二设备与第一设备1100是否逐跳式连接,其中,第一设备1100为第二设备的主时钟设备。
在本申请的一些实施例中,
生成模块1101,具体用于第一设备1100生成第一报文;
生成模块1101,具体用于在第一报文的预留字段中插入第一字段,生成第二报文,其中,第二报文的预留字段中携带第一字段。
在本申请的一些实施例中,第一字段为第一校验信息,其中,第一校验信息为第一设备1100对第一报文进行循环冗余校验CRC处理生成的校验信息。
在本申请的一些实施例中,第一报文为精密时间协议PTP报文,第二报文为PTP报文。
请参阅图12,图12为本申请实施例中第二设备的一种实施例示意图。第二设备1200包括:
处理模块1201,用于在第一时间段内,处理模块1201通过检测是否收到第二报文,确定第二设备1200与第一设备是否逐跳式连接,其中,第二报文由第一设备发送,第一设备为第二设备1200的主时钟设备。
在本申请的一些实施例中,
处理模块1201,具体用于若第二设备1200在第一时间段内收到携带第一消息类型标识的报文,则处理模块1201确定第二设备1200收到第二报文,第一消息类型标识用于指示报文为第二报文;处理模块1201确定第二设备1200与第一设备逐跳式连接;
和/或
若第二设备1200在第一时间段内未收到携带第一消息类型标识的报文,则处理模块1201确定第二设备1200未收到第二报文;
处理模块1201确定第二设备1200与第一设备之间存在第三设备。
在本申请的一些实施例中,
处理模块1201,具体用于若第二设备1200在第一时间段内通过第一端口收到报文,则处理模块1201确定第二设备1200收到第二报文,第一端口为第二设备1200与第一设备之间传输第二报文的端口;处理模块1201确定第二设备1200与第一设备逐跳式连接;
和/或
若第二设备1200在第一时间段内通过第一端口未收到报文,则第二设备1200确定第二设备1200未收到第二报文;处理模块1201确定第二设备1200与第一设备之间存在第三设备。
在本申请的一些实施例中,
处理模块1201,具体用于若第二设备1200在第一时间段内收到携带第一设备标识的报文,则第二设备1200确定第二设备1200收到第二报文,第一设备标识用于指示报文来自第一设备;处理模块1201确定第二设备1200与第一设备逐跳式连接;
和/或
若第二设备1200在第一时间段内未收到携带第一设备标识的报文,则第二设备1200确定第二设备1200未收到第二报文;处理模块1201确定第二设备1200与第一设备之间存在第三设备。
在本申请的一些实施例中,第二报文为精密时间协议PTP报文。
需要说明的是,上述管理设备1000、第一设备1100和第二设备1200的各模块之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其带来的技术效果与本发明方法实施例相同,具体内容可参见本申请前述所示的方法实施例中的叙述,此处不再赘述。
上面从模块化功能实体的角度对本申请实施例中的第一设备、第二设备和管理设备进行描述,下面从硬件处理的角度对本申请实施例中的第一设备、第二设备和管理设备进行描述。图13为本申请实施例中的通信装置的硬件结构一个示意图。如图13所示,该通信装置可以包括:
该通信装置包括至少一个处理器1301,通信线路1307,存储器1303以及至少一个通信接口1304。
处理器1301可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,服务器IC),或一个或多个用于控制本申请方案程序执行的集成电路。
通信线路1307可包括一通路,在上述组件之间传送信息。
通信接口1304,使用任何收发器一类的装置,用于与其他装置或通信网络通信,如以太网等。
存储器1303可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储装置,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储装置,存储器可以是独立存在,通过通信线路1307与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器1303用于存储执行本申请方案的计算机执行指令,并由处理器1301来控制执行。处理器1301用于执行存储器1303中存储的计算机执行指令,从而实现本申请上述实施例提供的链路检测方法。
可选的,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。
在具体实现中,作为一种实施例,通信装置可以包括多个处理器,例如图13中的处理器1301和处理器1302。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个装置、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
在具体实现中,作为一种实施例,通信装置还可以包括输出装置1305和输入装置1306。输出装置1305和处理器1301通信,可以以多种方式来显示信息。输入装置1306和处理器1301通信,可以以多种方式接收用户的输入。例如,输入装置1306可以是鼠标、触摸屏装置或传感装置等。
上述的通信装置可以是一个通用装置或者是一个专用装置。在具体实现中,通信装置可以是台式机、便携式电脑、网络服务器、无线终端装置、嵌入式装置或有图13中类似结构的装置。本申请实施例不限定通信装置的类型。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
另外需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本申请提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本申请而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘、U盘、移动硬盘、ROM、RAM、磁碟或者光盘等,包括若干指令用以使得一台计算机设备执行本申请各个实施例所述的方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、第一设备、第二设备与管理设备、计算设备或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、第一设备、第二设备与管理设备、计算设备或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的训练设备、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘(Solid State Disk,SSD))等。
应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本申请的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
另外,本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
应理解,在本申请实施例中,“与A相应的B”表示B与A相关联,根据A可以确定B。但还应理解,根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其它信息确定B。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。
总之,以上所述仅为本申请技术方案的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (19)
1.一种链路检测方法,其特征在于,包括:
管理设备指示第一设备生成第二报文,其中,所述第二报文携带第一校验信息,所述第一校验信息为第一报文对应的校验信息,所述第二报文与所述第一报文不一致;
所述管理设备指示所述第一设备向第二设备发送所述第二报文;
所述管理设备在第一时间段内,通过检测所述第二设备是否收到所述第二报文,确定所述第二设备与所述第一设备是否逐跳式连接。
2.根据权利要求1所述的方法,其特征在于,所述管理设备指示所述第一设备生成所述第二报文之前,所述方法还包括:
所述管理设备接收所述第二设备上报的异常消息,所述异常消息包括所述第二设备时钟失锁,和/或所述第一设备与所述第二设备之间时间偏差的累计和大于预置门限;
所述管理设备根据所述异常消息确定所述第一设备,所述第一设备为所述第二设备的主时钟设备。
3.根据权利要求2所述的方法,其特征在于,所述管理设备在所述第一时间段内,通过检测所述第二设备是否收到所述第二报文,确定所述第二设备与所述第一设备是否逐跳式连接,包括:
若所述管理设备检测所述第二设备在所述第一时间段内收到携带第一消息类型标识的报文,则所述管理设备确定所述第二设备收到所述第二报文,所述第一消息类型标识用于指示所述报文为所述第二报文;所述管理设备确定所述第二设备与所述第一设备逐跳式连接;
或
若所述管理设备检测所述第二设备在所述第一时间段内未收到携带所述第一消息类型标识的所述报文,则所述管理设备确定所述第二设备未收到所述第二报文;
所述管理设备确定所述第二设备与所述第一设备之间存在第三设备。
4.根据权利要求2所述的方法,其特征在于,所述管理设备在所述第一时间段内,通过检测所述第二设备是否收到所述第二报文,确定所述第二设备与所述第一设备是否逐跳式连接,包括:
若所述管理设备检测所述第二设备在所述第一时间段内通过第一端口收到报文,则所述管理设备确定所述第二设备收到所述第二报文,所述第一端口为所述第二设备与所述第一设备之间传输所述第二报文的端口;所述管理设备确定所述第二设备与所述第一设备逐跳式连接;
或
若所述管理设备检测所述第二设备在所述第一时间段内通过所述第一端口未收到报文,则所述管理设备确定所述第二设备未收到所述第二报文;所述管理设备确定所述第二设备与所述第一设备之间存在第三设备。
5.根据权利要求2所述的方法,其特征在于,所述管理设备在所述第一时间段内,通过检测所述第二设备是否收到所述第二报文,确定所述第二设备与所述第一设备是否逐跳式连接,包括:
若所述管理设备检测所述第二设备在所述第一时间段内收到携带第一设备标识的报文,则所述管理设备确定所述第二设备收到所述第二报文,所述第一设备标识用于指示所述报文来自所述第一设备;所述管理设备确定所述第二设备与所述第一设备逐跳式连接;
或
若所述管理设备检测所述第二设备在所述第一时间段内未收到携带所述第一设备标识的报文,则所述管理设备确定所述第二设备未收到所述第二报文;所述管理设备确定所述第二设备与所述第一设备之间存在第三设备。
6.根据权利要求1-5中任一项所述的方法,其特征在于,所述管理设备指示所述第一设备生成所述第二报文,包括:
所述管理设备指示所述第一设备生成所述第一报文;
所述管理设备指示所述第一设备在所述第一报文的预留字段中插入第一校验信息,生成所述第二报文。
7.根据权利要求6所述的方法,其特征在于,所述第一校验信息为所述第一设备对所述第一报文进行循环冗余校验CRC处理生成的校验信息。
8.根据权利要求7所述的方法,其特征在于,所述第一报文为精密时间协议PTP报文,所述第二报文为PTP报文。
9.一种链路检测方法,其特征在于,包括:
当第二设备无法跟踪或锁定第一设备的时钟时,所述第一设备生成第二报文,其中,所述第二报文携带第一校验信息,所述第一校验信息为第一报文对应的校验信息,所述第二报文与所述第一报文不一致;
所述第一设备向第二设备发送所述第二报文,以使得所述第二设备确定所述第二设备与第一设备是否逐跳式连接,其中,所述第一设备为所述第二设备的主时钟设备。
10.根据权利要求9所述的方法,其特征在于,所述第一设备生成所述第二报文,包括:
所述第一设备生成所述第一报文;
所述第一设备在所述第一报文的预留字段中插入第一校验信息,生成所述第二报文。
11.根据权利要求10所述的方法,其特征在于,所述第一校验信息为所述第一设备对所述第一报文进行循环冗余校验CRC处理生成的校验信息。
12.根据权利要求9-11中任一项所述的方法,其特征在于,所述第一报文为精密时间协议PTP报文,所述第二报文为PTP报文。
13.一种链路检测方法,其特征在于,包括:
当第二设备无法跟踪或锁定第一设备的时钟时,在第一时间段内,第二设备通过检测是否收到第二报文,确定所述第二设备与第一设备是否逐跳式连接,其中,所述第二报文由所述第一设备发送,所述第一设备为所述第二设备的主时钟设备,所述第二报文携带第一校验信息,所述第一校验信息为第一报文对应的校验信息,所述第二报文与所述第一报文不一致。
14.根据权利要求13所述的方法,其特征在于,在所述第一时间段内,所述第二设备通过检测是否收到第二报文,确定所述第二设备与第一设备是否逐跳式连接,包括:
若所述第二设备在所述第一时间段内收到携带第一消息类型标识的报文,则所述第二设备确定所述第二设备收到所述第二报文,所述第一消息类型标识用于指示所述报文为所述第二报文;所述第二设备确定所述第二设备与所述第一设备逐跳式连接;
或
若所述第二设备在所述第一时间段内未收到携带所述第一消息类型标识的所述报文,则确定所述第二设备未收到所述第二报文;
所述第二设备确定所述第二设备与所述第一设备之间存在第三设备。
15.根据权利要求13所述的方法,其特征在于,在所述第一时间段内,所述第二设备通过检测是否收到第二报文,确定所述第二设备与第一设备是否逐跳式连接,包括:
若所述第二设备在所述第一时间段内通过第一端口收到报文,则所述第二设备确定所述第二设备收到所述第二报文,所述第一端口为所述第二设备与所述第一设备之间传输所述第二报文的端口;所述第二设备确定所述第二设备与所述第一设备逐跳式连接;
或
若所述第二设备在所述第一时间段内通过所述第一端口未收到报文,则所述第二设备确定所述第二设备未收到所述第二报文;所述第二设备确定所述第二设备与所述第一设备之间存在第三设备。
16.根据权利要求13所述的方法,其特征在于,在所述第一时间段内,所述第二设备通过检测是否收到第二报文,确定所述第二设备与第一设备是否逐跳式连接,包括:
若所述第二设备在所述第一时间段内收到携带第一设备标识的报文,则所述第二设备确定所述第二设备收到所述第二报文,所述第一设备标识用于指示所述报文来自所述第一设备;所述第二设备确定所述第二设备与所述第一设备逐跳式连接;
或
若所述第二设备在所述第一时间段内未收到携带所述第一设备标识的报文,则所述第二设备确定所述第二设备未收到所述第二报文;所述第二设备确定所述第二设备与所述第一设备之间存在第三设备。
17.根据权利要求13-16中任一项所述的方法,其特征在于,所述第二报文为精密时间协议PTP报文。
18.一种计算机设备,其特征在于,所述计算机设备包括:输入/输出(I/O)接口、处理器和存储器,
所述存储器中存储有程序指令;
所述处理器用于执行存储器中存储的程序指令,执行如权利要求1至17中任一所述的方法。
19.一种计算机可读存储介质,存储有指令,其特征在于,当所述指令在计算机设备上运行时,使得所述计算机设备执行如权利要求1至17中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010032837.XA CN113114403B (zh) | 2020-01-13 | 2020-01-13 | 一种链路检测方法以及相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010032837.XA CN113114403B (zh) | 2020-01-13 | 2020-01-13 | 一种链路检测方法以及相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113114403A CN113114403A (zh) | 2021-07-13 |
CN113114403B true CN113114403B (zh) | 2022-08-09 |
Family
ID=76708771
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010032837.XA Active CN113114403B (zh) | 2020-01-13 | 2020-01-13 | 一种链路检测方法以及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113114403B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118741355A (zh) * | 2023-03-28 | 2024-10-01 | 华为技术有限公司 | 一种链路检测方法以及相关装置 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6711131B1 (en) * | 1998-09-10 | 2004-03-23 | Kabushiki Kaisha Toshiba | Data transmitting apparatus, network interface apparatus, and data transmitting system |
CN107248941A (zh) * | 2017-06-30 | 2017-10-13 | 华为技术有限公司 | 一种检测路径的方法和装置 |
CN110493069A (zh) * | 2019-09-27 | 2019-11-22 | 新华三信息安全技术有限公司 | 故障检测方法、装置、sdn控制器及转发设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103490842B (zh) * | 2013-09-26 | 2016-09-28 | 深圳市大疆创新科技有限公司 | 数据传输系统及方法 |
CN107204888B (zh) * | 2016-03-16 | 2020-02-14 | 华为技术有限公司 | 一种切换超时时间的方法、装置和通信设备 |
-
2020
- 2020-01-13 CN CN202010032837.XA patent/CN113114403B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6711131B1 (en) * | 1998-09-10 | 2004-03-23 | Kabushiki Kaisha Toshiba | Data transmitting apparatus, network interface apparatus, and data transmitting system |
CN107248941A (zh) * | 2017-06-30 | 2017-10-13 | 华为技术有限公司 | 一种检测路径的方法和装置 |
CN110493069A (zh) * | 2019-09-27 | 2019-11-22 | 新华三信息安全技术有限公司 | 故障检测方法、装置、sdn控制器及转发设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113114403A (zh) | 2021-07-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11552871B2 (en) | Receive-side timestamp accuracy | |
US10673565B2 (en) | Confirming data accuracy in a distributed control system | |
US9608753B2 (en) | Time synchronization system, management node, and time synchronization method | |
JP7401656B2 (ja) | クロック・ソースを選択するための方法、装置、及びシステム、並びに記憶媒体 | |
CN112214441B (zh) | 基于串行总线轮询协议的通信切换方法、设备和系统 | |
EP3163786B1 (en) | Clock synchronization method and apparatus | |
CN103312428B (zh) | 用于精确时钟协议同步网络的方法和装置 | |
CN103236893A (zh) | 一种智能变电站过程层网络报文同步方法 | |
CN111726189B (zh) | 基于时间戳标记电路的双核系统时钟同步方法及装置 | |
CN109788027A (zh) | 数据同步方法、装置、服务器及计算机存储介质 | |
CN114172604A (zh) | 时延补偿方法、装置、设备及计算机可读存储介质 | |
EP2528283A1 (en) | Guardian strategy for distributed time-triggered protocols | |
CN113114403B (zh) | 一种链路检测方法以及相关设备 | |
CN104144047A (zh) | 通信网络系统的同步方法、中间节点和从节点 | |
CN114138054A (zh) | 一种时间戳获取方法、装置、电子设备及存储介质 | |
CN103490995B (zh) | 报文发送方法和装置 | |
CN102263672A (zh) | 一种ieee 1588链路检测方法、系统和ieee 1588链路装置 | |
WO2023231426A1 (zh) | 时延测量方法及其装置、存储介质、程序产品 | |
CN111757371B (zh) | 一种传输时延的统计方法、服务器及存储介质 | |
CN112203314A (zh) | 一种基于ip核的cpri接口iq数据适配及测试方法 | |
CN114827967A (zh) | 软件更新方法、蓝牙设备及存储介质 | |
CN113315594A (zh) | 时间同步方法、装置及存储介质 | |
CN102711163A (zh) | 一种ip-ran设备快速检测告警链路故障的方法 | |
US20010015961A1 (en) | Transmission system, supervisory control device, method of outputting data in the supervisory control device, and nodes for transmitting data in the transmission system | |
CN113518024B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |