毕业设计基于C++的局域网软件监控系统设计.docx
《毕业设计基于C++的局域网软件监控系统设计.docx》由会员分享,可在线阅读,更多相关《毕业设计基于C++的局域网软件监控系统设计.docx(32页珍藏版)》请在冰豆网上搜索。
毕业设计基于C++的局域网软件监控系统设计
摘要
局域网监控系统是通过获取被控端的系统信息,实现可靠、实用、方便、高效的计算机安全管理系统。
它主要应用远程监控技术对局域网内的计算机运行状态进行监控。
通过获取被控端计算机实时的运行信息,局域网管理者可以在控制端查看任意一台局域网内被控端计算机的使用情况,随时监视局域网内计算机流量的运转状况,实现对局域网监控管理。
本文首先介绍了网络软件运行监控系统的背景和研究范围,以及研究的目的及意义。
概述了局域网监控系统开发中所应用到的关键技术:
socket的网络编程技术,并在此基础上提出了局域网软件运行监控系统的总体框架和设计。
本系统将对服务器端屏幕进行截取,并将屏幕信息传送给客户端,本系统采用面向对象的设计方法设计,最后对局域网监控系统的监控端和被控端的各个模块的具体实现进行了详细阐述。
被控端的主要模块有:
系统信息获取模块。
系统状态信息获取有三个功能分区:
屏幕信息的获取、端口的打开、发送屏幕信息三个小模块。
控制端主要的模块有:
系统连接模块、被控端桌面信息获取模块、桌面信息保存模块、局域网内部流量监测模块。
关键字:
局域网;VC++;桌面捕捉;流量监测
Abstract
LANmonitoringsystemisaccusedbygettingthesysteminformationandobtainreliable,practicalandconvenient,efficientcomputersecuritymanagementsystem.Itismainlyusedforremotemonitoringtechniquewlancomputerrunningstatemonitor.Bygettingaccusedofrunningthereal-timeinformation,computercontrolsidemanagerscaninLANLANcheckanyoneaccusedofendtheuseofcomputersinLAN,computermonitoratanytime,torealizetheflowofoperationconditionoftheLANmonitoringmanagement.
Thispaperfirstlyintroducesthenetworksoftwarerunningmonitoringsystemofbackgroundandresearchscope,andthepurposeoftheresearchandsignificance,summarizestheLANmonitoringsystemusedtodevelopthekeytechnology:
thenetworkprogrammingtechnologysocket,andproposedinthisfoundationtheLANsoftwarerunningmonitoringsystemdesignandtheoverallframework.Thissystemwillserveronthescreen,andwillonlyscreeninterceptionofsendingcontrolterminals,thissystemUSESobject-orienteddesignmethodoflocalareanetworkdesign,finalmonitoringandcontrolsystemofmonitoringterminalandaccusedtheconcreterealizationthemodulesareexpatiated.Themainmodulehasaccusedstateinformationacquisitionmodulesystem.Thesystemstateinformationacquisitionhasthreemodules:
thescreeninformationacquisition,portopen,sendscreeninformationmodule.Themainmodulecontrolside:
thesystemconnectingmodule,areaccusedofenddesktopinformationacquisitionmodule,desktopinformationpreservationmodule,LANinternalflowmonitoringmodule.
Keyword:
LAN;VC++;Desktopcapture;Flowmonitoring
1绪论
1.1课题研究背景
Internet在我国刚刚起步时,上网人群主要是从事IT技术的专业人员,年龄段多是中年人,随着我国科技的发展,随着互联网的迅速普及和完善,网络涉及到我们日常生活的方方面面。
越来越多的家庭和企业通过互联网来进行交流和沟通,给我们的生活带来了很多的方便。
但是也存在这很多不良的信息危害青少年的健康,影响员工的日常工作。
影响了孩子的身心健康,降低了员工的工作效率。
局域网软件运行监控系统可以通过桌面捕捉和流量监控的方式来监督局域网中计算机的动态。
局域网软件运行监控系统是通过获取被控端的桌面信息,实现可靠、实用、方便、高效的计算机安全管理系统。
它主要应用远程监控技术对局域网内的计算机运行状态进行监控。
通过获取被控端计算机实时的运行信息,局域网管理者可以在控制端查看任意一台计算机内被控端计算机的流量使用情况,监控局域网内部计算机的桌面并对桌面进行保存,实现对局域网内所操作的计算机的管理。
从目前的发展来看,很多公司为网络资源的合理利用伤脑筋,虽然公司有明文规定,上班时间不得做与工作无关的事情;很多家长为孩子上网担心,怕他们访问不良网站,接触不良信息。
有效的控制网络的应用,对于家长和公司领导来说是一个很迫切的需求。
这些都为局域网软件运行监控系统提供了很好的市场和发展前景。
1、局域网软件运行监控系统的定义
网络监控是指本地计算机系统通过网络(特别是Intemet)对远端的控制系统进行监测和控制。
网络监控又叫远程监控,从字面意思理解,远程指不是近距离的,监控指的是监测和控制。
远程监控的又一解释是在网络上由一台计算机(主控端、客户端)远距离去控制另一台计算机(被控端/服务器端)的技术,这里的远程不是字面意思的远距离,一般指通过网络控制远端电脑。
网络监控是建立在现代的计算机网络技术、通信技术、控制技术以及图形图像技术上的一个新的应用。
它采用多元的信息传输、监控、管理和一体化的集成,实现了信息、资源和任务的共享,达到了监控的实时、快速和高效,并能够和其他的计算机网络进行互连,向人们提供了一个更高效、更全面、更安全、更便捷的服务模式,改交了传统的监控模式。
仿真监控系统的技术指标有以下几个特性:
(1)实时性,它的含义是指能够实时地反映现场设备的运行状况。
(2)一致性,仿真监控系统的一致性体现在:
·外观:
主要指仿真的物体在外观上与原件相似,包括颜色、尺寸、样式等;
·显示:
数据的刷新与显示与现场一致;
·感觉:
操作的感觉与现场基本一致。
(3)可靠性和稳定性,监控系统在运行过程中应该可靠、稳定的运行。
网络监控系统属于仿真监控系统的一种,所以它除了应该具有仿真监控系统的以上技术指标以外,由于网络监控系统还涉及到数据的大量传输,所以还应具有区别于其他监控系统的特点,主要有以下两点:
·数据传输的实时性;
·数据传输的可靠性。
网络监控功能的实现一般采用客户机,服务器模式(Client/Server),由客户端和服务器端两部分组成。
服务器程序安放在被控制的计算机端,客户机程序安装在控制端。
在客户端和服务器端都安装成功之后,服务器端计算机提供服务,客户端在网络上可以连接到服务器的远程计算机。
建立起连接,然后就可以通过网络的互联协议TCP进行远程控制。
服务器端和客户端是相对而言的。
一个应用程序既可以是Server端,也可以是Client端。
一般情况下,被监控的计算机系统工作于服务器模式,监控者为客户端。
客户端主要向服务器端发出获取该端信息的请求并将从服务器端发送回来的信息在本地实时显示出来,或者向服务器端发送控制指令。
2、局域网软件运行监控系统的发展现状和市场前景
计算机领域进行了一场又一场的技术革命,它给人们提供了高质量、高效率、低成本的通信方式,使我们的生活进入信息化时代。
在计算机发展的过程中,人们对计算机的监控系统由最初的模拟监控发展到了现在的实时化和信息化。
目前,网络监控系统已经在各个方面得到了广泛的应用。
网络监控因为可以远距离监控远程设备受到广大民众的青睐,对局域网软件运行监控系统的研究也将会带来巨大的经济效益。
国内高校、软件公司、软件爱好者都开发了很多网络监控系统。
局域网软件运行监控系统的开发也为企业提供了很好的监控设施,提高了员工的工作效率,规范了员工的工作行为,为企业提高了不少的经济效益。
伴随着社会上各个部门对网络监控的研究,网络监控软件进一步走向完善。
在国内外市场上,主要推出的是数字控制的模拟视频控制和数字视频控制两类产品。
前者发展已经非常成熟、性能稳定,并在实际拨弄工作中得到了广泛的应用,特别是在大、中型视频监控功能的应用尤为广泛;后者是新近崛起的以计算机技术以及图像视频压缩为核心的新型视频控制系统,该系统解决了模拟系统部分弊端迅速崛起,但仍需进一步完善和发展。
目前,视频控制系统正处在数控模拟系统与数字系统混合应用并将逐渐向数字系统过渡的阶段。
早在2003年,美国管理协会(AmericanManagementAssociation)调查发现75%的被调查公司已经在对员工的网上行为进行监控。
另据美国电子政策协会在今年的一项调查显示,有26%的企业借助网络监控系统监视员工,而且,已有2%的员工因为不正当使用即时通信系统被解雇。
《韩国日报》一篇报道称,韩国有60%的大企业、30%的公营企业会检查职员的电子邮件。
泰国某知名网站在去年的调查显示,有40%的企业员工在公司上网时受到公司监视。
员工监控软件正在变得越来越有吸引力,它们的价格越来越适中,使用也越来越简单。
企业意识到了这些监控软件的价值,它们有助于提高安全性,改进工作效率,减少员工的不轨行为和竞争性信息的泄漏,降低法律责任风险。
许多分析人士表示,目前考虑使用监控软件最符合企业的利益。
JupiterMediaMetrix的研究主管MichaelGartenberg表示,如果企业选择使用监控软件的话,他们必须告诉员工企业在监控什么,以及为什么要进行监控。
Gartenberg说,“员工必须明白,雇主有权利保护公司的业务通讯工具不被滥用,其中包括证明会使公司承担法律责任和给公司带来麻烦的情况”。
“雇主也需要明白,需要设定和实现期望值,需要在员工的信任和不信任之间取得恰当的平衡”。
家庭办公、远程技术的流行、远程教学的发展、企业内部的管理等各领域的应用是局域网软件运行监控系统的发展趋势和市场前景。
随着企业的发展,公司规模原来越大。
不在同一个办公楼、不在同一个城市都成为很正常的现象,如何控制规范员工的工作行为。
现在很多企业在办公室内部设置了摄像头,但是摄像头的监控功能很难具体到电脑桌面,看清楚员工具体在做什么,这样就无法从根本上具体化的管理每台计算机的具体行为。
局域网软件运行监控系统对可以监控到局域网内每台电脑的桌面,可以监控到局域网内部每台电脑的流量。
局域网软件监控系统解决了摄像头无法解决的细节问题,同时也给其本身的发展带来很大的推动作用。
1.2研究范围及技术要求
1、研究范围
1.设计系统的功能模块划分。
2.参考局域网软件运行监控系统的实例,并根据具体要求,实现本次系统设计的需求分析。
3.根据需求分析和模块划分完成代码功能实现。
4.总结文档的编写。
2、技术要求
1.对系统功能模块进行合理的划分,模块清晰明了。
2.成功的连接客户端和服务器端,实现双方信息的传送。
3.捕获服务器端的屏幕信息,并通过通信发送到客户端。
4.对捕获信息进行保存,方便以后查阅。
5.局域网内部计算机的流量实时监控。
1.3套接字相关概念
1、套接字的基本概念
套接字是通信的基石,是支持TCP/lP协议的网络通信的基本操作单元。
将套接字看作不同主机间的进程进行双向通信的端点,它构成了单个主机内及整个网络间的编程界面。
套接字存在于通信域中,通信域是为了处理一般的线程通过套接字通信而引进的一种抽象概念。
套接字通常和同一个域中的套接字交换数据(数据交换也可能穿越域的界限,但这时一定要执行某种解释程序)。
各种进程使用这个相同的域互相之闻用Internet协议簇来进行通信。
套接字可以根据通信性质分类,这种性质对于用户是可见的。
应用程序一般仅在同一类的套接字间进行通信。
不过只要底层的通信协议允许,不同类型的套接字闻也照样可以通信。
套接字有两种不同的类型:
流套接字和数据报套接字。
2、套接宇的工作原理
要通过网络进行通信,你至少需要一对套接字。
其中一个运行于客户机端,另一个运行于服务器端,根据连接启动的方式以及本地套接字要连接的目标,套接字之间的连接过程可以分为三个步骤:
服务器监听,客户端请求,连接确认。
·服务器监听,是服务器端套接字并不定位具体的客户端套接字,而是处于等待连接的状态,实时监控网络状态。
●客户端请求,是指由客户端的套接字提出连接请求,要连接的目标是服务器端的套接字。
为此,客户端的套接字必须首先描述它要连接的服务器的套接字,指出服务器端套接字的地址和端口号,然后就向服务器端套接字提出连接请求。
●连接确认,是指当服务器端套接字监听到或者说接收到客户端套接字的连接请求,它就响应客户端套接字的请求,建立一个新的线程,把服务器端套接字的描述发给客户端,一旦客户端确认了此描述,连接就建立好了。
而服务器端套接字继续处于监听状态,继续接收其他客户端套接字的连接请求。
1.4局域网软件监控系统设计的目的和意义
企业局域网监控软件、员工网络监控软件在今天也许变得越来越重要。
企业为工作用途建立的局域网平台不能沦为游戏、娱乐、泄密的工具。
局域网软件监控系统能够监控每台员工的电脑流量,捕捉员工计算机桌面清楚明了知道员工在做什么。
在精神上起到一定的震慑和禁止作用。
能从很大程度上控制员工打游戏,规范员工工作期间的工作行为,只做与工作有关的事。
计算机和互联网现已被许多企业应用,为企业带来了巨大的经济效益。
但同时也存在着不容忽视的一个问题是:
企业的员工都用计算机来工作了吗,还是占用上班时间来乱下载软件,玩游戏,或是聊天、上网?
既浪费时间影响工作效率,又影响计算机网络安全、有可能泄露企业商业秘密。
在互联网为企业带来便利和效率的同时,企业也正在受到意想不到的损失。
如果没有员工监控软件,您知道您的员工上班时间正在上网做些什么吗?
所以局域网软件运行监控系统为很多公司解决了这一个难题。
很多家长担心孩子沉迷网络游戏,访问不良网站,影响孩子的身心健康。
局域网软件运行监控系统的产生可以让家长随时看到孩子在做什么,为各位家长提供了一剂良好的放心药。
因此局域网软件运行监控系统是目前发展前景良好,实用性很强的一个软件系统。
同时,有利于我把实际学许到理论知识运用到实践中去,使我对理论知识有一个更好的理解和进步。
通过设计,不但提高了我们的动手能力,更能让我们把在实践中的不足反馈到学习中去,从而为了更好的工作和生活而努力学习完善自我。
局域网软件运行系统的设计有一部分原因出自公司的需要。
因为工作的需要公司很大一部分员工都是通过计算机网络进行办公,虽然公司对员工如何使用计算机有明确的规章制度,但是还是很难从根本上去杜绝上网聊天、打游戏、看电影的人存在。
公司曾经屏蔽了一些娱乐网站,但是不可能全部屏蔽掉,还会存在一些上班时间上网娱乐的现象。
如果给每个人只开通一些他们自己要用的网站也不现实。
局域网软件运行监控系统可以监控到局域网内部每台计算机的桌面,可以清楚明了的看到他在做什么事情。
同时,这个局域网软件运行监控系统可以监测到整个局域网内部每台计算机的流量,可以根据流量监测的结果去捕捉某台计算机的桌面。
局域网软件运行监控系统设计的意义在于让我们在学校学习到的理论知识终于得到了实际的应用,得到现实的升华;更让我们在设计的过程中了解到仅仅有理论知识是远远不够的。
人与人的相处,工作的技巧实际的应用。
每一项都是让我感觉到了自己的缺点和不足,促使我要更加努力的去学习去奋斗!
1.5论文组织结构
本文共分为四章:
·第一章:
介绍了局域网软件运行监控系统的研究背景,技术范围和要求,以及系统开发的意义与研究现状,概述了本文的研究内容;
·第二章:
介绍了系统开发的需求分析,系统开发的主要流程,套接字的基本概念和工作原理;
·第三章:
本章主要介绍局域网软件运行监控系统实现的详细设计。
其中包括:
被控端即服务器端得概述,技术分析,以及实现流程;系统连接模块的主要功能即控制端和被控端的连接,也是本系统的关键一步;桌面屏幕捕捉模块介绍系统桌面屏幕捕捉的主要概述,技术分析,以及主要的实现流程;屏幕位图保存模块主要介绍桌面屏幕的保存技术;需要调用系统的文件对话框,把图片以位图的形式保存在计算机中,是在桌面屏幕捕捉模块的基础上实现的;流量监控功能主要介绍局域网内部流量监测模块功能的实现,主要涉及到局域网内部计算机通过TCP/IP、UDP、ICMP等协议传送数据报的监测;
·第四章:
本章介绍了局域网软件运行监控系统的具体实现情况,设计过程中存在的问题和不足,收获与得失以及对未来的展望。
2系统设计
2.1需求分析
局域网软件运行监控系统顾名思义就是实现对局域网的监控。
本设计主要实现的功能是对被控端计算机的计算机屏幕进行捕捉,对局域网内部流量进行实时监控。
Socket通信是一类典型的网络通信技术,是一种非常实用的编程方法,所以采用socket编程。
为了有目的的去监控捕捉计算机屏幕,特此对TCP/IP、ICMP、UDP等协议的数据包进行捕捉,添加局域网内部流量监测模块,添加此模块的好处是可以根据流量监测结果对某台流量异常的计算机进行屏幕捕捉。
2.2可行性分析
根据中华人民共和国公安部《互联网安全保护技术措施规定》第8条之规定:
“互联网接入单位应能够记录并留存用户使用的互联网网络地址和内部网络地址对应关系;记录、跟踪网络运行状态,监测、记录网络安全事件等安全审计功能。
”第十三条:
“互联网服务提供者和联网使用单位依照本规定落实的记录留存技术措施,应当具有至少保存六十天记录备份的功能。
”公司在工作场所安装、部署、使用监控软件是有法可依的。
技术方面的可行性分析。
在当前的限制条件下,该系统的功能目标基本上可以实现,而最大的约束是时间,因为我对这个课题不是很擅长,而且由于本人已经参与了工作,允许我开发的时间很短。
该系统没有怎么用到特别高深的技术,利用的是我在学校学习的一些编程基础加上自我学习能力和努力。
本人平时多请教老师和同学,天天在实验室努力研究,经常与老师沟通交流。
综合分析虽然这个程序对我来说难度很大,但是功能也得到了基本的实现。
当然程序在运行的过程中也存在一定的缺点和不足,如果有时间我会尽量去修改和完善。
局域网软件运行监控系统开发的社会因素可行性。
员工行为管理问题:
员工若在网上冲浪、聊天、玩游戏、甚至在看多媒体电影,浪费企业的资源,降低企业的运营效率。
中小学生上网问题:
随着科技的发展,计算机互联网进入了千家万户,孩子上网问题也成了家长关心的问题之一。
任何企业的领导,每一个孩子的家长可能都遇到过这样的问题。
领导们希望通过现代的信息化管理技术来大力推动企业的发展,却由于信息化而带来的一系列问题:
计算机网络信息化管理并未能给予企业多大的效益,却带来了管理上的漏洞,企业浪费了资源,所以企业的领导们希望能对此有所作为。
家长们希望通过计算机让孩子接触更多的事物,学会更多的知识,得到更好的发展,网上却存在着这样那样的不良信息,时刻都有可能影响到孩子的身心健康。
因此,这个系统的开发具有很大的市场需求,具有开发的可行性。
从使用方面来讲,该系统软件具有界面清晰、操作简单等优点,任何具有计算机简单操作能力的人员均能熟练操作。
经过以上的可行性分析,我们对此系统的市场、技术,时间和资源,人力方面的可行性有了详细的描述,证明系统具有可开发的价值,以及其开发过程的可行性。
2.3设计目标
本系统属于小型局域网的系统,可以依据ip对某台计算机进行屏幕捕捉监控并保存捕捉图片,可以对局域网内部计算机流量进行实时的监控。
本系统预计实现以下目标:
1.系统采用人机交互的方式,界面美观友好。
2.控制端可以随时运行,只要被控端的程序在运行,就可以捕捉到被控端屏幕。
3.可以对被控端的屏幕进行保存,留待以后查证。
4.运行网络流量监控功能,能够监控到整个局域网的流量。
2.4系统功能结构
局域网软件运行监控系统功能如图所示:
局域网软件运行监控系统
主窗体
图片保存
流量监控
通信端口设置
IP设置
通信端口设置
用户名、密码
图2-1局域网软件运行监控系统
2.5用户界面
局域软件运行网监控系统分为控制端和被控端两部分,其中被控端运行时只需设置通信端口,启动服务即可。
控制端主要有两个窗体组成,分别为主窗体、局域网流量监测窗体。
其中,主窗体用于端口、ip、用户名、密码设置,连接成功后用于接收显示屏幕信息,并存捕捉的屏幕信息。
局域网流量监测窗体用户获取局域网内部每台计算机的流量实时监控。
图2-2被控端主窗体
图2-3控制端主窗体
图2-4流量监测对话框
2.6程序流程图
图2-5系统流程图
2.7系统运行环境
局域网软件运行监控系统对运行环境有一定的要求,具体如下:
1、系统开发平台:
MicrosoftVC6.0。
2、系统开发语言:
C++。
运行平台:
WindowsXP
3系统详细设计
3.1被控端模块设计
1、被控端模块概述
局域网软件运行监控系统分为控制端和被控端两大模块,其中,被控端的主要作用是时时抓取本机的屏幕信息,将其分成多个数据报,发送到控制端。
为了保证屏幕信息能够完整的发送到控制端,被控端在发送一个数据报后,需要等待控制端发来的确认信息,然后继续发送下一个数据报。
2、被控端技术分析
被控端如果要实现屏幕信息的发送,必须要解决两个关键问题:
一是获取自己桌面屏幕信息,将其转换为位图格式;二是将位图信息发送到控制端。
3、被控端实现过程
(1)首先新建一个IDD_SREENSERVER_DIALOG对话框,右击建立类向导命名为CsreenServerDlg。
在对话框中依次加入静态文本框、编辑框、按钮等三个控件并给予初始化的定义。
同时添加数据包,位图相关信息,其他成员函数以及成员变量的定义代码如下:
structCapSreenHeader//图像头信息
{longfilelength;//定义位图文件长度
intwidth;//定义宽度
intheight;//定义高度
intblocklen;//数据块长度
longfactlen;};//实际数据长度
HBITMAPhBitmap;//初