用于经由无线网络接收共享数据和不被共享的数据的方法、装置和计算机程序产品的利记博彩app

文档序号:7991312阅读:296来源:国知局
用于经由无线网络接收共享数据和不被共享的数据的方法、装置和计算机程序产品的利记博彩app
【专利摘要】给出了用于协作式数据传输的各种安排。这些安排可以包括第一移动设备被配置为经由第一无线网络来接收第一共享数据集合。可以在使用第二无线网络的多个移动设备之间共享第一共享数据集合。第一移动设备还可以经由第一无线网络来接收第一私有数据集合,其中所述第一私有数据集合旨在针对于第一移动设备。不在所述多个移动设备之间共享第一私有数据集合。
【专利说明】用于经由无线网络接收共享数据和不被共享的数据的方法、装置和计算机程序产品
【背景技术】
[0001]诸如无线蜂窝网络之类的网络不提供无限的带宽。在网络上使用与远程计算机的通信的运行中的应用可能由于受限的可用网络带宽而减速或者不能正确地运行。此外,成本与在网络上发送的数据相关联。在一些情形下,在网络上发送的数据的量越少,对于用户而言的成本越低。减少在网络上交换的数据量可以使应用更加快速、更加高效地运行,和/或为用户省钱。

【发明内容】

[0002]描述了用于协作式数据传输的系统、方法、设备、装置和计算机程序产品。被配置为用于协作式数据传输的移动设备的例子包括处理器,所述处理器被配置为分析第一共享数据集合。所述第一共享数据集合可以是使用第一通信技术经由第一无线网络来接收的。所述移动设备可以被配置为与至少一个其它移动设备相通信。所述第一共享数据集合对于在至少一个其它移动设备上运行的应用可以是公共的。所述处理器可以被配置为确定要将所述第一共享数据集合与所述至少一个其它移动设备共享。所述处理器可以被配置为分析第一私有数据集合。所述第一私有数据集合旨在针对于所述移动设备。所述第一私有数据集合可以是经由所述第一无线网络来接收的。所述处理器可以被配置为确定不将所述第一私有数据集合与所述至少一个其它移动设备共享。所述处理器可以被配置为使所述第一共享数据集合要经由第二通信技术被发送给所述至少一个其它移动设备。所述第一通信技术和所述第二通信技术可以是不同的通信技术。
[0003]这种移动设备的实施例可以包括下面中的一项或多项:所述第一网络是无线蜂窝网络,所述第二通信技术使用本地无线网络;所述移动设备使用所述至少一个其它移动设备的IP地址;所述移动设备充当针对所述至少一个其它移动设备的无线接入点;共享数据是在游戏服务器和所述移动设备之间的多径传输连接上来传送的,所述多径传输连接包括使用所述第一通信技术的第一路径以及使用所述第二通信技术的经由所述至少一个其它移动设备的第二路径;私有数据是在游戏服务器和所述移动设备之间的多径传输连接上来传送的,所述多径传输连接包括使用所述第一通信技术的第一路径以及使用所述第二通信技术的经由所述至少一个其它移动设备的第二路径;当旨在针对于所述至少一个其它移动设备的第二私有数据集合由所述移动设备来分析时,所述第二私有数据集合处于加密的形式;所述第二通信技术包括本地无线协议的使用;所述移动设备包括蜂窝电话;所述移动设备还包括:被配置为使用所述第一通信技术来通信的第一无线通信接口以及被配置为使用所述第二通信技术来通信的第二无线通信接口。
[0004]用于协作式数据传输的方法的例子可以包括:由第一移动设备经由第一无线网络接收第一共享数据集合。所述第一共享数据集合对于在多个移动设备上运行的应用是公共的。所述第一无线网络可以使用第一通信技术。所述多个移动设备可以包括所述第一移动设备和第二移动设备。所述方法可以包括由所述第一移动设备确定所述第一共享数据集合要被发送给所述多个移动设备中的每一个其它移动设备。所述方法可以包括由所述第一移动设备经由所述第一无线网络接收第一私有数据集合。所述第一私有数据集合旨在针对于所述第一移动设备。不在所述多个移动设备之间共享所述第一私有数据集合。所述方法可以包括由所述第一移动设备确定所述第一私有数据集合不被发送给所述多个移动设备中的每一个其它移动设备。所述方法可以包括由所述第一移动设备经由第二通信技术向所述多个移动设备中的每一个其它移动设备发送所述第一共享数据集合。所述第一通信技术和所述第二通信技术是分开的通信技术。
[0005]这种方法的实施例可以包括下面中的一项或多项:由所述第一移动设备经由所述第一无线网络来接收第二私有数据集合,其中所述第二私有数据集合包括所述第二私有数据集合旨在针对于所述第二移动设备的指示;由所述第一移动设备经由所述第二通信技术向所述第二移动设备发送所述第二私有数据集合;所述第一移动设备使用所述第二移动设备的IP地址;所述第一移动设备充当针对所述第二移动设备的无线接入点;共享数据是在游戏服务器和所述第一移动设备之间的多径传输连接上来传送的,所述多径传输连接包括经由所述第一通信技术的第一路径以及经由所述第二通信技术的第二路径;私有数据是在游戏服务器和所述第一移动设备之间的多径传输连接上来传送的,所述多径传输连接包括经由所述第一通信技术的第一路径以及经由所述第二移动设备和所述第二通信技术的第二路径;当旨在针对于至少一个其它移动设备的第二私有数据集合由所述移动设备来分析时,所述第二私有数据集合处于加密的形式;由所述第二移动设备经由第三无线网络接收第二共享数据集合,其中要在所述多个移动设备之间共享所述第二共享数据集合;由所述第二移动设备经由所述第二通信技术向所述多个移动设备中的每一个其它移动设备发送所述第二共享数据集合;所述第一共享数据集合的大小与所述第二共享数据集合的大小的比例至少部分地基于所述第一移动设备和所述第一无线网络之间的带宽与所述第二移动设备和所述第二通信技术之间的带宽的比例;所述第三无线网络和所述第一无线网络是相同的无线网络;所述第一网络是无线蜂窝网络,所述第二通信技术使用本地无线协议;所述第二通信技术使用本地无线网络;协作式数据传输允许要在操作所述第一移动设备和所述第二移动设备的用户之间玩游戏。
[0006]用于协作式数据传输的装置的例子可以包括第一单元,所述第一单元用于经由第一通信技术接收第一共享数据集合和第一私有数据集合。所述第一共享数据集合对于在至少一个其它装置上运行的应用是公共的。所述装置可以包括第二单元,所述第二单元用于分析所述第一共享数据集合和所述第一私有数据集合。可以与所述至少一个其它装置共享所述第一共享数据集合。不可以与至少一个其它装置共享所述第一私有数据集合。所述装置可以包括第三单元,所述第三单元用于判断是否共享所述第一共享数据集合或者所述第一私有数据集合。所述第一私有数据集合可以被确定为不与所述至少一个其它装置共享。所述第一共享数据集合可以被确定为要与所述至少一个其它装置共享。所述装置可以包括第四单元,所述第四单元用于经由第二通信技术向所述至少一个其它装置发送所述第一共享数据集合。所述第一通信技术和所述第二通信技术可以是分开的通信技术。
[0007]这种装置的实施例可以包括下面中的一项或多项:由所述装置接收的共享数据的量至少部分地基于所述装置和第一无线网络之间的带宽;所述装置使用所述至少一个其它装置的IP地址;所述装置充当针对所述至少一个其它装置的无线接入点;所述第一通信技术使用无线蜂窝网络,所述第二通信技术使用本地无线网络;所述第一单元还被配置用于经由所述第一通信技术来接收第二私有数据集合,其中所述第二私有数据集合包括所述第二私有数据集合旨在针对于另一个装置的指示;所述第四单元还被配置为用于经由所述第二通信技术来向另一个装置发送所述第二私有数据集合;所述装置允许要在与所述装置进行交互的第一用户和与另一个装置进行交互的第二用户之间玩游戏,所述另一个装置经由所述第二通信技术与所述装置通信。
[0008]位于非暂时性处理器可读介质上以及包括处理器可读指令的用于协作式数据传输的计算机程序产品的例子可以包括:用于分析经由第一无线网络接收的第一共享数据集合的指令。所述第一无线网络可以使用第一无线技术。可以在多个移动设备之间共享所述第一共享数据集合。所述多个移动设备可以包括第一移动设备和第二移动设备。所述第一共享数据集合对于在所述多个移动设备上运行的应用是公共的。所述指令还可以包括用于确定要在所述多个移动设备之间共享的指令所述第一共享数据集合。所述指令还可以包括用于分析经由所述第一无线网络接收的第一私有数据集合的指令。所述第一私有数据集合可以是旨在针对于所述第一移动设备。不可以在所述多个移动设备之间共享所述第一私有数据集合。所述指令还可以包括用于确定不在所述多个移动设备之间共享的指令所述第一私有数据集合。所述指令还可以包括用于使所述第一共享数据集合经由第二无线技术要被发送给所述多个移动设备中的每一个其它移动设备的指令。所述第一无线技术和所述第二无线技术可以是不同的无线技术。
[0009]这种计算机程序产品的实施例可以包括下面中的一项或多项:由所述处理器分析的共享数据的量至少部分地基于与所述第一无线网络的带宽;所述第二通信技术使用本地无线协议;用于分析经由所述第一无线技术接收的第二私有数据集合的指令,其中所述第二私有数据集合包括所述第二私有数据集合旨在针对于所述第二移动设备的指示;用于使所述第二私有数据集合经由所述第二无线技术要被发送给所述第二移动设备的指令;所述计算机程序产品结合要在操作所述第一移动设备的第一用户和操作所述第二移动设备的第二用户之间玩游戏来运行。
[0010]用于协作式数据传输的系统的例子可以包括计算机系统,所述计算机系统被配置为确定要在多个移动设备之间共享第一共享数据集合。所述第一共享数据集合对于在所述多个移动设备上运行的应用是公共的。所述计算机系统可以被配置为经由第一无线网络向第一移动设备发送所述第一共享数据集合。所述多个移动设备可以包括所述第一移动设备。所述第一共享数据集合可以包括指示要在所述多个移动设备之间共享所述第一共享数据集合的指示符。所述计算机系统可以被配置为确定第一私有数据集合仅仅旨在针对于所述第一移动设备。所述计算机系统可以被配置为经由所述第一无线网络向所述第一移动设备发送所述第一私有数据集合。
[0011]这种系统的实施例可以包括下面中的一项或多项:所述远程计算机系统被配置为与所述多个移动设备中的第二移动设备和所述远程计算机系统之间的第二数量的带宽相t匕,至少部分地基于所述第一移动设备和所述远程计算机系统之间的第一数量的带宽,从所述多个移动设备中选择所述第一移动设备以接收所述第一共享数据集合;所述远程计算机系统还被配置为确定第二私有数据集合旨在针对于所述多个移动设备中的第二移动设备,但所述第二私有数据集合要被发送给所述第一移动设备,以及向所述第一移动设备发送所述第二私有数据集合;所述第一移动设备被配置为分析所述第一共享数据集合,其中所述第一共享数据集合是使用第一通信技术经由所述第一无线网络来接收的;所述第一移动设备被配置为确定要在所述多个移动设备之间共享所述第一共享数据集合;所述第一移动设备被配置为分析所述第一私有数据集合,其中所述第一私有数据集合旨在针对于所述第一移动设备,以及所述第一私有数据集合是经由所述第一无线网络来接收的;所述第一移动设备被配置为确定不与所述多个移动设备共享所述第一私有数据集合;所述第一移动设备被配置为经由第二通信技术来向所述多个移动设备中的其它移动设备发送所述第一共享数据集合,其中所述第一通信技术和所述第二通信技术是不同的通信技术;第二移动设备,其被配置为经由所述第二通信技术从所述第一移动设备来接收所述第一共享数据集合;所述远程计算机系统还被配置为确定要在所述多个移动设备之间共享第二共享数据集合,其中所述第二共享数据集合对于在所述多个移动设备上运行的所述应用是公共的;所述远程计算机系统被配置为经由第二无线网络来向所述第二移动设备发送所述第二共享数据集合,其中所述多个移动设备包括所述第二移动设备;所述远程计算机系统被配置为确定第二私有数据集合仅仅旨在针对于所述第二移动设备;以及经由所述第二无线网络向所述第二移动设备发送所述第二私有数据集合;所述第二移动设备还被配置为分析所述第二共享数据集合,所述第二共享数据集合是使用第三通信技术经由所述第二无线网络来接收的;所述第二移动设备被配置为确定要在所述多个移动设备之间共享所述第二共享数据集合;所述第二移动设备被配置为分析所述第二私有数据集合,其中所述第二私有数据集合旨在针对于所述第二移动设备,所述第二私有数据集合是经由所述第二无线网络来接收的;所述第二移动设备被配置为确定不将所述第二私有数据集合与所述多个移动设备共享;以及所述第二移动设备被配置为经由所述第二通信技术向所述多个移动设备中的其它移动设备发送所述第二共享数据集合。
【专利附图】

【附图说明】
[0012]图1是协作式数据传输系统的示意图。
[0013]图2是另一种协作式数据传输系统的示意图。
[0014]图3是具有多个通信系统层的协作式数据传输系统的框图。
[0015]图4是用于由协作式数据传输系统的设备对数据进行处理的方法的流程框图。
[0016]图5是用于由协作式数据传输系统的设备对数据进行处理的另一种方法的流程框图。
[0017]图6是用于向远程计算机系统提供协作式数据传输系统的特性的指示的方法的流程框图。
[0018]图7是计算机系统的框图。
【具体实施方式】
[0019]在第一移动设备(例如,蜂窝电话、智能电话、平板计算机、膝上型计算机)上运行的应用可以使用与接近第一移动设备的第二移动设备上运行的应用(很可能相同的应用)相同的数据的一些或者全部。举例而言,彼此靠近的两个或更多用户可以互相与对方玩多人视频游戏。为了运行,应用可以使用要在各移动设备和远程计算机系统(诸如游戏服务器)之间交换的信息。按照惯例,为了在各移动设备上运行的应用和远程计算机系统之间交换数据,经由网络(诸如因特网)从远程计算机系统向无线蜂窝网络发送数据,所述无线蜂窝网络向各移动设备提供服务。随后,无线蜂窝网络将数据发送给相关联的移动设备。可以经由相反的路由从各移动设备向远程服务器发送数据。
[0020]在一些环境下,诸如由使用两个移动设备的两个用户玩的多人游戏,在各移动设备上运行的应用使用相同数据中的至少一部分数据。例如,在玩游戏期间,在各移动设备上运行的应用可以播放共同的声道。按照惯例,远程服务器要将共同的声道数据发送两次:向参与游戏的每一个移动设备发送一次。因此,即使数据是相同的(或者差不多相同的),数据被指定针对的移动设备是不同的,因此,远程计算机系统在一个或多个网络上将共同的数据发送两次,以将远程计算机系统与每一个移动设备相连接。如果两个以上的移动设备参与游戏,则将相同的数据发送额外的次数。
[0021]替代多次地发送所述共同的数据,数据被指示为“共享的”数据以及由远程计算机系统来仅向移动设备中的一个移动设备进行发送。与用于向转发的移动设备提供数据的网络相比,已经接收到共享数据的移动设备可以使用不同的网络(诸如本地无线网络)向其它参与的移动设备发送共享数据。例如,第一移动设备可以经由3G蜂窝网络从远程计算机系统接收共享数据,所述3G蜂窝网络具有有限的带宽和/或需要第一移动设备的用户为网络接入进行付费。在接收到共享数据之后,第一移动设备经由本地无线网络(诸如WiFi网络(例如,702.11 (a)/(b)/(g)/(η))、蓝牙或者WiFi直接型)向其它参与的移动设备发送共享数据。所述本地无线网络可以具有更大的可用带宽和/或不需要用户为接入进行付费。
[0022]在每一个移动设备经由本地无线网络相通信以及还与另一个无线网络(诸如蜂窝无线网络)相通信的情形中,由远程服务器发送的共享数据可以仅发送给移动设备中的一个移动设备,或者可以在移动设备中的几个移动设备之间进行分割。例如,如果参与多人游戏的、互相物理接近的三个移动设备的组中的每一个移动设备使用提供类似的带宽量的蜂窝网络,则可以向每一个移动设备发送共享数据的三分之一,伴随着每一个移动设备负责经由本地无线网络向其它移动设备发送其所接收的共享数据。因此,远程计算机系统不发送重复的数据,以及每一个移动设备接收和分发共享数据的一部分,因此减少了每一个移动设备使用的蜂窝网络带宽。
[0023]虽然对在远程计算机系统和移动设备之间发送的一些数据进行了共享,但一些数据仅仅由移动设备中的一个移动设备来使用。再次考虑多人视频游戏的例子:虽然共同的声道可以在所有参与的移动设备之间进行共享,但与描述用户在其移动设备上的特征的位置的图像有关的数据可能仅由所述特定用户的移动设备来使用。因此,这个“私有的”数据(即,仅仅由特定的移动设备使用的数据)可以被标记为私有的,以及经由蜂窝无线网络直接地发送给相关联的移动设备。因此,每一个移动设备将使用本地无线网络来交换共享数据,但是将单独地接收私有数据。
[0024]在一些情形下(诸如当特定的移动设备与蜂窝网络具有较低的带宽连接时),移动设备不能接收其相关联的私有数据的全部(或者任何部分)。在这样的环境下,被指定为针对低带宽移动设备的私有数据可以被路由到参与多用户应用的另一个移动设备,伴随着经由本地无线网络将私有数据发送给低带宽移动设备。这种配置可以准许移动设备在与其它参与的移动设备接近的情况下使用多用户应用,即使移动设备不能够经由蜂窝网络与远程计算机系统连接。
[0025]使用与用于与远程计算机系统通信的网络相区别的网络来交换共享数据的配置,可以被称为协作式数据传输系统。图1示出了协作式数据传输系统100。协作式数据传输系统100包括:移动设备110、蜂窝网络120、网络130和远程计算机系统140。移动设备110 (其包括移动设备110-1、110-2和110-3)均可以使用至少两个不同的网络来通信。例如,移动设备110-1无线地与蜂窝(无线)网络120-1 (在图1中由基站来表示)通信。移动设备110-1和蜂窝网络120-1之间的蜂窝连接160-1可以使用2G、3G或4G协议,诸如LTE(长期演进)。当移动设备110-1、110-2和110-3处于物理接近时,移动设备110-1还可以使用无线网络连接180-1和180-2与移动设备110-2和110-3通信。本地无线网络连接180可以指代两个或更多个移动设备之间的无线通信技术。本地无线网络连接180-1和180-2可以使用诸如WiFi直接型、蓝牙、超宽带或者802.11 (a)/(b)/(g)/(n) WiFi网络之类的协议。处于物理接近是指代移动设备110足够靠近在一起,以使移动设备110可以使用本地无线网络连接180互相通信。因此,在协作式数据传输系统100中使用至少两个不同的网络:第一网络(在这里蜂窝网络用于与远程计算机系统140通信)和第二网络(例如,本地无线网络),所述第二网络用以在移动设备110之间共享数据。此外,使用本地无线网络连接和无线蜂窝网络的移动设备可以具有至少两个无线通信接口:一个用于与无线蜂窝网络通信,一个用于与本地无线网络通信。
[0026]移动设备110-3经由无线蜂窝连接160-2与蜂窝网络120_2通信。蜂窝网络120_2可以表示与蜂窝网络120-1相同或者不同的蜂窝网络。虽然分开地示出,但是如果移动设备110-1和110-3处于物理接近以及使用相同的蜂窝网络,则蜂窝网络120-2与蜂窝网络120-1可以是相同的蜂窝网络。移动设备110-3经由无线蜂窝连接160-2与蜂窝网络120-2通信。无线蜂窝连接160-2可以使用与无线蜂窝连接160-1相同的协议或者不同的协议。例如,如果无线蜂窝连接160-2是3G连接,则无线蜂窝连接160-1可以是与无线蜂窝连接160-2相比具有更大的带宽的4G LTE连接。移动设备110-3还分别使用本地无线网络连接180-2和180-3与移动设备110-1和110-2通信。例如,对等应用可以用于使用诸如WiFi直接型或者蓝牙之类的无线协议来在移动设备之间交换数据。移动设备中的一个移动设备可以充当针对其它移动设备的接入点。
[0027]移动设备110-2分别经由本地无线网络连接180-1和180_3与移动设备110_1和110-3相通信。移动设备110-2不与蜂窝网络相通信。这可能是由于几种原因,诸如:移动设备110-2不能够与蜂窝网络通信,用户已经指定移动设备110-2不与蜂窝网络通信,移动设备110-2的蜂窝无线单元被禁用了,和/或移动设备110-2的电池具有太少的存储能量以至于不能与蜂窝网络通信。
[0028]蜂窝网络120与网络130相通信。网络130可以是一个或多个公用网络和/或专用网络。例如,网络130可以是因特网。远程计算机系统140与网络130相通信。由远程计算机系统140通过网络130和蜂窝网络120将数据路由到移动设备110-1和110-2。
[0029]虽然协作式数据传输系统100示出了蜂窝网络120和本地无线网络连接180,但在一些配置中,可以使用有线网络。例如,设备可以有线连接到基于电缆的网络、基于光纤的网络或者基于DSL的网络以及与网络130通信。类似地,在一些配置中,设备使用有线本地网络(例如,局域网)来互相通信。此外,除了移动设备之外,一些配置使用不移动的计算机化的设备,诸如服务器、桌上型计算机、具有互联网能力的BLURAY (蓝光)播放器、具有互联网能力的电视和控制台游戏系统。此外,在一些配置中,一些设备可以是移动设备,而其它设备是非移动的。此外,其它配置可以包括更少或者更多数量的移动设备。例如,一些配置包括两个移动设备,而其它配置包括四个、五个、六个、十个或者更多的移动设备。
[0030]图2示出了协作式数据传输系统200。协作式数据传输系统200包括:移动设备210、本地无线网络路由器220、无线网络240、网络250和远程计算机系统260。虽然图1的协作式数据传输系统100的移动设备直接地互相通信,但图2的移动设备210经由本地无线网络路由器220来互相通信。例如,如果使用802.11 (a)/(b)/(g)/(η)的本地无线协议,则本地无线网络路由器220对在移动设备210之间传送的数据进行路由。因此,为了使用本地无线网络230,移动设备210在本地无线网络路由器220的足够的物理接近度内来无线地通信。
[0031]在协作式数据传输系统200中,移动设备210-2和210_3与另一个无线网络240通信,所述无线网络240可以是蜂窝无线网络。在一些配置中,无线网络240和移动设备210-2和210-3之间的可用带宽比移动设备210之间经由本地无线网络230所可用的带宽要小。在协作式数据传输系统200中,移动设备210-2和210-3与相同的无线网络通信。因此,移动设备210-2和210-3可以具有与无线网络240的类似量的可用带宽。在一些配置中,移动设备210-2和210-3可以具有与无线网络240的不同量的可用带宽(由于诸如信号强度、购买的带宽的量等等因素)。
[0032]无线网络240与网络250通信。网络250可以表示专用网络或者公用网络(诸如因特网)。远程计算机系统260 (其与移动设备210交换数据)与网络250通信。远程计算机系统260可以是充当针对由移动设备210运行的共享应用(例如,游戏、流式音乐/视频应用、测验应用、调查程序)的主机的服务器。
[0033]由远程计算机系统260向移动设备210-2和210_3发送的数据可以被标记成公共的或者私有的。可以使用数据中的标记,将数据指示为公共的或者私有的。标记为私有的数据旨在针对于由与数据相关联的IP地址所指示的移动设备。标记为共享的数据旨在针对于参与共享应用的每一个移动设备。当移动设备210-2经由与无线网络240的无线连接270接收共享数据的集合时,移动设备210-2可以使用本地无线网络230向移动设备210-1和210-3发送共享数据的集合。类似地,当移动设备210-3经由无线网络240从远程计算机系统260接收共享数据的集合时,移动设备210-3使用本地无线网络230向移动设备210-1和210-2发送共享数据的集合。
[0034]举例而言,如果远程计算机系统260要向移动设备210发送总共一兆字节的共享数据,则远程计算机系统可以向移动设备210-3发送0.5兆字节,以及向移动设备210-2发送0.5兆字节。随后,移动设备210-2和210-3向移动设备210中的每一个其它移动设备发送所述共享数据中的它们所接收的部分。因此,总共一兆字节的数据将经由无线网络240发送给移动设备210-2和210-3,这与无线网络240分别地向每一个移动设备发送该数据的情形(在这种情形下将导致无线网络240发送三兆字节的数据)相对。
[0035]在一些配置中,移动设备210可以共享关于它们与远程计算机系统260的连接的特性的信息。例如,移动设备210-1可以向移动设备210-2和210-3发送针对其不具有经由无线网络240 (或者任何其它无线网络)与远程计算机系统260的连接的指示。移动设备210-2可以向移动设备210-1和210-3发送针对其具有经由无线网络240与远程计算机系统260的300kbps连接的指示。移动设备210-3可以向移动设备210-1和210-2发送针对其具有经由无线网络240与远程计算机系统260的600kbps连接的指示。这些连接速度的指示(诸如比率)可以由移动设备210中的一个(或者每一个)发送给远程计算机系统260。在这个例子中,由于移动设备210-3与远程计算机系统260具有更快的连接,因此与向移动设备210-2相比,远程计算机系统260向移动设备210-3发送共享数据的更大的部分。在一些配置中,主移动设备负责接收移动设备210中的每一个移动设备的连接速度的指示,以及向远程计算机系统260发送连接速度的指示。这些速度可以被定期地重新测量,以及用于更新如何对私有数据和共享数据进行分发。
[0036]远程计算机系统260可以从移动设备210-2接收用于指示其IP地址的指示。此夕卜,移动设备210-2还可以向远程计算机系统260提供由移动设备210-2维持的但是链接到移动设备210-1的IP地址的指示。因此,由移动设备210-2经由无线连接270(其与链接到移动设备210-1的IP地址相关联)从无线网络240接收的数据可以由移动设备210-2经由本地无线网络230路由到移动设备210-1。因此,由移动设备210-2接收的旨在针对于移动设备210-1的私有数据可以在IP层被识别以及被适当地路由。类似地,移动设备210-3可以具有针对其自身的IP地址以及针对移动设备210-1的IP地址。针对每一个IP地址和其链接的移动设备的指示可以发送给远程计算机系统260。因此,针对移动设备210-1的私有数据可以发送给移动设备210-3。当移动设备210-3接收到所述私有数据时,移动设备210-3将基于IP地址经由本地无线网络230将私有数据路由给移动设备210-1。
[0037]在一些配置中,通过无线网络(诸如无线网络240)与远程计算机系统260连接的每一个移动设备具有针对参与共享应用的每一个移动设备的IP地址。在协作式数据传输系统200的一些配置中,移动设备210-2将具有三个IP地址:针对其自身的IP地址、针对移动设备210-1的IP地址和针对移动设备210-3的IP地址。类似地,移动设备210-3将具有针对其自身的IP地址、针对移动设备210-1的IP地址和针对移动设备210-2的IP地址。远程计算机系统260将从移动设备210-2和210-3接收针对每一个IP地址组的指示,或者从单个主移动设备来接收。因此,使用多个IP地址,远程计算机系统260可以将针对各移动设备210的私有数据路由到移动设备210-2或者移动设备210-3。基于链接的IP地址,私有数据可以由接收的移动设备维持为私有的,或者经由本地无线网络230向移动设备210中的适当移动设备进行重新发送。
[0038]虽然协作式数据传输系统200所示出的实施例只使用了无线网络240,但移动设备也可以使用不同的无线网络。例如,移动设备210-3可以使用不同的无线网络与网络250通信。因为向其发送IP地址共享的和私有的数据的远程计算机系统260判断使用的一个或一个以上的无线网络是否不影响协作式数据传输系统200的操作。此外,虽然协作式数据传输系统200的移动设备210-1不具有与无线网络240的无线连接,但在其它配置中,其可以与无线网络240或者某个的其它无线网络相连接。
[0039]在协作式数据传输系统200的一些配置中,可以使用有线的网络。例如,设备可以有线连接到基于电缆的网络、基于光纤的网络或者基于DSL的网络,以及与网络130通信。类似地,在一些配置中,设备使用有线本地网络(诸如局域网)来通信。此外,除了移动设备之外,一些配置使用不移动的计算机化的设备,诸如服务器、桌上型计算机、具有互联网能力的BLURAY播放器、具有互联网能力的电视和/或控制台游戏系统。此外,在一些配置中,一些设备可以是移动设备,而其它设备是不移动的。此外,其它配置可以包括更少或者更多数量的移动设备。例如,一些配置包括两个移动设备,而其它配置包括四个、五个、六个、十个或者更多的移动设备。
[0040]图3示出了具有多个通信系统层的协作式数据传输系统300。协作式数据传输系统300可以是图2的协作式数据传输系统200、图1的协作式数据传输系统100或者某种其它的协作式数据传输系统。协作式数据传输系统300包括移动设备350和移动设备360。远程计算机系统310经由因特网320与蜂窝网络330通信。蜂窝网络330包括多个部件:GGSN (网关GPRS支持节点,其中GPRS代表通用分组无线服务)332、SGSN (服务GPRS支持节点)334、RNC (无线网络控制器)336和节点B338。GGSN332充当蜂窝网络330和外部的分组交换网络(诸如因特网320)之间的接口。SGSN334将数据分组路由到位于地理区域内的各个无线网络控制器(包括RNC336)。RNC336管理无线资源,处理加密以及控制包括节点B338的一个或多个节点B。节点B338无线地与移动设备(包括移动设备350)通信。蜂窝网络330是使用UMTS (通用移动电信系统)技术的3G网络。
[0041]其它蜂窝系统技术也是可以的。例如,在一些配置中,使用蜂窝网络340,而不使用蜂窝网络330。蜂窝网络340表示4G LTE (长期演进)网络。蜂窝网络340包括:P网关(分组数据节点网关)342、S网关(服务网关)344和eNodeB (演进型节点B)346。P网关342充当蜂窝网络340和外部的分组交换网络(诸如因特网320)之间的接口。S网关344充当P网关342和多个eNodeB (包括eNodeB346)之间的接口。eNodeB346组合了节点B338和RNC336的功能。eNodeB346无线地与移动设备(诸如移动设备350)通信。在协作式数据传输系统的一些配置中,一个或多个移动设备与3G蜂窝网络(诸如蜂窝网络330)通信,其它移动设备与4G蜂窝网络(诸如蜂窝网络340)通信。
[0042]根据OSI(开放系统互连)模型,移动设备(诸如移动设备350和360)的通信系统可以被细分成多个层。移动设备350包括:物理层351、MAC (介质访问控制)层352、IP (互联网协议)层353、MPTCP/TCP/UDP (多径传输控制协议/传输控制协议/用户数据报协议)层354和应用层355。类似地,移动设备360包括:物理层361、MAC层362、IP层363、MPTCP/TCP/UDP层364和应用层365。在一些方面,移动设备360上的MPTCP/TCP/UDP层364可以包括诸如MPTCP之类的多径传输层,所述多径传输层使用移动设备350和360的多个IP地址来建立多径传输连接。在一些方面,移动设备360可以直接地使用移动设备350的IP地址。在移动设备360所使用的与移动设备350相关联的IP地址和移动设备350的IP地址之间需要网络地址转换。例如,移动设备350可以充当到移动设备360的接入点,以使得需要这种网络地址转换。当使用多径传输连接时,针对在移动设备360处通过多径传输连接来接收的数据,需要在本地无线网络上对移动设备360和350之间的数据进行重新分发。在一些方面,只有共享数据可以经由多径传输连接在远程计算机系统310和移动设备之间来传送,而私有数据则可以通过替代的流直接地传送给各自的移动设备。如果私有数据也经由多径传输连接来传送,则当其流通过移动设备360时,其处于加密形式。
[0043]协作式数据传输系统300给出了由移动设备350接收私有的数据集合以及路由到移动设备360的情形。参照图1的协作式数据传输系统100,协作式数据传输系统300可以表示远程计算机系统140经由无线网络120-1经由移动设备110-1将私有数据集合路由到移动设备110-2的情形。类似地,参照图2的协作式数据传输系统200,远程计算机系统260可以经由移动设备210-2和本地无线网络230将私有数据路由到移动设备210-1或者移动设备210-3。在图3的协作式数据传输系统300中,远程计算机系统310发送私有数据集合。这个私有数据集合与由移动设备350持有的IP地址相关联。当由移动设备350持有时,这个IP地址被链接到移动设备360。
[0044]由远程计算机系统310发送的私有数据集合包括由移动设备350维持的、但是链接到移动设备360的IP地址。在因特网320上将私有数据集合路由到蜂窝网络330(或者340)。蜂窝网络330 (或者340)将私有数据分组发送给移动设备350。在IP层353,移动设备350识别出私有数据分组与链接到移动设备360的IP地址相关联。在一些配置中,不是在IP层353将数据分组识别成旨在针对于另一个移动设备(或者不是旨在针对于一个或多个额外的移动设备),所述确定可以在应用层355或者MPTCP/TCP/UDP层354处发生。经由本地无线网络将私有数据发送给移动设备360。随后,移动设备360处理私有数据。蜂窝网络330经由移动设备350和本地无线网络向移动设备360发送的私有数据集合的路由通过粗箭头来描述。
[0045]移动设备360可以经由相反的路由来发送要发送给远程计算机系统310的数据。移动设备360经由本地无线网络向移动设备350发送旨在针对于远程计算机系统310的数据。在IP层353,将数据标识为旨在针对于远程计算机系统310。移动设备350经由蜂窝网络330 (或者340)向远程计算机系统310发送所述数据。
[0046]如果远程计算机系统310向移动设备350发送共享数据,则所述共享数据可以在移动设备350的应用层355处被识别出来。可以经由本地无线网络向移动设备360 (以及参与共享应用的任何其它的移动设备)发送所述共享数据。在一些配置中,移动设备350可以为共享数据维持额外的IP地址,远程计算机系统310知道所述额外的IP地址。移动设备350知道远程计算机系统310针对该IP地址所寻址的数据是要共享的。因此,在IP层拦截所述共享数据,以及将其分发给参与共享应用的其它移动设备。
[0047]如果远程计算机系统310所发送的数据是旨在针对于移动设备350的私有数据,则所述私有数据将与链接到移动设备350的IP地址相关联。在没有针对将所述私有数据发送给移动设备360的指示的情况下,移动设备350将接收和处理所述私有数据。如果移动设备360连接到蜂窝网络330 (或者340),则针对移动设备360的私有数据可以通过蜂窝网络330 (或者340)来发送给移动设备360,而不是经由移动设备350和本地无线网络来路由给移动设备360。
[0048]使用图1-3的协作式数据传输系统可以执行多种方法。图4示出了用于由协作式数据传输系统的设备(诸如移动设备)来处理数据的方法400。方法400可以由协作式数据传输系统(诸如图1的协作式数据传输系统100、图2的协作式数据传输系统200、图3的协作式数据传输系统300或者某种其它的协作式数据传输系统)来执行。在阶段410处,诸如移动设备之类的设备经由第一无线网络来接收第一数据集合。这个第一无线网络可以是蜂窝网络。
[0049]在阶段420处,使用第二无线网络(其可以是本地无线网络)将被确定为共享数据的第一数据集合发送给与移动设备参与共享应用的其它移动设备。在第一数据集合中可以存在指示其是共享数据的指示(诸如标记)。在一些配置中,IP地址指示了数据是共享数据。[0050]在阶段430处,移动设备经由第一无线网络接收旨在针对于第一移动设备的私有数据集合。基于与私有数据相关联的IP地址,确定私有数据集合旨在针对于所述移动设备。由于数据集合是私有的,因此所述移动设备不向其它移动设备发送所述私有数据集合。
[0051]图5示出了用于由协作式数据传输系统的设备处理数据的方法500。方法500可以由协作式数据传输系统(诸如图1的协作式数据传输系统100、图2的协作式数据传输系统200、图3的协作式数据传输系统300或者某种其它的协作式数据传输系统)来执行。在方法500中,至少两个移动设备位于互相物理接近的位置,以及可以利用诸如WiF1、WiFi直接型或者蓝牙之类的协议使用本地无线网络来互相通信。
[0052]在阶段502处,远程计算机系统(其可以是游戏服务器)识别数据集合是旨在针对于一个移动设备的私有数据,还是旨在针对于参与共享应用(诸如游戏)的所有移动设备的共享数据。远程计算机系统还识别数据应当路由到的移动设备以及其IP地址。在阶段506处,在具有针对数据集合是共享还是私有的指示的情况下,将数据集合发送给适当的IP地址。在一些配置中,IP地址可以用于指示数据集合是共享的还是私有的。例如,链接到移动设备的特定IP地址可以用于只接收共享数据。因此,如果使用所述IP地址从远程计算机系统接收数据集合,则移动设备被配置为将数据集合分发给参与共享应用的其它移动设备。
[0053]在阶段510处,由链接到数据集合的IP地址所指示的移动设备(被称为第一移动设备)经由第一网络(诸如蜂窝网络)接收所述数据集合。在阶段520处,确定是远程计算机系统所发送的数据集合的预期接收者的移动设备。第一移动设备可以具有链接到其的多个IP地址。这些IP地址中的一个IP地址可以用于旨在针对于第一移动设备的数据。其它IP地址可以用于旨在针对于其它移动设备的数据。因此,基于在数据集合中指示的IP地址,第一移动设备可以确定是预期接收者的移动设备。如果IP地址指示了某个其它移动设备是数据集合的预期接收者(诸如如果数据集合是旨在仅针对于某个其它移动设备的私有数据集合),则在阶段530处,使用区别于第一网络的本地无线网络将数据集合发送给适当的移动设备。
[0054]如果在阶段520处,如由数据集合的IP地址所指示的,数据集合旨在针对于第一移动设备,则执行阶段540。在阶段540处,判断数据集合是共享数据还是私有数据。在数据集合中可以存在用于指示数据集合是共享数据还是私有数据的标记。如果数据集合是私有的,则在阶段560处,移动设备不向其它移动设备发送数据集合。数据集合仅由第一移动设备来使用。但是,如果在阶段540处,确定数据集合是共享数据集合,则在阶段550处,使用本地无线网络向参与共享应用的每一个其它移动设备发送共享数据集合。
[0055]在一些配置中,将阶段520和540组合。在这些配置中,IP地址用于确定数据集合的接收者,以及判断数据集合是共享的还是私有的。例如,移动设备可以具有三个IP地址:针对旨在针对其自身的私有数据的一个IP地址;针对旨在针对某个其它移动设备的私有数据的一个IP地址;以及针对要与其它移动设备共享的数据的一个IP地址。
[0056]虽然将本地无线网络论述成用于在移动设备之间通信,但其它网络也是可以的。例如,可以使用卫星网络。如果是有线的话,则移动设备可以使用局域网、电缆、光纤或者DSL网络来通信。
[0057]图6示出了用于向远程计算机系统提供协作式数据传输系统的特性的指示的方法600。方法600可以由协作式数据传输系统(诸如图1的协作式数据传输系统100、图2的协作式数据传输系统200、图3的协作式数据传输系统300或者某种其它协作式数据传输系统)的移动设备来执行。在阶段610处,移动设备可以获取针对其自身的IP地址。其还可以获取针对一个或多个其它移动设备的IP地址。在一些配置中,移动设备可以获取与参与共享应用的每一个其它的移动设备相关联的IP地址。因此,当将数据集合路由给特定的IP地址时,移动设备可以将数据集合路由给适当的移动设备。在一些配置中,移动设备还可以获取与仅共享数据相关联的IP地址。
[0058]在阶段620处,移动设备可以接收可用于每一个移动设备的无线资源的指示。参与共享应用的每一个移动设备可以经由本地无线网络向移动设备发送其是否具有经由另一个网络(诸如蜂窝网络)与远程计算机系统的连接的指示。如果存在这样的连接,则可以包括连接的速度和/或等待时间的指示。接收到这个连接信息的移动设备可以确定哪些移动设备应当直接接收它们自己的私有数据,哪些移动设备应当接收针对其它移动设备的私有数据,以及共享数据应当如何经由无线网络来按比例地从远程计算机系统路由到移动设备。确定这些因素的移动设备可以被称为主移动设备。这个移动设备还可以接收由其它移动设备获取的IP地址以及链接到的那些IP地址(例如,共享数据IP地址、旨在针对于某个其它移动设备的私有数据、旨在针对于维持IP地址的移动设备的私有数据)的指示。在阶段630处,向远程计算机系统发送关于下面的信息:应当如何分发共享数据的比率、应当如何分发私有数据、和/或哪些IP地址与哪 些移动设备相关联。
[0059]在一些配置中,将针对是否存在连接、速度和/或等待时间的指示发送给远程计算机系统。根据这些指示,远程计算机系统确定要发送给移动设备的共享数据和/或私有数据的分发比率。
[0060]为了确定如何将共享数据和/或私有数据分发到移动设备,可以使用下面的公式。下面的公式使用参与共享应用的物理接近的三个移动设备的例子。这些公式可以适用于两个、四个或者四个以上的移动设备。
[0061]使S表示每一个移动设备所需要的共享数据带宽,使P表示针对每一个移动设备的私有数据,以及使W表示每一个移动设备在移动设备和远程服务器之间可用的总带宽。因此,每一个移动设备的总带宽根据公式1-3来表示。
[0062]W1=SJP1 式 I
[0063]ff2=S2+P2式 2
[0064]W3=S3+P3式 3
[0065]从远程计算机系统到移动设备的总业务量可以根据公式4的比率来分割。
[0066]W1Iff2Iff3 式 4
[0067]如果针对每一个移动设备WiWi,则可以在不使用本地无线网络的情况下,从远程计算机系统向每一个各自的移动设备直接地发送私有数据。远程计算机系统可以根据公式5将共享数据进行分割用于传输。
[0068](W1-P1): (W2-P2): (W3-P3)式 5
[0069]随后,使用本地无线网络在移动设备之间共享所述共享数据。
[0070]如果针对移动设备中的一个(或者多于一个)移动设备存在Wi〈Pi (例如,与远程计算机系统的低带宽连接,或者与远程计算机系统不具有连接),则低带宽移动设备从另一个移动设备接收所有共享数据,以及其私有数据中的一些或者全部。
[0071]游戏例子I
[0072]作为可以由几个移动设备(具有相关联的用户)参与的一种类型的应用考虑需要与游戏服务器(远程计算机系统)进行交互的游戏。参与的移动设备中的每一个移动设备经由本地无线网络(诸如802.11 (g)网络)互相通信。这些移动设备中的所有移动设备使用另一个网络(诸如3G或4G蜂窝网络)与游戏服务器通信。
[0073]移动设备中的每一个移动设备确定它们与游戏服务器的连接的速度和等待时间。游戏服务器(或者移动设备)使用这个信息来确定应当如何将共享数据分发给移动设备。针对这个例子的剩余部分,假定参与游戏的处于物理接近的四个移动设备中的每一个移动设备通过多个蜂窝网络与游戏服务器相连接:第一移动设备具有200kbps连接;第二移动设备具有400kbps连接;第三移动设备也具有400kbps连接;以及第一移动设备具有800kbps连接。针对每一个移动设备的私有数据被期望为消耗大约100kbps。由于每一个移动设备具有经由蜂窝网络与游戏服务器的连接,以及具有足够的带宽,因此在不使用本地无线网络的情况下,直接地向每一个移动设备发送所有私有数据。根据公式5,一旦减少了针对私有数据传输的带宽,共享数据可以以根据对每一个移动设备可用的带宽的比率来向移动设备进行传送。因此,在这个例子中,存在1:3:3:7的比率。因此,针对发送给第四移动设备的每七个共享数据集合,向第二和第三移动设备中的每一个移动设备发送三个共享数据集合,伴随着向第一移动设备发送一个集合。这些共享数据集合中的每一个集合可以继而经由本地无线网络来交换。
[0074]游戏例子2
[0075]考虑需要与游戏服务器(远程计算机系统)进行交互的另一个游戏例子。在这里再一次地,参与的移动设备中的每一个移动设备经由本地无线网络(诸如802.11(g)网络)与其它移动设备相通信。在这个例子中,三个参与的移动设备中只有两个移动设备经由蜂窝网络连接与游戏服务器进行通信。
[0076]具有与游戏服务器的连接的两个移动设备确定它们与游戏服务器的连接的速度和等待时间。游戏服务器(或者移动设备)使用这个信息来确定应当如何将共享数据分发给移动设备。通过各种蜂窝网络与游戏服务器相连接的两个移动设备分别具有200kbps和400kbps的速度。针对每一个移动设备的私有数据被期望为消耗大约100kbps。由于三个移动设备中仅仅两个移动设备具有经由蜂窝网络与游戏服务器的连接,因此针对第三移动设备的私有数据经由其它移动设备来发送。因此,第一移动设备将IOOkbps专用于其自身的私有数据,以及将50kbps专用于第三移动设备的私有数据。第一移动设备可以具有两个IP地址,以使得其可以区分旨在针对于第三移动设备的输入数据与旨在针对于第一移动设备的数据。类似地,第二移动设备可以将IOOkbps专用于其自身的私有数据,以及将50kbps专用于第三移动设备的私有数据。在这里再一次,第二移动设备可以具有两个IP地址,以使得其可以区分旨在针对于第二移动设备的输入数据与旨在针对于第三移动设备的数据。要向第三移动设备传送的私有数据由第一移动设备和第二移动设备经由本地无线网络来发送。
[0077]—旦将带宽专用于私有数据,第一移动设备和第二移动设备就具有50kbps和150kbps的剩余带宽。因此,游戏服务器可以以1:3的比率向移动设备发送共享数据。随后,使用本地无线网络将第一移动设备和第二移动设备所接收的共享数据发送给每一个其它移动设备。可以定期地对如何分发私有数据和共享数据的比率进行重新评估。
[0078]作为变形,代替在第一移动设备和第二移动设备之间分割针对第三移动设备的私有数据,第一移动设备可以接收第三移动设备的全部私有数据,以及经由本地无线网络将其发送给第三移动设备。在这样的环境中,第一移动设备可能不具有经由其蜂窝连接用于处理任何共享数据的足够的剩余带宽。因此,第二移动设备可以接收所有的共享数据,以及经由本地无线网络将其发送给每一个其它的移动设备。应当理解的是,分发私有数据和共享数据的其它方式也是可以的。
[0079]如图7中所示出的计算机系统可以合并成先前所描述的计算机化设备的一部分。例如,计算机系统700可以表示本申请中所论述的移动设备和/或远程计算机系统中的一些部件。图7提供了计算机系统700的一个实施例的示意视图,所述计算机系统700可以执行由如本文所描述的各种其它的实施例所提供的方法,和/或可以运行为主机计算机系统、远程信息站/终端、销售点设备、移动设备和/或计算机系统。图7仅意在提供各个部件的概括化视图,可以根据需要使用其中的任何部分或者全部。因此,图7宽泛地示出了如何用相对单独或者相对更加集成的方式来实现个别的系统元素。
[0080]将计算机系统700示出为包括硬件单元,所述硬件单元可以经由总线705来电耦合(或者可以根据需要以其它方式相通信)。硬件单元可以包括一个或多个处理器710,所述一个或多个处理器710包括但不限于一个或多个通用处理器和/或一个或多个特殊用途处理器(诸如数字信号处理芯片、图形加速处理器等等);一个或多个输入设备715,所述一个或多个输入设备715包括但不限于鼠标、键盘等等;以及一个或多个输出设备720,所述一个或多个输出设备720包括但不限于显示设备、打印机等等。
[0081]此外,计算机系统700还可以包括一个或多个非暂时性存储设备725 (和/或与其相通信),所述一个或多个非暂时性存储设备725可以包括但不限于本地和/或网络可访问存储设备,和/或可以包括但不限于磁盘驱动器、驱动器阵列、光存储设备、固态存储设备(诸如随机存取存储器(“RAM”)和/或只读存储器(“R0M”)),它们是可编程、可闪速更新的等等。这样的存储设备可以被配置为实现任何适当的数据存储,包括但不限于各种文件系统、数据库结构等等。
[0082]此外,计算机系统700还可以包括通信子系统730,所述通信子系统730可以包括但不限于调制解调器、网络卡(无线的或有线的)、红外通信设备、无线通信设备和/或芯片集(诸如Bluetooth?设备、802.11设备、WiFi设备、WiMax设备、蜂窝通信设施等)等等。通信子系统730可以准许与网络(诸如下面所描述的网络,仅举一个例子)、其它计算机系统和/或本文所描述的任何其它设备交换数据。在许多实施例中,计算机系统700还包括非暂时性工作存储器735,所述非暂时性工作存储器735可以包括RAM或ROM设备,如上所述。
[0083]计算机系统700还可以包括软件单元,所述软件单元示出为当前在工作存储器735内,包括操作系统740、设备驱动器、可执行库和/或其它代码(诸如一个或多个应用程序745),所述应用程序745可以包括由各个实施例所提供的计算机程序,和/或可以被设计为实现由其它实施例所提供的方法、和/或配置系统,如本文所描述的。仅仅通过举例的方式,相对于上文所论述的方法描述的一个或多个过程可以实现成由计算机(和/或计算机内的处理器)可执行的代码和/或指令;在一个方面,这样的代码和/或指令可以用于配置和/或适应通用计算机(或者其它设备),以根据所描述的方法来执行一个或多个操作。
[0084]这些指令和/或代码可以存储在计算机可读存储介质(诸如上文描述的存储设备725)上。在一些情况下,存储介质可以并入到计算机系统(诸如计算机系统700)中。在其它实施例中,存储介质可以与计算机系统相分离(例如,诸如压缩光盘的可移动介质),和/或提供在安装包中,以使得存储介质可以利用其上存储的指令/代码对通用计算机进行编程、配置和/或适应。这些指令可以采用可执行代码(其是由计算机系统700可执行的)的形式,和/或采用源代码和/或可安装代码的形式,其中在计算机系统700上进行编译和/或安装(例如,使用多种通常可用的编译器、安装程序、压缩/解压缩实用程序等等中的任何一种)时,采用可执行代码的形式。
[0085]可以根据特定的需求来做出一些基本的变形。例如,还可以使用定制的硬件,和/或可以在硬件、软件(其包括诸如小应用程序等等之类的便携式软件)或二者中来实现的特定的单元。此外,可以使用到其它计算设备(诸如网络输入/输出设备)的连接。
[0086]一些实施例可以使用计算机系统(诸如计算机系统700)来执行根据本公开内容的方法。例如,响应于处理器710执行包括在工作存储器735中的一个或多个指令的一个或多个序列(其可以并入到操作系统740和/或其它代码中,诸如应用程序745),计算机系统700可以执行所描述的方法的过程中的一些或者全部。可以将这样的指令从另一个计算机可读介质(诸如存储设备725中的一个或多个存储设备)读入到工作存储器735中。仅仅通过举例的方式,执行包括在工作存储器735中的指令序列可以使处理器710执行本文所描述的方法的一个或多个过程。
[0087]如本文所使用的术语“机器可读介质”和“计算机可读介质”指代参与提供使机器以特定的方式来操作的数据的任何介质。在使用计算机系统700实现的实施例中,各种计算机可读介质可以涉及向处理器710提供用于执行的指令/代码,和/或可以用于存储和/或携带这样的指令/代码(例如,作为信号)。在许多实现方式中,计算机可读介质是物理的和/或有形存储介质。这样的介质可以采用多种形式,包括但不限于非易失性介质、易失性介质和传输介质。例如,非易失性介质可以包括光盘和/或磁盘,诸如存储设备725。易失性介质包括但不限于动态存储器,诸如工作存储器735。传输介质包括但不限于同轴电缆、铜线和光纤,包括电线(其包括总线705),以及通信子系统730的各种部件(和/或通信子系统730通过其来提供与其它设备的通信的介质)。因此,传输介质还可以采用波形的形式(包括但不限于无线电波、声波和/或光波,诸如在无线电波和红外数据通信期间所产生的那些波形)。
[0088]例如,通用形式的物理和/或有形计算机可读介质包括软盘、软磁盘、硬盘、磁带或者任何其它磁介质、CD-ROM、任何其它光介质、穿孔卡片、纸带、具有穿孔模式的任何其它物理介质、RAM、PROM、EPROM、FLASH-EPR0M、任何其它存储器芯片或编码磁带、如下文所描述的载波波形、或者计算机可以从其读取指令和/或代码的任何其它介质。
[0089]各种形式的计算机可读介质可以涉及向处理器710携带用于执行的一个或多个指令的一个或多个序列。仅仅通过举例的方式,可以首先将指令携带在远程计算机的磁盘和/或光盘上。远程计算机可以将指令装载进其动态存储器中,以及在传输介质上发送要由计算机系统700来接收和/或执行的作为信号的指令。根据本发明的各种实施例,这些信号(其可以采用电磁信号、声信号、光信号等等的形式)是可以在其上对指令进行编码的载波波形的所有例子。
[0090]通信子系统730 (和/或其部件)通常将接收信号,随后总线705可以将信号(和/或由信号携带的数据、指令等等)携带到工作存储器735,处理器705从所述工作存储器735取回以及执行指令。在由处理器710执行之前或者之后,工作存储器735所接收的指令可以可选地存储在非暂时性存储设备725上。
[0091]上面所论述的方法、系统和设备是例子。各个实施例可以酌情省略、替代或者增加各种过程或部件。例如,在替代的配置中,可以按照与所描述的不同的次序来执行所描述的方法,和/或可以对各个阶段进行增加、省略和/或组合。此外,关于某些实施例所描述的特征可以组合到各种其它实施例中。可以用类似的方式来组合实施例的不同方面和元素。此外,技术演进以及因此的元素中的许多元素是例子,所述例子不将本公开内容的范围限制于那些特定的例子。
[0092]在说明书中给出了具体细节,以提供对实施例的全面理解。但是,在没有这些具体细节的情况下,可以实施实施例。例如,在没有不必要的细节的情况下,示出了公知的电路、过程、算法、结构和技术,以便避免模糊实施例。本说明书仅提供了示例性实施例,已校不旨在限制本发明的范围、适用性或者配置。相反,实施例的前述描述将向本领域的技术人员提供用于实现本发明的实施例的有利描述。在不脱离本发明的精神和范围的情况下,可以对元素的功能和排列进行各种修改。
[0093]此外,一些实施例被描述为如流程图或者框图所描绘的过程。尽管每一个流程图或框图可以将操作描述成了一个顺序的过程,但许多操作可以是并行或同时执行。此外,操作的次序可以被重新安排。过程可以具有附图中所不包括的其它步骤。此外,方法的实施例可以用硬件、软件、固件、中间件、微代码、硬件描述语言或者其任意组合来实现。当用软件实现时,固件、中间件、或者微代码、用于执行相关联的任务的程序代码或者代码段可以被保存在诸如存储介质之类的计算机可读介质中。处理器可以执行相关联的任务。
[0094]已经描述了一些实施例,在不脱离本公开内容的精神的情况下,可以使用各种修改、替代的结构和等效物。例如,上面的元素可以只是较大系统的部件,其中其它规则可以优先,或者以其它方式修改本发明的应用。此外,在考虑上面的元素之前、期间或者之后,可以采取多个步骤。相应地,上面的描述并不限制本公开内容的范围。
【权利要求】
1.一种被配置为用于协作式数据传输的移动设备,所述移动设备包括: 处理器,所述处理器被配置为: 分析第一共享数据集合,其中: 所述第一共享数据集合是使用第一通信技术经由第一无线网络来接收的; 所述移动设备被配置为与至少一个其它移动设备相通信;以及 所述第一共享数据集合对于在所述至少一个其它移动设备上运行的应用是公共的; 确定要将所述第一共享数据集合与所述至少一个其它移动设备共享; 分析第一私有数据集合,其中: 所述第一私有数据集合旨在针对于所述移动设备;以及 所述第一私有数据集合是经由所述第一无线网络来接收的; 确定不将所述第一私有数据集合与所述至少一个其它移动设备共享; 使所述第一共享数据集合要经由第二通信技术被发送给所述至少一个其它移动设备,其中: 所述第一通信技术和所述第二通信技术是不同的通信技术。
2.根据权利要求1所述的被配置为用于协作式数据传输的移动设备,其中,所述第一通信技术是无线蜂窝网络,以及所述第二通信技术使用本地无线网络。
3.根据权利要求1所述的被配置为用于协作式数据传输的移动设备,其中,所述处理器被配置为在从包括以下各项的组中所选择的层处,分析所述第一共享数据集合和所述第一私有数据集合:
MPTCP/TCP/UDP 层; IP层;以及 应用层。
4.根据权利要求1所述的被配置为用于协作式数据传输的移动设备,其中,所述移动设备使用所述至少一个其它移动设备的IP地址。
5.根据权利要求1所述的被配置为用于协作式数据传输的移动设备,其中,所述移动设备充当针对所述至少一个其它移动设备的无线接入点。
6.根据权利要求1所述的被配置为用于协作式数据传输的移动设备,其中,共享数据是在游戏服务器和所述移动设备之间的多径传输连接上来传送的,所述多径传输连接包括使用所述第一通信技术的第一路径以及使用所述第二通信技术的经由所述至少一个其它移动设备的第二路径。
7.根据权利要求1所述的被配置为用于协作式数据传输的移动设备,其中,私有数据是在游戏服务器和所述移动设备之间的多径传输连接上来传送的,所述多径传输连接包括使用所述第一通信技术的第一路径以及使用所述第二通信技术的经由所述至少一个其它移动设备的第二路径。
8.根据权利要求1所述的被配置为用于协作式数据传输的移动设备,其中,当旨在针对于所述至少一个其它移动设备的第二私有数据集合由所述移动设备来分析时,所述第二私有数据集合处于加密的形式。
9.根据权利要求1所述的被配置为用于协作式数据传输的移动设备,其中,所述第二通信技术包括本地无线协议的使用。
10.根据权利要求1所述的移动设备,其中,所述移动设备包括蜂窝电话。
11.根据权利要求1所述的移动设备,其中,所述移动设备还包括: 第一无线通信接口,所述第一无线通信接口被配置为使用所述第一通信技术来通信;以及 第二无线通信接口,所述第二无线通信接口被配置为使用所述第二通信技术来通信。
12.一种用于协作式数据传输的方法,所述方法包括: 由第一移动设备经由第一无线网络接收第一共享数据集合,其中: 所述第一共享数据集合对于在多个移动设备上运行的应用是公共的; 所述第一无线网络使用第一通信技术;以及 所述多个移动设备包括所述第一移动设备和第二移动设备; 由所述第一移动设备确定所述第一共享数据集合要被发送给所述多个移动设备中的每一个其它移动设备; 由所述第一移动设备经由所述第一无线网络接收第一私有数据集合,其中: 所述第一私有数据集合旨在针对于所述第一移动设备;以及 不在所述多个移动设备之间共享所述第一私有数据集合; 由所述第一移动设备确定所述第一私有数据集合不被发送给所述多个移动设备中的每一个其它移动设备;以 及 由所述第一移动设备经由第二通信技术向所述多个移动设备中的每一个其它移动设备发送所述第一共享数据集合,其中: 所述第一通信技术和所述第二通信技术是分开的通信技术。
13.根据权利要求12所述的用于协作式数据传输的方法,还包括: 由所述第一移动设备经由所述第一无线网络接收第二私有数据集合,其中所述第二私有数据集合包括所述第二私有数据集合旨在针对于所述第二移动设备的指示;以及 由所述第一移动设备经由所述第二通信技术向所述第二移动设备发送所述第二私有数据集合。
14.根据权利要求12所述的用于协作式数据传输的方法,其中,所述第一移动设备使用所述第二移动设备的IP地址。
15.根据权利要求12所述的用于协作式数据传输的方法,其中,所述第一移动设备充当针对所述第二移动设备的无线接入点。
16.根据权利要求12所述的用于协作式数据传输的方法,其中,共享数据是在游戏服务器和所述第一移动设备之间的多径传输连接上来传送的,所述多径传输连接包括经由所述第一通信技术的第一路径以及经由所述第二通信技术的第二路径。
17.根据权利要求12所述的用于协作式数据传输的方法,其中,私有数据是在游戏服务器和所述第一移动设备之间的多径传输连接上来传送的,所述多径传输连接包括经由所述第一通信技术的第一路径以及经由所述第二移动设备和所述第二通信技术的第二路径。
18.根据权利要求12所述的用于协作式数据传输的方法,其中,当旨在针对于所述多个移动设备中的另一个移动设备的第二私有数据集合由所述第一移动设备来分析时,所述第二私有数据集合处于加密的形式。
19.根据权利要求12所述的用于协作式数据传输的方法,所述方法还包括:由所述第二移动设备经由第三无线网络接收第二共享数据集合,其中要在所述多个移动设备之间共享所述第二共享数据集合;以及 由所述第二移动设备经由所述第二通信技术向所述多个移动设备中的每一个其它移动设备发送所述第二共享数据集合。
20.根据权利要求19所述的用于协作式数据传输的方法,其中,所述第一共享数据集合的大小与所述第二共享数据集合的大小的比例至少部分地基于所述第一移动设备和所述第一无线网络之间的带宽与所述第二移动设备和所述第二通信技术之间的带宽的比例。
21.根据权利要求19所述的用于协作式数据传输的方法,其中,所述第三无线网络和所述第一无线网络是相同的无线网络。
22.根据权利要求12所述的用于协作式数据传输的方法,其中,所述第一网络是无线蜂窝网络,以及所述第二通信技术使用本地无线协议。
23.根据权利要求12所述的用于协作式数据传输的方法,其中,所述第二通信技术使用本地无线网络。
24.根据权利要求12所述的用于协作式数据传输的方法,其中,协作式数据传输允许要在操作所述第一移动设备和所述第二移动设备的用户之间玩游戏。
25.一种用于协作式数据传输的装置,所述装置包括: 第一单元,用于经由第一通信技术接收第一共享数据集合和第一私有数据集合,其中: 所述第一共享数据集合对于在至少一个其它装置上运行的应用是公共的;` 第二单元,用于分析所述第一共享数据集合和所述第一私有数据集合,其中: 要将所述第一共享数据集合与所述至少一个其它装置共享; 不将所述第一私有数据集合与所述至少一个其它装置共享; 第三单元,用于判断是否共享所述第一共享数据集合或者所述第一私有数据集合,其中: 所述第一私有数据集合被确定为不与所述至少一个其它装置共享; 所述第一共享数据集合被确定为要与所述至少一个其它装置共享; 第四单元,用于经由第二通信技术向所述至少一个其它装置发送所述第一共享数据集合,其中: 所述第一通信技术和所述第二通信技术是分开的通信技术。
26.根据权利要求25所述的用于协作式数据传输的装置,其中,由所述装置接收的共享数据的量至少部分地基于所述装置和第一无线网络之间的带宽。
27.根据权利要求25所述的用于协作式数据传输的装置,其中,所述装置使用所述至少一个其它装置的IP地址。
28.根据权利要求25所述的用于协作式数据传输的装置,其中,所述装置充当针对所述至少一个其它装置的无线接入点。
29.根据权利要求25所述的用于协作式数据传输的装置,其中,所述第一通信技术使用无线蜂窝网络,以及所述第二通信技术使用本地无线网络。
30.根据权利要求25所述的用于协作式数据传输的装置,其中: 所述第一单元还被配置为用于经由所述第一通信技术来接收第二私有数据集合,其中所述第二私有数据集合包括所述第二私有数据集合旨在针对于第二装置的指示;以及所述第四单元还被配置为用于经由所述第二通信技术来向所述第二装置发送所述第二私有数据集合。
31.根据权利要求25所述的用于协作式数据传输的装置,其中,所述装置允许要在与所述装置进行交互的第一用户和与另一个装置进行交互的第二用户之间玩游戏,所述另一个装置经由所述第二通信技术与所述装置通信。
32.—种位于非暂时性处理器可读介质上以及包括处理器可读指令的计算机程序产品,所述处理器可读指令被配置为使处理器执行下面的操作: 分析经由第一无线网络接收的第一共享数据集合,其中: 所述第一无线网络使用第一无线技术; 要在多个移动设备 之间共享所述第一共享数据集合; 所述多个移动设备包括第一移动设备和第二移动设备;以及 所述第一共享数据集合对于在所述多个移动设备上运行的应用是公共的; 确定要在所述多个移动设备之间共享所述第一共享数据集合; 分析经由所述第一无线网络接收的第一私有数据集合,其中: 所述第一私有数据集合旨在针对于所述第一移动设备;以及 不在所述多个移动设备之间共享所述第一私有数据集合; 确定不在所述多个移动设备之间共享所述第一私有数据集合;以及使所述第一共享数据集合经由第二无线技术要被发送给所述多个移动设备中的每一个其它移动设备,其中: 所述第一无线技术和所述第二无线技术是不同的无线技术。
33.根据权利要求32所述的计算机程序产品,其中,由所述处理器分析的共享数据的量至少部分地基于与所述第一无线网络的带宽。
34.根据权利要求32所述的计算机程序产品,其中,所述第二无线技术使用本地无线协议。
35.根据权利要求32所述的计算机程序产品,还包括被配置为使所述处理器执行下面操作的指令: 分析经由所述第一无线技术接收的第二私有数据集合,其中所述第二私有数据集合包括所述第二私有数据集合旨在针对于所述第二移动设备的指示;以及 使所述第二私有数据集合经由所述第二无线技术要被发送给所述第二移动设备。
36.根据权利要求32所述的计算机程序产品,其中,所述计算机程序产品结合要在操作所述第一移动设备的第一用户和操作所述第二移动设备的第二用户之间玩游戏来运行。
37.一种用于协作式数据传输的系统,所述系统包括: 计算机系统,所述计算机系统被配置为: 确定要在多个移动设备之间共享第一共享数据集合,其中: 所述第一共享数据集合对于在所述多个移动设备上运行的应用是公共的; 经由第一无线网络向第一移动设备发送所述第一共享数据集合, 其中: 所述多个移动设备包括所述第一移动设备;以及所述第一共享数据集合包括指示要在所述多个移动设备之间共享所述第一共享数据集合的指示符; 确定第一私有数据集合仅仅旨在针对于所述第一移动设备;以及 经由所述第一无线网络向所述第一移动设备发送所述第一私有数据集合。
38.根据权利要求37所述的系统,其中,所述计算机系统还被配置为: 与所述多个移动设备中的第二移动设备和所述计算机系统之间的第二数量的带宽相t匕,至少部分地基于所述第一移动设备和所述计算机系统之间的第一数量的带宽,从所述多个移动设备中选择所述第一移动设备以接收所述第一共享数据集合。
39.根据权利要求37所述的系统,其中,所述计算机系统还被配置为: 确定第二私有数据集合旨在针对于所述多个移动设备中的第二移动设备,但所述第二私有数据集合要被发送给所述第一移动设备;以及向所述第一移动设备发送所述第二私有数据集合。
40.根据权利要求37所述的系统,还包括: 所述第一移动设备,所述第一移动设备被配置为: 分析所述第一共享 数据集合,其中: 所述第一共享数据集合是使用第一通信技术经由所述第一无线网络来接收的; 确定要在所述多个移动设备之间共享所述第一共享数据集合; 分析所述第一私有数据集合,其中: 所述第一私有数据集合旨在针对于所述第一移动设备;以及 所述第一私有数据集合是经由所述第一无线网络来接收的; 确定不将所述第一私有数据集合与所述多个移动设备共享; 经由第二通信技术来向所述多个移动设备中的其它移动设备发送所述第一共享数据集合,其中: 所述第一通信技术和所述第二通信技术是不同的通信技术。
41.根据权利要求40所述的系统,还包括: 第二移动设备,所述第二移动设备被配置为: 经由所述第二通信技术从所述第一移动设备接收所述第一共享数据集合。
42.根据权利要求41所述的系统,其中,所述计算机系统还被配置为: 确定要在所述多个移动设备之间共享第二共享数据集合,其中; 所述第二共享数据集合对于在所述多个移动设备上运行的所述应用是公共的; 经由第二无线网络来向所述第二移动设备发送所述第二共享数据集合,其中: 所述多个移动设备包括所述第二移动设备; 确定第二私有数据集合仅仅旨在针对于所述第二移动设备;以及 经由所述第二无线网络来向所述第二移动设备发送所述第二私有数据集合。
43.根据权利要求42所述的系统,其中,所述第二移动设备还被配置为: 分析所述第二共享数据集合,其中: 所述第二共享数据集合是使用第三通信技术经由所述第二无线网络来接收的; 确定要在所述多个移动设备之间共享所述第二共享数据集合; 分析所述第二私有数据集合,其中:所述第二私有数据集合旨在针对于所述第二移动设备;以及 所述第二私有数据集合是经由所述第二无线网络来接收的; 确定不将所述第二私有数据集合与所述多个移动设备共享;以及经由所述第二通信技术向所述多个移动设备中的其它移动设备发送所述第二共享数据集合。`
【文档编号】H04W4/06GK103733656SQ201280036967
【公开日】2014年4月16日 申请日期:2012年6月14日 优先权日:2011年6月17日
【发明者】D·克里希纳斯瓦米, S·S·索利曼, S·R·埃拉维利, R·古普塔, J·R·多斯桑托斯 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1