目 录
1 引言 1
1.1 课题介绍 1
1.2 课题目的 1
1.3 技术分析 3
2 需求分析 7
2.1 目标 7
2.2 用户的特点 7
2.3 对功能的规定 7
2.4 对性能的要求 8
2.5 运行环境 8
3 概要设计 8
3.1 功能模块描述 8
3.2 基本概念设计 9
3.3 软件的总体框架 9
3.4 功能需求与程序的关系 10
3.5 系统数据结构设计 10
3.6 数据库设计 11
4 详细设计 12
4.1 用户界面设计 12
4.2 各个模块的数据流图 15
4.3 算法分析 18
5 系统测试 21
5.1 测试目的 21
5.2 测试要求 21
5.3 测试阶段 21
5.4 测试内容 22
5.5 测试结果 24
结 论 24
致 谢 26
参考文献 27
1 引言
1.1 课题介绍
在人类社会快速发展的今天,计算机网络已经成为我们生活中不可缺少的一部分。Internet起源于20世纪60年代末、70年代初,当时,美国国防部为了将充斥于军事基地内各种厂商的电脑主机互连,让它们可以进行数据交换以便研究工作顺利进行,于是成立了ARPA网络计划。ARPA计划尝试建设一个网络系统,它可将各种不同厂商的电脑连接起来。随着这个计划的成功,各学术单位,研究机构也纷纷与ARPA计划所建立的ARPANet连接。到了20世纪80年代,Internet这个名词因势产生,它代表着这十年来所构建涵盖全球各地的网络系统。从1990年起,商业使用的Internet在美国急速地扩大,而Internet也从原来属于少数人使用的网络系统转变为普通百姓也能够使用的网络系统。
但是,随着网络的广泛应用,各种各样的问题也随之出现,计算机病毒、黑客攻击、网络犯罪等事件屡禁不止。人们也在寻找各种各样的办法来解决这种问题,但是效果始终不太理想。随着技术的进步和用户需求的改变,TCP/IP作为网络的主要技术协议,在其不断的自我完善后,渐渐被人们认为是一个很好的解决网络问题的出发点。
本软件就是在这样一个背景下进行考虑设计的,技术层面上讲,通过TCP/IP协议进行网络分析不是绝对可靠的分析方式,因为存在IP欺骗等手段和对数据包进行伪装等技术,但总体来说,相对于其他方案,这种方式比较直观、可靠。
1.2 课题目的
监控网络资源,查看网络存在问题,调整网络资源分配,检查网络环境,预防黑客入侵,防止内部重要资料泄露,便于企业管理。网络监测技术伴随着互连网的成长而发展,是网络技术研究的重要内容,也是网络管理中经常用到的技术。根据监测时对网络运行的影响程度不同,网络监测方法主要可以分为两种:被动式监测和主动式监测。被动式监测方法主要是通过对网络流量及状态参数的监视和收集来完成监测任务,其机制尽量避免干涉网络的正常运行,对网络性能的影响很小,所以这种监测方式适合于长期对网络进行监测。主动式监测方法需要向网络中注入测试流量数据,并从其响应结果数据中测量网络状态参数。由于在监测过程中引入了附加流量,所以这种方法不可避免地要影响网络的正常运行,所以这种监测方法在应用上应用有一定的限制;而且视其引入额外流量的多少,其监测结果也需要进行一定的修正以反映实际网络运行情况。利用网络监测可以监测用户网络中的流量分布,有效的发现和预防网络流量和应用上的瓶颈,网络中广播风暴的发生,监控网络的利用率,为网络性能的优化提供依据。网络监测的方法和手段因监测的目的不同而有所不同。对网络系统的监测可以使用相应的监测工具,比较典型和重要的网络系统监测工具就是网络协议分析仪。网络协议分析仪一般有专用的硬件设备和专门的软件。这类协议分析仪常见的功能是数据包的捕捉、协议的解码、统计分析和数据流量的产生。用协议分析仪我们可以捕捉网上的实际流量并提取流量的特征,据此对网络系统的流量进行模型化和特征化。此外,网络协议分析仪还可以主动地产生大量的数据包施加到网络上,分析网络的响应或对网络系统进行加重测试。目前典型的协议分析仪有HP公司的Internet Advisor(网络专家系统)、wG公司的Domin系列协议分析仪等。另外还有一些纯软件的协议分析工具,有些甚至可以从网上免费下载。还有一些比协议分析仪更高层次的网络性能监测工具,站在应用层的角度使用一些基准流量对网络系统的性能进行分析,代表性的软件有Ganvmede Software公司的Chariot软件。另外,Network Associates公司的Sniffer Pro也是一款成熟的网络测量和协议分析工具,它提供两种主要的功能:分析和监测。该工具中的监测功能使分析员能够立即查看网络通信量统计信息,包括查看与一般利用率相关的利用百分比,以及与广播操作相关的帧和字节数。Sniffer分析仪使分析员在用协议数据模式匹配和地址过滤方法收集并显示时,对网络数据进行过滤。Novell公司的LANalyzer是一个软件分析仪,运行在Windows平台上,它可以分析以太网和令牌环网。LANalyzer在Windows平台上运行,能够监测并分析以太网和局域网令牌环网上传输的数据。分析员能够使用LANalyzer收集数据并停止分析仪来查看内部数据。收集的数据可以以总结模式、解码模式、或全十六进制视图模式来查看。中国科学院计算技术研究所也研发完成了大型网络性能监测和分析系统——NIPMAS,该系统具有基于用户业务、智能预警、网络整体性能评价和故障定位等功能。在网络协议测试方面,该系统具有己知最完整的测试集,支持多种网络接口。另外,艾菲技术公司开发了艾菲网页嗅探器,它可以用于找出符合条件的含有“TTP协议的IP包。NetScout Systems Inc公司的nGenius Gigabit Ethernet Aggregation Probe软件系统可以使IT管理员完全可见地监测敏感网段的网络和应用程序;另外还有Express Network Manager, sniffer, ping, traceroute Ethereal(一种免费网络工具)、微软网络监测软件Network Monitor, Fluke公司的协议分析仪等可以应用于网络管理、检测的工具。上述 用 于 网络管理和测量的各种网络系统功能比较强,有的在网络管理所需要的某些功能上比较优秀。但是对于一些中小型公司或者对某方面有特殊要求的场合不太合适。
1.3 技术分析
1.3.1 网络结构
计算机网络是一个非常复杂的系统,国际标准化组织ISO在1977年成立了专门的机构来研究这个系统,提出了著名的开放系统互联参考模型OSI/RM,就是我们常说的OSI。OSI是一个七层的模型,从底到上依次为:物理层、数据链路层、网络层、运输层、会话层、表示层和应用层。按照一般的概念,网络技术和设备只有符合有关的国际标准才能大范围的获得工程上的应用,但是现在情况却不是如此。得到最广泛应用的不是法律上的国际标准,而是非国际标准TCP/IP。这样,TCP/IP就常被称为是实际上的国际标准。TCP/IP标准只有五层结构,从下往上分别是物理层、数据链路层、网络层、应用层、运输层。下面给出其各层的定义及功能:
物理层:物理层的任务就是透明的传输比特流。在物理层上所传的数据单位是比特。传递信息所利用的一些物理媒体,如双绞线、同轴电缆、光纤等,并不在物理层之内而是在物理层的下面。
数据链路层:常简称为链路层,在发送数据时数据链路层将网络层交下来的IP数据报封装成帧,在两个相邻结点间的链路上传送以帧为单位的数据。每一帧包括数据和必要的数据信息。在接收数据时,控制信息使接收端能够知道一个帧从哪个比特开始到哪个比特结束。这样,数据链路层在收到一个帧后,就从其中提取出数据部分,上交给网络层。
网络层:网络层负责为分组交换网上的不同主机提供通信。在发送数据时,网络层将运输层产生的报文段或者用户数据报封装成分组或者包进行传送。在TCP/IP体系中,分组也叫做IP数据报。
运输层:运输层的任务就是负责两个主机中进程之间的通信。
应用层:应用层是体系结构中的最高层,它直接为用户的应用进程提供服务。这里的进程就是指正在运行的程序。在因特网中的应用层协议很多,如支持万维网应用的HTTP协议,支持电子邮件的SMTP协议,支持文件传送的FTP协议等等。
我们现在使用的网络都是基于局域网组成的。局域网中比较有名的就是以太网。以太网和TCP/IP协议是相辅相成的,是密不可分的。以太网工作在物理层和数据链路层,使用MAC地址,而TCP/IP工作在上层,使用IP地址,两者使用ARP和RARP协议进行转换。在以太网中,通讯都是广播的,也就是说在同一个网段的所有网络接口都可以访问在物理媒体上的数据,而每一个网络接口都有一个硬件地址,这个硬件地址就是网卡的MAC地址,大多数系统都使用48比特的地址,该地址用来表示网络中的每一个物理设备,每一块网卡上的MAC地址是不同的。要想实施网络通信要在硬件地址和IP地址间使用ARP和RARP协议进行互相转换。在实际的系统中,数据的收发是由网卡来完成的,网卡接收发送传输的数据,其根据驱动程序设置的接收模式判断数据包的接收与否,接收到后产生中断信号通知CPU,认为不该接收就丢掉不管,所以不该接收的数据网卡就截断了。
1.3.2 网卡的四种模式
在正常的情况下,一个网络接口应该只响应以下两种数据帧:
(1)与自己硬件地址相匹配的数据帧。
(2)发向所有机器的广播数据帧。
其实在一个实际的系统中,数据的收发由网卡完成,网卡接收到传输来的数据帧,网
卡内的单片程序接收数据帧的目的MAC地址,根据计算机上的网卡驱动程序设置的接收模式判断是否接收。而对于合法的网卡来说应该有以下4种模式:广播方式、组播方式、单播方式、混杂模式。
广播方式:该模式下的网卡能够接收网络中的广播信息。
组播方式:设置在该模式下的网卡能够接收组播数据。
单播方式:在这种模式下,只有目的网卡才能接收该数据。
混杂模式:在这种模式下的网卡能够接收一切通过它的数据,而不管该数据是否是传给它的。
2 需求分析
2.1 目标
为了开发出真正满足用户需求的软件产品,首先必须知道用户的需求。对软件需求的深入理解是软件开发工作获得成功的前提条件。需求分析的任务是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。针对本系统主要实现的目标能够直观的看到网络的利用情况,能够把特定的几种数据包进行抓取并存入数据库。通过本软件,公司内部人员能够进行信息的传达,对于特定的要监测的目标,能分析出其发送的内容。
2.2 用户的特点
用户多为公司员工,对网络知识有一定的了解,但是不太精通。
2.3 对功能的规定
a) 抓取数据包:捕获经过本地网卡的数据包,无论其目的地址是否与网卡地址匹配,都要求将其进行捕获。
b) 分析数据包:将数据包进行拆解分析,将其包含的信息一一分析出来,分析数据包内容包括:协议、源IP地址、目的IP地址、源端口号、目的端口号、数据包大小以及传送的数据,并以列表形式列举出来。
c) 查询数据包:对在线传输的数据包进行有选择性的查询,通过设置数据包的基本查询项,来搜索网络中符合要求的数据包,要求对以下几项目进行查询:(1)对协议的类型的查询(2)对源IP地址的查询(3)对目的IP地址的查询(4)对源端口的查询(5)对目的端口的查询。除以上几项可以单独查询外,还可以对几项进行综合查询,就是查询时同时满足多项条件进行综合查询。
d) 对数据包进行存储查询:用户要对查询的某些内容进行存储,以便以后进行查询。在存储之后可以随时打开数据库进行查看,并且提供查询功能,要求对以下几个项目进行查询:协议、源IP地址、目的IP地址、源端口和目的端口。
e) 对网络流量进行查看:对经过本机的流量进行统计,分析流量,直观清晰的显示流量流经的状况,查看包括:主机的总流量,流入本机流量,流出本机流量。
f) 单机发送:对本机发往网卡的内容能够捕获并显示发送的内容。该模块主要用于软件功能测试。
g) 多机发送:对指定IP的终端能够发送用户的信息,在接收端能够正确的显示出接收到的信息。
h) 监测模块:对有必要监测的目标终端,当指定其IP后,能接收并显示出其发送的内容。
结 论
网络数据监测及语义分析是一款以VC++为开发平台,以windows操作系统为运行环境的网络监测软件。从结构上分析,该软件主要包括两个模块。一个是以网络数据包抓取为基础的抓取、数据库分析、网络流量查看模块,另外一部分是语义分析及多机发送模块,能够起到监测的作用。整个系统开发都努力按照软件工程的标准来执行。需求分析阶段研究用户的具体需求,把用户的具体需求记录下来,达成共识。概要设计和详细设计两个阶段按照需求阶段的要求,考虑总体和具体的设计办法,在编码阶段将其实现,最后通过测试来寻找程序中的错误。其中网络数据分析模块是这个课题的主要部分,在该模块中,能够实现单机发送的验证工作,也能够实现多机发送的基本功能。还能对特定的终端实行监测,当锁定IP地址以后,该网卡即被监控,能够接收到其发送的所有信息。
软件在开发的过程中遇到过很多的问题,大部分是技术上的问题。在测试以后还有部分问题没有解决,还需要继续改正。
目 录
1 引言 1
1.1 课题介绍 1
1.2 课题目的 1
1.3 技术分析 3
2 需求分析 7
2.1 目标 7
2.2 用户的特点 7
2.3 对功能的规定 7
2.4 对性能的要求 8
2.5 运行环境 8
3 概要设计 8
3.1 功能模块描述 8
3.2 基本概念设计 9
3.3 软件的总体框架 9
3.4 功能需求与程序的关系 10
3.5 系统数据结构设计 10
3.6 数据库设计 11
4 详细设计 12
4.1 用户界面设计 12
4.2 各个模块的数据流图 15
4.3 算法分析 18
5 系统测试 21
5.1 测试目的 21
5.2 测试要求 21
5.3 测试阶段 21
5.4 测试内容 22
5.5 测试结果 24
结 论 24
致 谢 26
参考文献 27
1 引言
1.1 课题介绍
在人类社会快速发展的今天,计算机网络已经成为我们生活中不可缺少的一部分。Internet起源于20世纪60年代末、70年代初,当时,美国国防部为了将充斥于军事基地内各种厂商的电脑主机互连,让它们可以进行数据交换以便研究工作顺利进行,于是成立了ARPA网络计划。ARPA计划尝试建设一个网络系统,它可将各种不同厂商的电脑连接起来。随着这个计划的成功,各学术单位,研究机构也纷纷与ARPA计划所建立的ARPANet连接。到了20世纪80年代,Internet这个名词因势产生,它代表着这十年来所构建涵盖全球各地的网络系统。从1990年起,商业使用的Internet在美国急速地扩大,而Internet也从原来属于少数人使用的网络系统转变为普通百姓也能够使用的网络系统。
但是,随着网络的广泛应用,各种各样的问题也随之出现,计算机病毒、黑客攻击、网络犯罪等事件屡禁不止。人们也在寻找各种各样的办法来解决这种问题,但是效果始终不太理想。随着技术的进步和用户需求的改变,TCP/IP作为网络的主要技术协议,在其不断的自我完善后,渐渐被人们认为是一个很好的解决网络问题的出发点。
本软件就是在这样一个背景下进行考虑设计的,技术层面上讲,通过TCP/IP协议进行网络分析不是绝对可靠的分析方式,因为存在IP欺骗等手段和对数据包进行伪装等技术,但总体来说,相对于其他方案,这种方式比较直观、可靠。
1.2 课题目的
监控网络资源,查看网络存在问题,调整网络资源分配,检查网络环境,预防黑客入侵,防止内部重要资料泄露,便于企业管理。网络监测技术伴随着互连网的成长而发展,是网络技术研究的重要内容,也是网络管理中经常用到的技术。根据监测时对网络运行的影响程度不同,网络监测方法主要可以分为两种:被动式监测和主动式监测。被动式监测方法主要是通过对网络流量及状态参数的监视和收集来完成监测任务,其机制尽量避免干涉网络的正常运行,对网络性能的影响很小,所以这种监测方式适合于长期对网络进行监测。主动式监测方法需要向网络中注入测试流量数据,并从其响应结果数据中测量网络状态参数。由于在监测过程中引入了附加流量,所以这种方法不可避免地要影响网络的正常运行,所以这种监测方法在应用上应用有一定的限制;而且视其引入额外流量的多少,其监测结果也需要进行一定的修正以反映实际网络运行情况。利用网络监测可以监测用户网络中的流量分布,有效的发现和预防网络流量和应用上的瓶颈,网络中广播风暴的发生,监控网络的利用率,为网络性能的优化提供依据。网络监测的方法和手段因监测的目的不同而有所不同。对网络系统的监测可以使用相应的监测工具,比较典型和重要的网络系统监测工具就是网络协议分析仪。网络协议分析仪一般有专用的硬件设备和专门的软件。这类协议分析仪常见的功能是数据包的捕捉、协议的解码、统计分析和数据流量的产生。用协议分析仪我们可以捕捉网上的实际流量并提取流量的特征,据此对网络系统的流量进行模型化和特征化。此外,网络协议分析仪还可以主动地产生大量的数据包施加到网络上,分析网络的响应或对网络系统进行加重测试。目前典型的协议分析仪有HP公司的Internet Advisor(网络专家系统)、wG公司的Domin系列协议分析仪等。另外还有一些纯软件的协议分析工具,有些甚至可以从网上免费下载。还有一些比协议分析仪更高层次的网络性能监测工具,站在应用层的角度使用一些基准流量对网络系统的性能进行分析,代表性的软件有Ganvmede Software公司的Chariot软件。另外,Network Associates公司的Sniffer Pro也是一款成熟的网络测量和协议分析工具,它提供两种主要的功能:分析和监测。该工具中的监测功能使分析员能够立即查看网络通信量统计信息,包括查看与一般利用率相关的利用百分比,以及与广播操作相关的帧和字节数。Sniffer分析仪使分析员在用协议数据模式匹配和地址过滤方法收集并显示时,对网络数据进行过滤。Novell公司的LANalyzer是一个软件分析仪,运行在Windows平台上,它可以分析以太网和令牌环网。LANalyzer在Windows平台上运行,能够监测并分析以太网和局域网令牌环网上传输的数据。分析员能够使用LANalyzer收集数据并停止分析仪来查看内部数据。收集的数据可以以总结模式、解码模式、或全十六进制视图模式来查看。中国科学院计算技术研究所也研发完成了大型网络性能监测和分析系统——NIPMAS,该系统具有基于用户业务、智能预警、网络整体性能评价和故障定位等功能。在网络协议测试方面,该系统具有己知最完整的测试集,支持多种网络接口。另外,艾菲技术公司开发了艾菲网页嗅探器,它可以用于找出符合条件的含有“TTP协议的IP包。NetScout Systems Inc公司的nGenius Gigabit Ethernet Aggregation Probe软件系统可以使IT管理员完全可见地监测敏感网段的网络和应用程序;另外还有Express Network Manager, sniffer, ping, traceroute Ethereal(一种免费网络工具)、微软网络监测软件Network Monitor, Fluke公司的协议分析仪等可以应用于网络管理、检测的工具。上述 用 于 网络管理和测量的各种网络系统功能比较强,有的在网络管理所需要的某些功能上比较优秀。但是对于一些中小型公司或者对某方面有特殊要求的场合不太合适。
1.3 技术分析
1.3.1 网络结构
计算机网络是一个非常复杂的系统,国际标准化组织ISO在1977年成立了专门的机构来研究这个系统,提出了著名的开放系统互联参考模型OSI/RM,就是我们常说的OSI。OSI是一个七层的模型,从底到上依次为:物理层、数据链路层、网络层、运输层、会话层、表示层和应用层。按照一般的概念,网络技术和设备只有符合有关的国际标准才能大范围的获得工程上的应用,但是现在情况却不是如此。得到最广泛应用的不是法律上的国际标准,而是非国际标准TCP/IP。这样,TCP/IP就常被称为是实际上的国际标准。TCP/IP标准只有五层结构,从下往上分别是物理层、数据链路层、网络层、应用层、运输层。下面给出其各层的定义及功能:
物理层:物理层的任务就是透明的传输比特流。在物理层上所传的数据单位是比特。传递信息所利用的一些物理媒体,如双绞线、同轴电缆、光纤等,并不在物理层之内而是在物理层的下面。
数据链路层:常简称为链路层,在发送数据时数据链路层将网络层交下来的IP数据报封装成帧,在两个相邻结点间的链路上传送以帧为单位的数据。每一帧包括数据和必要的数据信息。在接收数据时,控制信息使接收端能够知道一个帧从哪个比特开始到哪个比特结束。这样,数据链路层在收到一个帧后,就从其中提取出数据部分,上交给网络层。
网络层:网络层负责为分组交换网上的不同主机提供通信。在发送数据时,网络层将运输层产生的报文段或者用户数据报封装成分组或者包进行传送。在TCP/IP体系中,分组也叫做IP数据报。
运输层:运输层的任务就是负责两个主机中进程之间的通信。
应用层:应用层是体系结构中的最高层,它直接为用户的应用进程提供服务。这里的进程就是指正在运行的程序。在因特网中的应用层协议很多,如支持万维网应用的HTTP协议,支持电子邮件的SMTP协议,支持文件传送的FTP协议等等。
我们现在使用的网络都是基于局域网组成的。局域网中比较有名的就是以太网。以太网和TCP/IP协议是相辅相成的,是密不可分的。以太网工作在物理层和数据链路层,使用MAC地址,而TCP/IP工作在上层,使用IP地址,两者使用ARP和RARP协议进行转换。在以太网中,通讯都是广播的,也就是说在同一个网段的所有网络接口都可以访问在物理媒体上的数据,而每一个网络接口都有一个硬件地址,这个硬件地址就是网卡的MAC地址,大多数系统都使用48比特的地址,该地址用来表示网络中的每一个物理设备,每一块网卡上的MAC地址是不同的。要想实施网络通信要在硬件地址和IP地址间使用ARP和RARP协议进行互相转换。在实际的系统中,数据的收发是由网卡来完成的,网卡接收发送传输的数据,其根据驱动程序设置的接收模式判断数据包的接收与否,接收到后产生中断信号通知CPU,认为不该接收就丢掉不管,所以不该接收的数据网卡就截断了。
1.3.2 网卡的四种模式
在正常的情况下,一个网络接口应该只响应以下两种数据帧:
(1)与自己硬件地址相匹配的数据帧。
(2)发向所有机器的广播数据帧。
其实在一个实际的系统中,数据的收发由网卡完成,网卡接收到传输来的数据帧,网
卡内的单片程序接收数据帧的目的MAC地址,根据计算机上的网卡驱动程序设置的接收模式判断是否接收。而对于合法的网卡来说应该有以下4种模式:广播方式、组播方式、单播方式、混杂模式。
广播方式:该模式下的网卡能够接收网络中的广播信息。
组播方式:设置在该模式下的网卡能够接收组播数据。
单播方式:在这种模式下,只有目的网卡才能接收该数据。
混杂模式:在这种模式下的网卡能够接收一切通过它的数据,而不管该数据是否是传给它的。
2 需求分析
2.1 目标
为了开发出真正满足用户需求的软件产品,首先必须知道用户的需求。对软件需求的深入理解是软件开发工作获得成功的前提条件。需求分析的任务是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。针对本系统主要实现的目标能够直观的看到网络的利用情况,能够把特定的几种数据包进行抓取并存入数据库。通过本软件,公司内部人员能够进行信息的传达,对于特定的要监测的目标,能分析出其发送的内容。
2.2 用户的特点
用户多为公司员工,对网络知识有一定的了解,但是不太精通。
2.3 对功能的规定
a) 抓取数据包:捕获经过本地网卡的数据包,无论其目的地址是否与网卡地址匹配,都要求将其进行捕获。
b) 分析数据包:将数据包进行拆解分析,将其包含的信息一一分析出来,分析数据包内容包括:协议、源IP地址、目的IP地址、源端口号、目的端口号、数据包大小以及传送的数据,并以列表形式列举出来。
c) 查询数据包:对在线传输的数据包进行有选择性的查询,通过设置数据包的基本查询项,来搜索网络中符合要求的数据包,要求对以下几项目进行查询:(1)对协议的类型的查询(2)对源IP地址的查询(3)对目的IP地址的查询(4)对源端口的查询(5)对目的端口的查询。除以上几项可以单独查询外,还可以对几项进行综合查询,就是查询时同时满足多项条件进行综合查询。
d) 对数据包进行存储查询:用户要对查询的某些内容进行存储,以便以后进行查询。在存储之后可以随时打开数据库进行查看,并且提供查询功能,要求对以下几个项目进行查询:协议、源IP地址、目的IP地址、源端口和目的端口。
e) 对网络流量进行查看:对经过本机的流量进行统计,分析流量,直观清晰的显示流量流经的状况,查看包括:主机的总流量,流入本机流量,流出本机流量。
f) 单机发送:对本机发往网卡的内容能够捕获并显示发送的内容。该模块主要用于软件功能测试。
g) 多机发送:对指定IP的终端能够发送用户的信息,在接收端能够正确的显示出接收到的信息。
h) 监测模块:对有必要监测的目标终端,当指定其IP后,能接收并显示出其发送的内容。
结 论
网络数据监测及语义分析是一款以VC++为开发平台,以windows操作系统为运行环境的网络监测软件。从结构上分析,该软件主要包括两个模块。一个是以网络数据包抓取为基础的抓取、数据库分析、网络流量查看模块,另外一部分是语义分析及多机发送模块,能够起到监测的作用。整个系统开发都努力按照软件工程的标准来执行。需求分析阶段研究用户的具体需求,把用户的具体需求记录下来,达成共识。概要设计和详细设计两个阶段按照需求阶段的要求,考虑总体和具体的设计办法,在编码阶段将其实现,最后通过测试来寻找程序中的错误。其中网络数据分析模块是这个课题的主要部分,在该模块中,能够实现单机发送的验证工作,也能够实现多机发送的基本功能。还能对特定的终端实行监测,当锁定IP地址以后,该网卡即被监控,能够接收到其发送的所有信息。
软件在开发的过程中遇到过很多的问题,大部分是技术上的问题。在测试以后还有部分问题没有解决,还需要继续改正。
目 录
1 引言 1
1.1 课题介绍 1
1.2 课题目的 1
1.3 技术分析 3
2 需求分析 7
2.1 目标 7
2.2 用户的特点 7
2.3 对功能的规定 7
2.4 对性能的要求 8
2.5 运行环境 8
3 概要设计 8
3.1 功能模块描述 8
3.2 基本概念设计 9
3.3 软件的总体框架 9
3.4 功能需求与程序的关系 10
3.5 系统数据结构设计 10
3.6 数据库设计 11
4 详细设计 12
4.1 用户界面设计 12
4.2 各个模块的数据流图 15
4.3 算法分析 18
5 系统测试 21
5.1 测试目的 21
5.2 测试要求 21
5.3 测试阶段 21
5.4 测试内容 22
5.5 测试结果 24
结 论 24
致 谢 26
参考文献 27
1 引言
1.1 课题介绍
在人类社会快速发展的今天,计算机网络已经成为我们生活中不可缺少的一部分。Internet起源于20世纪60年代末、70年代初,当时,美国国防部为了将充斥于军事基地内各种厂商的电脑主机互连,让它们可以进行数据交换以便研究工作顺利进行,于是成立了ARPA网络计划。ARPA计划尝试建设一个网络系统,它可将各种不同厂商的电脑连接起来。随着这个计划的成功,各学术单位,研究机构也纷纷与ARPA计划所建立的ARPANet连接。到了20世纪80年代,Internet这个名词因势产生,它代表着这十年来所构建涵盖全球各地的网络系统。从1990年起,商业使用的Internet在美国急速地扩大,而Internet也从原来属于少数人使用的网络系统转变为普通百姓也能够使用的网络系统。
但是,随着网络的广泛应用,各种各样的问题也随之出现,计算机病毒、黑客攻击、网络犯罪等事件屡禁不止。人们也在寻找各种各样的办法来解决这种问题,但是效果始终不太理想。随着技术的进步和用户需求的改变,TCP/IP作为网络的主要技术协议,在其不断的自我完善后,渐渐被人们认为是一个很好的解决网络问题的出发点。
本软件就是在这样一个背景下进行考虑设计的,技术层面上讲,通过TCP/IP协议进行网络分析不是绝对可靠的分析方式,因为存在IP欺骗等手段和对数据包进行伪装等技术,但总体来说,相对于其他方案,这种方式比较直观、可靠。
1.2 课题目的
监控网络资源,查看网络存在问题,调整网络资源分配,检查网络环境,预防黑客入侵,防止内部重要资料泄露,便于企业管理。网络监测技术伴随着互连网的成长而发展,是网络技术研究的重要内容,也是网络管理中经常用到的技术。根据监测时对网络运行的影响程度不同,网络监测方法主要可以分为两种:被动式监测和主动式监测。被动式监测方法主要是通过对网络流量及状态参数的监视和收集来完成监测任务,其机制尽量避免干涉网络的正常运行,对网络性能的影响很小,所以这种监测方式适合于长期对网络进行监测。主动式监测方法需要向网络中注入测试流量数据,并从其响应结果数据中测量网络状态参数。由于在监测过程中引入了附加流量,所以这种方法不可避免地要影响网络的正常运行,所以这种监测方法在应用上应用有一定的限制;而且视其引入额外流量的多少,其监测结果也需要进行一定的修正以反映实际网络运行情况。利用网络监测可以监测用户网络中的流量分布,有效的发现和预防网络流量和应用上的瓶颈,网络中广播风暴的发生,监控网络的利用率,为网络性能的优化提供依据。网络监测的方法和手段因监测的目的不同而有所不同。对网络系统的监测可以使用相应的监测工具,比较典型和重要的网络系统监测工具就是网络协议分析仪。网络协议分析仪一般有专用的硬件设备和专门的软件。这类协议分析仪常见的功能是数据包的捕捉、协议的解码、统计分析和数据流量的产生。用协议分析仪我们可以捕捉网上的实际流量并提取流量的特征,据此对网络系统的流量进行模型化和特征化。此外,网络协议分析仪还可以主动地产生大量的数据包施加到网络上,分析网络的响应或对网络系统进行加重测试。目前典型的协议分析仪有HP公司的Internet Advisor(网络专家系统)、wG公司的Domin系列协议分析仪等。另外还有一些纯软件的协议分析工具,有些甚至可以从网上免费下载。还有一些比协议分析仪更高层次的网络性能监测工具,站在应用层的角度使用一些基准流量对网络系统的性能进行分析,代表性的软件有Ganvmede Software公司的Chariot软件。另外,Network Associates公司的Sniffer Pro也是一款成熟的网络测量和协议分析工具,它提供两种主要的功能:分析和监测。该工具中的监测功能使分析员能够立即查看网络通信量统计信息,包括查看与一般利用率相关的利用百分比,以及与广播操作相关的帧和字节数。Sniffer分析仪使分析员在用协议数据模式匹配和地址过滤方法收集并显示时,对网络数据进行过滤。Novell公司的LANalyzer是一个软件分析仪,运行在Windows平台上,它可以分析以太网和令牌环网。LANalyzer在Windows平台上运行,能够监测并分析以太网和局域网令牌环网上传输的数据。分析员能够使用LANalyzer收集数据并停止分析仪来查看内部数据。收集的数据可以以总结模式、解码模式、或全十六进制视图模式来查看。中国科学院计算技术研究所也研发完成了大型网络性能监测和分析系统——NIPMAS,该系统具有基于用户业务、智能预警、网络整体性能评价和故障定位等功能。在网络协议测试方面,该系统具有己知最完整的测试集,支持多种网络接口。另外,艾菲技术公司开发了艾菲网页嗅探器,它可以用于找出符合条件的含有“TTP协议的IP包。NetScout Systems Inc公司的nGenius Gigabit Ethernet Aggregation Probe软件系统可以使IT管理员完全可见地监测敏感网段的网络和应用程序;另外还有Express Network Manager, sniffer, ping, traceroute Ethereal(一种免费网络工具)、微软网络监测软件Network Monitor, Fluke公司的协议分析仪等可以应用于网络管理、检测的工具。上述 用 于 网络管理和测量的各种网络系统功能比较强,有的在网络管理所需要的某些功能上比较优秀。但是对于一些中小型公司或者对某方面有特殊要求的场合不太合适。
1.3 技术分析
1.3.1 网络结构
计算机网络是一个非常复杂的系统,国际标准化组织ISO在1977年成立了专门的机构来研究这个系统,提出了著名的开放系统互联参考模型OSI/RM,就是我们常说的OSI。OSI是一个七层的模型,从底到上依次为:物理层、数据链路层、网络层、运输层、会话层、表示层和应用层。按照一般的概念,网络技术和设备只有符合有关的国际标准才能大范围的获得工程上的应用,但是现在情况却不是如此。得到最广泛应用的不是法律上的国际标准,而是非国际标准TCP/IP。这样,TCP/IP就常被称为是实际上的国际标准。TCP/IP标准只有五层结构,从下往上分别是物理层、数据链路层、网络层、应用层、运输层。下面给出其各层的定义及功能:
物理层:物理层的任务就是透明的传输比特流。在物理层上所传的数据单位是比特。传递信息所利用的一些物理媒体,如双绞线、同轴电缆、光纤等,并不在物理层之内而是在物理层的下面。
数据链路层:常简称为链路层,在发送数据时数据链路层将网络层交下来的IP数据报封装成帧,在两个相邻结点间的链路上传送以帧为单位的数据。每一帧包括数据和必要的数据信息。在接收数据时,控制信息使接收端能够知道一个帧从哪个比特开始到哪个比特结束。这样,数据链路层在收到一个帧后,就从其中提取出数据部分,上交给网络层。
网络层:网络层负责为分组交换网上的不同主机提供通信。在发送数据时,网络层将运输层产生的报文段或者用户数据报封装成分组或者包进行传送。在TCP/IP体系中,分组也叫做IP数据报。
运输层:运输层的任务就是负责两个主机中进程之间的通信。
应用层:应用层是体系结构中的最高层,它直接为用户的应用进程提供服务。这里的进程就是指正在运行的程序。在因特网中的应用层协议很多,如支持万维网应用的HTTP协议,支持电子邮件的SMTP协议,支持文件传送的FTP协议等等。
我们现在使用的网络都是基于局域网组成的。局域网中比较有名的就是以太网。以太网和TCP/IP协议是相辅相成的,是密不可分的。以太网工作在物理层和数据链路层,使用MAC地址,而TCP/IP工作在上层,使用IP地址,两者使用ARP和RARP协议进行转换。在以太网中,通讯都是广播的,也就是说在同一个网段的所有网络接口都可以访问在物理媒体上的数据,而每一个网络接口都有一个硬件地址,这个硬件地址就是网卡的MAC地址,大多数系统都使用48比特的地址,该地址用来表示网络中的每一个物理设备,每一块网卡上的MAC地址是不同的。要想实施网络通信要在硬件地址和IP地址间使用ARP和RARP协议进行互相转换。在实际的系统中,数据的收发是由网卡来完成的,网卡接收发送传输的数据,其根据驱动程序设置的接收模式判断数据包的接收与否,接收到后产生中断信号通知CPU,认为不该接收就丢掉不管,所以不该接收的数据网卡就截断了。
1.3.2 网卡的四种模式
在正常的情况下,一个网络接口应该只响应以下两种数据帧:
(1)与自己硬件地址相匹配的数据帧。
(2)发向所有机器的广播数据帧。
其实在一个实际的系统中,数据的收发由网卡完成,网卡接收到传输来的数据帧,网
卡内的单片程序接收数据帧的目的MAC地址,根据计算机上的网卡驱动程序设置的接收模式判断是否接收。而对于合法的网卡来说应该有以下4种模式:广播方式、组播方式、单播方式、混杂模式。
广播方式:该模式下的网卡能够接收网络中的广播信息。
组播方式:设置在该模式下的网卡能够接收组播数据。
单播方式:在这种模式下,只有目的网卡才能接收该数据。
混杂模式:在这种模式下的网卡能够接收一切通过它的数据,而不管该数据是否是传给它的。
2 需求分析
2.1 目标
为了开发出真正满足用户需求的软件产品,首先必须知道用户的需求。对软件需求的深入理解是软件开发工作获得成功的前提条件。需求分析的任务是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。针对本系统主要实现的目标能够直观的看到网络的利用情况,能够把特定的几种数据包进行抓取并存入数据库。通过本软件,公司内部人员能够进行信息的传达,对于特定的要监测的目标,能分析出其发送的内容。
2.2 用户的特点
用户多为公司员工,对网络知识有一定的了解,但是不太精通。
2.3 对功能的规定
a) 抓取数据包:捕获经过本地网卡的数据包,无论其目的地址是否与网卡地址匹配,都要求将其进行捕获。
b) 分析数据包:将数据包进行拆解分析,将其包含的信息一一分析出来,分析数据包内容包括:协议、源IP地址、目的IP地址、源端口号、目的端口号、数据包大小以及传送的数据,并以列表形式列举出来。
c) 查询数据包:对在线传输的数据包进行有选择性的查询,通过设置数据包的基本查询项,来搜索网络中符合要求的数据包,要求对以下几项目进行查询:(1)对协议的类型的查询(2)对源IP地址的查询(3)对目的IP地址的查询(4)对源端口的查询(5)对目的端口的查询。除以上几项可以单独查询外,还可以对几项进行综合查询,就是查询时同时满足多项条件进行综合查询。
d) 对数据包进行存储查询:用户要对查询的某些内容进行存储,以便以后进行查询。在存储之后可以随时打开数据库进行查看,并且提供查询功能,要求对以下几个项目进行查询:协议、源IP地址、目的IP地址、源端口和目的端口。
e) 对网络流量进行查看:对经过本机的流量进行统计,分析流量,直观清晰的显示流量流经的状况,查看包括:主机的总流量,流入本机流量,流出本机流量。
f) 单机发送:对本机发往网卡的内容能够捕获并显示发送的内容。该模块主要用于软件功能测试。
g) 多机发送:对指定IP的终端能够发送用户的信息,在接收端能够正确的显示出接收到的信息。
h) 监测模块:对有必要监测的目标终端,当指定其IP后,能接收并显示出其发送的内容。
结 论
网络数据监测及语义分析是一款以VC++为开发平台,以windows操作系统为运行环境的网络监测软件。从结构上分析,该软件主要包括两个模块。一个是以网络数据包抓取为基础的抓取、数据库分析、网络流量查看模块,另外一部分是语义分析及多机发送模块,能够起到监测的作用。整个系统开发都努力按照软件工程的标准来执行。需求分析阶段研究用户的具体需求,把用户的具体需求记录下来,达成共识。概要设计和详细设计两个阶段按照需求阶段的要求,考虑总体和具体的设计办法,在编码阶段将其实现,最后通过测试来寻找程序中的错误。其中网络数据分析模块是这个课题的主要部分,在该模块中,能够实现单机发送的验证工作,也能够实现多机发送的基本功能。还能对特定的终端实行监测,当锁定IP地址以后,该网卡即被监控,能够接收到其发送的所有信息。
软件在开发的过程中遇到过很多的问题,大部分是技术上的问题。在测试以后还有部分问题没有解决,还需要继续改正。
Directory
1 INTRODUCTION 1
1.1 Introduction 1 topic
1.2 Objective 1 topics
1.3 Technical Analysis 3
2 Requirements Analysis 7
2.1 Goal 7
2.2 User Characteristics 7
2.3 Functional requirements 7
2.4 performance requirements 8
2.5 Runtime Environment 8
3 Summary of Design 8
3.1 Functional Module Description 8
3.2 Basic Concept Design 9
3.3 software, the overall framework of 9
3.4 The relationship between functional requirements and procedures of 10
3.5 System Data structure design 10
3.6 Database Design 11
4 Detailed Design 12
4.1 User Interface Design 12
4.2 The data flow diagram of each module 15
4.3 Algorithm Analysis 18
5 System Test 21
5.1 The purpose of the test 21
5.2 The test requirements 21
5.3 The test phase 21
5.4 Test Content 22
5.5 Test Results 24
Conclusion 24
Thanks 26
References 27
1 Introduction
1.1 Introduction topic
In the rapid development of human society today, computer networks has become an indispensable part of life. Internet originated in the 20th century, the late 60s, early 70s, when the U.S. Department of Defense on the military base in order to be filled with a variety of vendors interconnect mainframe computers, so that they can exchange data in order to study to proceed smoothly, she founded the ARPA network plan. ARPA plans to try to build a network system, it can be a variety of different vendors computers connected. With the success of this scheme, all academic institutions, research organizations have also established with the ARPA program ARPANet connection. By the 20th century, 80 years, Internet this term because of potential production, it represents a decade of building a network around the globe covered. From 1990 onwards, the commercial use of the Internet in the United States rapidly expanded, while the Internet from persons belonging to minorities to use the original network system into ordinary people can also be used by network system.
However, with the wide range of network applications, the resulting wide range of problems, computer viruses, hacker attacks, cyber-crime incidents despite repeated prohibition. It is also looking for a variety of ways to solve this problem, but it has never been very satisfactory. As technology advances and changes in user requirements, TCP / IP as the network''s main technical agreement, in its constant self-improvement, the gradually be seen to be a good starting point to solve network problems.
The software is considered in the context of such a design, and technical aspects of speaking, through the TCP / IP protocol for network analysis is not absolutely reliable analytical methods, because there are means of deception and the IP packet technologies such as camouflage, but the overall speaking, compared to other programs, this approach more intuitive and reliable.
1.2 The purpose topics
Monitoring of network resources, view network problems, adjust the allocation of network resources to check the network environment to prevent hacking, to prevent the disclosure of important information within easy enterprise management. Network monitoring technology, along with the Internet''s growth and development is an important study of network technology is also frequently used in network management technology. According to the monitoring operation of the network when the impact of varying degrees, the network monitoring methods can mainly be divided into two: passive monitoring and active monitoring. Passive monitoring method is mainly through network traffic and status monitoring and the collection of parameters to complete monitoring tasks, the mechanism to avoid interfering in the normal operation of the network, has minimal impact on network performance, so this method is suitable for long-term monitoring of the network Monitoring. Proactive network monitoring methods need to be injected into the test flow data, and measured its response to the results of the data network state parameters. Monitoring process due to the introduction of additional traffic, so this approach will inevitably affect the normal operation of the network, so this application of monitoring methods in the application of certain restrictions; and depending on how much the introduction of additional traffic, the monitoring results also a need for some amendments to reflect the actual network operation. The use of network monitoring can monitor the distribution of user network traffic, effective detection and prevention of network traffic and application bottlenecks, the network broadcast storms from occurring, monitor the network utilization, in order to provide the basis for optimization of network performance. Network monitoring methods and means for the purpose of monitoring vary. Systematic monitoring of network monitoring tools can be used accordingly to compare typical and important network system monitoring tool is the network protocol analyzer. Network protocol analyzer generally have dedicated hardware and specialized software. Common type of protocol analyzer function is a packet capture, protocol decoding, statistical analysis and data traffic generation. We can use protocol analyzers to capture and extraction of the actual traffic online traffic characteristics, whereby the traffic on the network system modeling and characterization. In addition, the network protocol analyzer can also take the initiative to produce large amounts of data packets applied to the network, analyze the network response or increased testing of network systems. The typical protocol analyzer with HP''s Internet Advisor (network expert system), wG company''s Domin Series protocol analyzer and so on. There are other software-protocol analysis tools, and some can even be downloaded from the Internet free of charge. There are also a higher level than the protocol analyzer for network performance monitoring tools, standing on the perspective of the application layer traffic on the network using some benchmark performance of the system analysis, representative of the software Ganvmede Software Inc. Chariot software. In addition, Network Associates''s Sniffer Pro is a sophisticated network measurement and protocol analysis tool, which provides two main functions: analysis and monitoring. The monitoring function of the tool so that analysts can immediately view the network traffic statistics, including the view associated with the general use of the percentage of utilization, as well as related to the operation and broadcast frames and bytes. Sniffer Analyzer enables analysts protocol data using pattern matching and address filtering methods to collect and display of network data filtering. Novell is a software company LANalyzer analyzer, running on Windows platform, it can analyze Ethernet and Token Ring networks. LANalyzer run on the Windows platform, to monitor and analyze Ethernet and Token Ring local area network of data transmitted over the Internet. Analysts can use to collect data and to stop the LANalyzer analyzer to see the internal data. The data collected can be summed up mode, decoding mode, or full-hex view mode to see. Institute of Computing Technology Chinese Academy of Sciences has also developed the large-scale network performance monitoring and analysis system - NIPMAS, the system has a user-based business intelligence warning, the network overall performance evaluation and fault location functions. In the network protocol testing, the system has known the most complete test set to support multiple network interfaces. In addition, Effie Effie technology company has developed a web sniffer, which can be used to identify eligible containing "TTP protocol IP packets. NetScout Systems Inc''s nGenius Gigabit Ethernet Aggregation Probe software enables IT administrators to complete can be seen monitoring of sensitive segment of the network and application procedures; There is also Express Network Manager, sniffer, ping, traceroute Ethereal (a free web tool), Microsoft Network Monitoring Software Network Monitor, Fluke''s protocol analyzer, etc. can be applied to network management, testing tools. above for network management and measurement of various network functions are relatively strong, and some in the network management needs of some of the functionality is superior. But for a number of small and medium sized companies or to certain areas with special requirement is not appropriate occasions.
1.3 Technical Analysis
1.3.1 Network Structure
Computer networks is a very complex system, the International Organization for Standardization ISO in 1977 set up a special body to study this system, put forward the well-known Open Systems Interconnection Reference Model OSI / RM, is what we often say that the OSI. OSI is a seven models, from the bottom to the previous were: the physical layer, data link layer, network layer, transport layer, session layer, presentation layer and application layer. As a general concept, network technology and equipment, only those which meet the relevant international standards in order to obtain a wide range of engineering applications, but now the situation is not the case. The most widely used is not a legal international standards and non-international standard TCP / IP. This, TCP / IP is often referred to as the de facto international standard. TCP / IP standard is only five-story structure, from bottom to top are the physical layer, data link layer, network layer, application layer, transport layer. Here the definition of its layers and features:
Physical layer: Physical layer''s task is transparent transmission bit stream. At the physical layer of the data transmission unit is the bit. Transmission of information used by some physical media, such as twisted pair, coaxial cable, optical fiber, etc. are not within the physical layer but in the physical layer below.
Data Link Layer: often referred to as the link layer, sending data to the data link layer network layer IP datagrams to pay down the framing package, in the two adjacent nodes with transmission links between the frames as the unit of data. Each frame, including data and necessary data. Receiving data, control information to enable the receiver to know which bits of a frame from the beginning to the end of which bits. In this way, the data link layer, after the receipt of a frame on the data from which to extract the part handed over to the network layer.
Network Layer: Network layer is responsible for the packet switching line to provide communication of different hosts. Sending data, the network layer packet generated by the transport layer segment, or user datagram encapsulated ingredients group or package for delivery. In the TCP / IP system, the grouping also known as IP datagrams.
Transport Layer: Transport layer''s task is responsible for two hosts in the communication between processes.
Application Layer: Application layer is the highest level of architecture, which directly provide services to the user''s application process. The process here is talking about our running programs. In the Internet application layer protocols are many applications, such as support for the World Wide Web HTTP protocol to support e-mail SMTP protocol support for FTP file transfer protocol and so on.
We are now using LAN-based networks are formed. The more well-known local area network is Ethernet. Ethernet and TCP / IP protocol is complementary, and are inextricably linked. Ethernet work in the physical layer and data link layer, using the MAC address, and TCP / IP work in the upper, the use of IP addresses, both the use of ARP and RARP protocol conversion. In the Ethernet communications are broadcast, meaning that in the same network segment can access all network interfaces on the physical media, data, and each network interface has a hardware address, the hardware address is the network card The MAC address, most systems use 48-bit address, the address of each network is used to express a physical device, each a card on the MAC address is different. To implement the network communication to the hardware address and IP address using ARP and RARP protocols between each other to convert. In a real system, the data transceiver is done by the NIC, the NIC receive data transmitted to send, based on the driver to set receive mode to receive data packets to determine whether or not arising after receiving an interrupt signal to inform CPU, do not think that The receiver would be lost no matter, it should not receive the data card on the cut off.
1.3.2 NIC four modes
Under normal circumstances, a network interface should only respond to the following two data frames:
(1) with its own hardware address that matches the data frame.
(2) sent to all machines of the broadcast data frame.
In fact, in a practical system, sending and receiving of data from the card completed card to receive the data frame transmission, net
Single-chip card programs for the purpose of receiving data frames MAC address, according to a computer on the network card driver is set to receive mode to determine whether the receiver. As for the card is legitimate should have the following four kinds of modes: broadcast, multicast mode, unicast mode, promiscuous mode.
Broadcast mode: The mode the network card can receive broadcast messages.
Multicast mode: Set in this mode card can receive multicast data.
Unicast mode: In this mode, only the purpose of card to receive the data.
Promiscuous mode: In this mode, the card can receive all the data through it, regardless of whether the data passed to it.
2 Requirements Analysis
2.1 Goals
In order to develop a truly meet user demand for software products, we must first know the needs of users. The demand for software in-depth understanding of software development, a prerequisite for the success of the work. Requirements analysis task is to determine what work the system must be completed, that is, made on the target system, complete, accurate, clear and specific requirements. For the main goal of this system can be intuitive to see the network utilization, able to carry out a specific crawl several data packets and stored in the database. Through the software, in-house staff capable of conveying information, for specific objectives to be monitored, to analyze and send out the contents.
2.2 User Characteristics
Customers, mostly employees, to have some knowledge of network knowledge, but is not proficient.
2.3 Functional requirements
a) capture packets: Capture packets over the local network card, regardless of whether the destination address matches the network card address, they ask for their capture.
b) analysis of data packets: data packets teardown analysis of its analysis of the information contained in 11 out of analysis of data packets include: protocol, source IP address, the purpose of IP address, source port number, destination port number, packet size and transmission of data, and to list in the form listed.
c) query data package: on-line transmission of data packets selective queries, the data packets by setting the basic query items to search for the network to meet the requirements of the data packets, called for projects in the following query: (1) Agreement types of queries (2) on the source IP address of the query (3) The purpose of IP address of the query (4) on the source port of the query (5) on the destination port of the query. In addition to these few can be a separate check, but also can be a number of integrated query, is to check a number of conditions at the same time to meet the comprehensive inquiries.
d) the data packets stored query: Users want to query some of the content is stored for later query. In the store you can always open the database for viewing, and provides query capabilities to require several items on the following query: protocol, source IP address, the purpose of IP address, source port and destination port.
e) of the network traffic to view: The flow through the machine statistics, analysis flow, a clear visual display of traffic flows through the situation, see include: host total flow, flow to the machine traffic flow out of the machine.
f) stand-alone sent: sent to the NIC on this machine can capture and display the contents of the sent content. The module is mainly used for software functional tests.
g) Multi-machine sent: the specified IP terminal can send the user''s information, the receiver can correctly display a received message.
h) monitoring module: The goal of the need to monitor terminal, when specifying the IP, can receive and display to send out its contents.
Conclusion
Network data monitoring and semantic analysis is to VC for the development of a platform to run the windows operating system environment, network monitoring software. From the structural analysis, the software includes two modules. 1 is a network packet based on crawling crawling, database analysis, network traffic, view the module, and part of semantic analysis and multi-machine to send module, can play a monitoring role. The development efforts of the entire system are in accordance with the standards of software engineering to implement. Requirements analysis stage of the study the user''s specific needs, the specific needs of the user record and reach a consensus. Summary of design and detailed design stage of two stages in accordance with the requirements of the demand to consider the general and specific design approach, in the coding phase of its implementation, the final test to find program errors. In which the network data analysis module is the main part of the subject, in which the module can send a verification to achieve stand-alone work, but also be able to achieve the basic functions of multi-machine sent. Can also monitor the implementation of a specific terminal, when the locked IP address, the card Jibei monitoring, be able to receive and send all the information.
Software development process had encountered many problems, mostly technical problems. After the test there is part of the problem is not resolved, still need to continue to correct.