APP下载

基于C/S的实时网络监控软件的开发与实现

2015-01-29河南农业职业学院袁社锋

电子世界 2015年15期
关键词:线程客户端远程

河南农业职业学院 袁社锋 李 磊

基于C/S的实时网络监控软件的开发与实现

河南农业职业学院 袁社锋 李 磊

本文主要介绍了多层分布式体系结构的设计方案。其工作原理是在计算机启动后自动运行客户端程序,并与应用程序服务器建立通信。网络管理员可以通过服务器程序对客户端计算机进行监控和智能化管理,计算机将根据服务器执行相应的操作,发送操作指令。该系统实现了整个系统框架的主要模块,网络监测数据初始化模块,网络数据传输模块,图像编码和解码模块,充分利用现有局域网资源,传输及时,管理信息系统。

网络监控;软件;开发

引言

发展现代网络信息技术,在国家的政治、经济和军事方面起着决定性的作用,人工监控和管理计算机已不能满足高标准、高需求的信息社会而被逐渐被淘汰,智能网络监测系统取而代之,监测的效果更动态,实时,准确,高效。

本系统结合传统的防火墙,网络入侵检测,黑客监控系统的诸多优点,主要采用多层分布式C/S架构开发。控制台监控,数据中心服务器,运行控制器和嗅探器四部分组成整个监控代理系统。多个监控代理可以是一个数据中心服务器,也可以通过监控控制访问,然后监控代理接收由数据中心服务器控制台命令转发。运行后,网络管理员可以实时动态监测所有的通信计算机之间,外部网络,内部网络,在同一时间的应用集设计、报警、跟踪和审计等功能于一体的智能监控网络系统。

1 基于C/S模式的远程监控系统的结构与功能分析

客户端程序和服务器端程序是构成C/S模式的远程控制软件的两个部分。将客户端程序安装到主控端电脑上,将服务器端程序安装到被控端电脑上,这两个操作都是在使用之前进行的。客户端和服务器往往分别是相距甚远的两台电脑,将用户请求的任务提交到服务器程序这个由客户端程序去完成,然后服务器程序以一种具体的形式作为结果返回,对用户显示;接收客户端程序提出的服务请求,并做出相应的处理,然后把结果返回给客户端程序,这些都是服务器程序需完成的任务。如图1所示,主要控制管理模块、各个功能模块和网络通信性模块通常组成客户端程序;服务器程序通常包括一个网络通信模块,一个功能执行模块,它包括自我保护和反逆向模块等。

图1 C / S模式系统结构图

2 C/S模式体系结构图

大型计算机应用系统被划分成若干个相互独立的子系统,客户端是整个应用系统资源的存储和管理的中心,多台服务器机分别对应的处理功能,共同实现完整的应用程序,这就是系统结构的C/S模式。由客户端和服务器构成远程控制系统的主要组成部分,客户端程序在系统中实现主控制功能,服务器程序是用户指令执行部分。

基于C/S模式的远程监控系统,分为客户端和服务器端程序,网络环境要求不是很严格,可以是局域网,也可以是一个广域网。安装到个人电脑上的客户端管理,用于控制区域内的电脑,包括界面信息显示、屏幕控制、信息反馈、网络通信、任务管理等功能。区域内作为服务器的电脑,具有包括自启动、服务器隐藏和网络通信等功能。大多数机房的计算机属于局域网络,服务器可以安装在局域网内部的电脑上,通过互联网连接的客户端建立连接,远程监控和协助客户接受。该系统的目的是同时向多台服务器提供远程屏幕监控和远程协助服务,系统结构如图2所示。

图2 基于C/S模式的远程监控系统

3 业务流程设计

3.1 客户端获取服务器的基本信息

客户端通过主控界面获取服务器的基本信息,这标志着服务器端成功的返回到客户端。当客户端程序启动时任务数显示为0,说明不需要服务器发送任务指令。当服务器和客户端连接成功后,服务器将默认的数据包,调用基本的信息采集功能模块获取系统的基本信息,实现基本信息数据结构,并根据包头自定义协议封装,发送到客户端。传输过程中,首先,需要对数据进行加密和压缩,同时,需要对接收到的数据进行解压和解密。

传输的数据通过线程被客户端接收,数据的报头首先被接收到,然后根据数据包定义的大小,把接收到的数据包的基本信息,发送一个消息发送到主控制界面,更新服务器窗口列表,显示信息服务器。客户端界面更新完成后,明确任务模块。该服务器成功传输数据之后,退出信息采集线程清理任务模块,从而完成了第一个默认任务。

3.2 服务器请求客户端进行远程协助

为了方便客户统一管理任务,所有的任务由客户端发往服务器,当客户端反馈数据时,根据相应的任务模块调用相应的功能,处理任务结果,并要求由服务器程序发起请求倡议,在客户端接收所创建的线程数据,同时服务器创建任务线程处理的请求,当服务器发送请求协助指令时,客户端可以找到相应的任务处理模块。

客户端收到服务器请求任务后,将消息发送到主控制界面,服务器列表中突出显示,并在“任务数”一栏更改为1,以提醒用户注意到服务器远程协助请求。如果用户选择立即控制服务器上的屏幕,然后改变主界面“任务数”显示为0,同时将消息发送给服务器,弹出提示“是远程协助”。因此,一个完整的请求援助过程,服务器要明确相应的任务,而客户端只发布数据,保存请求协助任务模块,等待一下个请求任务的发生。

4 客户端通用信息设计

通用消息包括消息的色彩模式(WM_CMOD)、网格数(WM_GRID)和压缩消息(WM_WM_COMP)。用户可以根据他们的公共对话框数据传输需求及局域网,选择不同的色彩模式、网格数算法和数据压缩集,以获取满意效果。

下面以数据压缩为例:

5 服务器端设计

(1)学生选择客户端的IP地址并连接到服务器。

(2)保持轮询和接收客户端发送的初始化数据。服务器启动一个线程,使用循环停止接收客户端给学生在线程的初始化数据,并将接收到的数据显示在服务器上。

(3)调用Loadwinsock加载并初始化Winsock,绑定本地地址,创建监听套接字,等待客户端接收。套接字主要用于接受客户端请求,并作出相应处理的反馈消息发送到客户端Sokcet。因为这部分在学生操作数据初始化模块的实现中已经进行了详细的讨论,这里不再赘述。

(4)调用客户端请求处理客户端线程函数,处理客户端请求。

客户端线程是一个客户端的线程通讯功能,该功能是等待从客户端程序发送消息。如果消息是“REFRESH”,则将其发送当前的桌面画面(更新网格);如果该消息是“Dicsonnect”,则连接这端和客户端;如果该消息用“WM_”开头,那么根据消息的类型,服务器执行的消息,发送结果返回给客户端。

6 结论

本文以Windows操作系统为开发平台,利用VC++ 6.0作为开发工具,利用网络通信技术,Winsock技术,通信技术的过程和面向对象的软件技术,实现了系统框架的主要模块,网络监测数据初始化模块,网络传输模块,图像数据编码和解码模块。同时网络数据传输的可靠性和实时采取了一些编程技巧和技术实现方法,该系统在局域网中运行状况良好。科技大学,2012.

[2]刘创.网络流量监控系统的设计与实现[D].北京邮电大学,2013.

[3]冷宁.网络流量监控系统的研究和应用[D].合肥工业大学,2004.

[4]朱文燕.网络流量监控与实现[J].电脑编程技巧与维护,2010:66-68.

[5]周忠英,李归祁.多媒体计算机图像数据压缩的实现[J].桂林电子工业学院学报,1996.1.

[1]许坚.计算机网络流量监控的设计与实现[D].电子

袁社锋(1981—),男,硕士,河南农业职业学院电子信息工程系讲师,研究方向:多媒体技术、程序设计。

李磊(1981—),男,河南洛阳人,河南农业职业学院电子信息工程系讲师,研究方向:计算机网络。

猜你喜欢

线程客户端远程
让人胆寒的“远程杀手”:弹道导弹
远程工作狂综合征
基于C#线程实验探究
基于国产化环境的线程池模型研究与实现
如何看待传统媒体新闻客户端的“断舍离”?
远程诈骗
县级台在突发事件报道中如何应用手机客户端
孵化垂直频道:新闻客户端新策略
大枢纽 云平台 客户端——中央人民广播电台的探索之路
浅谈linux多线程协作