毕业设计论文基于IP包流量分析程序的设计与实现.doc
《毕业设计论文基于IP包流量分析程序的设计与实现.doc》由会员分享,可在线阅读,更多相关《毕业设计论文基于IP包流量分析程序的设计与实现.doc(37页珍藏版)》请在三一办公上搜索。
1、装订线摘要 随着因特网技术的发展,网络通信问题日益成为人们关注的焦点,IP包流量分析程序便是一种分析网络状况的有效方法,它从数据包流量分析角度出发,通过实时地收集和监视网络数据包信息,来检查网络数据传输的状态,从而监控网络环境。当前,网络在人们生活中发挥着越来越大的作用,人们也对网络有了越来越高的需求,要适应时代的需要,提供完善便利的网络服务,进行IP包流量分析的课题研究很有必要。分析IP网络流量,开展IP网络流量的监测活动,对IP网络的发展都具有极其重要的意义。 本设计是针对于IP包流量分析的,对所经过的IP数据包进行分析可以得到一系列对应的属性值。通过对这些IP数据包属性值进行对应的解析可
2、以得到该网络具体的通信情况。IP包流量分析程序使用RAW SOCKET设置网卡混杂模式以此来接受经过的数据包,并且运用链表结构来存储符合条件的数据包,实现了分析IP数据包来源、类型、数量及长度的功能。IP包流量分析程序的功能实现,有助于我们对网络的数据传递以及数据包类型进行掌握和分析,有助于对流量的多少进行判定,便于对发生或即将发生的网络问题进行提前防范。关键词: IP数据包; 流量分析; 报文信息分析 ABSTRACT With the Internet technology, network communication is increasingly becoming the focus
3、of attention, IP packet traffic analysis program is one effective method of network conditions, it is the angle from the data packet traffic analysis, real-time network data collection and monitoring Package information, to check the status of network data transmission to monitor the network environ
4、ment. At present, the network plays in peoples lives increasingly important role, it also has increasingly high demand for the network to meet the needs of the times, providing convenient Internet services, IP packet flow analysis for research Necessary. Analysis of IP network traffic, IP network tr
5、affic to carry out monitoring activities, the development of the IP network are of great importance. This design is aimed at the IP packet flow analysis, on which the IP data packets through the corresponding analysis can be a series of corresponding attribute values. IP data packets through the cor
6、responding attribute values resolve to get the specific circumstances of the communication network. IP packet traffic analysis program that uses RAW SOCKET set promiscuous mode in order to accept the card after the data packets, and the use of linked list structures to store eligible packets of IP d
7、ata packets to achieve the source, type, number and length features. IP packet traffic analysis program implementation, help us to network data transmission and data packet type for control and analysis, help to determine the amount of traffic, facilitate, or is about to advance to prevent network p
8、roblems.朗读显示对应的拉丁字符的拼音Keywords: IP data packet; message type; traffic analysis目 录 1. 绪论11.1 研究的目的和意义11.2 开发工具及环境简介22. 系统分析32.1 需求分析32.2 可行性分析32.3 IP协议分析42.4 IP流量分析73. 系统总体设计93.1 开发设计思想93.2 系统设计93.3 程序结构设计103.4 程序功能设计133.5 系统设计中的重点及难点154. 系统详细设计与实施174.1 Winsock服务的初始化174.2存储功能设计与实现174.3 Socket句柄赋值功能的实
9、现184.4 程序实现所需重要函数184.5 Raw socket介绍205. 系统测试255.1 测试方法255.2 运行命令及运行结果25结束语31参考文献32致 谢33附录35A 程序清单35B 用户手册47C 软件光盘47D 科技译文481. 绪论1.1 研究的目的和意义Internet的迅速发展使社会经济结构和人们的生活方式发生了巨大的变化,而IP流量是网络管理的重要数据基础,通过IP分析流量数据,可以帮助网络管理员发现各种恶意网络攻击,对攻击源进行追溯和定位,从而对网络中的计算机进行有效的保护。异常流量是指能对网络的正常运行造成危害的流量,异常流量可能会导致网络拥塞。通过对IP包流
10、量进行检测和分析,把IP包流量解码、分类和统计后,对危害流量进行限制和阻隔,更有效地保护关键应用流量,使网络变得更加畅通。尤其是在宏观发现流量异常的同时,如何迅速有效地分离和抑制异常流量,对非法业务实行遏止,使网络流量能保持其健壮性,就成为我们迫切想要解决的问题。现在很多软件针对网络流量的监控,属于企业级使用范围,而对于普通中小网络来说,虽然有杀毒软件和防火墙,但却不知道一些恶意程序也可以悄悄的在后台运行,可以神不知鬼不觉的连接网络,来窃取用户的信息和隐私,比如说:木马程序就可以通过修改数据包的信息来进行信息的盗取。而这是广大网络管理人员不愿意看到的情况,本设计通过对IP包的捕获与分析可以获取
11、与本机进行数据交换的数据包的内容,进而做出合理的选择保护网络。在中小网络中网络安全起着至关重要的作用,数据的出入是不允许出现任何闪失的。网络管理人员在做好防护的同时也要对IP包进行捕获和流量分析。因为网络上的信息流量是通过计算机的网卡转换把网上的信息呈现在我们眼前的,通过对流经网卡的数据包的分析,如果发现有恶意连接或是异常流量的时候,网络管理员就可以及时的做出相应的措施来保护网络的通畅和安全,这也就是进行IP包流量分析的重要意义所在。1.2 开发工具及环境简介 本设计采用的程序设计语言为C语言。C语言是一种面向过程的计算机程序设计语言,它是目前众多计算机语言中举世公认的优秀的结构程序设计语言之
12、一1。同时C语言又是一种通用的程序设计语言,在国际上广泛流行。世界上很多著名的计算公司都成功的开发了不同版本的C语言,很多优秀的应用程序也都使用C语言开发的,它是一种很有发展前途的高级程序设计语言。开发环境选用的是Microsoft Visual C+6.0(微软公司的开发工具),具有集成开发环境的功能,可提供编辑C语言,C+以及C+/CLI等编程语言。Visual C+集成了MFC6.0,于1998发行。发行至今一直被广泛地用于大大小小的项目开发。它以拥有“语法高亮”,IntelliSense(自动编译功能)以及高级除错功能而著称。比如,它允许用户进行远程调试,单步执行等。还有允许用户在调试
13、期间重新编译被修改的代码,而不必重新启动正在调试的程序。之所以采用以上两种工具是因为在大学期间我主要学习的语言课程就是C语言,还系统的学习了Visual C+程序设计教程。在过去看来,Windows编程是复杂而又难以驾驭的,Visual C+这种强大开发工具的出现改变了这种情况。37装订线2. 系统分析2.1 需求分析在程序开发之前,设计人员要对系统进行需求分析,要认真了解网络管理员的要求,细致地进行调查分析,深入描述程序的功能和性能。需求分析是奠定程序开发的基础,也是起决定性的一步。如今网络发展日新月异,大量的中小网络层出不穷,伴随而来的也有流量压力对网络的冲击。因此,基于IP流量分析的研究
14、就显得十分必要,这样网络管理员就能更加直观的来了解网络实时的通信情况,有利于网络的管理。IP流量分析能够帮助网络管理人员更好的了解所管理的网络,流量分析技术能够帮助网络管理人员提高解决问题的效率,解决问题的快慢关键在于如何快速分析问题发生的原因,一个高级的管理人员必须懂得有效的利用各种分析工具和手段来提高问题分析的效率,而IP流量分析是最为有效的手段之一。系统开发的目标即采用捕获一段时间内以本机为源地址或目的地址IP数据包的方法,具体的数据包如TCP数据包,UDP数据包,IGMP数据包,ICMP数据包等,以此来统计IP数据包的信息。针对于IP包的分析可以得到以下内容:本地IP地址及与本机发生数
15、据通信的IP地址,交换的数据包数量、数目,IP包的版本和生存时间等。通过对这些内容的分析,网络管理员就可以了解计算机通信的情况,从而做出应对措施。2.2 可行性分析在系统调查的基础上,针对本设计的开发具有可操作性,对其进行从经济、技术、社会三方面进行分析和研究。可行性研究的目的就是用最小的代价在尽可能短的时间内确定问题是否能够解决。该程序的可行性分析包括以下几个方面的内容。1.经济可行性IP包流量分析程序开发成本较小,硬施仅需要一台计算机来进行开发,软件方面需要正版软件Visual C+6.0作为开发工具,总计花费在一万元左右。此外,程序不仅开发成本小,维护成本也不多,并且易于维护,非常适用于
16、中小网络管理员的使用。2.技术可行性本程序采用 Microsoft公司的 Visual C+6.0作为开发工具,该工具在安全性、准确性和运行速度方面都占有一定优势。Visual C+6.0在很多学校作为教学工具进行教学工作,由此可见此开发工具深受专业人士推崇,是种被开发人员看好且认可的技术工具。在大学期间我深入的学习了Visual C+6.0,尤其是在理论和实践相结合的方面上下了很大的功夫,循序渐进的掌握了Windows程序开发,还能学会如何在程序中添加一些必要的语句以达到特定的目的。同时,还学会了设计事件驱动程序来响应Windows消息、创建定制对话框、绘制窗口、显示位置图以及常用的菜单等操
17、作,因此在技术层面上是可以实现的。3.社会可行性IP流量分析程序的实现将会给公司、企业等中小网络管理人员带来十分强大的助力,它所实现的对于IP包相关流量分析的功能对于网络的管理、优化起到至关重要的作用,社会影响力颇为显著。IP包流量分析程序强大功能的实现将会使它成为网络流量分析软件的模范,将会被大量中小网络管理人员竞相使用。2.3 IP协议分析IP流量分析程序在运行过程中捕获的IP数据包主要包括TCP数据包,UDP数据包,IGMP数据包,ICMP数据包等,这些数据包分属于不同的TCP/IP协议。IP协议是TCP/IP一系列协议的核心,主要能负责IP分组的传输。IP提供不可靠的,无连接的,尽最大
18、努力交付的分组传输机制2。“不可靠的”含义是指它不能保证IP分组成功的传送到达目的站。“无连接的”含义是指IP并不维护后续分组的状态信息,每个分组的处理都是相互独立的。最后,IP提供的是“尽最大努力交付”的服务指尽力发送每个数据包,并不随意丢弃分组。下面就IP包的具体协议及报文结构类型进行相关介绍分析。1.UDP是一个非常简单的协议,除了运输层协议能够做的最少的工作,除了提供进程到进程之间的通信,几乎没对IP增加任何东西。数据报的长度是指包括报头和数据部分在内的总字节数。因为报头的长度是固定的,所以该域主要被用来计算可变长度的数据部分。数据报的最大长度根据操作环境的不同而各异。特点如下:(1)
19、UDP是一个无连接协议,传输数据之前源端和终端不建立连接,当它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上。(2)由于传输数据不建立连接,因此也就不需要维护连接状态,包括收发状态等,因此一台服务机可同时向多个客户机传输相同的消息。 (3)UDP信息包的标题很短,只有8个字节,相对于TCP的20个字节信息包的额外开销很小。 (4)吞吐量不受拥挤控制算法的调节,只受应用软件生成数据的速率、传输带宽、源端和终端主机性能的限制。 (5)UDP使用尽最大努力交付,即不保证可靠交付,因此主机不需要维持复杂的链接状态表(这里面有许多参数)。UDP是面向报文的。发送方的UDP对应用程序
20、交下来的报文,在添加首部后就向下交付给IP层。既不拆分,也不合并,而是保留这些报文的边界,因此,应用程序需要选择合适的报文大小。UDP数据包格式由手部和数据两部分组成。如图2.1所示。 图2.1 UDP数据报格式2.传输控制协议(TCP,Transmission Control Protocol)就是为了在不可靠的互联网上提供一个可靠的端到端、面向字节流连接设计的。它提供了面向连接的服务、全双工服务和字节流传递服务3。应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,然后TCP把数据流分割成适当长度的报文段(通常受该计算机连接的网络的数据链路层的最大传送单元(MTU)的限制)。之后T
21、CP把结果包传给IP层,由它来通过网络将包传送给接收端实体的TCP层。TCP和UDP都具有端口号,而且它们对端口号的使用是彼此独立的。这就是说,同一个端口号可以用两种不同的用途。其中TCP建立连接之后,通信双方都同时可以进行数据的传输,其次,他是全双工的;在保证可靠性上,采用超时重传和捎带确认机制。TCP报文是TCP层传输的数据单元,也称为报文段4。如图2.2所示。首部数据源端口号 16bit目的端口号 16bit序列号32bit确认号32bit首部长度4bit保留6bitURGACKPSHRSTSYNFIN窗口大小 16bit校验和 16bit紧急指针 16bit 选项和填充 图2.2 TC
22、P报文段格式2.4 IP流量分析作为一个高级的网络管理员,要管好一个承载关键业务的网络系统,首先要对自己所管理的网络建立深入的了解,提高自身的网络管理技术水平,而掌握高级的IP流量分析技术并在工作中有效的应用,将对网络管理工作带来非常大的帮助。管理好一个网络最重要的就是对网络的了解,对IP流量分析能使网络管理人员更深入地了解网络。1.每个网络都有自身的运行规律,这和网络的结构、应用特点等紧密相关,通过IP流量分析,能够了解网络系统运行的规律。网络上重要的应用在运行时,每一个访问,每一个交易处理,数据都由网络来传输,通过分析应用的流量,能够清楚的了解应用运行的规律,数据包内容、数据包处理数量、响
23、应时间等数据,都可以通过IP流量分析手段获取。每个用户的网络行为都是相互影响的,同时会对网络的运行产生影响,伴随着每个用户在网络中的行为都有网络流量的产生,通过对网络用户的IP流量进行分析,能够直观地了解网络用户的网络行为。2.网络异常的发现是建立在对网络了解的基础之上的,如果能做到及时地发现网络中的异常,将使网络管理更主动,将为网络的持续高性能运行提供重要的保障5。通过IP流量分析就可以很轻松的知晓网络存在的异常。网络中流量的异常,包括利用率、数据包数的异常、连接数量、应用流量的异常,都可以通过长期主动IP流量分析来及时发现。异常的网络行为也都有明显的流量特征,如感染了蠕虫病毒、安装了后门程
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 论文 基于 IP 流量 分析 程序 设计 实现
链接地址:https://www.31ppt.com/p-4863743.html