已阅读5页,还剩27页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要随着计算机在我国各个领域的迅速普及和应用,及互联网在我国的高速发展,人们对计算机及网络的使用需求越来越大虽然目前家庭计算机的普及率很高,但仍然远远不能满足人们使用计算机的需求, 公共机房就应运而生,并且规模在不断的扩大。由于单个机房内计算机数量不断膨胀,传统的小型机房的人工管理模已经远不能满足实际的需要;另一方面,社会网络化程度以及人们网络应用水平的大幅度提高,使得公共机房的网络管理与安全受到威胁,所以提高目前公共机房的管理已经迫在眉睫。目前国内大型机房自动化管理水平低,存在管理困难,帐目混乱,人力不足,跑单现象严重等问题,已大大提高了公共机房运营的成本。系统是经过多方调研,针对以上需求,总结了现有管理软件的经验和不足而开发的一套管理软件,能够解决大型机房的管理问题。系统采用CS结构,开发语言为DELPHI,支持各种数据库,及Windows操作系统的各种平台。它具有可以管理1000个以上客户端电脑,支持非会员及会员运作方式,支持接触式及非接触式IC卡两种智能卡技术,高性能、高容量、高度安全、应用部署成本低等优势。论文重点介绍了它的设计思想、体系架构和实现原理。通过测试分析以及在国内300家大型公共机房的实际应用中表明,研究成果和所描述的设计思想、体系架构和实现原理是合理、切实可行的,达到了预期研究目标,特别是其整体拥有成本低廉,大规模商用推广的价值,另外,对于类似的系统开发也有一定的参考价值。1绪论1,1研究背景随着计算机信息技术的发展进步,我们的社会已逐步向数字化、信息化、网络化迈进111。目前计算机已广泛地应用于社会生活的各个领域,人们对计算机及网络的使用需求越来越大虽然目前家庭计算机的普及率很高,但仍然远远不能满足人们使用计算机的需求,那么公共机房就应运而生。并且规模在不断的扩大。公共机房计算机数量猛增,规模不断扩大,这就使得机房的管理工作成为一项非常繁琐的事情。机房规模的扩大、软硬件的不断更新、机房角色的多元化以及用户层次的良莠不齐,给管理带来了难度,机房管理人员承担着越来越繁重的工作。传统的小型机房的人工管理模已经远不能满足实际的需要:另一方面,社会网络化程度以及人们网络应用水平的大幅度提高,使得公共机房的网络管理与安全受到前所未有的挑战,利用计算机进行自动化管理势在必行。111公共机房管理的发展概况 公共机房从诞生到现在经历了几个发展阶段: 1)人工管理阶段主要根据机房的位置划分职责范围,每一个机房设置专业管理人员若干名,详细划分每个工作人员的管理职责,如机房值班人员,机房硬件维护人员都是类似的角色IS,61。帐务完全由人工手动记录,客户端计算机的软硬件维护也必须由维护人员在每台客户机上分别进行操作。此种方式在小规模机房管理中尚可勉强应用,但当机房规模扩大,客户端数量猛增后。则给机房管理人员带来很高的劳动强度,造成工作效率低,错误率高的后果。如果增加管理人员,又会大幅度提高成本,所以此种方式以基本被大型公共机房所淘汰。2)计算机辅助人工管理阶段此阶段为小型公共机房向中等规模机房转化的过程中所使用的管理手段,机房使用简单的软件进行管理,大部分工作仍然由工作人员按分工进行管理,虽然开始使用计费软件进行自动计费,但仍存在手工计帐的情况。而且对于客户端的维护仍然处于比较原始的人工维护阶段此种管理模式,确实减少了部分人员的工作量,也提高了一些工作效率,但机房仍然需要大量的人员进行管理,才能正常运做。3)全自动管理阶段近年来涌现了许多大型公共机房,机器数量在几百台以上,甚至出现了大型连锁公共机房的运营模式,这种机房计算机数量庞大,上机人数众多,这给机房管理带来了极大的挑战。以往的管理模式已经不能满足日常工作的需求,合理地记录和管理用户上下机,从而实现了机房日常工作的自动化管理,是大型机房进行计算机信息化管理的理想选择。利用计算机信息化管理,改善了传统的人工管理,降低了机房工作人员的劳动强度,提高了机房工作人员对用户的服务水平和工作效率等。此大型公共机房管理系统已成为大型公共机房不可缺少的助手和工具。112国内大型公共机房所面临的问题目前大型公共机房在管理上面临诸多问题: 1)同时上机的人数多。由于计算机教育的普及及互联网上信息量的巨增,致使上机人数猛增,同时上机人数可达数百人 2)机房规模大型化。由于上机人数的增多,导致机房计算机数量的增多,单个机房配备几百台甚至上千台计算机。3)上网人员水平提高,网络安全受到威胁。由于目前上机人数众多,层次多样话,部分上机人员计算机水平极高,这就给机房的安全管理方面造成了极大的管理隐患。因此,科学地管理、合理有效地利用有限的计算机资源,便成为十分紧迫的问题。针对这一问题,提出了。大型网管系统”这种管理模式。这种管理模式可以有效解决现在大型公共机房所面临的问题,且这种管理方式是目前比较先进的管理方式,已证实在市场上是颇具推广价值的。113国内大型公共机房的管理现状及同类产品的比较目前国内大型公共机房数量激增,更有大型连锁公共机房诞生,这种情况造成了对于大型机房自动化管理系统的需求。目前的大型公共机房已经完全摒弃了手工管理方式,完全采用了自动化方式的管理。所使用的管理系统大致分为以下几种: 1)纯软件方式 即不使用任何专门的硬件设备,仅通过计算机网络和软件来控制用户的上下机的管理系统。软件控制方式需配备数据库服务器、计费控制服务器,每台计算机上要安装客户软件端;客户端软件接受来自计费控制服务器发来的命令完成用户机的开锁、加锁、重启、关机等操作上机用户可在客户端上直接用自己的帐户登陆,使用方便,减少工作人员工作量。软件控制要解决的技术问题有:程序的自动加载、屏幕的屏蔽、客户端的安全等;难点为:系统的可靠性低、安全性差、控制力弱,易受到攻击和破坏,数据库安全问题、上机用户绕过管理系统使用机器,容易出现逃费的情况、对操作系统有特定要求等。由于控制核心技术为软件,安全性比硬件技术的系统差。但该方式费用低,适合投资小的公共机房。2)纯硬件方式硬件控制方式有控制电源和控制键盘鼠标两种,无环境机型限制,不过在系统运行的过程中通过断电来控制计算机,不符合正常的计算机操作。计费方面,每台计算机可选择安装ICID卡设备,上机费用可直接在用户ICID卡内扣除。硬件控制系统的硬件成本高,维护工作多,可根据不同机房的情况选择使用。但从成本来考虑,不能满足所有大型公共机房的要求。3)软硬结合方式该方式结合了软件和硬件的应用,实施简便,价格便宜,适应性强。每台计算机或计费控制服务器上安装ICID卡读卡器。用户可在客户机或计费控制服务器刷卡,解开所要使用的计算机,完成登陆。无论用户使用何种操作系统,都可使用该方式,具有良好的通用性;而且在未进入操作系统就完成了登录或注销操作,使用户不能轻易绕过管理软件,所要安全性比较高。但如果每台计算机上安装ICID卡设备,其成本高,硬件维护困难。目前市场上的机房管理系统多为以上三种管理方式,由于这三种管理方式各有利弊,所以机房要根据自己的实际情况来选取适当的管理系统。但机房的经营情况是多变的,一旦经营情况发生改变,就要重新考虑更换相适应的管理系统,这势必提高了机房的运营成本。这就需要一套灵活的软件来适应机房运营不同阶段的管理机制。本文所介绍的系统正是这样的软件,既可以采用纯软件方式,又可采用软硬结合的方式对机房进行管理,这就满足了机房不同发展时期的使用,不必在机房运营情况发生变化时更换软件,只需修改系统的设置即可。12本文研究工作121本文研究的意义公共机房管理系统是人、财、物、环境信息等因素构成的综合系统,具有很强的实用性。如何能有效地使用设备,方便用户上机,又使机房El常管理工作在保证质量和效率的前提下,将工作量降到最低,自然成为计算机机房管理所关心和寻求解决的热点问题。所以该机房管理系统的目标是:按照软件工程原理和方法,采用成熟的计算机和信息技术及手段,支持日常管理工作全过程,加强管理活动中资源的管理和应用提高机房各项管理的现代化水平,优化人、财、物和信息资源的综合配置。为机房管理提供全面服务。真正实现机房开放式管理,最大限度地减轻管理员的压力,为用户自由上机提供方便,利用计算机软件系统来进行计算机机房的管理,不仅可以减轻机房管理人员的劳动强度,缓解人员不足的矛盾,而且可以使机房管理做到更加有序。同时,可以使计算机用户群的管理逐步达到网络化、信息化、自动化、正规化和可视化。上机人员出入机房管理上实现科学化、自动化。本网管系统是专门进行网络集中管理而设计开发的,集实时计时计费,计帐于一体,利用一台管理机可远程控制整个网络内的所有计算机。可对任意机器进行开通停止,限时,关机,热启动等操作,并且具有会员制管理,各种包机、折扣营销手段众多功能,独特的多服务器计费功能更可以管理千台以上规模网吧是管理网吧,电脑游戏房,培训中心等复杂场合的纯软件管理解决方案。系统实施后取得了以下效果:I)减少了管理人员的工作量,工作效率大大提高由于该系统可对每台计算机进行远程管理,所以管理人员不用在到每个客户机那进行操作,在服务器端即可完成工作大大提高了工作斜率 2)计费更准确上机人员可用自己的帐号登陆系统,即时开机即时计费;即时推出,计费即时停止,使结算更准确。避免了营私舞弊的行为造成的帐务错误问题。3)管理成本降低网管系统投入后,运营大型公共机房人员大大减少,工作相对更简单,人工成本降大大降低,跑单现象得到避免,错帐、漏帐情况大大减少,避免了人为原因造成的财务损失。综上所述,本网管系统不失为大型公共机房提高管理质量的一个颇佳选择。122本文研究内容本系统采用ClientServer结构,以服务器为中心,遵循“客户机-服务器-数据库”操作模式,实现大型公共机房管理的自动化、计费的准确性及帐务的透明性,大大提高了机房管理的效率并大幅度的降低了管理人员的工作强度。主要内容包括: 1)通讯协议在无人职守机房里,安全、迅速且有效的控制功能无疑是该系统的核心部分之一由于机房里每台计算机均连上了局域网,本系统则采用软件的方式通过局域网络对每台客户机进行控制,其通讯协议是由自己定义的,它是位于UDP数据报协议之上的一套高层通讯协议。自定义报文包括:加密报头、机器名、操作码和对应操作应处理的数据等四大部分,在该报文中所有的数据均是加密的,在通讯时先将报头按照约定的解密算法解密,然后以报头的信息作为密匙对机器名、操作码和处理数据进行解密。机器名、操作码和处理数据解密过后即可行使相应的操作。其中每种操作码代表不同的操作。操作的对象由机器名确定根据机器名亦可在数据库服务器中找到其对应的ip地址。2)网络通讯安全性机房计费管理系统中重要的信息的交换主要存在于管理机和客户机之间,有价值的信息只限于机房局域网上的交互。系统采用成熟的加密算法(Blowfish加MD5算法)保证机房管理系统中重要信息的安全和保密。在对管理机与客户机之间传递的消息内容(如密码)进行必要的加密。3)数据安全数据库不与客户端直接进行交互,而是通过服务器,间接地完成客户端的数据访问请求并且用户密码也通过加密处理后,储存在数据库中当用户登陆输入密码时,系统将对其输入的密码进行加密,然后对比其是否与数据库中储存的密码一致 4)软件的授权注册为保证软件的合法使用,保证授权使用者和开发者的合法利益,我们设计开发出软件注册使用程序完成软件产品的注册功能只有经过授权注册的机房管理系统才能使用该系统,并且可以管理注册数量的客户机。本系统使用硬件加密狗的形式进行授权,只有在管理机上插入我方制作的加密狗才可以使用我方授权管理的计算机数量。随着网络技术的发展和自由软件成熟的冲击,大型公共机房是新技术应用的阵地之一,机房的职能、机房管理的内涵和模式必将受到技术发展的影响,机房建设的可持续性不仅仅是硬件基础设施的先进性、可升级性,其软件部分的建设也不容忽视,建立在软硬件平台上的机房管理也需要具有前瞻性,实践证明,在有限的投资基础上尽量提高机房效能是一条不变的原则,通过最大程度的开放、集中化的管理才可以有效提高使用效率,最大程度上的节约管理成本。2主要技术分析21网络通讯技术分析211 TCPIP协议与UDP协议的主要特性比较UDP协议是一个简单的面向数据报的运输层协议:进程的每个输出操作都正好产生一个UDP数据报,并组装成一份待发送的m数据报。UDP数据报封装成一份m数据报的格式如图21所示UDP不提供可靠性连接:它把应用程序传给m层的数据发送出去,但是并不保证它们能到达目的地。TCP和UDP都使用相同的网络层。TCP提供了一种可靠的面向连接的字节流运输层服务。如图22所示。TCP应用层提供与UDP完全不同的服务。TCP提供一种面向连接的、可靠的字节流服务。TCP将用户数据打包构成报文段;它发送数据后启动一个定时器,等待对端数据确认;另一端对收到的数据进行确认,对失序的数据重新排序,丢弃重复数据;TCP提供端到端的流量控制,并计算和验证一个强制性的端到端检验和。面向连接意味着两个使用TcP的应用(通常是一个客户和一个服务器)在彼此交换数据之前必须先建立一个TCP连接。这一过程与打电话很相似,先拨号振铃,等待对方摘机说 “喂”,然后才说明是谁。数据发送必须经过接收方确认,并且有超时重传等保障机制,这是TCP传输有一定保障的根本原因。可以看到,完成一次数据传送,除了完成连接、终止连接外,至少还需要一个数据分组与一个ACK分组。UDP与TCP提供不同的传输方式与不同的传输质量,TCP以增加网络开销的方式提供传输保障212两协议传输效率比较在只考虑UDPTCP分组情况下,发送应用数据,数据包为lP头加UDPTCP头加应用数据传输效率计算按照以下公式计算: 包传输效率=数据长度(数据长度+UDPICP头长度) 通过协议内容分析,可以看到单包传送的用户数据量比较小时,UDP协议传输效率明显高于TCP协议。行业应用数据量比较小,不同行业应用选择协议时,需要仔细分析应用层数据单帧字节数 以上只是数据分组的传输效率,TCP协议还需要连接、终止连接、ACK包等额外开销。采用UDP协议传送,UDP包等同应用数据包,基本没有额外开销。在整个应用系统中,传输保障是由应用西议与网络协议共同完成的,要充份选择发挥应用协议与网络协议的优势,达到总的效率最高、效果最好的目的。在应用协议中,大多具有基本的传输保障功能,通过应用层协议中超时重传等功能完全可以满足对UDP协议中少量丢包情况的处理,按照UDP丢包的概率,重传概率也在l左右。如果选用TCP协议,将导致数掘量大大增加。综上所述,本系统之所以采用基于UDP协议基础之上进行通讯控制的设计主要是考虑到以下两点: 1)在局域网内部,网络一般较为通畅,通讯速度快、延时小,适合UDP数据包的传送2)如采用面向连接的TCP协议,虽然可靠性较好,由于计费管理机要定时与所有的客户机进行通讯,所以势必会大大加重计费管理机的负担 UDP协议虽然是一种非连接的传输协议,没有确认机制,其可靠性不如TCP协议,但效率比较高,对于本系统在局域网内进行数据传输与远程控制,效率比数据准确率更重要 22网络安全性分析网络信息既有存储于网络节点上信息资源,又有传播于网络节点问的信息,即动态信息。网络信息安全一般是指网络信息的机密性、完整性、可用性及真实性。网络信息的机密性是指网络信息的内容不会被未授权的第三方所知。网络信息的完整性是指信息在存储或传输时不被修改、破坏,不出现信息包的丢失、乱序等,即不能为未授权的第三方修改。信息的完整性是信息安全的基本要求,破坏信息的完整性是影响信息安全的常用手段。当前,运行于互联网上的协议如TCPIP和UCP等,能够确保信息在数据包级别的完整性,即做到了传输过程中不丢信息包,不重复接收信息包,但却无法制止未授权第三方对信息包内部的修改。网络信息的可用性包括对静态信息的可得到和可操作性及对动态信息内容的可见性。网络信息的真实性是指信息的可信度,主要是指对信息所有者或发送者的身份的确认。221网络安全的实质网络安全的实质就是要保障系统中的人、设备、设施、软件、数据以及各种供给品等要素避免各种偶然的或人为的破坏或攻击,使它们发挥正常,保障系统能安全可靠地工作。222信息安全的目的信息的安全,就是要保障信息的如下四方面的特性: 1)数据的完整性它包括数据单元完整性和数据单位序列完整性。2)数据的可用性就是要保障网络中数据无论在何时,无论经过何种处理,只要需要,信息必须是可用的 3)数据的保密性即网络中的数据必须按照数据的拥有者的要求保证一定的秘密性具有敏感性的秘密信息,只有得到拥有者的许可,其他人才能够获得该信息,网络系统必须能够防止信息的非授权访问或泄露。4)合法使用性即网络中合法用户能够正常得到服务,正常使自己合法地访问资源和信息,而不至于因某种原因遭到拒绝或无条件的阻止。223网络的脆弱性网络的脆弱性大致如下: 1)无政府、无组织、无主管,因而网络本身就无安全可言。2)信息的高度聚集性。当信息的分离的小块出现时,信息的价值往往不大只有将大量相关信息聚集在一起时。方可显示出其重要价值。互联网聚集了巨量信息。很容易遭到分析性攻击。 3)方便的可访问性。网上的任何用户很容易通过网络得到一些敏感性信息。受害用户甚至自己的敏感性信息已被人盗用却全然不知 4)通信线路和网络本身固有的弱点。5)保守秘密的困难性。由于客户端在一个局域网内,任何人都可以在上面游戏、浏览,给敏感信息保密造成了很大困难。网络本身这许多脆弱性。给网络安全、信息保密构成了潜在的危险。224网络安全机制应具有的功能由于上述威胁的存在,因此采取措施对网络信息加以保护,以使受到攻击的威胁减到最小是必须的。一个网络安全系统应有如下的功能:1)身份识别 身份识别是安全系统应具备的最基本功能这是验证通信双方身份的有效手段,用户向其系统请求服务时,要出示自己的身份证明,例如输入User ID和Password。而系统应具备查验用户的身份证明的能力,对于用户的输人,能够明确判别该输入是否来自合法用户。2)存取权限控制。其基本任务是防止非法用户进入系统及防止合法用户对系统资源的非法使用。在开放系统中,网上资源的使用应制订一些规定;一是定义哪些用户可以访问哪些资源,二是定义可以访问的用户各自具备的读、写、操作等权限。3)数字签名。即通过一定的机制如RSA公钥加密算法等使信息接收方能够做出“该信息是来自某一数据源且只可能来自该数据源”的判断。4)保护数据完整性。既通过一定的机制如加入消息摘要等,以发现信息是否被非法修改,避免用户或主机被伪信息欺骗。5)审计追踪。既通过记录日志、对一些有关信息统计等手段,使系统在出现安全问题时能够追查原因 6)密钥管理。信息加密是保障信息安全的重要途径,以密文方式在相对安全的信道上传递信息,可以让用户比较放心地使用网络,如果密钥泄露或居心不良者通过积累大量密文而增加密文的破译机会,都会对通信安全造成威胁因此,对密钥的产生、存储、传递和定期更换进行有效地控制而引入密钥管理机制,对增加网络的安全性和抗攻击性也是非常重要的。23数据加密随着网络技术的发展,网络安全也就成为当今网络社会的焦点中的焦点,几乎没有人不在谈论网络上的安全问题,但我们坚信,这一切的安全问题我们会最终找到解决方案现代的计算机加密技术就是适应了网络安全的需要而应运产生的,它为我们进行网络信息的传递提供了安全保障 数据加密的基本过程就是对原来为明文的文件或数据按某种算法进行处理,使其成为不可读的一段代码,通常称为“密文”,使其只能在输入相应的密钥之后才能显示出本来内容,通过这样的途径来达到保护数据不被非法人窃取、阅读的目的。该过程的逆过程为解密,即将该编码信息转化为其原来数据的过程 当今网络社会选择加密已是我们别无选择,其一是我们知道在网络上进行文件传输、用户登陆存在许多不安全因素,特别是对于一些机密文件在网络上传输叨而且这种不安全性是网络协议所固有的;另一方面,网络给众多的商家带来了无限的商机,这对于无数商家无疑是梦寐以求的好事。为了解决这一对矛盾、为了能在安全的基础上大开这通向世界之门,我们只好选择了数据加密技术。1)传统的加密算法在传统的加密算法中,加密密钥与解密密钥是相同的,称为对称密钥算法。这样的密钥必须秘密保管,只能为授权用户所知,授权用户既可以用该密钥加密信息,也可以用该密钥解密信息。在早期的密钥密码体制中,典型的有代替密码。由于英文字母中各字母出现的频度早已有人进行过统计,所以根据字母频度表可以很容易对这种代替密码进行破译。2)数据加密标准DES DES是对称加密算法中最具代表性的。DES可以对任意长度的数据加密,实际可用密钥长度56比特,加密时首先将数据分为64比特的数据块,采用ECBCBC CFB等模式之一,每次将输人的64比特明文变换为64比特密文。最终,将所有输出数据块合并,实现数据加密。DES的保密性仅取决于对密钥的保密,而算法是公开的。DES内部的复杂结构是至今没有找到捷径破译方法的根本原因。但随着计算机技术的飞速发展,破解DES加密已经成为可能,DES加密技术不再成为我们加密措施的首选。3)公开密钥密码体制公开密钥密码体制最主要的特点就是加密和解密使用不同的密钥,每个用户保存着一对密钥一公开密钥PK和秘密密钥SK,因此,这种体制又称为双钥或非对称密钥密码体制在公钥加密算法下,公钥是公开的,任何人可以用公钥加密信息,再将密文发送给私钥拥有者:私钥是保密的,用于解密其接收的公钥加密过的信息 典型的公钥加密算法如RSA,是目前使用比较广泛的加密算法在互联网上的数据安全传输,如Netscape、Navigator和Microsoft Internet Explore:都使用7该算法RSA算法建立在大数因子分解的复杂性上RSA的保密性在于大数的分解难度上如果大数分解成功,则RSA也就无保密性可言了鲫。4)3DES加密算法实际上,现在对安全性能要求较高的用户愿意采用加强型的DES,叫做3DES(一=重数据加密标准)。3DES加密算法是基于DES,对一块数据用三个不同的密钥进行三次加密,强度更高,用3DES进行加密,要选用两个56位密钥,要加密的数据先后三次通过DES进行加密数据先通过第一个56位密钥进行加密。再通过第二个密钥,然后再次通过第一个密钥。经过这样加密的数据流,对与DES相适应的现今破译技术和计算机运算能力而言,破译的可能性较小。5)其它加密算法介绍:MD5 AES等MD5就是采用单向加密的加密算法,对于MD5而言,有两个特性是很重要的,第一是任意两段明文数据,加密以后的密文不能是相同的;第二是任意一段明文数据,经过加密以后,其结果必须永远是不变的前者的意思是不可能有任意两段明文加密以后得到相同的密文,后者的意思是如果我们加密特定的数据,得到的密文一定是相同的。6)Blowfish加密算法BlowFish算法用来加密64Bit长度的字符串。BlowFish算法使用两个“盒”-unsignedgned long pbox1S和unsigned long sbox4,256。BlowFish算法中,有一个核心加密函数:BF En。该函数输入64位信息,运算后,以64位密文的形式输出。用BlowFish算法加密信息,需要两个过程: (1)密钥预处理,密钥预处理: BlowFish算法的源密钥pbox和sbox是固定的。我们要加密一个信息,需要自己选择一个key,用这个key对pbox和sbox进行变换,得到下一步信息加密所要用的key_pbox和key_sbox (2)信息加密。本系统数据加密采用MD5加Blowfish算法进行加密,从而保障数据的安全性。24本章小结本章中具体分析了主要相关技术,包括网络通讯协议、网络安全及数据加密技术。这些相关的知识在后面的系统设计以及实现时,会有所涉及,故在此先做一些简单的介绍。3大型公共机房管理系统的设计31总体设计本系统采用CS结构,由一台记费服务器、多台客户机、一台数据库服务器组成。记费服务器能完成对客户机的远程控制及对上机消费进行管理。本系统可单独使用,也可选用各种IC卡或ID卡设备配套使用。随着第二代身份证的普及,更可以与新身份证设备配套使用,实现真正意义上的上网实名制。311系统概述系统按功能分两部分:服务器程序与客户端程序。系统整体结构如图31所示: 图31系统整体结构图服务器端程序安装在记费服务器上,由网络管理员或机房服务人员使用,完成对客户端的控制、记费、会员管理等操作;客户端程序安装在机房内的各个客户端上,由上机的客户操作,可对自己的信息及与服务器进行短信交互等操作。系统逻辑结构设计上划分为4层,分别是资源层、持久层、逻辑层和表现层。华中科技大学硕士学位论文根据应用的实际情况,这4层的实用是可选的,例如客户端中没有使用资源层,而服务器中使用了全部4层在设计上,层与层之间的耦合性尽量小,模块之间相对独立,以提高系统的可维护性和可扩展性。服务端主要有4部分组成,通讯部分完成同客户端的通讯,持久层部分通过ADO技术完成数据库的操作,逻辑处理部分完成系统业务逻辑的处理,还有一部分是表现层,完成人机交互。客户端主要有3部分组成,通讯部分完成同服务端的通讯,逻辑处理部分完成系统业务逻辑的处理,另外一部分是表现层,完成人机交互 资源层包含系统所用到的数据库、文件及第三方接口数据库端支持简单的文件型数据库ACCESS或者大型数据库服务器MS SQL Server,用户可以根据自身情况及机房的规模灵活选择第三方接口主要是lC卡和IP卡读卡器的接口,读卡器一般通过标准串行口同计算机连接,并且提供相应的开发接口,在设计上需要把接口部分抽象自定义为通用接口,然后调用设备提供的接口重新封装为通用接口,这样,如果更换了读卡器设备,只需要实现其接口,不需要对于系统本身进行大量的修改。持久层的设计目标是为整个项目提供一个高层、统一、安全和并发的数据持久机制。完成对各种数据进行持久化的编程工作,并为系统业务逻辑层提供服务。数据持久层提供了数据访闯方法,能够使其它程序员避免手工编写程序访问数据持久层,使其专注于业务逻辑的开发,并且能够在不同项目中重用映射框架,大大简化、增加、删除、修改、查询等功能的开发过程。持久层为业务层提供与数据源交互的最小操作方式,仅仅是业务层需要的数据访问接口,业务层完全依赖业务数据访问层所提供的服务。这些服务负责从业务层接收数据或返回业务实体,它屏蔽了实际业务数据与机器存储方式的差别。这样我们可以最大限度的保持了上层代码的复用性,当需要更换存储策略如果数据层访问差别太大,通过更换数据层无法解决问题的时候我们最多只需要更换持久层,而无需改变业务层。持久层由DAO (Data Access Object)层和系统服务层两部分组成。DAO层为每个业务实体提供最基本的数据访问服务,系统服务层为系统全局提供与业务关系不大的通用数据访问服务。逻辑层提供系统的核心功能并封装业务逻辑它们独立于传输信道和后端系统或数据源。这就为提升系统以支持新的、不同的信道及后端系统提供了必要的稳定性和灵活性通常,为特定业务请求提供服务涉及到业务服务层内的许多协作组件。逻辑层封装了实际业务逻辑,包含数据验证,事物处理,权限处理等业务相关操作,是整个应用系统的核心。因此设计一个能够真实反映实际需要的业务层是非常必要的,我们将实际业务具体分为业务数据与业务操作两部分。业务数据又是业务逻辑的核心,最终业务数据将以一种固定的格式表现于内存中,在系统的各个层次问传输。表达业务数据的方式一般分为两种Table Model和Domain ModelTable Model是将数据库中的表直接映射成为业务数据对象,这样的优点是适合于机器操作,但对于复杂业务关系的表达就很不直观。只适合于业务需求与数据表对应关系很直接的需要快速开发的情况。Domain Model则是根据实际业务按照现实方式用OO思想建模,这样很适合业务复杂的系统。通常采用自定义数据实体(Custom Data Entity)方式表达。自定义数据实体,有着良好的性能,编译时的类型检查,数据表现方式非常直观符合实际业务的操作方式等优点,但需要自己定义维护类,在分布式环境下需要自己编写序列化方法。由于本系统中业务需求与数据表对应关系很直接,所以选择Table Model方式。业务操作负责对业务数据进行各种业务相关的处理,例如验证,流向,整合,事物,权限等,但它不负责有关对数据源的操作。它与业务数据的关系设计有2种方式。分离业务数据与业务操作,将业务数据单独封装到只有数据get,set的数据类中将业务操作封装到独立的service类中与业务数据一起充当业务层这样当系统不复杂的时候显的简单直观,而随着系统日益复杂,service类会变的杂乱,而将本身耦合紧密的数据与操作分离对于复用也是不利的因素整合业务数据与业务操作,将业务数据与相关的业务操作封装在一起称为业务实体,业务实体作为统一的业务层为表示层提供服务,同时也在各个层次间传输,每个业务实体都可以做为一个单独组件形式存在,对于组件化复用有着莫大的好处,本系统采用整合业务数据与业务操作的方式。表现层设计上基于MVC架构MVC最初是在Smalitalk-80中被用来构建用户界面的M代表模型Model,V代表视图View, C代表控制器ControllerMVC的目的是增加代码的重用率,减少数据表达,数据描述和应用操作的耦合度。同时也使得软件可维护性,可修复性,可扩展性,灵活性以及封装性大大提高这种抽象结构能有助于将应用程序分割成若干逻辑部件,使程序设计变得更加容易。MVC结构提供了一种按功能对各种对象进行分割的方法(这些对象是用来维护和表现数据的),其目的是为了将各对象间的耦合程度减至最小在MVC结构中,模型代表应用程序的数据和用于控制访问和修改这些数据的业务规则当定义一个模型时,可以采用一般的简单的建模技术。当模型发生改变时,它会通知视图,并且为视提供查询模型相关状态的能力。同时,它也为控制器提供访问封装在模型内部的应用程序功能的能力。一个视图用来组织模型的内容。它从模型那里获得数据并指定这些数据如何表现。当模型变化时,视负责维持数据表现的一致性视同时将用户要求告知控制器。控制器定义了应用程序的行为;它负责对来自视的用户要求进行解释,并把这些要求映射成相应的行为,这些行为由模型负责实现。在独立运行的GUI客户端,用户要求可能是一些鼠标单击或是菜单选择操作模型所实现的行为包括处理业务和修改模型的状态 312系统部署设计系统部署设计如图32所示:客户端由上机人员使用,其任何操作都要与服务器端通讯才能完成操作。服务器端由机房管理人员操作,完成对客户端的管理及系统参数的设置313系统集群部署设计由于现阶段大型机房规模不断扩大,所以要求系统必须实现集群,当前服务器可带多组客户端组,当目前的服务器已不能扩充客户端时,可添加服务器端,达到提高可管理的计算机数,这样使该软件有良好的扩展性部署设计如图33所示系统的瓶颈不在于数据库端,而在于服务器端,因此,为了便于管理及减少复杂性。集群的设计上采用了同一个数据库服务器,需要扩展时,只是增加服务器的数量,每台服务器管理的客户端通过在数据库中指定,例如:第一台服务器管理前200台客户端,第二台服务器管理后200台客户端。事实上,在实际应用环境中,集群部署的必要性并不完全是因为规模的扩大,还有些其他的原因,例如机房可能分为2层楼或者更多层,如果只有一台服务器端,所有用户都只能到某一层去充值或者退款,管理上非常麻烦,给用户也会带来不方便,这时候采用集群部署方案,在每一层楼都设置一台服务器,就很容易解决这个问题。另外,集群部署还会带来一种好处,就是大大提高系统的容错性,假设集群中的l台服务器出现问题。无法运行,可以临时由其他服务器接管这台服务器管理的所有客户端,从而不影响机房的正常运作。根据服务器硬件的配置不同,单台服务器支持的客户端数量在250台到500台之间,因此选择高配置的服务器,2台服务器组成的集群就可以管理千台规模的机房的计费和管理,已经能够满足国内绝大多数机房的需要 32功能设计根据前章对系统需求的分析,本系统应实现上机人员可自助上机,机房管理人员可远程控制客户端计算机、管理费用、管理会员等功能。本系统可使大型机房实现规范化的自动管理,轻松管理帐务、会员,杜绝的跑单现象并且功能操作简洁易用,使机房管理人员能在短时间内熟练掌握该系统,大大的提高工作效率,为机房经营者节省了大量成本 系统顺序图见图34。图34系统顺序图由系统顺序图可见该系统分为客户端系统和服务器系统两部分,分别完成不同的功能和操作。系统类图见图35 会员类处理会员的基本信息,包括帐号、姓名、密码、卡类型、开卡时间、总充值、总赠送、余额等信息。图35系统类图充值记录类处理各个会员的充值时间、金额等信息。上机记录类处理上机的计算机号、会员帐号、上机开始时间、下机时间、折扣、消费金额等信息。客户计算机类处理计算机编号、IP地址、状态等信息。管理员类处理管理员帐号、密码、权限等信息。321系统客户端功能设计客户端主要实现上机人员登陆、系统管理、费用信息、修改密码、下线、短消息等功能。1)上机人员登陆:上机人员可使用会员卡或帐户登陆客户端系统。2)系统管理: 对客户端进行系统设置,此处必须要输入机房管理人员帐号密码才可以进行设置。3)费用管理: 上机人员可在此功能中查看自己的上机信息,包括开始时间、用时、上机押金、剩余金额、和机房提供的物品信息其它场景:如果用户输入的帐号或者密码信息不正确,登陆失败。4)修改密码: 上机人员可用此功能修改自己帐号的登陆密码。首先输入自己的帐户名,输入原密码,再输入新密码,输入正确,确定后提示“修改密码成功,请记住新密码”;输入错误,则提示“修改不成功,请重新输入”。5)下线: 上机人员点击下线结束上机,但此功能只有会员可以使用,临时用户必须到服务台才可以结帐。下线后,客户端锁屏。6)短消息: 上机人员可使用该功能向服务器端发送短消息,要求服务器端的机房管理人员给自己提供帮助。322系统服务器端功能设计服务器端主要实现对客户端系统的管理、对会员的管理及费用的管理。功能细分如下: 1)系统管理: 系统管理中包括登陆管理、系统设置、系统用户管理、修改密码、锁定离开与退出功能。(1)登陆管理: 机房管理人员输入帐号及密码登陆服务器,交班时,需要分别输入相应管理人的名称和密码,确定后实现交班操作。不同的机房管理人员可能有不同的权限,这取决于系统管理员分配的权限是否相同 (2)系统设置; 系统设置中又包括系统属性、服务器类型、系统备份,系统初始化几个设置。(3)系统用户管理: 增加、删除系统用户,分配系统用户权限,设定用户组。(4)修改密码; 修改机房管理人员登陆帐号的密码。每个系统用户登陆进系统后,都可以根据个人需要,进行密码修改;修改时需要输入原密码进行验证身份,而且新密码也要进行两次输入确认。(5)锁定离开: 已登陆的机房管理人员暂时离开服务器时,可先锁定界面,使其他人不能操作服务器端系统,再次解锁必须提供该锁定人的密码。(6)退出: 退出服务器端软件。2)计费结算: 此处集中了计费规则设定、上机、结帐下机、换机、在线定位等功能。(1)上机; 上机也就是客户登陆,但客户登陆依据不同机房有不同的方式;如果直接接受上机人员的现金,不给其办理会员卡、临时卡之类的,则需要为其指定一台闲置客户端,然后在该机上输入相应的押金,解锁后上机人员方可使用该客户端。而会员上机是办理一张卡直接在客户端登陆。(2)结帐: 和上机的功能相反,结帐是对某台机器进行结算,也就是常说的下机,和上机的过程类似,需要选定要下线的机器,点击结帐即可。会员卡等卡下机也可以在总控制窗口里面结帐。(3)换机: 换机在机房是比较常见的一种应用,有时直接输入押金的客人需要更换座位时,一般要依靠收银人员替其解决。会员卡等卡换机直接下线然后去其它机器登陆即可,也可以要收银人员手动换机 (4)在线定位: 在线定位是一种快捷方式查找机器和会员的方法,根据机器编号查到机器信息,通过会员名可以查到该会员是否在线,在哪台机器上面上线查询后窗口会显示该机器所在区域,而且光标会定位在该机器上面。(5)计费设置: 计费设置是对公共机房的收费规则进行设置,例如:一个小时收费多少钱;收费时金额的最小值设定等,在计费设置里面有费用设置、价格设置和客户端锁屏设置。3)远程控制: 遥控,主要是针对远程客户端来说的,这里是指在服务端可以对客户机进行锁定、解锁、重起、关机、客户端设置及连接客户端等操作。4)短信息: 短信是一个实用工具,是为了方便正在上机的用户和机房管理人员进行对话而设置的。如果上机人的余额快用完了或其他情况下,机房管理人员可以通过发送一些提示信息来提醒上机人,在预定的下拉菜单里已经有经常使用的提示信息将信息添加到信息编辑框中,直接回车,就完成了发送信息的操作了。5)会员管理: 会员,是本系统中比较最为重要的一个部分之一。每个公共机房都可能有几种类型的会员,而且对会员的收费尺度也不尽相同。所以需要提供相应的操作。在此功能中我们提供了三个设置内容,第一个是会员管理,主要是对会员进行添加删除,查找、打印、定位、详细查询等;第二个是会员批处理,主要是为了方便比较频繁生成卡的一些机房使用;第三个就是会员设置,包含会员设置,会员类型,赠送方式,包机方式等。6)机台管理: 机台管理主要是完成添加、删除机器功能,包含:机台管理,机台生成器,模拟运行,全部选定等几项功能。7)查询统计分析:查询功能也是最重要的功能之一,主要是方便交班查l临时上机押金、查询上机人员的上机记录、充值记录、以及管理者查询每天的收入明细和每个时段上机率 (1)非会员在线押金两个班次的机房管理人员交班,一定会涉及到现有非会员的上机押金(全采用卡的用户除外);这个时候上一个班次的收银要把所收到的钱以及现有押金都要叫给下一班,该功能即是为方便交接班设计的,可使上机帐务一目了然。(2)查询上机记录该功能可查询出上机人员详细的上机情况 (3)查询充值记录该功能可查询上机人员详细的充值记录。(4)收入统计根据收银人员上班的时间和交班的时间,可以查询到该收银人员的收入,同时也可以查询一天、一个月、一年不等的收入,查询只需要确定所要查的时间段即可,查询结果可以打印。(5)收入分析收入分析主要是分析上机的各个时段上座率,也可以是收入统计,这是一个很粗略的计算,有些时间段可能会出现一点偏差。8)帮助: 帮助显示软件的注珊机器台数和开发商等具体信息 33分模块设计系统包括2个子系统13个模块,这里重点介绍两个核心模块数据库模块和通讯模块的设计。331数据库模块设计数据库设计主要需要考虑以下几个因素: 1)兼容不同数据库为了兼容不同数据库,在设计上尽量避免利用影响兼容性的某些数据库特有的功能特性,例如Oracle的Sequence其他数据库大部分不支持,系统就采用独立的序列表和高性能的内存Cache技术替代设计时也不使用存储过程等口21 这样的缺点是,可能没有办法利用特定数据库的优势提高数据库操作性能,对策是,通过合理的设计及代码实现进行补偿 (1)支持大容量高性能系统集群的设计使得系统具有非常强的扩展性,同时,为了减少集群的规模以减少设备成本或者维护成本,我们需要每个服务器自身都能够支持大容量和高性能。在不影响兼容性的前提下,针对各种数据库,设计上尽可能的利用其优势,例如对于Oracle,可以采用对表和索引分区,并利用其9i和之后版本提供的RealApplication Clusters(RAC)技术。有一个好的数据库产品不等于就有一个好的应用系统,如果不能设计一个合理的数据库模型,不仅会增加客户端和服务器段程序的编程和维护的难度,而且将会影响系统实际运行的性能。数据库设计过程中,遵循了以下设计原则: (2)表设计原则数据的标准化有助于消除数据库中的数据冗余。标准化有好几种形式,但Third Normal Form(3NF)通常被认为在性能、扩展性和数据完整性方面达到了最好平衡。简单来说,遵守3NF标准的数据库的表设计原则是:“One Fact in One Place”即某个表只包括其本身基本的属性,当不是它们本身所具有的属性时需进行分解。表之间的关系通过外键相连接341。它具有以下特点:有一组表专门存放通过键连接起来的关联数据。例如:某个存放客户及其有关订单的3NF数据库就可能有两个表:Customer和Order。Order表不包含定单关联客户的任何信息,但表内会存放一个键值,该键指向Customer表里包含该客户信息的那一行。事实上,为了效率的缘故,对表不进行标准化有时也是必要的。采用数据驱动而非硬编码的方式,许多策略变更和维护都会方便得多,大大增强系统的灵活性和扩展性。假如用户界面要访问外部数据源(文件、XML文档、其他数据库等),不妨把相应的连接和路径信息存储在用户界面支持表里。还有,如果用户界面执行工作流之类的任务(发送邮件、打印信件、修改记录状态等),那么产生工作流的数据也可以存放在数据库里角色权限管理也可以通过数据驱动来完成。事实上,如果过程是数据驱动的。就可以把相当大的责任推给用户,由用户来维护自己的工作流过程。在设计数据库的时候考虑到哪些数据字段将来可能会发生变更例如,姓氏就是如此所以,在建立系统存储客户信息时,在单独的一个数据表里存储姓氏字段,而且还附加起始日和终止日等字段,这样就可以跟踪这一数据条目的变化 (3)字段设计原则每个表中都应该添加的3个有用的字段,创建时间、创建者、修改时间。对地址和电话采用多个字段,描述街道地址就短短一行记录是不够的。Address_LineI、Address Line2和Address Line3可以提供更大的灵活性还有,电话号码和邮件地址最好拥有自己的数据表,其间具有自身的类型和标记
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023年国家公务员考试申论试题(地市级)
- 市场监督管理总局 酒店装修合同5篇
- 周未安全教育课件
- 脊柱区解剖学知识点梳理与习题集及答案详解
- 开学第一课安全知识课件
- 开学季准备素质测试题及答案
- 建筑设计与施工技术要点技能测试
- 健康饮食智商挑战题集及解析
- 健康饮食营养学知识点与答案详解
- 2025年低空经济物流无人机安全报告
- 2023年95个病种的中医诊疗方案
- 气血共振技术介绍
- 黑龙江省鹤岗市东方红乡地热资源普查探矿权出让收益评估报告
- 围挡专项安全施工方案
- 通信的知识-家长进课堂
- 急诊医学PPT课件急性意识障碍
- LY/T 2246-2014森林消防专业队伍建设和管理规范
- GB/T 3871.3-2006农业拖拉机试验规程第3部分:动力输出轴功率试验
- GB/T 19188-2003天然生胶和合成生胶贮存指南
- GB/T 17908-1999起重机和起重机械技术性能和验收文件
- 景物描写穿插在记叙文中课件
评论
0/150
提交评论