本申请涉及网络通信,具体地涉及一种iec104报文的解析方法、装置及计算设备。
背景技术:
1、iec104协议是现代电力自动化系统的关键通信协议,用于在电力系统的自动化设备之间通过基于以太网的网络进行远程通信,由于iec104协议允许实时、可靠和安全的远程监控与控制,它在电网的现代化和智能化中扮演着至关重要的角色。
2、现有的针对iec104报文的解析方法主要仅针对单帧数据进行注释解析,解析效率较低,并且事件驱动依靠网络连接状态变化以及报文计数驱动,不能与业务流程相关联,问题只能在解析结果中自主分析,无法从结果了解到整个交互过程,不利于整体分析和定位问题。在实际应用中,工程师和系统运维人员需要对系统进行细致和全面的监控,从而确保系统的高效运作并能及时应对突发事件,而现有的iec104报文的解析方法并不能满足实际应用的需求。
3、可见,现有的iec104报文存在解析过程不能直观显示与解析效率低的技术问题。
技术实现思路
1、本申请实施例的目的是提供一种iec104报文的解析方法、装置及计算设备,用以解决现有技术中iec104报文存在解析过程不能直观显示与解析效率低的技术问题。
2、为了实现上述目的,本申请第一方面提供一种iec104报文的解析方法,包括:
3、接收iec104报文,其中,iec104报文包括多条数据帧;
4、获取iec104报文的报文数据长度和每条数据帧的apdu长度;
5、根据报文数据长度和数据帧的apdu长度解析多条数据帧,并将解析结果存储至审计日志,其中,解析过程包括:
6、针对每条数据帧,根据数据帧的控制域确定数据帧的类型;
7、在数据帧的类型为i帧的情况下,利用预设结构体对数据帧中apdu的公共部分进行结构化,得到第一解析内容;
8、根据第一解析内容确定数据帧的完整有效性;
9、在数据帧的完整有效性为完整有效帧的情况下,根据第一解析内容解析数据帧的信息体数据,得到第二解析内容;
10、根据第一解析内容与第二解析内容,对数据帧进行请求与响应的匹配。
11、在本申请实施例中,在数据帧的完整有效性为完整有效帧的情况下,根据第一解析内容解析数据帧的信息体数据,得到第二解析内容,包括:
12、在数据帧的完整有效性为完整有效帧的情况下,根据第一解析内容中的类型标识,确定数据帧的标识类别;
13、根据第一解析内容中的信息体寻址方式,利用标识类别对应的解析函数解析信息体数据,得到第二解析内容。
14、在本申请实施例中,根据第一解析内容与第二解析内容,对数据帧进行请求与响应的匹配,包括:
15、根据标识类别与第一解析内容中的传送原因确定数据帧的状态;
16、根据第一解析内容与第二解析内容确定数据帧的匹配参数;
17、在数据帧的状态为请求、响应或响应结束的情况下,根据匹配参数与数据帧的状态对数据帧进行请求与响应的匹配。
18、在本申请实施例中,在数据帧的状态为请求、响应或响应结束的情况下,根据匹配参数与数据帧的状态对数据帧进行请求与响应的匹配,包括:
19、在数据帧的状态为请求的情况下,确定数据帧为请求帧,将请求帧存储至双链表;
20、在数据帧的状态为响应的情况下,确定数据帧为响应帧,根据匹配参数利用双链表对响应帧进行请求与响应的匹配,在响应帧匹配到对应的请求帧的情况下,将响应帧存储至双链表;
21、在数据帧的状态为响应结束的情况下,确定数据帧为响应结束帧,根据匹配参数利用双链表对响应结束帧进行请求与响应的匹配,在响应结束帧匹配到对应的请求帧的情况下,将响应结束帧、请求帧与响应帧的第一解析内容与第二解析内容存储至审计日志。
22、在本申请实施例中,根据第一解析内容与第二解析内容,对数据帧进行请求与响应的匹配,包括:
23、在数据帧的状态为单条帧数据的情况下,确定数据帧为单条帧,将单条帧的第一解析内容与第二解析内容存储至审计日志。
24、在本申请实施例中,解析过程还包括:
25、根据第二解析内容确定数据帧是否带有时标;
26、在数据帧带有时标的情况下,将时标存储至审计日志。
27、在本申请实施例中,iec104报文的解析方法还包括:
28、在数据帧的类型为u帧或s帧的情况下,将数据帧存储至审计日志。
29、本申请第二方面提供一种iec104报文的解析装置,包括:
30、报文接收模块:用于接收iec104报文,其中,iec104报文包括多条数据帧;
31、数据长度获取模块:用于获取iec104报文的报文数据长度和每条数据帧的apdu长度;
32、报文解析模块:用于根据报文数据长度和数据帧的apdu长度解析多条数据帧,并将解析结果存储至审计日志,其中,解析过程包括:
33、针对每条数据帧,根据数据帧的控制域确定数据帧的类型;
34、在数据帧的类型为i帧的情况下,利用预设结构体对数据帧中apdu的公共部分进行结构化,得到第一解析内容;
35、根据第一解析内容确定数据帧的完整有效性;
36、在数据帧的完整有效性为完整有效帧的情况下,根据第一解析内容解析数据帧的信息体数据,得到第二解析内容;
37、根据第一解析内容与第二解析内容,对数据帧进行请求与响应的匹配。
38、本申请第三方面提供一种计算设备,其特征在于,包括:
39、存储器,被配置成存储指令;以及
40、处理器,被配置成从存储器调用指令以及在执行指令时能够实现根据第一方面中任一项所述的iec104报文的解析方法。
41、本申请第四方面提供一种机器可读存储介质,该机器可读存储介质上存储有指令,该指令用于使得机器执行根据第一方面中任一项所述的iec104报文的解析方法。
42、通过上述技术方案,利用报文数据长度与每条数据帧的apdu长度来一次性循环解析多条数据帧,提高了iec104报文的解析效率;通过确认数据帧的类型以及将apdu中公共部分的内容和信息体数据分开进行解析,可以对数据帧进行更有针对性与更高效的解析,提高了iec104报文解析的效率和准确性;通过对数据帧进行请求与响应的匹配,将互相对应的请求帧与响应帧进行匹配,能够确保数据通信的完整性和准确性;通过将iec104报文的解析结果存储至审计日志,从而可以从审计日志中直观地看到解析结果,方便进行后续分析与故障排查等操作。
43、本申请实施例的其它特征和优点将在随后的具体实施方式部分予以详细说明。
1.一种iec104报文的解析方法,其特征在于,所述方法包括:
2.根据权利要求1所述的iec104报文的解析方法,其特征在于,所述在所述数据帧的完整有效性为完整有效帧的情况下,根据所述第一解析内容解析所述数据帧的信息体数据,得到第二解析内容,包括:
3.根据权利要求2所述的iec104报文的解析方法,其特征在于,所述根据所述第一解析内容与所述第二解析内容,对所述数据帧进行请求与响应的匹配,包括:
4.根据权利要求3所述的iec104报文的解析方法,其特征在于,所述在所述数据帧的状态为请求、响应或响应结束的情况下,根据所述匹配参数与所述数据帧的状态对所述数据帧进行请求与响应的匹配,包括:
5.根据权利要求3所述的iec104报文的解析方法,其特征在于,所述根据所述第一解析内容与所述第二解析内容,对所述数据帧进行请求与响应的匹配,包括:
6.根据权利要求1所述的iec104报文的解析方法,其特征在于,所述解析过程还包括:
7.根据权利要求1所述的iec104报文的解析方法,其特征在于,所述方法还包括:
8.一种iec104报文的解析装置,其特征在于,所述装置包括:
9.一种计算设备,其特征在于,包括:
10.一种机器可读存储介质,其特征在于,该机器可读存储介质上存储有指令,该指令用于使得机器执行根据权利要求1至7中任一项所述的iec104报文的解析方法。