已阅读5页,还剩48页未读, 继续免费阅读
(通信与信息系统专业论文)多媒体通信系统中应用共享软件的设计与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 应用共享称为a p p l i c a t i o ns h a r i n g ,是c s c w 系统中三个重要组成部分之一。 应用共享是可以将一个传统的应用软件改造为能支持多用户共享操作的应用软 件,达到充分利用已有资源的目的。由于人们日常使用的应用程序大多为单用户 应用程序,因而研究通过应用程序共享机制提供网络环境下单用户应用程序的协 同工作具有重要的意义。 本文首先分析和对比应用共享软件的两种传统模式:集中式和复制式共享模 式。在总结和归纳它们各自的设计思路以及优缺点之后,引入应用共享的通用共 享模式。并在此基础上讨论了软件架构和控制机制。本文随后讨论了多媒体通信 系统中应用共享软件设计和开发中的若干关键技术。根据l z w 压缩算法设计的 程序能够有效压缩捕获到的图形界面;采用本地和远端的消息映射技术和钩子技 术设计的解决方案能够实现控制信息的传输和执行。最后讨论了一种集中式的基 于锁机制的并发控制方法。 关键词:应用共享通用共享模式图形压缩并发控制 a b s t r a c t a p p l i c a t i o ns h a d n g i so n eo ft h em o s ti m p o r t a n tc o m p o n e n t st h a ta 埘跚c s c w s v s t e mc o n s i s t so f a p p l 妇t i o ns h a r i n gs o f t w a r e i sd e s i g n e dt oc h a n g es m g l e u s c r a p p l i 洲。璐t 0m u l t i u s e ra p p l i c a t i o n s ,s oa st om a k e f u l lu s eo fr c s o u r c e s n o w a d a y s , m o s to ft h ep o p u l a ra p p l i c a t i o n st h a tp e o p l eu s ea l es i n g l e 。u s e rs o f t w a r e s ,s ot h a tn 塔 v a l u a b l et od or e s e a r c ho nh o wt od oc o l l a b o r a t i o nw o r k w i t hs i n g l e u s e rs 俩a r c s u n d e rn e t w o r ke n v i r o n m e n t i nt h i sp a p e r ,w ef i r s t l ya n a l y z et w o t r a d i t i o n a la p p l i c a t i o ns h a r i n gm o d e :c 蝴e d m o d ea n dd u p l i c a t e dm o d e ,a n dt h e nw ei n t r o d u c eg e n e r i cm o d e f o ra p p l l c a t l o n s h a f i n gs y s t e m s o f t w a r ea r c h i t e c t u r ea n dc o n t r o l s c h e m ei sd i s c u s s e dh e r e s e c o n d l y w es t u d ys o m ek e yt e c h n o l o g i e si nt h ed e s i g na n dd e v e l o p m e n to f t h i sp r o 黟锄lh e a 1 9 0 r i m mo fl z wi m a g ec o m p r e s s i o nm e t h o di sf u l l yd i s c u s s e d 强d t h ep r 0 伊锄 i i n p l 锄e n t a t i o ni si n t r o d u c e d w ei m p l e m e n tm e s s a g e t r a n s f e ra n dc x e c u t i o nb e 脚e c n c o o p c r a t o r sw i t hm e s s a g e m a p p i n g a n dh o o kt e c h n i q u e s a tl a s t ,t h ep 印e rc 踟e s o u t ac e n t r a l i z e dc o n c u i r e n c yc o n t r o lm e t h o db a s e d 0 1 1l o c km e c h a n i s m k e y w 。r d :a p p l i c a t i o ns h a r i n g , g e n e r i cm o d e ,i m a g e c 。m p r e s s i o n , c 咖咖r 托n c y c o n t r o l 创新性声明 本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究 成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不 包含其他人已经发表或撰写过的研究成果;也不包含为获得西安电子科技大学或 其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做 的任何贡献均已在论文中做了明确的说明并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名: 日期立苹羔l 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。本人保证毕 业离校后,发表论文或使用论文工作成果时署名单位仍然为西安电子科技大学。 学校有权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全 部或部分内容,可以允许采用影印、缩印或其它复制手段保存论文。( 保密的论 文在解密后遵守此规定) 本人签名: 导师签名: 日期塑穿:盘 日期 学乎 第一章绪论 第一章绪论 1 1 引言 随着多媒体技术,计算机技术,网络技术等技术的飞速发展以及计算机网络 的普及,多媒体会议系统作为多媒体通信的典型应用和计算机支持的协同工作i l j 系统( c s c w ,c o m p u t e rs u p p o r t e dc o o p e r a t i v ew o r k ) 的重要支撑工具,必将成 为下一代网络n g n ( n e x tg e n e r a t i o nn e t w o r k ) 的主流应用之一。多媒体会议系 统主要由音频、视频、共享应用和共享白板等工具组成。各种多媒体工具之间可 以灵活组合,一般情况下除了音频必选之外,其它的媒体工具可以自由搭配,从 而可以满足用户和会议的要求。 c s c w 最早于1 9 8 4 年由m r r 的i r e n eg r e i f 和d e c 的p a u lc a s h m a n 等人提 出,当时是为了描述他们所组织的有关如何用计算机支持来自不同领域与学科的 共同工作的课题。但是,作为一门学科,c s c w 是1 9 8 6 年9 月在美国德克萨斯 州召开的第一届c s c w 国际会议上被确定下来的。c s c w 具体可以定义为:在计 算机和网络技术支持的环境中( 即c s ) ,地域分隔的一个群体协同工作完成一项 共同的任务( 即c w ) 。它包括群体工作方式研究和支持群体工作的相关技术( 系 统模型、体协结构、群组通信支持、安全控制等) 、应用系统的开发等研究方向。 通过建立协同工作的环境,可以改善人们进行信息交流的方式,消除或减少人们 在时间和空间上的相互分隔和障碍,从而节省工作人员的时间和精力,提高群体 工作质量和效率i l j 。 自1 9 8 6 年c s c w8 6 国际会议后,c s c w 得到了国际上极大的重视,1 9 8 9 年欧洲学者们在伦敦召开了第一届欧洲c s c w 国际会议e c s c w8 9 ,以后这两个 代表最高水平的国际会议每年在北美和欧洲交替举行。1 9 9 8 年1 2 月,在清华大 学召开了中国第一届c s c w 学术会议c c s c w9 8 ,今后将每2 年召开一次,这标 志着c s c w 在国内的研究正在日益深入和推广。 c s c w 是跨学科、跨领域的崭新研究领域,目前国内外c s c w 研究已经涉及 多媒体信息处理技术、通信技术、分布式计算技术,也涉及心理学、管理科学等 多种学科。随着对研究的深入,人们建立了很多支持群体c s c w 进行协同工作的 通用工具,如白板工具、应用共享等。建立这些通用工具的主要目的就是给群体 成员提供一种交流思想、发现和协调冲突的协同工作手段【2 】。 应用共享,即a p p l i c a t i o ns h a r i n g ,是可以将一个传统的应用软件改造为能支 持多用户共享操作的应用软件,达到充分利用已有资源的目的。因此可以节约大 2 多媒体通信系统中应用共享软件的设计与实现 量人力、财力,其特点是对所有协作者同时提供相同的输出,即应用共享遵循所 见即所得的原则。应用程序共享的一个核心问题是共享机制,它决定了系统设计的 原则。由于人们日常使用的单用户应用程序非常之多,因而研究通过应用程序共 享机制提供网络环境下单用户应用程序的协同工作具有重要的意义。 1 2 本文的主要工作及取得的成果 本文工作来源于预研项目“远程多媒体协同工作应用技术”。作为项目研究 内容的一部分,本文主要研究多媒体通信系统中应用共享软件的设计与实现。内 容包括: 1 2 。1 通用共享应用模式的实现 不同的应用共享模式具有不同的特点,软件架构也不一样。本文先分析了应 用共享常用的两种共享模式即集中式共享模式和复制式共享模式的设计原理和特 点,总结出各自的优缺点和局限性。然后采用通用共享应用模式思想【1 1 】对这两种 方式进行模块化重构,并在此基础之上实现通用共享应用模式的软件架构。 我们采用的通用共享应用模式可适用复制式应用共享和集中式应用共享两种 共享方式。对于复制式架构而言,输入监督器不需要图形界面信息的捕获能力; 对于集中式架构而言,应用程序只有会议发起者( 提供端) 才需要;对于与共享 方式无关的功能,都置于共享管理器中,这样就实现了一个通用型的应用共享模 版。 通用共享模式具有许多优点,比如各个模块功能明确而独立,有利于软件开 发;不同的共享方式能够使用相同的共享管理器;可以根据需要实现为复制式或 集中式结构,而不改变整体结构和流程;不会影响共享应用程序和操作系统的运 作。 1 2 2 图形界面压缩传输技术和实现 图形界面是传统的人机交互方式下最重要的功能之一,同样,在共享应用协 同工作这样的人一人交互模式下,依然是有效传递信息的关键环节。我们在软件 实现上必须实现集中式架构的功能,此时服务器和用户之间传递的绝大多数信息 是图形界面信息。由于网络环境的日趋复杂,需要传递的信息量大小和传输技术 则决定了整个应用共享系统的实时性和同步性。因此实现图形界面高效压缩传输 能够决定软件的性能。 第一章绪论 3 我们先是讨论了w i n d o w s 操作系统中对位图的抓取和处理方法,再重点讨论 了l z w 压缩算法,以及我们根据该算法设计的程序实现流程。通过结合这两种 技术,我们可以实现用户和服务器之间共享应用图形界面的高速交互,为应用共 享软件的实时性和实用性奠定了基础。 1 2 3 用户控制信息的传输和执行 用户之间能否实现对应用的共享,关键在于能否实现对交互操作的共享。我 们根据应用共享的思想,结合基于微软视窗操作系统的消息机制原理,详细讨论 了在w i n d o w s 操作系统中如何实现对用户输入的消息映射和钩子技术,设计了应 用共享过程中客户机与服务器之间控制信息的传输和执行解决方案。该方案能够 实现将来自其他用户对所共享应用程序的操作( 如键盘输入和鼠标操作等) ,返回 到正在运行的应用程序中,并实现相应的操作。 1 2 4 并发控制机制的实现 多个协作者同时对共享应用程序的某个对象进行操作,可能造成不同协作者 的工作空间内容不一致,所以需要提供并发控制机制以解决由于多用户同时操作 可能产生的冲突。我们分析了多种并发控制机制的解决方案,并采用了一种集中 式的基于锁机制的并发控制机制:在每个会话过程中选择一个会议主持,用户对 共享应用进行操作时需要向主持进行申请,只有申请到相应的权限后才可以对对 象进行操作。用户操作完成后,把权限交还给主持,以供在下一次用户申请时分 配。 1 3 本文的内容安排 以前面的讨论为基础,论文的后续内容将介绍研究工作的具体内容。各章节 内容安排如下: 第二章应用共享软件的标准与技术比较 本章中我们介绍了国际标准h 3 2 3 中的t 1 2 0 协议,在此基础上讨论并分析 对比了现有的应用共享软件的协同模式。 第三章应用共享软件的总体设计方案 本章在综合现有的两种传统应用共享软件设计思想的基础之上,借鉴了应用 共享的通用共享模式。并给出了我们对应用共享软件的设计目标和策略选择,根 据需求并考虑到系统的可扩展性,说明了总体设计思路和软件实现框架。 4 多媒体通信系统中应用共享软件的设计与实现 第四章应用共享软件的实现技术 本章首先介绍了l z w 压缩算法的思想,并根据该算法设计程序实现方法。 然后介绍了w i n d o w s 操作系统的消息机制和钩子技术,设计了应用共享过程中客 户机与服务器之间控制信息的传输和执行解决方案。 第五章并发控制机制的设计 本章首先分析了应用共享系统对并发控制机制的需求,然后分析了几种常用 的并发控制机制,最后讨论了我们所采用的基于锁机制的并发控制方法。 第六章论文总结与后续工作 本章对论文的主要工作和取得的成果进行简要的总结,并列出下一步的工作 方向,在后续工作中进一步完善。 第二章应用共享的标准与技术比较 5 第二章应用共享的标准与技术比较 2 1 应用共享与h 3 2 3 和t 1 2 0 协议 1 9 8 6 年s t e f i k 首次提出界面共享观念;1 9 9 5 年删标准的群体协同实验平 台基于h 3 2 3 提出t 1 2 0 标准,同期出现了p c 上的应用共享系统,包括l i v e s h a r e ( p i c t u r e t e l ) 、p r o s h a r e ( i n t e l ) 、n e t m e e t i n g ( 微软) 。1 9 9 6 年,微软与p i c t u r e t e l 合拟了t s h a r e 建议书,并于1 9 9 8 年由盯u 通过成为标准t 1 2 8 。 2 1 1h 3 2 3 简介 一、h 3 2 3 的体系结构 为了在不保证q o s 的分组交换网络上实现多媒体会议,由u 的第1 5 研 究组s g 1 5 于1 9 9 6 年通过h 3 2 3 建议的第一版,并在1 9 9 8 年推出了h 3 2 3 的 第二版。h 3 2 3 制定了无o o s ( 服务质量) 保证的分组网络p b n ( p a c k e tb a s e d n e t w o r k s ) 上的多媒体通信系统标准,这些分组网络主宰了当今的桌面网络系统, 包括基于t c p i p 、口x 分组交换的以太网、快速以太网、令牌网、f d d i 技术。 因此,h 3 2 3 标准为l a n 、w a n 、i n t e m e t 、因特网上的多媒体通信应用提供了 技术基础和保障。 从整体上来说,h 3 2 3 是一个框架性建议,它涉及到终端设备、视频、音频 和数据传输、通信控制、网络接口方面的内容,还包括了组成多点会议的多点控 制单元( m c u ,m u l t i p o i n tc o n t r o lu n i t ) 、多点控制器( m c ,m u l t i p o i n tc o n t r o l l e r ) 、 多点处理器( m p ,m u l t i p o i n tp r o c e s s o r ) 、网关( g a t e w a y ) 以及关守( g a t e k e e p e r ) 等设备。它的基本组成单元是“域,在h 3 2 3 系统中,所谓域是指一个由关守 管理的网关、多点控制单元、多点控制器、多点处理器和所有终端( t e r m i n a l ) 组成的集合。一个域最少包含一个终端,而且必须有且只有一个关守。h 3 2 3 系 统中各个逻辑组成部份被称为h 3 2 3 的实体,其种类有:终端、网关、多点控制 单元、多点控制器、多点处理器。其中终端、网关、多点控制单元是h 3 2 3 中的 终端设备,是网络中的逻辑单元。h 3 2 3 的连接包括了h 3 2 3 终端与其它终端之 间的连接、通过不同网络的连接以及端到端之间的连接。其体系结构如图2 1 所 示。 6 多媒体通信系统中应用共享软件的设计与实现 图2 1h 3 2 3 的体系结构 二、h 3 2 3 终端的组成 h 3 2 3 为基于网络的通信系统定义了四个主要的组件:终端( t e r m i n a l ) 、网 关( g a t e w a y ) 、关守( g a t e k e e p e r ) 、多点控制单元( m c u ) 。终端是分组网络 中能提供实时、双向通信的节点设备,也是一种终端用户设备,可以和网关、m c u 通信。所有终端都必须支持语音通信,视频和数据通信则可选。h 3 2 3 规定了不 同的音频、视频或数据终端协同工作所需的操作模式。 视频i of 视频编解码j 接 设备l h 2 61 i - t 2 6 3 收 分 通 【- 音频i ol 音频编解码 道 g 7 11 ,g 7 2 2 延 组 时 设备 i g 7 2 9 ,g 7 2 3 1 h 2 2 5 交 数据应用 系统控制 层换 t 1 2 0 等 h 2 4 5 控制 呼叫控倦网 h 2 2 5 o 系统控制 络 用户界面 r a s j 空带 h 2 2 5 0 图2 2 h 3 2 3 终端框图 图2 2 所示为h 3 2 3 终端的组成框图,在发端,从输入设备获取的视频和音 频信号,经编码器压缩后,按照一定格式打包,通过网络发送出去,在收端,来 自网络的数据包首先被解包,获得的视频、音颛压缩数椐经解码后送入输出设各, 第二章应用共享的标准与技术比较 7 用户数据和控制数据也得到了相应的处理。终端所包含的各个功能单元及其标准 协议分别是: 视频编解码( h 2 6 3 h 2 6 1 ) :完成对视频码流的压缩编解码。 音频编解码( h 7 2 3 1 等) :完成语音信号的编解码,并在接收端可选择加入 缓冲延迟以保证语音的连续性。所采用的标准有多种,其中n u t 的h 7 2 3 1 提 供5 3 k b i t s 和6 3 k b i t s 两种码率,采用线性预测综合分析编码方法,分别使用 代数码本激励线性预测和多脉冲最大似然量化,从而各自获得编码复杂度和质量 的优化。 控制单元( h 2 4 5 ) :提供端到端信令,以保证h 3 2 3 终端的正常通信。它定 义了请求、应答、信令和指示四种信息,通过各种终端间进行通信能力协商,打 开关闭逻辑信道,发送命令或指示等操作,完成对通信的控制。 h 2 2 5 层:将视频、音频、控制等数据格式化并发送,同时从网络接收数据。 另外,还负责处理一些诸如逻辑分帧、序列号、错误检测等功能。 各种数据应用:包括应用共享、电子白板、静止图像传输、文件交换、数据 库共存、数据会议、运程设备控制等,可用的标准为t 1 2 0 、t 8 4 、t 4 3 4 等。 其中t 1 2 0 中包括了应用共享标准。 2 1 2 数据应用t 1 2 0 简介 l t ut 1 2 0 标准由国际上一些计算机和电信厂商开发和支持,包括一套通信 和应用层协议。这些协议使开发者可以开发兼容的实时多点数据会议产品及业务。 在不同类型的网络和连接条件下使用符合该标准应用的用户,都可以参与会议。 结合h 3 2 3 协议,地理上分布的不同用户跨越不同的物理网络组成“会议 ,在 成员之间进行简单的音频( 电话) 、音频+ 数据( 语间图文) 、音频+ 视频( 视 听) 、音频+ 视频+ 数据( 多媒体) 的通信,如文件传输、共享白板、应用共享 等。 t 1 2 0 模型由通信基础设施及该设施之上的应用协议两部分组成。图2 3 说明 了一个包含标准及非标准化的应用协议的完整模型。这个模型说明了t 1 2 0 系列 协议的构成及其相互关系。 8 多媒体通信系统中应用共享软件的设计与实现 用户应用 ( 使用标准和非标准应用协议) jljl 用户应用 结点控制器。 用户应用 ( 使用标准协议)( 使用非标准协议) j i j l 工 、 r i t u t 1 2 0 应用协议建议 1r 1r 应用共享t 1 2 8 标准应用协议实体t 1 2 7 卜j r 标准应用协议实体t 1 2 6 卜j 非标准应用协议实体i i - j j l jl j ljl 1r 1r1r 通信会议控制( g c c ) t 1 2 4 1r 了 1r 多点通信服务( m c s ) t 1 2 2 t 1 2 5 3 特定网络的通信协议栈t 1 2 3 i t u t 12 0 基础设施建议 图2 3 系统模型 t 1 2 0 由一系列通信和应用标准构成。其体系结构包括: t 1 2 0 :多媒体会议数据协议系列综述。 t 1 2 1 :该标准提供了通用应用模板( g a t ) ,该模板规定了建立应用协议的 指导原则。为保证应用的一致性,所有t 1 2 0 产品中必须包含和符合该标准。 t 1 2 2 :该标准定义了多点业务特性,使一个和多个与会者可以发送数据。这 些多点业务由t 1 2 5 完成,实现传输数据的机制。t 1 2 2 和t 1 2 5 标准共同实现了 t 1 2 0 多点通信业务( m c s ) 。 t 1 2 4 :通用会议控制( g c c ) 协议。定义了支持多点远程会议预约和基本会 议控制服务的应用协议。 t 1 2 5 :该标准规定了会议中数据传送的方式。定义了传输数据的专用和广播 通路,保证多个用户之间准确而有效的通信。t 1 2 5 实现了t 1 2 2 定义的多点业务。 第二章应用共享的标准与技术比较9 t 1 2 6 :多点静止图像和注释( a n n o t a t i o n ) 协议。定义了多点会议中的协同 数据共享、图像共享、图形显示信息和图像交换。 t 1 2 7 :该标准定义了在与会者之间如何同时实现文件传送。用户可以选择一 个或多个文件,并以压缩或非压缩方式传送给所有与会者或指定的与会者。 t 1 2 8 :该标准定义了应用共享命令的传送机制。 t 1 2 0 协议簇中,数据应用程序共享遵循t 1 2 6 协议和t 1 2 8 协议,其中t 1 2 6 协议定义多点数据会议中的静态图像协议,包括电子白板,图像延迟控制和屏幕 的软硬拷贝;而t 1 2 8 协议是多点应用程序共享协议,实现远端显示本地共享应 用程序的屏幕输出,以及协同前提下获取共享应用程序控制权的途径。 2 2 应用共享软件的协同模式 t 1 2 8 应用共享协议与c s c w 所提出的应用共享目标都是一致的,就是提高 群体成员间的协同工作和协调配合水平。各个协作用户共同对一个应用进行操作 和共享,其中每一个用户都具有相对平等的操作权限。就好像所有协作者不是在 进行人机对话,而是“聚集 在一起,围绕一个共同的应用进行讨论,交换信息, 相互协商,达成一致,做出决定,共同完成任务。我们把这种协作模式称为“会 议模式 。图2 4 表示了会议模式应用共享系统的一般概念1 1 】。 图2 4 应用共享系统的会议模型 应用共享软件所要达到的一个主要目标就是c s c w 所宣扬的w y s i w i s ( w h a ty o us e ei sw h a tis e e ) ,即“你见即我见 。作为协同环境下的重要工具, 它的典型应用有:会议系统、客户服务、文档共同编辑、远程教学和技术支援等。 我们以一个典型的共享应用会议系统中常用的幻灯片播放为例,各个协作者可以 同时看到别人放映的幻灯片( s l i d e ) ,也可以通过获得控制权限进行播放操作, 或者修改操作,将自己需要表达的信息传递给所有协作的用户,使其想法、意图 1 0 多媒体通信系统中应用共享软件的设计与实现 被别人所了解。而每个用户在了解到他人的情况之后,都可以产生新的想法和决 定,又有了新的对共享的应用进行操作的需求,如此往复,直到群体达成一致完 成任务。 我们总结应用共享软件的四大优点如下: 1 、不需要对资料和呈现资料的应用程序做任何修改; 2 、能做到对全部电脑存储信息的信息共享; 3 、单人操作变为多人操作; 4 、具有分布式架构的特点。 在此过程中,当多个用户同时访问共享的应用程序时,为了保证数据一致性 而必须采用合适的并发控制策略,我们将在第五章中予以介绍。 2 3 应用共享软件实现技术的比较 在应用共享的具体程序实现中,我们首先需要设计应用共享的协作模式。按 应用程序的协作方式来分,以往的模式主要可以分为集中式共享和复制式共享。 现在我们来分析这两种模式的结构特点和优缺点。 2 3 1 集中式应用共享模式 在集中式应用共享模式下,所有参加协同工作的用户可以在不同地点的不同 计算机上,对安装在某一台计算机上的应用程序进行操作,并且所有的用户都能 看到输出的结果,用户间传递的信息是共享操作消息和应用程序的输出结果,并 且输出结果是由一个应用程序产生的。 集中式应用共享方式,通常采用c l i e n t s c f v c i 结构,如图2 5 所示。被共享 的应用程序运行于服务器端,所有参加协同工作的在不同计算机上的用户可以将 对应用程序的输入直接送到服务器端,通过服务器的处理,并实时的将某个用户 的输入反馈给所有的用户1 9 1 。 服务 j j i j用户用户用户 l 图2 5 集中式应用共享模式 集中式应用共享机制( c a s ,c e n t r a l i z e da p p l i c a t i o ns h a d n g ) 可用三元组【6 j 第二章应用共享的标准与技术比较 形式表示如- f f c a s = n ,c s ,o s d ,其中: n ( n o d e s ) 为参加应用共享的节点集; c s ( c o n t r o ls t r a t e g i e s ) 为共享控制策略集; o s d ( o u t p u ts h a r i n gd a t a ) 为输出共享数据集。 因此,集中式应用程序共享是在共享控制策略( c s ) 的协调控制下,参加应 用共享的各节点( n ) 共同操作主席节点上的应用程序,主席节点上的应用程序 产生输出共享数据集( o s d ) 并分发到参加共享的各节点。工作流程如图2 。6 所 示。 集中式应用共享方式中所有的应用程序都运行在服务器,因此便于管理和保 证数据的一致性,容易实现协作中用户的动态加入和离开。但是由于每个参加协 同工作的用户的输入都要通过网络传送给服务器,经过服务器处理后所产生的结 果又要通过网络传送到参加协同工作的各个用户,然后在屏幕上显示出来。所以 每次传输的数据量比较大,容易造成网络延时。而且不支持任何形式的异步协作, 没有弹性的控制机制,协作结果难以重放;并且当服务器或充当服务器的客户机 出现错误时,整个系统就无法使用,系统的可靠性较差。 图2 6 集中式应用共享工作流程 1 2 多媒体通信系统中应用共享软件的设计与实现 2 3 2 复制式应用共享模式 在复制式应用共享模式下,所有参加协同工作的用户的计算机上都运行有单 用户应用程序的一个拷贝,用户对应用程序的操作( 例如鼠标、键盘输入等消息) , 被分发到其它用户的计算机上,并产生同样的输出结果,以实现单用户应用程序 的网络化协作。该方法也被称为“事件分发法 ,其结构如图2 7 所示。 复制式应用共享机制( d a s ,d u p l i c a t ea p p l i c a t i o ns h a r i n g ) 可用六元组 8 1 形式 表示如下d a s = n ,八r ,c s ,i s d ,o s d 其中: n ( n o d e s ) 为参加应用共享的节点集; a ( a p p l i c a t i o n s ) 为参加共享节点上的应用集; r ( r e s o u r c e s ) 为参加共享节点上的资源集; c s ( c o n t r o ls t r a t e g i e s ) 为共享控制策略集; i s d ( i n p u ts h a r i n gd a t a ) 为输入共享数据集; o s d ( o u t p u ts h a r i n gd a t a ) 为输出共享数据集。 一 j 一致化 - - 致4 9 输 l 输入 输入l 输 出 lf 八 共享系统 出 请共享系统 ny 请 求 jlj i 求 末端末端 r输入输入1 界面( 操作系统)界面( 操作系统) 应用程序共享者一应用程序共享者二 ( a p p l i c a t i o np a r t i c i p a n t1 )( a p p l i c a t i o np a r t i c i p a n t2 ) 图2 7 复制式应用共享 因此复制式应用程序共享模式是在参加协作的每个计算机上都运行有单用户 应用软件的一个拷贝( a ) ,在共享控制策略( c s ) 的协调控制下,焦点节点上 的应用产生的输入共享数据集( i s d ) ,被分发到各节点上( n ) ,输入共享数据 集经本地应用程序执行后,产生目标一致的输出结果( o s d ) 【引。 与集中式结构相比,复制式结构将共享对象在各协作处分别复制一份,这样 用户的所有操作( 如对视图的刷新、对象的修改等) 都可借助本地对象而得到快 速的完成,网络中传输的只是各种操作消息,从而实现了比较高的响应速度,实 第二章应用共享的标准与技术比较 1 3 现用户之间方便、灵活、自由的交互。但同时所带来的问题,就是如何保证在各 协作站点处数据对象的一致性,这就必须借助于某种形式的并发控制策略,来保 证各操作的执行仍然能达到用户所期望的结果。 第三章应用共享软件的总体设计方案 第三章应用共享软件的总体设计方案 3 1 系统设计目标与策略选择 应用共享软件系统是以计算机网络为基础,支持群体协同为目标的一种分布 式软件系统。我们从这个角度出发,给出了设计目标和相应的策略选择。 3 1 1 开放性 应用共享软件所支持的应用共享系统应该是一个具有开放性特征的系统,能 够支持协作实体各方的互联、互操作、协同工作。系统对用户所呈现的是一个共 享的应用环境,而底层所涉及到的一些策略和机制对用户是透明的。 3 1 2 系统的可扩充性与重构性以及软件的重用和继承性 随着新技术的推出和时间的推移,应用共享系统可能会出现新的需求( 例如 功能的增加) ,这时就需要对已推出的软件系统进行改动。为了方便以后功能的 扩充,要求系统具有良好的可扩充性( e x t e n s i b i l i t y ) 和重构性( r e c o n f i g u r a b i l i t y ) , 相应软件实现也需要有良好的重用性( r e u s e ) 和继承性( i n h e r i t a n c e ) 。而面向 对象技术具有许多良好的特点,概括如下: 1 、模块性:对象是一个功能和数据独立的单元,互相之间只能通过对象认可 的途径进行通信,互相没有预料不到的影响,也可以较为自由的为各个不 同的软件系统所用。 2 、封装功能:为信息隐藏提供具体的实现手段,用户不必清楚对象的内部细 节,只要了解其功能描述就可以使用。 3 、代码共享:继承性提供了代码共享的一种手段,可以避免重复的代码设计。 4 、增量型设计:面向对象系统可以通过多态和继承机制不断扩充功能,而不 影响原有软件的运行。 从上面的分析可以看出,采用面向对象方法和构件技术是应用共享系统开发 的一种策略【1 2 】。 1 6 多媒体通信系统中应用共享软件的设计与实现 3 1 3 数据一致性 应用共享软件系统由多个协作者共同参与,要达到w y s i w i s 的目标,就需 要保证各站点处共享应用数据的严格一致性。而在实际的操作中,可能会存在多 个用户同时操作同一对象的情况。如果没有严格的机制来控制操作的优先级和顺 序,那么由于网络的延迟,不同的站点处就可能会显示不同的操作结果,造成共 享数据的不一致。 为解决这种一致性问题,需要采用并发控制机制来协调各站点的工作,在第 五章将给予详细介绍。 3 1 4 安全性 由于该应用共享软件系统主要面向的使用者是协同工作的群体,任何群体针 对不同的工作内容都会对安全性提出不同的要求。安全机制在网络安全设施的基 础上,特别要强调成员身份认证、成员权限控制和数据加密与解密的要求。安全 性不是本文讨论的重点,这里不再赘述。 3 2 系统需求与功能描述 该应用共享软件作为多媒体协同工作系统中的一个子模块,它的主要目的是 为了将一个传统的单用户应用软件改造为能支持多用户共享操作的应用软件,达 到充分利用已有资源进行协同工作的目的。我们在设计功能的时候也紧紧围绕这 个目的而设计和实现。主要包括: 1 、应用共享群体的建立和加入:在充当服务器的站点启动一项应用程序作为 共享应用之后,其他站点应具备在特定的i p 网段上扫描该服务器的能力, 并在服务器一栏中显示出所有可以加入的应用共享服务器。通过加入申请 控制按钮向服务器提出申请。 2 、共享应用程序的显示:在用户站点设计有专门的可调节大小图形显示窗 口,用来显示服务器传输的共享内容。该窗口需要保持较高的刷新率来维 持和服务器显示的同步。 3 、操作权申请与控制:客户端设计有操作权申请的功能与操作控制功能。软 件能在观看其他协同工作的成员共享应用的同时,具备随时申请并获取取 得发言权的能力。具备发言权后,还具有对服务器共享的应用程序进行远 程操作的能力。 为了使用户之间的交流更为直观和方便,该软件还支持文本消息的传送。此 第三章应用共享软件的总体设计方案 1 7 外,用户在讨论过程中可能需要把本地文件共享给其他用户,所以还需要支持文 件传送的功能。用户在会议期间为完成任务可能就某些问题需要进行投票决议, 所以该软件还需要支持会议投票功能。 3 3 应用共享软件的通用模型设计 3 3 1 应用共享的通用共享模式 按应用程序的协作方式来分,以往的模式主要可以分为集中式和复制式共享。 为了能够发挥两者各自的优点和结构特点,本文引入了另外一种模式:通用应用 共享模式【1 。 上一章介绍的两种共享模式各自的优缺点都很明显,而且目前二者都无法互 相兼容。这就使得采用任何一种模式实现的软件都具有无法随需求而扩展的局限 性。比如微软的n e t m e e t i n g 就是采用集中式共享模式实现的应用共享软件。我们 在日常使用过程中发现该软件具有集中式的所有特点,包括缺点。那么能不能有 这样一种共享模式,能够兼容集中式和复制式两种共享模式,并且能够在两者之 间进行转换从而适应不同的应用需求呢? 首先,通过对复制式和集中式两种共享模式的研究,我们可以对这两种模式 的实现机制分别使用一种模块化的框图来表示。 一序) ) 千一致化输入 一致化输入下 共享系统共享系统 输信息恢复器信息恢复器 输 f 多点群体 出 共享管理器p 合作通道 令 共享管理器 ny出 f f 信息捕获器信息捕获器 , t 本端远端输入本端远端输入f, 图形环境图形环境 应用共享者一应用共享者二 图3 1 复制式共享模块图 在图3 1 复制式共享模块图中,应用共享系统所处理的信息仅仅为输入信息, 1 8多媒体通信系统中应用共享软件的设计与实现 即末端输入的信息( 鼠标、键盘等操作) 。系统将用户在本地的所有输入信息同 时传递给本地共享应用程序和远端的共享应用程序,经过信息捕获器捕获后交给 上层共享管理器集中处理。共享管理器对用户的输入信息进行类型区分和并发控 制等管理,实现虚拟的协作用户之间多点群体合作通道。最后由信息恢复器将共 享管理器处理后的信息输出至应用程序,完成一致化输入。 图3 2 集中式共享模块图 在图3 2 集中式共享模块图中,应用共享系统所处理的信息包括输入信息和 图形界面信息。应用共享系统通过画面捕获器来实现图形界面的捕获和压缩解压 缩。而且在应用程序提供者一方提供所要共享的应用程序,在应用共享者一方则 不需要应用程序,通过图形界面的捕获和重置则能够实现一致化输出。 这种模块化的框图不同于以往的流程图,使得我们可以用另外一种全局的角 度来分析他们各自的实现过程。通过分析和对比上面两个模块化框图,我们引入 了一种名为通用共享模式的思想。该模式可以将两种共享模式各自功能相似的模 块进行功能聚合,在保留原有模块功能的基础上,同时又能够大大提高了扩展性 和灵活性。基于这种思想的应用共享模式称为通用共享模式,原理如图3 3 。 该模式可适用于两种共享方式。对于复制式架构而言,输入监督器不需要图 形界面信息的捕获能力;对于集中式架构而言,应用程序只有会议发起者( 提供 端) 才需要:对于其他的功能比如控制功能,都置于共享管理器1 1 1 j 中。这样就实 现了一个通用型的应用共享模版。各模块具体的说明如下: 第三章应用共享软件的总体设计方案 1 9 出 竺用程月:夕 手弪制者输入 共享歪竺l h 瓦磊 共享管理器 输出监督l l 输入监督 输出i 输入 图形环境 应用程序提供者 多点群体 合作通道 控制者输入 应用程序b 输入代理 共享系统 共享管理器 输入监督ii 输出监督 输入i 输出 图形环境 应用程序共享者 图3 3 通用共享模式模块图 1 、共享管理器 管理共享系统的整体信息,并完成上下层的交换。该模块需要提供基本的共 享管理功能和网络层对话能力,以及与输入监督器、输出代理器和输入代理器的 对话能力。 2 、输入代理器 将共享管理器传来的输入信息,以操作系统的运作方式回应给应用程序。在 集中式架构下使应用程序一直保持在单一使用者操作的状态;在复制式架构下使 应用程序得到一致化的输入。该模块需要具有输入信息的复制能力,还要具有对 共享信息进行解压缩的能力。 3 、输出监督器 根据得到的应用程序动态的输出信息和共享管理器的输出信息,复制并输出 命令,完成指定的输出服务。该模块需要具有命令拦截和区分能力,需要对共享 信息进行压缩。 4 、输入监督器 截获来自操作系统的输入信息和图形界面信息,将其提交给共享管理器来决 定合适的输入来源。该模块需要提供信息截获能力和解压缩能力。 上述模块化的通用共享模型的设计做到了将两种以往互不相容的传统共享方 式统一到一个平台下进行设计和实现,它的优点具体如下: 各个模块功能明确而独立,有利于软件开发; 不同的共享方式能够使用相同的共享管理器; 多媒体通信系统中应用共享软件的设计与实现 可以根据需要实现为复制式或集中式结构,而不改变整体结构和流程; 不会影响共享应用程序和操作系统的运作; 3 3 2 应用共享通用模式的工作原理 本文采用m f ca p p w i z a r d 生成的单文档视图结构来实现应用程序。这种结 构将数据操作和数据显示、用户界面分离开来,是一种“分而治之 的思想。这 种思想使得模块划分更加合理、模块独立性更强,同时也简化了数据操作和数据 显示、用户界面工作。文档只负责数据管理,不涉及用户界面;视图则用来把文 档中的数据以可视化的方式呈现给用户,并负责响应用户的鼠标和键盘操作,它 可以不考虑应用程序的数据是如何组织的,甚至当文档中的数据结构发生变化时 也不必改动视图的代码,同时文档类数据的变化还可引发视图的自动更新。 由于w i n d o w s 是基于事件( 消息) 驱动机制的图形界面操作系统,所以该 软件作为基于w i n d o w s 的应用程序,它的运行依靠消息来驱动。在w i n m a i n 主 函数里用c r e a t e m a i n w i n d o w 来创建窗口,用循环g e t m e s s a g e 来对消息进行 t r a n s l a t e m e s s a g e 和d i s p a t c h m e s s a g e 1 0 1 。 图3 4 以类图的方式简要展示了本文的软件设计结构。在软件结构中类 c s h a r e s c r e e n v i e w 负责显示c s h a r e s c r e e n c a p t u r e 捕获的图像输出,而且还可以对 该显示区域内的用户输入信息进行截获。比如,可以通过o n m o u s e m o v e 对鼠标 的位置进行计算,然后通过通信类c s h a r e s o c k e t 的s h a r e s e n d d a t a 将该鼠标信息 发送给服务器。我们用类c s h a r e g r o u p 来维护应用共享协作者群体的信息,包括 当前应用共享的状态、主席结点信息和当前拥有控制权的用户d 等。类 c s h a r e m a n a g e r 用来实现共享管理器的功能,负责对下层传递的操作信息和控制 信息进行存储和处理,具有与其他模块进行对话的能力;需要进行并发控制策略 的选择,同时保持应用共享协作者群体信息的同步更新和应用共享过程的会议历 史记录。类c s h a r e p r o f i l e 则用
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年流转土地合同(1篇)
- 2026年小学安全知识问答
- 2026年物业环境管理招聘模拟题及答案
- 2026年企业法律顾问管理法仿真题
- 2026年防火安全知识安全常识
- 2026年秋冬季保育保健知识
- 2026年银行从业资格认证个人理财考点速记
- 初中地理空间教学与地图技能提升课题报告教学研究课题报告
- 2026年车间知识竞赛活动方案设计
- 2026年电脑专业知识培训
- 人教部编版道德与法治八年级下册道德与法治期末测试检测试题(解析版)
- 2024年北京中考语文试题及答案
- 新青岛版-二年级下册数学-口算题
- 周志华-机器学习-Chap01绪论-课件
- X矿业企业120万t选矿厂投标文件技术标
- 汉语写作与百科知识样题
- 提高喷射混凝土施工一次验收合格率QC成果
- 美丽中国(支教项目)
- 题型01 长句表达题的规范答题(课件) 高考生物二轮复习 (新教材专用)
- GB/T 17467-2020高压/低压预装式变电站
- 新通用设备经济寿命参考年限表
评论
0/150
提交评论