CN105100089A - 基于网络的协作的方法和系统 - Google Patents

基于网络的协作的方法和系统 Download PDF

Info

Publication number
CN105100089A
CN105100089A CN201510408726.3A CN201510408726A CN105100089A CN 105100089 A CN105100089 A CN 105100089A CN 201510408726 A CN201510408726 A CN 201510408726A CN 105100089 A CN105100089 A CN 105100089A
Authority
CN
China
Prior art keywords
application gateway
network
collaboration session
client
data
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.)
Pending
Application number
CN201510408726.3A
Other languages
English (en)
Inventor
克里斯·里德
王晓峰
莱喀格斯·佩特罗普拉基斯
斯蒂芬·贝汉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Appshare Ltd
Original Assignee
Appshare Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Appshare Ltd filed Critical Appshare Ltd
Publication of CN105100089A publication Critical patent/CN105100089A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/02Details
    • H04L12/16Arrangements for providing special services to substations
    • H04L12/18Arrangements for providing special services to substations for broadcast or conference, e.g. multicast
    • H04L12/1863Arrangements for providing special services to substations for broadcast or conference, e.g. multicast comprising mechanisms for improved reliability, e.g. status reports
    • H04L12/1877Measures taken prior to transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1083In-session procedures
    • H04L65/1094Inter-user-equipment sessions transfer or sharing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

本发明涉及基于网络的协作的方法和系统。描述了建立基于网络的协作的方法和系统。所述方法包括提供作为协作会话的数据源的服务器终端、允许用户接入以参与协作会话的多个客户端终端以及一个或多个应用网关,所述应用网关被配置成在协作会话期间在网络组件之间中继数据。所述服务器终端和客户端终端都被分配有在协作会话期间向其传送/和接收数据的应用网关,应用网关的分配由网络内的服务器终端和客户端终端的位置确定。还描述了在基于网络的协作内使用的应用网关的数据路径优化的方法。在基于广域网(WAN)的协作领域内发现了本发明的具体应用。

Description

基于网络的协作的方法和系统
本申请是申请日为2010年04月15日,申请号为201080025666.2,发明名称为“基于网络的协作的方法和系统”的申请的分案申请。
技术领域
本发明涉及数据通信,具体涉及建立基于网络的协作的方法和系统。还描述了在已建立的基于网络的协作内使用的数据路径优化的方法。在基于广域网(WAN)的协作领域内发现了本发明的具体应用。
术语协作涉及计算机资源的共享,具体涉及通过网络共享桌面计算机资源。
背景技术
近来,由于通过避免参与者往来于地点之间亲自参加会议的必要而获得的成本和时间的节约,通过网络的协作被更广泛地使用。许多协作系统市场上有售,例如由下列公司出售并许可的系统:
WebEx通信公司,商标为WebEx;
Citrix系统公司,商标为GoToMeeting;
微软公司,商标为SharedView;
IBM公司,商标为Sametime;以及
Adobe系统公司,商标为AdobeAcrobatConnectProfessional。
图1中提供了这些系统的示意图表示,并且这些系统一般通过参考数字1来描述。这些系统通常基于中央服务器2的使用,希望参与协作会话的任何个人必须经由计算机终端建立到中央服务器2的连接3。到中央服务器2的连接3通常经由因特网4实现。即使许多参与者可能位于同一地点或建筑物5内,但如果不在同一房间,每一计算机终端需要一个连接3。换句话说,对n个计算机终端来说,中央服务器2必须保持n个连接3。
已知该方法对于较小数目的参与者来说很有效,但受限于它的可扩容性,在许多情况下,它不允许由数以百计(或更多数目)的参与者使用。实际上,所述协作系统1的瓶颈在于:任何地点或建筑物5对它到外部世界的可用带宽都具有上限值。因此,如果在给定地点5的参与者数目较大,那么到外部世界的连接变得堵塞,且对于所有的意图和目的来说,协作系统1变得不可行。
因特网协议(IP)多播是基于网络的通信技术,其允许服务器通过IP基础设施(例如流媒体和网络电视应用)将信息传送到多个计算机终端。它容易扩容到更大的接收群体,因为它不需要谁或多少计算机终端正在接收已传送的信息的任何已知知识。通常,IP多播系统要求服务器将数据报只发送一次到网络基础设施,即使数据报需要被传递到较大数目的计算机终端。网络中的节点负责复制数据报使得它们到达多个计算机终端。使用多播寻址的最常见的底层协议是用户数据报协议(UDP)。由于其本身的性质,UDP有高效的带宽,然而它是不可靠的,因为信息经常丢失或传递中出现错误。
网络堵塞的问题之前在因特网协议(IP)多播领域中已经被认识到了。例如,微软公司名下的美国专利公布US2006/0029092A1描述了用于应用层多播的传送优化的方法。在所描述的方法中,对于视频会议的每一成员来说,表示数据源和视频会议的其他成员(即从数据源接收视频和音频数据的数据接收者)的数据通信配置的多播树生成了。从每一数据源到各个数据接收者的端到端的传送延迟于是被确定了,每一数据源和各个数据接收者之间的可用带宽也被确定了。多播树中的一个或多个(每一个对应一个数据源)于是根据端到端的传送延迟和针对特定数据源的可用带宽被完善,以优化在视频会议中的数据源的数据通信配置。
US2006/0029092A1的美国专利公布所描述的方法使用了许多特征,所述特征如果在协作系统内使用将会限制它的能力。在第一个实例中,所描述的方法受限于它的可扩容性。它要求应用层多播的每一成员确定与所有其他成员的带宽和延迟。因为这是全网络配置过程,所以复杂度(因此努力)是1/2n(n+1),其中n是成员的数目。对于每一其他成员重复该过程,因此当n较大时,该方法很快变得难以处理。基于所描述的方法的任何协作系统将比实际执行有用的数据通信在测试连接上花费更多的时间和带宽。
将US2006/0029092A1所描述的方法引入协作系统的第二个基本问题涉及该事实:所描述的方法没有选定的数据可以通过其直接在应用层多播的单个成员之间发送的机制。由任何特定的成员传输的信息被发送到应用层多播的所有其他成员。
同样在微软公司的名下的编号为US2006/0029092A1的美国专利公布还描述了实现用于多方音-视频会议的应用层路由协议的可选的系统和方法。在此,应用层、每流(per-stream)路由技术分别控制托管在网络上的会议成员之间的音频数据和视频数据。不同的音频应用层多播(ALM)树由每一成员生成,其根据数据传递路径的最短路径优先选择被动态更新,并且这些路径被用来将音频数据发送到视频会议的其他成员。同样地,不同的视频ALM树每一成员生成,其根据数据传递路径的最宽路径优先选择被动态更新,并且这些路径被用来将视频数据发送到视频会议的其他成员。为每一成员生成的不同的音频和视频ALM树在允许IP多播的网络段中使用IP多播。
和US2006/0029092A1一样,US2007/0086366A1所描述的协议包括许多将限制它在协作系统内的使用的固有特征。在第一个实例中,所描述的协议使用IP多播,这是可用的,在该实现中不能够传递可靠的数据。数据可靠性的问题还受到协议的动态性质的损害;实际上,网络不断地重组,这导致不稳定的系统。系统的不稳定性由于希望参与多方音-视频会议的成员的数目的增加而被恶化了。最后,所描述的协议没有选定的数据可以通过其直接在选定的各个成员之间发送的机制。由特定成员发送的任何音频或可视化数据被传送到包括在相关的音频和视频ALM树内的每一个其他成员。
在Ghizi软件有限公司的名下的编号7,315,516的美国专利教导了在应用层多播中的多个参与者之间生成中继路径的方法,以允许将预定的数据传送到参与者。所述方法包含生成中继路径的二叉树结构,该中继路径的二叉树结构从具有相对较少跳数的网关开始朝向具有相对较多跳数的网关。
所描述的方法有几个缺点,这将再次限制它适用于协作系统。在第一个实例中,所述方法没有考虑实际的链接速度。因此,具有有限能力的网关绝不会变成二叉树结构中的成员,这对网络的效率具有明显的不利影响。该缺点被网关按照它们连接的顺序进行布置的事实恶化了。这意味着所连接的第一网关将位于分布树的顶部。如果这恰巧是具有非常有限的资源的网关,则遍布树的整个分布将被严重影响。在大量资源可利用和因此可使用高得多的‘扇出’的情况下,次理想的二叉树配置的使用是尤其浪费的。
与之前所讨论的多播系统一样,由编号7,315,516的美国专利所教导的方法没有便利选定的数据在选定的各个参与者之间发送的机制。
发明内容
因此,本发明的一方面的目的是提供建立基于网络的协作会话的方法,所述方法消除或至少减轻在现有技术中所描述的协作会话的缺点。
本发明的一方面的第二个目的是提供实现基于网络的协作会话的方法,所述方法消除或至少减轻在现有技术中所描述的协作会话的缺点。
本发明的一方面的另一目的是提供基于网络的协作的数据路径优化的方法,所述方法消除或至少减轻在现有技术中所描述的网络优化方法的缺点。
本发明的一方面的又一目的是提供建立基于网络的协作会话的系统,所述系统消除或至少减轻在现有技术中所描述的协作系统的缺点。
术语的定义
在下面的描述中,终端指连接到网络的计算机硬件。终端具有托管数据和执行网络的客户端和/或服务器的功能的功能。
客户端指在终端上运行以允许用户接收数据并因此参与协作的模块。客户端还可能够为终端提供设备以将数据传送到例如服务器和/或一个或多个其他客户端。客户端可以用软件或固件或软件和固件的组合来实现。
服务器指在终端上运行的为协作会话提供数据的模块。服务器还能够为终端提供设备以接收例如来自一个或多个客户端的数据。服务器可以用软件或固件或软件和固件的组合来实现。
客户端终端指客户端在其上运行的计算机硬件。
服务器终端指服务器在其上运行的计算机硬件。
应用网关是可能用硬件、软件或固件或其组合物实现的终端的功能模块。应用网关的主要功能是在位于网络内的服务器和一个或多个客户端之间中继协作会话数据。
根据本发明的第一方面,提供了执行网络中的协作会话的方法,所述方法包括以下步骤:
提供作为所述协作会话的数据源的服务器终端;
提供多个客户端终端,每一客户端终端提供给用户参与协作会话的接入点;以及
提供一个或多个应用网关,每一应用网关被配置成在协作会话期间在网络组件之间中继数据;
其中所述服务器终端设置有服务器应用网关,在协作会话期间,所述服务器终端向所述服务器应用网关传送数据,服务器应用网关根据所述服务器终端的位置确定;以及
每一客户端终端设置有客户端应用网关,在协作会话期间,客户端终端从客户端应用网关接收数据,每一客户端应用网关根据所述客户端终端的位置确定。
提供一个或多个应用网关可包含提供一个或多个预定的终端以充当应用网关,该应用网关在下文中被称作静态应用网关。可选地,一个或多个客户端终端或服务器终端可被指示来执行应用网关的功能。该指示可在协作会话之前或期间发生。该应用网关在下文中被称作动态应用网关。协作会话也可使用静态应用网关和动态应用网关的组合。提供静态的或动态的应用网关(如在下面更详细地描述的)避免了到服务器的多个数据连接(即一个客户端一个连接)都传送相同的数据的要求。通过分别基于服务器终端的位置和客户端终端的位置确定服务器应用网关和客户端应用网关(即通过确定哪个应用网关能够将最高的数据吞吐率提供给服务器终端和客户端终端),所述方法向协作会话提供具有较大效率的数据通信的架构。这在具有(例如,通常发现于网络系统的子网络之间的)有限的带宽数据连接的网络内尤其有利。
在一些实施方式中,所述方法使用一个应用网关作为服务器应用网关和客户端应用网关。换句话说,数据可直接从服务器终端传送到应用网关,并继续传送到客户端终端。
在其他实施方式中,所述方法使用不同的应用网关作为服务器应用网关和客户端应用网关。换句话说,数据可直接从服务器终端传送到服务器应用网关,再中继到客户端应用网关,并继续传送到客户端终端。
所述方法可在网络内使用多个客户端应用网关,给所述多个客户端应用网关分配相应的客户端终端。在该实施方式中,服务器应用网关可将数据中继到多个客户端应用网关。可选地,或此外,第一客户端应用网关可将数据中继到第二应用网关,第二应用网关然后可将数据中继到它的各个客户端终端。
所述方法可包括将应用网关分配给服务器终端用于协作会话的持续的附加步骤,以及/或者可包括将应用网关分配给多个客户端终端中的每一个用于协作会话的持续的附加步骤。
优选地,提供一个或多个应用网关的步骤包括部署一个或多个静态应用网关。最优选地,部署应用网关来向已确认的客户端终端的相关的子网络提供最优的数据传输速度。
可选地,提供一个或多个应用网关的步骤包括将已确认的客户端终端中的一个或多个部署为一个或多个动态应用网关。最优选地,选定被部署为一个或多个动态应用网关的一个或多个已确认的客户端终端被选择来向已确认的客户端终端的相关的子网络提供最优的数据传输速度。使用确定所述一个或多个应用网关的方法提供了动态地建立协作会话的方式。
最优选地,向服务器终端提供服务器应用网关的步骤由协作建立控制模块执行。优选地,协作建立控制模块还执行向客户端终端提供服务器应用网关的步骤。
优选地,协作建立控制模块包括web服务器。web服务器可允许协作建立控制模块和多个客户端终端和/或服务器终端之间的通信。
优选地,协作建立控制模块还包括用来保留关于所述协作会话的信息的协作数据库。
优选地,协作建立控制模块还包括允许协作会话的后台运行功能的实现的守护进程。
要注意的重要一点是,协作建立控制模块提供了建立、发起和保持协作会话而无需积极地参与协作会话的方式。因此,协作建立的控制模块不构成系统内的数据流瓶颈。
优选地,协作会话由用户向协作建立控制模块提交协作会话请求发起。会话请求优选地包括协作会话的参与用户的身份的详细资料。提供参与用户的详细资料有助于保持协作会话的安全性。
可选地,所述会话请求还包括协作会话的预先安排的时间Tc
优选地,在提交协作会话请求之后,将会话标识符分配到协作会话。
可选地,所述服务器终端位于已确认的客户端终端的相关的子网络的外部。
最优选地,在网络中执行协作会话的方法还包括在两个或多个应用网关上执行负载测试的步骤。所述负载测试可允许建立优化的数据通信路径,其能进一步提高协作会话的运行效率。所述负载测试可由协作建立控制模块执行。最优选地,优化的数据通信路径保持建立以用于协作会话的持续。
可选地,所述负载测试在协作会话的预先安排的时间Tc之前的预定时间Tp执行。
可选地,预定时间Tp由下面的表达式Tp=Tc–(TtestxC)确定,其中Ttest是在协作网络上执行之前的负载测试所用的时间,C是误差因数。误差因数C具有大于1的值,例如C=1.5。
优选地,执行网络中的协作会话的方法还包括每一参与客户端向协作建立控制模块提交用户注册请求的步骤。所述方法还可包括服务器向协作建立控制模块提交用户注册请求。为了注册协作会话,用户注册请求可包括有效的会话标识符、有效的用户名和密码。
优选地,在服务器向协作建立控制模块提交用户注册请求之后执行负载测试。
负载测试可依照本发明的第五方面和它的优选实施方式。
优选地,检查用户注册请求以确立用户是否具有加入所述协作会话的所要求的许可。每一用户的验证还有助于保持协作会话的安全性。
最优选地,如果确立了用户具有所要求的许可,则给客户端分配客户端标识符。客户端标识符的分配是有利的,因为它允许参与客户端中的每一个将数据直接发送给彼此,即该数据不需要发送给在协作会话内使用的所有客户端。
优选地,建立基于网络的协作会话的方法还包括应用网关向协作建立控制模块提供应用网关的客户端处理能力被耗尽或即将被耗尽的指示的步骤。
优选地,当从相关的子网络内的客户端接收到又一有效的用户注册请求时,提交请求的客户端终端被指示来作为第一子网络动态应用网关。用这种方法,子网络内的提交有效的用户注册请求的任何其他客户端经由第一子网络动态应用网关被直接连接到协作会话。
可选地,第一子网络动态应用网关向协作建立控制模块提供第一子网络动态应用网关的客户端处理能力被耗尽或即将被耗尽的指示。
优选地,当从相关的子网络内的客户端接收到又一有效的用户注册请求时,提交请求的客户端终端被指示作为第二子网络动态应用网关起作用。用这种方法,子网络内的提交有效的用户注册请求的任何其他客户端经由第二子网络动态应用网关被直接连接到协作会话。
优选地,执行协作会话的方法还包括多个客户端中的一个选择性地将数据传送到服务器和/或其他多个客户端中的一个或多个的步骤。因此,所描述的协作会话允许服务器和参与客户端中的每一个将数据直接发送给彼此,即该数据不需要发送给协作会话的所有客户端。用这种方法,每一客户端可提交会话控制请求和文件上传请求。
优选地,选择性地传送数据的步骤包括将数据传送到客户端应用网关以及随后通过客户端应用网关将数据中继到服务器终端和/或到多个客户端终端中的一个或多个。
最优选地,服务器终端和服务器应用网关位于第一子网络内。
可选地,客户端应用网关和多个客户端终端中的至少一个位于第二子网络内。
优选地,所述网络包括广域网,所述第一子网络和第二子网络包括局域网。
最优选地,传送和中继数据的步骤包括使用传输控制协议/因特网协议(TCP/IP)。
根据本发明的第二方面,提供了一种网络系统,所述系统包括:
服务器终端,其提供协作会话中的数据源;
多个客户端终端,每一个提供给用户参与协作会话的接入点;以及
一个或多个应用网关,每一应用网关被配置成在协作会话期间在网络组件之间中继数据;
其中所述服务器终端设置有服务器应用网关,在所述协作会话期间,所述服务器终端向所述服务器应用网关传送数据,所述服务器应用网关根据所述服务器终端的位置确定;以及
每一客户端终端设置有客户端应用网关,在所述协作会话期间,客户端终端从所述客户端应用网关接收数据,每一客户端应用网关根据所述客户端终端的位置确定。
在一些实施方式中,一个应用网关可作为服务器应用网关和客户端应用网关起作用。换句话说,数据可直接从服务器终端传送到应用网关,并且继续传送到客户端终端。
在其他实施方式中,服务器应用网关和客户端应用网关可以是不同的应用网关。换句话说,数据可直接从服务器终端传送到服务器应用网关,再被中继到客户端应用网关,并继续传送到客户端终端。
在网络中可以有多个客户端应用网关,给它们分配相应的客户端终端。因此,服务器应用网关可将数据中继到多个客户端应用网关。可选地,或此外,第一客户端应用网关可将数据中继到第二应用网关,第二应用网关接着可将数据中继到它的各个客户端终端。
最优选地,所述网络系统还包括协作建立控制模块。
优选地,协作建立控制模块包括web服务器。web服务器可允许协作建立控制模块和多个客户端终端和/或服务器终端之间的通信。
优选地,协作建立控制模块还包括用来保留关于协作会话的信息的协作数据库。
优选地,协作建立控制模块还包括允许协作会话的后台运行功能的实现的守护进程。
本发明的第二方面的实施方式可包括实现本发明的第一方面的优选或可选特征的特征,或者反过来也一样。
根据本发明的第三方面,提供了配置用于基于网络的协作会话的网络的方法,所述网络包括服务器和多个客户端,所述方法包括步骤:
确认所述网络内的终端的一个或多个子网络;以及向所述一个或多个已确认的子网络提供一个或多个应用网关,所述一个或多个应用网关被配置成在协作期间在网络组件之间中继数据。
优选地,提供一个或多个应用网关的步骤包括部署一个或多个静态应用网关。最优选地,部署应用网关来提供到已确认的终端的子网络的最优的数据传输速度。
可选地,提供一个或多个应用网关的步骤包括将已确认的终端中的一个或多个部署为一个或多个动态应用网关。最优选地,选定被部署为一个或多个动态应用网关的一个或多个已确认的终端被选择来向已确认的终端的子网络提供最优的数据传输速度。使用确定一个或多个应用网关的方法提供了动态地建立协作会话的方式。
最优选地,所述终端中的至少一个被配置为提供协作会话的数据源的服务器终端。优选地,所述终端中的两个或多个被配置为客户端终端以提供给用户参与协作会话的接入点。
所述方法可包括将应用网关分配给服务器和/或将应用网关分配给多个客户端的附加步骤。
所述方法可包括将应用网关分配给服务器用于协作会话的持续的附加步骤,以及/或者可包括将应用网关分配给多个客户端中的每一个以用于协作会话的持续的附加步骤。
最优选地,将所述一个或多个应用网关分配给服务器和/或多个客户端的步骤由协作建立控制模块执行。
优选地,协作会话由用户向协作建立控制模块提交协作会话请求发起。所述会话请求优选地包括协作会话的参与用户的身份的详细资料。
可选地,所述会话请求还包括协作会话的预先安排的时间Tc
优选地,在提交所述协作请求之后,将会话标识符分配到协作会话。
最优选地,建立基于网络的协作会话的方法还包括在两个或多个应用网关上执行负载测试或吞吐量测试的步骤。负载测试或吞吐量测试采取分析连接应用网关的路径的吞吐量的形式。具体地,测量在每一地点之间的两个方向上的预定数据量的吞吐量。预定数据量在大小上优选为至少32kb。负载测试可允许建立优化的数据通信路径,所述优化的数据通信路径进一步提高协作会话的操作效率。负载测试可由协作建立控制模块执行。最优选地,优化的数据通信路径保持建立状态以用于协作会话的持续。
可选地,所述负载测试在协作会话的预先安排的时间Tc之前的预定时间Tp执行。
可选地,预定时间Tp由下面的表达式Tp=Tc–(TtestxC)确定,其中Ttest是在协作网络上执行之前的负载测试所用的时间,C是误差因数。误差因数C具有大于1的值,例如C=1.5。
优选地,在服务器向协作建立控制模块提交用户注册请求之后执行所述负载测试。
负载测试可依照本发明的第五方面和它的优选实施方式执行。
优选地,建立基于网络的协作会话的方法还包括连接两个或多个应用网关以在两个或多个已确认的终端的子网络之间建立数据通信路径。最优选地,数据通信路径保持建立状态以用于协作会话的持续。
优选地,所述子网络包括位于广域网内的局域网。
本发明的第三方面的实施方式可包括本发明的第一方面的优选或可选的特征,或者反过来也一样。
根据本发明的第四方面,提供了一种执行协作会话的方法,所述方法包括以下步骤:
-根据本发明的第三方面配置基于网络的协作会话;以及
-经由一个或多个应用网关在服务器和多个客户端之间通信数据。
最优选地,通信数据的步骤包括使用传输控制协议/因特网协议(TCP/IP)的步骤。
根据本发明的第五方面,提供了在基于网络的协作会话内使用的两个或多个应用网关之间确定优化的数据通信路径的方法,以在网络组件之间中继数据,所述方法包括在两个或多个应用网关上执行负载测试或吞吐量测试的步骤。
上述方法提供了优化的通信数据路径,以提供连接网络内的两个或多个应用网关的最有效的布置。最优选地,两个或多个应用网关保持连接状态以用于协作会话的持续。
最优选地,负载测试或吞吐量测试包括测量数据路径(优选应用网关之间的所有数据路径)的吞吐量或网络速度的步骤。负载测试可包括测量双向的吞吐量或网络速度。
优选地,负载测试还包括从所测量的网络吞吐量或速度生成连接矩阵。
负载测试还优选地进一步包括归一化连接矩阵。归一化确保只是在它们所测量的吞吐量或速度中具有轻微不同的连接被有效地认为具有相同的吞吐量或速度。没有归一化,“连锁效应”可能发生,由此数据通信路径趋于在深度上而非宽度上生长,这导致更多的端到端延迟和次理想的数据传输。
可选地,负载测试还包括确认两个或多个应用网关的可利用的能力。确认两个或多个应用网关的可利用的能力为负载测试提供建立耗尽容量的应用网关集合的选项。
优选地,负载测试还包括定义应用网关的源集合的步骤。最优选地,应用网关的源集合最初被设置为包括服务器终端要连接到其上的应用网关。
优选地,所述负载测试还包括清空对应所述源集合的归一化连接矩阵的列的步骤。
优选地,所述负载测试还包括确认不包括在所述源集合内、与所述源集合具有最高的吞吐量或速度的数据路径连接的应用网关的步骤。
可选地,确认应用网关的步骤还包括检查具有最高吞吐量或速度的数据路径连接的应用网关不包括在耗尽容量的应用网关集合内。
可选地,确认应用网关的步骤还包括从服务器终端连接到其上的应用网关中选择具有较小跳数的应用网关。当两个或多个应用网关被确认为与所述源集合具有相同的吞吐量或速度的数据连接时,需要该步骤。
优选地,确认应用网关的步骤还包括选择具有最大的可用的连接处理能力的应用网关。当两个或多个应用网关被确认为与所述源集合具有相同的吞吐量或速度的数据连接,且和离服务器终端被连接到的应用网关具有相等的跳数时,需要该步骤。
优选地,所述负载测试还包括将确认的应用网关添加到所述源集合的的步骤。
可选地,升级已确认的应用网关的可用的连接处理能力。
根据本发明的第六方面,提供了在网络中的服务器和多个客户端之间建立基于网络的协作会话的系统,所述系统包括协作建立控制模块,其中协作建立控制模块基于选自服务器终端的位置和多个客户端终端的位置中的至少一个位置,提供了用于确定要在协作会话中使用的一个或多个应用网关的方式。
优选地,协作建立控制模块包括web服务器,其允许客户端终端与协作建立控制模块通信。网络服务器优选地包括图形用户界面(WebGUI)、会话调度器和用户认证模块。
优选地,协作建立控制模块还包括用来保留关于协作会话的信息的协作数据库。
协作建立控制模块优选地还包括允许协作会话的后台运行功能的实现的守护进程。守护进程优选地包括应用网关接口、负载测试器、路径分析器和路由表模块。该结构允许协作会话的建立在OSI参考模型的会话层(层五)内实现。
最优选地,用户认证模块允许来自至少一个用户的加入协作会话的请求的详细资料的认证。
优选地,会话调度器被用来接收来自用户的希望发起协作会话的协作会话请求。优选地,会话请求包括被邀请到协作会话的用户的详细资料。将受邀请的用户的详细资料提供给会话调度器有助于保持协作会话的安全性。
可选地,会话请求还可包括协作会话的预先安排的时间。
优选地,在提交协作请求之后,会话调度器将会话标识符分配到协作会话。
优选地,协作数据库存储静态应用网关的预分配组以允许协作建立控制模块确定一个或多个应用网关。最优选地,选定的应用网关被选择来向客户端终端的相关的子网络提供最优的数据传输吞吐量或速度。
可选地,会话调度器被用来将客户端终端中的一个或多个部署为一个或多个动态应用网关。最优选地,被选定部署为一个或多个动态应用网关的一个或多个已确认的客户端终端被选择来向客户端终端的相关的子网络提供最优的数据传输吞吐量或速度。
可选地,服务器终端位于客户端终端的相关的子网络的外部。
最优选地,负载测试器被用来在两个或多个应用网关上执行负载测试或吞吐量测试。负载测试可允许确定优化的数据通信路径,所述优化的数据通信路径进一步提高协作会话的操作效率。
可选地,所述负载测试在协作会话的预先安排的时间Tc之前的预定时间Tp执行。
可选地,预定时间Tp由下面的表达式Tp=Tc–(TtestxC)确定,其中Ttest是在协作网络上执行之前的负载测试所用的时间,C是误差因数。误差因数C具有大于1的值,例如C=1.5。
优选地,在服务器向协作建立控制模块提交用户注册请求之后执行所述负载测试。
负载测试或吞吐量测试可依照本发明的第五方面和它的优选实施方式执行。
最优选地,负载测试器指示路径分析器来测量应用网关之间的数据路径中的至少一些的网络速度。路径分析器可测量双向的网络速度,以及/或者可以测量所有的数据路径。数据通信路径的优化考虑双向的网络速度是有利的,因为数据路径的带宽和延迟取决于测量的方向。
优选地,负载测试器存储生成自路由表内的所测量的网络吞吐量或速度的连接矩阵。
优选地,负载测试器提供处理存储在路由表内的连接矩阵的方式,以为两个或多个应用网关提供优化的数据通信路径。
最优选地,会话调度器提供连接两个或多个应用网关的方式,以在客户端终端的相关的子网络之间建立数据通信路径。
优选地,所述相关的子网络包括位于广域网内的局域网。
优选地,用户认证模块通过检查它包括有效的会话标识符、有效的用户名和密码来认证用户注册请求的详细资料。每一用户的验证还有助于保持协作会话的安全性。
最优选地,如果确立用户具有所要求的许可,那么会话调度器为客户端分配客户端标识符和适当的应用网关的详细资料以将客户端连接到协作会话。客户端标识符的分配是有利的,因为它允许服务器终端和参与的客户端终端中的每一个直接向彼此发送数据,即该数据不需要发送到协作会话的所有终端。
优选地,应用网关接口为应用网关提供了通知会话调度器应用网关的客户端处理能力被耗尽或将被耗尽的方式。
优选地,当用户认证模块从相关的子网络内的客户端接收又一有效的用户注册请求时,会话调度器指示提交请求的客户端终端作为第一子网络动态应用网关起作用。用这种方式,提交有效的用户注册请求的子网络内的任何其他客户端经由第一子网络动态应用网关被直接连接到协作会话。
可选地,应用网关接口为第一子网络动态应用网关提供了通知会话调度器第一子网络动态应用网关的客户端处理能力被耗尽或将被耗尽的方式。
优选地,当用户认证模块从相关的子网络内的客户端接收又一有效的用户注册请求时,会话调度器指示提交请求的客户端终端作为第二子网络动态应用网关起作用。用这种方式,子网络内的提交有效的用户注册请求的任何其他客户端经由第二子网络动态应用网关被直接连接到协作会话。
本发明的第六方面的实施方式可包括本发明的第一、第三和第五方面的优选或可选的特征,或者反过来也一样。
根据本发明的第七方面,提供了在网络中的服务器和多个客户端之间建立基于网络的协作会话的方法,所述方法包括以下步骤:
确认在网络内的终端的一个或多个子网络;以及
将一个或多个已确认的子网络内的一个或多个终端部署为被配置成在协作期间在网络组件之间中继数据的应用网关。
一个或多个应用网关的使用避免了多个数据连接都传送相同的数据的要求。作为应用网关起作用的一个或多个终端的部署提供了具有更高效率的数据通信的动态架构。这在具有有限的带宽数据连接(例如,如通常发现于网络系统的子网络之间)的网络内是特别有利的。
最优选地,选定被部署为一个或多个应用网关的一个或多个终端被选择来向已确认的终端的子网络提供最优的数据传输速度。
最优选地,终端中的至少一个被配置为提供协作会话的数据源的服务器终端。优选地,终端中的两个或多个被配置为客户端终端以提供给用户参与协作会话的接入点。
所述方法可包括将应用网关分配给服务器,以及/或者将应用网关分配给多个客户端的附加步骤。
所述方法可包括将应用网关分配给服务器用于协作会话的持续,以及/或者可包括将应用网关分配给多个客户端中的每一个用于协作会话的持续的附加步骤。
最优选地,将一个或多个应用网关分配给服务器和/或多个客户端的步骤由协作建立控制模块执行。
优选地,协作会话由用户向协作建立控制模块提交协作会话请求发起。
可选地,服务器终端位于已确认的客户端终端的一个或多个子网络的外部。
最优选地,建立基于网络的协作会话的方法还包括在两个或多个应用网关上执行负载测试或吞吐量测试的步骤。负载测试可允许建立优化的数据通信路径,所述优化的数据通信路径进一步提高协作会话的操作效率。负载测试可由协作建立控制模块执行。最优选地,优化的数据通信路径保持建立状态以用于协作会话的持续。
可选地,所述负载测试在协作会话的预先安排的时间Tc之前的预定时间Tp执行。
可选地,预定时间Tp由下面的表达式Tp=Tc–(TtestxC)确定,其中Ttest是在所述协作网络上执行之前的负载测试所用的时间,C是误差因数。误差因数C具有大于1的值,例如C=1.5。
优选地,在服务器向协作建立控制模块提交用户注册请求之后执行负载测试或吞吐量测试。
负载测试或吞吐量测试可依照本发明的第五方面和它的优选实施方式执行。
优选地,建立基于网络的协作会话的方法还包括连接两个或多个应用网关以在已确认的终端的相关的子网络之间建立数据通信路径。最优选地,所述两个或多个应用网关保持连接状态以用于协作会话的持续。
优选地,所述相关的子网络包括位于广域网内的局域网。
本发明的第七方面的实施方式可包括本发明的第一、第三、第五和第六方面的优选或可选的特征,或者反过来也一样。
根据本发明的第八方面,提供了一种执行协作会话的方法,所述方法包括以下步骤:
-根据本发明的第七方面建立基于网络的协作会话;以及
-经由一个或多个应用网关在服务器和多个客户端之间通信数据。
最优选地,通信数据的步骤包括使用传输控制协议/因特网协议(TCP/IP)的步骤。这样的通信协议提供了数据的有序传递,并因此有助于协作会话满足所期望的安全性和数据传递的可靠性要求。
根据本发明的第九方面,提供了装有机器可读指令的计算机装置,用于实现根据本发明的第一方面的执行网络中的协作会话的方法。
根据本发明的第十方面,提供了装有机器可读指令的计算机装置,用于实现根据本发明的第三方面的为基于网络的协作会话配置网络的方法。
根据本发明的第十一方面,提供了装有机器可读指令的计算机装置,用于实现根据本发明的第四方面的执行协作会话的方法。
根据本发明的第十二方面,提供了装有机器可读指令的计算机装置,用于实现根据本发明的第五方面的在基于网络的协作会话内使用的两个或多个应用网关之间确定优化的数据通信路径的方法。
根据本发明的第十三方面,提供了装有机器可读指令的计算机装置,用于实现根据本发明的第七方面的在网络中的服务器和多个客户端之间建立基于网络的协作会话的方法。
根据本发明的第十四方面,提供了装有机器可读指令的计算机装置,用于实现根据本发明的第八方面的执行协作会话的方法。
本发明还提供了一种用于基于网络的协作会话的配置网络的方法,所述网络包括位于终端的两个或多个子网络内的服务器和多个客户端,所述方法包括:
为所述两个或多个子网络中的每一个提供一个或多个应用网关,所述一个或多个应用网关被配置成在所述协作期间在网络组件之间中继数据;
所述应用网关中的每一个向协作建立控制模块注册;以及
所述协作建立控制模块在所注册的应用网关上执行负载测试,以计算在终端的所述两个或多个子网络之间的优化的数据路径。
提供所述一个或多个应用网关可包括部署一个或多个静态应用网关。
提供所述一个或多个应用网关可包括将所述网络终端中的一个或多个部署为一个或多个动态应用网关。
至少一个所述网络终端可被配置为提供所述协作会话的数据源的服务器终端。
所述终端中的两个或多个可被配置为客户端终端,以提供给用户参与所述协作会话的接入点。
所述方法还可包括,使用所述协作建立控制模块,为服务器终端分配根据服务器终端的位置确定的应用网关。
所述方法还可包括,使用所述协作建立控制模块,为多个客户端终端分配根据客户端终端的位置确定的应用网关。
所述方法还可包括将应用网关分配给所述服务器终端用于所述协作会话的持续。
所述方法还可包括将应用网关分配给所述多个客户端终端中的每一个用于所述协作会话的持续。
所述协作会话可由用户向所述协作建立控制模块提交协作会话请求来发起。
所述会话请求可包括所述协作会话的参与用户的身份的详细资料。
所述会话请求还可包括所述协作会话的预先安排的时间Tc
所述配置网络方法,在提交所述协作会话请求之后,可将会话标识符分配到所述协作会话。
所述负载测试可在所述协作会话的所述预先安排的时间Tc之前的预定时间Tp执行。
所述预定时间Tp可由下面的表达式Tp=Tc-(TtestxC)确定,其中Ttest可以是在所述协作网络上执行之前的负载测试所用的时间,且C可以是误差因数。
所述误差因数C可具有大于1的值。
所述方法还可包括连接两个或多个应用网关以在两个或多个子网络终端之间建立数据通信路径。
所述子网络可包括位于广域网内的局域网。
本发明另外还提供了一种用于在位于终端的两个或多个子网络内的服务器和多个客户端之间建立基于网络的协作会话的系统,所述系统包括:
一个或多个应用网关,所述一个或多个应用网关位于所述两个或多个子网络中的每一个内,所述一个或多个应用网关被配置成在所述协作期间在网络组件之间中继数据;以及
协作建立控制模块,其中所述协作建立控制模块包括协作数据库和负载测试器,所述协作数据库提供用于存储所述一个或多个应用网关的注册的方式,所述负载测试器提供用于在所注册的应用网关上执行负载测试的方式,以计算在所述两个或多个子网络之间的优化的数据路径。
所述协作建立控制模块还可包括web服务器,所述web服务器允许所述协作建立控制模块与客户端终端进行通信。
所述web服务器可包括图形用户界面WebGUI、会话调度器和用户认证模块。
所述协作建立控制模块还可包括允许所述协作会话的后台运行功能的实现的守护进程。
所述守护进程可包括一个或多个组件,所述一个或多个组件可选自包括应用网关接口、负载测试器、路径分析器和路由表模块的组件组。
所述用户认证模块可允许对来自至少一个用户的加入所述协作会话的请求的详细资料的认证。
所述会话调度器可被用来接收来自用户的希望发起协作会话的协作会话请求。
所述会话请求可包括被邀请到所述协作会话的用户的详细资料。
所述会话请求还可包括所述协作会话的预先安排的时间。
在提交协作请求之后,所述会话调度器可将会话标识符分配到所述协作会话。
所述协作数据库可存储静态应用网关的预分配组的IP地址的注册。
所述协作建立控制模块可选择静态应用网关来向客户端终端的相关的子网络提供最优的数据传输速度。
所述会话调度器可被用来将一个或多个客户端终端部署为一个或多个动态应用网关。
所述一个或多个动态应用网关可被选定为向客户端终端的相关的子网络提供最优的数据传输速度。
服务器终端可位于客户端终端的子网络的外部。
所述负载测试可以在所述协作会话的预先安排的时间Tc之前的预定时间Tp执行。
所述预定时间Tp可以由表达式Tp=Tc–(TtestxC)确定,其中Ttest可以是在所述协作网络上执行之前的负载测试所用的时间,且C可以是误差因数。
所述误差因数可具有大于1的值。
所述负载测试器可指示所述路径分析器来测量所述应用网关之间的数据路径中的至少一些的网络速度。
所述路径分析器可测量所述数据路径的双向的网络速度。
所述负载测试器可将生成自所测量的网络速度的连接矩阵存储在所述路由表内。
所述负载测试器可提供处理存储在所述路由表内的所述连接矩阵的方式,以为终端的所述两个或多个子网络之间提供优化的数据通信路径。
所述会话调度器可提供连接两个或多个应用网关的方式,以在终端的所述两个或多个子网络之间建立数据通信路径。
终端的所述两个或多个子网络可包括位于广域网内的局域网。
所述用户认证模块可通过检查其包括有效的会话标识符、有效的用户名和密码来认证用户注册请求的详细资料。
如果所述用户认证模块确立所述用户具有所要求的许可,那么所述会话调度器可为客户端分配客户端标识符和适当的应用网关的详细资料,以将所述客户端终端连接到所述协作会话。
所述应用网关接口可为应用网关提供通知所述会话调度器所述应用网关的客户端处理能力被耗尽或将被耗尽的方式。
当所述用户认证模块从相关的子网络内的客户端接收又一有效的用户注册请求时,所述会话调度器可指示提交请求的客户端终端作为第一子网络动态应用网关起作用。
所述应用网关接口可为第一子网络动态应用网关提供通知所述会话调度器所述第一子网络动态应用网关的客户端处理能力被耗尽或将被耗尽的方式。
当所述用户认证模块从所述第一子网络内的客户端接收又一有效的用户注册请求时,所述会话调度器可指示提交请求的客户端终端作为第二子网络动态应用网关起作用。
附图说明
尽管所描述的协作会话的方法和系统的方方面面可以以任何数目的不同的计算系统、环境和/或配置实现,但协作会话的实施方式在下面的详细示例性系统架构的上下文中并参考下面的附图进行描述,其中:
图1给出了现有技术的协作系统的示意图;
图2给出了基于广域网(WAN)的协作会话的示意图,在所述基于广域网的协作会话内,根据本发明的一实施方式的方法优化了数据路径;
图3给出了在图2的基于广域网的协作会话内使用的示例的协作建立控制模块的框图;
图4给出了用来建立图2的协作会话的第一方法的流程图;
图5给出了在图2的广域网内部署应用网关的示意图;
图6给出了在图2的广域网内的应用网关之间执行负载测试的示意图表示;
图7给出了由图6的负载测试生成的连接矩阵;
图8(a)到8(d)给出了由协作建立控制模块使用的将图7的连接矩阵转换成图2的WAN内的应用网关之间的优化的数据路径的示例性方法;
图9给出了在图2的协作会话内使用的客户端认证过程的示意图表示;
图10(a)到10(e)给出了为图2的协作会话内的数据传送提供的数据路由的示意性表示;
图11给出了在图2的协作会话内部署动态应用网关的示意图表示;以及
图12给出了用来建立图2的协作会话的第二方法的流程图。
具体实施方式
为了提供对本发明的各个方面的理解,现将描述广域网(WAN)7内的协作会话6。该协作会话6的示意图表示在图2中给出。在目前所描述的实施方式中,可看出WAN7包括四个不同的地点5a、5b、5c和5d,其中的每一个包括局域网(LAN)。例如,地点5a、5b、5c和5d可分别位于格拉斯哥、爱丁堡、伦敦和华盛顿。地点5a、5b、5c和5d借助于四个应用网关8a、8b、8c和8d连接,下面提供进一步的细节。
为协作会话6提供数据源的服务器9位于地点5a内。服务器9包括在计算机终端(后文称为服务器终端)上运行的软件。服务器9还能够接收数据。
参与协作的许多客户端10位于地点5a、5b、5c和5d中的每一个中。客户端10包括运行在计算机终端(后文称为客户端终端)上的软件以允许用户接收数据并因此参与协作会话6。然而,应该理解,客户端10还能够将数据传送到例如服务器9和/或其他客户端10中的一个或多个。下面描述协作会话6内的数据路由过程的进一步的细节。
应用网关8a、8b、8c和8d的采用解决了进出地点5a、5b、5c和5d的多个连接的问题(如之前所描述的现有技术系统1所需要的,即参与协作的每一用户需要一个连接)。由于从服务器9流出的数据对所有的客户端10来说都是相同的,因此没有必要在地点5a、5b、5c和5d之间具有多个数据流。数据能简单地在地点5a、5b、5c和5d的LAN内重新分配,从而大大减小了在潜在的瓶颈处所需要的带宽(即到外部世界的物理连接)。
此外,由于在地点5a、5b、5c和5d的LAN内可用的带宽通常比整个WAN7的带宽大得多,因此应用网关8a、8b、8c和8d的采用提供了对可用的网络架构的有效得多的使用。
网络内的减小的带宽需求还允许协作会话6使用传输控制协议/因特网协议(TCP/IP)用于网络内的数据通信。这与传统的应用层多播系统不同,其由于带宽限制而使用用户数据报协议(UDP)。如本领域的技术人员所知,TCP/IP提供通信系统内的数据流的可靠、有序的传递,而没有隐含的握手对话的简单传输协议UDP不能保证可靠性、有序性或数据的完整性。因此使用TCP/IP用于数据的通信允许协作会话6满足期望的安全性和数据传递的可靠性需求。
在上面所描述的例子中,只有一个数据流在地点5a、5b、5c和5d之间流动。这导致了高度可扩容的网络架构:在该例子中,服务器9完全不知道实际上有8个客户端10,因为它只需要向一个应用网关8a提供数据。
除节约带宽外,优化的网络还导致处理能力的显著节约。可采用非常适度的服务器终端(就硬件而言)来托管服务器9并有效地服务多个客户端10。当不但硬件受限制而且可用带宽也受限制时,该因素变得更加重要。例如,通过采用这样的优化网络,对于即使较慢的连接来说,服务例如来自家里或宾馆房间的许多客户端10也是可能的。
协作建立控制模块(CECM)
在图3中给出了协作建立控制模块(CECM)11的框图。CECM11是允许协作会话6发生的核心结构。从图3可看出CECM11包括三个功能组件,即:web服务器12,其设置有图形用户界面(GUI)13、会话调度器14和用户认证模块15;协作数据库16,其被用来保留应用网关数据、会话数据和客户端数据;以及守护进程17,其设置有路由表18、数据路径分析器19、应用网关接口20和负载测试器21。
CECM11处理被要求建立、初始化和保持协作会话6的所有的管理功能。网络服务器12为CECM11提供GUI13,而守护进程17实现在后台运行的功能,如负载测试(其细节在下面提供)。更具体地,CECM11完成协作会话6的以下任务,即:
1)会话调度;
2)用户认证;
3)应用网关管理;以及
4)会话数据路径计算。
下面讨论这些任务中的每一个的更进一步的细节。
CECM11也可充当虚拟大厅。例如,协作会话6可能被安排,以及一个或多个客户端可能希望在服务器9(已经加入会话6)之前加入。在这些情况下,CECM11临时充当这些客户端10的集合点,并且然后当服务器9出现以及协作会话6准备开始时,CECM11将所有的客户端10“领到”会议厅。
然而重要的是,CECM11并不积极地参与协作会话6,因此不构成如与现有技术的系统1内使用的中央服务器2相关的瓶颈效应。而且,CECM11起着提取网络7的地址的作用。所有的服务器9、客户端10或事实上的应用网关8需要了解网络7的是IP地址或通过例如CECM的cecm.appshare.co.uk的域名系统(DNS)获得的文本别名。
在网络内建立协作会话的方法
现在讨论用来在WAN7内的多个客户端10之间建立协作会话6的方法。正如所看到的,用来获得WAN7内的数据路径优化的方法在减小带宽需求并因此提高协作会话6的效率方面是很重要的。图4给出了所描述的方法的流程图。
步骤1)提供应用网关
在WAN7内建立协作会话6的第一步包含在每一地点5内提供一个或多个应用网关8。如上所述,应用网关8的功能是充当相关的地点5的LAN的输入/输出,以在最大化所能支持的客户端10的数目的同时提高效率。在目前所描述的实施方式中,这包含在地点5a、5b、5c和5d内分配一个或多个终端以执行那一地点的应用网关8的功能。
存在应用网关8a、8b、8c和8d能够部署及应该部署以优化性能的关键位置。通常,每一地点5具有一个或多个到外部世界的物理连接。因此会发现,应用网关8a、8b、8c和8d越位于靠近输入/输出的物理连接,运行起来就越高效。然而对于目前所描述的协作会话来说,所需要的是在地点5a、5b、5c和5d内提供至少一个应用网关8。
这种部署模式在后文被称为静态应用网关8的部署。这种静态部署通常通过使用连续运转的服务器来实现。
一旦被选定,应用网关(例如网关8d)被提供有CECM11的IP地址。开始启动时,应用网关8d经由应用网关接口20向CECM11注册,然后会话调度器14分配给它应用网关标识符,同时提供给它已经注册的所有其他应用网关8a、8b和8c的详细资料。CECM11还将应用网关8d的详细资料添加到协作数据库,并用新注册的应用网关8d的详细资料更新任何之前注册的应用网关8a、8b和8c。
图5给出了在图2的WAN7内部署应用网关8a、8b、8c和8d的示意图。在目前所描述的例子中,在每一地点5a、5b、5c和5d内只部署了一个静态应用网关8a、8b、8c和8d,尽管应该意识到为了提高效率,可以在较大的地点5内部署两个或多个应用网关8。然而,在每一地点5a、5b、5c和5d内只部署一个应用网关8a、8b、8c和8d确保了将只有一个数据流进入或离开每一地点5a、5b、5c和5d。
当新的应用网关向CECM11注册时,优选的是,在所有已注册的应用网关上执行应用网关负载测试,如在下面的步骤3内所详细描述的。用来执行负载测试的时间Ttest被记录在CECM11内。了解用来执行最近的负载测试的时间对于确定下一协作会话6的负载测试何时开始来说是有用的参数。
步骤2)协作会话的发起
过程的第二个步骤包含用户使用客户端10初始化协作会话6。这包含由发起用户使用的客户端10向会话调度器14提供协作会话6的详细资料。这些详细资料包括协作会话6的时间Tc和受邀请用户的列表。
一接收到会话请求,会话调度器14就分配会话标识符,并将该标识符与协作会话6的其他详细资料一起存储在协作数据库16内。然后会话调度器14向地点5a、5b、5c和5d内的应用网关8a、8b、8c和8d提供会话标识符和受邀请的用户的详细资料,根据这些资料用户可以接入协作会话6。
步骤3)应用网关的负载测试或吞吐量测试
在协作会话6被安排开始的时间之前的时间Tp处,负载测试器21初始化应用网关8a、8b、8c和8d上的负载测试或吞吐量测试22的性能。如在下面更详细描述的,负载测试或吞吐量测试采取了分析连接应用网关8a、8b、8c和8d的路径的吞吐量或速度的形式。,该测试22在靠近时间Tc执行,因为在Tc之前的数天、或甚至数小时执行这样的测试没有意义,因为所述网络负载条件在这样的时间标度内变化较大而不是不变化。因此时间Tp根据下面的表达式计算:
Tp=Tc–(TtestxC)(1)
其中C是被引入以提供针对已被引入的附加的网络负载的误差的因数,由于负载测试在时间Ttest例如C=1.5处执行。
测试22被用来计算协作会话6的应用网关8a、8b、8c和8d之间的最优的数据路径,换句话说,对于特定的协作会话6,应用网关8a、8b、8c和8d应该如何互连。用全网方式完成,如在图6中所示意性描绘的。重要地,负载测试器21使用路径分析器19来测量在每一地点5a、5b、5c和5d之间的两个方向上的预定的数据量的速度或吞吐量。预定的数据量在大小上优选为至少32kb以提供最好的结果。吞吐量或速度的双向测量对于计算应用网关8a、8b、8c和8d之间的有效的数据路径是重要的,即,没有假设在应用网关8a、8b、8c和8d之间的任何给定的逻辑数据路径在两个方向上都支持相同的带宽和延迟。这么做的原因可能是由于网络基础设施、在特定地点或时间的网络负载,甚至因特网本身工作的方式,即,在点对点连接上的包没有必要采用相同的路径。换句话说,从应用网关8a发送到8b的包可以采用与从应用网关8b发送到8a的包不同的路径。而且,在不同的载体之间的界线交叉的地方,路由选择可取决于CsC(载体支持载体)的策略。
在所有的应用网关8a、8b、8c和8d之间的连接的双向测试的结果接着被负载测试器21用来在路由表18内生成吞吐量或数据路径速度(以kb/s测量)的连接矩阵。图7给出了针对目前所描述的协作会话6的示例性连接矩阵23。值‘x’表示没有连接或已经建立的链接,因此不再被考虑。
为了允许计算优化的数据路径,归一化连接矩阵是有益的。也就是说,例如,如果连接A→B是100kb/s而连接A→C是105kb/s,那么这将被视作‘类似的’。通过将下面的等式运用到连接矩阵23的每一个单元C来获得连接矩阵的归一化,即:
C=取整(10*t/T)(2)
其中,
t是单元C的所测量的吞吐量或数据路径速度;以及
T是连接矩阵的任何一个单元的所测量的最高的吞吐量或数据路径速度。
作为上面的归一化过程的结果,相对于所测量的最高的吞吐量或数据路径速度来表示矩阵内的所有值。因此,所测量的最高的吞吐量或数据路径速度被分配数值10,而其他的连接被有效地从0到10分级。
归一化确保它们所测量的吞吐量或速度只是轻微不同的连接被认为具有相同的吞吐量或速度。没有归一化,“连锁效应”可能发生,由此数据路径趋于在深度(跳数)而非宽度上生长,这导致更多的端到端延迟和次理想的数据传输。
图8(a)给出了针对目前所描述的协作会话6的归一化的连接矩阵23a。归一化连接矩阵23a的第六列和第七列分别涉及应用网关8a、8b、8c和8d的容量“c”和来自服务器9位于其内的子网络的应用网关8a、8b、8c和8d的跳数“h”。下面讨论这两个参数的进一步的细节。
负载测试过程22的下一步是需要将图8a的归一化的连接矩阵23a转换成在图2的WAN7内的应用网关8a、8b、8c和8d之间的优化的数据路径。这通过负载测试器21使用下面的算法或方法来操作存储在路由表18内的归一化的连接矩阵23a来获得,即:
从归一化的连接矩阵开始:包含n行(因而n+2列)。
源位于x处。
源集合Y是{x}
容量耗尽集合X是{}
重复
清空{Y}中的列
找到从源集合{Y}(但不在X中)到不在{Y}中的节点‘b’的最大值
如果有多种可能性,选择‘a’使得a(h)最小
如果有多种可能性,选择‘a’使得a(c)最大
结果是源为‘a’,目标为‘b’
使a(c)减1
赋值b(h)=a(h)+1
如果a(c)=0,则将‘a’添加到X,结果它不再是源
将节点‘b’添加到{Y},即目标‘b’这时是另一个源
直到O({Y})==n
应该意识到,应用网关8离数据源(即服务器9)越远(就跳数而言),连接到该应用网关8的客户端10将经历更多的延迟。因此,为了考虑增加的延迟,上述算法追踪应用网关8离数据源的源跳数“h”的数目。源应用网关8被分配0值。
而且,一旦应用网关8进行了一个连接,它服务附加连接的能力被减小。为了考虑服务附加连接的减小的能力,每次从应用网关8建立连接时,上面的算法还对每一应用网关8的固有容量“c”减一。一旦应用网关8耗尽容量,它被添加到容量耗尽集合X。
因此,当另一应用网关8将被连接,且在吞吐量或数据路径速度方面有两种或更多可能性时,所述算法首先考虑连接的应用网关8离数据源的源跳数“h”的数目。具有最低的源跳数的连接应用网关8比任何其他的应用网关优先选择。然而,如果有两个或多个具有相同跳数的可能的应用网关8,那么该算法选择在那时表现出最大的可用容量的那一个。
通过使用涉及源跳数和容量可用性的上述技术,确保了数据分布树将生长得“更宽”而不是“更深”,因此最小化了端到端的延迟。
图8(b)到图8(d)给出了将上述算法或方法实现到归一化的连接矩阵23a的例子。由于在这个例子中服务器9位于地点5a(地点A),这意味着优化的数据路径必须使用地点5a作为根(即源集合Y是{A})来产生。根据上面的讨论,地点5a(地点A)的跳数值被分配为0值。由于地点5a(地点A)不需要连接到它自身,A列的从→到可以为空。这些步骤导致修改的连接矩阵23b,如图8(b)所给出的。
下一步需要找到从源地点5a(地点A)到目的地的最理想的链接。连接矩阵23b产生了来自5a(地点A)的最有效的链接是到地点5b(地点B)。因此我们发现链接A→B是最理想的,并且源集合被更改为Y是{A,B}。因为B现在被连接,它从可能的目标集合中移除,这产生了修改的连接矩阵23c,如图8(c)所给出的。应该注意到,地点5a(地点A)的容量减小了1,而地点5b(地点B)被表示为离数据源一跳。
现在,如果源集合Y是{A,B},通过查看两个源,并且考虑现在可能耗尽容量的任何应用网关来寻找到目标的最高值。图8(c)揭示了最高值是从A→C。而且,发现新源并进行连接A→C。已修正的源集合现在是{A,B,C},并且已修正的连接矩阵23d在图8(d)给出。地点5a(地点A)的容量现在减小了2,而地点5c(地点C)被表示为离数据源一跳。
由于O({A,B,C})<O(nodes),该过程再一次重复。然而,只有一个节点D未连接,并且看到矩阵23d揭示了最好的可用连接是C→D。因此地点5c(地点C)的容量减小了1,而地点5d(地点D)被表示为离数据源两跳。
源集合Y现在是{A,B,C,D},因此完成优化方法,并且路由表18被适当更新。
应该注意到,当计算数据路径时,上述算法以及路由表18考虑服务器9(即实际的数据源)的位置。在上述例子中,服务器9位于地点5a(地点A),然而如果服务器9例如已经位于地点5d(地点D),则最终的数据路径结构将是完全不同的。
步骤4)客户端和服务器加入协作会话
当服务器9和客户端10希望加入所安排的协作会话6时,它们通过联系CECM11来这么做,如图9所示意性给出的。服务器9和客户端10必须提供有效的会话ID及有效的用户名和密码。然后CECM11使用用户认证模块15来验证服务器9和客户端10的凭证,接着检查服务器9和客户端10的用户是否具有加入协作会话6所要求的许可。
如果服务器9和客户端10的用户具有所要求的许可,那么会话调度器14分别向服务器9和客户端10提供服务器标识符和客户端标识符以及合适的应用网关8a和8c的详细资料,便于它们加入会话6。优选地选择所分配的应用网关为由CECM11所确定的能够向服务器9和客户端10提供最高的数据吞吐率的一个,尽管可以选定为该客户端特别优化的可选的应用网关(参见下面关于动态应用网关的讨论)。因此服务器9和客户端10能够经由所分配的应用网关8c通过连接来加入会话6。
如果这时客户端10试图加入协作会话6,进行检查(步骤5)以看看服务器9是否已经加入会话6。如果服务器9还没有加入,CECM11通知客户端10主持者还不可用(步骤6)。一旦服务器9加入会话6,CECM11就通知客户端10,然后会话6开始(步骤7)。用这种方式,CECM11在缺乏服务器9时为客户端充当虚拟大厅。
在协作会话内的数据路由
对于协作会话6来说,必须有可能对单个客户端10授予会话控制。反之,对客户端10来说必须有可能将数据流发送给服务器9。这样的数据流的例子将是会话控制请求、文件上传请求或白板。因此目前所描述的结构能够允许协作会话6内的数据在下列项之间路由:
1)服务器9和所有的客户端10;
2)服务器9和单个客户端10;
3)一个客户端10和服务器9;
4)一个客户端10和另一客户端10;以及
5)一个客户端10和多个选定的客户端。
这些数据路由的示意性表示在图10中给出。
通过使用基于存储在应用网关8内的路由表的路由方法和使用定制的协议头,在目前所描述的协作会话6中获得所述功能。
由于每一客户端10具有客户端标识符而服务器9具有服务器标识符,如由CECM11所分配的,每一应用网关8具有从客户端标识符和服务器标识符到逻辑链接的映射。换句话说,每一应用网关8能确定给定的数据包将在哪个逻辑链接上发送出去。
除其他数据外,TCP/IP协议头包含源字段和目的字段。目的字段有两个预定义值。它们是SERVER和ALL。因此,在目的字段中具有SERVER的任何消息将被发送到协作服务器9,而在目的字段中具有ALL的任何消息被发送到所有的客户端10。
源字段总是所分配的发送者的标识符。
因此利用目标字段提供用于协作会话6内所需要的路由的方法,因为具有作为目的字段的实际的客户端标识符的任何消息将被直接路由到该客户端10。可选地,多个客户端标识符可以进入目的字段以允许数据被路由到多个客户端10。
应该注意到,CECM11的使用还允许客户端10是网络不可知的。例如,客户端10不需要知道数据源(即服务器9)的IP地址。这样的例子可以是预先安排的会话6,主持者在宾馆中,且不可能先验地知道他自己的地址。客户端10只需要知道会话ID。然后它们通过联系CECM11的熟知的IP地址而连接到协作会话6。
要注意的另一点是,在客户端10已经加入协作会话6之后,CECM11将不再与客户端10交互,因此它不涉及任何进一步的通信过程。直接结果是,CECM11的功能在开放系统互连参考模型(OSI参考模型)的会话层(层五)内实现。这与其实现位于OSI参考模型的层七内的已知的应用层多播系统形成对比。
动态应用网关
尽管静态部署的应用网关8a、8b、8c和8d大大减小了互连地点5a、5b、5c和5d所需要的带宽,但对地点5a、5b、5c和5d来说,具有太多客户端10而不能支持是有可能的。如之前所讨论的,在这样的情况下,如果可用的话,第二静态应用网关8可以被部署在所述地点5a、5b、5c和5d内。然而,这可能不是在所有情况下都可行。
可选的解决方案是使用动态应用网关,如现将参考图11所描述的。静态应用网关8可在任意点经由应用网关接口20将静态应用网关8的客户端处理能力已经耗尽或即将耗尽的信号发往CECM11。从上面所描述的应用网关的选择过程可以看出,CECM11将知道第二静态应用网关8是否存在于地点5内。如果不是这样的话,在地点5内的另一客户端10有可能希望连接到协作会话6,那么CECM11将要求该客户端10充当动态应用网关24。地点5内的希望加入协作会话6的任何其他客户端10则经由动态应用网关24进行连接。
应该意识到,当第一动态应用网关24已经耗尽或即将耗尽它自己的客户端处理能力时,该过程可以被延伸。这时第二动态应用网关(没有示出)由CECM11建立。
在缺乏动态应用网关24时,静态应用网关8将必须为六个分开的客户端10服务。然而,在建立动态应用网关24时,静态应用网关8a这时只有效地必须为三个分开的客户端10和动态应用网关24服务,三个剩下的客户端10这时直接由动态应用网关24服务。
该机制允许地点5a、5b、5c和5d内的流量的动态管理,即所需要的带宽可以被管理和减小。如从图11可清晰地看出,静态应用网关8上的负载和带宽已经从将会是六减少到四。在较大的地点5a、5b、5c和5d内,该方法容易扩容,因为可根据需要创建更多的动态应用网关24。
动态协作会话
应该意识到,建立协作会话6的可选方法可包含只使用动态应用网关。现将参考图2和图12给出的流程图描述该实施方式的方法。
在该实施方式中,第一步涉及用户使用客户端10发起协作会话6。这再一次涉及由发起用户使用的客户端10向会话调度器14提供协作会话6的详细资料。这些详细资料包括协作会话6的时间Tc和受邀请的用户的列表。一收到该协作会话请求,会话调度器14就分配会话标识符,并将该标识符和协作会话6的其他详细资料一起存储在协作数据库16内。会话调度器14接着提供会话标识符和受邀请的用户的详细资料,例如通过发送恰当的电子邮件。
当客户端10希望加入所安排的协作会话6时,它们通过联系CECM11这么做(步骤2),如图9所示意性给出的。客户端10必须提供有效的会话ID及有效的用户名和密码。然后CECM11使用用户认证模块15来验证客户端10的凭证,接着检查客户端10的用户是否具有加入协作会话6所要求的许可。
如果用户具有所要求的许可,那么会话调度器14向客户端10提供客户端标识符以及合适的动态应用网关(步骤3)8c的详细资料,便于它们加入会话6。如果客户端10是特定网络内的联系CECM11的第一终端,那么它被指示来充当动态应用网关,如上面所详细描述的。
随后的动态应用网关的分配优选地被选择为由CECM11所确定的能够向客户端10提供最高的数据吞吐率的一个。然而,如果该动态应用网关的客户端处理能力已经达到,那么随后的客户端10将被CECM11指示来充当又一个动态应用网关。因此客户端10能够经由所分配的动态应用网关8a到8d通过连接来加入会话6。
如果这时客户端10试图加入协作会话6,要进行检查以看看服务器9是否已经加入会话6(步骤4)。如果服务器9还没有加入,CECM11通知客户端10主持者还不可用,并且CECM11在缺乏服务器9时充当客户端10的虚拟大厅(步骤5)。
在该实施方式中,服务器9加入协作会话6的请求类似于之前所描述的。作出该请求也是激活CECM11以在动态应用网关8a、8b、8c和8d上执行负载测试22,因此优化在它们之间的数据通信路径(步骤6)。负载测试22的方法如之前所描述的。
一旦存在服务器9,且负载测试22已经被执行,协作会话6就可以开始了(步骤7)。应该注意到,如果在协作会话已经开始之后,客户端10提交加入协作会话6的请求,那么一旦用户的身份被验证,协作会话只分配动态应用网关8a、8b、8c和8d,如之前所描述的。
然而,如果需要随后的动态应用网关,比如说,因为LAN内的客户端目前没参与协作会话6,那么执行修改的负载测试以确定新网关如何连接到目前被连接的优化的动态应用网关网络。该修改的负载测试涉及测量目前存在的动态应用网关中的每一个的吞吐量或速度以及将新网关连接到具有最高吞吐量的路径。
如果就吞吐量和速度而言,有两种或多种可能性,则考虑所连接的动态应用网关8离数据源的源跳“h”的数目。具有最低的源跳数的连接的动态应用网关8比任何其他的应用网关优先选择。然而,如果有两个或多个具有相同跳数的可能的动态应用网关8,则选择在那时表现出最大的可用容量的那一个。
要注意的重要一点是,一旦负载测试或吞吐量测试已经执行,并且应用网关(静态的或动态的)的优化的连接已经发生,则应用网关网络的结构保持不变以用于协作会话的持续。可以添加其他动态应用网关,但这以不中断最初优化的应用网关网络内的通信路径的方式来完成。通信路径内的中断虽然短暂,但导致中断连接以致任何正在进行的文件传输需要从一开始重新启动。
上述基于网络的协作提供了一种系统,该系统是安全的,能保证系统内的可靠的数据传递,并且该系统容易扩容以允许由数以百计的客户端使用。此外,该系统向协作会话内的任意客户端提供将选定的数据直接发送到任何其他选定的单个客户端或多个客户端的能力。
正是使用应用网关解决了进入地点和出地点需要多个连接的问题。因为来自主机客户端的数据流对于所有的客户端来说都是相同的,所以没必要具有多个数据流。之后数据在地点的LAN内被重新分配,因而大大减小了WAN上所需要的带宽。因为LAN内的可用带宽比整个WAN的带宽大得多,所以该方法消除了地点之间的性能瓶颈的影响。
应用网关之间的数据通路因而通过使用预会话、源特定的负载测试得到优化。负载测试双向地测量所有的应用网关之间的延迟和吞吐量,来提供用于计算节约这些网关之间的分布路径的的带宽的方法。
网络内的减小的带宽要求的一个重要优点是,它允许在网络内使用安全和可靠的数据通信协议,例如传输控制协议/因特网协议(TCP/IP)。这种数据的安全性和可靠性在提供鲁棒的协作系统方面是很重要的。
当与已知的现有技术的系统相比较时,静态的和动态的应用网关的使用还为所描述的协作会话提供了显著的灵活度和可扩容度。
目前所描述的系统的另一优点是,协作建立控制模块的功能在OSI模型内的会话层(层五)而不是应用层(层七)实现。这是可能的,因为CECM处理建立、发起和保持协作会话所需要的所有的管理功能。然而重要地,这在CECM本身没有积极地参与会话的情况下实现。因此,在目前所描述的系统的复杂度方面有显著的减小,允许创建者将精力集中于功能而不是基础设施。当与在应用层内实现的那些系统相比时,这提供了明显的时间和资源节约。
本发明的上述描述是为了说明和描述目的而给出,而不旨在是详尽的或限制本发明到所公开的精确形式。选择和描述所描述的实施方式以最好地解释本发明的原理和它的实际应用,从而允许本领域的其他技术人员最好地利用本发明的各种实施方式和做出各种修改以满足设想的特定用途。因此,在不偏离由所附权利要求所限定的本发明的范围的情况下,可以引入其他修改或改进。本发明还延伸至除了本文明确要求的那些特征之外的特征的组合。

Claims (10)

1.一种用于基于网络的协作会话的配置网络的方法,所述网络包括位于终端的两个或多个子网络内的服务器和多个客户端,所述方法包括:
为所述两个或多个子网络中的每一个提供一个或多个应用网关,所述一个或多个应用网关被配置成在所述协作期间在网络组件之间中继数据;
所述应用网关中的每一个向协作建立控制模块注册;以及
所述协作建立控制模块在所注册的应用网关上执行负载测试,以计算在终端的所述两个或多个子网络之间的优化的数据路径。
2.如权利要求1所述的配置网络的方法,其中提供所述一个或多个应用网关包括部署一个或多个静态应用网关。
3.如权利要求1或2中的任一项所述的配置网络的方法,其中提供所述一个或多个应用网关包括将所述网络终端中的一个或多个部署为一个或多个动态应用网关。
4.如前述权利要求中的任一项所述的配置网络的方法,其中至少一个所述网络终端被配置为提供所述协作会话的数据源的服务器终端。
5.如前述权利要求中的任一项所述的配置网络的方法,其中所述终端中的两个或多个被配置为客户端终端,以提供给用户参与所述协作会话的接入点。
6.如权利要求4或权利要求5所述的配置网络的方法,其中所述方法还包括,使用所述协作建立控制模块,为服务器终端分配根据服务器终端的位置确定的应用网关。
7.如权利要求5或权利要求6所述的配置网络的方法,其中所述方法还包括,使用所述协作建立控制模块,为多个客户端终端分配根据客户端终端的位置确定的应用网关。
8.如权利要求6或权利要求7所述的配置网络的方法,其中所述方法还包括将应用网关分配给所述服务器终端用于所述协作会话的持续。
9.如权利要求7或权利要求8所述的配置网络的方法,其中所述方法还包括将应用网关分配给所述多个客户端终端中的每一个用于所述协作会话的持续。
10.如前述权利要求中的任一项所述的配置网络的方法,其中所述协作会话由用户向所述协作建立控制模块提交协作会话请求来发起。
CN201510408726.3A 2009-04-16 2010-04-15 基于网络的协作的方法和系统 Pending CN105100089A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB0906557.4A GB2469501B (en) 2009-04-16 2009-04-16 Method and system for network-based collaboration
GB0906557.4 2009-04-16
CN201080025666.2A CN102461115B (zh) 2009-04-16 2010-04-15 基于网络的协作的方法和系统

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201080025666.2A Division CN102461115B (zh) 2009-04-16 2010-04-15 基于网络的协作的方法和系统

Publications (1)

Publication Number Publication Date
CN105100089A true CN105100089A (zh) 2015-11-25

Family

ID=40750705

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201510408726.3A Pending CN105100089A (zh) 2009-04-16 2010-04-15 基于网络的协作的方法和系统
CN201080025666.2A Expired - Fee Related CN102461115B (zh) 2009-04-16 2010-04-15 基于网络的协作的方法和系统

Family Applications After (1)

Application Number Title Priority Date Filing Date
CN201080025666.2A Expired - Fee Related CN102461115B (zh) 2009-04-16 2010-04-15 基于网络的协作的方法和系统

Country Status (7)

Country Link
US (1) US20120265810A1 (zh)
EP (1) EP2420040A2 (zh)
CN (2) CN105100089A (zh)
AU (1) AU2010238292A1 (zh)
BR (1) BRPI1014570A2 (zh)
GB (1) GB2469501B (zh)
WO (1) WO2010119287A2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107846338A (zh) * 2017-12-11 2018-03-27 宁波翼动通讯科技有限公司 一种分布式低功耗广域网系统及其控制方法

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102646049B (zh) * 2011-02-16 2016-03-02 阿里巴巴集团控股有限公司 一种组件协同方法和系统
US8375085B2 (en) * 2011-07-06 2013-02-12 Avaya Inc. System and method of enhanced collaboration through teleportation
US9148383B2 (en) 2012-07-31 2015-09-29 International Business Machines Corporation Transparent middlebox with graceful connection entry and exit
US9450878B2 (en) 2012-08-21 2016-09-20 International Business Machines Corporation Dynamic middlebox redirection based on client characteristics
US9081746B1 (en) * 2012-10-16 2015-07-14 Teradici Corporation Method for client configuration management in remote computing
CN104519414B (zh) * 2013-09-27 2018-05-08 北京新媒传信科技有限公司 一种流媒体传输的方法和系统
US9763137B2 (en) 2013-12-13 2017-09-12 Cable Television Laboratories, Inc. Predictive load balancing
US10218639B2 (en) * 2014-03-14 2019-02-26 Microsoft Technology Licensing, Llc Computing long-term schedules for data transfers over a wide area network
US11659012B2 (en) * 2015-06-15 2023-05-23 Apple Inc. Relayed communication channel establishment
US9774824B1 (en) * 2016-07-18 2017-09-26 Cisco Technology, Inc. System, method, and logic for managing virtual conferences involving multiple endpoints
CN111083177B (zh) * 2018-10-19 2022-10-11 中国电子科技集团公司第十五研究所 基于协同网关的跨域协同交互方法
US11438424B2 (en) * 2021-01-21 2022-09-06 Dell Products L.P. Scaled compute management for collaboration solutions
CN113467675A (zh) * 2021-05-31 2021-10-01 北京达佳互联信息技术有限公司 一种虚拟空间操作方法、装置、电子设备及存储介质
CN117978809A (zh) * 2024-04-01 2024-05-03 深圳竹云科技股份有限公司 网关节点推荐方法、装置、计算机设备和存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1179047A (zh) * 1996-10-01 1998-04-15 国际商业机器公司 分布式企业计算机环境中的负载平衡
US20030231741A1 (en) * 2002-06-14 2003-12-18 G3 Nova Technology, Inc. Multi-protocol, multi-interface communications device testing system
US20040210634A1 (en) * 2002-08-23 2004-10-21 Miguel Ferrer Method enabling a plurality of computer users to communicate via a set of interconnected terminals
US20070156813A1 (en) * 2005-11-15 2007-07-05 California Institute Of Technology Method and apparatus for collaborative system
CN101136791A (zh) * 2006-11-16 2008-03-05 中兴通讯股份有限公司 一种基于文件传输协议的网络吞吐量测试方法
CN101415248A (zh) * 2008-11-21 2009-04-22 中山大学 基于负载均衡的跨层动态源路由协议的建立方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6415259B1 (en) * 1999-07-15 2002-07-02 American Management Systems, Inc. Automatic work progress tracking and optimizing engine for a telecommunications customer care and billing system
US20020010736A1 (en) * 2000-03-06 2002-01-24 Telenova Communications Corp. Internet based audio and video communication system using a virtual desktop
WO2003091889A1 (fr) * 2002-04-25 2003-11-06 International Business Machines Corporation Serveur de collaboration, systeme de collaboration, son procede de gestion de session et programme
US20040107256A1 (en) * 2002-12-02 2004-06-03 Thomas Odenwald Collaboration integration
US7197751B2 (en) * 2003-03-12 2007-03-27 Oracle International Corp. Real-time collaboration client
US7734691B2 (en) * 2003-12-18 2010-06-08 International Business Machines Corporation Providing collaboration services to a wireless device
US7760659B2 (en) * 2004-08-05 2010-07-20 Microsoft Corporation Transmission optimization for application-level multicast

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1179047A (zh) * 1996-10-01 1998-04-15 国际商业机器公司 分布式企业计算机环境中的负载平衡
US20030231741A1 (en) * 2002-06-14 2003-12-18 G3 Nova Technology, Inc. Multi-protocol, multi-interface communications device testing system
US20040210634A1 (en) * 2002-08-23 2004-10-21 Miguel Ferrer Method enabling a plurality of computer users to communicate via a set of interconnected terminals
US20070156813A1 (en) * 2005-11-15 2007-07-05 California Institute Of Technology Method and apparatus for collaborative system
CN101136791A (zh) * 2006-11-16 2008-03-05 中兴通讯股份有限公司 一种基于文件传输协议的网络吞吐量测试方法
CN101415248A (zh) * 2008-11-21 2009-04-22 中山大学 基于负载均衡的跨层动态源路由协议的建立方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107846338A (zh) * 2017-12-11 2018-03-27 宁波翼动通讯科技有限公司 一种分布式低功耗广域网系统及其控制方法

Also Published As

Publication number Publication date
CN102461115B (zh) 2015-08-05
AU2010238292A1 (en) 2011-11-03
EP2420040A2 (en) 2012-02-22
GB2469501A (en) 2010-10-20
GB2469501B (en) 2012-01-04
BRPI1014570A2 (pt) 2016-04-19
WO2010119287A3 (en) 2011-05-12
GB0906557D0 (en) 2009-05-20
WO2010119287A2 (en) 2010-10-21
CN102461115A (zh) 2012-05-16
US20120265810A1 (en) 2012-10-18

Similar Documents

Publication Publication Date Title
CN102461115B (zh) 基于网络的协作的方法和系统
CN101606373B (zh) 用于分组交换网络的通信方法和采用该方法的网络
KR101278861B1 (ko) 다수의 노드들이 대화형 세션에 참여하는 시스템 및 그에관련된 장치-판독 가능 매체
US10484335B2 (en) Secure remote computer network
CN101124568B (zh) 通过计算机网络的单向链路路由isis流量的系统和方法
CN100521663C (zh) 点对点通信中穿越网络地址转换的方法
US20100318662A1 (en) Automated Real-Time Data Stream Switching in a Shared Virtual Area Communication Environment
CN101330429A (zh) 在虚拟专用网上的对等网络
CN101326777B (zh) 用于下游报价的系统和/或方法
CN111435922B (zh) 一种带宽共享方法
Cerroni et al. Cross-layer resource orchestration for cloud service delivery: A seamless SDN approach
EP2211587B1 (en) Method, system, server and client for transmitting media burst data
US11647069B2 (en) Secure remote computer network
CN111314481B (zh) 一种数据传输方法、装置、设备以及可读存储介质
Chen et al. Scalable and flexible traffic steering for service function chains
CN106357443B (zh) 一种网络配置的方法及设备
KR100703065B1 (ko) 다자간 양방향 음성통화 서비스를 위한 nat 제어 시스템및 그 방법
CN108934084A (zh) 网格网络中的动态隧道建立
Chen et al. On the game server network selection with delay and delay variation constraints
Mishra Software Defined Networks
Liang et al. Relative QoS optimization for multiparty online gaming in DiffServ networks
Musaliou-Elefteri Practical wireless mesh networks and their applications
Nuño et al. Automatic deployment of a communication mesh for synchronous e-learning activities
CN117596563A (zh) 信令通信方法、服务通信代理节点、电子设备及存储介质
Danquah Route Redistribution: Beyond Inherent Metrics

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20151125