控制应用对网络的接入的制作方法

文档序号:7885924阅读:243来源:国知局
专利名称:控制应用对网络的接入的制作方法
技术领域
概括地说,本发明涉及无线通信系统中的操作,具体地说,涉及用于管理用于用户设备上的应用的连接资源的方法和装置。
背景技术
应用(Apps)或设备小程序现在可用于操作以向无线设备提供很大范围的附加服务和特性。例如,现在无线设备有可能下载并启动设备小程序以执行增值功能,诸如购物、搜索、定位、驾驶导航或任何其它功能队列。网络和应用提供商通常为设备用户提供这些设备小程序以收取额外的费用。因此,设备小程序的使用增加了无线设备的功能性和可用性并且为设备用户提供了该设备本身最初没有的特性和便利性。通常,无线设备使用多种无线中的任何一种与一个或多个通信网络交互。例如,该无线设备可以包括使用蜂 窝、WiF1、蓝牙或其它类型的无线接入技术提供通信的不同无线电。因此,执行在无线设备上的应用通常被提供了默认路由确定该应用将用于与适当网络通信的无线电和相关联的无线信道。但是,对智能选择给定应用通过何种无线电通信的兴趣在增加。这在部分上是由于多重无线设备(例如,3G/WiFi设备)的数量的增加以及可能为运营商带来容量问题的网络业务的增加。因此,关于这种性能问题,需要将业务卸载到其它可能进行这种卸载的无线电上并且不会明显地降低应用性能,或者可以根据智能无线电选择实际地提高应用性能。不幸的是,所建议的影响无线电选择的解决方案是低效的、昂贵的并且可能不适用于传统应用。例如,一种推荐的解决方案可能要求修改所有应用以明确地指出要使用的优选无线电。这一解决方案可能非常低效并且昂贵,因为每个无线设备处的应用需要升级到特定无线电优选并且可能需要考虑每个设备处可用的无线电资源。此外,这种解决方案对于不可能进行这种升级的传统应用是不可行的。因此,需要一种高效的并且低开销的机制来为传统和非传统应用提供智能无线电选择以便每个应用利用可用的最理想的无线电。

发明内容
在一个方面,公开了一种无线通信的方法。所述方法包括拦截来自期望使用通信资源的应用的请求,并且保存所拦截的请求。所述方法还包括评估是否可以释放所保存的请求,以及基于所述评估的结果来释放所保存的请求。在另一个方面,用于评估的时间和/或所述评估的结果可以是空中链路效率、网络指示、定位、上下文认知、一天中的时间、当前网络负载、过去的网络负载模式和/或随机化的等待时间的函数。另一个方面公开了具有存储器以及耦合至该存储器的至少一个处理器的无线通信装置。所述处理器配置为拦截来自期望使用通信资源的应用的请求。所述处理器还配置为保存所拦截的请求并且评估是否可以释放所保存的请求。所述处理器基于所述评估的结果来释放所保存的请求。在另一个方面,一种装置包括用于拦截来自期望使用通信资源的应用的请求的模块。所述装置还包括用于保存所述拦截的请求的模块以及用于评估是否可以释放所保存的请求的模块。所述装置还具有用于基于所述评估的结果来释放所保存的请求的模块。另一个方面公开了一种用于在无线网络中进行无线通信的计算机程序产品。计算机可读介质具有存储在其上的程序代码,所述程序代码由处理器执行时,使所述处理器执行拦截来自期望使用通信资源的应用的请求并且保存所拦截的请求的操作。所述程序代码还使处理器评估是否可以释放所保存的请求。所述程序代码还使处理器基于所述评估的结果来释放所保存的请求。这已经广泛地概述了本发明内容的特性和技术优势以便更好地理解下面的详细描述。下面将描述本发明内容的其它特性和优势。本领域的技术人员应该了解的是本发明内容可以容易地用作修改或设计其它结构以实现本发明内容的相同目的的基础。本领域的技术人员还应该认识到的是这些等效构造并不背离在所附权利要求中提出的本发明的技术。结合附图通过下面的描述,将会更好地理解对于其结构和操作方法都被认为是本发明的特性的新颖特性与其它目的和优势。但是,应该清楚地理解,每个附图只是为了举例和描述的目的而提供的,而并不是意在定义本发明内容的限制。


结合附图参照下面的描述,本申请中描述的前述方面将更容易变得显而易见:图1示出了示例性网络环境,该示例性网络环境图示了智能无线电选择系统的方面。图2示出了用于智能无线电选择的示例性设备架构。图3示出了配置为提供智能无线电选择的示例性设备。图4示出了用于提供智能无线电选择的示例性方法。图5示出了提供智能无线电选择的示例性装置。图6示出了示例性通信网络,该示例性通信网络图示了由智能无线电选择系统提供的流移动性的方面。图7示出了用于提供流移动性的示例性方法。图8示出了用于提供流移动性的示例性方法。
图9示出了当没有用户参与时,来自用户设备的无线电活动的示例。图10示出了用于延迟和聚合应用无线电请求的示例性设备架构。图11示出了用于延迟和聚合应用无线电请求的示例性方法。图12示出了用于延迟和聚合应用无线电请求的示例性方法。图13示出了用于控制应用对网络的接入的方法。
具体实施例方式下面的说明书描述了智能无线电选择系统的实现,该智能无线电选择系统操纵以为传统和非传统应用提供智能无线电选择,使得每个应用利用可用的最理想无线电。本申请描述的技术可以用于各种无线通信网络,例如码分多址(CDMA)网络、时分多址(TDMA)网络、频分多址(FDMA)网络、正交FDMA (OFDMA)网络、单载波FDMA (SC-FDMA)网络等。术语“网络”和“系统”通常交互使用。CDMA系统可以实现例如通用陆地无线接入(UTRA)、CDMA2000等的无线电技术。UTRA技术包括宽带CDMA(W-CDMA)和低码片速率(LCR)。CDMA2000包括IS-2000、IS-95和IS-856标准。TDMA网络可以实现诸如全球移动通信系统(GSM)之类的无线技术。OFDMA系统可以实现例如演进型UTRA (E-UTRA)、IEEE802.11、IEEE802.15、IEEE802.16、IEEE802.20、Flash-OFDM 等的无线技术。UTRA、E-UTRA 和 GSM 是通用移动电信系统(UMTS)的一部分。长期演进(LTE)是使用E-UTRA的UMTS的即将发布的版本。在来自名为“第3代合作伙伴项目”(3GPP)的组织的文档中描述了 UTRA、E-UTRA、GSM、UMTS和LTE。在来自名为“第3代合作伙伴项目2” (3GPP2)的组织的文档中描述了CDMA2000。这些各种无线技术和标准是本领域内公知的。图1示出了示例性网络环境100,示例性网络环境100图示了智能无线电选择系统的方面。网络环境100包括设备102和通信网络104。设备102包括多个无线电,以使用相应的无线电信道106与网络104通信。设备102还包括智能无线电选择系统108,其操作以选择要由特定的应用使用的特定无线电。在操作期间,设备102执行能够使用多个无线电中的任何一个来与网络104连接的应用。例如,执行中的应用发起联网函数调用(诸如套接字层调用)以请求用于与网络104通信的网络资源。传统的系统通常基于默认路由配置来处理套接字层调用,以将预定的无线电资源绑定到该应用。然而,在各种实现中,智能无线电选择系统操作以拦截来自该应用的联网函数调用,并且选择适当的无线电由该应用使用。然后,执行绑定过程以便将该应用绑定到网络资源(即,已经选择的无线电)。由于智能无线电选择系统作为对应用的常规操作的响应而执行以使用无线电资源,因此该系统可以与传统的和非传统的应用一起操作,而无需任何应用修改或升级。下面将提供对该智能无线电选择系统的更详细的描述。图2示出了提供智能无线电选择系统的示例性设备架构200。架构200包括连接引擎202、应用层204、套接字层206和无线电单元208。应用层204包括可以执行用于提供各种功能并且使用无线电单元208中的一个或多个无线电与外部网络进行通信的应用。套接字层206发起调用(或请求)以便在特定应用和无线电之间建立绑定。连接引擎202操作以根据本申请中给出的各个方面提供智能无线电选择。在操作期间,连接引擎202拦截来自应用层204处的应用的联网函数调用(诸如套接字层调用)。一旦拦截了联网函数调用,连接引擎202操作以从无线电单元208中的多个候选无线电中选择一个理想的无线电/接口。例如,连接引擎202基于多种选择标准来选择无线电。当选择了无线电/接口时,连接引擎202使用套接字层206的套接字层函数在应用和已经选择的无线电/接口之间建立连接。例如,套接字层函数可以包括连接函数"ConnectO ”、绑定函数“BindO ”、设置套接字选项函数“Setsockopt O ”和/或任何其它适当的套接字层函数。因此,设备架构200提供智能无线电选择,使得可以将在设备处执行的传统和非传统应用绑定到最优选的无线电/接口。图3示出了提供智能无线电选择的示例性无线设备300。设备300包括处理器302、存储器304、无线电组件312、应用层组件306、套接字层组件310和连接引擎组件308,它们都使用通信总线314相耦合以进行通信。应该注意的是,设备300只是一种实现,并且其它实现也是可能的。在一个方面,处理器302包括CPU、处理器、门阵列、硬件逻辑、存储器元件和/或执行软件的硬件中的至少一个。处理器302操作以控制设备300的操作,使得可以将在设备300处执行的应用绑定到最期望的无线电。在一种实现中,处理器302配置为执行关于执行多个功能中的任何一个的计算机可读指令。例如,处理器302操作以分析从设备300接收到或传送的信息以执行智能无线电选择。在另一个方面,处理器302操作以生成可由存储器304、无线电组件312、应用层组件306、套接字层组件310和/或连接引擎组件308使用以执行智能无线电选择的信息。无线电组件312包括硬件和/或执行软件的处理器,其配置为提供可以用于将设备300与多个外部实体相连接的多个无线电/接口,诸如使用多个无线电信道316与外部通信网络相连接。例如,无线电组件312提供用于使用蜂窝、WiF1、蓝牙或任何其它技术进行通信的无线电/接口,以使用无线电信道316与通信网络进行通信。应用层组件306包括硬件和/或执行软件的处理器,其配置为存储和/或执行设备300上的一个或多个应用。在一种实现中,应用层组件306配置为允许应用发起联网函数调用以请求联网服务,诸如为了与外部网络或系统通信的目的而请求到无线电/接口的连接。套接字层组件310包括硬件和/或执行软件的处理器,其配置为执行套接字层函数。在一种实现中,套接字层函数包括诸如ConnectO、BindO和SetsockoptO之类的函数。ConnectO函数操作以在应用和特定无线电/接口之间建立连接。例如,可以从由无线电组件312提供的多个候选无线电中选择特定无线电/接口。在一个方面,套接字层组件310配置为执行不同的套接字层函数或命令。连接引擎组件308包括硬件和/或执行软件的处理器,其配置为执行对系统资源的评估,以选择由应用使用的特定无线电。在各种实现中,连接引擎组件308配置为集中式无线电控制器,用于基于下面的选择标准中的一个或多个来选择特定无线电,诸如但并不仅限于:用户策略、运营商策略、无线电度量、应用需求、网络可用性、供应商提供的度量和接入点可用性。用户策略可以包括由设备用户关于由在该设备处执行的应用的无线电接入而设置的策略。运营商策略可以包括由网络运营商关于设备或应用的网络接入所设置的策略。无线电度量可以包括无线电性能的测量或用于为特定应用或操作环境选择最优选的无线电的其它类型的测量。应用需求可以包括与请求的应用相关联的需求,诸如带宽需求或延迟/性能需求。网络可用性可以包括关于特定无线电接口上的特定网络的可用性的信息。供应商提供的度量可以包括用于从无线电度量(诸如接收信号强度指示和分组丢失率)转换为特定无线电接口可用的吞吐量和延迟性的信息。接入点可用性可以包括指定被来自其它设备或能够配置无线链路但不能将分组转发给网络的那些设备的大量业务拥塞的接入点的唯一标识符的信息。存储器304包括RAM、ROM、EEPROM或用于允许信息存储在设备300处并可取回的任何其它类型的存储设备。在一种实现中,存储器304用于存储处理器302执行的计算机可读指令。存储器304还可以用于存储包括由处理器302、无线电组件312、应用层组件306、套接字层组件310和/或连接引擎组件308中的任何一个生成的数据的任何多个其它类型数据。存储器304可以有多种不同的配置,包括随机访问存储器、蓄电池存储器、硬盘、磁带等。各种特性还可以实现在存储器304上,诸如压缩和自动备份。存储器304配置为存储预加载库318和联网库320。在一种实现中,联网库320包括POSIX或伯克利套接字应用编程接口(API),其包括用于以C编程语言开发执行进程内通信(最普遍的是用于跨计算机网络的通信)的应用的函数。例如,POSix API包括诸如Connect O、Bind O 和 Setsockopt ()之类的函数。预加载库318用于拦截来自应用层306处的应用的套接字调用。例如,预加载库318至少包括联网库320所提供的API函数的子集,并且以比联网库320更高的优先级链接到执行环境。在操作期间,该系统配置在该设备第一次启动时链接器使用的环境。在一种实现中,该链接器操作以在开始常规的库链接之前检查要加载的库的环境。通常,该链接器加载提供联网API的联网库320。应用使用该接口创建并连接套接字以建立网络通信。例如,在一种实现中,该链接器扫描应用及其从属,使得将所有内容都加载到存储器中。该链接器配置为在其它库之前加载预加载库318,并填充查询表,以便满足后续加载的库,并且能够使用预加载库318。预加载库318包括联网库320提供的API套接字的至少一个子集。当应用进行联网函数调用以创建或连接套接字时,由预加载库318处理这一调用(或拦截)。例如,应用提供具有参数或属性(诸如IP地址、目的地、以及提供给Connect O函数的文件描述符)的Connect O函数的函数指针。然后,预加载库318生成对集中式无线电控制实体的请求,以便针对指定的连接选择最合适的网络接口。例如,预加载库318将该请求发送给连接引擎组件308,以确定要使用的适当的无线电。在选择了适当的无线电之后,执行对联网库320套接字API的调用,以便在控制返回到预加载库318之前完成连接建立。例如,连接引擎组件308操作以调用联网库320的函数,以便将已经选择的无线电绑定到发出请求的应用。连接引擎组件308配置为以各种方式从多个候选无线电中智能地选择无线电。例如,连接引擎组件308可以配置为使用上面的选择标准中的一个或多个来选择无线电。一旦选择了无线电,则连接引擎组件308将该无线电绑定到该应用。例如,在一种实现中,通过调用到初始的联网库320中来执行绑定。运行时间链接器提供专门的接口,其能够指定具体的库标识符和函数标识符并存储该信息。因此,连接引擎组件308处的函数和预加载库318可以容易地访问函数联网库320中的函数(诸如Bind O函数),以便将已选择的无线电绑定到该应用。下面提供对设备300提供智能无线电选择的操作的更详细的描述。在各种实现中,智能无线电选择系统包括具有存储或嵌入在计算机可读介质上的一个或多个程序指令(“指令”)或“代码”集合的计算机程序产品。当所述代码由至少一个处理器(例如,处理器302)执行时,所述代码的执行使得处理器302控制设备300以提供本申请中描述的智能接口选择系统的功能。例如,计算机可读介质包括软盘、CDR0M、存储卡、闪存设备、RAM、ROM或与设备300交换任何其它类型的存储设备或计算机可读介质。在另一个方面,可以将代码集合从外部设备或通信网络资源下载到设备300。当执行该组代码时,用于提供本申请中描述的智能接口选择系统的方面。图4示出了用于提供智能无线电选择的示例性方法400。为了清楚起见,下面参照图3中不出的设备300来描述方法400。在一种实现中,处理器302执行代码的一个或多个集合,以控制设备300的功能元件来执行下面描述的功能。在方框402处,启动应用。该应用可以是作为应用层组件306的一部分的传统的或非传统的应用。例如,该应用可以是生成联网函数调用以使用无线电组件312处可用的无线电连接无线网络的网络浏览器。在方框404处,配置并加载预加载库。例如,预加载库318包括通常由应用用于接入通信网络的联网库320中提供的联网函数的子集。预加载库318中的联网函数配置为拦截来自设备处执行的应用的联网函数调用。例如,预加载库318包括可用于由设备300处执行的应用拦截套接字调用的POSIX套接字函数。在一种实现中,预加载库318被存储在存储器304中。在一种实现中,预加载库318函数配置为接收从正调用的应用传递的参数,并使用这些参数生成去往连接引擎组件308的请求,以选择最适合于该应用的目的的无线电。在方框406处,将该预加载库链接到执行环境中。例如,处理器302将预加载库318以高于联网库320的优先级链接到执行环境中。因此,由应用进行的联网函数调用会被拦截,并由预加载库318中的函数进行处理,而不会由联网库320中类似的函数来处理。在方框408处,拦截来自该应用的联网函数调用。例如,该联网函数调用可以是POSIX套接字函数调用,诸如Connect O函数。该应用生成联网函数调用以链接到无线电,以允许与外部网络的通信。由于将预加载库318以高于联网库320的优先级链接到执行环境中,因此,由预加载库318中的函数来拦截(或处理)该联网函数调用。在方框410处,预加载库318中被调用的函数生成对连接引擎组件308的选择请求,以选择适当的无线电由该应用使用。该请求包括作为由连接引擎组件308用于选择由该应用使用的适当无线电的选择标准的一部分的任何信息。在方框412处,评估选择标准。在一种实现中,连接引擎组件308操作以评估上面描述的选择标准。例如,连接引擎308与无线电组件312通信以评估作为选择标准的一部分的无线电度量。在方框414处,基于对选择标准的评估来选择无线电。例如,连接引擎组件308操作以选择与选择标准最匹配的无线电。 在方框416处,将已经选择的无线电绑定到该应用。例如,在一种实现中,连接引擎组件308调用联网库320的BindO函数以将已选择的无线电绑定到该应用。例如,连接引擎组件308知道联网库320以及如何直接访问其函数而不被预加载库318拦截。在方框418处,该应用随后利用已经选择的无线电进行网络通信。在可选的操作中,方法继续到方框412,在此连接引擎组件308执行选择标准的周期性评估以确定当前无线电是否与选择标准最匹配。如果在选择标准的另一次评估之后确定除了当前无线电以外的一个无线电与选择标准最匹配,则该连接引擎308可以销毁该连接作为触发该应用重新启动连接以便为新的连接选择不同无线电的手段。因此,该可选操作允许周期性地评估选择标准以确保选择最适当的无线电来进行需要的通信。因此,方法400提供了与传统和非传统应用一起使用的智能无线电选择。应该注意的是,该方法400只是一种实现,并且方法400的操作可以重新排列或者进行修改使得其它实现也是可能的。图5示出了提供智能无线电选择的示例性装置500。例如,装置500适合于用作图1中示出的设备102。在一个方面,装置500由包括一个或多个用于提供本申请中描述的智能无线电选择系统的方面的模块的至少一个集成电路来实现。例如,在一个方面,每个模块包括硬件和/或执行软件的硬件。装置500包括第一模块,其包括用于拦截来自需要无线电接入的应用的联网函数调用的模块,其中,在一个方面包括预加载库318。装置500还包括第二模块,其包括用于基于选择标准从多个候选无线电选择无线电的模块,其中,在一个方面包括连接弓I擎模块308。装置500还包括第三模块,其包括用于将该无线电绑定到应用的模块(506),其中,在一个方面包括连接弓I擎模块308。除了智能接口选择,该系统还操作以提供如下所描述的流移动性。图6示出了示例性通信网络600,示例性通信网络600图示了由智能无线电选择系统提供的流移动性的方面。通信网络600包括用于使用一个或多个通信接口 606与网络604通信的设备602。例如,该通信接口 606包括蜂窝、WiF1、蓝牙和任何其它适当的通信技术。在操作期间,设备602处的应用生成与网络资源通信的连接请求。如上所讨论的,系统108执行智能接口选择以满足该请求。为了提供流移动性的方面,该系统操作以动态地生成流绑定规则:指定从接口 606选择的特定通信接口,以封装用于在本地代理608和设备602之间路由的分组。在传统系统中,IP流绑定通常在包括源IP地址、目的IP地址、源端口、目的端口和协议的5元组中进行描述。因此,这一描述由手持式设备602提供给本地代理608,并且由本地代理608相应地对匹配这一描述的分组进行路由。不幸的是,使用5元组对流进行注册可能不具有带宽效率,因为即使改变的唯一元组可能是源端口,也需要发送该5元组的所有元素。在各种实现中,该系统在开始连接时动态产生流绑定规则,这样可以通过最适当的无线电/接口来传输数据流。例如,在一种实现中,该系统分配一个暂时端口由该应用用于网络通信。然后,系统108仅基于该暂时端口动态生成流绑定规则,其指示要与该暂时端口相关联的特定数据流并且在特定无线电/接口上传输。通过在绑定规则中只利用暂时端口,不需要向本地代理传输整个5元组,由于其节省了传输带宽因此相比于传统系统更高效。在另一种实现中,针对该连接动态生成IPv6地址。例如,生成属于移动节点前缀的每一连接IPv6地址并将其分配给移动IP地址。接下来,动态生成只基于每一连接IPv6地址的流绑定规则。在上面的任何一种情况中,将绑定规则通知给网络604上的本地代理(HA) 608。HA608根据该绑定规则将分组路由给设备。例如,在HA608处接收从通信节点(CN) 610发送给设备的数据分组,然后使用该绑定规则将其路由给设备602。下面的方法描述智能选择系统所提供的流移动性。图7示出了用于提供流移动性的示例性方法700。为了清楚,下面参照图3中示出的设备300和图6中示出的网络600描述了方法700。在一种实现中,处理器302执行一组或多组代码以控制设备300的功能单元来执行下面描述的功能。在方框702处,由应用创建套接字。例如,设备602处执行的应用创建套接字以便从作为网络604的一部分的网络资源接收数据流。在方框704处,拦截来自该应用的联网函数调用。例如,该联网函数调用可以是POSIX套接字函数调用,诸如Connect O函数。该应用生成联网函数调用以便连接到无线电以允许与外部网络的通信。由于预加载库318以高于联网库320的优先级链接到执行环境中,因此由预加载库318中的函数拦截(或处理)该联网函数调用。在方框706处,执行智能接口选择以满足该联网函数调用。例如,执行方法400的方框408到414以选择由该应用使用的无线电/接口。因此,选择设备602提供的接口 606中的一个由该应用使用。在方框708处,分配暂时本地端口。在一种实现中,连接引擎308向该应用分配暂时本地端口。例如,暂时(即,短期的)端口是从预定义的范围内选择的IP通信的传输协议端口。该分配是临时的,并且只对该通信会话的持续时间内有效。在完成该通信会话之后该端口即可重新使用。在方框710处,仅基于该暂时端口来动态地生成流绑定规则。在一种实现中,连接引擎308仅基于分配的暂时本地端口生成绑定规则。在方框712处,将流绑定规则通知给该设备相关联的本地代理。例如,连接引擎308将该流绑定规则传输给本地代理608。然后,该本地代理608使用该流绑定规则以便使用适当无线电/接口将流路由到设备602。因此,方法700在智能无线电选择系统中提供流移动性。应该注意的是,方法700只是一种实现方式,并且该方法700的操作可以重新排列或进行修改,这样其它实现方式也是可能的。图8示出了用于提供流移动性的示例性方法800。为了清楚,下面结合图3中示出的设备300和图6中示出的网络600描述方法800。在一种实现中,处理器302执行一组或多组代码以控制设备300的功能单元以执行下面描述的功能。在方框802处,由应用创建套接字。例如,设备602处执行的应用创建套接字以便从作为网络604的一部分的网络资源接收数据流。在方框804处,拦截来自该应用的联网函数调用。例如,该联网函数调用可以是POSIX套接字函数调用,诸如Connect O函数。该应用生成联网函数调用以便连接到无线电以允许与外部网络的通信。由于预加载库318以高于联网库320的优先级链接到执行环境中,因此由预加载库318中的函数拦截(或处理)该联网函数调用。在方框806处,执行智能接口选择以满足该联网函数调用。例如,执行方法400的方框408到414以选择由该应用使用的无线电/接口。因此,选择设备602提供的接口 606中的一个由该应用使用。在方框808处,生成属于移动节点前缀的每一连接IPv6地址。例如,由连接引擎308生成每一连接IPv6地址。在方框810处,将该每一连接IPv6地址指派给移动IP地址。例如,可以由连接引擎308来执行该指派。在方框812处,仅基于每一连接IPv6地址动态生成流绑定规则。在一种实现中,连接引擎308仅基于该每一连接IPv6地址动态生成绑定规则。这实现了高效的带宽利用,因为其它参数(诸如端口或目的地址)是不需要的,它本来是会消耗本地代理的处理资源的。在方框814处,将流绑定规则通知给该设备相关联的本地代理。例如,连接引擎308将该流绑定规则传输给本地代理608。然后,该本地代理608使用该流绑定规则以便使用适当无线电/接口将流路由到设备602。因此,方法800在智能无线电选择系统中提供流移动性。应该注意的是,方法800只是一种实现方式,并且该方法800的操作可以重新排列或进行修改,这样其它实现方式也是可能的。在诸如智能电话、个人数字助理等这样的用户设备中,软件应用可以继续执行,SP使用户没有活动地使用该设备。诸如社交网络应用、电子邮件或其它通信应用、数据种子等这样的应用(流行的示例包括Facebook、GmaiI> Market、Twitter等)可以继续发送和接收数据,即使用户当前没有使用该设备。图9示出了在大约两个小时内用户设备的应用活跃度的抽样等级,在此期间,用户没有与设备交互并且屏幕是关闭的。可以看到,即使在这种情况下,还是可以看到在设备表面上没有使用时还继续操作的应用所带来的活跃度峰值。这些应用的活动可以使用诸如无线电单元208中的无线电等这样的通信资源。这些应用可能触发用户设备从空闲模式到连接模式的频繁转换,或者它们可能干扰进入空闲模式或其它替代的连接模式(诸如不连续接收(DRX))的用户设备。当用户没有活动地使用该设备时,用对无线电活动的提升等级可能造成电池寿命的过早耗尽、无线网络的负载上不理想的增高或其它不理想的效果。采用本申请中公开的技术和结构,设备可以采用分层(为了解释说明的目的,称为封装器)提供应用接口(API)以便捕获来自后台应用的数据并保存它们直到激活无线电资源并且以同步的方式传输应用数据和执行任务的理想的点。通过聚合这些任务/数据请求,可以减少频繁的唤醒用户设备或在用户当前没有活动地使用该设备时节省其它通信资源。图10示出了用于如上所述的聚合应用事件的架构的示例性框图。如图所示,这些方框可以划分在应用处理器1050和调制解调器处理器1060之间,但是各种功能可以与图10的示例不同地进行组织。应用1002与应用连接引擎1008和高等级操作系统(HL0S)1006交互。应用连接引擎1008可以与调制解调器连接引擎1010通信。该调制解调器连接引擎可以管理诸如无线电单元208和其中的无线电这样的通信资源。封装器1004能够捕获应用1002和HL0S1006之间的数据。封装器1004可以在用户不活动的周期内聚合来自应用1002的数据并保存它们直到确定的时间才将它们释放给HL0S1006以及最后到达无线电单元208进行操作/传输。在一个方面,封装器1004保存捕获的数据,然后可以评估是否可以释放保存的数据。可以根据评估结果释放数据。评估时间和评估结果都可以基于各种参数,诸如但并不仅限于空中链路效率、网络指示、位置、上下文认知、一天中的时间、当前网络负载和过去的网络负载模式。封装器1004可以是对应用1002不可见的,这样它们就不知道它们的数据/请求被保持/聚合。封装器1004可以是单独的组件或者可以整合到另一个组件中,诸如应用连接引擎1008。图11中示出了这种聚合的一个示例。应用I到4中的每一个请求使用无线电资源。这些套接字调用可以被封装器1004捕获并保持。在确定的时间点,封装器1004将会以聚合的方式释放这些套接字调用。在一个方面,封装器1004评估是否释放这些调用。释放是基于封装器1004的评估结果的。评估时间和评估结果可以是各种参数的函数,诸如但并不仅限于空中链路效率、网络指示、位置、上下文认知、一天中的时间、当前网络负载和过去的网络负载模式。在另一个方面,如图12中所示,针对应用的连接引擎API (应用接口)可以指示其后台活动/操作请求,在此某些应用只能容忍某个量的延迟(例如,X秒、Y秒等)。封装器可以提供回调函数以便向这些应用指示到了连接的时间(例如,AP1.Go)。在接收到这一回调之后,应用可以根据需要进行通信。作为替代,通过API的应用可以提供截止期限,并且该封装器可以在遵守截止期限的同时明显地延迟该连接,并且允许应用在任何截止期限之前连接。在又另一个方面,API还可以允许应用注册其需要立即接入(例如,儿童追踪、紧急通知等)。一般而言,该封装器可以学习或读取指示哪个进程名称是/不是延迟容忍的数据库。在又另一个方面,运营商策略允许根据定制来控制封装器的行为。例如,黄金周期是I分钟,预付费周期是I个小时等。应用的聚合和延迟可以选择性地完成,S卩,实现为用户不会被中断。可以采取不同因素来确定何时延迟/聚合应用对通信资源的使用。例如,延迟可以根据用户设备的某些特性来实现,诸如屏幕是关闭的,或音频输出是关闭的等。延迟可能不只针对已知能够处理这种延迟的应用来实现。可以在无线电没有加载时,或者用户设备/电话不在使用中(没有电话呼叫、音频流等)时实现延迟。或者可以利用上面的因素或其它因素的组合来实现延迟。当安装到多个用户设备上的应用同时(或在很短的时间周期内)请求接入网络时,该网络可能会被建立数据连接相关联的峰值网络信令过负载。例如,编程为在一天的固定时间发生的自动广播通知(例如,软件更新、动态内容的周期性更新等)可能会造成执行在多个不同用户设备上的多个应用请求与网络的数据连接。在一种配置中,为了避免这种同步性,可以根据随机数计算在其后释放所保存的请求的时间延迟。在一种配置中,该架构可以包括在拦截到请求时启动的随机定时器。该定时器可以确定保存该请求的随机周期。当随机时间周期期满时,可以将该请求释放给目的接收方。例如,一旦随机定时器期满则可以释放该请求。该随机延迟用于解除多个用户设备上的网络信令和数据连接建立程序的同步性。在一个方面,无线电认知可以辅助减少应用连接的数量,其可能中断信令加载和/或节省用户设备电池寿命。在另一个方面,可以采用不同因素来确定评估是否可以释放所保存的请求的时间和确定该评估决定。具体而言,表示空中链路效率、网络指示、定位、上下文认知、一天中的时间、当前网络负载和过去的网络负载模式的各种参数可以用于确定评估时间和评估决定。评估时间和评估决定(或结果)可以都是一天中的时间点的函数。例如,评估时间可以更长并且评估决定可以在其理解预期该网络负载很重时倾向于在一天中的某个时间不释放保存的请求。评估时间和评估决定可以都是过去的网络使用模型随时间的函数。过去的网络使用模型可以使得在封装器1004处可用,通过例如通过网络下载、离线下载等。根据本发明内容的一个方面,根据网络负载打开或关闭到上行链路的入口。网络负载可以指的是无线电系统的整体负载(控制层面加上数据层面),或仅是控制层面或用户层面的指定负载。当网络负载较低时,打开该入口。当网络负载较高时,关闭入口。在一个示例中,可以通过观察随机接入信道(RACH)上的负载,并且尤其通过观察RACH应答来估计网络负载。RACH在大多数蜂窝网络上都是可用的并且可以用于传输信令消息。RACH可以由终端用于从空闲模式转换到激活模式。RACH还可以用于在终端处于激活模式时重新同步。一般而言,RACH上的负载与信令负载相关联,因为该RACH是在连接建立过程中携带无线资源控制(RRC)控制的信道。例如在LTE系统中,RACH应答是广播的,并且允许客户端A看到针对客户端B、C、D等的应答。换句话说,即使特定设备没有接入随机接入信道,相同的设备还是可以观察是否有其它设备同时通过该RACH接入该网络。由于该信道通常用于信令,因此通过观察这一信道(即,RACH)上的负载,用户设备可以确定是否由于信令存在很重的负载。在一个方面,封装器1004周期性地监听RACH响应信道上的负载并且在整体负载低于预定值(诸如确定的平均负载值)时打开入口。在一个示例中,监听RACH响应信道允许图1的用户设备102在网络低使用率的时间周期内执行到网络104的时间宽容的连接。或者换句话说,可以允许在网络104中低使用率的时间周期内的多重连接。如果多个用户设备102采用封装器1004来监听网络负载则可以使用随机回退来分布负载。例如,如果多个用户设备102正在等待接入网络104,则一旦出现低使用率周期,则应该允许设备102交错地接入网络104以避免出现负载突发。也就是,第一用户设备可以在时间点I接入网络,第二用户设备将在时间点2 (晚于时间点I)接入网络,等。在另一个方面,从诸如载波与噪声比(Ec/NO)、接收信号码字功率(RSCP)、终端传输功率或基站的热噪声增量(RoT)。在另一个方面,到应用到网络的连接基于空中链路效率。具体而言,可以通过允许在信道状况良好或最优的时候允许连接到网络来增加或最大化无线链路容量。例如,可以监听信噪比(SNR)并且在该SNR低于预定门限时不允许接入网络。在另一个示例中,可以通过根据用户设备当前使用的无线接入技术(RAT)允许连接来增加或最大化空中链路效率。具体而言,如果采用公知的快速RAT则打开入口(例如,允许网络接入)。例如在3GPP类型部署中,用户设备可以支持GSM、GPRS业务、HSPA和LTE。可以建立触发器不允许打开入口,除非该RAT是HSPA或LTE。这只针对快速RAT连接来提供,其可能降低或最小化连接期间的损耗。在又另一个根据空中链路效率允许连接的示例中,可以光差重选状态。当用户设备独立地从一个服务节点切换到不同的服务节点时进行重选。在一个示例中,如果出现任何指示将要发生重选的信号,则不允许应用连接(即,打开入口)。具体而言,允许在连接到网络之前完成重选r(或任何潜在的重选)。可选地,在另一个示例中,强制进行较早的重选。在另一个示例中,封装器1004可以触发额外的无线测量,诸如频率内测量和/或频率间测量,以便助于在封装器1004打开入口允许连接到网络104之前的重选。该测量可以向服务小区提供用于确定切换是否能更好的携带业务的信息。在又另一个方面,封装器1004可以监听并跟踪负载,然后释放连接请求并允许在负载较低,(相比于已知的平均负载值)或当负载低于已知峰值负载值时连接该网络。如上所讨论的,可以通过观察RACH推导和监听网络负载。另外,可以通过其它方式推导并从而监听网络负载,诸如但并不仅限于下行链路业务与导频比或其它无线电的量、来自无线接入网络的指示和有效用户的数量。例如,在高级EVDO网络中,基站可以向用户提供关于单播和/或广播信号中的负载的指示。在另一个方面,可以根据无线电的共存允许连接。例如,LTE和蓝牙可能会基于LTE的载波频率干扰。另外,LTE和WLAN也可能会干扰。在具体示例中,如果用户设备正在使用蓝牙或WLAN (并且有实际的干扰或预计到的干扰),则LTE入口保持关闭并且不允许发起请求的应用连接到该网络,直到该干扰无线电不再使用为止。在另一个示例中,在存在共存问题时封装器1004从共存管理器接收信息。在这个示例中,在存在共存问题时封装器1004不允许应用连接到该网络。在另一个方面,应用到网络104的连接基于封装器1004接收到的网络指示。该指示可以是由封装器1004永固确定何时允许到该网络的连接的无线指示。在一个示例中,当到了发送后台业务的良好时机时,该网络可以广播指示。具体而言,网络载波可能对每分钟的连接数量有限制,并且该网络可以广播每分钟可用连接的数量或者该网络可以指示在设备准备好的同时应用请求网络连接时的接入概率因素。在一种配置中,如果生成的随机数小于该接入概率因素则允许接入。封装器1004接收广播并确定其是否可以打开入口并允许该应用的网络连接。在一个示例中,封装器1004接收到“go”比特并且触发该封装器1004打开入口并允许发起请求的应用接入网络104。该指示可以基于小区或远程网络控制器区域,取决于基站还是无线网络控制器(RNC)是瓶颈。“go”比特可以应用于单个用户,或应用于用户集合(诸如寻呼集合)中的所有用户。根据无线接入网络的类型决定应用连接,诸如GPRS、EDGE、UMTS、HSPA, cdmalx、EV-DO、LTE、W1-F1、W1-Max等。可以用关于每个无线接入类型的信息配置该封装器,例如为了避免在较慢的网络上(例如,(GPRS))或信令效率较低的网络上(例如,(UMTS))上释放连接。相反地,该封装器可以在网络提供廉价连接时(诸如WLAN)释放该连接。该封装器可以使用来自调制解调器的信息,尤其是关于空闲模式或如果终端将要或正在连接另一个服务小区时的连接模式移动性的信息。该封装器可以允许在释放业务之前完成重选或切换处理。这可以确保在无线连接是最适合于传输这一业务时释放该业务。例如如果发生从UMTS到LTE的重选,则该封装器可以等到终端占用LTE以发起连接的时候。该封装器可以命令调制解调器执行操作以便加速或优化即将进行的无线连接。例如当调制解调器在可能适合占用的给定频率上占用给定无线接入技术(RAT),但是对于携带数据连接并不理想时,该封装器指示调制解调器执行频率间搜索以搜索可用RAT。该调制解调器还可以发起向更好的RAT/频率的重选以便准备使封装器打开入口。这些程序有助于在更合适的载波/RAT上携带业务而无需网络在连接模式中发起切换。在另一个方面,到网络104的应用连接基于可用网络资源的预测。在一个方面,封装器1004通过接收输入认知位置/上下文,诸如但并不仅限于一天中的时间、动作状态、蜂窝基站标识的指纹(例如,设备从小区X、y和z接收导频并且接收功率大约是-80、-65、_120dBm)、地理定位、已知接入点和位置的列表。地理定位可以由卫星系统提供,诸如GPS,或基于蜂窝网络小区ID的指纹,或基于无线局域网络接入点的存在。该封装器使用定位/上下文认知来预测另一个RAT何时将会变得可用。在另一个方面,封装器1004学习一天中的什么时间对于接入网络很充裕以及它的资源。封装器使用丰富的信息确定何时打开入口以及允许应用连接到网络。例如,用户设备可以预测该用户正在朝家里走,在家里有可用的WLAN连接。在这种情况中,封装器1004针对可容忍延迟的应用阻止其到网络的通信直到用户到家并且快速网络变得可用。在一个方面,图13中示出了用于在用户设备中控制应用接入无线通信的方法1300。在方框1302处,拦截来自期望使用通信资源的应用的请求。在方框1304处保存该请求。在方框1306处,评估是否可以释放所保存的请求。在方框1308处,根据评估结果释放该请求。虽然上面的描述关于API,但是这些概念等效地应用于硬件、固件或硬件和软件的任何组合。本领域的技术人员应该理解,信息和信号可以使用任何多种不同的技术和方法来表示。例如,在贯穿上面的描述中提及的数据、指令、命令、信息、信号、比特、符号和码片可以用电压、电流、电磁波、磁场或粒子、光场或粒子或者其任意组合来表示。本领域技术人员还应当意识到,结合本发明的公开实施例描述的各种示例性的逻辑框、模块、电路和算法步骤均可以实现成电子硬件、计算机软件或其组合。为了清楚地表示硬件和软件之间的可交换性,上面对各种示例性的部件、框、模块、电路和步骤均围绕其功能进行了总体描述。至于这种功能是实现成硬件还是实现成软件,取决于特定的应用和对整个系统所施加的设计约束条件。熟练的技术人员可以针对每个特定应用,以变通的方式实现所描述的功能,但是,这种实现决策不应解释为背离本发明的示例性实施例的保护范围。用于执行本申请所述功能的通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑设备、分立门或者晶体管逻辑器件、分立硬件组件或者其任意组合,可以实现或执行结合本申请公开实施例描述的各种示例性的逻辑框图、模块和电路。通用处理器可以是微处理器,或者,该处理器也可以是任何常规的处理器、控制器、微控制器或者状态机。处理器还可以实现为计算设备的组合,例如,DSP和微处理器的组合、多个微处理器、一个或多个微处理器与DSP内核的结合,或者任何其它此种结构。结合本发明公开实施例描述的方法或算法的步骤可以直接实现在硬件、处理器执行的软件模块或它们的组合中。软件模块可以位于随机访问存储器(RAM)、闪存、只读存储器(ROM)、电可编程ROM (EPROM)、电可擦写可编程ROM (EEPR0M)、寄存器、硬盘、移动硬盘、CD-ROM或本领域已知的任何其它形式的存储介质中。示例性的存储介质与处理器连接,处理器可以从存储介质读取信息和向其中写入信息。作为替换,存储介质可以整合到处理器中。处理器和存储介质可以位于ASIC中。ASIC可以位于用户终端中。或者,处理器和存储介质可以作为用户终端中的分立组件。在一个或多个示例性实施例中,本申请中所描述的功能可以用硬件、软件、固件,或它们的任意结合来实现。如果在软件中实现,功能可以作为一条或多个指令或代码存储在计算机可读介质上或进行传输。计算机可读介质包括计算机存储介质和通信介质,包括任何便于将计算机程序从一个地方转移到另一个地方的介质。存储介质可以是计算机可访问的任何可用介质。举个例子,但是并不仅限于,该计算机可读介质可以包括RAM、ROM、EEPROM,CD-ROM或其它光盘存储器、磁盘存储器或其它磁存储设备,或可以用于以指令或数据结构的形式装载或存储期望程序代码,并由计算机访问的任何其它介质。此外,任何连接也都可适当地被称作计算机可读介质。举个例子,如果软件是通过同轴电缆、纤维光缆、双绞线、数字用户线(DSL)、或无线技术(诸如红外、无线电和微波)从网站、服务器、或其它远程源传输的,则同轴电缆、纤维光缆、双绞线、DSL、或无线技术(诸如红夕卜、无线电和微波)包含在介质的定义中。本申请中所用的磁盘和光盘,包括光具盘(CD)、镭射影碟、光盘、数字化视频光盘(DVD)、软盘和蓝光光盘,其中,磁盘通常磁力地再生数据,而光盘则用激光光学地再生数据。因此,在一些方面,计算机可读介质可以包括非暂时性计算机可读介质(例如,有形媒介)。另外,在一些方面,计算机可读介质可以包括暂时性计算机可读介质(例如,信号)。上述的结合也可以包含在计算机可读介质的范围内。为使本领域技术人员能够实现或者使用本发明,上面提供了对所公开示例性实施例的描述。对于本领域技术人员来说,对这些示例性实施例的各种修改都是显而易见的,并且,本发明定义的总体原理也可以在不脱离本发明的精神和保护范围的基础上适用于其它实施例。因此,本发明并不限于本申请中示出的示例性实施例,而是与本发明公开的原理和新颖性特征的最广范围相一致。
权利要求
1.一种用于用户设备中的无线通信的方法,所述方法包括: 拦截来自期望使用通信资源的应用的请求; 保存所拦截的请求; 评估是否可以释放所保存的请求;以及 基于所述评估的结果释放所保存的请求。
2.如权利要求1所述的方法,其中,用于评估的时间和所述评估的结果中的至少一个是空中链路效率、网络指示、定位、上下文认知、一天中的时间、当前网络负载、过去的网络负载模式、随机化的等待时间中的至少一个的函数。
3.如权利要求1所述的方法,其中,用于评估的时间是基于确定性的值和伪随机数中的一个。
4.如权利要求3所述的方法,其中,所述评估是基于确定性的值,并且所述方法还包括输出释放指示和不释放指示中的一个。
5.如权利要求1所述的方法,其中,所述评估是概率性的,并且还包括输出释放所保存的请求的概率。
6.如权利要求2所述的方法,还包括: 基于随机接入响应信道来估计所述当前网络负载。
7.如权利要求1所述的方法,还包括: 基于下行链路业务与导频比(TRP)、载波与噪声比(Ec/NO)和有效用户的数量中的至少一个来估计所述网络负载。`
8.如权利要求2所述的方法,其中,所述空中链路效率包括指示信噪比(SNR)、无线接入网络类型、预期的无线电共存问题、替代无线接入技术的估计的接近度、以及重选接近度中的至少一个的至少一个值。
9.如权利要求1所述的方法,还包括: 在下列操作中的一个之后释放聚合的请求: 请求信道测量;以及 完成空闲模式重选。
10.如权利要求1所述的方法,还包括: 从无线接入网络接收关于网络负载状况的信息,所述释放是基于所接收的信息。
11.如权利要求10所述的方法,其中,所述关于网络负载状况的信息包括指示整体负载、数据信道的负载、信令信道的负载、以及控制信道的负载中的至少一个的值。
12.如权利要求1所述的方法,其中,所述评估包括应用关于进行中的和未来的调制解调器移动性过程中的一个的信息。
13.如权利要求1所述的方法,还包括: 指示调制解调器执行频率间搜索操作和RAT间频率间重选操作中的至少一个,以便为释放所保存的请求做准备。
14.一种用于无线通信的装置,包括: 存储器;以及 至少一个处理器,其耦合至所述存储器并且配置为: 拦截来自期望使用通信资源的应用的请求;保存所拦截的请求; 评估是否可以释放所保存的请求;以及 基于所述评估的结果释放所保存的请求。
15.如权利要求14所述的装置,其中,用于评估的时间和所述评估的结果中的至少一个是空中链路效率、网络指示、定位、上下文认知、一天中的时间、当前网络负载、过去的网络负载模式、随机等待时间中的至少一个的函数。
16.如权利要求14所述的装置,其中,用于评估的时间是基于确定性的值和伪随机数中的一个。
17.如权利要求16所述的装置,其中,所述评估是确定性的,并且所述处理器还配置为输出释放指示和不释放指示中的一个。
18.如权利要求14 所述的装置,其中,所述评估是概率性的,并且所述处理器还配置为输出进行释放的概率。
19.如权利要求15所述的装置,其中,所述处理器还配置为基于随机接入响应信道来估计所述当前网络负载。
20.如权利要求14所述的装置,其中,所述处理器还配置为基于下行链路业务与导频比(TRP)、载波与噪声比(Ec/NO)和有效用户的数量中的至少一个来估计所述网络负载。
21.如权利要求15所述的装置,其中,所述空中链路效率包括指示信噪比(SNR)、无线接入网络类型、预期的无线电共存问题、替代无线接入技术的估计的接近度、以及重选接近度中的至少一个的至少一个值。
22.如权利要求14所述的装置,其中,所述处理器还配置为在下列操作中的一个之后释放聚合的请求: 请求信道测量;以及 完成空闲模式重选。
23.如权利要求14所述的装置,其中,所述处理器还配置为从无线接入网络接收关于网络负载状况的信息,所述释放是基于所接收的信息。
24.如权利要求23所述的装置,其中,所述关于网络负载状况的信息包括指示整体负载、数据信道的负载、信令信道的负载、以及控制信道的负载中的至少一个的至少一个值。
25.如权利要求14所述的装置,其中,所述处理器还配置为通过应用关于进行中的和未来的调制解调器移动性过程中的一个的信息来进行评估。
26.如权利要求14所述的装置,其中,所述处理器还配置为指示调制解调器执行频率间搜索操作和RAT间频率间重选操作中的一个,以便为释放所保存的请求做准备。
27.一种用于无线通信的装置,包括: 用于拦截来自期望使用通信资源的应用的请求的模块; 用于保存所拦截的请求的模块; 用于评估是否可以释放所保存的请求的模块;以及 用于基于所述评估的结果释放所保存的请求的模块。
28.一种用于无线网络中的无线通信的计算机程序产品,包括: 具有记录在其上的非暂时性程序代码的非暂时性计算机可读介质,所述程序代码包括:用于拦截来自期望使用通信资源的应用的请求的程序代码;用于保存所拦截的请求的程序代码;用于评估是否可以释放所保存的请求的程序代码;以及用于基于所述评估的结 果来释放所保存的请求的程序代码。
全文摘要
一种无线通信方法包括拦截来自期望使用通信资源的应用的请求。保存所拦截的请求,然后对其进行评估以确定是否可以释放所保存的请求。基于评估的结果来释放所保存的请求。
文档编号H04L29/06GK103190182SQ201180053232
公开日2013年7月3日 申请日期2011年11月4日 优先权日2010年11月5日
发明者A·梅朗, J·K·孙达拉拉詹, G·贾雷塔, P·汉德, A·V·桑塔纳姆, S·戈埃尔 申请人:高通股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1