CN1450462A - 基于服务器的计算合作 - Google Patents
基于服务器的计算合作 Download PDFInfo
- Publication number
- CN1450462A CN1450462A CN03100617.5A CN03100617A CN1450462A CN 1450462 A CN1450462 A CN 1450462A CN 03100617 A CN03100617 A CN 03100617A CN 1450462 A CN1450462 A CN 1450462A
- Authority
- CN
- China
- Prior art keywords
- sbc
- client computer
- server
- sbc client
- acting
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Transfer Between Computers (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明揭示了一种代理服务器,该代理服务器插入在SBC服务器和多个SBC客户机之间,该SBC服务器配备能够安装应用程序的SBC中间件,该多个SBC客户机在基于服务器的计算系统中通过网络与SBC服务器连接。该代理服务器包括:操作权控制器,其把执行应用程序的操作权给予第一SBC客户机;操作信息转发单元,其从第一SBC客户机接收用于执行应用程序的第一输入操作信息,并把该第一输入操作信息发送到SBC服务器,以便执行应用程序;以及执行屏幕分配器,其接收来自SBC服务器的应用程序执行屏幕,并把该执行屏幕分配给每个SBC客户机。
Description
发明领域
本发明一般涉及一种基于服务器的计算(SBC)合作技术,具体涉及一种使用代理服务器以便可使多个远程用户能共享在SBC服务器上运行的应用程序并能就该应用程序进行相互合作的集中式SBC合作系统。
发明背景
近年,已开发出一种所谓的SBC(基于服务器的计算)系统,该系统可使用户能通过SBC客户机终端的SBC浏览器独自使用在与网络连接的远程SBC服务器上运行的任意应用程序。
在SBC系统中,高负荷应用程序是在服务器内执行,而不是在客户机终端内执行,并且执行屏幕通过网络被发送到客户机终端。用户可使用和执行服务器上的应用程序,如同该应用程序安装在用户自己的终端内一样。基本上,用户和服务器之间的关系是一一对应,各用户均可独立执行服务器上的应用程序。由于客户机终端仅根据输入操作来接收执行屏幕,因而可使用诸如PDA那样的低性能终端来执行复杂的高级应用程序。
图1示出了常规SBC系统的网络结构。常规SBC系统α包括:SBC服务器3,其配备能够引入任意应用程序的SBC中间件2;以及SBC客户机106,其可通过网络4访问SBC服务器3。SBC客户机106具有SBC浏览器105,SBC客户机106的用户(未示出)可通过SBC浏览器105远程执行在SBC中间件2上工作的应用程序1。
当执行SBC服务器3上的应用程序1时,SBC客户机106的用户可操作鼠标、键盘、图形输入板、操纵杆和其他输入装置来输入信息。SBC浏览器105通过网络4把用户的输入操作信息发送到在SBC服务器3上运行的SBC中间件2(ST1)。
SBC中间件2把从SBC浏览器105接收的输入操作信息提供给在SBC中间件(2)上工作的应用程序1(ST2)。应用程序1根据用户指定的输入操作信息来执行处理,并把表示执行结果的更新屏幕信息提供给SBC中间件2(ST3)。一旦收到更新屏幕信息,SBC中间件2就通过网络4把该更新屏幕信息发送到SBC客户机106,然后,该更新屏幕信息便显示在SBC客户机106的SBC浏览器105上(ST4)。
通过重复这些处理,用户可使用和执行远程SBC服务器3上的应用程序1,如同用户正在使用安装在SBC客户机106内的应用程序一样。
基本上,任何应用程序只要能在与SBC中间件2对应的操作系统(OS)上运行,就可在SBC服务器3上运行。这样的应用程序包括但不限于:编辑程序软件,DTP(桌面出版)软件,CAD(计算机辅助设计)软件,以及游戏软件。
SBC中间件2例如是:MetaFrame(Citrix Systems公司的注册商标),VNC(虚拟网络计算;AT&T),Tarantella(SCO的注册商标),GO-Global(GraphOn公司的注册商标)等。
在常规SBC系统α中使用的SBC中间件2是以各个用户相互独立地利用SBC服务器上的应用程序1为条件而设计的。因此,目前的SBC中间件2难以使多个SBC客户机106能相互执行应用程序1,以便在其SBC浏览器105上使用相同执行屏幕实时合作。
另一方面,在JPA 2000-112862和JPA H11-25042中揭示了一种技术,该技术可使多个用户能共享在万维网站点(Web site)上可用的应用程序,以实现合作。并且,JPA H3-273443揭示了一种技术,该技术可在实际运行于服务器上的单个应用程序的限制下,根据客户机进行的键操作,把执行屏幕分配给多个客户机,以实现合作。
然而,这些技术不能直接应用于基于服务器的计算(SBC)合作,因为基于服务器的计算合作是以并行执行复杂、先进的远程应用程序和集中式数据管理为基础的。
发明内容
因此,本发明的目的是提供一种新颖的SBC合作系统,该系统利用现有SBC系统,可使多个SBC客户机能共享在远程SBC服务器上运行的应用程序并能进行相互合作。
为实现该目的,在使SBC服务器和多个SBC客户机连接的网络上的任意区域中设置代理服务器。代理服务器把由单个SBC客户机执行的应用程序屏幕复制在SBC服务器上,并把该复制的应用程序屏幕分配给参与合作的SBC客户机。此外,代理服务器对执行应用程序的操作权的使用进行控制,并根据来自SBC客户机的请求,在SBC客户机之间动态切换操作权。这些安排可使参与合作会话的每个SBC客户机均能参与应用程序的操作。
在本发明的一个方面,提供了一种SBC合作系统。该SBC合作系统包括:SBC服务器,其配备能够安装应用程序的SBC中间件;多个SBC客户机,其通过网络与SBC服务器连接,以便远程使用应用程序;以及代理服务器,其插入在网络上的任意区域中的SBC服务器和SBC客户机之间。在该系统中,代理服务器(a)把执行应用程序的操作权给予第一SBC客户机;(b)接收来自第一SBC客户机的第一输入操作信息,并把该第一输入操作信息发送到SBC服务器,以便执行应用程序;以及(c)接收来自SBC服务器的应用程序执行屏幕,并把该应用程序执行屏幕分配给每个SBC客户机。
SBC客户机使用SBC服务器上的应用程序来构成会话组,以实现合作。代理服务器对在构成会话组的这些SBC客户机之间的操作权转移进行控制和管理。操作权仅被给予单个SBC客户机;然而,对操作权的位置进行协调可使多个SBC客户机能合作利用在SBC服务器上运行的公用应用程序。
代理服务器对由具有操作权的SBC客户机操作应用程序所生成的应用程序执行屏幕进行复制,并把复制的执行屏幕分配给各自SBC客户机。
当从目前不具有操作权的第二SBC客户机收到操作权转移请求时,代理服务器把该操作权转移请求发送到第一SBC客户机,以便询问操作权转移。一旦收到来自第一SBC客户机的接受,代理服务器就把操作权从第一SBC客户机转移到第二SBC客户机。
通过在代理服务器处对操作权的转移和当前位置进行协调,可使用现有SBC中间件来实现在多个SBC客户机之间的合作。
在本发明的第二方面,提供了一种代理服务器,该代理服务器插入在SBC服务器和多个SBC客户机之间,该SBC服务器配备能够安装任意应用程序的SBC中间件,该多个SBC客户机通过网络与SBC服务器连接。该代理服务器包括:(a)操作权控制器,其把执行应用程序的操作权给予第一SBC客户机;(b)操作信息转发单元,其接收来自第一SBC客户机的用于执行应用程序的第一输入操作信息,并把该第一输入操作信息发送到SBC服务器,以便执行应用程序;以及(c)执行屏幕分配器,其接收来自SBC服务器的应用程序执行屏幕,并把该执行屏幕分配给每个SBC客户机。
执行屏幕分配器具有复制单元,该复制单元按照SBC客户机的数量来复制执行屏幕。由于代理服务器把复制的执行屏幕统一分配给参与会话的各自SBC客户机,因而可将SBC服务器和SBC客户机之间的通信速度和响应能力保持在较高水平。
当从目前不具有操作权的第二SBC客户机收到操作权转移请求时,操作权控制器把该操作权转移请求发送到第一SBC客户机,以便询问操作权转移。一旦收到来自第一SBC客户机的接受,操作权控制器就把操作权从第一SBC客户机转移到第二SBC客户机。
由于执行应用程序的操作权的转移由操作权控制器来控制,因而可利用现有SBC系统来实现合作。
附图说明
当结合附图阅读以下详细说明时,将更明白本发明的其他目的、特点和优点。在附图中:
图1示出了常规SBC系统;
图2示出了根据本发明一个实施例的SBC合作系统的网络结构,其中,在SBC服务器和多个SBC客户机之间插入代理服务器,以便可使SBC客户机能共享SBC服务器上的应用程序,并能就该应用程序进行相互合作;
图3是在图2所示的SBC合作系统中使用的代理服务器的方框图;
图4示出了在SBC客户机上打开的SBC合作浏览器的例子;
图5是用于开始和执行SBC合作的顺序图;
图6是用于对开始SBC合作时的系统行为进行说明的图;
图7示出了合作开始确认窗口的例子;
图8是用于对在SBC合作中输出SBC屏幕时的系统行为进行说明的图;
图9是用于在SBC客户机之间转移操作权的顺序图;
图10是用于对转移操作权时的系统行为进行说明的图;
图11A示出了操作权转移请求窗口的例子,图11B示出了拒绝窗口的例子;以及
图12A示出了合作参与请求窗口的例子,图12B示出了拒绝窗口的例子。
优选实施例的详细说明
图2示意性示出了根据本发明一个实施例的SBC合作系统β。该SBC合作系统β包括:SBC服务器3;SBC客户机6A、6B和6C,三者通过网络4与SBC服务器3连接;以及代理服务器10,其位于网络4上的任意区域内。
SBC服务器3配备SBC中间件2,该SBC中间件2能够引入可在与SBC中间件2对应的操作系统上运行的任意应用程序。SBC中间件可以是任何公知的SBC中间件。每个SBC客户机6均具有SBC浏览器5和SBC合作辅助器7。SBC客户机的用户可通过SBC浏览器6和网络4远程使用SBC中间件2上的应用程序1。从SBC客户机6的观点看,SBC合作辅助器7协助由代理服务器管理的SBC合作处理。
代理服务器10插入在SBC服务器3与SBC客户机6A、6B和6C之间。代理服务器10具有操作信息处理器11和合作控制器12。操作信息处理器11对通过SBC客户机6的SBC浏览器5输入的与应用程序操作相关的数据进行处理。另一方面,合作控制器12对通过SBC合作辅助器7输入的数据进行处理,以便对SBC客户机6之间的合作操作进行控制。
通过网络4和代理服务器10与SBC服务器3连接的SBC客户机6A、6B和6C构成会话组,用于使用在SBC中间件2上运行的应用程序1来进行合作会话。该会话组被称为会话组I。为方便起见,图2仅示出了三个SBC客户机6A、6B和6C;然而,当然也可在会话组I中包括四个或四个以上的SBC客户机。尽管未在图2中示出许多不同的会话组,然而它们可通过网络4和代理服务器10与SBC服务器3连接,以便使用应用程序1进行相互并行的合作。
提供给会话组的会话ID和提供给参与会话的各用户的用户ID都通过例如会话缔约或预约事先登记在代理服务器10内。在登记预约时,用于管理和控制合作的代理服务器10的IP地址和端口号被提供给SGC客户机6。
代理服务器10如果从SBC客户机6来看,则是虚拟SBC服务器,如果从SBC3来看,则是虚拟SBC客户机。对于SBC服务器3,使用应用程序1的客户机是会话组I,至于有多少SBC客户机属于会话组I,或者哪个SBC客户机目前正在执行应用程序1,这根本无关紧要。尽管多个SBC客户机实际上在会话组I中轮流执行应用程序1,然而操作权的位置由代理服务器10来控制,因此,从SBC服务器3的观点看,存在这种情况,即:整个会话组I使用应用程序1作为单个客户机。因此,使用现有SBC中间件2可使多个SBC客户机能就应用程序1进行合作,该现有SBC中间件具有在客户机和应用程序操作之间的一一对应的基本规范。
图3示出了代理服务器10的方框图。除了操作信息处理器11和合作控制器12之外,代理服务器10还具有:客户机输入端口15,用于接收来自SBC客户机6A、6B和6C的输入;服务器输入端口16,用于接收来自SBC服务器3的输入;以及客户机数据库18,用于存储有关客户机6A~6C的信息。存储在客户机数据库18内的客户机信息包括但不限于:会话ID,为参与会话而登记的用户ID,口令,SBC服务的IP号和端口号。客户机信息的一部或全部也存储在SBC服务器3内。
客户机输入端口15对从SBC客户机6发送的分组进行分类,以便根据分组的内容把这些分组提供给操作信息处理器11或合作控制器12。
操作信息处理器11包括操作信息发送器25和SBC浏览器屏幕分配器21。操作信息发送器25起到转发单元的作用,当收到来自一个SBC客户机6的输入操作信息时,操作信息发送器25把该输入操作信息发送到SBC服务器3。SBC浏览器屏幕分配器21把通过根据SBC服务器3的输入操作信息来执行应用程序所生成的应用程序执行屏幕分配给SBC客户机6A、6B和6C中的各方。SBC浏览器屏幕分配器21具有复制单元22,在执行屏幕的分配之前,复制单元22根据参与会话的SBC客户机的数量,对应用程序执行屏幕进行复制。
操作信息发送器25包括:分组判定单元26,分组发送单元27,以及操作信息丢弃单元28。分组判定单元26判定从客户机输入端口15提供的分组是否是从目前具有执行应用程序1的操作权的SBC客户机(以下称为“特权用户”)发送的分组。如果分组从特权用户被发送,则该分组由分组发送单元27发送到SBC服务器3。如果分组从特权用户以外的用户(以下称为“普通用户”)被发送,则操作信息丢弃单元28丢弃该分组,并把该分组视为由于操作出错而发送的分组。
合作控制器12包括:合作用户验证器31,合作会话管理器32,以及合作操作权控制器33。以下将对这些元件的操作进行说明。
图4示出了在SBC客户机6上打开的SBC合作浏览器41的例子。SBC合作浏览器41由SBC浏览器5和SBC合作辅助器7构成。SBC浏览器5显示执行屏幕(即:SBC浏览器屏幕),该执行屏幕是由于执行应用程序1而由SBC服务器3生成,并由代理服务器10复制和分配。参与合作会话的所有用户都可在SBC浏览器5上实时浏览更新执行屏幕。
SBC合作辅助器7包括会话信息面板42和活动控制面板43。会话信息面板42例如具有参与者列表52和消息窗口53。参与者列表52列出了正在参与会话的用户,表明操作权所属的当前特权用户。消息窗口53例如显示会话记录。活动控制面板43具有操作权请求按钮54。如果SBC客户机6的任一普通用户希望在合作会话中执行SBC中间件2上的应用程序1,则该普通用户可点击操作权请求按钮54。以下将对通过点击操作权请求按钮54所触发的操作权转移进行详细说明。
在图4所示的例子中,操作权目前被给予作为SBC客户机6A的用户的Tanabe先生。SBC客户机6B和6C的其他用户仅具有浏览权。由于浏览权被自动给予参与会话的所有用户,因而特权用户具有浏览权和操作权。因此,在SBC客户机6A的特权用户和代理服务器10之间发生双向通信,而在代理服务器10和SBC客户机6B和6C的每个普通用户之间发生单向通信。
在合作会话开始时,操作权可由代理服务器10给予为调用会话而首先访问代理服务器10的用户,或者也可事先确定最初特权用户。
图5示出了使用图2所示的SBC合作系统β的合作处理的顺序。SBC客户机6A~6C、代理服务器10以及SBC服务器3都处于合作的活动状态(ST11~ST14)。
然后,例如,SBC客户机6A的用户向代理服务器10的指定端口(未示出)请求连接服务(ST15)。连接请求是通过SBC合作浏览器41上的SBC合作辅助器7来提出。代理服务器10针对来自SBC客户机6A的连接请求进行客户机验证(ST16)。
在客户机验证中,代理服务器10的合作用户验证器31从客户机输入端口15接收SBC客户机6A的用户ID、口令和IP地址。合作用户验证器31请求合作会话管理器32确认会话ID。合作会话管理器32根据由SBC客户机6A访问的代理服务器10的端口号来访问客户机数据库18,以便抽出该会话组的保留会话ID。然后,合作会话管理器32根据抽出的会话ID,对登记的参与者的用户ID进行检索。如果SBC客户机6A的用户ID包括在检索的用户ID内,则合作用户验证器31检查口令并完成验证(ST16中的YES)。合作用户验证器31把验证准入通知发送到SBC客户机6A(ST17)。
在该处理中,一旦SBC客户机6A验证成功,合作会话管理器32就更新会话信息,例如,会话ID,用户ID,以及客户机IP地址。随着会话信息的更新,合作操作权控制器33把操作权给予已就合作会话首先访问了代理服务器10的SBC客户机6A,并更新操作权信息。
此刻,用户名“Tanabe”作为特权用户与IP地址“192.168.10.1”一起显示在SBC客户机6A的SBC合作辅助器7A的参与者列表52(参见图4)中。然后,SBC客户机6A等待直到其他会话参与者的验证完成(ST18)。
同样,其他SBC客户机6B和6C与代理服务器10进行连接(ST19),并接受客户机验证(ST20中的YES)。每次针对SBC客户机6B和6C中的各方完成客户机验证时,代理服务器10便把验证准入通知发送到已在会话中的所有SBC客户机(ST21)。然后,经过验证的用户名逐一显示在SBC合作辅助器7的参与者列表52上。
例如,如果对由SBC客户机6B提出的连接请求进行验证,则SBC客户机6B的用户名(例如,Nakamura)被附加给SBC客户机6A的参与者列表52(ST22a)。同时,SBC客户机6A(即:特权用户)的用户名“Tanabe”和SBC客户机6B(即:新参与者)的用户名“Nakamura”显示在SBC客户机6B的参与者列表52上(ST22b)。然后,SBC客户机6A和SBC客户机6B等待直到所有参与者的验证都完成(ST22a和ST22b)。
然后,SBC客户机6A(即:特权用户)把合作开始指令发送到代理服务器10(ST23)。代理服务器10接收该合作开始指令(ST24),并请求SBC服务器3开始SBC合作服务(ST25)。
SBC服务器3针对从代理服务器10发送的服务请求(即:会话开始指令)进行验证处理(ST26)。一旦验证成功(ST26中的YES),SBC服务器3就把合作开始通知发送到代理服务器10(ST27)。一旦收到该通知,代理服务器10就把该通知发送到参与用户的所有SBC客户机6A、6B和6C(ST28)。如图4所示,依靠该通知,把合作的开始记录在SBC客户机6A~6C中的各方的消息窗口53内(ST29和ST30)。
在开始合作的同时,SBC服务部3把全屏幕(或初始页)信息发送到代理服务器10(ST31)。一旦收到全屏幕信息(ST32),代理服务器3就根据参与用户的数量来复制全屏幕信息,并把复制的全屏幕信息分配给SBC客户机6A、6B和6C(ST33)。然后,分配的全屏幕信息分别显示在SBC客户机6A、6B和6C的SBC浏览器5A、5B和5C上(ST34和ST35)。
从系统行为的观点看,图6和图8分别示出了上述合作开始处理(ST23~ST30)和全屏幕输出处理(ST31~ST35)。在图6中,特权用户的SBC客户机6A的SBC合作辅助器7A把合作开始指令发送到代理服务器10(如箭头(1)所示)。如图7所示,例如通过在合作开始确认窗口内点击开始按钮61,可生成合作开始指令。
该系统可设计成使合作开始确认窗口只有在特权用户(即:SBC客户机6A)的SBC合作辅助器7A内才可打开,而该特权用户已就会话首先访问了代理服务器。在这种情况下,执行应用程序1的操作权是指合作开始权。或者,合作开始确认窗口可在经过验证的所有SBC客户机6A、6B和6C的SBC合作辅助器7A、7B和7C内打开。在后者情况下,即使没有操作权的普通用户点击合作开始按钮61,也可通过由合作用户验证器31和合作操作权控制器33进行的验证和确认处理来否定该开始指令。因此,最终由特权用户来开始合作。
合作开始指令在代理服务器10的客户机输入端口15被接收,并被提供给合作会话管理器32(如箭头(2)所示)。合作会话管理器32根据接收合作开始指令的代理服务器10的端口号来检索会话ID,并确认按检索的会话ID所识别的会话是处于非激活状态,从而准备好合作。合作会话管理器32还对已发送合作开始指令的特权用户的用户ID进行确认(处理(3))。
合作会话管理器32向合作操作权控制器33询问该会话的操作权目前是否属于已请求开始合作的用户(如双向箭头(4)所示)。一旦收到肯定结果,合作会话管理器32就获得已请求合作开始的用户的口令(如双向箭头(5)所示)。
在获得口令之后,合作会话管理器32请求SBC服务器3开始SBC合作会话。SBC服务器3使用用户ID、口令、SBC服务器3的端口号等来执行客户机验证,并把对会话开始请求所作的响应发送到代理服务器10(如双向箭头(6)所示)。为方便起见,处理(6)由双向箭头表示;然而,来自SBC服务器3的响应实际上通过服务器输入端口16被提供给合作会话管理器32。
然后,合作会话管理器32把会话开始通知发送到SBC客户机6A、6B和6C的代理输入端口8A、8B和8C(如箭头(7)所示)。会话开始通知被提供给各自SBC客户机的SBC合作辅助器7A、7B和7C(如箭头(8)所示),并显示在消息窗口53内(参见图4)。在图4的例子中,通知了消息“17:25合作已开始”。
另一方面,SBC中间件2根据会话开始请求开始应用程序1(如箭头(9)所示)。应用程序1输出该应用程序的全屏幕(或初始页)(如箭头(10)所示)。SBC服务器3把全屏幕信息发送到代理服务器10的服务器输入端口16(如箭头(11)所示)。这样,开始会话。
图8示出了当SBC浏览器屏幕被输出时的系统行为。图8所示的操作处理同样适用于在会话开始之后立即输出全屏幕信息,以及输出由执行应用程序1所生成的执行屏幕。唯一区别就是,当输出全屏幕信息时,屏幕信息整个被复制和分配给SBC客户机6,而对于应用程序执行屏幕来说,只有由操作应用程序1所生成的更新部分才被复制和分配。因此,以下将使用输出全屏幕信息的例子进行说明。
首先,由SBC服务器3根据会话开始请求所开始的应用程序1在SBC中间件上打开初始页作为全屏幕(如箭头(1)所示)。SBC中间件2把初始页的全屏幕信息连同其属性一起发送到代理服务器10(如箭头(2)所示)。代理服务器10的服务器输入端口16把全屏幕信息和属性以及端口号一起提供给SBC浏览器屏幕信息分配器21的复制单元22(如箭头(3)所示)。
SBC浏览器屏幕信息分配器21向合作会话管理器32询问全屏幕信息的目的地。合作会话管理器32从端口号中对参与会话的所有SBC客户机6的会话ID和IP地址进行检索,并把检索的目的地提供给SBC浏览器屏幕信息分配器21(如双向箭头(4)所示)。SBC浏览器屏幕信息分配器21在复制单元22处复制与目的地数量同样多的全屏幕信息,并把复制的信息传递到SBC客户机6A、6B和6C(如箭头(5)所示)。
SBC客户机6A、6B和6C的代理输入端口8A、8B和8C接收全屏幕信息,并把该全屏幕信息分别提供给SBC浏览器5A、5B和5C(如箭头(6)所示)。SBC浏览器5A、5B和5C显示全屏幕初始页。
返回到图5,当初始页的全屏幕信息显示在所有参与者的SBC浏览器5A、5B和5C上时,实质上可实现合作。目前具有执行应用程序1的操作权的SBC客户机6A的特权用户可操作鼠标、键盘或其他装置,以便通过SBC浏览器5A来执行应用程序1(ST36)。鼠标、键盘和其他装置的输入操作信息在代理服务器10的客户机输入端口15被接收,并被提供给操作信息处理器11的操作信息发送器25。
操作信息发送器25的分组判定单元26判定包含输入操作信息的分组是否已从具有操作权的特权用户被发送(ST37)。如果分组从不具有操作权的普通用户被发送(ST37中的NO),则操作信息丢弃单元28丢弃输入操作信息。如果分组从特权用户被发送(ST37中的YES),则分组发送单元27把该分组发送到SBC服务器3(ST38)。
分组判定单元26通过向合作会话管理器32和合作操作权控制器33询问与接收的分组有关的会话ID、参与用户ID和当前特权用户ID来判定分组的来源。通过判定处理,只有当分组已从具有操作权的特权用户被发送时,操作信息发送器25才把该分组转发给SBC服务器3。那些来自普通用户的分组被丢弃,以防应用程序1的操作由于操作出错或者无意识接触到鼠标或键盘而发生不一致。
一旦收到由特权用户生成的输入操作信息,SBC服务器3就根据该输入操作信息来执行应用程序1(ST39)。执行应用程序1的结果是使得执行屏幕被更新。SBC服务器3把更新(或变更)部分的更新屏幕信息发送到代理服务器10(ST40)。如上所述,一旦开始执行应用程序1,就无需发送全屏幕信息,而是仅发送由执行所生成的差异信息。
更新屏幕信息在代理服务器10的服务器输入端口16被接收,并被提供给SBC浏览器屏幕信息分配器21。一旦收到该更新屏幕信息(ST41),SBC浏览器屏幕信息分配器21就在复制单元22复制与参与用户数量同样多的更新屏幕信息,并把复制的信息传递到SBC客户机6A、6B和6C(ST42)。SBC客户机6A、6B和6C把更新屏幕信息纳入全屏幕信息,并在SBC浏览器5A、5B和5C上显示应用程序的执行结果(ST43和ST44)。
由于更新屏幕信息的复制和传递与参照图8所述的全屏幕信息的复制和传递相同,因而将省略对其说明。只要特权用户继续执行应用程序1,就重复步骤ST36~ST44,并在SBC客户机6A、6B和6C上实时显示执行屏幕。
为了实时浏览复杂和先进的应用程序的执行情况,SBC客户机只需具有显示功能就足够了。因此,可降低各自SBC客户机中的应用程序的安装和管理成本。在会话开始时,在全屏幕信息发送之后,只有从应用程序执行所产生的更新屏幕信息被发送。因此,数据业务量较轻,并可保持令人满意的通信速度。由于屏幕信息被复制以传递到各自SBC客户机,因而代理服务器10中的过程迅速。总的来说,根据本发明的SBC合作系统在执行应用程序方面具有较高的可操作性和响应能力。
具有操作权的特权用户的SBC客户机仅需要显示器和输入装置来执行安装在远程SBC服务器中的复杂和先进的应用程序。特权用户可操作应用程序,如同该应用程序安装在SBC客户机自身内一样。执行记录被集中在SBC服务器3内,并由SBC服务器3来管理,因而可大大减轻SBC客户机的资源管理负担。
图9示出了在参与会话的多个用户之间的操作权转移处理顺序。SBC客户机6A~6C、代理服务器10以及SBC服务器3都包含在会话中(ST51~ST54)。
SBC客户机6B和6C的任一普通用户均可通过点击设在图4所示的SBC合作辅助器7内的操作权请求按钮54来请求转移执行应用程序1的操作权(ST55)。操作权转移请求被发送到代理服务器10。一旦收到操作权转移请求(ST56),代理服务器10就向当前特权用户的SBC客户机6A询问操作权转移(ST57)。
SBC客户机6A向特权用户询问操作权转移请求是否可接受(ST58)。例如,图11A所示的操作权转移请求窗口在SBC客户机6A的SBC合作辅助器7A中打开。在该例中,作为SBC客户机6C的用户的“Suzuki”正在请求操作权转移。如果操作权转移请求可接受(ST58中的YES),则特权用户点击“OK”按钮71。如果特权用户不希望转移操作权(ST58中的NO),则点击“拒绝”按钮72。
在图9所示的例子中,操作权转移请求窗口仅在特权用户(即:SBC客户机6A)的SBC合作辅助器7A中打开。然而,操作权转移请求窗口可在所有SBC客户机6A~6C的SBC合作辅助器7A~7C中打开,作为操作权转移的预先通知。在这种情况下,由特权用户以外的用户对“OK”按钮71或“拒绝”按钮72所作的点击由代理服务器10在确认特权用户的用户ID之后丢弃。
通过在操作权转移请求窗口中选择任一按钮,对有关操作权转移询问所作的响应从SBC客户机6A被发送到代理服务器10(ST59)。一旦收到来自特权用户的响应(ST60),代理服务器10就判定操作权转移是否被接受(ST61),并把判定结果发送到SBC客户机6A~6C(ST62)。
转移结果显示在SBC客户机6A~6C的所有或部分中的SBC合作辅助器7上(ST63和ST64),这取决于结果。如果SBC客户机6C提出的操作权转移请求已被拒绝,则转移拒绝窗口在SBC客户机6C的SBC合作辅助器7C中打开。另一方面,如果操作权转移请求已被接受,则所有SBC客户机6A~6C的参与者列表52(参见图4)变更为例如“观察:Tanabe(192.168.10.1),观察:Nakamura(192.168.10.2),操作:Suzuki(192.168.10.3)”。只要清楚表示操作权转移的事实,参与者列表52的顺序就无关紧要。操作权的位置可由不同颜色来加亮或强调。除了参与者列表52的通知以外,还在消息窗口中显示操作权转移以及时间,作为会话记录的一部分。
图10示出了在操作权转移时的系统行为。SBC客户机6C把来自SBC合作辅助器7C的操作权转移请求发送到代理服务器10(如箭头(1)所示)。代理服务器10的客户机输入端口15把操作权转移请求连同端口号和客户机的IP地址一起提供给合作操作权控制器33(如箭头(2)所示)。合作操作权控制器33向合作会话管理器32询问会话ID和用户ID。合作会话管理器32根据端口号抽出会话ID和用户ID,并把抽出的ID返回到合作操作权控制器33(如单向箭头(3)所示)。合作操作权控制器33从会话ID中检索当前特权用户ID(处理(4)),并把操作权转移请求发送到当前特权用户,该当前特权用户在该例中是指SBC客户机6A的用户(如箭头(5)所示)。
SBC客户机6A的代理输入端口8A把操作权转移请求提供给SBC合作辅助器7A(如箭头(6)所示)。SBC合作辅助器7A打开图11A所示的操作权转移请求窗口。对通过操作权转移请求窗口输入的操作权转移所作的响应从SBC客户机6A被发送到代理服务器10(如箭头(7)所示)。代理服务器10的客户机输入端口15把该响应提供给合作操作权控制器33(如箭头(8)所示)。如果该响应表示接受操作权转移,则合作操作权控制器33更新当前特权用户ID,并把更新的特权用户信息发送到所有SBC客户机6A~6C(如箭头(9)所示)。如果该响应表示拒绝转移,则合作操作权控制器33保持当前特权用户ID,并把拒绝通知发送到已提出操作权转移请求的SBC客户机6C。
SBC客户机6A~6C的代理输入端口8A~8C分别把新特权用户信息或拒绝通知提供给SBC合作辅助器7A~7C,然后,SBC合作辅助器7A~7C显示转移协商结果(如箭头(10)所示)。
返回到图9,一旦操作权已被转移,新特权用户(例如,SBC客户机6C的用户)就操作鼠标、键盘和其他输入装置,以便通过SBC浏览器5C执行应用程序1(ST65)。输入操作信息被发送到代理服务器10,并且操作信息发送器25判定包含输入操作信息的分组是否已从特权用户被发送(ST66)。如果该分组来自特权用户(ST66中的YES),则操作信息发送器25把该输入操作信息转发给SBC服务器3(ST67)。SBC服务器3根据该输入操作信息来执行应用程序1(ST68)。如果该分组来自非特权用户(ST66中的NO),则操作信息发送器25在操作信息丢弃单元28丢弃该分组。
SBC服务器3把表示应用程序执行结果的更新屏幕信息发送到代理服务器10(ST69)。代理服务器10接收该更新屏幕信息,并把该信息复制成与参与用户的数量同样多,并且向SBC客户机6A~6C中的各方均分配一份复制信息(ST70和ST71)。SBC客户机6A~6C把更新执行屏幕分别显示在SBC浏览器5A~5C上(ST72和ST73)。
已结合图8对在更新屏幕信息的复制和传递中的系统行为作了说明,以下将省略对其说明。新特权用户继续执行应用程序1,直到随后点击操作权请求按钮54并接受该请求,然后重复步骤ST65~ST73。
尽管只有具有操作权的特权用户才可实际在SBC服务器3上执行应用程序1,然而通过在会话组中的特权用户和普通用户之间的协商,可随时变更操作权的位置。操作权的位置和转移可由代理服务器10的合作操作权控制器33进行全面控制,从而可减轻SBC客户机6的负担。
无论操作权的位置如何,应用程序1的执行屏幕都可被复制和传递到所有SBC客户机6并可实时显示。从SBC服务器3的观点看,执行应用程序1的客户机是会话组I(或代理服务器10),并且以客户机和应用程序执行之间的一一对应为条件的现有SBC中间件2的基本规范不会变更。
在上述实施例中,当所有候补(或登记用户)都参与会话时,开始会话,并且也是以该例为基础对处理顺序和系统行为作了说明。然而,该系统可设计成使属于会话组I的用户能够在会话中途参与合作。在这种情况下,具有操作权的特权用户在检查其他参与者的登录状态的同时,可通过自行生成合作开始指令来开始合作。SBC客户机6B和6C不必等到所有候补都参与会话,而是仅等到特权用户开始合作。
该系统也可设计成使特权用户允许或拒绝属于会话组I的用户参与。在该例的操作中,SBC客户机6D(未示出)激活SBC合作浏览器41,并在合作会话中向代理服务器10提出连接请求。根据该连接请求来进行客户机验证。然后,代理服务器10的合作会话管理器32根据输入端口号来检索会话ID,并判定按检索的会话ID所识别的会话是否正在进行。如果该会话正在进行,则合作操作权控制器33检查当前特权用户ID,并把合作参与请求发送到特权用户(例如,SBC客户机6A)。SBC客户机6A接收该参与请求,并且SBC合作辅助器7A打开图12A所示的合作参与请求窗口。
特权用户通过在会话中点击参与请求窗口中的“OK”按钮81或“拒绝”按钮82来允许或拒绝参与请求。如果参与请求被拒绝,则代理服务器10的合作会话管理器32把拒绝通知发送到已提出参与请求的SBC客户机6D。在这种情况下,图12B所示的合作参与拒绝窗口在SBC客户机6D的SBC合作辅助器7D中打开。
如果点击“OK”按钮81以便允许SBC客户机6D的参与,则代理服务器10的合作会话管理器32把SBC客户机6D的用户ID附加给参与用户ID列表。同时,代理服务器10请求SBC服务器3输出当前执行的应用程序屏幕的全屏幕信息。SBC服务器3把该全屏幕信息发送到代理服务器10。代理服务器10的SBC浏览器信息分配器21把该全屏幕信息发送到已被允许中途参与会话的SBC客户机6D。这样,当前执行屏幕便显示在SBC客户机6D的SBC浏览器5D上。
合作会话管理器32还把更新的参与者信息发送到所有SBC客户机6A~6D。在SBC合作辅助器7A~7D的各方中,参与者列表52和消息窗口53(参见图4)被更新。例如,消息“观察:Maeda(192.168.10.4)”被附加在参与者列表52中,并且SBC客户机6D的参与连同时间一起被记录在消息窗口53的会话记录内。
为了结束会话,特权用户可强制关闭SBC客户机6,或者,可通过与合作开始确认窗口(图7)不同的窗口来结束会话。在后者情况下,例如进行右键点击可使合作停止菜单显示在SBC客户机6上,并且可通过选择停止键来停止会话。
一旦收到会话停止请求,代理服务器10就使该会话的端口与SBC服务器3断开。在SBC服务器3中,应用程序1被保留在激活状态下。因此,当代理服务器10自身通过特定端口再次与SBC服务器3连接时,可从断开时的状态恢复合作。
在上述实施例中,特权用户的用户ID用于建立代理服务器10和SBC服务器3之间的链接,但是代理服务器10可保持独立的客户机ID以及与应用程序1相关的口令,以便建立链接。
SBC合作系统β适用于教育、医疗、设计、建筑、施工等的各种领域。在实际合作场合,准备了具有最少功能的SBC客户机6,例如,仅具有显示器和简单输入装置。在SBC服务器3中安装和执行高负荷应用程序,并且执行屏幕信息被实时分配给参与会话的所有SBC客户机。会话记录和操作权的位置由代理服务器10采用集中方式来管理,这可大大减轻各自SBC客户机的负担。
配备现有SBC浏览器的任何类型的终端装置,例如,台式PC,笔记本式个人计算机,PDA,蜂窝电话等都可用作SBC客户机。只需把SBC合作辅助器7附加给这些终端装置,就可使用在远程SBC服务器3上运行的任意应用程序来实现SBC合作。
SBC客户机6的代理服务器10和SBC合作辅助器7可采用硬件、软件和固件中的任一方或者这三方的任何组合来实现。如果SBC合作辅助器7采用软件来构建,则SBC合作辅助器程序可存储在计算机可读取记录介质中,然后被分配给SBC客户机。或者,SBC合作辅助器程序可通过网络从代理服务器10分配到SBC客户机。
当采用软件来实现时,安装在SBC客户机6内的SBC合作辅助器7包括以下指令:
(a)当代理服务器把操作权给予第一SBC客户机时,使每个SBC客户机均表示操作权的位置;
(b)当第一SBC客户机执行了应用程序时,使每个SBC客户机均显示从代理服务器发送的应用程序执行屏幕;以及
(c)当第二SBC客户机从第一SBC客户机获得了操作权时,使每个SBC客户机均显示操作权转移。
SBC合作辅助器7还可包括这种指令,即:可使每个SBC客户机均能根据需要生成操作权转移请求。
只需在现有SBC客户机终端内安装SBC合作辅助器,就可使用在远程SBC服务器上运行的应用程序来实现基于服务器的计算合作。
为了采用软件来实现代理服务器,在代理服务器中安装SBC合作程序。SBC合作程序包括以下指令:
(a)使代理服务器把操作权给予SBC客户机中的第一SBC客户机;
(b)当收到来自第一SBC客户机的第一输入操作信息时,使代理服务器把该第一输入操作信息转发给SBC服务器,以便执行应用程序;以及
(c)当收到来自SBC服务器的应用程序执行屏幕时,使代理服务器把该执行屏幕分配给每个SBC客户机。
通过在代理服务器中安装这些功能,可使用现有SBC系统来实现基于服务器的计算合作。
如上所述,根据本发明,多个SBC客户机可共享在SBC服务器上运行的应用程序,并可就该应用程序进行相互合作,同时可利用为SBC客户机和应用程序执行之间的一一对应而设计的现有SBC中间件。
在合作中,从应用程序执行所产生的更新屏幕信息被复制和分配给每个SBC客户机。这种安排可保证SBC合作系统的响应能力。
尽管以优选实施例为基础对本发明作了说明,然而本发明不限于这些实施例,而是包括由本领域技术人员可在不背离本发明的范围的情况下所作的各种修改和替代。
本专利申请是以早先于2002年4月10日提交的第2002-108396号日本专利申请为基础,并要求该申请中的利益,该日本专利申请的全文内容在此引用,以供参考。
Claims (18)
1.一种基于服务器的计算合作系统,该系统包括:
SBC服务器,其配备能够安装应用程序的SBC中间件;
多个SBC客户机,其通过网络与SBC服务器连接,以便远程使用该应用程序;以及
代理服务器,其插入在网络上的任意区域中的SBC服务器和SBC客户机之间;其中,代理服务器:
把执行应用程序的操作权给予第一SBC客户机;然后一旦收到来自第一SBC客户机的第一输入操作信息,就把该第一输入操作信息发送到SBC服务器,以便执行应用程序;以及当收到来自SBC服务器的应用程序执行屏幕时,把该执行屏幕分配给每个SBC客户机。
2.根据权利要求1所述的基于服务器的计算合作系统,其特征在于,代理服务器对SBC客户机之间的操作权转移进行管理和控制。
3.根据权利要求1所述的基于服务器的计算合作系统,其特征在于,代理服务器对执行屏幕进行复制,并把复制的执行屏幕分配给SBC客户机。
4.根据权利要求1所述的基于服务器的计算合作系统,其特征在于,当代理服务器从不具有操作权的第二SBC客户机收到第二输入操作信息时,代理服务器丢弃该第二输入操作信息。
5.根据权利要求1所述的基于服务器的计算合作系统,其特征在于,当代理服务器从不具有操作权的第二SBC客户机收到操作权转移请求时,代理服务器把该操作权转移请求发送到第一SBC客户机,以便询问操作权转移。
6.根据权利要求5所述的基于服务器的计算合作系统,其特征在于,当代理服务器收到来自第一SBC客户机的操作权转移接受时,代理服务器把操作权转移到第二SBC客户机。
7.一种代理服务器,该代理服务器插入在SBC服务器和多个SBC客户机之间,该SBC服务器配备能够安装应用程序的SBC中间件,该多个SBC客户机在基于服务器的计算系统中通过网络与SBC服务器连接;该代理服务器包括:
操作权控制器,其把执行应用程序的操作权给予第一SBC客户机;
操作信息转发单元,其接收来自第一SBC客户机的用于执行应用程序的第一输入操作信息,并把该第一输入操作信息发送到SBC服务器,以便执行应用程序;以及
执行屏幕分配器,其接收来自SBC服务器的应用程序执行屏幕,并把该执行屏幕分配给每个SBC客户机。
8.根据权利要求7所述的代理服务器,其特征在于,执行屏幕分配器包括复制单元,该复制单元对执行屏幕进行复制,以便把执行屏幕分配给每个SBC客户机。
9.根据权利要求7所述的代理服务器,其特征在于,操作信息转发单元包括:
判定单元,当收到来自任一SBC客户机的输入操作信息时,判定单元判定接收的输入操作信息是否是从第一SBC客户机发送的第一输入操作信息;以及
丢弃单元,如果判定单元的判定结果是否定的,则丢弃单元丢弃所接收的输入操作信息。
10.根据权利要求9所述的代理服务器,其特征在于,如果判定结果表示接收的输入操作信息是第一输入操作信息,则操作信息转发单元把接收的输入操作信息发送到SBC服务器。
11.根据权利要求7所述的代理服务器,其特征在于,当从不具有操作权的第二SBC客户机收到操作权转移请求时,操作权控制器把该操作权转移请求发送到第一SBC客户机,以便询问操作权转移。
12.根据权利要求11所述的代理服务器,其特征在于,当收到来自第一SBC客户机的操作权转移接受时,操作权控制器把操作权转移到第二SBC客户机。
13.一种基于服务器的计算合作方法,该方法包括以下步骤:
把代理服务器插入在SBC服务器和多个SBC客户机之间,该SBC服务器配备能够安装应用程序的SBC中间件,该多个SBC客户机通过网络与SBC服务器连接,以便远程使用应用程序;
从代理服务器把执行应用程序的操作权给予多个SBC客户机中的第一SBC客户机;
在代理服务器处接收由第一SBC客户机生成的第一输入操作信息,并把该第一输入操作信息从代理服务器发送到SBC服务器,以便执行应用程序;以及
在代理服务器处对应用程序执行屏幕进行复制,以便把执行屏幕分配给每个SBC客户机。
14.根据权利要求13所述的基于服务器的计算合作方法,该方法还包括以下步骤:
把浏览执行屏幕的浏览权给予所有SBC客户机;以及
当第二输入操作信息由不具有操作权的第二SBC客户机生成时,在代理服务器处丢弃该第二输入操作信息。
15.根据权利要求13所述的基于服务器的计算合作方法,该方法还包括以下步骤:
允许第二SBC客户机生成操作权转移请求;
在代理服务器处接收操作权转移请求,并把操作权转移请求从代理服务器发送到第一SBC客户机,以便询问操作权转移;以及
当接收来自第一SBC客户机的操作权转移接受时,在代理服务器处把操作权从第一SBC客户机转移到第二SBC客户机。
16.一种基于服务器的计算合作逻辑,该合作逻辑包含在代理服务器中并由该代理服务器执行,该代理服务器插入在SBC服务器和多个SBC客户机之间,该SBC服务器配备能够安装应用程序的SBC中间件,该多个SBC客户机在基于服务器的计算系统中通过网络与SBC服务器连接,以便远程使用该应用程序;该合作逻辑包括以下指令:
使代理服务器把操作权给予SBC客户机中的第一SBC客户机;
当收到来自第一SBC客户机的第一输入操作信息时,使代理服务器把该第一输入操作信息转发给SBC服务器,以便执行应用程序;以及
当收到来自SBC服务器的应用程序执行屏幕时,使代理服务器把该执行屏幕分配给每个SBC客户机。
17.一种基于服务器的计算合作辅助器,该合作辅助器包含在每个SBC客户机中并由每个SBC客户机执行,该每个SBC客户机均通过网络和代理服务器与SBC服务器连接,该SBC服务器配备能够安装应用程序的SBC中间件,该基于服务器的计算合作辅助器包括以下指令:
当代理服务器把操作权给予第一SBC客户机时,使每个SBC客户机均表示操作权的位置;
当第一SBC客户机执行了应用程序时,使每个SBC客户机均显示从代理服务器发送的应用程序执行屏幕;以及
当第二SBC客户机从第一SBC客户机获得了操作权时,使每个SBC客户机均显示操作权转移。
18.根据权利要求17所述的基于服务器的计算合作辅助器,该合作辅助器还包括以下指令:
允许每个SBC客户机均能根据需要生成操作权转移请求。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP108396/2002 | 2002-04-10 | ||
JP2002108396 | 2002-04-10 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1450462A true CN1450462A (zh) | 2003-10-22 |
CN1229730C CN1229730C (zh) | 2005-11-30 |
Family
ID=28786517
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN03100617.5A Expired - Fee Related CN1229730C (zh) | 2002-04-10 | 2003-01-17 | 基于服务器的计算合作系统和方法、代理服务器 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7191217B2 (zh) |
CN (1) | CN1229730C (zh) |
SG (1) | SG108895A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101098315B (zh) * | 2006-06-27 | 2011-03-23 | 国际商业机器公司 | 在高速低延迟数据通信环境中计算机数据通信方法和系统 |
CN101455060B (zh) * | 2006-06-27 | 2011-12-21 | 国际商业机器公司 | 在高速、低等待时间数据通信环境中同步主动馈送适配器和备用馈送适配器的方法 |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040215784A1 (en) * | 2003-04-28 | 2004-10-28 | Yan Qi | Distributed management of collaboration sessions including local and remote servers |
US7475125B2 (en) | 2003-11-24 | 2009-01-06 | Microsoft Corporation | Seamless discovery of workstation-installed remote applications from an extranet |
US7720906B2 (en) * | 2003-11-24 | 2010-05-18 | Microsoft Corporation | Web service for remote application discovery |
US7590713B2 (en) | 2003-11-24 | 2009-09-15 | Microsoft Corporation | Presenting a merged view of remote application shortcuts from multiple providers |
WO2005091719A2 (en) * | 2004-03-29 | 2005-10-06 | Cyber-Ark Software Ltd. | Improved server, computerized network including same, and method for increasing a level of efficiency of a network |
US7895020B2 (en) * | 2004-04-01 | 2011-02-22 | General Dynamics Advanced Information Systems, Inc. | System and method for multi-perspective collaborative modeling |
WO2005109284A2 (en) * | 2004-05-03 | 2005-11-17 | Trintuition Llc | Apparatus and method for creating and using documents in a distributed computing network |
US8244808B2 (en) * | 2006-06-26 | 2012-08-14 | Microsoft Corporation | Integrated network and application session establishment |
US8702505B2 (en) * | 2007-03-30 | 2014-04-22 | Uranus International Limited | Method, apparatus, system, medium, and signals for supporting game piece movement in a multiple-party communication |
US11991416B2 (en) | 2007-04-13 | 2024-05-21 | Tailstream Technologies, Llc | Authenticated stream manipulation |
US11153656B2 (en) | 2020-01-08 | 2021-10-19 | Tailstream Technologies, Llc | Authenticated stream manipulation |
US20080255878A1 (en) * | 2007-04-13 | 2008-10-16 | Kelley Wise | Authenticated Stream Manipulation |
US8068415B2 (en) * | 2007-04-18 | 2011-11-29 | Owl Computing Technologies, Inc. | Secure one-way data transfer using communication interface circuitry |
US8352450B1 (en) * | 2007-04-19 | 2013-01-08 | Owl Computing Technologies, Inc. | Database update through a one-way data link |
US8139581B1 (en) | 2007-04-19 | 2012-03-20 | Owl Computing Technologies, Inc. | Concurrent data transfer involving two or more transport layer protocols over a single one-way data link |
US7941526B1 (en) | 2007-04-19 | 2011-05-10 | Owl Computing Technologies, Inc. | Transmission of syslog messages over a one-way data link |
US8677270B2 (en) | 2007-05-04 | 2014-03-18 | Microsoft Corporation | Live companion user interface |
US8954507B2 (en) * | 2007-06-22 | 2015-02-10 | Microsoft Corporation | Gathering and using awareness information |
US7992209B1 (en) | 2007-07-19 | 2011-08-02 | Owl Computing Technologies, Inc. | Bilateral communication using multiple one-way data links |
US20090112870A1 (en) * | 2007-10-31 | 2009-04-30 | Microsoft Corporation | Management of distributed storage |
JP5507046B2 (ja) | 2007-12-27 | 2014-05-28 | 株式会社インテック | サービス提供システム |
US20140032483A1 (en) * | 2008-11-15 | 2014-01-30 | Adobe Systems Incorporated | Asset distribution architecture and timeline history |
US9305189B2 (en) | 2009-04-14 | 2016-04-05 | Owl Computing Technologies, Inc. | Ruggedized, compact and integrated one-way controlled interface to enforce confidentiality of a secure enclave |
US9323582B2 (en) * | 2009-08-12 | 2016-04-26 | Schlumberger Technology Corporation | Node to node collaboration |
US8588746B2 (en) * | 2009-10-31 | 2013-11-19 | SAIFE Technologies Incorporated | Technique for bypassing an IP PBX |
WO2012012266A2 (en) | 2010-07-19 | 2012-01-26 | Owl Computing Technologies. Inc. | Secure acknowledgment device for one-way data transfer system |
KR101585146B1 (ko) * | 2010-12-24 | 2016-01-14 | 주식회사 케이티 | 오브젝트를 복수 개의 데이터 노드들의 위치에 기반하여 분산 저장하는 분산 저장 시스템 및 그 위치 기반 분산 저장 방법 및 컴퓨터에 의하여 독출 가능한 저장 매체 |
US8930462B1 (en) * | 2011-07-05 | 2015-01-06 | Symantec Corporation | Techniques for enforcing data sharing policies on a collaboration platform |
US20130152194A1 (en) * | 2011-12-07 | 2013-06-13 | Computer Associates Think, Inc. | System, method and software for controlling access to virtual machine consoles |
US9953298B2 (en) * | 2012-10-30 | 2018-04-24 | International Business Machines Corporation | Cross-domain collaborative configuration management |
JP5606599B1 (ja) * | 2013-07-29 | 2014-10-15 | デジタルア−ツ株式会社 | 情報処理装置、プログラム及び情報処理方法 |
US9575987B2 (en) | 2014-06-23 | 2017-02-21 | Owl Computing Technologies, Inc. | System and method for providing assured database updates via a one-way data link |
US10032027B2 (en) * | 2014-07-29 | 2018-07-24 | Digital Arts Inc. | Information processing apparatus and program for executing an electronic data in an execution environment |
US20180232566A1 (en) * | 2017-02-15 | 2018-08-16 | Cisco Technology, Inc. | Enabling face recognition in a cognitive collaboration environment |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH03273443A (ja) | 1990-03-23 | 1991-12-04 | Fuji Xerox Co Ltd | 複数ワークステーションでの共同作業システム |
US5694546A (en) | 1994-05-31 | 1997-12-02 | Reisman; Richard R. | System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list |
JPH08241276A (ja) | 1995-03-01 | 1996-09-17 | Oki Electric Ind Co Ltd | アプリケーション共有化システム |
JPH08241280A (ja) | 1995-03-01 | 1996-09-17 | Oki Electric Ind Co Ltd | アプリケーション操作権の制御方法 |
US5724508A (en) * | 1995-03-09 | 1998-03-03 | Insoft, Inc. | Apparatus for collaborative computing |
US5838910A (en) * | 1996-03-14 | 1998-11-17 | Domenikos; Steven D. | Systems and methods for executing application programs from a memory device linked to a server at an internet site |
US5861883A (en) | 1997-05-13 | 1999-01-19 | International Business Machines Corp. | Method and system for portably enabling awareness, touring, and conferencing over the world-wide web using proxies and shared-state servers |
JPH10334051A (ja) | 1997-05-30 | 1998-12-18 | Hitachi Ltd | サービス情報の共有を制御する情報処理装置 |
US6175876B1 (en) | 1998-07-09 | 2001-01-16 | International Business Machines Corporation | Mechanism for routing asynchronous state changes in a 3-tier application |
JP2000112862A (ja) | 1998-09-30 | 2000-04-21 | Fujitsu Hokuriku Systems:Kk | 協調作業システムおよび記録媒体 |
US6356933B2 (en) | 1999-09-07 | 2002-03-12 | Citrix Systems, Inc. | Methods and apparatus for efficiently transmitting interactive application data between a client and a server using markup language |
US6397264B1 (en) * | 1999-11-01 | 2002-05-28 | Rstar Corporation | Multi-browser client architecture for managing multiple applications having a history list |
US6546554B1 (en) | 2000-01-21 | 2003-04-08 | Sun Microsystems, Inc. | Browser-independent and automatic apparatus and method for receiving, installing and launching applications from a browser on a client computer |
AU2001286912A1 (en) | 2000-09-05 | 2002-03-22 | Vocaltec Communications Ltd. | System and method for facilitating coordinated browsing of data objects |
US8831995B2 (en) * | 2000-11-06 | 2014-09-09 | Numecent Holdings, Inc. | Optimized server for streamed applications |
US7366756B2 (en) * | 2001-07-09 | 2008-04-29 | Telefonaktiebolaget Lm Ericsson (Publ) | System and method for securing privacy of chat participants |
-
2003
- 2003-01-15 US US10/342,389 patent/US7191217B2/en not_active Expired - Fee Related
- 2003-01-16 SG SG200300100A patent/SG108895A1/en unknown
- 2003-01-17 CN CN03100617.5A patent/CN1229730C/zh not_active Expired - Fee Related
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101098315B (zh) * | 2006-06-27 | 2011-03-23 | 国际商业机器公司 | 在高速低延迟数据通信环境中计算机数据通信方法和系统 |
CN101455060B (zh) * | 2006-06-27 | 2011-12-21 | 国际商业机器公司 | 在高速、低等待时间数据通信环境中同步主动馈送适配器和备用馈送适配器的方法 |
Also Published As
Publication number | Publication date |
---|---|
SG108895A1 (en) | 2005-02-28 |
US20030195932A1 (en) | 2003-10-16 |
US7191217B2 (en) | 2007-03-13 |
CN1229730C (zh) | 2005-11-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1229730C (zh) | 基于服务器的计算合作系统和方法、代理服务器 | |
CN102362269B (zh) | 实时内核 | |
US5960404A (en) | Mechanism for heterogeneous, peer-to-peer, and disconnected workflow operation | |
JP4560513B2 (ja) | ハンドセット端末を介してリソースを共有する方法、及び装置 | |
CN102362477B (zh) | 用于计算机桌面远程共享的方法 | |
CN104488254B (zh) | 复合机、复合机控制系统以及复合机的管理方法 | |
US20090216889A1 (en) | System and method for delivering last mile computing over light from a plurality of network edge locations | |
CN1609857A (zh) | 组共享空间 | |
CN1609858A (zh) | 对等组共享空间中进行文件共享的系统和方法 | |
JP2009522641A (ja) | ターゲットデバイスにコンテンツを送信するための方策 | |
NZ530190A (en) | Dynamically controlling a multifunctional peripheral deviceÆs touch panel interface from an external networked computer | |
CN1330834A (zh) | 分布式处理系统中的智能存根或企业javatm豆模块 | |
Gall et al. | Promondia: A Java-based framework for real-time group communication in the Web | |
JP2010109885A (ja) | 画像処理装置、画像処理システム、それらの制御方法、プログラム、及び記憶媒体 | |
CN1976322A (zh) | 一种实现多媒体即时通讯的方法、系统和控制流程 | |
Bergenti et al. | A collaborative platform for fixed and mobile networks | |
CN1606312B (zh) | 与sip和web系统协同工作的服务提供系统及其方法 | |
EP2403205B1 (en) | Streaming data delivery system and method thereof | |
KR100341395B1 (ko) | 인터넷 공동 작업 그룹 편집기 및 그 운용 방법 | |
JP3943504B2 (ja) | Sbcコラボレーションシステムおよびsbcコラボレーションを実現するプロキシサーバ | |
CN1656479A (zh) | 分配数据的方法和系统 | |
CN101169740A (zh) | 一种ejb构件的动态迁移方法 | |
Cabri et al. | A proxy‐based framework to support synchronous cooperation on the Web | |
JP5804686B2 (ja) | 文書管理システム及び管理方法 | |
CN109308222B (zh) | 基于统一建模环境的去中心化软硬件资源云平台搭建方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20051130 Termination date: 20140117 |