CN110704649B - 一种用于构建流量图像数据集的方法及系统 - Google Patents
一种用于构建流量图像数据集的方法及系统 Download PDFInfo
- Publication number
- CN110704649B CN110704649B CN201910810810.6A CN201910810810A CN110704649B CN 110704649 B CN110704649 B CN 110704649B CN 201910810810 A CN201910810810 A CN 201910810810A CN 110704649 B CN110704649 B CN 110704649B
- Authority
- CN
- China
- Prior art keywords
- data
- file
- data packet
- pcap
- packet
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/50—Information retrieval; Database structures therefor; File system structures therefor of still image data
- G06F16/51—Indexing; Data structures therefor; Storage structures
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本发明公开了一种用于构建流量图像数据集的方法及系统,包括:读取Pcap源文件,解析并过滤PCAP文件的前24个字节,代表文件头相关信息;按照Pcap包的分组信息解析各组流量信息;解析出来的信息需要经过字符串分割、正则匹配、进制转换后,将所有字节信息按照对应分组编号保存至对应txt文件;读取生成的txt文件,生成成灰度图。将Pcap包转为图像后便可将其制作成类似MNIST手写体的数据集。本发明通过对Pcap文件和数据包格式的解析,实现将Pcap文件转换为灰度图,该图可用建立深度学习模型训练的数据集,提高了流量识别在深度学习领域的适用性。
Description
技术领域
本发明涉及一种用于构建流量图像数据集的方法,属于流量识别在深度学习领域的应用。
背景技术
深度模型强大的学习能力和特征表达能力,使得其语音识别、自然语言处理、计算机视觉、图像与视频分析等诸多领域的应用取得了巨大成功。在图像识别上的优势决定了大多数深度模型的输入都是图像。这就导致流量识别的研究人员在学习过程中需要对模型做大量修改,模型的修改需要有较全面的数学知识,大大提高了研究的门槛和研究的工作量。因此需要一种可以将Pcap数据包转为图像的方法来简化研究工作。
发明内容
发明目的:为了克服现有技术中存在的不足,本发明提供一种用于构建流量图像数据集的方法,解决现有研究方法需要较全面的数学知识对模型做大量修改的问题。
技术方案:为实现上述目的,本发明采用的技术方案为:
一种用于构建流量图像数据集的方法,通过将PCAP数据包中的分组信息转换成灰度图像,方便了流量识别在现有的图像识别领域经典的深度学习方法中的应用。包括步骤:读取Pcap源文件,解析并过滤PCAP文件的前24个字节,代表文件头相关信息;按照Pcap包的分组信息解析各组流量信息,首先需要解析出数据包头中的”Len”字段,该字段表示对应分组的数据包长度,以此来获取一个分组的完整信息;解析出来的信息需要经过字符串分割、正则匹配、进制转换后,将所有字节信息按照对应分组编号保存至对应txt文件;所有分组信息处理完成后,开始读取生成的txt文件,根据数据包规则,顺序将每两个十六进制字符转为十进制,转换后字节范围在0到255内,0对应黑色,255对应白色,转换后字节被存入数组中,数组中的一个元素对应图片中的一个像素点,按照这个规则将分组信息转换成灰度图。将Pcap包转为图像后便可将其制作成类似MNIST手写体的数据集,并在深度学习模型中适用。
具体包括以下步骤:
步骤一、获取Pcap文件,读取Pcap文件,解析出数据包的前24个文件头结构,并建立标记位(flag)进行数据包分组,同时将文件头过滤;
步骤二、根据数据包的格式,各分组前24个字节为包头,包含文件信息,解析出其中的”Len”字段,即数据包长度,根据步骤一中的标记位,截取出该分组的全部数据包,统计完整数据包分组的计算公式为:flag+24+Len;按照数据包分组对Pcap文件进行解析;
步骤三、对步骤二中得到的分组信息,首先根据十六进制标识符将数据分割,得到一个List,遍历List中的每个元素,根据正则匹配将不符合规则的Ascii码转为十六进制数据,最后将所有数据根据分组编号存入对应的txt文件中,该文件中全部为十六进制数据;
步骤四、步骤三完成后将一个Pcap文件按照分组解析成多个txt文件,根据数据包规则,一个字节中包含两个十六进制字符,顺序读取txt文件中的两个字符并转为十进制,转换后的数字范围在0到255之间,0对应黑色,255对应白色,转换后字节被存入数组中,数组中的一个元素对应图片中的一个像素点,按照这个规则将分组信息转换成灰度图;
步骤五、根据步骤四中生成的灰度图建立数据集。
进一步地,作为本发明的一种优选技术方案:将Pcap文件产生的乱码转为正常的十六进制数据时;识别出数据包中的换行符,在步骤四保存数组时根据换行符进行换行处理;对多余的数据进行截断处理,不足的数据补为0。
进一步地,作为本发明的一种优选技术方案:所述步骤四中描述的保存十进制数据的数组为二维数组,根据需求定义不同形状的数组从而生成不同尺寸的图片。
一种用于构建流量图像数据集的系统,包括输入模块、解析标记位模块、数据包分组模块、txt文件生成模块、分组信息转成灰度图生成模块、数据集生成模块,其中:
所述输入模块用于输入Pcap文件;
所述解析标记位模块用于解析出Pcap文件数据包的前24个文件头结构,并建立标记位(flag)进行数据包分组,同时将文件头过滤;
所述数据包分组模块用于根据数据包的格式,各分组前24个字节为包头,包含文件信息,解析出其中的”Len”字段,即数据包长度,根据步骤一中的标记位,截取出该分组的全部数据包,统计完整数据包分组的计算公式为:flag+24+Len;按照数据包分组对Pcap文件进行解析;
所述txt文件生成模块用于根据得到的分组信息,首先根据十六进制标识符将数据分割,得到一个List,遍历List中的每个元素,根据正则匹配将不符合规则的Ascii码转为十六进制数据,最后将所有数据根据分组编号存入对应的txt文件中,该文件中全部为十六进制数据;
所述分组信息转成灰度图生成模块用于将一个Pcap文件按照分组解析成多个txt文件,根据数据包规则,一个字节中包含两个十六进制字符,顺序读取txt文件中的两个字符并转为十进制,转换后的数字范围在0到255之间,0对应黑色,255对应白色,转换后字节被存入数组中,数组中的一个元素对应图片中的一个像素点,按照这个规则将分组信息转换成灰度图;
所述数据集生成模块用于根据生成的灰度图建立数据集。
本发明相比现有技术,具有以下有益效果:
本发明提供一种用于构建流量图像数据集的方法,该方法通过将Pcap源数据在经过分割、乱码解析等处理后,由十六进制转换为十进制;将十进制数据存入二维数组中,使数组中的每一个元素对应图片中的一个像素,且像素点取值范围在0到255之间,0对应黑色,255对应白色;通过上述规则将二维数组转换为图片,进而将图片制成数据集。
本发明方法创新性的提出一种用于构建流量图像数据集的方法,该方法通过将Pcap数据包转为图像,进而根据生成的灰度图建立数据集。建立的数据集可以直接适用于现有各类图像识别深度学习模型,大大减少流量识别研究人员工作量。
附图说明
图1为本发明基于Pcap数据包的深度学习数据集建立方法的流程示意图。
图2为本发明中数据包转换成图像的效果示意图。
具体实施方式
下面结合附图和具体实施例,进一步阐明本发明,应理解这些实例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
如图1所示,本发明设计了一种用于构建流量图像数据集的方法,包括以下步骤:
步骤一、读取Pcap文件,解析出Pcap文件数据包的前24个文件头结构,并建立标记位(flag)将文件头过滤。
步骤二、根据数据包的格式,各分组前24个字节为包头,包含文件信息,解析出其中的”Len”字段,即数据包长度,根据步骤一中的标记位,截取出该分组的全部数据包,即:flag+24+Len;按照数据包分组对Pcap文件进行解析。
步骤三、对步骤二中得到的分组信息,首先根据十六进制标识符将数据分割,得到一个List,遍历List中的每个元素,根据正则匹配将不符合规则的Ascii码转为十六进制数据,最后将所有数据根据分组编号存入对应的txt文件中,该文件中全部为十六进制数据;
步骤四、步骤三完成后将一个Pcap包按照分组解析成多个txt文件,根据数据包规则,一个字节中包含两个十六进制字符,顺序读取txt文件中的两个字符并转为十进制,转换后的十进制范围在0到255之间,0对应黑色,255对应白色,转换后字节被存入数组中,数组中的一个元素对应图片中的一个像素点,按照这个规则将分组信息转换成灰度图。
在步骤三中将直接读取Pcap文件产生的乱码转为了正常的十六进制数据;识别出数据包中的换行符,在步骤四保存数组时根据换行符进行换行处理;对多余的数据进行截断处理,不足的数据补为0。
步骤四中描述的保存十进制数据的数组为二维数组,根据需求可定义不同形状的数组从而生成不同尺寸的图片。
步骤五、通过步骤四中生成的灰度图建立数据集。
一种用于构建流量图像数据集的系统,包括输入模块、解析标记位模块、数据包分组模块、txt文件生成模块、分组信息转成灰度图生成模块、数据集生成模块,其中:
所述输入模块用于输入Pcap文件;
所述解析标记位模块用于解析出Pcap文件数据包的前24个文件头结构,并建立标记位(flag)进行数据包分组,同时将文件头过滤;
所述数据包分组模块用于根据数据包的格式,各分组前24个字节为包头,包含文件信息,解析出其中的”Len”字段,即数据包长度,根据步骤一中的标记位,截取出该分组的全部数据包,统计完整数据包分组的计算公式为:flag+24+Len;按照数据包分组对Pcap文件进行解析;
所述txt文件生成模块用于根据得到的分组信息,首先根据十六进制标识符将数据分割,得到一个List,遍历List中的每个元素,根据正则匹配将不符合规则的Ascii码转为十六进制数据,最后将所有数据根据分组编号存入对应的txt文件中,该文件中全部为十六进制数据;
所述分组信息转成灰度图生成模块用于将一个Pcap文件按照分组解析成多个txt文件,根据数据包规则,一个字节中包含两个十六进制字符,顺序读取txt文件中的两个字符并转为十进制,转换后的数字范围在0到255之间,0对应黑色,255对应白色,转换后字节被存入数组中,数组中的一个元素对应图片中的一个像素点,按照这个规则将分组信息转换成灰度图;
所述数据集生成模块用于根据生成的灰度图建立数据集。
如图2所示,本发明中数据包转换成图像的效果示意图。
本发明将Pcap包转为图像后便可将其制作成类似MNIST手写体的数据集,并在深度学习模型中适用。本发明通过对Pcap文件和数据包格式的解析,实现将Pcap文件转换为灰度图,该图可用建立深度学习模型训练的数据集,提高了流量识别在深度学习领域的适用性,本方法建立的数据集可以直接适用于现有各类图像识别深度学习模型,大大减少流量识别研究人员工作量。
以上所述仅是本发明的优选实施方式,应当指出:对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
Claims (4)
1.一种用于构建流量图像数据集的方法,其特征在于,包括以下步骤:
步骤一、获取Pcap文件,读取Pcap文件,解析出Pcap文件数据包的前24个文件头结构,并建立标记位flag进行数据包分组,同时将文件头过滤;
步骤二、根据数据包的格式,各分组前24个字节为包头,包含文件信息,解析出其中的“Len”字段,即数据包长度,根据步骤一中的标记位,截取出该分组的全部数据包,统计完整数据包分组的计算公式为:flag+24+Len;按照数据包分组对Pcap文件进行解析;
步骤三、对步骤二中得到的分组信息,首先根据十六进制标识符将数据分割,得到一个List,遍历List中的每个元素,根据正则匹配将不符合规则的Ascii码转为十六进制数据,最后将所有数据根据分组编号存入对应的txt文件中,该文件中全部为十六进制数据;
步骤四、步骤三完成后将一个Pcap文件按照分组解析成多个txt文件,根据数据包规则,一个字节中包含两个十六进制字符,顺序读取txt文件中的两个字符并转为十进制,转换后的数字范围在0到255之间,0对应黑色,255对应白色,转换后字节被存入数组中,数组中的一个元素对应图片中的一个像素点,按照这个规则将分组信息转换成灰度图;
步骤五、根据步骤四中生成的灰度图建立数据集。
2.根据权利要求1所述用于构建流量图像数据集的方法,其特征在于:将Pcap文件产生的乱码转为正常的十六进制数据时;识别出数据包中的换行符,在步骤四保存数组时根据换行符进行换行处理;对多余的数据进行截断处理,不足的数据补为0。
3.根据权利要求2所述用于构建流量图像数据集的方法,其特征在于:所述步骤四中描述的保存十进制数据的数组为二维数组,根据需求定义不同形状的数组从而生成不同尺寸的图片。
4.一种用于构建流量图像数据集的系统,其特征在于:包括输入模块、解析标记位模块、数据包分组模块、txt文件生成模块、分组信息转成灰度图生成模块、数据集生成模块,其中:
所述输入模块用于输入Pcap文件;
所述解析标记位模块用于解析出Pcap文件数据包的前24个文件头结构,并建立标记位flag进行数据包分组,同时将文件头过滤;
所述数据包分组模块用于根据数据包的格式,各分组前24个字节为包头,包含文件信息,解析出其中的“Len”字段,即数据包长度,根据所述标记位,截取出该分组的全部数据包,统计完整数据包分组的计算公式为:flag+24+Len;按照数据包分组对Pcap文件进行解析;
所述txt文件生成模块用于根据得到的分组信息,首先根据十六进制标识符将数据分割,得到一个List,遍历List中的每个元素,根据正则匹配将不符合规则的Ascii码转为十六进制数据,最后将所有数据根据分组编号存入对应的txt文件中,该文件中全部为十六进制数据;
所述分组信息转成灰度图生成模块用于将一个Pcap文件按照分组解析成多个txt文件,根据数据包规则,一个字节中包含两个十六进制字符,顺序读取txt文件中的两个字符并转为十进制,转换后的数字范围在0到255之间,0对应黑色,255对应白色,转换后字节被存入数组中,数组中的一个元素对应图片中的一个像素点,按照这个规则将分组信息转换成灰度图;
所述数据集生成模块用于根据生成的灰度图建立数据集。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910810810.6A CN110704649B (zh) | 2019-08-29 | 2019-08-29 | 一种用于构建流量图像数据集的方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910810810.6A CN110704649B (zh) | 2019-08-29 | 2019-08-29 | 一种用于构建流量图像数据集的方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110704649A CN110704649A (zh) | 2020-01-17 |
CN110704649B true CN110704649B (zh) | 2022-09-02 |
Family
ID=69193965
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910810810.6A Active CN110704649B (zh) | 2019-08-29 | 2019-08-29 | 一种用于构建流量图像数据集的方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110704649B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111343182B (zh) * | 2020-02-26 | 2021-08-10 | 电子科技大学 | 一种基于灰度图的异常流量检测方法 |
CN111526099B (zh) * | 2020-03-25 | 2022-08-16 | 华东师范大学 | 基于深度学习的物联网应用流量检测方法 |
CN112559832B (zh) * | 2020-12-10 | 2023-08-04 | 上海阅维科技股份有限公司 | 对加密通道中传输的二次加密流量进行分类的方法 |
CN112633475A (zh) * | 2020-12-21 | 2021-04-09 | 浙江科技学院 | 大规模网络突发流量识别模型、方法及模型的训练方法 |
CN114615172B (zh) * | 2022-03-22 | 2024-04-16 | 中国农业银行股份有限公司 | 流量检测方法及系统、存储介质及电子设备 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106790019A (zh) * | 2016-12-14 | 2017-05-31 | 北京天融信网络安全技术有限公司 | 基于特征自学习的加密流量识别方法及装置 |
CN109919883A (zh) * | 2018-12-03 | 2019-06-21 | 南京三宝科技股份有限公司 | 一种基于灰度转换的交通视频数据获取方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10325348B2 (en) * | 2017-10-24 | 2019-06-18 | Mastercard International Incorporated | Method and system for generation of vector graphics |
-
2019
- 2019-08-29 CN CN201910810810.6A patent/CN110704649B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106790019A (zh) * | 2016-12-14 | 2017-05-31 | 北京天融信网络安全技术有限公司 | 基于特征自学习的加密流量识别方法及装置 |
CN109919883A (zh) * | 2018-12-03 | 2019-06-21 | 南京三宝科技股份有限公司 | 一种基于灰度转换的交通视频数据获取方法 |
Non-Patent Citations (1)
Title |
---|
基于卷积神经网络的网络流量识别技术研究;李勤 等;《四川大学学报》;20170930;第54卷(第5期);第959-964页 * |
Also Published As
Publication number | Publication date |
---|---|
CN110704649A (zh) | 2020-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110704649B (zh) | 一种用于构建流量图像数据集的方法及系统 | |
WO2020140386A1 (zh) | 基于TextCNN知识抽取方法、装置、计算机设备及存储介质 | |
CN113239954B (zh) | 基于注意力机制的图像语义分割特征融合方法 | |
CN110570481A (zh) | 基于风格迁移的书法字库自动修复方法及系统 | |
CN111107107B (zh) | 网络行为的检测方法、装置、计算机设备和存储介质 | |
CN109033833B (zh) | 一种基于多特征与特征选择的恶意代码分类方法 | |
CN105117740A (zh) | 字体识别方法及装置 | |
CN112347288B (zh) | 一种字图的矢量化方法 | |
CN110765740A (zh) | 一种基于dom树的全类型文本替换方法、系统、装置及存储介质 | |
CN111368695A (zh) | 一种表格结构提取方法 | |
CN108399335B (zh) | 一种基于局部熵的恶意代码可视化分析方法 | |
CN113205160A (zh) | 模型训练、文本识别方法、装置、电子设备和介质 | |
CN112887291A (zh) | 基于深度学习的i2p流量识别方法及系统 | |
CN113656547A (zh) | 文本匹配方法、装置、设备及存储介质 | |
CN114095447B (zh) | 一种基于知识蒸馏与自蒸馏的通信网络加密流量分类方法 | |
CN113780276B (zh) | 一种结合文本分类的文本识别方法及系统 | |
CN111275049A (zh) | 一种文字图像骨架特征描述符获取的方法及装置 | |
CN113723410A (zh) | 一种数码管数字识别方法及装置 | |
CN107688744A (zh) | 基于图像特征匹配的恶意文件分类方法及装置 | |
CN113283231B (zh) | 获取签章位的方法、设置系统、签章系统及存储介质 | |
CN115661904A (zh) | 数据标注和域适应模型训练方法、装置、设备及介质 | |
CN115292702A (zh) | 一种恶意代码家族的识别方法、装置、设备及存储介质 | |
CN114943306A (zh) | 意图分类方法、装置、设备及存储介质 | |
CN112580505A (zh) | 网点开关门状态识别方法、装置、电子设备及存储介质 | |
CN107402974B (zh) | 基于多种二进制HoG描述符的草图检索方法 |
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 |