计算机网络课程设计综合实验,计算机网络课程设计报告实验报告

a7f4a3f590493a1e451dd952a488fd7c.gif 计算机网络课程设计报告实验报告

(21页)

c412586f82475f7f30428bce5f9f313f.png

本资源提供全文预览,点击全文预览即可全文预览,如果喜欢文档就下载吧,查找使用更方便哦!

24.9 积分

中南大学课程设计报告课程:计算机网络课程设计 题目:基于Winpcap的网络流量统计分析指导教师:张伟目录第1章 总体设计 1、 实体类设计 --------P32、 功能类设计 --------P33、 界面设计 --------P3第2章 详细设计 1、 实体类实现 --------P42、 功能类实现 --------P43、 界面实现 --------P5第3章 源代码清单及说明 一、CaptureUtil.java --------P7 二、MyPcapPacketHandler.java --------P9 三、PacketMatch.java --------P9 四、Windows.java --------P13第4章 运行结果 --------P19第五章 心得体会 --------P21第1章 总体设计1、 实体类设计TCP、UPD、ICMP、ARP、广播数据包五个包的数据结构设计2、 功能类设计(1) 网卡获取(2) 包的抓捕(3) 包的处理3、 界面设计(1) 布局(2) 按钮功能连接第2章 第二章 详细设计一、实体类实现TCP、UPD、ICMP、ARP、广播数据包五个包的数据结构设计。本程序采用Java编写,基于win10pcap。Win10pcap是winpcap在win10系统上的适用版本。Java对于winpcap使用jnetpcap进行支持。对于TCP、UPD、ICMP、ARP、广播数据包五种类型的包,在jnetpcap的jar包中大部分已经封装好了相关的实体类型。对应如下:ARP 实体类:org.jnetpcap.protocol.network.Arp;UPD 实体类:org.jnetpcap.protocol.network.Icmp;IP 实体类:org.jnetpcap.protocol.network.Ip4;TCP 实体类:org.jnetpcap.protocol.tcpip.Tcp;UDP 实体类:org.jnetpcap.protocol.tcpip.Udp; 而对于其中的广播数据包,其判断我利用捕获到的IP包的目的地址进行判断,若其目的地址为255.255.255.255,则认为其为广播数据包。2、 功能类实现(1)网卡获取电脑上的包的发送与接受都得通过网卡来进行,所以为了完成局域网数据包的捕获和统计,我首先要做的是获取到电脑上的网卡列表,然后选择一个网卡进行包的捕获。而相关代码在jnetpcap的官网的示例代码1中可以找到,从中可以学习到的是jnetpcap的各种使用方法。在我电脑上可以捕获到三个网卡,一个是本机自身的物理网卡,另外两个是虚拟机模拟出的虚拟网卡。(2) 包的抓捕Jnetpcap中包的抓捕也是有着固定的格式的,这在官网的示例代码中也是可以找到的,只要设置好相关的参数,就可以进行抓捕具体方法如下,利用Pcap对象的loop方法。就是实例化一个Pcap对象,然后调用其loop方法。第一个参数arg0 代表循环次数,第二个参数就是传入一个PcapPaketHandler或其子类的对象,这个对象类型是要由我们自己编写的对包处理的方法。(3) 包的处理在这里对捕获的包的处理我是编写了一个PcapPacketHandler的子类,然后重写了nextPacket()方法。在这个方法里我把捕获到的包当作参数传递个具体的处理方法packetMatch.handlePacket(packet)。packetMatch.handlePacket(packet)方法是由我自己编写的。handlePacket是packetMatch的一个静态方法,可以直接调用。在这个方法里面,它会把捕获到的包的包头和TCP、UPD、ICMP、ARP、广播数据包五种类型的包的包头进行一一比较,以确认是否抓到了了相对应的包。这儿还用到的就是jnetpcap的内部的一个方法,就是packet.hasHeader(arg0),通过在arg0传入已在jnetpcap里封装好的包的类型的实例,可以很好的判断该包是属于什么包类型的,是TCP、UPD、ICMP、ARP还是广播数据包。然后内部对于各种包的信息的输出也有很好的支持,可以直接使用相应的toString方法,就可以输出各种相关信息。(4) 网络流量统计对于各个捕获到的包,分别针对各种类型的包设计了一个Double变量用于统计其传送过来相应包头的大小,并在停止抓包后将统计的数据输出在最下方的TextArea里面。3、 界面实现本程序在设计GUI时使用了Java的一个很好的插件WindowBuilder。(1)布局一开始使用Border Layout布局,安排好各个按钮位置,文本框位置。后来采用Absolute layout,并将窗口大小固定化。在布局的最上方是一个JToolBar的实例对象,其中放置有选择网卡、开始抓包、停止抓包、清空记录等四个选项,中间是两个带滚动条的多行文本框,左边的用于显示捕获的包的列表,右边用于显示左边的我们选中的包的具体信息。最下方会在停止抓包按钮生效后输出总的抓包情况。(2) 按钮功能连接在布局的最上方是一个JToolBar的实例对象,其中放置有选择网卡、开始抓包、停止抓包、清空记录等四个选项,其中选择网卡的功能具体由JComboBox(多文本选择框)上的选项决定,这个多文本选择框监听着 网卡获取的方法,它会从该方法获得一个网卡列表,然后将其文本输出。开始抓包的方法所对应的事件是抓包的事件,并且该抓包事件是个并发的进程。因为如果不将其设置为并发进程,其会使其它事件一直阻塞,甚至连停止抓包都做不到。停止抓包的事件其实是改变了开始抓包中的一个标志位,让其为假。该标志为为真,抓包程序会一直进行,该标志为为假,抓包停止。下方两个文本框,左边的文本框监听的是开始抓包这个事件,当这个事件开始,这个事件会向文本框传输捕获到的包的列表,然后让其显示。而右边的文本框监听的是左边文本框 关 键 词: 计算机网络 课程设计 报告 实验

4d91c43bfc72ca913299809b07b4968f.gif  天天文库所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
目 录 一、设计目的 1 二、需求分析 1 2.1用户需求 1 2.2网络需求 2 2.2.1可恢复性 2 2.2.2病毒的防护 2 2.2.3安全性 2 三、网络总体设计 2 3.1各关键设备简单介绍: 2 3.2网络接入类型的选择 3 3.3网络综合布线 3 3.4网络拓扑图 4 3.4.1星型结构 4 3.4.2环形结构 6 3.4.3树型结构 7 四、总结 8 五、主要参考文献 8 一、设计目的 随着计算机网络的普及,为了能让公司更好的与现代社会的发展接轨。更快的获取市场 信息,为了让外界厂解该公司的相关信息组建企业网,以实现对"公司档案管理"、"产品 信息"、"供求信息"等进行计算机网络化的管理,通过建立公司内部的局域网,员工之间 可以进一步加强联系,实现信息共享。降低厂打印、分发各护文件、资料、报表的纸张 费用。 二、需求分析 现代化的公司需要的是一个现代化的办公环境,高速的工作效率可以创造好的企业文化 。通过调查某公司,该公司办公地点共一层楼,两积约为600平方多米,集团总公司:董 事长助理(1台电脑)、总经理室(1台电脑)、财务部(6台电脑)、人力资源(4台电脑) 、审计监察(3台电脑〕、营运管理部(2台电脑〕、后勤部(2台电脑)、企划设计部(4 台电脑〕、营销部(5台电脑)。共28台电脑。 2.1用户需求 公司的员工对电脑的需求有下列几点: 2.1.1信息的及时性和可预测性 快速的访问、传输和修改信息,对于一个公司的交易系统是至关重要的。用户是都希望 网速更快一点,提高工作的效率。一旦有了对响应时间的具体需求。我们就能确定设备 能力、连接速度和其他直接影响网络性能的因素。 2.1.2可靠性和有效性 在用户的角度看来,可靠性就是能稳定地提供服务,在一个可靠的系统里。在绝大部分 时间内系统资源可被用户使用。可靠性也意味着提供给用户的服务水平也必须持久有效 。 2.1.3适应性 适应性是系统适应用户改变需求的能力,网络适应用户的需求而带给用户所需的信息。 2.1.4可升级性 用户是通过网络对他自己的计算机的影响来评价网络的。现在科技发展的速度飞快。 计算机的系统也不断更新,因此必须具有可升级性。 2.1.5安全性 安全性是对用户所需的信息和设备的完整性的保证,用户安全需要包括经常 自动备份、发生问题后及时恢复和对关键数据进行管理。 2.2网络需求 这个公司内部对网终有几方面的要求: 2.2.1可恢复性 存储在服务器或主要硬件上的信息是公司的生命线。重要数据的丢失是致命的。所以, 正确备份数据是网络可恢复性的关键因素。良好的备份和归档程序只是一方面,还需要 考虑预防发生范围灾难的应对措施。 2.2.2病毒的防护 一个病寿可能在几分钟内感染整个网络。因此,防毒软件是很重要的,保护公司的整个 网络正常运行。 2.2.3安全性 所有在网上流动或暂存于网络结点中的数据都面临着危险。网络的安全就是保护资源包 括数据的保密性、完整性和可靠性。 三、网络总体设计 3.1各关键设备简单介绍: 局域网(Local Area Network,LAN)是指在某一区域内由多台计算机互联成的计算机组。一般是方圆几千米 以内。局域网可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、 电子邮件和传真通信服务等功能。局域网是封闭型的,可以由办公室内的两台计算机组 成,也可以由一个公司内的上千台计算机组成。 路由:是指把数据从一个地方传送到另一个地方的行为和动作,而路由器,正是执行这 种行为动作的机器,它的英文名称为Router。是使用一种或者更多度量因素的网络层设 备,它决定网络通信能够通过的最佳路径。路由器依据网络层信息将数据包从一个网络 前向转发到另一个网络。偶尔也称为网关(尽管网关的这个定义现在己经过时)。 路由器的功能简单的讲,路由器主要有以下几种功能: 第一,网络互连,路由器支持各种局域网和广域网接口,主要用于互连局域网和广域网 ,实现不同网络互相通信; 第二,数据处理,提供包括分组过滤、分组转发、优先级、复用、加密、压缩和防火墙 等功能;第三,网络管理,路由器提供包括配置管理、性能管理、容错管理和流量控制 等功能。 交换机(Switch)是一种用于电信号转发的网络设备。它可以为接入交换机的任意两个网 络节点提供独享的电信号通路。最常见的交换机是以太网交换机。 3.2网络接入类型的选择 以太网:物理介质由同轴电缆或双绞线组成,传输速率是10Mbit/s,,是现在常用的网络 ,可以满足公司对网络需求。 令牌环:物理介质是双绞线,传输速率是4Mbit/s或16Mbit/s,公司方面是满足要求的.但 是不是现在流行通用的网络。 光纤分布式数据接口:物理介顶是光纤。传轮速率是 100Mbit/s。是局域网的主干部分。 快速以太网:
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值