基于PACKETX网络数据包捕获与分析.docVIP

  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文档。上传文档
查看更多
基于PACKETX网络数据包捕获与分析

基于PACKETX网络数据包捕获与分析   摘要:在Visual Basic平台,采用Packetx控件,完成网络数据包捕获。借助Visual Basic丰富的界面元素和运算功能,分析获取的数据包,经过统计得到数据包流量及规律,从而实现流量监控、底层入侵检测,发现网络异常情况,采取相应的处理措施。   关键词关键词:PACKETX控件;数据包;数据捕获   DOIDOI:10.11907/rjdk.151812   中图分类号:TP393   文献标识码:A文章编号文章编号2015)011014902   作者简介作者简介:王宏乐(1972-),女,新疆乌鲁木齐人,69046部队工程师,研究方向为计算机网络;陈卫钢(1977-),男,湖北天门人,硕士,文网中心工程师,研究方向为通信工程设计;伍文平(1969-),男,湖北钟祥人,硕士,69046部队高级工程师,研究方向为通信网络设计与优化。   0引言   网络数据包捕获程序在网络数据捕获、数据分析、流量统计、判断网络故障等方面具有重要作用。网络数据包捕获程序一般通过C++底层编程实现,条件要求高、编程难度大、程序功能性和鲁棒性问题多。Visual Basic平台下网络数据包捕获编程,依靠平台下自带的控件无法完成。在Visual Basic平台实现网络底层编程比较成熟的方法是调用系统API函数,需要较强的系统函数编程能力,环节多、步骤繁琐,容易造成程序BUG[1]。其过程如下:   首先,将要使用的底层动态链接库wsock32.dll中的API函数宣告出来,部分wsock32.dll函数宣告如下。   Private Declare Function WSAstartup Lib wsock32.dll Alias WSAStartup (ByVal wVersionRequired As Integer,ByRef lpWSAData As WSAdata) As Long   Private Declare Function WsACleanup Lib wsock32.dll Alias WSACleanup () As Long   Private Declare Function inet_ntoa Lib wsock32.dll (ByVal addr As Long) As Long   Private Declare Function gethostname Lib wsock32.dll (ByVal name As String,ByVal namelen As Long) As Long   Private Declare Function gethostbyname Lib wsock32.dll (ByVal name As String) As Long   Private Declare Function closesocket Lib wsock32.dll (ByVal s As Long) As Long   ......   接着在Function或Sub中通过CALL WSAstartup语句调用函数实现网络编程功能。   然后定义一批TYPE处理接收到的不同类型数据,如以太网帧结构、硬件地址结构、IP头部、TCP头部、UDP头部、ICMP头部、ARP头部等,其中TCP头部数据结构定义如下:   Private Type tcp_hdr   th_sport As Integer   th_dport As Integer   th_seq As Long   th_ack As Long   th_lenres As Byte   th_flag As Byte   th_win As Integer   th_sum As Integer   th_urp As Integer   End Type   综合使用上面定义的TYPE和宣告的函数,构造大量函数处理和解析接收到的网络数据包,根据不同协议类型会有不同的数据包格式。最后根据不同协议类型,显示和处理包含在数据包中的数据。   可以看出传统方法不仅繁琐,而且容易出错。复杂的底层编程任务占用了编程人员大量时间,使程序员不能将主要精力集中于接收到的数据包分析与统计。   Packetx控件将底层编程封装起来,提供较为完善的底层封装功能,使编程人员将主要精力放到具体应用上,将编程重点放在网络数据规律分析及网络数据统计等方面。   1Packetx控件编程   Packetx控件提供了VBScriipt、Visual C++、Delphi以及Visual Basic等编程工具的接口。Visual Ba

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档