企业局域网监控系统的设计与实现.pdf

上传人:qwe****56 文档编号:71060447 上传时间:2023-01-31 格式:PDF 页数:88 大小:8.79MB
返回 下载 相关 举报
企业局域网监控系统的设计与实现.pdf_第1页
第1页 / 共88页
企业局域网监控系统的设计与实现.pdf_第2页
第2页 / 共88页
点击查看更多>>
资源描述

《企业局域网监控系统的设计与实现.pdf》由会员分享,可在线阅读,更多相关《企业局域网监控系统的设计与实现.pdf(88页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、厦门大学硕士学位论文企业局域网监控系统的设计与实现姓名:程琳梅申请学位级别:硕士专业:软件工程指导教师:杨双远20090901摘要摘要随着I T 技术的飞速发展,各企业广泛应用局域网实现内部资源共享展开日常工作。近年来,随着企业局域网的规模日益庞大,企业从计算机、服务器等硬件设备大量投入使用获利的同时也面临着前所未有的三大威胁:企业核心材料和图纸泄密情况严重、企业核心资产白白丢失无法统计、因员工上网频频造成企业局域网中毒瘫痪。现在,如何管理好企业的局域网已成为各大企业管理者重视的问题和各企业网络管理员所面临的挑战。根据对企业局域网现状分析,结合目前流行的企业局域网监控软件的考察,本文主要研究如

2、何在现有域管理基础上构建一套较为实用的局域网监控软件系统以适应互连网时代企业局域网对计算机硬件、软件、员工网络行为监控管理的需要。主要工作内容如下:(1)设计并实现一个局域网监控系统,包括客户端和服务器端。能够监控企业局域网内的计算机设备、每台计算机上安装的软件以及员工在计算机上的相关操作;(2)研究实现对U S B 移动存储设备的监控管理,能够有针对性的对某些异常事件进行报警,并具备离网监控功能。本文所阐述的企业局域网监控管理系统采取C S 和B S 相结合的方式。对于监控模式采取C S 模式,实现更强大的监控功能;对于服务器管理端采取B S 模式,这种基于权限的管理模式方便管理员随处使用该

3、系统对局域网进行监控管理。该系统兼容企业域管理,实时与企业域服务器数据库更新,对于系统用户及所属计算机无须人工录入系统。系统在一些功能的设计上参考目前国内外流行的局域网监控软件的优势之处,还实现了对硬件设备的监控、按优先级设置报警、实现离网监控等特色功能。关键词:局域网监控;离网监控;域管理A b s t r a c tW i t ht h er a p i dd e V e l o p m e n to fi n f 0 咖a t i o nt e c h n o l o g y,L A N(L 0 c a IA r e aN e t、o r k)i sn o ww i d e l yu s

4、 e dt 0m 锄a g eV 撕o u si n t e m a la L s s e t Sf o rm a n ye n t e 叩r i s e s E S p e c i a l l yi nr e c e n ty e a r s,m o r e觚dm o r ec o m p a n i e sb e n e f i t仔o mt h ei m p l e m e n t a t i o no fn e wt e c h n o l o g i e s H o w e V e r t h i sc h 锄g ea l s ob r o u g h tn e wt h r e a

5、 t st ot h e m:t h ee 嬲yd i S c l o s u r eo fc o m p a n i e s k e yi n f 0,t l l eu n a c c o u n 诅b l el o s so fc o m p a n y 弱s e t S,觚dt t l e 丘e q u e n tS y S t e mc r a S hc a u s i n gb yV i r u s e s H o wt 0m a k eb e 他rm a n a g e m e n to nL A Ni s 卸e s s e n t i a lq u e S t i 叽t h a

6、ti sp o s e di n 丘o n to fe V e D rc o m p a n yl e a d e r 锄dt h e i rn e t w o r ka d m i n i s t m t 0 体B 舔e do nt h ea n a l y s i sf o rc u r r e n tL A Ni m p I e m e n t a t i o ni n V e r a lc o m p a n i e s 卸dt h er e s e a r C h e so ns o m ep o p u l 甜m o n i t o r i n gs o f h V a r e,t

7、 h i sa r t i c l ef o c u s e so nb u i l d i n gan e wm 6 n i t o r i n gS y s t e ma c c o r d i n gt 0t h ee x i s t i n gd o m a i nm a n a g e m e n t T h en e ws y s t e mt a 唱e t so nh e I p i n ge n t e 叩r i s e sb e 仕e rm o n i t o r i n gaV a r i e t),o fh a r d w a r e,f h v a r ea n dt

8、h en e t v v o d(b e h a V i o ro fe m p l o y e e s T h ek e yc o n t e n t Sa r el i s t e db e l I o w:(1)D e s i g n 锄dr e a l i z et h em o n i t o r i n gs o f h v a 聆w h i c hi n c l u d e sc l i e n t s i d e 锄ds e r v e 卜s i d ec a nm o n i t o rc o m p u t c re q u i p m e n t s,t h es 0 胁

9、a r ei n s t a l l e di na l lc o m p u t e 体锄dt h es t a f f sr e l a t i V eo p e r a t i o n si nt h ec o m p u t e r s(2)R-e s e a r c h 锄dr e a l i z et h em o n i t o r i n gm a n a g e m e n tt 0t h eU S Bs t o c l(a g em o V a b l e sw h i c hc a na l a r mt o w a r d sa b n o 册a la n h i r

10、s 锄dh a V et h eo f fn e tm o n i t o r i n gm n c t i o n T h i st h e s i sd e s c r i b e st h ew a yt h a th o wt h ee n t e 币r i s el o c a la r e an e 帆o r km o n i t o r i n gm a n a g e m e n ts y s t e mc o m b i n e sC Sm o d ew i t hB Sm o d e C Sm o d ei su s e df o rm o n i t o r i n gm

11、 o d et 0r e a l i z es t r o n g e rm o n i t o r i n gm o d e;B Sm o d ei su s e df o rs e r v e r-s i d em a n a g e m e n t,a n dt h i sm a n a g e m e n tm o d eb 硒e d0 nr i 曲ti sc o n V e n i e n tf o ra d m i n i s 僦0 rt 0m o n i t o rt h el o c a la r e an e t、】I,0 r kb yu s i n gt h i sS y

12、s t e mi ne V e r y、V h e r e T h eS y s t e mi sc o m p a t i b I ew i t he n t e 巾r i s ea r e am a n a g e m e n t,r 朗l t i m eu p d a t e sw i t he n t e 叩r i s ea r e a s e r v e rd a t a b 嬲e,锄dd o e s n tn e e da r t i f i c i a le n t e r i n gf-o rS),S t e mu S e r 锄dr e l a t i V ec o m p

13、u t e 稻T h es y S t e mm a k e sr e f e r e n c et 0t h ea d V a n t a g e so fl o c a la r e an e t w o r km o n i t o r i n gs o m 乏u ew h i c hi sn o w a d a y sp o p u l a ra th o m e 粕da b r o a d,锄di ta l s o r e a l i z e st h eS p e c i a lf u n c t i o n sS u c h 硒h a r d w a r ce q u i p m

14、 e n t sm o n i t o r i n g,a l 盯m i n gb ys e t u pp r i o r i 吼r e a I i z i n go f rn e tm o n i t o r i n ga n ds oo n K e”v o r d s:L A NM o n i t o r i n g,O m i n eM o n i t o r i n g,D o m a i nM a n a g e m e n t厦门大学学位论文原创性声明本人呈交的学位论文是本人在导师指导下,独立完成的研究成果。本人在论文写作中参考其他个人或集体已经发表的研究成果,均在文中以适当方式明

15、确标明,并符合法律规范和厦门大学研究生学术活动规范(试行)。另外,该学位论文为()课题(组)的研究成果,获得()课题(组)经费或实验室的资助,在()实验室完成。(请在以上括号内填写课题或课题组负责人或实验室名称,未有此项声明内容的,可以不作特别声明。)声明人(签名):罐琳毖乃蝈年9 月9 日厦门大学学位论文著作权使用声明本人同意厦门大学根据中华人民共和国学位条例暂行实施办法等规定保留和使用此学位论文,并向主管部门或其指定机构送交学位论文(包括纸质版和电子版),允许学位论文进入厦门大学图书馆及其数据库被查阅、借阅。本人同意厦门大学将学位论文加入全国博士、硕士学位论文共建单位数据库进行检索,将学位

16、论文的标题和摘要汇编出版,采用影印、缩印或者其它方式合理复制学位论文。本学位论文属于:()1 经厦门大学保密委员会审查核定的保密学位论文,于年月日解密,解密后适用上述授权。()2 不保密,适用上述授权。(请在以上相应括号内打“或填上相应内容。保密学位论文应是已经厦门大学保密委员会审定过的学位论文,未经厦门大学保密委员会审定的学位论文均为公开学位论文。此声明栏不填写的,默认为公开学位论文,均适用上述授权。)声明人(签名):韶巯撇q 年勺月c 7 日第一章绪论第一章绪论网络管理技术是伴随着计算机、网络和通信技术的发展而发展的,二者相辅相成。一般来说网络管理的五大功能包括配置管理、故障管理、性能管理

17、、安全管理和计费管理【1 1。企业局域网监控系统是针对企业内网的辅助管理系统,主要研究信息资产和内网安全管理,解决了当前企业内部局域网管理的薄弱环节和企业关心的首要问题,也是网络管理体系的理论与技术在实际应用中的重要组成部分。本章我们将对国内外企业局域网管理的发展现状以及存在的问题等进行阐述,并对本文的主要内容以及本文的结构安排等进行总体概述。1 1 研究背景及选题意义随着信息化建设的深入,国家政府部门、企事业单位已经广泛使用计算机开展日常工作和业务,为了实现企业内部资源共享,局域网和i n t e m e t 的应用得到了长足的发展。企业在享受信息化、数字化的普及应用,I n t e m e

18、 t 带来的便利的同时,如何采取行之有效的信息资产和网络安全的管理成为了企业发展的瓶颈,也是企业内部管理的重点【2,3 1。在以下三个方面的大背景下,企业局域网管理系统的研究就显得更为必要。(1)企业核心材料或图纸泄密情况严重企业内部重要文件主要通过打印、E m a i l、文件夹同享、q q 文件传送、移动存储等方式传输,造成信息泄露。其中,通过移动存储设备带走信息是最迅速、最难以察觉的方式。同时由于现在移动存储设备具备快速读写(很多移动存储设备的读写速度达到了3 5 M S,今后将会达到上百M)、低能耗、低成本、设备灵活性高(能与许多设备共同使用)、多种数据支持、存储容量大(市面上已出现T

19、 为单位的存储空间)因此也能够带走最多的信息。当今被广泛使用的可移动存储设备中,几乎均使用通用串行总线接口与P C 连接进行数据传输。U S B 协议自1 9 9 4 年1 1 月由I n t e l 为首的七家公司首次推出以来,因其速度快、安装配置容易、易于扩展、采用总线供电和使用灵活等优点已经成为了数据传输的主要方式。可移动存储设备的生态系统包括可移动存储设备本身,用户,多个主机,受机,P D A,M P 3 播放器以及内容发布服务器等。由于可以和大量设备共同使用,因此在满企业局域网监控系统的设计与实现足用户随时使用数据的同时,这些设备也存在着更多被恶意攻击或者以外丢失造成数据流失的危险。

20、一项调查表示,通过便携式设备恶意或者无意带走企业内部的敏感信息已成为企业内部数据安全的一大隐患。而另一项调查表明:6 0 P D A 可能带有未经保护的敏感信息。笔记本电脑和U 盘带有此类信息的可能性分别是5 9 和5 3 4 1。企业内部人员通过移动存储设备泄露敏感信息使企业遭受巨大的经济损失。美国网络安全专家小组和美国国家保密服务局从2 0 0 4 年开始关于内部人员威胁的研究工作,并每年发布一份电子犯罪调查报告。根据其调查,在过去的五年中美国财政部发现由内部人员犯罪造成的经济损失已达6 亿9 千万美金。上述数据是统计被定罪的内部人员出于商业等目的蓄意出卖或利用内部信息造成的经济损失。而事

21、实上,在企业内部,更多的还不是内部人员蓄意造成信息泄露。据调查,企业内部人员通过移动存储设备泄露敏感信息的事件中,有7 7 的人是无意的。因此,必须通过技术的手段对移动存储设备的使用进行有效的控制,才能防止蓄意或无意造成的重要信息泄露。(2)企业核心资产白白丢失无法统计现在,借助I n t e m e t 技术,各个中小型企业都有机会建立起适合自己规模的企业内部网【5。同时顺应网络办公、学习的需要,许多计算机应用软件的开发为企业带来了更大的利益。到目前,计算机的应用已深入到企业内部的各个部门,甚至缺少了网络和计算机,企业员工的工作就无法开始。企业内部计算机用户大增,对计算机的管理提出了新的挑战

22、。大多数企业都已利用各种固定资产管理软件对企业的固定资产进行收录管理。然而计算机因其维护、折旧、报废不同其他固定资产,所以计算机作为较为特殊的固定资产,固定资产管理软件往往没有对它收录。目前许多企业的网络管理员只是对计算机作为整体进行入库管理,并没有对计算机的内存、C P U、硬盘等部件进行细化管理,也没有形成一套合理的维修、报废制度。而且企业也意识到对计算机的硬件管理花费了大量的人力成本,而硬件的大笔开销依然存在,所以越来越多的企业把计算机硬件外包给电脑公司,节省人力成本。因此,把企业内部数量庞大的计算机等通讯设备作为固定资产进行有效科学的管理也是目前企业面临的难题。(3)因上网造成企业局域

23、网中毒瘫痪等在今天崭露头角的数字经济中,如果说有一个变化是最明显的,那就是近年来的许多显著收益都可以直接归功于互联网连接。但不容忽视的一个问题是:企业的员工2第一章绪论都用计算机来工作了吗。专业调查显示:办公室上网,九成时间做的是与工作无关的事;调查还表明色情网站和求职网站的浏览时间8 0 发生在上班时间,一些承载着反动的、色情等不健康的内容的网站或携带病毒的非法绑定链接通过网络的快速传播威胁着企业局域网的安全。局域网是许多病毒传播的温床,只要有一台计算机感染病毒,就可使整个网络快速被病毒感染,依据病毒产生的威力,轻则占用局域网带宽,影响用户访问内部资源的效率,重则侵犯局域网内部重要数据,造成

24、数据丢失或者导致局域网瘫痪,给企业造成不可估量的损失j 其中造成法国海军内部网络瘫痪的C o n f l i c h e r 是“扫荡波”蠕虫病毒大家族中的一个分支。当C o n f l i c h e r 发现局域网用户后,会遍历局域网的计算机并针对它们的M S 0 8 0 6 7 漏洞发起攻击。而且一旦攻击成功,受攻击的计算机就会自动下载并执行一个下载者病毒,周而复始,直到将整个局域网都变成C o n f l i c h e r 的毒窝。当病毒在海军内网肆虐两天后,工作人员才意识到应该切断受感染网络与其它局域网的联系。但此时C o n f l i c k e r 早已顺着军队内网传播开去,

25、给维拉库布莱空军基地和第八兵团的电脑网络造成影响,飓风战斗机因为无法下载作战指令而不得不呆在地上【6 1。一无论从网络所承载的信息本身还是从企业内部人员是否利用企业资源和上班时间做无关工作的事,都需要一套行之有效的规范去约束。如何使企业内部网络行为的规定更有约束力,必须对企业内部人员的网络行为进行监控。根据中华人民共和国公安部互联网安全保护技术措施规定第8 条之规定:“互联网接入单位应能够记录并留存用户使用的互联网网络地址和内部网络地址对应关系;记录、跟踪网络运行状态,监测、记录网络安全事件等安全审计功能。”第十三条:“互联网服务提供者和联网使用单位依照本规定落实的记录留存技术措施,应当具有至

26、少保存六十天记录备份的功能。,可见企业在工作场所安装、部署、使用监控软件是有法可依的【7-9 。综观现有的网络技术和企业内部网的发展趋势,制定网络监控和计算机资产管理为两大主题的网络管理方案是当前企业内部网管理所要解决首要问题,企业局域网管理系统的研究使企业局域网的管理更科学,同时也必将大大节约企业局域网的管理成本。1 2 研究现状及存在问题3企业局域网监控系统的设计与实现企业局域网监控系统随着企业内网的发展而产生,并变得尤为必要。考察国内外热门企业局域网监控软件,可以总结出现阶段企业局域网监控系统的特点:(1)从采用客户端朋艮务器模式向只安装服务器端软件转变传统的企业局域网监控软件为客户端月

27、艮务器模式,其根据木马原理实现对局域网的监控。由于局域网内存在不同的操作系统以及编程语言也有可能不同,传统的基于c S 企业局域网监控软件在运行时往往出现意想不到的问题,而且容易被用户自行关闭客户端软件,导致安装和维护的困难,从而影响它的整个局域网的使用。现在许多大公司都倾向开发只安装服务器端的软件,比如上海百络信息技术有限公司开发的百络网警等。这类企业局域网监控软件安装使用方便,由于仅在服务器上安装,运行也较稳定,而且在上网监控方面有着出色的表现,然而在对内网的监控上却损失了许多C S 模式下可以轻松实现的功能,比如对文件的监控功能【1 0,1 1】。(2)随着计算机硬件的发展,监控的项目增

28、多通过对目前国内外流行的企业局域网监控软件如:A n y V i e w 网络警、L a n e C a t 网猫、网路岗六代等的考察,其监控项目较以往企业局域网监控软件多,功能更强大。它们都具备禁止程序运行功能:禁止Q Q、M S N、B T 等;限制上网功能:限制哪些电脑可以上网以及在指定时间段上网;员工屏幕监视功能;安装程序禁止和监视功能:聊天监控功能等等一系列控制和监视功能【1 2,1 3】。虽然监控项目繁多,能满足不同企业的需求,但是也由于如此之多的监控项目占用了大量的服务器资源和带宽,并且使许多企业为不需要的监控功能买单。(3)对U S B 端口的监视成为各监控软件必提的卖点U S

29、 B 设备的安全问题被人们发觉后,与之相关的安全产品也出现了。目前国内外都比较常用的方法是利用软件来控制通过U S B 端口的数据,从而达到数据安全的目的。目前基于C S 模式的企业局域网监控软件都把对U S B 端口的监视作为监控软件的卖点,因为基于只安装服务端的企业局域网监控软件很难实现对U S B 端口的监视。对U S B 端口的监视,做的比较完善的有南京网亚计算机有限公司开发的W o r k W m,它可以禁止U S B 接口的一切设备而不影响鼠标,键盘等的使用,如:禁止U 盘、移动硬盘、数码相机等;如果不禁止U 盘插入,可以设置为记录复制文件操作,记录复制了那些文件。对于当前国内外热

30、门企业局域网监控软件的研究,结合目前企业局域网发展的现4第一章绪论状,企业局域网监控系统存在以下一些问题:(1)绝大多数企业局域网监控软件还未能实现对计算机硬件的监控。绝大多数企业局域网监控软件都把禁止员工使用Q Q 等程序和禁止U S B 等作为炒作的对象,针对目前公司员工的上网管理,使员工在上班时间更好地为企业创造价值,禁用Q Q、P 2 P 等软件运行的确是企业决策者最需要网监控软件解决的问题。但是一些员工不满上班时间不能访问外网,私自给局域网内计算机增设网卡非法连接外网,最终导致计算机中毒危及整个局域网安全的事件不在少数。另一方面,一些跳槽员工或是几个员工合用一台计算机的情况下,企业计

31、算机的内存、硬盘、C P U 被员工私自更换不在少数。因此越来越多的安全问题和硬件资产的白白流失让企业决策者意识到必须加强对计算机硬件的管理,然而绝大多数的企业局域网监控软件未能实现这一点。(2)企业局域网监控软件仅监控连入局域网并安装了客户端软件的计算机。目前企业局域网监控软件对U S B 端口采取监控,有效地抑制了别有用心者盗取企业重要资料。然而这些监控对于那些暂时脱离局域网的计算机不起作用,服务器无法得知员工对那些暂时脱离局域网的计算机期间的行为。因此别有用心者还是很容易一得盗取各种重要资料,而企业却对它毫无证据。另一方面,即使企业局域网监控软件对计算机的硬件实现了监控,员工仍然可以让计

32、算机断开局域网后对计算机硬件进行变动,而在计算机硬件恢复后连入局域网,这样服务器根本无法得知计算机的硬件曾变动过。如果计算机断开局域网而通过员工非法外连的网卡上外网中毒,导致局域网瘫痪的情况下,网管往往没有足够的证据指明这一灾难的始作俑者。(3)监控项目千篇一率的繁多,占用大量的局域网资源。目前流行的企业局域网监控软件监控项目很多,基本上都包括了:屏幕快照抓取员工计算机在某个时段的工作屏幕:记录各个程序的开启关闭时间;提供应用程序的白名单和黑名单;记录文件创建、删除情况;记录文件夹创建、重命名、删除:记录员工打印机使用情况;限制使用U S B 设备:禁止常用聊天工具使用等。某些功能在企业局域网

33、管理中,并无大用处反而占用了大量的网络带宽【1 4 1。例如屏幕抓取员工计算机工作屏幕,单纯抓取员工计算机工作屏幕,没有形成一个统计的报表,不能说明任何工作问题,而且给员工很不信任的印象,恰恰伤害了企业员工的工作积极性。从企业局域网现状分析结合研究目前流行的企业局域网监控软件,迫切需要一个5企业局域网监控系统的设计与实现能够实现在网和离网都能发挥作用的局域网监控软件,并且监控项目必须符合企业的真正需要。1 3 主要研究内容及特色根据对企业局域网现状分析,结合目前流行的企业局域网监控软件的考察,本文主要研究如何在现有域管理基础上构建一套较为实用的局域网监控软件系统以适应互连网时代企业局域网对计算

34、机硬件、软件、员工网络行为监控管理的需要。主要研究内容如下:(1)设计并实现一个局域网监控软件,包括客户端和服务器端。能够监控企业局域网内的计算机设备、每台计算机上安装的软件以及员工在计算机上的相关操作。(2)研究实现对U S B 移动存储设备的监控管理,能够有针对性的对某些异常事件进行报警,并具备离网监控功能。该企业局域网监控系统结合目前企业局域网监控软件的优点,根据企业局域网的现状而开发,主要特色如下:(1)采取B S 和C S 相结合的方式。目前流行的企业局域网监控软件多采取B S 模式,实现了操作界面简洁、操作人性化,免去了安装上的困难,更重要的是避免了客户端监控进程被用户关闭。但是,

35、研究发现,基于B S 的企业局域网监控软件对于很多重要的监控项目没发实现,比如无法实现对硬件的监控、无法记录文件被U 盘复制的情况等。因此,服务端界面采取B S 模式,实现操作截面简洁,服务器上安装处处可访问,程序可移植性好。监控功能的实现采取C S 模式,实现许多B S 模式无法实现的监控项目,并且节省大量的带宽【1 5-17 1。(2)能够对企业局域网的计算机硬件设备进行监控。针对企业计算机硬件资产白白流失的问题,对企业局域网计算机硬件进行监控。对计算机无故离网进行优先级告警,并对硬件的变更进行优先级告警。针对员工利用上班时间上网问题,对计算机非法外连网卡进行优先级告警。(3)该监控系统具

36、备离网监控功能。一般来说,目前流行的企业局域网监控软件都不具备离网监控功能,尤其是对于基于B S 的企业局域网监控软件根本无法实现这个功能。而离网监控对于员工在上班6第一章绪论时间的合理利用和企业局域网的安全是非常必要的。1 4 本文结构安排本文共分为六章,各章节安排如下:第一章介绍了课题的研究背景及选题意义、目前研究状况及存在问题等,简述了本文研究的目标和内容;第二章阐述与本文研究有关的关键技术,其中与客户端实现相关的W i n d o w s A P I 技术,与通讯模块相关的W i n d o w sS o c k e t 技术;第三章详细论述了企业局域网监控软件的总体设计,包括系统的功

37、能性和非功能性需求分析,数据库的设计,以及系统总体框架设计和系统详细功能设计:第四章介绍了各系统子模块的设计与实现;对主要的设计思想阐述采取流程图表示;第五章介绍系统的运行、开发环境,描述系统功能的实现,附带系统截图说明;第六章总结和展望,对论文的主要内容进行了总结,同时提出了项目可以进一步发展的方向。7企业局域网监控系统的设计与实现第二章关键技r 上i g弟一早大琏投2 1W i n d o w sS o c k e t 技术网络中普遍的服务方式为C S 模式,在该服务模式中,客户端应用程序向服务器程序提出服务请求,而服务程序通常在一个开放的地址监听对各类服务的请求。为了方便这种模型的网络编

38、程,2 0 世纪9 0 年代初,由M i c r o s o f t 联合其他几家公司共同制定了一套W i n d o w s 下的网络编程接口,即W i n d o w sS o c k e t s 规范,简称为W i n s o c k,它不是一种网络协议,而是一套开放的、支持多种协议的W i n d o w s 下的网络编程接口。该编程规范从B e r k e l e yS o c k e t s 扩展而来,在继承B e r k e l e yS o c k e t s 的基础上,又进行了新的扩充,主要是提供了一些异步函数,并增加了符合W i n d o w s 消息驱动特性的网络时间异

39、步选择机制。目前使用的W i n s o c k 已经基本上实现了与协议无关性,可以使用W i n s o c k 来调用多种协议的功能,较常使用的是T C P I P 协议。套接字是的基础,是支持T C P I P 协议的网络的基本操作单元,套接字实际在计算机中提供了一个通信端口,可以通过这个端口与任何一个具有套接字接口的计算机通信。应用程序在网络上传输、接收的信息都通过这个套接字接口来实现。在进行信息传输过程中,其中某个应用程序将需要传输的信息写入该应用程序所在系统的套接字中,套接字通过网络接口卡(N I C 卡)的传输媒介将该信息发送至另一系统的套接字接口中,通过该套接字接口将信息传递给

40、对应的应用程序执行相关操作。使用W i n s o c k 在I n t e m e t 上传输数据和交换信息时,不需要关心网络连接的细节。网络应用程序调用W i n s o c kA P I 函数实现相互之间的通信。同时,W i n s o c k 利用下层的网络通信协议和造作系统实现实际的通信【1 8 之2 1。如下图所示:2 1 1W i n s o e k 技术特点(1)套接字的分类套接字根据通信的性质可以分为三类,在设计网络应用程序时,根据不同的要求来选择相应类型的套接字,只有相同类型的套接口才能够相互通信。8第二章关键技术(a)数据报套接字数据报套接字提供一种不可靠的双向数据传输服

41、务,不保证数据的有序性和不重复性。数据在传输过程中可能被丢失,也可能重复,被接收的数据顺序可能和发出的顺序不同。同时,数据报套接字的传输是面向无连接的,不保证接收端是否正在接收或者监听该传输,这种方式和邮局送信的方式类似,邮寄者只负责将信投入邮箱,它并不能获知该信息是否能正常传递至正确的接收者,而接收者确定对该信息的接收时间。在T C P I P 协议族中,使用U D P 协议来实现数据报套接字,数据报套接字一般在负载较轻的网络上使用,虽然存在着不可靠性,但由于数据报套接字在传输时保留了记录边界,因此可以保证通信的质量,并且可以获得较高的通信效率。(b)流套接字流套接字提供一种双向有序的、无重

42、复的数据传输服务,实现了数据无差错、无重复的发送。流套接字是面向连接的,通信双方在进行数据搅浑之前必须先建立连接,这样可以保证双方是活动的,并且彼此响应。在T C P I P 协议族中,使用T C P 来实现流套接字通信,当网络需要大批量的传输数据时,或者要求数据按照发送的顺序无重复地到达目的地时,使用流套接字进行通信最方便。(c)原始套接字j j原始套接字应许直接访问较低层次的协议(如I P、I C M P),常用于检验新的协议的实现,也可以用于测试新的配置或网络设备。(2)异步选择机制时间驱动机制是所有W i n d o w s 应用程序的基础,而W i n d o w sS o c k

43、e t s 的异步选择机制则为套接字变成提供了一种网络事件驱动的程序设计方法。W i n d o w sS o c k e t s 通过异步选择函数W S A A s y n c S e l e c t(),可以为应用程序指定一个或多个感兴趣的网络事件,如读写事件、连接事件、接受请求事件等。一旦有网络时间发生,应用程序则会收到一个消息通知,并进行相应的处理。W S A A s y n c S e l e c t()函数自动地设置套接字处于非阻塞方式。使用W i n d o w sS o c k e t s 实现W i n d o w s 网络程序设计的关键就是它提供了对网络时间基于消息的异步存

44、取,用于注册应用程序感兴趣的网络时间。它请求W i n d o w sS o c k e t sD L L 在检测到9企业局域网监控系统的设计与实现套接字上发生的网络事件时,向窗口发送一个消息。对U C P 西医,这些网络时间主要为:F DR E A D 期望在套接字接收到数据时接收通知;F DW R I T E 期望在套接字可发送数据时接收通知;F DC L O S E 期望在套接字关闭时接电通知。(3)异步请求机制除了异步选择机制外,异步请求机制和异步数据传输机制也是W i n d o w sS o c k e t s编程的重要机制。异步请求机制应许应用程序以异步的方式获得请求信息,这主要

45、由W S A A s y n c G e t B y Y()这样的异步请求函数来完成,也可以通过W S A C a n c e l R e q u e s t()函数来中止一个当前正在执行的异步请求操作。(4)异步数据传输机制异步数据传输机制避免了在调用数据传输函数时所引起的阻塞,W i n d o w sS o c k e t s的异步数据传输机制通过钩子函数对W i n d o w s 消息进行处理,使消息循环得以继续,从而能够避免在数据传输时所引起的阻塞。由于W i n d o w s 是一种非抢先的多任务操作系统,如果某个程序不主动放弃其对资源的控制权,那么其他程序将无法被执行,因此,

46、在进行编程时,应该尽量避免使用阻塞操作。W i n d o w s 提供了W S A S e t B l o c k i n g H o o k()函数和W S A I s B l o c k i n g H o o k()函数让应用程序设置和取消自己的钩子函数,另外,函数W S A I s B l o c k i n g()检测进行中是否有阻塞W i n s o c k调用,阻塞钩子函数W i n s o e kD L L 调用的条件是必须满足下面的几个条件:函数被定义为应许阻塞;指定的套接字为阻塞套接字;请求不能立刻完成。(5)对错误的处理错误的发现和处理对于应用程序是非常重要的,对W i

47、 n s o c k 而言,经常会返回一些错误信息,最常见的是S O C K T EE R R O R,它是一个值为1 的常量,这时,可以用W S A G e t L a s t E r r o r 函数来获得一段代码,该代码可以清楚地表明错误产生的原因和类型。2 1 2W i n s o c k 编程原理W i n d o w sS o c k e t s 使用套接字进行编程,套接字编程是面向C S 模型而设计的,因此系统中需要客户端和服务器两个不同类型的进程,根据连接类型不同,对于面向1 0第二章关键技术连接的T C P 服务和无连接的U D P 服务,服务器分别采取不同的处理操作来对客户

48、提供服务。对于面向连接的T C P 服务,服务器需要等待客户端向其提出的建立连接的申请,旦接收到客户端的连接请求,服务器返回一个新的套接字描述符,通过该描述符调用数据传输函数即可与客户端进行数据的收发。对于无连接的U C P 服务,服务器通常是面向事物处理的,服务器和客户端在传输数据之前不需要进行连接的申请和建立,数据传输结束后,直接关闭套接字即可完成一次通信。2 1 3W i n s o c k 几种常用模型(1)s e l e c t 模型S e l e c t O 可以提供类似W i n d o w s 中的消息驱动机制,实现对I 0 的管理。通过调用S e l e c t 函数可以确定

49、一个或多个套接字的状态,判断套接字上是否有数据,或者能否想一个套接字写入数据,或者出现意外。目的是防止应用程序在套接字处于阻塞模式时,在一次I O 绑定调用过程中,被迫进入“阻塞 状态;同时防止在套接字处于非阻塞模式中时,产生W S A E W O U L D B L O C K 错误。除非满足事先用参数规定的条件,否则S e l e c t 函数会在进行I O 操作时阻塞。S e l e c t 的函数原型如下:I n tS e l e c t(i n tjf d s,f ds e t+r e a d f d s,f d s e t w r i t e f d s,f d e s t e x

50、 c e p t f d s,s t r u c tf i m e v a l 幸t i m e o u t);其中:n d f s:S e l e c t 监视的文件描述符集数目,视进程中打开的文件数而定,一般设为要监视的各文件中的最大文件号加1,默认设置为O;r e a d f d s:S e l e c t 监视的可读文件描述符集合;w r i t e f d s:S e l e c t 监视的可写文件描述符集合;e x c e p t f d s:S e l e c t 监视的异常文件描述符集合:t i m e o u t:本次S e l e c t O 超时结束时间。(2)W S A

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁