IP数据包的捕获与分析文献综述

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

毕业设计(论文)文献综述

还有同名论文、任务书、和其他文件题目: IP数据包的捕获与分析

姓名:

学号:

系别:

专业:

年级:

指导教师:(签名)

年月日

一、研究背景

随着社会的飞速发展,科技的日新月异,互联网已经渗透到世界的各行各业和人民生活的各个方面,全社会对网络的依赖程度只增不减,整个世界通过网络正快速的融为一体,网络时代已经来临。但由于网络具有开放性,互联性,多样性,不均匀性等诸多特征,以至于网络中存在许多风险,例如黑客攻击,恶意软件等。这些风险的存在,严重的危险到网络上信息的完整性、保密性、真实性、可靠性。所以网络安全问题已越发受到人们的关注,而想要解决这些问题涉及的内容既有技术方面的问题,也有管理方面的问题,两方面相互补充,缺一不可。技术方面主要侧重于防范外部非法用户的攻击,管理方面则侧重于内部人为因素的管理。如何更有效地保护重要的信息数据、提高计算机网络系统的安全性已经成为所有计算机网络应用必须考虑和必须解决的一个重要问题。

可以这样来定义网络数据安全:所谓网络数据安全,指的是网络系统的硬件、软件和数据信息能够受到保护,不会因为偶然或恶意的原因而遭到破坏、更改、泄露,同时系统能够连续、可靠地运行,网络服务不被中断。但在现实中,绝对安全的网络是没有的。

目前,我正处在高速的现代化建设阶段,政府部门、军队、企业、学校等都需要建立自己的网络和信息系统并实施保护,尤其是有关的重要部门更需要需要网络的安全保障。所以建立网络安全系统对我们具有重大的意义,而有效的实时监控和捕获可疑的网络信息就是建立网络安全系统的基础。

二、研究意义

随着个人计算机和互联网的普及,使我们从一个封闭的环境进入到一个开放的世界,越来越多的人开始使用网络这个媒介来发送,接收信息,计算机网络给人们生产和生活带来了巨大的便利。但是由于网络是一个面向大众的开放系统,它的这种特性决定了其对数据信息的保密和系统的安全性考虑并并不完备,存在着诸多的安全隐患。因此让有些个人或团体有机可乘,利用这些隐患和漏洞,通过网络来发送一些包含色情,反动等不良内容的信息,或通过网络入侵他人主机盗取信息和机密,达到破坏正常社会秩序的目的,以至于计算机网络的安全形势日趋严峻。因此,现在在计算机网络安全隐患中扮演重要角色之一的网络数据抓包软件受到越来越大的关注。

构建安全网络环境,除了通过主动的人为思想的预防以外,一套被动的网络安全检测机制也是必不可少的,通过运用标准的机制对网络中传输的各类型进行实时监控,对具有威胁性的信息进行甄别警报,这套机制的前提就是首先对网络中传输的信息进行捕获,对获取的信息解析筛查。而想要捕获这些信息,就要知道网络中的信息是以数据包的形式进行传输,想要获取信息,就必须对网络中的数据包进行捕获和分析,才能获得所需要的相应信息。所以对网络上传送的数据包进行有效的捕获与解析是目前网络监控的关键技术,

只有能够进行高效的网络数据包捕获和解析,才能为网管人员听过相应的数据进行分析或其他操作,从而进一步的施行网络安全监控和管理。

IP数据包是网络中最常见的数据包类型,而IP也是TCP/IP协议族中最为核心的协议。所含有有的TCP、UDP、ICMP及IGMP数据都以IP数据报格式传输,其中又主要以TCP 和UDP两种数据类型为多数[1]。所以掌握了对IP数据包的捕获与分析技术,就能对网络中传输的大部分数信息进行监控和管理[2]。

三、相关技术研究

(1)IP数据包的格式

互联网层是TCP/IP协议参考模型中的关键部分。IP协议把传输层送来的消息组装成IP数据包,并把IP数据传递给数据链路层。IP协议在TCP/IP协议族中处于核心地位,IP 协议制定了统一的IP数据包格式,以消除各通信子网间的差异,从而为信息发送方和接收方提供了透明的传输通道。编制本程序前,首先要对IP包的格式有一定的了解。图1给出了IP协议的数据包格式。IP数据包的第一字段是版本字段,其长度为4位,表示所使用的IP协议的版本。目前的版本IPV4,版本字段的值为4,下一代的版本是IPV6,版本字段的值为6。本程序主要针对版本值为4的IP数据包的解析。报头标长(IHL)字段为4位,它定义了以4B为一个单位的IP包的报头长度。报头除了选项字段和填充域字段外,其他各字段是定长的。因此,IP数据包的头长度在20-40B之间,是可变的。

图1 IP数据报格式

(2)以太网捕获数据包的实现原理

在以太网上通讯的每张网卡上都拥有一个全球唯一的物理地址,也叫MAC地址。该地

址是一个48比特的二进制数。在以太网卡中内建有一个数据包过滤器。该数据包过滤器的作用是保留以本身网卡的MAC地址为通讯目的的数据包和广播数据包,丢弃所有其它无关的数据包,以免CPU对无关的数据报作无谓的处理。这是以太网卡在一般情况下的工作方式。因此在正常情况下,一个合法的网络接口应该只响应这样的两种数据包(帧):一种是帧的目标地址具有和本地网络接口相匹配的硬件地址。另一种是帧的目标地址是“广播地址”(代表所有的接口地址),格式为。

在接收到上面两种情况的数据帧时,网卡通过CPU产生中断,操作系统进行中断处理后将帧中包含的数据传送给上层系统进行进一步处理。在其他情况下数据帧将被丢弃而不作处理。

要想捕获到流经网卡的不属于本主机的数据,必须绕过系统正常工作的处理机制,直接访问网络底层。我们可以把网卡的状态设为“混杂”(promiscuous)模式,当网卡工作在这种“混杂”模式时,该网卡就具备了“广播地址”,它对所接收到的每一个帧都产生一个硬件中断以提醒操作系统处理流经该网卡上的每一个报文包。操作系统通过直接访问链路层,截获相关数据,由应用程序而非上层协议(如IP层、TCP层)对数据过滤处理,这样就可以捕获到流经网卡的所有数据。

(3)开发语言C++

C++是一九八三年由贝尔实验室的Bjarne Strou-strup在C的基础上推出。C++进一步扩充和完善了C语言,成为一种面向对象的程序设计语言。C++目前流行的编译器最新版本是Borland C++4.5,Symantec C++6.1,和Microsoft VisualC++ 2012。C++语言灵活,功能强大,类层次结构性强,标准定义细致严谨,具有快速和可移植性和面向对象特性,并兼容C语言的几乎所有特性,可扩展性强,很适合编写类库,效率高,运行处理速度快,大部分游戏软件都使用C++编写[3]。所支持的这些面向对象的概念容易将问题空间直接地映射到程序空间,为程序员提供了一种与传统结构程序设计不同的思维方式和编程方法。因而也使得其过度复杂和标准库的过度苍白,掌握起来有一定难度。

(4)开发框架MFC

MFC(Microsoft Foundation Classes),是微软公司提供的一个类库(class libraries),以C++类的形式封装了Windows的API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含的类包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。

微软基础类MFC(Microsoft Foundation Classes),同VCL类似,是一种应用程序框架,随微软Visual C++开发工具发布。该类库提供一组通用的可重用的类库供开发人员使用,大部分类均从CObject 直接或间接派生,只有少部分类例外[4]。

(5)WinPcap技术

WinPcap是用于网络封包捕获的一种工具,是在32位的操作平台上解析网络封包工

相关文档
最新文档