局域网内机房监控系统的分析与应用

时间:2022-11-27 20:00:08 浏览量:

摘要:为了提高开放机房的工作效率,操作流程的标准化,减轻工作人员负担,该文论述了机房如何集中管理是减轻工作强度,提高透明度的实现思想和方法,建立以计算机为工具的现代化机房监控系统,实现对机房管理工作的程序化、标准化、效率化。

关键词:局域网;机房监控;Socket连接

中图分类号:TP308文献标识码:A文章编号:1009-3044(2011)16-3846-02

Application and Analysis of Computer Lab Monitoring System in LAN

YU Xiao-rong

(School of Computer Science and Engineering, Jiangsu University of Science and Technology, Zhenjiang 212003, China)

Abstract: In order to improve the efficiency of open computer lab, standardize of operational process and reduce the burden on staff, this paper proposed ideas and methods toreduce the intensity of the work focused on management and transparency. As a tool to establish a computer lab management system modernization, and achieve the computer lab management procedures, standardization, efficiency.

Key words: LAN; computer lab monitoring; socket connection

目前,大多数高校的开放机房的管理不是很完善。机房是一个很大的局域网,有很多台电脑,在机房开放过程中,每个计算机机房都需要值班人员值班,耗费了管理人员的很多时间。如何集中管理是减轻工作强度,增加工作效率,提高透明度的一个重要问题。比如学校的机房如何统一管理控制,对机房管理规范化有很大的好处。

1 本文技术方案

1.1 实现思想

开放机房的管理主要是实现对学生上机进行自动收费和对机房机器进行监控管理。本文主要进行机房监控的开发,本文设计基于服务器,客户端的模式,基本实现了机房统一监控的功能,程序设计所使用的软件是Visual C++6.0,系统后台数据库为MS SQL Server2005,基于WindowsXP操作系统的环境。利用VC++的MFC功能,制作了两个程序,一个是服务器使用的,一个是客户端计算机使用的。

1.2 系统的开发工具

本系统的应用开发工具选择的是VC++,开发控制管理程序,系统后台数据库为MS SQL Server2005。

1.3 系统功能

局域网内机房监控系统的重要功能为:客户端登录、客户端监视、群发短消息、群发控制及客户端锁定等功能。系统结构图如图1所示。

2 实现方法

2.1 机房监控系统功能分析

2.1.1 服务器与客户端的通信

要想实现机房监控,先要做的是使两台电脑能够互相通信,否则其它操作就无从谈起,所以先利用VC++的Socket类,制作两个通信程序,服务器端的和客户端的两个程序。服务器发送数据到客户端,客户端计算机要能收到,同样客户端发送数据到服务器,服务器也要能收到,并且服务器要能广播式的发送数据,使得所有客户端电脑都能收到,否则就无法统一管理,当然客户端程序要有信息识别的功能,是自已的信息就接收,不是给自已的信息就丢弃。日前由VC++编制的很多Server<->Client式的聊天室就用了这种方法。并且该方法两机通信所用的网络协议是TCP/IP协议, 也就是说只要这台电脑能够上网,就可以利用这两个程序进行通信,因为现在上INTERNET网就必须用这个协议来传输信息[1-2]。实现了服务器与客户端之间的通信,下面就要考虑监控电脑的问题了。

2.1.2 客户端监视的实现

“监”就是监视,监视就是能够实时的从服务器计算机上知道客户端电脑当时在做什么事情,正在运行什么软件,这个对于局域网内管理客户端电脑有着极大的好处,可以防止客户端电脑的一些非法操作,这个功能实际上与现在一些大公司所用的老板监视员工操作电脑的软件非常相似。实现监视客户端电脑的方法就是先让服务器发送一条指令给客户端,也就是系统管理员要查看某一台客户端电脑正在干什么事情,然后客户端收到这条指令后,立刻执行这条指令,实际执行的操作就是“截图”,将客户端电脑当前使用的屏幕原封不动剪截下来,并生成一个图形文件,当然,这个“截图”操作客户端电脑的操作人员并不知道。截图以后客户端程序再将这个图形传输到服务器端,这个就利用了上面提到的服务器与客户端之间的通信,不单可以传输简单的数据,还可以传输整个文件。图形传输到服务器上后,再显示在服务器的屏幕上,让系统管理人员马上就看到这个客户端电脑屏幕的图形文件,这就完成了这个“监”的操作。该操作的核心就是利用C++完成客户端的截图操作,生成一个图形文件,再利用通信程序将这个文件发送到服务器端显示就成功了。

CSocket sockSrvr;

sockSrvr.Create(800);

sockSrvr.Listen();

CSocket sockRecv;

sockSrvr.Accept(sockRecv);

SOCKET_STREAM_FILE_INFO StreamFileInfo;

sockRecv.Receive(&StreamFileInfo,sizeof(SOCKET_STREAM_FILE_INFO));

CFile destFile("pict0000.bmp", CFile::modeCreate | CFile::modeWrite | CFile::typeBinary);

UINT dwRead = 0;

while(dwRead

{byte* data = new byte[1024];

memset(data,0,1024);

UINT dw=sockRecv.Receive(data, 1024);

destFile.Write(data, dw);

dwRead+=dw;

}SetFileTime((HANDLE)destFile.m_hFile,&StreamFileInfo.ftCreationTime,

&StreamFileInfo.ftLastAccessTime,&StreamFileInfo.ftLastWriteTime);

destFile.Close();

SetFileAttributes(StreamFileInfo.szFileTitle,StreamFileInfo.dwFileAttributes);

sockRecv.Close();

2.1.3 客户端群发消息与关机功能的实现

做完“监”这个功能后,下面要做是“控”的功能。“控”就是控制客户端电脑的操作,主要体现在控制客户端电脑的关机、重启、锁住电脑等的操作,也可以包括给客户端电脑发送一些广播信息,叫上机人员下机或不要玩游戏等一些广播信息,这样就不用在机房门口用大喇叭喊了。控制电脑的关机就不用机房下班的时候将没有关掉的电脑一台一台的再去关掉,只要统一关机就可以了,这就利用了服务器的信息广播的功能,群发数据,谁都可以收到。当然也可以在服务器端只给一部分客户端电脑发送数据,让一部分电脑关机,最简单的实现方法是,还是群发数据,在数据上加上识别码,由客户端电脑判断该识别码,是叫我关机我就关机,不是给我的数据,我就扔掉;更有效率的方法在服务器端选好电脑后,逐一给这些电脑对应的ip地址发送数据,同样加上识别码,由客户端电脑判断该识别码,叫我关机我就关机。同样,控制客户端电脑的重启也是这种方法,只不过重启和关机的程序代码不同罢了。

2.1.4 客户端锁定功能的实现

锁住电脑就是让该台电脑处于一种限制使用的状态下,让那些没有此台电脑上机权利的操作人员无法使用,一进入操作系统就被锁住键盘和鼠标,任何系统控制键都无法使用,例如Ctrl+Alt+Del键等都被屏蔽了,仅有几个数字键可用,并给系统管理人员留了一个密码入口,以便调试或其他紧急操作,而客户端操作人员是不知道密码的,就是泄密也不要紧,可以即时改变密码。那些在此台电脑上机权利的操作人是可以使用的,只要在服务器端把这台客户端电脑解锁就行了。发送广播电消息,就由服务器端发送一条消息,就由服务器,端发送一条消息给所有电脑或一部分电脑或一台电脑都可以,通知该操作人员。如上所述,还要再将客户端程序放置一个好位置,先要将客户端程序放入WINDOWS注册表中使它可能在启动的过程中能够运行,还要关键的一点,我们都知道,在WINDOWSXP中按CTRL+ALT+DEL键可能看到WINDOWS正在运行程序,所以将该客户端程序隐藏起来,使它在按CTRL+ALT+DEL 键时消失掉,有人会问,将CTRL+ALT+DEL键屏蔽起来不就行了,也可以。但屏蔽的话会造成操作人员在WINDOWSXP中操作的一些不方便,所以最好将客户端程序隐蔽好一点,这样这个机房监控的功能就稍完善点了。

2.2 服务器端监控界面

如图2所示服务器端监控系统界面,每个小图标对应着机房的每一台客户机,点击某台客户机可以进行对话、控制等操作。

3 结束语

本文描述了局域网内客户端监控实现的主要过程,论述了机房如何集中管理是减轻工作强度,提高透明度的实现思想和方法,建立以计算机为工具的现代化机房监控系统,实现对机房管理工作的程序化、标准化、效率化。

参考文献:

[1] 贾斌.网络编程技巧与实例[M].北京:人民邮电出版社,2001.

[2] 秦文虎,王汉成.基于IC卡的开放型机房管理系统的设计[J].实验室研究与探索,2003(6):89-92.

注:本文中所涉及到的图表、注解、公式等内容请以PDF格式阅读原文

推荐访问:监控系统 机房 网内 分析