用于建立实时通信会话的通信系统转让专利

申请号 : CN201280033975.3

文献号 : CN103650455B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : R.森卡拉A.马科夫

申请人 : 微软技术许可有限责任公司

摘要 :

描述了一种用于改进移动用户之间的实时视频会话的体验质量(QoE)的计算机实施的系统和方法。例如,根据本发明的一个实施例的方法包括:通过流服务器经由因特网在服务提供商网络的周边上配置一个或多个中继服务器;在所述流服务器处,从第一移动设备接收与第二移动设备建立实时通信会话的请求;所述流服务器随后给所述第一和第二移动设备提供用于经由所述中继服务器进行连接的联网信息,所述中继服务器靠近所述第一和第二移动设备中的至少一个被定位;以及通过所述中继服务器来建立所述实时通信会话。

权利要求 :

1.一种用于建立实时通信会话的方法,其包括:

在流服务上从第一移动设备接收与第二移动设备建立实时通信会话的请求;以及响应于所述请求,给所述第一和第二移动设备提供用于连接到位于服务提供商网络的子网络内的一个或多个中继服务器的联网信息,所述服务提供商网络的子网络在将所述子网络通过因特网连接到流服务的外部防火墙之内侧;所述联网信息使移动设备能够通过所述子网络内的所述一个或多个中继服务器进行所述实时通信会话。

2.如权利要求1中所述的方法,其中接收进一步包括:

在被配置成实施流服务的流服务器处接收所述请求,所述流服务器位于所述服务提供商网络之外,以及向位于在所述服务提供商网络之外的所述流服务器注册所述一个或多个中继服务器。

3.如权利要求1中所述的方法,其中所述实时通信会话包括实时、双向视频通信会话。

4.如权利要求1中所述的方法,其中所述联网信息包括所述一个或多个中继服务器的IP地址。

5.如权利要求1中所述的方法,其中所述服务提供商包括蜂窝服务提供商。

6.如权利要求1中所述的方法,其中两个或更多个中继服务器被用来建立所述实时通信会话,其中所述中继服务器中的第一个(a)直接地与所述移动设备中的第一个进行通信并且所述中继服务器中的第二个直接地与所述移动设备中的第二个进行通信以及其中所述第一和第二中继服务器在彼此之间建立套接口连接,或者(b)从所述移动设备中的第一个接收输入流并且将所述输入流路由到所述移动设备中的第二个以及其中所述中继服务器中的第二个从所述移动设备中的所述第二个接收输入流并且将所述输入流路由到所述移动设备中的所述第一个。

7.如权利要求1中所述的方法,其中所述中继服务器被配置在所述第一和第二移动设备被连接到的电话子网络上。

8.一种用于建立实时通信会话的设备,其包括:

用于在流服务上从第一移动设备接收与第二移动设备建立实时通信会话的请求的装置;以及用于响应于所述请求,给所述第一和第二移动设备提供用于连接到位于服务提供商网络的子网络内的一个或多个中继服务器的联网信息的装置,所述服务提供商网络的子网络在将所述子网络通过因特网连接到流服务的外部防火墙之内侧;所述联网信息使移动设备能够通过所述子网络内的所述一个或多个中继服务器进行所述实时通信会话。

说明书 :

用于建立实时通信会话的通信系统

技术领域

[0001] 本发明一般地涉及数据联网的领域。更特别地,本发明涉及一种改进的数据通信系统。

背景技术

[0002] 因特网用户如今可以使用各种各样的不同的客户端应用来进行通信,所述客户端应用包括实时消息传送应用(例如,即时消息传送或“聊天”应用)和实时双向视频应用。例如,特定客户端应用(诸如,例如,由Qik公司所开发的“Qik”客户端)允许用户通过3G和4G蜂窝电话网络参与双向实况视频聊天。
[0003] 图1a-b说明了其中两个移动设备101-102参与双向视频聊天的示范性配置。图1a说明用来建立双向视频连接的控制/信令数据路由以及图1b说明在两个移动设备101-102之间正被传送的媒体数据(即,实际的视频流)。控制/信令典型地使用传输控制协议(TCP)或用户数据报协议(UDP)网络传输被承载,并且媒体数据典型地使用UDP网络传输被承载。
[0004] 如所说明的那样,由控制/信令和媒体数据两者所采取的路径包括可以为标准无线蜂窝网络(例如,诸如3G或4G网络)的电话子网络105。电话子网络105经由路由器110被连接到服务子网络115。服务子网络是用来支持移动数据业务量(traffic)并且经由外部防火墙120通过因特网125来路由数据业务量的数据网络。电话子网络105和服务子网络115被诸如T-MobileTM、AT&TTM或VerizonTM之类的无线服务提供商维护。
[0005] 当前,为了使得能实现移动设备101-102之间的实时视频对话,移动设备中的每一个都必须通过因特网125被连接到公共的一组流服务器150。每个移动设备101-102打开它自己的到流服务器105的UDP数据报套接口(socket),并且流服务器然后通过适当的数据报套接口来路由包含视频内容的数据报。例如,流服务器150通过移动设备102的数据报套接口连接来路由从移动设备101接收到的视频并且反之亦然。
[0006] 这个配置的一个缺点是:因为每个移动设备101-102必须通过因特网125连接到流服务器,所以显著的延迟可能被引入。因此,在移动设备101-102之间路由视频的更高效的方式将是期望的。

附图说明

[0007] 对本发明的更好理解能够结合以下附图从以下的具体实施方式获得,在以下附图中:
[0008] 图1a-b说明了用于在两个移动设备之间建立实时视频会话的当前技术。
[0009] 图2a-b说明了依照本发明的一个实施例的用于通过在服务提供商的网络的周边上放置中继服务器来改进延迟的技术。
[0010] 图3说明了定位于在经由WiFi连接连接的移动设备与经由蜂窝连接(例如,3G或4G连接)连接的移动设备之间路由视频内容的服务提供商的网络的周边上的中继服务。
[0011] 图4a-4b说明了其中多个中继服务器被用来建立移动设备之间的通信的两个不同的实施例。

具体实施方式

[0012] 在以下描述中,出于解释的目的,许多特定细节被阐述以便提供对在下面所描述的本发明的实施例的透彻理解。然而,对于本领域的技术人员将明显的是,本发明的实施例可以在没有这些特定细节中的一些的情况下被实践。例如,本发明的实施例在实时视频应用的上下文内在下面被描述,本发明的根本原理不限于任何特定类型的媒体通信。附加地,虽然讨论在下面集中于特定的服务提供商网络,但是本发明的根本原理适用于任何形式的无线电网络上的实施方案。最后,在一些实例中,众所周知的结构和设备被以框图形式示出以便避免使本发明的实施例的根本原理模糊不清。
[0013] 本发明的一个实施例通过将一组网内中继部署在服务提供商网络的周边来改进终端用户在进行实时视频会话时的体验质量。具体地,如图2a-b中所说明的那样,在这个实施例中,中继服务被配置成在将服务子网络115连接到因特网125的防火墙120之内通过服务子网络115进行通信。
[0014] 图2a说明了用来建立中继连接的控制/信令数据路由。安装在移动设备101-102上的客户端应用在这个控制/信令阶段期间发现这些网内中继服务器151。在一个实施例中,每个网内中继服务器151使用出站连接被向流服务器150注册。在一个实施例中,发起视频会话的移动设备101最初连接到流服务器150,所述流服务器150然后将连接到中继服务所需的网络信息(例如,IP地址和端口)提供给客户端101-102两者。
[0015] 在一个实施例中,在网络上相对地“接近”一个或两个移动设备101、102的中继服务器151被流服务器150选择。注意,中继服务器151与移动设备101、102的接近可以基于提供给流服务器150的网络信息(例如,移动设备和/或中继服务器151的TCP/IP地址)而被确定。每个中继服务器的位置可以被向流服务器150注册,并且流服务器150可以使用这个信息来确定用于服务每个请求的最好中继服务器。诸如中继服务器151中的每一个上的当前负荷之类的其它信息也可以成为决定的重要因素。
[0016] 一旦两个移动设备101-102具有网络信息,它们就连接到中继服务器151,其建立所述设备之间的实时视频会话,如图2b中所说明的那样。在一个实施例中,移动设备101-102与中继服务器151之间的媒体连接包括UDP数据报套接口。中继服务器151通过第一UDP数据报套接口从移动设备101接收在数据报中打包的视频内容,并且通过第二UDP数据报套接口将数据报路由到移动设备102,所述移动设备102然后从UDP数据报中提取并且解码视频内容。相反地,中继服务器151通过第二UDP数据报套接口从移动设备102接收在数据报中打包的视频,并且通过第一UDP数据报套接口将数据报路由到移动设备101,所述移动设备
101然后从UDP数据报中提取并且解码视频内容。
[0017] 在一个实施例中,路由器110是用于将网络分组路由到适当的目的地的众所周知的设备,所述目的地如由存储在每个分组头部中的目的地址所标识的。例如,移动设备101、102在将连接请求发送到流服务器150时可以使用流服务器150的TCP/IP地址。路由器110然后会将所述请求路由到适当的目的地。
[0018] 当图2a-b中所示出的本发明的实施例与图1a-b中所示出的实施方案进行比较时,有益效果是清楚的。因为媒体流不需要穿过外部防火墙120和通过因特网125来传递,所以延迟被显著地降低了,从而改进了针对终端用户的QoE。通过例子,而不是限制,当前测试示出了从252 ms到110 ms的延迟降低。
[0019] 虽然上面所描述的实施例使用UDP数据报,但是应注意,本发明的根本原理不限于任何特定的网络通信协议。
[0020] 图3说明了中继服务器151还可以如何被用来在经由WiFi连接连接的移动设备102与经由蜂窝连接(例如,3G或4G连接)连接的移动设备101之间建立双向视频会话。在这个实施例中,两个设备中的一个可以最初联系流服务器150以建立该视频会话。流服务器150然后可以通知被呼叫方并且提供两个移动设备101-102与中继服务151连接所需的联网信息。中继服务151然后管理如上面所描述的实时视频会话(例如,与相应设备101-102中的每一个建立UDP数据报套接口) 。为了与经由WiFi连接的移动设备102进行通信,中继服务器151打开通过外部防火墙120的UDP洞(hole)160。用于建立通过防火墙的UDP洞的技术是众所周知的,并且因此将不在本文中详细地描述。
[0021] 在图3中所示出的特定实施方案中,移动设备102通过企业WLAN 127经由WiFi链路而被连接,所述企业WLAN 127经由企业NAT/防火墙被连接到因特网125。虽然这可以表示公共配置,但是这样的配置对于遵照本发明的根本原理来说不是必需的。
[0022] 在一个实施例中,多个中继服务器可以被设置在遍及服务提供商的网络的周边的方便位置处。附加地,多个中继服务器可以被用来支持跨越不同服务提供商的服务子网络的通信。
[0023] 图4a说明了其中中继服务器151和中继服务器152与彼此进行通信以便在移动设备101与102之间路由UDP数据报的一个实施例。如在在先实施例中一样,发起连接的移动设备101可以首先联系流服务器150。作为响应,流服务器150给移动设备101提供与中继服务器151连接所需的联网信息并且给移动设备102提供与中继服务器152连接所需的联网信息。在连接时,中继服务器151-152然后在彼此之间建立UDP数据报套接口以便路由包含视频数据的UDP数据报业务量。
[0024] 图4b说明了替代实施方案,其中中继服务器151从移动设备101接收包含视频数据的UDP数据报业务量并且将它路由到移动设备102,以及第二中继服务器152从移动设备102接收包含视频数据的UDP数据报业务量并且将它路由到移动设备101。如在上面所描述的实施例中一样,可能需要到流服务器150的初始连接以便检索与两个中继服务器151-152连接所需的联网信息。
[0025] 虽然中继服务器151-152在以上讨论中被配置在服务子网络内,但是在其它实施例中,一些中继服务器可以被配置在电话子网络105-106内。在这样的情况下,如果两个移动设备被连接到相同的子网络,则在该子网络上的中继服务器可以被用来连接设备。然而,如果移动设备是在不同的电话子网络上,则在服务子网络115上的中继服务器可以被选择。
[0026] 在前面的说明书中,已经参考本发明的特定示范性实施例描述了本发明。将明显的是,在不背离如在以下权利要求中所阐述的本发明的更广泛精神和范围的情况下可以对此作出各种修改。本说明书和附图因此将以说明性意义而不是约束性意义被考虑。
[0027] 本发明的实施例可以包括如上面所阐述的各种步骤。步骤可以被具体化为使通用或专用处理器执行特定步骤的机器可执行指令。替换地,这些步骤可以通过包含用于执行步骤的硬连线逻辑(hardwired logic)的特定硬件构件、或者通过程序化的计算机构件和定制的硬件构件的任何组合来执行。本发明的元素还可以被提供为用于存储机器可执行程序代码的机器可读介质。机器可读介质可以包括但不限于软盘、光盘、CD-ROM以及磁光盘、ROM、RAM、EPROM、EEPROM、磁或光学卡、或适于存储电子程序代码的其它类型的媒体/机器可读介质。
[0028] 遍及前面的描述,出于解释的目的,许多特定细节被阐述以便提供对本发明的透彻理解。然而,对于本领域的技术人员而言将明显的是,本发明可以在没有这些特定细节中的一些的情况下被实践。例如,对于本领域的技术人员而言将容易地明显的是,本文中所描述的功能模块和方法可以被实施为软件、硬件或其任何组合。而且,尽管本发明的一些实施例在本文中在客户端P2P应用的上下文内被描述了,但是本发明的根本原理可以以服务器应用或任何其它形式的客户端应用的形式被实施。因此,应当按照跟随的权利要求来判断本发明的范围和精神。