基于Wireshark的协议解析器开发研究和实现.docVIP

基于Wireshark的协议解析器开发研究和实现.doc

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

基于Wireshark的协议解析器开发研究和实现   摘 要: 在分析Wireshark体系结构和功能的基础上,研究了Wireshark环境下协议解析器开发的方法和流程,以一个简单的私有协议amin进行了验证性开发,实验结果说明Wireshark的开放性架构有效的满足了新解析插件添加和对新协议的分析。对业界非标准新协议的拓展研究有借鉴意义。   关键词: Wireshark; 协议解析; 插件开发; 网络协议   中图分类号:TP393 文献标志码:A 文章编号:1006-8228(2015)06-13-03   Abstract: The Wiresharks function, architecture, components are analyzed, and the method and process of protocol parser development is also studied. At the same time, a validation of development has been done on a simple protocol Amin. Experimental results show that the open architecture of Wireshark is effective to a newly added protocol parser plug-ins and to new protocol parsing, this paper provided a reference for the expanded research of non-standard protocol.   Key words: Wireshark; protocol parsing; plug-in development; network protocol   0 引言   网络协议分析软件的功能是撷取网络数据包的协议头及相关负载信息,通过分析,尽可能为用户显示出最为详细的网络协议资料,从而了解信息及相关数据包在产生和传输中的行为。由于网络协议层出不穷,一个好的网络协议分析软件必须既能对标准协议进行有效分析,又能提供接口允许用户添加新的协议解析方法[1]。Wireshark(前称Ethereal)是目前应用最广泛的网络协议分析软件之一,由密苏里大学计算机专业的Gerald combs出于项目需要而开发,于1998年以GPL开源许可证发布,Wireshark的使用者可以免费取得该软件和其源代码,并根据自身协议解析的需求对其进行定制和扩展。   本文在分析Wireshark的系统结构的基础上,研究了Wireshark的开发环境,方法和步骤,并进行了新协议解析插件开发验证,为新协议的拓展研究打下基础。   1 Wireshark体系结构分析   Wireshark的结构主要由Capture Core、win-/libpcap、WireTap、Dissector几个核心模块构成。综合调度模块Capture Core调用底层抓包工具win-/libpcap获得网络数据,并调用磁盘读写包模块WireTap写入本地磁盘。因为数据是二进制文件,所以必须调用解析器模块Dissector对二进制数据进行协议解读,并把协议部分的各个字段信息进行详细地呈现。解析器Dissector的核心工作就在于数据包详细内容窗口部分的树形结构的维护,并结合过滤器、数据包列表等部分,进行筛选与信息的呈现。当用户需要对新协议进行开发,实质上就是对Dissector进行拓展,Dissector可以是内置形式的(Build-in),也可以是插件形式的(Plug-in),所以,基于Wireshark的协议解析器开发有两种模式,即:Build-in、Plug-in[2]。其系统结构如图1所示。   2 Wireshark开发环境设置   在Windows环境下进行Wireshark开发需要的工具有:   ⑴ Visual C++ 2005 Express Edition(C编译器);   ⑵ Cygwin(一个Win32上的仿Unix平台);   ⑶ Python(一种面向对象的高级脚本语言);   ⑷ Subvertion Client(TortoiseSVN)(可选);   ⑸ Wireshark依赖的开发包。   安装步骤及开发环境设置如下[3]。   ⑴ 安装VS2005/VS2003 等C语言编译器,同时必须确认下载并安装本操作系统的SDK。   ⑵ 安装Cygwin,在Wireshark插件开发中需要用到的安装包有:Archive/unzip、Devel/bison、Devel/f

文档评论(0)

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

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

1亿VIP精品文档

相关文档