pcap包解析_原创精品文档.pdfVIP

  1. 1、本文档共29页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

从pcap文件中析取所有TCP会话与UDP会话

,****************,tel,1205班)执笔100%签字

摘要:本项目主要针对的是对于单一网络节点,.pcap文件是二进制格式的网

络轨迹(Networktrace)文件,记录了网络通信过程的数据包信息。csv(comma

separatedvalues)是一种用逗号,分隔的文本文件,类似于excel文件。.pcap

文件是二进制文件,需要从中提取信息并以csv的格式进行存储。可以使用tshark

实现对.pcap文件进行分析。

关键词:TCP/UDP协议,数据包,文件,IP包

1.引言

要对整个pcap文件进行操作,就必须先对pcap文件进行解析,析取pcap文件

中所有的TCP会话和UDP会话。HTTP使用TCP而不是UDP的原因在于(打开)一个

网页必须传送很多数据,而TCP协议提供传输控制,按顺序组织数据,和错误纠正。

所以在做http重组之前,对pcap文件中TCP会话与UDP会话的提取非常的关键。

2.项目问题分析与解决问题的算法

Pcap文件结构:

(1)基本格式:

文件头数据包头数据报数据包头数据报

(2)文件头:

图1pcap文件头

a、标识位:32位的,这个标识位的值是16进制的0xa1b2c3d4。

b、主版本号:16位,默认值为0x2。

c、副版本号:16位,默认值为0x04。

d、区域时间:32位,实际上该值并未使用,因此可以将该位设置为0。

e、精确时间戳:32位,实际上该值并未使用,因此可以将该值设置为0。

f、数据包最大长度:32位,该值设置所抓获的数据包的最大长度,如果所有

数据包都要抓获,将该值设置为65535;例如:想获取数据包的前64字节,可将该

值设置为64。

g、链路层类型:32位,数据包的链路层包头决定了链路层的类型。

3)pcap数据包头:

图2pcap数据包头

、时间戳,包括:

秒计时:32位,一个UNIX格式的精确到秒时间值,用来记录数据包抓获的时

间,记录方式是记录从格林尼治时间的1970年1月1日00:00:00到抓包时经过的

秒数;

微秒计时:32位,抓取数据包时的微秒值。

b、数据包长度:32位,标识所抓获的数据包保存在pcap文件中的实际长度,

以字节为单位。

c、数据包实际长度:所抓获的数据包的真实长度,如果文件中保存不是完整

的数据包,那么这个值可能要比前面的数据包长度的值大。

4)pcap数据:

即Packet(通常就是链路层的数据帧)具体内容,长度就是Caplen,这个长

度的后面,就是当前PCAP文件中存放的下一个Packet数据包,也就是说:PCAP文

件里面并没有规定捕获的Packet数据包之间有什么间隔字符串,下一组数据在文件

中的起始位置。我们需要靠第一个Packet包确定。

(5)读取时进制转换问题:

importjava.util.List;

publicclassPcap{

privatePcapHeaderheader;

privateListPcapDatadata;

publicPcapHeadergetHeader(){

returnheader;

}

publicvoidsetHeader(PcapHeaderheader){

this.he

文档评论(0)

***** + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档