当前位置首页 > 电子工程/通信技术 > 监控与视频会议
搜柄,搜必应! 快速导航 | 使用教程  [会员中心]

毕业设计之网卡流量监控

文档格式:DOCX| 31 页|大小 285.70KB|积分 20|2022-10-11 发布|文档ID:160820420
第1页
下载文档到电脑,查找使用更方便 还剩页未读,继续阅读>>
1 / 31
此文档下载收益归作者所有 下载文档
  • 版权提示
  • 文本预览
  • 常见问题
  • Evaluation Warning: The document was created with Spire.Doc for .NET.网 卡 流流 量 监 控 ———毕业业设计说说明书系 部: 学生姓名:: 专业班级:: 学 号: 指导教师:: 年 月 日日网 卡 流流 量 监 控摘 要随着社会的的发展,互互联网已已成为我我们生活活中不可可缺少的的一部分分,而网网卡在其其中起着着重要的的作用,它它是个人用户与与互联网网沟通的的桥梁通通过对网网卡流量量的监控控,使用用相应的的软件对对流量出出入的监监视,清清楚的知知道流量量的状态态,从而而不管在在管理方方面还是是在安全全方面,都都会对网网络管理理人员有有很大的的帮助本文介绍通过在.net开发平台上开发一个简单的网卡流量监控系统的过程,了解针对网卡监控的功能实现,掌握相关开发技术,同时利用软件工程的相关理论知识,了解软件开发的方法与步骤 首先,简单单介绍下下几款带带有监控控功能的的软件,比360安全卫士等,然后了解这些软件的功能;其次选择在微软的.net开发平台上使用C#语言进行开发,编写出功能简单实用方便的监控软件。

    主要包括以下几个方面:开发本软件所使用的开发平台与技术;IPv4、IPv6简单介绍;功能模块;功能设计;功能实现等最后,对本软件的开发过程进行简要总结,并介绍一下本人的体会和感想关键词】::网卡流流量 ;.NEET;C#;目 录一、概 述述1.1 项项目背景景与意义义随着互联网网时代快快速的发发展,各各类的应应用软件件层出不不穷,也也有许多多专门提提供各种软件下下载的专专业网站站,如天天空,华华军等,这这些网站站提供的的免费软软件大大大满足了了普通用用户的需需求,也也给他们们展示了了互联网网的神奇奇之处然而,有利也有弊,互联网在高速发展的同时也带着安全的隐患,比如黑客的攻击,木马等,因此,网络安全也很快得到了专业人士的重视,一系列的关于安全的软件应运而生,最大特点的就是杀毒软件和防火墙而在一些企企业中,网网络安全全起着至至关重要要的作用用,数据据的出入入是不允允许出现现任何闪闪失的因此网管人员在做好防护的同时也利用一些专业软件对网络进行实时的监控,以便及时的做出相应措施但是这些专业的网络软件都是针对网络流量的监控,属于企业级使用范围,而对于普通用户来说,虽然有杀毒软件和防火墙,但却不知道一些恶意程序也可以悄悄的在后台运行,可以神不知鬼不觉的连接网络,来窃取用户的信息和隐私。

    在我们的个个人计算算机上,网网卡是比比较容易易被忽略略的,它它是个人人用户与与互联网网连接的的关键所所在,而而且它也也有流量量的出入入,因为为网络上上的信息息流量是是通过计计算机的的网卡转换换把网上上的信息息呈现在在我们眼眼前我我们往往往都是关关注网络络流量,这这也是网卡卡为什么么容易被被忽略的的原因了了但是小事事物往往往有着大大作用,通通过对网网卡流量量的监控控,普通通用户的的下载速速率肯定定是比上上传速率率大很多多,当恶恶意程序序连接网络络时,上上传速率率却大大大大超过过下载的的速率,此此时用户户就该注注意是否否存在不不正常的的网络连连接作为学习网网络技术术专业的的一员,也也学习了了一点软软件方面面的编程程语言,同时也掌握了一定的软件开发理论,借助这次毕业设计,想对自己的想法做个论证,开发一个简单便易操作的针对本地计算机网卡流量监控的小软件,但作为毕业设计,由于本人没有任何软件开发的经验,肯定还存在许多的不足,以后会随着学习的深入而继续对它加以改善1.2 常常见监控控软件简简介下面举例介介绍比较较常见的的网络监监控系统统,比如如360安全卫卫士集成成的网络络监控,网路岗,分析它们的功能特点。

    1.2.11 3360安全卫卫士的网网络监控控360安全全卫士是是一款安安全类上上网辅助助软件,它它拥有查查杀恶意意软件,插插件管理理,病毒毒查杀,诊诊断及修修复四大大主要功功能,同同时还提提供弹出出插件免免疫,清清理使用用痕迹以以及系统统还原等等特定辅辅助功能能而在在它的7.00版本中中也正式式推出了了网络流流量的监监控功能能,主要要作用是是可以查查看系统统内各个个软件使使用网络络上传/下载速速度,可可以帮助助用户找找出后台台偷偷上上传的软软件现在网络上上出现越越来越多多的软件件因各种种目的而而联网,有有是为产产品更新新升级,有有的是为为了宣传传广告,特特别是有有些下载载工具和和一些视视频软件件及在线线音乐播播放器等等软件,会会产生很多的上上传流量量,这样样不仅许许多用户户的隐私私因此而而被泄漏漏,而且且上网的的效率也也会有大大大的折折扣,而而360的流量量监控功功能可以以清晰的的看到每每个网络络连接使使用的IP地址和和端口,并并且流量量监控使使用系统统标准的的底层智智能流量量获取技技术,不不占用带带宽资源源,不会会影响系系统性能能和网速速从以上简单单的介绍绍可以看看出,360安全卫卫士整体体是个功功能强大大,很好好用的安安全防范范软件。

    但但从单个个看来,它它仍然有有一些问问题当当用户安安装某些些程序,并并且是完完全信任任的程序序的时候候,会提提示一些些不必要要的安全全信息,而而且一旦旦拒绝,有有些程序序是无法法安装成成功的它它的流量量监控也也很是强强大,它它也许能能保证不不获取用户的的隐私,但但是它能能保证不不得到用用户计算算机的相相关信息息么,这这个就不不知道了了1.2.22 网监监管软件件------网路岗岗网路岗是目目前国内内领先的的上网监监管软件件,现在在已经推推出很多多代的网网路岗,而而且越来来越强大大,能通通过旁路路对网络络数据流流进行采采集、分分析和识识别,实实时监视视网络系系统的运运行状态态,记录录网络事事件、发发现安全全隐患,并并对网络络活动的的相关信信息进行行存储、分分析和协协议还原原能追追踪网络络运作情情况,一一旦发送送问题,立立即传送送警示讯讯息,或或重新启启动异常常中止的的服务,或或自动启启动某个个程序,搜搜集网络络上各装装置的重重要信息息,然后后利用这这些数据据制作出出各装置置不同层层面的利利用率与可用性性的报表表,使之之一览无无遗正是这一系系列的强强大功能能,使之之在一下下机构,企企事业单单位和校校园网吧吧得到了了广泛的的应用,但但对于个个人用户户来说,它它的功能能太杂,而而且一般般用户只只是简单单的上上上网,根根本用不不到这些些功能,最最终要的的,它还还不是免免费的。

    以上简单介介绍的网网络监控控软件都都是针对对与网络络流量的的,而网网络流量量跟网卡卡流量是是有区别别的,对对于个人人用户来来说,网网卡流量量的状态态也可以以从一定定程度上上体现带带宽使用用的情况况1.3 相相关技术术及开发发工具介介绍本系统采用用面向对对象的软软件开发发办法,以Microsoft公司的可视化集成开发环境 Visual Studio .Net 作为开发平台,以C#作为开发语言实现预定的需求功能1.3.11 Viisuaal SStuddio .Neet集成开开发环境境简介.Net是是 Miccrossoftt XMML WWeb serrvicces 平台Neet 平台为为创建新新一代分分布式Web应用提提供了所所有的工工具和技技术(表表示技术术、构件件技术和和数据库库技术)它它支持标标准的Intternnet协议,包包括HTTTP协议、XML(可扩扩展标记记语言)和SOAP(简单对象访问协议),从而实现了异构系统间应用程序的集成和通信Net 平台包括5个主要部分:Ø Winddows .NetØ .Nett企业级级服务器器Ø .Nett Web服务构构件Ø .Nett FrameworkØ Visuual Studio .NetVisuaal SStuddio .Neet 是为建建立基于于.Neet FFrammewoork应用程程序而设设的一个个可视化化集成开开发环境境(Inttegrrateed DDeveeloppmennt EEnviirommentt,IDDE)。

    它它提供了了更优秀秀的多种种编译语语言的编编辑和编编译统一一的开发发平台,他他是一个个快速开开发企业业级Web应用程程序以及及高性能能桌面应应用的工工具它它为所有有的编程程语言提提供了简简单统一一的代码码编辑器器,包括括XML编辑器、HTMML编辑器器、SQLL Seerveer接口、以以图形化化的方法法设计服服务器构构件的设设计器、监监控远程程机器的的Serrverr Exxploorerr可以以说,VissuallStddio .Neet集中了了建立分分布式应应用所需需的功能能使用用此集成成开发工工具而不不是用SDK编辑C#程序有有以下主主要原因因:Ø IDE支支持首行行缩进,切切c#程序序的关键键字等可可用不同同的颜色色直观表表示,以以便检查查Ø IDE的的语法导导航功能能可实现现动态查查找、提提示编辑辑工程中中的错误误Ø 便于开发发Winndowws应用用程序可可以像VVisuual Bassic一一样直接接拖放控控件来“绘制”Winddows窗体1.3.22 C#语言简简介C#是一种种现代的的、面向向对象的的语言,它它结合了了C/CC++和Vissuall C+++的强大大功能以以及Vissuall Baasicc 的简单单易用性性。

    C#有以下下新特性性:Ø 简单,CC#做了了些该进进,使语语言更简简单Ø 面向对象象,C##支持面面向对象象的三种种编程原原则:封封装、继继承和多多态Ø 类型安全全,C##去掉了了指针,从从根本上上保证了了程序的的稳定性性和类型型安全Ø 版本控制制,C##实现了了版本技技术,避避免了“DLLL灾难”Ø 兼容性,C#允许在遵守.Net Framework CLS 的条件下访问不同的API,可以与Windows的几种传统服务交互Ø 灵活性,C#允许声明一些不安全的方法和类,从而使用指针、结构和静态数组总之,C##是一种种安全的的、稳定定的、简简单的、优优雅的,由C和C++衍生出来的面向对象的编程语言它在继承C和C++强大功能的同时去掉了一些它们的复杂特性(例如没有宏和模版,不允许多重继承)C#综合了VB简单的可视化操作和C++的高运行效率,以其强大的操作能力、优雅的语法风格、创新的语言特性和便捷的面向组件编程的支持成为.NET开发的首选语言1.3.33 IPPv4、IPvv6协议议的简介介及比较较IPv4是是Intternnet Prootoccol verrsioon 44(网际际协议版版本4)的英英文简称称,而中中文简称称为“网协版4”。

    目前的的全球因因特网所所采用的的协议族族是TCPP/IPP协议族族IP是TCPP/IPP协议族族中网络络层的协协议,是是TCPP/IPP协议族族的核心心协议IPv4的的协议结结构:如如图1-11所示::图1-1 Ipv4协议议格式图图它的最大问问题是网网络地址址资源有有限,而而IPvv6的出现现完全解解决了这这个问题题,它所所拥有的的地址容容量是IPvv4的约8×110^228倍,IPVV6地址长长度为128比特,地地址空间间增大了了2的96次方倍倍,灵活活的IP报文头部格格式使用用一系列列固定格格式的扩扩展头部部取代了IPVV4中可变变长度的的选项字字段IPVV6中选项项部分的的出现方方式也有有所变化化,使路路由器可可以简单单路过选选项而不不做任何何处理,加加快了报报文处理理速度,IPV6简化了报文头部格式,字段只有7个,加快报文转发,提高了吞吐量,提高安全性,更支持多种的服务类型IPv6的的包头格格式:如如图1-22所示::图1-2 Ippv6协议格格式图IPv6与与IPvv4相比有有以下特特点和优优点:(1) 更大的地址址空间IPvv4中规定IP地址长长度为32,即有2^332-11个地址址;而IPvv6中IP地址的的长度为为1288,即有2^1288-1个地址址。

    夸张张点说就就是,如如果IPPV6被广泛泛应用以以后,全全世界的的每一粒粒沙子都都会有相相对应的的一个IP地址  (2) 更小的路由由表IPvv6的地址址分配一一开始就就遵循聚聚类(Agggreegattionn)的原则,这使得得路由器器能在路路由表中中用一条条记录(Enntryy)表示一一片子网网,大大减减小了路路由器中中路由表表的长度度,提高了了路由器器转发数数据包的的速度   (3) 增强的组播播(Muultiicasst)支持以以及对流流的支持持(Fllow--conntrool)这使使得网络络上的多多媒体应应用有了了长足发发展的机机会,为为服务质质量(QooS)控制提提供了良良好的网网络平台台4) 加入了对自自动配置(Auuto--connfigguraatioon)的支持持这是是对DHCCP协议改进进和扩展展,使得得网络(尤其是是局域网网)的管理理更加方方便和快快捷5) 更高的安全全性在在使用IPvv6网络中中,用户户可以对对网络层层的数据据进行加加密并对对IP报文进进行校验验,这极极大地增增强了网网络安全全二、 总体体功能设设计与实实现 在第一章章中简单单的分析析了一些些个人和和企业所所使用的的监控软软件,IPvv4、IPvv6的简单单介绍,还还有编写写本程序序使用的的技术、工工具等,下下面将从从功能设设计、功功能实现现两个方方面重点点描述。

    2.1 功功能设计计 现在的计计算机无无疑都是是比较前前卫的,而而且随着着无线技技术的发发展,无线网卡卡也出现现在个人人计算机机上,所所以一般般计算机机都具备备两块以以上的网网卡,根根据一下下监控软软件的功功能,去去掉那些些复杂的的功能,保保留最实实用常用用的功能能,专门门针对本本机网卡卡的流量量监控下下面主要要介绍程程序的功功能设计计及描述述、功能能模块图图等2.1.11 功能设设计及描描述 本程序序的主要要任务和和目的是是对本地地计算机机所有的的网卡流流量进行行监控,加加上一些些辅助的的本地信息息查询,进进程的显显示得到到当前计计算机的的基本信信息,达达到功能能简洁方方便,消消耗资源源少而又又不影响响日常娱娱乐的需需求其其主要划划分为下下面三个个功能模模块,每每个功能能模块的的作用描描述如下下: 本机基本本信息查查询: 查查看IP地址::主要查查看本机机在局域域网内中中的IP地址 查查看主机机名:用用于查看看本机计计算机的的名称 查查看MAC地址::查看网网卡的唯唯一地址址 查查看CPU信息::获取CPU型号、序序列号流量监控::获取到到本机的的网卡列列表,然然后针对对某块网网卡进行行动态的的流量监监控,并并显示出出来显示进程::获取当当前计算算机正在在前台或或后台运运行的应应用程序序的进程程2.1.22 功能模模块图 其具具体功能能如图2-1所示示: 图2-11 2.2 功能实实现 下面主要要介绍如如何根据据上述的的功能模模块图实实现具体体的功能能2.2.11 主界面面实现下图为本系系统的主主要界面面,由Vissuall Sttudiio中已安安装模板Winndowws 应用窗窗体程序序(winnforrm)生成成,所用用的控件件、组件件、容器器、文本本框等都都是有Winnforrm提供,本本想添加加点颜色色使之更更加的生生动,但但本人对对于美工工不是很很擅长,以后另行绘制,由于界面是控件、组件等拖放组成,大部分代码有窗体设计器自动生成,需个人改动的并不多,所用这部分就不详细说明了,只把主窗体MainForm的代码示下。

    如图2-2所示: 图2-22mponnentts == neew SSysttem..CommponnenttModdel..Conntaiinerr();;this..tabbConntrool1 = nnew Sysstemm.Wiindoows..Forrms..TabbConntrool());this..tabbPagge1 = nnew Sysstemm.Wiindoows..Forrms..TabbPagge());this..grooupBBox11 = neww Syysteem.WWinddowss.Foormss.GrrouppBoxx();;this..labbelCCPU = nnew Sysstemm.Wiindoows..Forrms..Labbel(();this..tbMMAC = nnew Sysstemm.Wiindoows..Forrms..TexxtBoox());this..tbnnamee = neww Syysteem.WWinddowss.Foormss.TeextBBox(();this..tbIIP == neew SSysttem..Winndowws.FFormms.TTexttBoxx();;this..chaakCPPU == neew SSysttem..Winndowws.FFormms.BButtton(();this..chaakMAAC == neew SSysttem..Winndowws.FFormms.BButtton(();this..chaakIPPadddresss == neew SSysttem..Winndowws.FFormms.BButtton(();this..chaakcoompnnamee = neww Syysteem.WWinddowss.Foormss.Buuttoon()); this..tabbPagge2 = nnew Sysstemm.Wiindoows..Forrms..TabbPagge());this..grooupBBox22 = neww Syysteem.WWinddowss.Foormss.GrrouppBoxx();;this..grooupBBox44 = neww Syysteem.WWinddowss.Foormss.GrrouppBoxx();;this..dowwn == neew SSysttem..Winndowws.FFormms.LLabeel());this..up = nnew Sysstemm.Wiindoows..Forrms..Labbel(();this..labbel11 = neww Syysteem.WWinddowss.Foormss.Laabell();;this..labbel22 = neww Syysteem.WWinddowss.Foormss.Laabell();;this..grooupBBox33 = neww Syysteem.WWinddowss.Foormss.GrrouppBoxx();;this..lisstaddaptterss = neww Syysteem.WWinddowss.Foormss.LiistBBox(();this..dowwnlooad = nnew Sysstemm.Wiindoows..Forrms..Labbel(();this..bshhow = nnew Sysstemm.Wiindoows..Forrms..Butttonn();;this..tabbPagge4 = nnew Sysstemm.Wiindoows..Forrms..TabbPagge());this..lisstprroceess = nnew Sysstemm.Wiindoows..Forrms..LisstViiew(();this..shoows = nnew Sysstemm.Wiindoows..Forrms..Butttonn();;this..endduppproggramm = neww Syysteem.WWinddowss.Foormss.Buuttoon());this..timmerccounnterr=neewSyysteem.WWinddowss.Foormss.Tiimerr(mponnentts);;this..tabbConntrool1..SusspenndLaayouut());this..tabbPagge1..SusspenndLaayouut());this..grooupBBox11.SuuspeendLLayoout(();this..tabbPagge2..SusspenndLaayouut());this..grooupBBox22.SuuspeendLLayoout(();this..grooupBBox44.SuuspeendLLayoout(();this..grooupBBox33.SuuspeendLLayoout(();this..tabbPagge4..SusspenndLaayouut());this..SusspenndLaayouut());2.2.22 本地信信息查询询功能实实现1、查询IIP地址::这个功功能需要要使用到到 Syysteem.NNet命命名空间间,在C#编程中中,可利利用它提提供的DNS类获取IP地址,主主要代码码如下::strinng iipadddreess = """;IPAdddresss[]] adddresssliist==Dnss.GeetHoostAAddrressses((Dnss.GeetHoostNNamee()));for ((intt i = 11; ii < adddresssliist..Lenngthh; ii++)){ipadddresss ++= aaddrressslisst[ii].TToSttrinng()) + "";;}tbIP..Texxt == ippadddresss.TToSttrinng()) + "";;上面的代码码就是利利用了DNS类,它它主要是是从域名名系统中中查找关关于指定定主机的的信息,通过Dns.GetHostAddresses(Dns.GetHostName())得到指定主机的IP地址,并把它赋予IPAddress[]类中的变量,再把它在文本框中显示出来。

    2、查询主主机名::这部分分功能与与上面的的IP地址功功能类似似,也通通过Syysteem.NNet命命名空间间和DNS类来从从域名系系统中获获得主机机名,主主要代码码如下::strinng hhosttnamme == Dnns.GGetHHosttNamme());tbnamme.TTextt = "";;tbnamme.TTextt = hosstnaame + ""\n"";看上去非常常的简单单,最主主要的还还是同过过DNS类来实实现3、查询MMAC地址::在获取取本地MAC地址时时,可以以使用WMI规范,在在.NEET框架中中,WMI规范的的实现定定义在Sysstemm.Maanaggemeent命名空空间中,但但要使用用该命名名空间就就必须先先引用该该程序指指令集,所所以在右右侧右击击引用,选选择添加加引用,在.NET中找到System.Management即可主要代码如下: ManaggemeentCClasss macc = neww MaanaggemeentCClasss(""winn32__nettworrkaddapttercconffiguurattionn");;ManaggemeentOObjeectCColllecttionn mcc = macc.GeetInnstaancees());foreaach (MaanaggemeentOObjeect m iin mmc){if (((boool)mm["IIPEnnablled""] === ttruee)tbMACC.Teext += m[""MaccAdddresss"]].TooStrringg() + ""\n"";m.Dissposse());}通过MannageemenntCllasss类来提提取MAC地址信信息,再再用MaanaggemeentOObjeectCColllecttionn类来检检索并返返回对象象的集合合,通过过循环来来找到MAC地址字字段值,并在文本框中显示。

    4.查询CCPU信息::与获取MAC地址的的功能类类似,也也是通过过可以使使用WMI规范,SSysttem..Mannageemennt的命命名空间间来实现现模块功功能主主要代码码如下::ManaggemeentOObjeectSSearrcheer qquerry;ManaggemeentOObjeectCColllecttionn quueryycolllecctioon;strinng ssql = ""sellectt * froom wwin332_pproccesssor"";queryy = neww MaanaggemeentOObjeectSSearrcheer(ssql));queryycolllecctioon == quueryy.Geet());foreaach (MaanaggemeentOObjeect mo in queeryccolllecttionn){labellCPUU.Teext += "cppu型号号:" + ""\n"" + mo[["naame""].TToSttrinng()) + "\nn" ++ "\\n";;}strinng ccpuIInfoo = "";;ManaggemeentCClasss ccimoobjeect = nnew MannageemenntCllasss("WWin332_PProccesssor"");ManaggemeentOObjeectCColllecttionn mooc == ciimobbjecct.GGetIInsttancces(();foreaach (MaanaggemeentOObjeect mo in mocc){cpuInnfo = mmo.PPropperttiess["PProccesssorIId"]].Vaaluee.TooStrringg();;labellCPUU.Teext += "cppu序列列号:"" + "\nn" ++ cppuInnfo..ToSStriing(() ++ "\\n";;}这段代码中中:ManaggemeentOObjeectSSearrcheer类用于于根据指指定的查查询检索索管理对对象的集集合ManaggemeentOObjeectCColllecttionn类为管管理对象象的集合合,分别别定义这这个两个个类的变变量,通通过SELLECTT语句提提取处理理器的所所有信息息,并提提取其中中的信息息,通过过循环语语句得到到CPU的型号号。

    CPU的序列列号则是是硬件ID,通过过上述两两个类调调用CPU属性值值,得到到属性ID字段值值,并显显示出来来2.2.33 流量监监控功能能的实现现这个模块的的功能也也可分为为两个小小模块,分分别是获获取网卡卡列表和和对指定定的网卡卡进行流流量监控控流量量监控功功能的实实现跟上上面的功功能实现现相似,也也是通过过引用NNetwworkkMonnitoor的程程序指令令集和调调用ussingg Ecchevvil命命名空间间值得得注意的的是,这这个模块块所引用用的链接接库在软软件的调调用库中中没有,因因此,不不得不寻寻求网上上朋友的的帮助了了把下下载下来来的NeetwoorkMMoniitorr.dlll放到程程序文件件中,并并在代码码页引用用1、 获取网卡列列表:主要代码如如下:monittor = nnew NettworrkMoonittor(();this..adaapteers = mmoniitorr.Addaptterss;if (aadappterrs.LLenggth == 0){this..lisstaddaptterss.Ennablled = ffalsse;MessaageBBox..Shoow(""No nettworrk aadappterrs ffounnd oon tthiss coompuuterr."));returrn;}this..lisstaddaptterss.Ittemss.AdddRaangee(thhis..adaapteers));定义NettworrkMoonittor类类中的变变量,通通过调用用monnitoor.AAdappterrs得到到本机所所有适配配器的信信息,并并添加到到列表框框中。

    联联网状态态下流量量信息如如图2--3所示示:图2-3迅雷下载任任务如图图2-4所示:图2-4 迅雷下载载下网卡卡流量信信息如图图2-55所示::图2-52、 监控指定的的网卡:: 这个模块块需要用用到类似似计数器器的功能能 主要代代码如下下:monittor..StoopMoonittoriing(();monittor..StaartMMoniitorringg(addaptterss[thhis..lisstaddaptterss.SeeleccteddInddex]]);this..timmerccounnterr.Sttop(();this..up..Texxt == """;this..dowwn.TTextt = "";;上述是在列列表框控控件上实实现针对对选择具具体的列列表项,然然后对该该网卡的的上传速速率和下下载速率率分别赋赋空值,当当点击显显示信息息时才开开始监控控:if (tthiss.liistaadappterrs.SSeleecteedInndexx < 0){MessaageBBox..Shoow(""请指定定要监控控的网卡卡", "提示", MesssaggeBooxBuuttoons..OK,, MeessaageBBoxIIconn.Innforrmattionn);this..timmerccounnterr.Sttop(();}elsethis..timmerccounnterr.Sttartt();;上述代码是是防止在在没有选选择网卡卡项的情情况下而而实现的的,if语句判判断有没没有选中中指定的的网卡,如如果没有有选择,则则thiis.llisttadaapteers..SellecttedIIndeex等于-1,即小小于0,反之之就会触触发计数数器对指指定网卡卡进行监监控。

    NetwoorkAAdappterr addaptter = tthiss.addaptterss[thhis..lisstaddaptterss.SeeleccteddInddex]];this..up..Texxt == sttrinng.FFormmat(("{00:n}} kbbps ", adaapteer.UUplooadSSpeeedKbbps));this..dowwn.TTextt=sttrinng.FFormmat(("{00:n}}kbpps",,adaapteer.DDownnloaadSppeeddKbpps;nsc1..Vallue = ((intt)addaptter..UplloaddSpeeed / 1100;; nsc2..Vallue = ((intt)addaptter..DowwnlooadSSpeeed // 1000;上面一部分分也是通通过调用用monnitoor.SStoppMonnitoorinng())和monnitoor.SStarrtMoonittoriing(()来实实现对列列表框中中的指定定网卡进进行监控控,中间间的命令令是当选选中指定定网卡后后开始执执行监控控,调用用计数器器,在这这个过程程中,又又通过调调用forrmatt把NettworrkMoonittor中中的addaptter..UplloaddSpeeedKKbpss(上传传流量)和和adaapteer.DDownnloaadSppeeddKbpps(下下载流量量)转换换成{00:n}} kbbps格格式,并并且把流流量在波波形控件件中显示示,从而而实现对对指定网网卡的流流量监控控。

    2.2.44 显示进进程信息息的功能能实现这个模块的的功能实实现大部部分用到到了lisstviiew控件的的属性,代代码如下下:this..lisstprroceess..Vieew == Viiew..Dettaills; 表示在在控件中中的显示示方式 如图2--4this..lisstprroceess..Collumnns.AAdd(("进程名名称", 1700, HHoriizonntallAliignmmentt.Leeft));this..lisstprroceess..Collumnns.AAdd(("内存使使用", 1500, HHoriizonntallAliignmmentt.Leeft));上面代码表表示在lisstviiew控件的的第一行行显示“进程名名称”,“内存使使用”,如图2-6所示::图2-6再调用Syysteem.DDiaggnossticcs.pproccesss得到本本地系统统的进程程信息,代代码如下下:Proceess[[] pproccessses = PProccesss.GeetPrroceessees()); ///获取取进程信信息Proceess insstannce;;for ((intt i = 00; ii < proocesssess.Leengtth; i+++){instaancee = proocesssess[i]];ListVViewwIteem ttempp = neww LiistVViewwIteem());temp..Texxt == innstaancee.PrroceessNNamee;temp..SubbIteems..Addd(Coonveert..ToSStriing(((Coonveert..ToUUIntt64((insstannce..WorrkinngSeet.TToSttrinng()))) / 110244) ++ "KK");; ///转换换成具体体数值字字符串this..lisstprroceess..Iteems..Addd(teemp)); //添添加到控控件中instaancee.Reefreesh(();}再利用woorkiingSSet 获取关关联进程程的物理理内存情情况,并并转换成成字符串串形式添添加到llisttvieew控件件当中。

    三、总 结结从开始的选选题,到到现在的的结束,历历时两个个多月在在这期间间,整个个毕业设设计的过过程并不不是一帆帆风顺的的在前前期的选选题过程程中的迷迷茫,在在开始的的程序开开发过程程中的手手足无措措,都记记忆犹新新以前前学习的的都是理理论知识识,突然然见要选选择一个个项目并并把它实实现,这这对我们们来说有有些措手手不及,而而且项目目设计所所用到的的知识范范围超出出了自己己所掌握握的范畴畴,顿时时一种无无力的心心情油然然而生幸幸好在导导师的细细心指导导下,在在同学的的无私帮帮助下,经经过自己己的努力力,终于于克服了了项目设设计的技技术难题题,认真真地完成成了毕业业设计在系统的开开发过程程中,由由于是初初次自己己动手设设计开发发,在知知识、经经验方面面都存在在着许多多的不足足而且且在整个个的开发发过程中中,对于于所用到到的知识识并不熟熟悉,从从哪方面面入手,整整个程序序要完成成什么样样的功能能成了一一直困扰扰我的问问题,后后来通过过对网上上的一些些小工具具的研究究分析,也也逐渐了了解了这这类软件件的作用用和功能能,并确确定了主主要方向向尽管管这个小小程序还还有很多多的不足足和缺陷陷,但功功能简单单,界面面简洁,操操作方便便等是这这个程序序必备的的。

    在此我要特特别感谢谢的是何何亮老师师,作为为我的指指导老师师,在这这个过程程中遇到到很多技技术上难难题,何何老师给给我提供供了很好好的解决决建议,给给了我不不少帮助助,也避避免了我我走许多多的弯路路,没有有他的指指导,我我就不能能较好的的完成课课题设计计任务,在在此真诚诚感谢老老师的帮帮助和辅辅导通过这个项项目设计计,我了了解了软软件开发发的过程程,巩固固了我对对vissuall sttudiio 的使用用和学习习,同时时也掌握握更宽的的知识面面虽然然我是学学习网络络技术专专业的,但但我相信信通过这这次的亲亲手实践践,不管管是现在在还是将将来,我我都将受受益匪浅浅致 谢在论文即将将完成之之际,回回顾充实实的学习习和开发发过程,本人在此向我的指导老师何亮表示真诚的感谢,整个过程当中遇到很多不懂的知识和难题,何老师给我提供了相当好的解决建议,给了我不少帮助,使我少走好多弯路在撰写论文阶段,何老师几次审阅我的论文,提出了许多宝贵意见,没有他的指导,我就不能较好的完成课题设计的任务在此真诚感谢他耐心的辅导参 考 文文 献1、《Viisuaal CC#.NNET应应用编程程1500例》 尹力宏宏主编,电子工业出版社 20032、《Viisuaal CC# 220055程序设设计教程程》 崔淼,陈陈明非 主编,机机械工业业出版社社 200073、《C##网络应应用编程程》 马骏主主编,人人民邮电电出版社社 200104、《C##从入门门到精通通》 王小科科主编,清华大学出版社 20085、C#高高级编程程 第六版版(PDDF电子子书)6、3600流量监监控介绍绍 htttp:://m/quuesttionn/144796657221.hhtmll?frr=alla07、网路岗岗介绍 hhttpp:///m/viiew//85339644.httm。

    点击阅读更多内容
    卖家[上传人]:youareknow
    资质:实名认证