用于智能选择网络接口的系统与方法

文档序号:8476961阅读:361来源:国知局
用于智能选择网络接口的系统与方法
【技术领域】
[0001]本文所述的主题整体涉及数据处理系统领域。更具体地,本文所述的主题涉及智能选择网络接口以用于进行通信。
【背景技术】
[0002]当前的无线数据处理设备能够通过多种不同的通信接口连接到网络服务,该通信接口包括Wifi接口(例如802.11接口)和蜂窝数据接口(例如GPRS、G3、G4接口)。例如,图1示出了具有Wifi接口 102和蜂窝接口 103的无线客户端101,该Wifi接口 102用于经由Wifi网络105连接到网络服务110,该蜂窝接口 103用于经由蜂窝网络106连接到推送通知服务110。
【附图说明】
[0003]可结合以下附图从以下详细描述获得对本文所述的主题的更好的理解,其中:
[0004]图1示出了经由Wifi网络和蜂窝网络连接到推送通知服务的现有技术无线客户端。
[0005]图2示出了用于智能选择Wifi网络接口或蜂窝网络接口的示例性无线客户端。
[0006]图3示出了用于在多种不同网络接口之间进行智能选择的示例性无线客户端。
[0007]图4示出了用于在网络接口之间进行选择的示例性方法。
[0008]图5示出了可在无线客户端设备上使用的应用编程接口。
[0009]图6示出了至服务和操作系统的示例性应用接口连接。
[0010]图7示出了数据处理设备的示例性架构。
[0011]图8示出了数据处理设备的另一种架构。
【具体实施方式】
[0012]下文描述了用于智能选择网络接口的装置、方法和机器可读介质。在整个说明书中,出于解释的目的,阐述了多个具体细节。然而,对本领域的技术人员而言将显而易见的是,可在不具有这些具体细节中的一些细节的情况下实践本文所述的主题。在其他情况下,未示出或以框图的形式示出了熟知的结构和设备,以避免模糊所述主题的基本原理。
[0013]下文描述了一种移动设备,诸如平板计算设备(例如iPad)、智能电话(例如iPhone)或移动计算机(例如MacBook Pro)。应当指出,可在任何类型的移动计算设备上实施本文所述的基础技术。
[0014]使用本文所述的技术,关联到WiFi网络并对蜂窝数据连接具有访问权限的移动设备将尝试回退到蜂窝数据连接以用于不经由WiFi进行工作的任何连接尝试。例如,WiFi网络通常利用防火墙,该防火墙可阻碍对在移动设备上执行的某些服务或应用程序的访问。在其他情况下,WiFi网络可以不附接到互联网(例如因为用户的电缆调制解调器或DSL连接停止了工作)。
[0015]无线客户端可能在等待合理时间量以用于经由WiFi网络接口成功进行连接之后,尝试经由蜂窝网络接口进行连接。如图2中所示,无线客户端201可包括用于实施本文所述的技术的连接逻辑部件204,以在Wifi接口 202和蜂窝接口 203之间进行选择并与特定网络服务210-211建立连接。如图所示,WiFi接口 202可经由Wifi网络205连接无线客户端201并且蜂窝接口 203可经由蜂窝网络206连接无线客户端201。对于蜂窝连接,可采用各种技术,包括但不限于:第三代合作伙伴项目技术(例如3GPP2)、码分多址技术(例如使用lxRTT/EVDO/eHRPD的CDMA2000技术);长期演进(LTE)技术和/或高级LTE(LTE-A)技术;以及通用移动电信系统(UMTS)技术,诸如WCDMA/TDSCDMA。
[0016]连接逻辑部件204包括用于对网络接口 202-203进行优先级排序的连接优先级排序逻辑部件208以及用于定时连接尝试的回退定时器207。响应于进程220-223中的一个进程的网络请求,连接逻辑部件202尝试经由可用的最高优先级网络接口(例如WiFi接口202)连接到指定的服务210或211。回退定时器207开始对连接尝试定时。如果特定时间段(例如5秒)之后未经由最高优先级网络接口 202成功建立连接,则连接逻辑部件204经由下一个最高优先级网络接口(例如蜂窝接口 203)发起并行连接尝试。连接逻辑部件204然后可使用经由接口 202-203中的一个接口成功建立的第一连接。
[0017]可基于每个连接来实施本文所述的技术。例如,一个进程220可经由WiFi 202成功连接到服务,而另一个进程220可能无法经由WiFi 202进行连接,但可使用本文所述的技术经由蜂窝203成功进行连接。经由WiFi无法进行连接可能与配置WiFi防火墙的方式有关。例如,防火墙可被配置为阻碍某些类型的通信(例如从某些网络源流传输视频)。进程220-223可以是能够请求并维持网络连接的任何形式的可执行程序代码(例如应用程序内的网络进程、应用程序、后台任务或其他形式的程序代码)。
[0018]图3示出了三种不同的接口类型302-304,其表示用于经由网络305-307进行通信的任意数量的网络接口,举例来说,包括但不限于以太网、蓝牙、WiMAX、有线蜂窝接口、WiFi和蜂窝。随着新接口的开发,本文所述的基础技术可与这些接口一起使用。优先级排序逻辑部件208可为网络接口 302-304的每个网络接口(不管接口类型)指定优先级排序方案,然后在连接逻辑部件204发起连接时可利用该优先级排序方案。可基于每个进程指定优先级排序方案。例如,一些进程220-223和/或服务210-211可能更偏爱经由网络接口302进行连接,而其他进程/服务可能更偏爱经由网络接口 303进行连接。
[0019]回退定时器207可基于当前条件动态调节针对第二次连接尝试的定时器阈值。例如,回退定时器207可以初始设置“慢”定时器值(例如5秒)。如果经由最高优先级网络接口(例如WiFi)的连接不成功并且连接逻辑部件204能够成功回退到下一个最高优先级网络接口(例如蜂窝),则回退定时器可调节到“快”定时器值,以在下次尝试经由最高优先级网络接口进行连接时使用。可跨进程/服务确立并使用相同的定时器值。也可基于每个进程/接口或每个服务/接口设置定时器值。
[0020]连接逻辑部件204可针对使用一些或所有网络接口 302-304的电力和资金成本,平衡尝试建立连接的任何方法的需求。可针对回退指定某些类型的连接、某些进程和/或某些服务为不合格的(例如针对这些连接、进程或服务,禁用从WiFi到蜂窝的回退)。还可为用户提供配置连接逻辑部件204以防止某些进程/服务经由某些网络接口进行连接的能力。例如,用户可指定不经由蜂窝接口使用执行媒体流传输的任何进程(例如以降低蜂窝数据成本和/或减少电力)。此外,某些进程220-223可被预先配置为仅利用某些接口302-304。
[0021]除非满足某些指定条件,给定进程才可能适于回退到蜂窝;例如:(1)回退尚未被禁用;(2)连接将在WiFi上停止;(3)将不经由VPN来路由连接;(4)客户端未退出回退(正如某些已知进程诸如mediaserverd) ; (5)客户端未绑定到专用接口 ; (6)客户端未指定“无蜂窝”选项;以及(7)蜂窝为可用的。如果满足所有这些条件,则可在经由WiFi开始连接尝试的同时启动回退定时器。如果经由WiFi的连接尝试不成功或者在设计的定时器周期内失败了,则可经由蜂窝开始并行连接尝试。此时,无论哪个连接尝试完成第一次“获胜”并取
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1