CN112291202A - 报文数据的可视化方法、装置和计算机可读存储介质 - Google Patents

报文数据的可视化方法、装置和计算机可读存储介质 Download PDF

Info

Publication number
CN112291202A
CN112291202A CN202011075064.XA CN202011075064A CN112291202A CN 112291202 A CN112291202 A CN 112291202A CN 202011075064 A CN202011075064 A CN 202011075064A CN 112291202 A CN112291202 A CN 112291202A
Authority
CN
China
Prior art keywords
target element
data
message data
target
message
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.)
Granted
Application number
CN202011075064.XA
Other languages
English (en)
Other versions
CN112291202B (zh
Inventor
张波
曾波
石志斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202011075064.XA priority Critical patent/CN112291202B/zh
Publication of CN112291202A publication Critical patent/CN112291202A/zh
Application granted granted Critical
Publication of CN112291202B publication Critical patent/CN112291202B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/08Protocols for interworking; Protocol conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/18Multiprotocol handlers, e.g. single devices capable of handling multiple protocols

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请实施例公开了一种报文数据的可视化方法、装置和计算机可读存储介质;本申请实施例可以通过接收报文数据、以及所述报文数据对应的协议内容,然后,确定所述协议内容中各个目标元素的预定长度,并基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值,接着,根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据,再然后,将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。该方案可以利用云服务器将报文数据安全传输到报文数据的可视化装置,从而实现报文数据的可视化,有效地提高报文数据的分析效率。

Description

报文数据的可视化方法、装置和计算机可读存储介质
技术领域
本申请涉及计算机技术领域,具体涉及一种报文数据的可视化方法、装置和计算机可读存储介质。
背景技术
报文(message)是网络中交换与传输的数据单元,即站点一次性要发送的数据块。报文包含了将要发送的完整的数据信息,其长短很不一致,长度不限且可变。抓包(packetcapture)就是将网络传输发送与接收的报文数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全。抓包也经常被用来进行数据截取等。通常在网络包异常,网络数据流分析中,都会用抓包来进行分析,查看具体的网络报文情况。
但是,在利用抓包进行问题分析时,报文数据的显示可读性差,很难直观地将报文数据与协议的目标元素对应起来,需要使用者根据协议目标元素的偏移在原始报文数据中查找,很不方便,分析效率低。
发明内容
本申请实施例提供一种报文数据的可视化方法、装置和计算机可读存储介质,可以有效地实现报文数据的可视化,提高报文数据的分析效率。
本申请实施例提供一种报文数据的可视化方法,包括:
接收报文数据、以及所述报文数据对应的协议内容;
确定所述协议内容中各个目标元素的预定长度;
基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值;
根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据;
将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。
相应的,本申请实施例还提供一种报文数据的可视化装置,包括:
接收单元,用于接收报文数据以及所述报文数据对应的协议内容;
确定单元,用于确定所述协议内容中各个目标元素的预定长度;
计算单元,用于基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值;
获取单元,用于根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据;
转换单元,用于将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。
可选的,在一些实施例中,所述确定单元可以包括识别子单元和确定子单元,如下:
识别子单元,用于识别所述协议内容中各个目标元素的数据类型;
确定子单元,用于基于所述各个目标元素的数据类型确定各个目标元素的预定长度。
可选的,在一些实施例中,所述识别子单元,具体可以用于获取所述协议内容的内容主体,所述内容主体包括元素、以及元素与数据类型的映射关系;从所述内容主体中识别出所述协议内容中包含的目标元素;根据所述元素与数据类型的映射关系确定每个目标元素对应的数据类型。
可选的,在一些实施例中,所述确定子单元,具体可以用于根据所述各个目标元素的数据类型确定所述各个目标元素所占的字节数;基于所述各个目标元素所占的字节数确定各个目标元素的预定长度。
可选的,在一些实施例中,所述报文数据的可视化装置,还可以包括处理单元,如下:
所述处理单元,具体可以用于获取所述协议内容对应的协议类型;根据所述协议类型确定所述报文数据的头部预定长度;基于所述报文数据的头部预定长度,确定所述报文数据的包体。则所述基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值,具体可以基于所述预定长度计算各个目标元素在所述报文数据的包体中的位置偏移值。
可选的,在一些实施例中,所述计算单元,具体可以用于确定当前目标元素在所述协议内容中所处的位置顺序;当所述当前目标元素为第一个目标元素时,则所述当前目标元素在所述报文数据的包体中的位置偏移值为零;当所述当前目标元素不为第一个目标元素时,则根据上一目标元素的预定长度和位置偏移值,计算所述当前目标元素在所述报文数据的包体中的位置偏移值。
可选的,在一些实施例中,所述计算单元,具体可以用于获取上一目标元素的预定长度和上一目标元素的位置偏移值;将上一目标元素的预定长度与上一目标元素的位置偏移值相加,得到所述当前目标元素在所述报文数据的包体中的位置偏移值。
可选的,在一些实施例中,所述获取单元,具体可以用于遍历所述报文数据的包体;基于各个目标元素的预定长度以及在所述报文数据的包体中的位置偏移值,根据所述协议内容中目标元素的位置顺序依次确定每个目标元素对应的目标数据,直到所述报文数据的包体遍历完毕。
可选的,在一些实施例中,所述转换单元,具体可以用于基于各个目标元素的数据类型,确定所述目标元素对应的转换规则;根据所述转换规则将所述目标元素对应的目标数据转换为符合可视化格式的可视数据。
此外,本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本申请实施例提供的任一种报文数据的可视化方法中的步骤。
此外,本申请实施例还提供一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如本申请实施例提供的任一种报文数据的可视化方法中的步骤。
根据本申请的一个方面,提供了一种计算机程序产品或计算机程序,该计算机产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述报文数据的可视化方面的各种可选实现方式中提供的方法。
本申请实施例可以通过接收报文数据、以及所述报文数据对应的协议内容,然后,确定所述协议内容中各个目标元素的预定长度,并基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值,接着,根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据,再然后,将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。该方案可以有效地实现报文数据的可视化,提高报文数据的分析效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本申请实施例提供的报文数据的可视化方法的场景示意图;
图1b是本申请实施例提供的报文数据的可视化方法的第一流程图;
图2a是本申请实施例提供的报文数据的可视化方法的第二流程图;
图2b是本申请实施例提供的报文数据的可视化方法的第三流程图;
图2c是本申请实施例提供的抓包内容示意图;
图3是本申请实施例提供的报文数据的可视化装置的结构示意图;
图4是本申请实施例提供的电子设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的原理是以实施在一适当的运算环境中来举例说明。在以下的说明中,本申请的具体实施例将参考由一部或多部计算机所执行的步骤及符号来说明,除非另有述明。因此,这些步骤及操作将有数次提到由计算机执行,本文所指的计算机执行包括了由代表了以一结构化型式中的数据的电子信号的计算机处理单元的操作。此操作转换该数据或将其维持在该计算机的内存系统中的位置处,其可重新配置或另外以本领域测试人员所熟知的方式来改变该计算机的运作。该数据所维持的数据结构为该内存的实体位置,其具有由该数据格式所定义的特定特性。但是,本申请原理以上述文字来说明,其并不代表为一种限制,本领域测试人员将可了解到以下该的多种步骤及操作亦可实施在硬件当中。
本文所使用的术语“单元”可看做为在该运算系统上执行的软件对象。本文该的不同组件、单元、引擎及服务可看做为在该运算系统上的实施对象。而本文该的装置及方法可以以软件的方式进行实施,当然也可在硬件上进行实施,均在本申请保护范围之内。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
本申请实施例提供了一种报文数据的可视化方法、装置和计算机可读存储介质。其中,该报文数据的可视化可以集成在电子设备中。
本申请实施例提供的报文数据的可视化方法涉及云技术中的云安全技术,可以通过云技术中的云安全技术实现报文数据的可视化方法中涉及到报文数据的传输。
云技术(Cloud technology)是指在广域网或局域网内将硬件、软件、网络等系列资源统一起来,实现数据的计算、储存、处理和共享的一种托管技术。
云技术(Cloud technology)基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络系统的后台服务需要大量的计算、存储资源,如视频网站、图片类网站和更多的门户网站。伴随着互联网行业的高度发展和应用,将来每个物品都有可能存在自己的识别标志,都需要传输到后台系统进行逻辑处理,不同程度级别的数据将会分开处理,各类行业数据皆需要强大的系统后盾支撑,只能通过云计算来实现。
其中,云安全(Cloud Security)是指基于云计算商业模式应用的安全软件、硬件、用户、机构、安全云平台的总称。云安全融合了并行处理、网格计算、未知病毒行为判断等新兴技术和概念,通过网状的大量客户端对网络中软件行为的异常监测,获取互联网中木马、恶意程序的最新信息,并发送到服务端进行自动分析和处理,再把病毒和木马的解决方案分发到每一个客户端。
云安全主要研究方向包括:1.云计算安全,主要研究如何保障云自身及云上各种应用的安全,包括云计算机系统安全、用户数据的安全存储与隔离、用户接入认证、信息传输安全、网络攻击防护、合规审计等;2.安全基础设施的云化,主要研究如何采用云计算新建与整合安全基础设施资源,优化安全防护机制,包括通过云计算技术构建超大规模安全事件、信息采集与处理平台,实现对海量信息的采集与关联分析,提升全网安全事件把控能力及风险控制能力;3.云安全服务,主要研究各种基于云计算平台为用户提供的安全服务,如防病毒服务等。
例如,参见图1a,首先,该集成了报文数据的可视化装置的电子设备可以接收报文数据、以及所述报文数据对应的协议内容,然后,确定所述协议内容中各个目标元素的预定长度,并基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值,接着,根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据,再然后,将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。
由于该方案通过对报文数据与协议内容之间的对应关系进行一系列解析,最终将报文数据转换为符合可视化格式的可视数据,有效地将报文数据与协议内容对应起来,实现了报文数据的可视化,大大地提高了报文数据的可读性,使用户可以通过可视数据快速地对报文数据进行分析,有效地提高报文数据的分析效率。
以下分别进行详细说明。需说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
本实施例将从报文数据的可视化装置的角度进行描述,该报文数据的可视化装置具体可以集成在电子设备中,该电子设备可以是服务器,也可以是终端等设备,亦可以是包括终端和服务器的综合设备,等等。其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是手机、平板电脑、笔记本电脑以及个人计算机(Personal Computer,PC)等,但并不局限于此。
一种报文数据的可视化方法,包括:接收报文数据、以及所述报文数据对应的协议内容,然后,确定所述协议内容中各个目标元素的预定长度,并基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值,接着,根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据,再然后,将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。
如图1b所示,该报文数据的可视化方法的具体流程可以如下:
101、接收报文数据、以及所述报文数据对应的协议内容。
其中,报文(message)是网络中交换与传输的数据单元,即站点一次性要发送的数据块。报文包含了将要发送的完整的数据信息,其长短很不一致,长度不限且可变。报文数据不仅包括要传送的数据,也包括必要的附加信息,如:目的IP、目的端口、源地址、源端口、数据长度、所用协议、加密等等。报文在传输过程中会不断地封装成分组、包、帧来进行传输,封装的方式就是添加一些控制信息组成的首部,那些就是报文头。报文就是在各个系统之间进行请求和响应时用来交换信息的,需要遵守规定好的格式。其中,遵守规定好的格式也就是报文对应的协议。
网络协议(简称协议)是为实现网络数据交换而建立的规则、约定或标准等,是通信计算机双方必须共同遵从的一组约定,如怎么样建立连接、怎么样互相识别等。只有遵守这个约定,计算机之间才能相互通信交流。协议通常由三要素组成:(1)语法:即数据与控制信息的结构或格式;(2)语义:即需要发出何种控制信息,完成何种动作以及做出何种响应;(3)时序(同步),即事件实现顺序的详细说明。协议内容指的是通信双方为了实现通信而设计的约定或通话规则的具体内容。
例如,具体可以利用抓包工具,比如Tcpdump、Wireshark等,获取报文数据,并获取所述报文数据对应的协议内容,再将获取到报文数据、以及所述报文数据对应的协议内容发送至报文数据的可视化装置中。报文数据的可视化装置接收到报文数据、以及所述报文数据对应的协议内容,可以对该报文数据、以及对应的协议内容中的内容进行分析,具体分析过程可以参见以下步骤的说明。
其中,抓包工具是拦截查看网络数据包内容的软件。抓包工具由于其可以对数据通信过程中的所有lP报文实施捕获并进行逐层拆包分析,一直是传统固网数通维护工作中罐常用的故障排查工具,业内流行的抓包软件有很多:Wire shark、SnifferPro、Snoop以及Tcpdump等各抓包软件界面,应用平台稍有差别外,基本功能大同小异。
其中,Tcpdump:是一个运行在命令行下的嗅探工具。它允许用户拦截和显示发送或收到过网络连接到该计算机的TCP/IP和其他数据包。tcpdump能够分析网络行为,性能和应用产生或接收网络流量。它支持针对网络层、协议、主机、网络或端口的过滤,并提供and、or、not等逻辑语句来帮助你去掉无用的信息。
102、确定所述协议内容中各个目标元素的预定长度。
例如,具体可以识别所述协议内容中各个目标元素的数据类型,基于所述各个目标元素的数据类型确定各个目标元素的预定长度。
其中,数据类型在数据结构中的定义是一个值的集合以及定义在这个值集上的一组操作。数据类型包括原始类型、多元组、记录单元、代数数据类型、抽象数据类型、参考类型以及函数类型。比如,C语言中的数据类型有short(短整型)、int(整型)、long(长整型)、float(单精度浮点型)、double(双精度浮点型)、char(字符类型)、uint(无符号整型)、bool(布尔类型)等等。数据类型对应的字节数分别为byte:1字节、short:2字节、int:4字节、long:8字节、float:4字节精确到7位有效数字、double:8字节、bool:8位、char:2字节,等等。1个字节表示8位,1个字节相当于一个字符,如一个数字占一个字节。其中,预定长度具体可以指预定字节长度,即预定字符个数。
可选的,识别所述协议中各个目标元素的数据类型,具体可以获取所述协议内容的内容主体,所述内容主体包括元素、以及元素与数据类型的映射关系,从所述内容主体中识别出所述协议内容中包含的目标元素,根据所述元素与数据类型的映射关系确定每个目标元素对应的数据类型。
其中,协议可以包括协议头部和主体信息(即内容主体)等,可以先从协议内容中识别出内容主体,再从内容主体中识别出所述协议内容中包含的目标元素。其中,元素指的是按照某种界限划分的相同数据类型的数据项,比如,字段,每个字段描述文献的某一特征,即数据项,并有唯一的供计算机识别的字段标识符。协议内容可以按照预定内容组成结构存储元素与数据类型的映射关系,以供计算机识别。
可选的,基于所述各个目标元素的数据类型确定各个目标元素的预定长度具体可以根据所述各个目标元素的数据类型确定所述各个目标元素所占的字节数,基于所述各个目标元素所占的字节数确定各个目标元素的预定长度。比如,目标元素的数据类型为int整型时,则该目标元素所占的字节数为4字节,则该目标元素的预定长度为4字节。
103、基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值。
例如,可以获取所述协议内容对应的协议类型,根据所述协议类型确定所述报文数据的头部预定长度,基于所述报文数据的头部预定长度,确定所述报文数据的包体,则所述基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值,包括:基于所述预定长度计算各个目标元素在所述报文数据的包体中的位置偏移值。
其中,协议类型指的是具体为哪种协议,比如,TCP/IP协议。根据所述协议类型确定所述报文数据的头部预定长度,比如,UDP的报文头部为8个字节,TCP的报文头部为20字节。
例如,具体可以确定当前目标元素在所述协议内容中所处的位置顺序;当所述当前目标元素为第一个目标元素时,则所述当前目标元素在所述报文数据的包体中的位置偏移值为零;当所述当前目标元素不为第一个目标元素时,则根据上一目标元素的预定长度和位置偏移值,计算所述当前目标元素在所述报文数据的包体中的位置偏移值。
其中,位置偏移值指的是元素对应的实际内容与其所在报文数据的包体起始点之间的距离。
其中,根据上一目标元素的预定长度和位置偏移值,计算所述当前目标元素在所述报文数据的包体中的位置偏移值的方式有很多种,比如,具体可以获取上一目标元素的预定长度和上一目标元素的位置偏移值;将上一目标元素的预定长度与上一目标元素的位置偏移值相加,得到所述当前目标元素在所述报文数据的包体中的位置偏移值。比如,当所述当前目标元素不为第一个目标元素时,获取到上一目标元素的预定长度为4和上一目标元素的位置偏移值为4,则当前目标元素在所述报文数据的包体中的位置偏移值为4+4=8。
104、根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据。
例如,具体可以遍历所述报文数据的包体,基于各个目标元素的预定长度以及在所述报文数据的包体中的位置偏移值,根据所述协议内容中目标元素的位置顺序依次确定每个目标元素对应的目标数据,直到所述报文数据的包体遍历完毕。
比如,可以先根据第一个目标元素的预定长度以及在所述报文数据的包体中的位置偏移值确定第一个目标元素对应的目标数据,然后,根据第二个目标元素的预定长度以及在所述报文数据的包体中的位置偏移值确定第二个目标元素对应的目标数据,接着,根据第三个目标元素的预定长度以及在所述报文数据的包体中的位置偏移值确定第三个目标元素对应的目标数据……直到每个目标元素对应的目标数据都确定完毕,即报文数据的包体遍历完毕。
105、将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。
例如,可以基于各个目标元素的数据类型,确定所述目标元素对应的转换规则,根据所述转换规则将所述目标元素对应的目标数据转换为符合可视化格式的可视数据。其中,可视数据指的是符合人类的阅读习惯、直接简明的数据,比如,十进制数据。
比如,可以判断所述目标元素的数据类型是否为数值类型,若所述目标元素是数值类型,则确定所述目标元素对应的转换规则,根据所述转换规则将所述目标元素对应的目标数据转换为符合可视化格式的可视数据(比如十进制数据),若所述目标元素不是数值类型(比如字符类型),则将目标元素对应的目标数据解析为字符串内容直接输出。
其中,转换规则根据报文数据的数制类型以及目标元素的数据类型进行确定,比如,报文数据的数制类型为十六进制,目标元素的数据类型为unin,则转换规则是将十六进制转换为十进制的算法。又比如,报文数据的数制类型为二进制,目标元素的数据类型为unin,则转换规则是将二进制转换为十进制的算法。再比如,报文数据的数制类型为十六进制,目标元素的数据类型为char,则转换规则是将目标数据的十六进制解析为字符串内容输出。
由上可知,本实施例可以通过接收报文数据、以及所述报文数据对应的协议内容,然后,确定所述协议内容中各个目标元素的预定长度,并基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值,接着,根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据,再然后,将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。该方案可以有效地实现报文数据的可视化,提高报文数据的分析效率。由于该方案通过对报文数据与协议内容之间的对应关系进行一系列解析,最终将报文数据转换为符合可视化格式的可视数据,有效地将报文数据与协议内容对应起来,实现了报文数据的可视化,大大地提高了报文数据的可读性,使用户可以通过可视数据快速地对报文数据进行分析,有效地提高报文数据的分析效率。
根据上一个实施例所描述的方法,以下将举例作进一步详细说明。
在本实施例中,将以该报文数据的可视化装置具体集成在电子设备,目标元素具体为目标字段,为例进行说明。
如图2a和图2b所示,一种报文数据的可视化方法,具体流程可以如下:
201、电子设备接收报文数据、以及所述报文数据对应的协议内容。
例如,具体可以利用Tcpdump抓包工具进行抓包,得到的抓包内容如图2c所示,可以从该抓包内容中获取报文数据,并获取所述报文数据对应的协议内容,再将获取到报文数据、以及所述报文数据对应的协议内容输入至电子设备中。比如,在本实施例的可视化工具用户界面(User Interface,UI)中,可以在抓包内容输入框中输入Tcpdump抓包内容中获取到的报文数据,如下所示:
Figure BDA0002716407510000121
具体可以协议内容的输入框中输入如下内容:
Figure BDA0002716407510000122
电子设备接收到报文数据、以及所述报文数据对应的协议内容,可以对该报文数据、以及对应的协议内容中的内容进行分析。
202、电子设备识别所述协议内容中各个目标字段的数据类型。
例如,电子设备具体可以获取所述协议内容的内容主体,所述内容主体包括元素、以及元素与数据类型的映射关系,从所述内容主体中识别出所述协议内容中包含的目标字段,根据所述元素与数据类型的映射关系确定每个目标字段对应的数据类型。比如,协议内容的内容主体具体可以如下所示:
Figure BDA0002716407510000123
比如,从所述内容主体中识别出所述协议内容中包含的目标字段具体有qq、age、sex、phonelen、以及phone。根据所述元素与数据类型的映射关系确定每个目标字段对应的数据类型具体为:qq对应的数据类型是uint32,age对应的数据类型是uint32,sex对应的数据类型是bool,phonelen对应的数据类型是int32,phone对应的数据类型是char[20]。
203、电子设备基于所述各个目标字段的数据类型确定各个目标字段的预定长度。
例如,电子设备具体可以根据所述各个目标字段的数据类型确定所述各个目标字段所占的字节数,基于所述各个目标字段所占的字节数确定各个目标字段的预定长度。比如,目标字段qq的数据类型为uint32时,则该目标字段qq所占的字节数为4字节,则该目标字段qq的预定长度为4字节;目标字段age的数据类型为uint32时,则该目标字段age所占的字节数为4字节,则该目标字段age的预定长度为4字节;目标字段sex的数据类型为bool时,则该目标字段sex所占的字节数为1字节,则该目标字段sex的预定长度为1字节;目标字段phonelen的数据类型为uint32时,则该目标字段phonelen所占的字节数为4字节,则该目标字段phonelen的预定长度为4字节;目标字段phone的数据类型为char[20]时,则该目标字段phone所占的字节数为20字节,则该目标字段phone的预定长度为20字节,具体可以如下表1所示:
表1
字段 类型 长度
qq Uint32 4
age Uint32 4
sex Bool 1
phonelen Uint32 4
phone Char[20] 20
204、电子设备基于所述预定长度计算各个目标字段在所述报文数据中的位置偏移值。
例如,电子设备可以获取所述协议内容对应的协议类型,根据所述协议类型确定所述报文数据的头部预定长度,基于所述报文数据的头部预定长度,确定所述报文数据的包体,则所述基于所述预定长度计算各个目标字段在所述报文数据中的位置偏移值,包括:基于所述预定长度计算各个目标字段在所述报文数据的包体中的位置偏移值。
比如,记报文内容变量pkg,偏移出ip头部20字节,udp报文头部8字节,此后的报文数据即为udp包体,记为udpbody,即udpbody=pkg[28],udpbody的内容为:0001 E240 00000014 0100 0000 0B31 3836 3132 3334 3536 3738 0000 0000 0000 0000 00,即如下粗体所示:
Figure BDA0002716407510000141
例如,电子设备具体可以确定当前目标字段在所述协议内容中所处的位置顺序;当所述当前目标字段为第一个目标字段时,则所述当前目标字段在所述报文数据的包体中的位置偏移值为零;当所述当前目标字段不为第一个目标字段时,则获取上一目标字段的预定长度和上一目标字段的位置偏移值;将上一目标字段的预定长度与上一目标字段的位置偏移值相加,得到所述当前目标字段在所述报文数据的包体中的位置偏移值。比如,当前目标字段为qq,为第一个目标字段时,则当前目标字段qq在所述报文数据的包体中的位置偏移值为0;当前目标字段为age,不为第一个目标字段时,获取到上一目标字段qq的预定长度为4和位置偏移值为0,则当前目标字段在所述报文数据的包体中的位置偏移值为4+0=4;当前目标字段为sex,不为第一个目标字段时,获取到上一目标字段age的预定长度为4和位置偏移值为4,则当前目标字段在所述报文数据的包体中的位置偏移值为4+4=8;当前目标字段为phonelen,不为第一个目标字段时,获取到上一目标字段sex的预定长度为1和位置偏移值为8,则当前目标字段在所述报文数据的包体中的位置偏移值为1+8=9;当前目标字段为phone,不为第一个目标字段时,获取到上一目标字段phonelen的预定长度为4和位置偏移值为9,则当前目标字段在所述报文数据的包体中的位置偏移值为4+9=13;依此类推,计算出来每个目标字段的位置偏移值如下表2所示:
表2
字段 类型 偏移值
qq Uint32 0
age Uint32 4
sex Bool 8
phonelen Uint32 9
phone Char[20] 13
205、电子设备根据各个目标字段的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标字段对应的目标数据。
例如,电子设备具体可以遍历所述报文数据的包体,基于各个目标字段的预定长度以及在所述报文数据的包体中的位置偏移值,根据所述协议内容中目标字段的位置顺序依次确定每个目标字段对应的目标数据,直到所述报文数据的包体遍历完毕。
比如,电子设备可以先根据第一个目标字段的预定长度以及在所述报文数据的包体中的位置偏移值确定第一个目标字段对应的目标数据,然后,根据第二个目标字段的预定长度以及在所述报文数据的包体中的位置偏移值确定第二个目标字段对应的目标数据,接着,根据第三个目标字段的预定长度以及在所述报文数据的包体中的位置偏移值确定第三个目标字段对应的目标数据……直到每个目标字段对应的目标数据都确定完毕,即报文数据的包体遍历完毕。
例如,按协议中字段顺序依次解析udp包内容,直至最后一个字段结束,比如,(1)qq字段查的表1长度为4,查表2偏移为0,即其目标数据应为udpbody[0:3]=0001 E240(即udpbody的第1个字节至第4个字节0001 E240 0000 0014 0100 0000 0B31 3836 31323334 3536 3738 0000 0000 0000 0000 00);
(2)age字段的目标数据为udpbody[4:7]=0000 0014(即udpbody的第4个字节至第8个字节0001 E240 0000 0014 0100 0000 0B31 3836 3132 3334 3536 3738 00000000 0000 0000 00);
(3)sex字段的目标数据为udpbody[8:8]=01(即udpbody的第9个字节0001 E2400000 0014 0100 0000 0B31 3836 3132 3334 3536 3738 0000 0000 0000 0000 00),转成10进制后为sex=1;
(4)phonelen字段的目标数据为udpbody[9:12]=00 0000 0B(即udpbody的第10个字节至13个字节0001 E240 0000 0014 0100 0000 0B31 3836 3132 3334 3536 37380000 0000 0000 0000 00);
(5)phone字段长度为20,其目标数据为udpbody[13:32]=31 3836 3132 33343536 3738 0000 0000 0000 0000 00(即udpbody的第14个字节至第33个字节0001 E2400000 0014 0100 0000 0B31 3836 3132 3334 3536 3738 0000 0000 0000 0000 00);直到所有目标字段确定完毕。
206、电子设备将每个目标字段对应的目标数据转换为符合可视化格式的可视数据。
例如,电子设备可以基于各个目标字段的数据类型,确定所述目标字段对应的转换规则,根据所述转换规则将所述目标字段对应的目标数据转换为符合可视化格式的可视数据。比如,可以判断所述目标字段的数据类型是否为数值类型,若所述目标字段是数值类型,则确定所述目标字段对应的转换规则,根据所述转换规则将所述目标字段对应的目标数据转换为符合可视化格式的可视数据(比如十进制数据),若所述目标字段不是数值类型(比如字符类型),则将目标字段对应的目标数据解析为字符串内容直接输出。
比如,qq字段的目标数据0001E240,转10进制后为123456,所以qq字段的可视数据为123456;age字段的目标数据0000 0014,转10进制后为age=20;sex字段的目标数据01,转10进制后为sex=1;phonelen字段的目标数据00 0000 0B,转成10进制后为phonelen=11;phone字段的目标数据31 3836 3132 3334 3536 3738 0000 0000 0000 0000 00,由于其数据类型为char字符类型,所以解析为字符串内容为186123456789000000000;转换为符合可视化格式的可视数据具体可以如下表3所示:
表3
Figure BDA0002716407510000171
电子设备自动解析报文数据与协议内容的对应关系后,可以输出每个字段对应的具体内容,具体输出可以如下表4所示:
表4
字段
qq 123456
age 20
sex 1
phonelen 11
phone 186123456789
可选的,电子设备可以在确定第一个目标字段对应的目标数据后对该目标数据进行解析,进而转换为符合可视化格式的可视数据,然后再确定下一个目标字段等等。该方案不对所述步骤的先后顺序进行限制。
可选的,利用本方案还可以对别的协议类型进行解析,比如,对于二进制+protobuf组合的协议为例,可以在协议内容的输入框中输入protobuf的定义内容,如下:
Figure BDA0002716407510000172
Figure BDA0002716407510000181
其中,Protobuffer(简称Pb):是google开发的一种独立于语言,独立于平台的数据交换格式。
然后,加入分析protobuf类型的过程,即生成的表1‘类型’列中增加protobuf类型,如表5所示:
表5支持protobuf的协议字段偏移表
字段 类型 偏移值
qq Uint32 0
age Uint32 4
sex Bool 8
phonelen Uint32 9
phone Char[20] 13
Msglen Uint32 33
Msg Protobuf 37
如此,当解析到protobuf类型的报文时,就可以按照protobuf协议去解析,展示的时候就可以按protobuf协议字段展示了。同理,可以使用同样的方法使该方案支持json,XML等协议。
由上可知,本实施例可以通过接收报文数据、以及所述报文数据对应的协议内容,然后,确定所述协议内容中各个目标元素的预定长度,并基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值,接着,根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据,再然后,将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。该方案通过对报文数据与协议内容之间的对应关系进行解析,根据解析结果将报文数据转换为符合可视化格式的可视数据,有效地将报文数据与协议内容对应起来,实现了报文数据的可视化,进而提高报文数据的分析效率。由于该方案提出的基于协议字段内容解析tcpdump抓包内容的方法能快速方便的展示出协议的所有字段值,与原始的只是简单的抓包的十六进制展示相比,数据的可读性大大提高,提升了tcpdump工具的易用性,也提高了tcpdump定位问题的效率,从而也大大提高了利用tcpdump分析问题的效率。
为了更好地实施以上方法,相应的,本申请实施例还提供一种报文数据的可视化装置,该报文数据的可视化装置具体可以集成在终端中,该终端可以包括手机、平板电脑、笔记本电脑以及个人计算机等可以实现报文数据的可视化的设备。
例如,如图3所示,该报文数据的可视化装置可以包括接收单元301、确定单元302、计算单元303、获取单元304和转换单元305,如下:
(1)接收单元301;
接收单元301,用于接收报文数据、以及所述报文数据对应的协议内容。
(2)确定单元302;
确定单元302,用于确定所述协议内容中各个目标元素的预定长度。
可选的,在一些实施例中,所述确定单元302,可以包括识别子单元和确定子单元,如下:
识别子单元,用于识别所述协议内容中各个目标元素的数据类型;
确定子单元,用于基于所述各个目标元素的数据类型确定各个目标元素的预定长度。
可选的,在一些实施例中,所述识别子单元,具体可以用于获取所述协议内容的内容主体,所述内容主体包括元素、以及元素与数据类型的映射关系;从所述内容主体中识别出所述协议内容中包含的目标元素;根据所述元素与数据类型的映射关系确定每个目标元素对应的数据类型。
可选的,在一些实施例中,所述确定子单元,具体可以用于根据所述各个目标元素的数据类型确定所述各个目标元素所占的字节数;基于所述各个目标元素所占的字节数确定各个目标元素的预定长度。
(3)计算单元303;
计算单元303,用于基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值。
可选的,在一些实施例中,所述报文数据的可视化装置,还可以包括处理单元306,如下:
所述处理单元306,具体可以用于获取所述协议内容对应的协议类型;根据所述协议类型确定所述报文数据的头部预定长度;基于所述报文数据的头部预定长度,确定所述报文数据的包体。
可选的,在一些实施例中,所述计算单元303,具体可以用于确定当前目标元素在所述协议内容中所处的位置顺序;当所述当前目标元素为第一个目标元素时,则所述当前目标元素在所述报文数据的包体中的位置偏移值为零;当所述当前目标元素不为第一个目标元素时,则根据上一目标元素的预定长度和位置偏移值,计算所述当前目标元素在所述报文数据的包体中的位置偏移值。
可选的,在一些实施例中,所述计算单元303,具体可以用于获取上一目标元素的预定长度和上一目标元素的位置偏移值;将上一目标元素的预定长度与上一目标元素的位置偏移值相加,得到所述当前目标元素在所述报文数据的包体中的位置偏移值。
(4)获取单元304;
获取单元304,用于根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据。
可选的,在一些实施例中,所述获取单元304,具体可以用于遍历所述报文数据的包体;基于各个目标元素的预定长度以及在所述报文数据的包体中的位置偏移值,根据所述协议内容中目标元素的位置顺序依次确定每个目标元素对应的目标数据,直到所述报文数据的包体遍历完毕。
(5)转换单元305;
转换单元305,用于将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。
可选的,在一些实施例中,所述转换单元305,具体可以用于基于各个目标元素的数据类型,确定所述目标元素对应的转换规则;根据所述转换规则将所述目标元素对应的目标数据转换为符合可视化格式的可视数据。
具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。
由上可知,本实施例中可以由接收单元301接收报文数据、以及所述报文数据对应的协议内容,然后,由确定单元302确定所述协议内容中各个目标元素的预定长度,并由计算单元303基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值,接着,由获取单元304根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据,再然后,由转换单元305将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。该方案可以有效地实现报文数据的可视化,提高报文数据的分析效率。由于该方案通过对报文数据与协议内容之间的对应关系进行一系列解析,最终将报文数据转换为符合可视化格式的可视数据,有效地将报文数据与协议内容对应起来,实现了报文数据的可视化,大大地提高了报文数据的可读性,使用户可以通过可视数据快速地对报文数据进行分析,有效地提高报文数据的分析效率。
此外,本申请实施例还提供一种电子设备,如图4所示,其示出了本申请实施例所涉及的电子设备的结构示意图,具体来讲:
该电子设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图4中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器401是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。
存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。
电子设备还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
该电子设备还可包括输入单元404,该输入单元404可用于接收接收的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号接收。
尽管未示出,电子设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,电子设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:
接收报文数据、以及所述报文数据对应的协议内容,然后,确定所述协议内容中各个目标元素的预定长度,并基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值,接着,根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据,再然后,将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
由上可知,本实施例可以通过接收报文数据、以及所述报文数据对应的协议内容,然后,确定所述协议内容中各个目标元素的预定长度,并基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值,接着,根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据,再然后,将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。该方案可以有效地实现报文数据的可视化,提高报文数据的分析效率。由于该方案通过对报文数据与协议内容之间的对应关系进行一系列解析,最终将报文数据转换为符合可视化格式的可视数据,有效地将报文数据与协议内容对应起来,实现了报文数据的可视化,大大地提高了报文数据的可读性,使用户可以通过可视数据快速地对报文数据进行分析,有效地提高报文数据的分析效率。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本申请实施例还提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本申请实施例所提供的任一种报文数据的可视化方法中的步骤。例如,该指令可以执行如下步骤:
接收报文数据、以及所述报文数据对应的协议内容,然后,确定所述协议内容中各个目标元素的预定长度,并基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值,接着,根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据,再然后,将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该计算机可读存储介质中所存储的指令,可以执行本申请实施例所提供的任一种报文数据的可视化方法中的步骤,因此,可以实现本申请实施例所提供的任一种报文数据的可视化方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
以上对本申请实施例所提供的一种报文数据的可视化方法、装置和计算机可读存储介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (12)

1.一种报文数据的可视化方法,其特征在于,包括:
接收报文数据、以及所述报文数据对应的协议内容;
确定所述协议内容中各个目标元素的预定长度;
基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值;
根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据;
将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。
2.根据权利要求1所述的方法,其特征在于,所述确定所述协议内容中各个目标元素的预定长度,包括:
识别所述协议内容中各个目标元素的数据类型;
基于所述各个目标元素的数据类型确定各个目标元素的预定长度。
3.根据权利要求2所述的方法,其特征在于,所述识别所述协议中各个目标元素的数据类型,包括:
获取所述协议内容的内容主体,所述内容主体包括元素、以及元素与数据类型的映射关系;
从所述内容主体中识别出所述协议内容中包含的目标元素;
根据所述元素与数据类型的映射关系确定每个目标元素对应的数据类型。
4.根据权利要求2所述的方法,其特征在于,所述基于所述各个目标元素的数据类型确定各个目标元素的预定长度,包括:
根据所述各个目标元素的数据类型确定所述各个目标元素所占的字节数;
基于所述各个目标元素所占的字节数确定各个目标元素的预定长度。
5.根据权利要求1至4任一项所述的方法,其特征在于,所述基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值之前,还包括:
获取所述协议内容对应的协议类型;
根据所述协议类型确定所述报文数据的头部预定长度;
基于所述报文数据的头部预定长度,确定所述报文数据的包体;
所述基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值,包括:基于所述预定长度计算各个目标元素在所述报文数据的包体中的位置偏移值。
6.根据权利要求5所述的方法,其特征在于,所述基于所述预定长度计算各个目标元素在所述报文数据的包体中的位置偏移值,包括:
确定当前目标元素在所述协议内容中所处的位置顺序;
当所述当前目标元素为第一个目标元素时,则所述当前目标元素在所述报文数据的包体中的位置偏移值为零;
当所述当前目标元素不为第一个目标元素时,则根据上一目标元素的预定长度和位置偏移值,计算所述当前目标元素在所述报文数据的包体中的位置偏移值。
7.根据权利要求6所述的方法,其特征在于,所述根据上一目标元素的预定长度和位置偏移值,计算所述当前目标元素在所述报文数据的包体中的位置偏移值,包括:
获取上一目标元素的预定长度和上一目标元素的位置偏移值;
将上一目标元素的预定长度与上一目标元素的位置偏移值相加,得到所述当前目标元素在所述报文数据的包体中的位置偏移值。
8.根据权利要求5所述的方法,其特征在于,所述根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据,包括:
遍历所述报文数据的包体;
基于各个目标元素的预定长度以及在所述报文数据的包体中的位置偏移值,根据所述协议内容中目标元素的位置顺序依次确定每个目标元素对应的目标数据,直到所述报文数据的包体遍历完毕。
9.根据权利要求2至4任一项所述的方法,其特征在于,所述将每个目标元素对应的目标数据转换为符合可视化格式的可视数据,包括:
基于各个目标元素的数据类型,确定所述目标元素对应的转换规则;
根据所述转换规则将所述目标元素对应的目标数据转换为符合可视化格式的可视数据。
10.一种报文数据的可视化装置,其特征在于,包括:
接收单元,用于接收报文数据以及所述报文数据对应的协议内容;
确定单元,用于确定所述协议内容中各个目标元素的预定长度;
计算单元,用于基于所述预定长度计算各个目标元素在所述报文数据中的位置偏移值;
获取单元,用于根据各个目标元素的预定长度以及在所述报文数据中的位置偏移值,从所述报文数据中获取每个目标元素对应的目标数据;
转换单元,用于将每个目标元素对应的目标数据转换为符合可视化格式的可视数据。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至9中任一项所述的报文数据的可视化方法中的步骤。
12.一种电子设备,包括存储器,处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,所述处理器执行所述程序时实现如权利要求1至9任一项所述方法的步骤。
CN202011075064.XA 2020-10-09 2020-10-09 报文数据的可视化方法、装置和计算机可读存储介质 Active CN112291202B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011075064.XA CN112291202B (zh) 2020-10-09 2020-10-09 报文数据的可视化方法、装置和计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011075064.XA CN112291202B (zh) 2020-10-09 2020-10-09 报文数据的可视化方法、装置和计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN112291202A true CN112291202A (zh) 2021-01-29
CN112291202B CN112291202B (zh) 2023-09-26

Family

ID=74422466

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011075064.XA Active CN112291202B (zh) 2020-10-09 2020-10-09 报文数据的可视化方法、装置和计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN112291202B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5916305A (en) * 1996-11-05 1999-06-29 Shomiti Systems, Inc. Pattern recognition in data communications using predictive parsers
CN101296227A (zh) * 2008-06-19 2008-10-29 上海交通大学 基于报文偏移量匹配的IPSec VPN协议深度检测方法
US20090327511A1 (en) * 2008-06-27 2009-12-31 Woo Sung Kim Message conversion apparatus for integrated monitoring of industrial equipment
CN108933784A (zh) * 2018-06-26 2018-12-04 北京威努特技术有限公司 一种工控协议解码规则的表述及优化解码方法
CN109327357A (zh) * 2018-11-29 2019-02-12 杭州迪普科技股份有限公司 应用软件的特征提取方法、装置及电子设备
CN110012031A (zh) * 2019-04-26 2019-07-12 中国电子科技集团公司第二十九研究所 数据报文通用自动解析方法和存储方法
CN110012002A (zh) * 2019-03-29 2019-07-12 深圳智链物联科技有限公司 报文解析方法、装置及服务器、计算机可读存储介质
CN110287247A (zh) * 2019-05-22 2019-09-27 平安银行股份有限公司 基于银联系统的数据存储方法、装置、设备及存储介质

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5916305A (en) * 1996-11-05 1999-06-29 Shomiti Systems, Inc. Pattern recognition in data communications using predictive parsers
CN101296227A (zh) * 2008-06-19 2008-10-29 上海交通大学 基于报文偏移量匹配的IPSec VPN协议深度检测方法
US20090327511A1 (en) * 2008-06-27 2009-12-31 Woo Sung Kim Message conversion apparatus for integrated monitoring of industrial equipment
CN108933784A (zh) * 2018-06-26 2018-12-04 北京威努特技术有限公司 一种工控协议解码规则的表述及优化解码方法
CN109327357A (zh) * 2018-11-29 2019-02-12 杭州迪普科技股份有限公司 应用软件的特征提取方法、装置及电子设备
CN110012002A (zh) * 2019-03-29 2019-07-12 深圳智链物联科技有限公司 报文解析方法、装置及服务器、计算机可读存储介质
CN110012031A (zh) * 2019-04-26 2019-07-12 中国电子科技集团公司第二十九研究所 数据报文通用自动解析方法和存储方法
CN110287247A (zh) * 2019-05-22 2019-09-27 平安银行股份有限公司 基于银联系统的数据存储方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN112291202B (zh) 2023-09-26

Similar Documents

Publication Publication Date Title
US11310313B2 (en) Multi-threaded processing of search responses returned by search peers
US10824537B2 (en) Method, device, and computer readable medium for tracing computing system
CN111193633B (zh) 异常网络连接的检测方法及装置
US11188443B2 (en) Method, apparatus and system for processing log data
CN107347062A (zh) 一种日志数据处理的方法、电子设备和可读存储介质
US10623450B2 (en) Access to data on a remote device
CN113596017B (zh) 一种协议解析方法、装置、软网关和存储介质
CN111385147A (zh) 故障模拟方法、装置和计算机可读存储介质
CN112445700A (zh) 测试方法和装置
CN112507005A (zh) 一种处理报文的方法和装置
CN104052679A (zh) 网络流量的负载均衡方法和装置
US11064021B2 (en) Method, device and computer program product for managing network system
CN109388388B (zh) 功能模块间的信息交互方法、装置、设备及存储介质
CN114500633A (zh) 数据转发方法、相关装置、程序产品及数据传输系统
CN112417016B (zh) 一种数据交换方法、系统、设备及存储介质
CN108460044B (zh) 数据的处理方法和装置
CN109710502A (zh) 日志传输方法、装置及存储介质
CN112883088B (zh) 一种数据处理方法、装置、设备及存储介质
CN112822204A (zh) 一种nat的检测方法、装置、设备及介质
Hietala et al. GraphQL interface for OPC UA
CN112291202B (zh) 报文数据的可视化方法、装置和计算机可读存储介质
CA3022435A1 (en) Adaptive event aggregation
KR101345095B1 (ko) 클러스터 환경 기반의 bgp 라우팅 정보 분석 방법 및 시스템
US20240179178A1 (en) Control method and apparatus, computing device, and computer-readable storage medium
EP4319094A1 (en) Control method and apparatus, and computing device

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