System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及数据分析领域,特别是涉及一种应用在ptp(precise time protocol)的设备中的ptp数据分析方法。
技术介绍
1、对于ptp运行,由于其有大量数据(一秒内大概56个数据),而且ptp调整是一个持续的过程,在出问题的时候只能看见最终的状态,而不能呈现历史调整过程;再者,因为ptp是一个跟外部环境强相关联的功能,问题不一定出在设备本身,可能是网络环境造成,所以在出问题的时候,初步判断问题是出在哪里就显得格外重要。
2、另外,平常状态下的抓取ptp数据可以通过tcpdump(一种用于抓取网口数据的工具)抓pcap包的方式,但抓取出来的是pcap(tcpdump工程生成的文件格式)文件是标准的文件格式,很难直观的体现我们需要的数据,也没有现成的api(应用程序编程接口)接口函数用于访问pcap文件。而且还不能抓取到从时钟发送或者接收ptp报文的硬件时间戳,不能用于验证数据的合法性。因此,除了标准的ptp协议消息数据,还需要记录一些自定义数据,用于输出程序里面的关键信息。
技术实现思路
1、针对现有技术中存在的问题,提供了一种ptp数据分析方法,应用在ptp(precisetime protocol)的设备上,利用开源的ptp4l(ptp for linux)程序抓取信息数据,用于在出现问题时分析历史数据,用于定位问题,同时,根据自动化工具分析抓取到数据,节省人力。
2、本专利技术采用的技术方案如下:一种ptp数据分析方法,包括:
>3、建立自定义数据结构,其具有与标准的ptp消息公共的头;
4、实时抓取数据,按先后顺序存入链表容器中;
5、根据预设触发条件,对链表容器中的数据进行转存;
6、对转存的数据进行数据分析,打印显示异常信息以及指定数据。
7、进一步的,所述建立自定义数据结构包括:
8、每条数据记录具有公共部分,包括:消息类型、序列号、域名号、标志域、硬件时间戳、时间戳校准值以及间隔值;
9、对于所有收到和发出的标准ptp消息,数据类型定义为protocol;
10、对于均方根数据,还包括当前时间差均方根/最大值/最小值、频率差均方根/最大值/最小值、时延均方根/最大值/最小值,数据类型定义为rms;
11、对于状态数据,定义了状态发生改变的快照,包括:时间、当前均方根值、当前时钟差异值及当前链路时延值,数据类型定义为state;
12、对于属性数据,还包括:是否为双步、是否为调相、过滤模式、收敛门限、伺服算法模式及参数,数据类型定义为property。
13、进一步的,所述实时抓取数据的具体过程为:
14、对于收到和发出的标准ptp消息,无条件存放在链表容器里,由消息事件触发;
15、对于每秒的记录,将均方根、频率差、链路时延和时间差值构造成一个expand_rms消息,并存放在链表容器中,由周期性记录触发;
16、对于状态发生改变,将同步消息发出和接收时间戳、时延测量消息发出和接收时间戳、当前时钟差异值、伺服状态机状态以及同步状态机状态构造成一个expand_state消息,并存放在链表容器中,由状态改变事件触发;
17、对于ptp配置信息,在启动时记录,构造成一个expand_property消息,并存放在链表容器中,仅在启动时触发一次。
18、进一步的,还包括通过配置文件配置需要抓取的数据类型。
19、进一步的,所述预设触发条件包括:
20、①当ptp状态发生改变时;
21、②ptp锁定后第一次达到容器链表容器满的情况。
22、进一步的,所述转存的策略包括:
23、所有消息均需要转存头信息的内容,包括:打印序号、消息类型、该消息序列号、硬件时间戳、消息携带的时间戳、本地时间戳、校准值、域名号、间隔周期以及端口号。
24、对于通知消息,还需要转存时钟源信息;
25、对于expand_rms消息,还需要转存当前的均方根、频率差、链路时延以及时间差值;
26、对于expand_state消息,还需要转存同步请求消息发出时间戳-时延测量请求收到消息时间戳和状态值;
27、对于expand_property消息,还需要转存链路时间记录机制、时钟锁定判断门限、使能调相模式、调相门限、滤波器类型和长度、目标媒体访问控制地址以及是否包含有跟随消息。
28、进一步的,所述数据分析的具体方法包括:
29、遍历所有通知消息,依次判断两个相邻通知消息内容是否不同、序列号是否不连续、间隔时间是否大于正常的1.5倍,任一判断条件结果为是,均需要打印对应消息的异常信息;
30、遍历所有同步/跟随消息,依次判断两个相邻消息的序列号是否有间断、同步和跟随消息是否不匹配、同步消息发出和接收时间戳是否异常,任一判断条件结果为是,均需要打印对应消息的异常信息;
31、遍历所有时延请求/响应消息,依次判断两个相邻消息的序列号是否有间断、请求和响应消息是否不匹配以及时延测量消息发出和接收时间戳是否异常,任一判断条件结果为是,均需要打印对应消息的异常信息;
32、遍历所有周期rms消息,判断每秒时间差、频率差以及时延差是否变化100ppb以上,若是打印异常信息,否则遍历所有状态发生改变信息并打印异常信息。
33、进一步的,在遍历所有同步/跟随消息时,判断同步消息发出和接收时间戳是否异常的具体方法为:
34、步骤a、判断同步消息接收时间戳的间隔时间是否大于正常的1.5倍,若是,进入步骤b,否则进入步骤c;
35、步骤b、判断同步消息发出时间戳的间隔时间是否大于正常的1.5倍,若是,表示主时钟存在异常,进入步骤d,若否,则表示从时钟存在异常,进入步骤d;
36、步骤c、计算同步消息发出和接收时间戳之差是否超过100ns,若是,则进入步骤d,否则结束流程;
37、步骤d、打印异常信息。
38、进一步的,在遍历所有时延请求/响应消息时,判断时延测量消息发出和接收时间戳是否异常的具体方法为:
39、步骤a、判断时延测量消息接收时间戳的间隔时间是否大于正常的1.5倍,若是进入步骤b,否则进入步骤c;
40、步骤b、判断时延测量消息发出时间戳的间隔时间是否大于正常的1.5倍,若是表示从时钟存在异常,进入步骤d,否则表示主时钟存在异常,进入步骤d,
41、步骤c、计算时延测量消息发出和接收时间戳之差是否超过100ns,若是,进入步骤d,否则结束流程;
42、步骤d、打印异常信息。
43、进一步的,还包括打印显示指定数据,具体包括:
44、根据将数据类型为rms的数据与预设门限进行比较,若大于门限,则打印显示;
本文档来自技高网...
【技术保护点】
1.一种PTP数据分析方法,其特征在于,包括:
2.根据权利要求1所述的PTP数据分析方法,其特征在于,建立自定义数据结构包括:
3.根据权利要求1或2所述的PTP数据分析方法,其特征在于,所述实时抓取数据的具体过程为:
4.根据权利要求3所述的PTP数据分析方法,其特征在于,还包括通过配置文件配置需要抓取的数据类型。
5.根据权利要求1所述的PTP数据分析方法,其特征在于,所述预设触发条件包括:
6.根据权利要求1或5所述的PTP数据分析方法,其特征在于,所述转存的策略包括:
7.根据权利要求1所述的PTP数据分析方法,其特征在于,所述数据分析的具体方法包括:
8.根据权利要求7所述的PTP数据分析方法,其特征在于,在遍历所有同步/跟随消息时,判断同步消息发出和接收时间戳是否异常的具体方法为:
9.根据权利要求7所述的PTP数据分析方法,其特征在于,在遍历所有时延请求/响应消息时,判断时延测量消息发出和接收时间戳是否异常的具体方法为:
10.根据权利要求7所述的PTP数据
...【技术特征摘要】
1.一种ptp数据分析方法,其特征在于,包括:
2.根据权利要求1所述的ptp数据分析方法,其特征在于,建立自定义数据结构包括:
3.根据权利要求1或2所述的ptp数据分析方法,其特征在于,所述实时抓取数据的具体过程为:
4.根据权利要求3所述的ptp数据分析方法,其特征在于,还包括通过配置文件配置需要抓取的数据类型。
5.根据权利要求1所述的ptp数据分析方法,其特征在于,所述预设触发条件包括:
6.根据权利要求1或5所述的ptp数据分析方法,其特征在于,所述...
【专利技术属性】
技术研发人员:李强,毕延军,雷洪涛,
申请(专利权)人:四川恒湾科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。