CN103069782B - 通信系统以及用于通过该通信系统进行通信的方法 - Google Patents

通信系统以及用于通过该通信系统进行通信的方法 Download PDF

Info

Publication number
CN103069782B
CN103069782B CN201180042628.2A CN201180042628A CN103069782B CN 103069782 B CN103069782 B CN 103069782B CN 201180042628 A CN201180042628 A CN 201180042628A CN 103069782 B CN103069782 B CN 103069782B
Authority
CN
China
Prior art keywords
client
communication
end server
communication system
server
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.)
Expired - Fee Related
Application number
CN201180042628.2A
Other languages
English (en)
Other versions
CN103069782A (zh
Inventor
A.波托夫
R.约翰松
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.)
Skype Ltd Ireland
Original Assignee
Skype Ltd Ireland
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 Skype Ltd Ireland filed Critical Skype Ltd Ireland
Publication of CN103069782A publication Critical patent/CN103069782A/zh
Application granted granted Critical
Publication of CN103069782B publication Critical patent/CN103069782B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/567Integrating service provisioning from a plurality of service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/04Real-time or near real-time messaging, e.g. instant messaging [IM]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Communication Control (AREA)
  • Telephonic Communication Services (AREA)

Abstract

提供了一种通信系统以及通过该通信系统进行通信的方法。该通信系统包括在用户终端执行的客户端;前端服务器以及多个其它节点。点对点通信的数据分组在客户端和其它节点之一之间进行传送。在客户端和前端服务器之间提供持久性连接,并且该通信系统被配置为使用该持久性连接为客户端和所述其它节点之一之间的点对点通信提供支持。

Description

通信系统以及用于通过该通信系统进行通信的方法
技术领域
本发明涉及一种通信系统以及通过该通信系统进行通信的方法。
背景技术
通信系统允许用户互相进行通信。每个用户可以与用户终端相关联以使得能够在用户终端之间传送数据分组以便用户通过通信系统进行通信。数据分组可以通过诸如互联网的网络进行传送。
每个用户终端可以执行由与通信系统相关联的软件提供方所提供的通信客户端,其允许用户终端通过网络进行呼叫和即时消息传送通信会话。
在点对点通信系统中,为了第一用户向第二用户传送消息,使用点对点通信,其中(第一用户所使用的)第一用户终端使用第二用户终端的互联网协议(IP)地址直接向(第二用户所使用的)第二用户终端传送消息。以这种方式,在点对点通信中,数据分组在客户端之间直接传送(即,并不将数据分组指向服务器)。
与P2P通信系统相比,基于服务器的通信系统通常提供用于在客户端之间传送数据的更为可靠的通信路径。然而,基于服务器的通信系统并不像P2P通信系统那样对系统中非常大量的用户进行妥善应对,因为在那样的情况下,对基于服务器的通信系统的服务器强加了很大的处理需求。
一些点对点通信系统使用服务器进行IP地址查找,在这种情况下,要求客户端与在其每次希望与服务器建立连接时都要与地址查找服务器建立连接。与适当服务器建立连接同样对客户端的资源提出了需求。
发明内容
根据本发明的第一方面,提供了一种通信系统,包括:在用户终端执行的客户端;前端服务器;和多个其它节点,其中该通信系统被配置为在客户端和其它节点之一之间传送点对点通信的数据分组,并且其中在客户端和前端服务器之间提供持久性连接,该通信系统被配置为使用该持久性连接对客户端和所述其它节点之一之间的点对点通信提供支持。
根据本发明的第二方面,提供了一种通过通信系统进行通信的方法,所述通信系统包括在用户终端执行的客户端,前端服务器和多个其它节点,其中在该通信系统中的客户端和前端服务器之间提供有持久性连接,该方法包括:在客户端和该通信系统中的其它节点之一之间传送点对点通信的数据分组,其中该持久性连接被用来对客户端和所述其它节点之一之间的点对点通信提供支持。
在客户端和其它节点之间传送的数据分组在客户端和其它节点之间提供了点对点通信。优选地,该通信系统被配置为使用客户端和前端服务器之间的持久性连接经由该前端服务器从客户端向其它节点传送数据分组。该客户端可以具有与该通信系统的(不同于该持久性连接的)另一连接以便在点对点通信中使用。
发明人已经意识到,在客户端和前端服务器之间存在持久性连接会是有益的。以这种方式,前端服务器能够通过持久性连接向客户端提供后端通信服务,由此为客户端和通信系统中其它节点之间的点对点通信提供支持。从客户端发送的服务请求能够通过使用服务标识符(服务ID)来识别。消息能够使用服务ID在客户端和适当服务器之间进行中继。
这样,能够使用服务ID通过持久性连接对服务进行有效多路传输。例如,服务器ID可以指示消息是要发送至即时消息服务器的即时消息。可替换地,服务ID可以指示消息是要发送至增值视频网关服务器的增值视频消息。
经由前端服务器传送至客户端的数据分组可以使用前端服务器的标识符和持久性连接的标识符进行寻址。该数据分组可以是消息。可替换地,该数据分组可以包括在通过通信系统的呼叫中使用的呼叫数据。
在优选实施例中,前端服务器是连接适配器。在客户端和连接适配器之间拥有持久性连接使得消息能够在任何时候都被推送至客户端。这还使得能够使用连接适配器的标识和持久性连接对客户端进行寻址。这提供了一种不依赖于点对点消息传递而在客户端之间进行通信的更为鲁棒的方法。此外,与前端服务器的持久性连接允许前端服务器主动对点对点通信会话的各方面进行控制,诸如通过通信系统在客户端之间进行传送的即时消息的计费和存储。
在优选实施例中,持久性连接是传输控制协议(TCP)连接。就客户端注册到通信系统中时的意义而言该连接是持久的,客户端和前端服务器之间的连接是始终开启的。然而,当客户端没有注册到通信系统时(例如,如果用户终端关机,或者用户终端失去了到互联网的连接),则客户端和前端服务器之间的连接断开。因此术语“持久性”仅是指客户端在其间注册到通信系统中的期间。
通过在已经建立的连接(即持久性连接)上向多个服务器发送诸如消息之类的数据分组而不是为每个数据分组创建新的连接,节约了否则会被加密握手、授权和客户端注册以建立连接所需的资源。
优选实施例允许通过客户端和前端服务器之间的通信系统进行点对点通信,并且允许到前端服务器的持久性连接被用于为点对点通信提供支持。就该意义而言,通信系统可以被认为实现了混合的点对点服务器架构。
在点对点通信中,使用末端点的IP地址直接向点对点通信的末端点传送数据分组。这意味着数据分组在点对点通信中可以在客户端之间直接传送,而并不使用客户端与所连接的服务器对数据分组进行寻址。点对点通信可以包括客户端和所述其它节点之一之间的即时消息传送通信会话,并且数据分组可以是即时消息。在这种情况下,通信系统可以进一步被配置为通过以下而使用持久性连接来为客户端和所述其它节点之一之间的即时消息传送通信会话提供支持:使用持久性连接经由前端服务器将即时消息传送至通信系统中的存储服务器;并且将该即时消息存储在该存储服务器。通信系统可以进一步被配置为允许其它节点取得存储在存储服务器的即时消息。
可替换地,点对点通信可以包括客户端和所述其它节点之一之间的增值通信会话,其中增值通信会话中的至少一个用户被要求具有增值订购状态以便允许该增值通信会话得以进行。在这种情况下,通信系统可以进一步被配置为使用该持久性连接为客户端和所述其它节点之一之间的增值通信会话提供支持,其中前端服务器确定该增值通信会话中的至少一个用户是否具有增值订购状态。
附图说明
为了更好地理解本发明并且示出其可以如何生效,现在将通过示例参考附图,其中:
图1示出了根据优选实施例的通信网络;
图2示出了根据优选实施例的用户终端的示意图;
图3图示了从第一客户端向第二客户端传送即时消息的方法;并且
图4是用于处理多方视频通信会话的通信系统的示意图。
具体实施方式
现在将仅通过示例对本发明的优选实施例进行描述。
首先参考图1,其图示了优选实施例的基于分组的通信系统100。通信系统的第一用户(用户A 102)操作用户终端104。用户终端104例如可以是移动电话、个人数字助理(PDA)、个人计算机(PC)(例如包括WindowsTM、Mac OSTM和LinuxTM PC)、游戏设备或者能够通过通信系统100进行通信的其它嵌入式设备。用户终端104被配置为从设备的用户102接收信息并且对其输出信息。在优选实施例中,用户终端104包括诸如屏幕的显示器以及诸如小键盘、操纵杆、触摸屏、键盘、鼠标、麦克风和/或网络摄像头之类的输入设备。
用户终端104执行与通信系统100相关的软件提供方所提供的通信客户端106。通信客户端106是在用户终端104中的本地处理器上执行的软件程序,其允许用户终端104通过通信系统100进行呼叫和即时消息传送通信会话。通信客户端106具有与连接适配器108的持久性连接109。通信适配器108是通信系统100中的前端服务器。当客户端106在用户终端104执行的同时,客户端106始终连接至连接适配器108以提供持久性连接109。
通信系统100还包括第二连接适配器116、用户状态服务器118和另一节点120。如图1所描绘的,图1中示出的连接适配器108和116、用户状态服务器118和其它节点120这四个节点都能够向这四个节点中的每个其它节点传送数据。如对于本领域技术人员将会显而易见的是,通信系统100可以包括比图1所示的那些更多的节点。图1所示的通信系统100的部件(或“节点”)能够通过网络互相通信,该网络例如可以是互联网。
图1还示出了第二用户110(User B),其具有执行客户端114以便以与用户终端104执行客户端106而通过通信系统100进行通信相同的方式通过通信系统100进行通信。因此,用户A和B(102和110)能够通过通信系统100互相通信。在通信系统100中可以有更多用户,但是出于简明仅在图1的通信系统100中示出了两个用户102和110。通信客户端114具有与连接适配器116的持久性连接117。连接适配器116是通信系统100中的前端服务器。当客户端114在用户终端112执行时,客户端114始终连接至连接适配器116以提供持久性连接117。
图2图示了客户端106在其上执行的用户终端104的详细视图。用户终端104包括中央处理器(CPU)202,与之相连接的有诸如屏幕的显示器204、诸如小键盘(或键盘)206的输入设备、诸如操纵杆(或鼠标)208的指示设备和用于捕捉视频数据的网络摄像头225。显示器204可以包括用于向CPU 202输入数据的触摸屏。输出音频设备210(例如,扬声器)和输入音频设备212(例如,麦克风)连接至CPU 202。显示器204、小键盘206、操纵杆208、网络摄像头225、输出音频设备210和输入音频设备212集成到用户终端104中。在可替换的用户终端中,显示器204、小键盘206、操纵杆208、网络摄像头225、输出音频设备210和输入音频设备212中的一个或多个可以不集成到用户终端104中并且可以经由相应接口连接至CPU 202。这样的接口的一个示例是USB接口。CPU 202连接至诸如调制解调器的网络接口226以便与通信系统100的网络通信从而通过通信系统100进行通信。网络接口226可以如图2所示集成到用户终端104中。在可替换用户终端中,网络接口226并不集成到用户终端104中。网络接口226提供了用于保持与连接适配器108的持久性连接109的手段。
图2还图示了在CPU 202上执行的操作系统(OS)214。在OS 214顶端运行的是用于客户端106的软件栈216。该软件栈示出了客户端协议层218、客户端引擎层220和客户端用户接口层(UI)222。每一层负责具体功能。由于每一层通常与其它两层进行通信,所以它们被视为配置在如图2所示的栈中。操作系统214对计算机的硬件资源进行管理并且对经由网络接口226往来于网络进行传送的数据进行处置。客户端软件的客户端协议层218与操作系统214进行通信并且对通信系统100上的连接进行管理。需要更高级别处理的过程被送至客户端引擎层220。客户端引擎220还与客户端用户接口层222进行通信。客户端引擎220可以被配置为对客户端用户接口层222进行通信以经由客户端的用户接口向用户呈现信息并且经由用户接口接收来自用户的信息。
现在将对通信系统100的操作的优选实施例进行描述。客户端106和114使用到相应连接适配器108和106的相应持久性连接109和117(其可以是TCP连接)连接至通信系统100。连接适配器108和116是接受持久性连接109和117并且将来自客户端的连接请求转换为注册呼叫的组件。响应于该注册呼叫,连接适配器108和116能够确定将从通信系统100中的客户端106和114所接收的数据传送至哪里。客户端106和114在客户端登录到通信系统100中时始终保持到连接适配器(108和116)的连接(109和117)。连接适配器(108和116)能够在任意时刻向任意所连接的客户端(106和114)发出通知。
与连接至通信系统100的所有客户端(例如,客户端106和114)相关的信息存储在用户状态服务器118中。用户状态服务器118也可以被称作“客户端登记表”。用户状态服务器118是映射表,其保存有包含与哪些用户正使用哪些客户端以及那些客户端连接至哪些前端服务器相关的信息的条目。例如,用户状态服务器118可以存储包括(i)标识用户102的用户ID以及(ii)标识客户端106通过持久性连接109与之相连接的连接适配器108的前端服务器ID的条目。该条目还可以包括用来将客户端106连接至连接适配器108的持久性连接109的ID。当客户端106连接至连接适配器108时,用户和客户端信息被注册在用户状态服务器118中的条目中。响应于客户端106使用持久性连接109连接至连接适配器108,该条目的信息例如可以从客户端106或者从连接适配器108被传送至用户状态服务器118。
用户状态服务器118还提供允许通信系统100内的服务查询存储在用户状态服务器118的条目中的信息的接口。任何服务都能够请求从用户状态服务器118中的条目接收信息。当服务意图向特定用户发送消息时,该服务可以使用从用户状态服务器118所接收的信息来确定该特定用户的客户端连接至哪个连接适配器和/或哪个持久性连接。该服务随后能够向所指定的连接适配器传送消息,该连接适配器将其转发至客户端以使得该消息能够被送至特定用户。
在客户端106和连接适配器108之间的两个方向中传递的命令和通知(例如,服务请求)可以是序列化的属性容器。在这种情况下,每个命令具有特定格式并且除了数据之外具有命令名称、服务ID和请求ID。当命令从客户端106到达连接适配器108时,连接适配器查询命令中的服务ID以确定该命令应当被传送至哪里并且随后将该命令送至该服务ID所标识的相对应服务。该服务可以由通信系统100中的服务器所提供。该服务器可以通过经由连接适配器108和持久性连接109向客户端106提供服务来对服务请求进行响应。
在通信系统100上从客户端106发送的数据分组例如可以是即时消息或用于在通信系统100上的呼叫中使用的呼叫数据。数据分组可以是即时消息。可替换地,即时消息可以包括多个数据分组。数据分组因此可以是即时消息的至少一部分。客户端106能够使用客户端106和连接适配器108之间的持久性连接109以及使用客户端114和连接适配器116之间的持久性连接117而通过通信系统100与客户端114进行通信。此外,客户端106可以能够使用图1中没有示出的连接而通过通信系统100与客户端114进行通信。以这种方式,用户102和110能够通过通信系统100进行点对点通信,并且该点对点通信可以使用连接适配器108和116以及持久性连接109和117而得到支持。
客户端106和114能够通过通信系统100进行点对点通信,并且连接适配器108和116能够对该点对点通信的各个方面进行控制。这能够有助于对点对点通信中所提供的通信服务提供更大的灵活性,并且与依赖于网络上的端对端消息传递相比还能够提供更为鲁棒的通过通信系统100进行通信的方法。例如,数据分组可以使用持久性连接109和117而经由前端服务器108和116在客户端106和114之间发送。
应当注意的是,通信系统100中的每个连接适配器可以利用多于一个的相应持久性连接连接至多于一个的客户端。
以下对连接适配器如何能够为点对点通信提供支持的两个示例进行详细解释。
1. 将连接适配器用于即时消息传送
能够由连接适配器108和116为点对点通信提供的支持的一个示例是存储即时消息传送通信会话中客户端106和114之间传送的即时消息。客户端106和114之间的即时消息传送对话中的每条即时消息都能够被存储在通信系统100中的服务器(即,存储服务器)处的数据库上。这允许用户在通信系统中在不同用户终端处使用不同客户端实例并且仍然能够从处于通信系统100中的服务器处的数据库获得对聊天历史(即在之前的即时消息传送对话中所传送的即时消息)的访问。这为用户使用遍布通信系统100的不同客户端提供了更大的灵活性。在通信系统100中使用连接适配器提供了一种实施即时消息存储的简单方法。
现在将参考图3对根据优选实施例的即时消息传送方法进行描述。如本领域中已知的,即时消息传送对话可以包括多于两个的用户,并且即时消息可以在对话中的任意用户之间进行传送。
图3示出了通信系统100的各个部件。特别地,图3示出了用户终端104和112的客户端106和114。图3还示出了第一和第二连接适配器108和116、第一和第二登记表304和312(它们可以与图1所示的用户状态服务器118相同或不同)、交谈服务器306、加密服务器308、数据库309和客户端调度器310。第一和第二连接适配器108和116、第一和第二登记表304和312、交谈服务器306、加密服务器308、数据库309和客户端调度器310在通信系统100中的多个服务器节点处实施。第一和第二登记表304和312可以被实施为单个登记表(例如,用户状态服务器118)或者通信系统100中分开的登记表。
如以下所描述的,图3中标记以1至15的箭头示出了从第一用户终端104的客户端106向第二用户终端112的客户端114传送即时消息的方法中的步骤。
在步骤1中,客户端106向连接适配器108发送即时消息。连接适配器108在该配置中被用作前端服务器以向客户端106提供各种后端服务。即时消息包括向连接适配器108指示该消息为即时消息的服务ID。
在步骤2中,连接适配器108针对交谈服务器306的通信系统100中的地址查询登记表304。在步骤3中,登记表304向连接适配器108返回交谈服务器306的地址。
在步骤4中,连接适配器108向交谈服务器306提供即时消息(连同元数据一起,诸如时间戳以及第一用户102和第二用户110的标识)。
在步骤5中,交谈服务器306将该即时消息发送至加密服务器308。加密服务器308对该即时消息进行加密并且在步骤6中将经加密的即时消息返回至交谈服务器306。
在步骤7中,交谈服务器306将经加密的即时消息传送至数据库309以便存储于其上。在数据库309上,该即时消息作为发送消息被存储在用户102的邮箱中并且作为接收消息被存储在用户110的邮箱中。无论第二用户在通信系统100中离线还是在线,该对话的完整聊天历史都被保存。
在步骤8、9和10中,经由交谈服务器306和连接适配器108从数据库309向第一用户终端104处的客户端106传送响应消息,其指示“存储消息”操作的状态,即即时消息是否已经被存储在数据库309。如果客户端106没有接收到肯定的响应消息,则客户端106将在对话中重发该即时消息。
图3示出了其中当第一用户102向第二用户110的第二用户终端112传送即时消息时第二用户110在线的情形。在步骤11中,交谈服务器306向客户端调度器310发送识别第二用户110的查询。该查询可以包括在步骤4中在交谈服务器306处从连接适配器108所接收的第二用户110的标识。
在步骤12中,客户端调度器310查询客户端登记表312以确定第二用户110连接至哪个连接适配器并且第二用户110在哪个TCP连接上连接至连接适配器。在步骤13中,当第二用户110在通信系统100中在线时,则客户端登记表312利用第二用户110在网络中的位置向客户端调度器310进行回复。该位置由客户端114所连接的连接适配器116实例的地址所明确。
在步骤14中,即时消息从客户端调度器310发送至步骤13中所标识的连接适配器116,并且在步骤15中,即时消息通过步骤13中所标识的TCP连接从连接适配器116发送至第二用户终端112处的客户端114。
在图3所示的方法结束时,即时消息已经从第一用户终端104处的客户端106被传送至第二用户终端112处的客户端114。该即时消息已经被存储在数据库309中。该即时消息使用持久性连接经由连接适配器在客户端106和114之间进行传送。该即时消息另外可以使用通信系统100中的其它连接在客户端106和114之间进行传送。
注意到,如果在从客户端106传送意在针对于第二用户110的即时消息时第二用户110在通信系统100中不在线,则该即时消息被存储在数据库309中(例如,通过遵循图3所示的步骤1至10),但是该消息并不立即被传送至第二用户终端112。
例如,第一用户102可以开始使用第三用户终端(图1中未示出)。第一用户102随后可能想要观看其在通信系统100上的聊天历史。该聊天历史(即每个用户针对每个对话的即时消息)可以从数据库309取得。为了在第三用户终端取得该聊天历史,用户102能够从第三用户终端向数据库309传送消息更新请求。该消息更新请求可以包括在用户102的第三用户终端所接收的最后的即时消息的标识符。数据库309随后能够确定存储于其上的哪些即时消息是在该最后的即时消息在用户102的第三用户终端被接收之后的即时消息传送对话中所传送。数据库309随后能够将那些所确定的即时消息传送至第三用户终端以使得用户102能够在第三用户终端处获得其完整的聊天历史的访问。
因此,使用以上所描述的方法,能够在用户的多个客户端实例上同步聊天历史。在以上所描述的优选实施例中,这是通过将对话的即时消息存储在数据库309中所实现的,数据库309由此可由通信系统100中的不同用户终端所访问。
2. 将连接适配器用于控制增值订购服务
能够由连接适配器108和116对点对点通信提供的支持的另一示例是用于对通信系统100中的增值订购服务的支付(例如,以便进行增值通信会话)进行控制的方案。例如,为了进行多方视频呼叫(这是增值通信会话的一种类型),多方视频呼叫中的至少一个用户可以被要求具有向通信系统100订购的增值视频订购状态。通信系统100中的连接适配器100能够被用来控制通信系统100上的增值订购服务。
图4示出了与连接适配器108进行通信的客户端106。为了客户端106能够通过通信系统100进行增值服务,连接适配器108能够与通信系统100中的其它服务器进行通信以控制客户端106对增值服务的使用。例如,在客户端106试图通过通信系统100与其它客户端进行多方视频呼叫的情况下,如图4所示,连接适配器108能够与通信系统100的C++后端服务器402和数据库404进行通信。C++后端服务器402包括增值视频网关模块406和增值视频超时追踪器模块408。如图4中所描绘的,数据库404包括增值视频会话模块410、增值视频统计模块412和增值视频订购模块414。
连接适配器108能够与增值视频网关模块406进行通信。增值视频网关模块406能够与增值视频超时追踪器模块408和增值视频会话模块410进行通信。增值视频会话模块410还能够与增值视频统计模块412和增值视频订购模块414进行通信。
增值视频订购模块414保存每个用户在通信系统100中的订购状态的记录。可以在增值视频网关模块406处经由连接适配器108从客户端106接收进行多方视频呼叫的请求。增值视频网关模块406将转发该请求至增值视频会话模块410,其保存通信系统100中正在/已经活跃的增值视频会话的记录。增值视频会话模块410对增值视频订购模块414进行轮询并且如果任何意图加入多方视频呼叫的用户具有允许该多方视频呼叫进行的有效订购状态,则多方视频呼叫就被允许进行。增值视频超时追踪器模块408能够在多方视频呼叫进行时保存用户的订购状态的记录,以使得如果提供资金的用户的订购状态在多方视频呼叫期间过期,则多方视频呼叫可以被停止。在这种情况下,多方视频呼叫中的其它用户可以能够获取适当的增值订购状态以便保留该多方视频呼叫。
假设多方呼叫中所涉及的其它用户之一具有适当的订购状态,则即使用户102并不具有适当的增值订购状态,使用连接适配器108也允许客户端106将现有的多方呼叫转换为多方视频呼叫。连接适配器108能够通过如以上所描述的对C++后端服务器402和数据库404进行轮询来确定用户之一具有所要求的增值订购状态。类似地,如果为多方视频呼叫提供资金的主叫方离开该呼叫(或者如果其订购在呼叫期间过期),则连接适配器108能够对C++后端服务器402和数据库404进行轮询来确定该呼叫上的任何其它用户是否具有足够的订购状态以允许该多方视频呼叫得以进行。
在以上所描述的实施例中,客户端106与连接适配器108具有持久性连接109,由此连接适配器108是客户端106的前端服务器。通过使用连接适配器108,客户端106通过通信系统100所进行的通信可以通过一个连接(持久性连接109)进行路由,以使得客户端106每次跨通信系统100传送数据时否则被客户端106的加密握手、授权和注册所要求的资源得以被节省。在优选实施例中,这些握手授权和注册步骤仅需要执行一次,即,在建立到连接适配器108的持久性连接109时。此外,连接适配器108的标识能够被用来对要发送至客户端106的数据分组进行寻址,因为客户端106始终都连接至连接适配器108。这简化了针对客户端106的数据分组的寻址和路由,并且与使用端对端方法路由数据分组相比提供了通过网络的更为鲁棒的路径。此外,使用连接适配器108允许在使用端对端通信系统时无法使用的各种集中的功能,诸如即时消息在集中服务器上的存储以及使用用户的增值订购状态在通信系统中灵活提供以便通过通信系统100进行增值通信服务。客户端106和连接适配器108之间的持久性连接109可以被用来对客户端106和114之间的点对点通信提供支持。因此在客户端106和连接适配器108之间具有持久性连接109的好处对于本领域技术人员而言是显而易见的。
虽然已经参考优选实施例特别示出并描述了本发明,但是本领域技术人员将要理解的是,可以在形式和细节上进行各种改变而并不背离如所附权利要求所确定的本发明的范围。

Claims (20)

1.一种通信系统,包括:
用户终端;和
可在用户终端执行的客户端;
在客户端和第一前端服务器之间建立持久性连接,以对该客户端和一个或多个其它客户端之间的点对点通信提供支持;
在用户终端处,在从用户终端进行传送之前,对具有第二前端服务器的地址的通信数据进行寻址,所述一个或多个其它客户端与所述第二前端服务器保持持久性连接;以及
经由所述持久性连接向所述第一前端服务器传送通信数据,并且作为与所述一个或多个其它客户端的点对点的通信的一部分由所述第二前端服务器接收。
2.根据权利要求1的通信系统,其中该通信系统进一步被配置为使用客户端和第一前端服务器之间的持久性连接将数据分组从客户端经由该第一前端服务器传送至所述一个或多个其它客户端。
3.根据权利要求1的通信系统,其中点对点通信包括客户端和所述一个或多个其它客户端间的即时消息传送通信会话,并且其中数据分组是即时消息。
4.根据权利要求3的通信系统,其中该通信系统进一步被配置为通过以下方式而使用持久性连接来为客户端和所述一个或多个其它客户端之间的即时消息传送通信会话提供支持:
使用持久性连接经由第一前端服务器将即时消息传送至存储服务器以使得该即时消息存储在该存储服务器中。
5.根据权利要求4的通信系统,其中该通信系统进一步被配置为允许所述一个或多个其它客户端取得存储在存储服务器的即时消息。
6.根据权利要求1的通信系统,其中点对点通信包括客户端和所述一个或多个其它客户端之间的增值通信会话,其中该增值通信会话中的至少一个用户被要求具有增值订阅状态以允许该增值通信会话得以进行。
7.根据权利要求6的通信系统,其中该通信系统进一步被配置为通过以下方式而使用持久性连接对客户端和所述一个或多个其它客户端之间的增值通信会话提供支持:
经由第一前端服务器确定该增值通信会话中的至少一个用户是否具有增值订阅状态。
8.根据权利要求1的通信系统,进一步包括用于存储条目的用户状态服务器,该条目包括(i)标识客户端的用户的用户标识符以及(ii)标识客户端通过持久性连接与之相连接的第一前端服务器的前端服务器标识符。
9.根据权利要求8的通信系统,其中该通信系统被配置为使得所述条目响应于客户端使用持久性连接而连接至第一前端服务器而被传送至用户状态服务器以便存储于其上。
10.根据权利要求1的通信系统,其中从客户端传送至第一前端服务器的数据分组包括服务标识符,并且其中第一前端服务器被配置为使用该服务标识符确定要将该数据分组传送至通信系统中所述一个或多个其它客户端的哪个/些。
11.根据权利要求10的通信系统,其中数据分组是用于至所述一个或多个其它客户端的通信的即时消息的至少一部分,并且服务标识符将数据分组标识为即时消息的至少一部分,以使得第一前端服务器能够确定将数据分组传送到所述一个或多个其它客户端。
12.根据权利要求10的通信系统,其中数据分组是针对至第二前端服务器的通信的服务请求,并且其中服务标识符将数据分组标识为服务请求,以使得第一前端服务器能够确定将数据分组传送到第二前端服务器。
13.根据权利要求1的通信系统,其中持久性连接是传输控制协议(TCP)连接。
14.一种通信方法,该通信方法包括:
建立客户端和第一前端服务器之间的持久性连接以为该客户端和一个或多个其它客户端之间的点对点通信提供支持;
在用户终端处,在从用户终端进行传送之前,对具有第二前端服务器的地址的通信数据进行寻址,所述一个或多个其它客户端与所述第二前端服务器保持持久性连接;以及
经由所述持久性连接向所述第一前端服务器传送通信数据的数据分组,并且作为与所述一个或多个其它客户端的点对点的通信的一部分由所述第二前端服务器接收。
15.根据权利要求14的通信方法,其中经由前端服务器传送至客户端的数据分组使用第一前端服务器的标识符和该客户端和第一前端服务器之间的持久性连接的标识符被进行寻址。
16.根据权利要求14的通信方法,进一步包括:
向用户状态服务器传送条目,并且
将该条目存储在用户状态服务器,其中所述条目包括(i)标识客户端用户的用户标识符以及(ii)标识客户端通过持久性连接与之相连接的第一前端服务器的前端服务器标识符。
17.根据权利要求16的通信方法,其中所述向用户状态服务器传送条目的步骤是响应于客户端使用持久性连接而连接至第一前端服务器来执行的。
18.根据权利要求16的通信方法,进一步包括:
所述一个或多个其它客户端向用户状态服务器发送查询以取得所述条目;
所述一个或多个其它客户端使用所述用户标识符和所述前端服务器标识符来识别第一前端服务器;并且
所述一个或多个其它客户端经由第一前端服务器传送意在针对客户端的不同的数据分组。
19.根据权利要求14的通信方法,其中数据分组是作为通信会话的一部分的消息。
20.根据权利要求14的通信方法,其中数据分组包括用于该客户端和一个或多个其它客户端之间的呼叫中使用的呼叫数据。
CN201180042628.2A 2010-09-02 2011-09-02 通信系统以及用于通过该通信系统进行通信的方法 Expired - Fee Related CN103069782B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
GB1014616.5 2010-09-02
GB1014616.5A GB2483280A (en) 2010-09-02 2010-09-02 Point-to-point communication with persistent connection to front-end server
PCT/EP2011/065234 WO2012028731A1 (en) 2010-09-02 2011-09-02 Communication system and method for communicating over a communication system

Publications (2)

Publication Number Publication Date
CN103069782A CN103069782A (zh) 2013-04-24
CN103069782B true CN103069782B (zh) 2016-11-09

Family

ID=43013592

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180042628.2A Expired - Fee Related CN103069782B (zh) 2010-09-02 2011-09-02 通信系统以及用于通过该通信系统进行通信的方法

Country Status (5)

Country Link
US (1) US20120059888A1 (zh)
EP (1) EP2596616A1 (zh)
CN (1) CN103069782B (zh)
GB (1) GB2483280A (zh)
WO (1) WO2012028731A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103200102B (zh) * 2012-01-09 2018-02-13 中兴通讯股份有限公司 一种业务路由方法、装置和系统
CN108289055B (zh) * 2018-01-05 2021-04-02 创盛视联数码科技(北京)有限公司 一种基于Redis订阅服务的分布式实时聊天系统及方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1685677A (zh) * 2002-09-24 2005-10-19 捷讯研究有限公司 无线即时消息传送系统及方法
CN1798039A (zh) * 2004-12-30 2006-07-05 朗迅科技公司 用于实现与无线网络持续连接的方法和装置
CN1852381A (zh) * 2006-05-30 2006-10-25 四川长虹电器股份有限公司 多媒体通信方法

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8001190B2 (en) * 2001-06-25 2011-08-16 Aol Inc. Email integrated instant messaging
US6944166B1 (en) * 2000-08-09 2005-09-13 Nortel Networks Limited Method for controlling service levels over packet based networks
CN1309266C (zh) * 2002-06-06 2007-04-04 摩托罗拉公司(在特拉华州注册的公司) 用于自组织通信网络中的移动节点的协议和结构
US7269629B2 (en) * 2002-12-30 2007-09-11 Intel Corporation Method and apparatus for distributing notification among cooperating devices and device channels
US7774495B2 (en) * 2003-02-13 2010-08-10 Oracle America, Inc, Infrastructure for accessing a peer-to-peer network environment
WO2006125454A1 (en) * 2005-05-23 2006-11-30 Telefonaktiebolaget L.M. Ericsson (Publ.) Traffic diversion in an ethernet-based access network
US20070140246A1 (en) * 2005-12-15 2007-06-21 Bala Rajagopalan Dynamic quality of service (QoS) provisioning in wireless networks
US8224919B2 (en) * 2007-04-04 2012-07-17 Research In Motion Limited Mobile communications system including intermediate service provider and related methods
US8542804B2 (en) * 2008-02-08 2013-09-24 Voxer Ip Llc Voice and text mail application for communication devices
US8396490B2 (en) * 2009-12-17 2013-03-12 Pokos Communications Corp Method and system for transmitting and receiving messages

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1685677A (zh) * 2002-09-24 2005-10-19 捷讯研究有限公司 无线即时消息传送系统及方法
CN1798039A (zh) * 2004-12-30 2006-07-05 朗迅科技公司 用于实现与无线网络持续连接的方法和装置
CN1852381A (zh) * 2006-05-30 2006-10-25 四川长虹电器股份有限公司 多媒体通信方法

Also Published As

Publication number Publication date
EP2596616A1 (en) 2013-05-29
WO2012028731A1 (en) 2012-03-08
US20120059888A1 (en) 2012-03-08
GB2483280A (en) 2012-03-07
GB201014616D0 (en) 2010-10-13
CN103069782A (zh) 2013-04-24

Similar Documents

Publication Publication Date Title
US20060194596A1 (en) System and method for direct peer to peer mobile messaging
CN104836723B (zh) 基于mqtt主题订阅机制的通信方法以及接入网关
CN103069755B (zh) 使用多个客户端实例的即时消息传送的方法和系统
EP2710776B1 (en) Anonymous signalling
US20060167897A1 (en) Administration of a broker-based publish/subscribe messaging system
CN106210049B (zh) 一种基于消息队列的集群通信方法及系统
AU2001296185A1 (en) Configuration of a flexible infrastructure
EP1334582A1 (en) Configuration of a flexible infrastructure
US20130035079A1 (en) Method and system for establishing data commuication channels
CN110266810A (zh) 基于mqtt协议的消息接收方法、设备及存储介质
US20130282838A1 (en) Group sms messaging
US20060093119A1 (en) Leveraging real-time communications client
CN105681260A (zh) 传输云存储文件的方法、融合通信平台、发送端及系统
US10567183B2 (en) System and method for conference messaging between telephony devices in a first network and devices connected to a second network
KR100702704B1 (ko) 메신저를 이용한 알림 시스템 및 방법
CN107835445A (zh) 基于mqtt协议的电视控制方法、移动终端及电视
CN105207860A (zh) 一种业务加速系统及方法
CN203504603U (zh) 移动互联网语音社区的服务器架构
CN103069782B (zh) 通信系统以及用于通过该通信系统进行通信的方法
CN107343285B (zh) 一种管理设备及设备管理方法
JP2006520950A (ja) インターネットのような電気通信網内でのインスタントメッセージングサービスに対する選択的出席管理方法
CN105376727A (zh) 数据卡处理方法及装置
US11025683B2 (en) Method of implementing a communications session between a plurality of terminals
EP2619942B1 (en) System and method for conference messaging between universal plug and play enabled telephony devices and wan devices
JP3751301B2 (ja) 多ノード通信システム

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20161109

Termination date: 20190902

CF01 Termination of patent right due to non-payment of annual fee