报文批量处理方法简介

栏目: 编程工具 · 发布时间: 6年前

内容简介:有这样一个场景,有一大堆历史报文,但是这些报文中有很多无用的流量,我需要把这些有用的流量提取出来以一个报文形式进行存储。在Linux上处理的脚本如下:这里面主要运用到如下的命令:1,find命令,该命令主要用于文件的遍历,

有这样一个场景,有一大堆历史报文,但是这些报文中有很多无用的流量,我需要把这些有用的流量提取出来以一个报文形式进行存储。在 Linux 上处理的脚本如下:

#!/bin/bash
find allPcap -name '*.pcap' > pcapFileName.txt
fileDic="newPcap"
mkdir -p $fileDic
while read LINE
do
  echo ${LINE##*/}
  echo $LINE
  tshark -r $LINE -Y "http.host contains \"baidu\"" -w $fileDic/${LINE##*/}

 done < pcapForFileName.txt

mergecap -w newBigPcap.pcap $fileDic"/*.pcap"
reordercap -n newBigPcap.pcap newBigPcap_in_order.pcap

这里面主要运用到如下的命令:

1,find命令,该命令主要用于文件的遍历, find allPcap -name '*.pcap' > pcapFileName.txt ,即将allPcap目录下面所有的以.pcap结尾的文件名输入到pcapFileName.txt文件中,同时find支持递归。

2,tshark命令,该命令是wireshark这个图形化分析 工具 的命令行版本,在windows和linux均可以使用。本人习惯在linux使用,值的注意的是在centos上面使用 yum install wireshark 就会自动的安装tshark,但是由于一般的yum源的wireshark版本还都是停留在1.X的版本。我一般是到wireshark的官网下载源码,进行编译安装,安装的一些事项我在这里也有提及。因为tshark的一些特性在高版本会有些优化,同时 lua 也只有在1.10之后的版本才会支持。

3,mergecap 命令,该命令将fileDic文件下新生成的所有pcap文件进行合并生成一个新的pcap文件newBigPcap.pcap。该命令的作用是将pcap文件进行简单的拼接,并不会按照时间进行排序。

4,reordercap的作用是对pcap报文按照时间进行排序。newBigPcap.pcap 为输入的文件,而newBigPcap_in_order.pcap则为按时间戳增长之后的文件。

以上的工具都是wireshark所提供的使用频率比较高的工具,比如tshark,mergecap 以及reordercap,可以看到这些工具都是按照报文为单位进行处理的。如果对报文进行排序,比如按照流进行排序,由于wireshark没有提供类似的工具,而且着属于单片报文粒度的操作,这个时候就只能借助于wireshark的插件功能。关于wireshark的lua插件功能,可以参照 这里

5,当然,脚本中所用到的关于while循环以及 ${LINE##*/} 这样的字符串截取的操作是属于 shell 的一些基础知识,不再赘述。

综上可以看出利用wireshark提供的工具以及shell脚本能够很方便的处理大量的报文,当然如果追求速度的话,可以在多个 docker 中运行该脚本,就相当于堆机器。如果对于速度追求更高,那就只能够使用C语言+libpcap,但是一系列的解码会导致工作量增加。

本文为CSDN村中少年原创文章,转载记得加上小尾巴偶,博主链接这里。


以上所述就是小编给大家介绍的《报文批量处理方法简介》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

枕边算法书

枕边算法书

[韩] 林栢濬 / 崔盛一 / 人民邮电出版社 / 2018-3 / 45.00元

本书第1章重点讲解各种常见算法,第2章主要介绍几种相对少见的算法,第3章和第4章探究其他程序员编写的代码,从中总结优秀算法应具备的特点,以及高级程序员应当持有的态度和必须培养的能力。书中以日常对话般浅显的叙述方式,帮助专业开发人员、刚刚踏入软件开发和编程门槛的初学者体会程序设计的创造性和成就感。一起来看看 《枕边算法书》 这本书的介绍吧!

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具