基于可用网络的质量在网络之间切换的制作方法

文档序号:13343134阅读:242来源:国知局

本技术涉及无线通信网络,并且更具体地涉及具有无线通信能力的设备的无线网络选择。



背景技术:

在许多地理位置处,存在客户端设备能够连接的多个无线网络通常,可用无线网络由客户端设备或客户端设备的用户选择。在某些情况下,客户端设备可以基于客户端设备的客户和与特定无线网络相关联的服务提供商之间的合同关系来选择无线网络。



技术实现要素:

具有无线通信能力的设备可以在具有多个可用无线通信网络的区域中与无线通信网络建立网络连接。具有无线通信能力的设备可以基于多个因素来分配网络质量得分,所述因素包括由无线通信网络采用的移动电信技术的类型、与无线通信网络相关联的服务提供商、无线通信网络的历史上观察到的通信速度。具有无线通信能力的设备可以观察与无线通信网络的连接的当前质量。如果网络连接的质量已经降级到阈值水平以下,具有无线通信能力的设备可以启动网络重新评估定时器。由网络重新评估定时器监视的时间长度可以基于分配给无线通信网络的网络质量得分。网络重新评估定时器届满后,具有无线通信能力的设备重新评估网络连接的质量。如果在重新评估时网络连接仍然处于降级状态,则具有无线通信能力的设备可以切换到另一个可用的无线通信网络。

通常,本说明书中描述的主题的一个创新方面可以体现在包括以下动作的方法中;由计算设备建立与第一无线通信网络的连接;由计算设备识别第一无线通信网络的特性;由计算设备在第一时间点,确定与第一无线通信网络的连接已经降级到阈值质量水平以下;由计算设备,识别重新评估与第一无线通信网络的连接是否仍然在阈值质量水平以下的时间,所述时间至少部分地基于第一无线通信网络的特性来识别;由计算设备,在第二时间点以及响应于已经确定重新评估与第一无线通信网络的连接是否仍然在阈值质量水平以下的时间届满,确定与第一无线通信网络的连接仍然在阈值质量水平以下;以及响应于在第一时间点确定了与第一无线通信网络的连接已经降级到阈值质量水平以下,并且响应于在第二时间点确定了与第一无线通信网络的连接仍然在阈值质量水平以下,由计算设备建立与第二无线通信网络的连接。该方面的其他实施例包括被配置为执行编码在计算机存储设备上的方法的动作的对应的系统、装置和计算机程序。

这些和其他实施例可以每个可选地包括以下特征中的一个或多个。特性可以识别由第一无线通信网络采用的移动通信技术。识别第一无线通信网络的特性可以包括基于第一无线通信网络的历史上观察到的网络连接速度来识别特性。识别重新评估与第一无线通信网络的连接是否仍然在阈值质量水平以下的时间可以包括向第一无线通信网络分配评级,所述评级基于由第一无线通信网络和第一无线通信网络的历史上观察到的网络连接速度中的至少一个。特性可以识别与第一无线通信网络相关联的无线通信服务提供商。可以基于多个无线通信网络的历史上观察到的网络连接质量来确定阈值质量水平。

动作可以进一步包括由计算设备,识别第二无线通信网络的特性;由计算设备在第三时间点,确定与第二无线通信网络的连接已经降级到阈值质量水平以下;由计算设备,至少部分地基于第二无线通信网络的特性识别重新评估与第二无线通信网络的连接是否仍然在阈值质量水平以下的另一时间;由计算设备在第四时间点,以及响应于已经确定重新评估与第二无线通信网络的连接是否仍然在阈值质量水平以下的另一时间届满,确定与第二无线通信网络的连接仍然在阈值质量水平以下;以及响应于在第三时间点确定了与第二无线通信网络的连接已经降级到阈值质量水平以下以及在第四时间点确定了与第一无线通信网络的连接仍然在阈值质量水平以下,由计算设备建立与第三无线通信网络的连接。

重新评估与第一无线通信网络是否仍然在阈值质量水平以下的时间可以使用基于第一无线通信网络的特性计算的第一重新评估时间长度来识别。重新评估与第二无线通信网络的连接是否仍然在阈值质量水平以下的另一时间可以使用基于第二无线通信网络的特性计算的第二重新评估的时间长度来识别。第一重新评估时间长度可以与第二重新评估时间长度不同。

动作可以进一步包括由计算设备识别第二无线通信网络的特性;由计算设备,将第一无线通信网络的特性与第二无线通信网络的特性进行比较,以确定第一无线通信网络的特性优于第二无线通信网络的特性;以及响应于确定第一无线通信网络的特性优于第二无线通信网络的特性,结束与第二无线通信网络的连接并建立与第一无线通信网络的另一连接。

动作可以进一步包括由计算设备识别维持与第一无线通信网络的另一连接的最小时间长度;由计算设备在第三时间以及响应于已经确定维持与第一无线通信网络的另一连接的最小时间长度届满,确定与第一无线通信网络的另一连接已经降级到阈值质量水平以下;由计算设备,至少部分地基于第一无线通信网络的特性,识别重新评估与第一无线通信网络的另一连接是否仍然在阈值质量水平以下的另一时间;由计算设备在第四时间点以及响应于已经确定重新评估另一连接是否仍然在阈值质量水平以下的另一个时间届满,确定与第一无线通信网络的另一连接仍然在阈值质量水平以下;以及响应于在第三时间点确定了与第一无线通信网络的另一连接已经降级到阈值质量水平以下以及在第四时间点确定了与第一无线通信网络的另一连接仍然在阈值质量水平以下,由计算设备建立与第三无线通信网络的连接。

可以实施本说明书中描述的主题的特定实施例以实现以下优点中的零个、一个或更多个。移动计算设备可以避免以高于最优速率的无线通信网络之间的切换。由于网络连接质量降级,移动计算设备可以识别次优网络连接,并在网络之间进行切换,同时保持电池寿命。可以实现在识别具有改善的连接质量的无线通信网络和与其建立网络连接以及避免以高于最优速率的速率在网络之间进行切换之间的平衡。在移动计算设备没有关于可用的无线通信网络的完整信息的情况下,可以改进无线通信。

在附图和下面的描述中阐述了本发明的一个或多个实施例的细节。本发明的其它特征、目的和优点将从说明书和附图以及权利要求书中变得显而易见。

附图说明

图1是其中客户端设备可以与一个或多个无线通信网络通信的示例环境的图。

图2是客户端设备从一个无线通信网络切换到另一个无线通信网络的示例数据流的图。

图3是从第一无线通信网络切换到第二无线通信网络的示例过程的流程图。

图4是示例计算机系统的框图。

各附图中的相似附图标记表示相似的元件。

具体实施方式

通常,具有无线通信能力的设备可以建立与各种无线通信网络的连接。例如,移动电话可以建立与由特定服务提供商拥有的无线通信网络的通信塔的连接。然后,移动电话可以通过连接发送和接收语音和数据通信。随着具有无线通信能力的设备改变位置,具有无线通信能力的设备可以移出一些无线通信网络的通信范围,并且进入到其他无线通信网络的通信范围中。例如,随着一个人带有手机在他口袋里沿着高速公路驾驶,移动电话可以与其建立通信连接的可用网络发生变化(例如,因为一个服务提供商可能在一个地区比另一个服务提供商投入更多的小区电话塔)。在许多地理位置,许多无线通信网络可用于建立与具有无线通信能力的设备的通信连接。

在一些情况下,具有无线通信能力的设备的用户具有与特定无线通信服务提供商的合同关系。服务提供商又可以依次与其他服务提供商具有合同关系,由其他服务提供商允许特定服务提供商的客户使用由其他服务提供商提供的网络资源。当位于特定地理区域中建立通信连接时,这种关系可以允许特定的具有无线通信能力的设备从许多不同的无线通信网络中进行选择。例如,位于特定地理区域中的移动电话可以与由移动电话的用户与其具有合同关系的服务提供商拥有的蜂窝通信塔建立通信连接。

在许多情况下,能够向特定位置的具有无线通信能力的设备提供通信服务的无线通信网络提供不同程度的网络通信质量。例如,第一无线通信网络可以采用第三代移动通信技术(即,“3g网络”),而第二无线通信网络可以采用第二代移动通信技术(即,“2g网络”),以及第三无线通信网络可以采用第四代长期演进移动通信技术(即,“4glte网络”)。附加地,采用相同的移动通信技术标准(例如,三个不同的3g网络)的各种不同的网络可以具有不同水平的服务质量。例如,第一3g网络可能具有比相同地理区域中的另一3g网络更慢的通信速度(下载和上传速度)。

在一些实施方式中,具有无线通信能力的设备可以基于许多因素来将不同的网络质量得分分配给不同的无线通信网络,所述因素包括:网络类型、服务提供商身份、历史上观察到的网络质量(例如,上传和下载速度)、丢包率、位置、通信塔与具有无线通信能力的设备的距离、以及当前服务质量。当具有无线通信能力的设备建立与特定无线通信网络的通信连接时,具有无线通信能力的设备可以评估与无线通信网络的连接质量。该评估可以在建立连接时或稍后的时间(例如,当用户尝试通过连接发送或接收数据时)发生。在评估连接质量的一个示例中,具有无线通信能力的设备可以将观察到的下载速率、上传速率或两者与阈值水平比较,以确定通信速率是否在阈值水平以下。作为更具体的示例,阈值可以设置为5mbits/s(5兆比特每秒)。如果连接的通信速率低于5mbits/s,则具有无线通信能力的设备可以将该连接识别为降级连接。

当识别出网络连接具有次优质量(即,降级连接)时,具有无线通信能力的设备可以设置网络重新评估定时器,并且当网络重新评估计时器届满时重新检查网络连接的质量。在一些实施方式中,基于分配给无线通信网络的网络质量得分来设置网络重新评估定时器的长度。例如,具有较高网络质量得分的无线通信网络(例如,4glte网络)可以比具有较低网络质量得分(例如,3g网络)的无线通信网络具有更长的网络重新评估定时器。作为另一个示例,对于3.5g网络,网络重新评估定时器可以设置为25分钟,而对于2g网络,网络重新评估定时器设置为5秒。

在网络重新评估定时器届满时,无线通信网络可以重新检查网络连接的质量,以确定连接的质量是否仍然降级。如果网络质量已经提高到不再被认为是降级的点,则具有无线通信能力的设备可以继续使用无线通信网络进行无线通信。如果网络质量仍然降级,具有无线通信能力的设备切换到另一个可用的无线通信网络。继续上述示例,具有无线通信能力的设备最初将网络连接的下载速度与阈值5mbits/s进行比较。如果下载速度在该阈值以下,具有无线通信能力的设备启动网络重新评估定时器。在这个示例中,无线通信网络是3.5g网络,并且具有无线通信能力的设备将网络重新评估定时器设置为25分钟(定时器的长度基于网络类型)。在网络重新评估定时器届满后,具有无线通信能力的设备重新评估无线连接的下载速度。如果下载速度仍然低于5mbits/s,则具有无线通信能力的设备结束与无线通信网络的连接,并与不同的可用无线通信网络建立网络连接。

在一些实施方式中,如果具有无线通信能力的设备在确定了原始网络仍然降级之后建立连接的新网络具有比原始网络更低的网络质量得分,则具有无线通信能力的设备将切换回原始网络(例如,立即或在预定延迟之后)。在一些实施方式中,在切换回原始网络之后,具有无线通信能力的设备将在重新评估原始网络的质量或切换到任何其他网络之前的设定的时间段内“锁定”到原始网络。该设定的时间段可能不同于初始重新评估定时器的值(并且可能更大)。在一些实施方式中,锁定时间可以基于一个或多个因素,包括原始网络的网络质量得分、原始网络的历史网络通信速度、原始网络的网络类型或原始网络的服务提供商网络。锁定时间也可以是预定的时间长度(例如,三分钟)。在一些实施方式中,仅当具有无线通信能力的设备保持在相同的相对地理区域中,具有无线通信能力的设备才被锁定在原始网络上。例如,如果具有无线通信能力的设备移动到另一个位置(例如,移动使得该设备由不同的基站服务),则具有无线通信能力的设备可以在锁定时间届满之前切换到另一个无线通信网络。

参考图1,无线通信系统100包括移动设备102,移动设备102可被用户采用以通过诸如通信提供商的3g和/或4g网络、本地wifi网络和/或蓝牙网络的各种类型的无线网络发送和接收数据。例如,移动计算设备102可以包括用于访问互联网web页面的web浏览器,和/或可以包括用于访问基于云的数据服务的一个或多个移动设备应用(“app”)。移动设备102可以是例如智能电话或其他蜂窝电话设备、平板设备、膝上型计算机、pda、或具有无线通信能力的任何其他移动计算设备。

移动设备102位于具有提供无线通信服务的多个无线通信服务提供商的地理区域中。例如,每个无线通信服务提供商可以具有能够在其当前位置与移动设备102建立通信链路的一个或多个接入塔。在一些实施方式中,无线通信服务提供商可以具有能够在给定位置处与移动设备通信的多个无线网络接入点(例如,通信塔)。

为了通过网络传送数据,移动计算设备102可以连接到网络的接入点中的一个,诸如,2g、3g或4g网络的小区塔,和/或wifi网络的无线路由器。移动计算设备102可以包括用于检测可能在范围内的接入点、用于接收关于接入点的信息(例如,接入点标识符、信号强度信息、网络流量统计等)、以及用于经由接入点处理数据通信的硬件和/或软件接口。在所描绘的示例系统100中,移动计算设备102当前处于可以是基于费用的接入点或免费(无费用)接入点的网络接入点104、106和108的范围内(并且可以与之通信)。例如,基于费用的网络接入点可以与对于接入移动数据网络收取费用(例如,每月订阅费用、使用费用)的移动数据网络(例如,3g移动数据网络、4g移动数据网络)相关联。作为另一示例,免费网络接入点可以是wifi接入点。

在图1所示的示例中,网络接入点104、106和108中的每一个具有相应的通信范围110、112和114。移动设备102位于网络接入点104、106和108的通信范围110、112和114重叠的区域。因此,移动设备102可以连接到网络接入点104、106和108中的任何一个以建立通信连接。例如,移动设备102可以建立与网络接入点104的连接,其允许移动设备102通过蜂窝通信网络进行通信以例如向另一具有有线或无线电话通信能力的设备发出无线电话呼叫。在一些实施方式中,网络接入点104、106和108可以隶属于不同的无线通信服务提供商,采用不同的无线通信技术和/或具有不同水平的通信质量。例如,网络接入点104可以与无线公司a相关联,而网络接入点106与无线公司b相关联,并且网络接入点108与无线公司c相关联。此外,网络接入点104、106和108可以采用不同的无线通信技术。例如,网络接入点104可以是3g网络的一部分,而网络接入点106是2g网络的一部分,并且网络接入点108是4glte网络的一部分。移动设备102的用户可以与无线公司a、b和c之一具有合同关系。此外,无线公司a、b和c可以彼此具有合同关系(或与移动设备102的用户具有移动服务合同的不同的电信服务提供商具有合同关系),这允许移动设备102接入无线公司a、b和c的网络用于无线通信。

在一些实施方式中,在移动设备102建立与网络接入点104、106和108中的任何的连接之前,移动设备102可以不具有关于网络接入点104、106和108中的一个或多个的网络连接质量、网络技术级别(例如,2g、3g、4g等)或隶属的服务提供商的信息。在某些情况下,移动设备102可以拥有关于网络接入点104、106和108中的一个或多个的该信息的一些但不是全部。在这种情况下,移动设备102可以基于初始检测到的信号强度或可能使用随机或伪随机选择过程来选择网络接入点来建立通信。

例如,移动设备102可以基于其位于通信范围110、112和114内来检测其在网络接入点104、106和108的通信范围内。移动设备102可以初始建立与网络接入点104的连接。在与网络接入点104建立连接时,移动设备102可以获得或识别关于网络接入点104和与网络接入点104的通信连接的信息。这可以包括获得或识别关于与网络接入点104相关联的无线通信服务提供商、由网络接入点104采用的通信技术、移动设备102到网络接入点104的近似距离、以及移动设备102与网络接入点104之间的连接的连接质量水平的信息。连接质量水平可以基于例如数据通信的上传速度、数据通信的下载速度、语音通信的上传速度、语音通信的下载速度或任何这些和其他因素的组合。在一些实施方式中,上传和下载速度可以包括当前观察到的上传和下载速度(例如,由移动设备102观察到的上传和下载速度)、历史上观察到的上传和下载速度(例如,由移动设备102和/或其他移动设备历史上观察到的上传和下载速度)和/或广告的下载速度(例如,当建立通信连接时由网络接入点广告的下载速度)。

在一些实施方式中,移动设备102可以访问网络接入点104、106和108中的一个或多个的历史网络连接信息。例如,移动设备102的当前地理位置可以是移动设备102过去已经位于的位置,并且移动设备102可以已经存储关于与网络接入点104、106和108中的一个或多个的过去通信连接的信息。例如,移动设备102可以当前位于移动设备102的用户经常访问的位置,诸如用户的家庭或工作场所。在一些实施方式中,历史网络连接信息可以是由其他移动设备获得的信息。例如,服务器可以从多个移动设备接收网络连接信息并存储信息供以后检索。移动设备102可以访问服务器以接收特定网络接入点、无线通信服务提供商或地理区域的网络连接信息中的一些或全部。在一些实施方式中,历史网络连接信息被本地存储在移动设备102上。在一些实施方式中,移动设备102将仅依赖于已经被移动设备102观察和/或收集的信息。

历史网络连接信息可以包括历史上观察到的下载和上传速度、指示网络接入点的具体或近似位置的位置信息、与网络接入点相关联的无线通信服务提供商的身份、或由网络接入点采用的无线通信技术。在一些实施方式中,移动设备102的地理位置可以被一般化(诸如到城市、邮政编码、蜂窝塔覆盖区域、或一般地理区域),使得不能基于由移动设备102的用户选择的偏好来确定用户的特定位置。因此,用户可以控制如何收集关于他或她的位置的信息。

在一些实施方式中,移动设备102可以使用与网络接入点104相关联的或者与移动设备102与网络接入点104之间的通信连接相关联的一个或多个特性来向网络接入点104分配一个或多个评级。可以用于确定网络接入点104的评级的特性可以包括与网络接入点104相关联的无线通信服务提供商的身份、网络接入点104采用的通信技术、移动设备102到网络接入点104的近似距离、网络接入点104的具体或近似位置、移动设备102的具体或近似位置、以及移动设备102与网络接入点104之间的连接的连接质量水平。例如,移动设备102可以向采用4glte技术的网络接入点分配比采用3g技术的网络接入点更高的评级。作为另一示例,如果网络接入点104具有比网络接入点106更高的观察到的和/或历史上传和下载速度,则移动设备102可以向网络接入点104分配比分配给网络接入点106的评级更高的评级。作为另一示例,网络接入点106和网络接入点108可以采用相同无线通信技术(例如,两者都是3g网络的一部分),但可以与不同的无线通信服务提供商相关联(例如,网络接入点106隶属于无线公司b,而网络接入点108隶属于无线公司c)。移动设备102可以访问移动设备102的地理区域的无线公司b和无线公司c中的每一个的历史连接质量水平的信息,以向网络接入点106和网络接入点108分配不同的评级,尽管网络接入点106和网络接入点108采用相同无线通信技术。在一些实施方式中,移动设备102可以提供隐私控制,其允许用户指示收集哪些与网络接入点相关联的特性或哪些历史信息,或哪些信息用于向网络接入点分配评级。

通常,移动设备102的诸如更高级的无线通信技术(例如,4glte优于3g)、更高的上传和下载速度、特定无线通信服务提供商的更高水平的历史连接质量(总体上,或者基于移动设备102的地理区域)、或者移动设备102和网络接入点之间的更靠近的接近的特性可以导致对于网络接入点的更高的评级。相反,诸如不太先进的无线通信技术(例如,与3g相比的2g)的特性、较低的上传和下载速度、特定无线通信服务提供商的较低水平的历史连接质量(总体上或基于移动设备102的地理区域)、或者移动设备102与网络接入点之间的较大距离的特性通常可以导致网络接入点的较低评级。移动设备102可以在建立与网络接入点的连接时或在稍后的时间诸如当移动设备102尝试通过连接发送语音或数据通信时或者在建立与网络接入点的连接之后的预定时间向网络接入点分配评级。

继续上述示例,移动设备102已经建立与网络接入点104的连接,并且可以或可以尚未基于上述当前观察到的或历史的特性中的一些或全部分配评级给网络接入点104。移动设备102然后可以确定移动设备102和网络接入点104之间的连接的当前质量。在一些实施方式中,连接质量确定可以包括计算连接的数值。例如,移动设备102可以识别连接的当前上传和下载速度,并且基于上传和下载速度为连接质量分配值。然后,移动设备102可以通过例如将当前质量水平与阈值水平进行比较来确定连接已经降级到在特定质量水平以下。例如,如果连接的上传和/或下载速度在阈值以下,则移动设备102可以确定连接是降级的连接。也可以使用其他因素来确定连接已经降级。在建立与网络接入点104的连接时或者稍后的时间,例如当移动设备102尝试通过连接发送语音或数据通信时,或者在建立与网络接入点104的连接的预定时间之后,移动设备102可以确定连接的质量水平,并且确定与网络接入点104的连接是否已经降级到阈值质量水平以下。

如果确定与网络接入点104的连接是降级的连接,则移动设备102可以识别在其之后移动设备102将重新评估连接的质量的时间长度。在某些实施方式中,这可能涉及将重新评估定时器或重新评估报警设置为设定的时间值,然后在该设定时间届满后,重新评估网络连接。在一些实施方式中,可以基于先前分配给网络接入点104的评级,确定移动设备102重新评估连接的质量之后的识别的时间长度。例如,评级越高,重新评估时间越长。在一些实施方式中,可以使用网络接入点104或者移动设备102与网络接入点104之间的连接的一个或多个特性来识别重新评估时间,而不首先确定网络接入点104的评级。例如,移动设备102可以分配给3g网络10分钟的重新评估时间,而移动设备102分配给4glte网络2小时的重新评估时间。作为另一示例,移动设备102可以分配给隶属于无线公司a的3g网络15分钟的重新评估时间,而分配隶属于无线公司b的3g网络23分钟的重新评估时间。

在识别的重新评估时间过去之后(或在重新评估定时器或重新评估报警届满之后),移动设备102重新评估与网络接入点104的连接的质量。如果连接质量已经改善(例如,连接不再降级,或者一个或多个连接质量度量高于阈值水平),连接移动设备102维护与网络接入点104的连接,并且通过与网络接入点104的连接发送和接收将来的通信。如果连接质量仍然处于降级状态(例如,一个或多个连接质量度量在阈值水平以下),则移动设备102可以结束与网络接入点104的连接并切换到另一个网络。例如,如果在重新评估时间届满之后移动设备102确定与网络接入点104的连接仍然处于降级状态(例如,上传和下载速度在阈值水平以下),则移动设备102可以结束与网络接入点104的连接并建立与网络接入点106的连接。

设置用于重新评估与网络接入点104的连接的质量的定时器允许移动设备102避免在通信网络或通信网络接入点之间的比最佳的更频繁的切换。例如,如果连接的质量在所识别的重新评估时间过去之后已经提高到高于阈值或降级水平,则移动设备102可以维持与网络接入点104的连接,而不是切换到另一个网络接入点。

在一些实施方式中,如果移动设备102在两个不同的时间点(例如,连接质量的第一次评估,随后在基于重新评估定时器的时间段之后,然后对连接质量进行的第二次评估)确定与网络接入点104的连接是降级的,不是在那点断开与网络接入点104的连接并连接到不同的网络接入点,移动设备102可以设置在第三次评估与网络接入点104的连接之前的另一个等待时间段。该第二时间段可以是与第一重新评估时间段相同的长度,或者可以是不同的时间长度。用于确定第一重新评估等待时段的长度的一些或所有因素(例如,与网络接入点104相关联的无线通信服务提供商的身份、网络接入点104采用的通信技术、移动设备102到网络接入点104的近似距离、网络接入点104的具体或近似位置、移动设备102的具体或近似位置、以及历史连接质量水平信息)可以用于确定第二重新评估等待时段的长度。

在一些实施方式中,移动设备102可以使用这些因素中的一个或多个来确定在网络质量的第二次评估之后是否应该结束与网络接入点104的连接,或者是否移动设备102在第三次评估连接质量之前应该等待第二重新评估时间段。例如,如果网络接入点104采用3g技术,则移动设备102可以在连接降级的两个连续确定之后,从网络接入点104断开并连接到不同的网络接入点。继续该示例,如果网络接入点104是4glte网络,则移动设备102可以基于网络接入点104采用更高水平的网络技术来确定应该执行连接的第三评估。因此,如果已经连续两次确定连接降级,移动设备102可以等待第二重新评估时间段以第三次重新评估连接质量。

在一些实施方式中,响应于移动设备102确定在两个或多个时间点与网络接入点104的连接降级,移动设备102可以结束与网络接入点104的通信连接,并且与另一个网络接入点建立连接。例如,移动设备102可以建立与网络接入点106的通信连接。在建立与网络接入点106的连接时,移动设备102可以获得或识别关于网络接入点106的以及与网络接入点106通信连接的信息。这可以包括获得或识别关于与网络接入点106相关联的无线通信服务提供商、由网络接入点106采用的通信技术、移动设备102与网络接入点106的近似距离、以及移动设备102和网络接入点106之间的连接的连接质量水平的信息。连接质量水平可以基于例如数据通信的上传速度、数据通信的下载速度、语音通信的上传速度、语音通信的下载速度或这些和其他因素中的任一个的组合。在一些实施方式中,上传和下载速度可以包括当前观察到的上传和下载速度(例如,由移动设备102观察到的上传和下载速度),历史上观察到的上传和下载速度(例如,由移动设备102和/或其他移动设备历史上观察到的上传和下载速度)和/或广告的下载速度(例如,当建立通信连接时,由网络接入点广告的下载速度)。在一些实施方式中,可以由移动设备102使用由网络接入点106识别或获得的信息来确定移动设备102是否应该保持连接到网络接入点106,或者如果移动设备102应该返回到与网络接入点104通信(即,重新建立与网络接入点104的通信连接)。

例如,移动设备102可以识别由网络接入点106采用的移动通信技术,并且使用该信息来确定移动设备102是否应该保持与网络接入点106通信或返回与网络接入点104通信。例如,如果所识别的网络接入点106的移动通信技术是比由网络接入点104采用的移动通信技术更低水平的技术,则移动设备102将自动切换回与网络接入点104通信。例如,如果网络接入点104是3.5g网络,并且网络接入点106是3g网络,则如果移动设备102刚刚从网络接入点104切换到网络接入点106,在检测到网络接入点106是3g网络时,移动设备102切换回与网络接入点104的通信,因为网络接入点104是3.5g网络。作为另一示例,如果网络接入点104是3.5g网络,并且网络接入点106是4g网络,则在从网络接入点104切换之后,移动设备102将保持与网络接入点106的连接。在一些实施方式中,当确定是否切换回网络接入点104时,可以使用其他因素来代替或附加于每个网络接入点的移动通信技术。例如,连接到网络接入点106当前连接质量可以与先前确定的与网络接入点104的先前连接的连接质量进行比较。如果移动设备102识别出与网络接入点106的连接的质量比与网络接入点104的先前连接低,移动设备102可以切换回与网络接入点104通信。

在一些实施方式中,在如上所述从第一网络切换到第二网络并且然后切换回到第一网络之后,移动设备102将在切换回第一网络之后的一个时间段内“锁定”到第一网络。例如,移动设备102可以识别在网络的两个不同评估期间(如上所述,由所识别的重新评估时间间隔开)与网络接入点104的连接降级。移动设备102然后切换到与网络接入点108的连接。在该示例中,在与网络接入点108建立连接之后,移动设备102接收指示网络接入点108是3g网络的信息。在该示例中,网络接入点104是4glte网络,因此使用比网络接入点108更高水平的移动通信技术。在做出该确定时,移动设备102切换回与网络接入点104通信,并且然后在评估连接质量以确定移动设备102是否应该尝试连接到另一个网络之前的设定的时间段内“锁定到”该连接。

锁定时间段可以基于许多因素,包括网络类型、服务提供商身份、历史上观察到的网络质量(例如上传和下载速度)、丢包率、位置、通信塔与具有无线通信能力的设备的距离、以及当前服务质量。特定网络接入点的锁定时间可能与该网络接入点的重新评估时间长度不同,即使在使用相同因素来确定锁定时间和重新评估时间的情况下。在某些实施方式中,在锁定时间届满之后,移动设备102评估连接质量。如果连接质量在阈值水平以下(例如,数据下载和上传速度在阈值下载和上传速度以下),则移动设备102可以识别并设置重新评估时间段,并且在重新评估时间段届满之后,重新评估连接质量。替选地,在锁定时间段届满时,如果移动设备102确定连接质量降级,则移动设备102将在该点切换到另一个网络接入点,而不是等待重新评估时间段届满并再次重新评估连接质量。

响应于在锁定时间段已经过去之后确定连接降级(或者在锁定时间段结束时确定降级连接然后在重新评估时间段之后进行第二确定降级连接质量之后),移动设备102切换到另一个网络。例如,移动设备102可以停止与网络接入点104的通信,并建立与网络接入点106的连接。在一些实施方式中,如果移动设备102从第一网络切换到第二网络,然后返回到第一网络,并且在锁定时间段过去之后识别与第一网络的降级的连接,则移动设备102将不会切换回到第二网络,而是试图与不同于第二网络的第三网络建立连接。

在一些实施方式中,只有移动设备102不移出当前地理位置,移动设备102将才在切换回网络接入点104之后保持“锁定”到网络接入点104。如果移动设备102移动远离当前地理位置,则忽略锁定时间段,并且移动设备102可以根据需要连接到一个或多个其他网络。在一些实施方式中,可以设置移动的阈值距离,并且在忽略锁定时间之前移动设备102必须在地理上移动超过阈值距离。在一些实施方式中,只有移动设备102已经从网络接入点104移动超过阈值距离,移动设备102才将忽略锁定时间。

转到图2,具有无线通信能力的用户设备202在网络接入点204和网络接入点206的通信范围内。用户设备202可以由用户采用以通过各种类型的无线网络发送和接收数据,诸如通信提供商的3g和/或4g网络、本地wifi网络和/或蓝牙网络。例如,用户设备202可以包括用于访问互联网web页面的web浏览器和/或可以包括用于访问基于云的数据服务的一个或多个移动设备应用(“app”)。用户设备202可以是例如智能电话或其他蜂窝电话设备、平板电脑设备、膝上型计算机、pda、或具有无线通信能力的任何其他计算设备。

在208处,用户设备202从网络接入点204接收网络信息。网络接入点204可以与服务提供商相关联,并允许用户设备202建立通信连接以通过服务提供商的通信网络发送和接收语音和数据。网络信息可以例如由用户设备202的无线网络接口210接收。由网络接入点204发送并在用户设备202处接收的网络信息可以允许用户设备202与网络接入点204执行“握手”以建立通信连接。在212处,用户设备202的无线网络接口210建立与网络接入点204的连接。

在214处,网络质量评估模块216评估用户设备202和网络接入点204之间的网络连接的质量。网络质量评估模块216可以通过硬件和软件的组合来实施。网络质量评估模块216可以识别或测量与网络接入点204的网络连接的一个或多个特性,以评估网络连接的质量。可以由网络质量评估模块216识别或测量的网络连接的特性可以包括上传速度、下载速度或丢包率。网络质量评估模块216可以将用户设备202和网络接入点204之间的网络连接的一个或多个特性与阈值进行比较,以确定网络连接是否降级。在一些实施方式中,用户设备202可以提供隐私控制,其允许用户指示在评估用户设备202和诸如网络接入点204的网络接入点之间的网络连接的质量时,哪些网络连接的特性或其他信息被网络质量评估模块216收集或者可被其访问。

如果网络质量评价模块216确定网络连接降级,则网络质量评估模块216可以在218处启动网络重新评估定时器220。网络重新评估定时器220可以被实施为单独的定时器,或者作为监视用户设备202的一个或多个时钟或由用户设备202接收的时钟信号来确定何时设定的时间段已经过去的软件。可以基于包括与网络接入点204相关联的网络类型、网络接入点204的服务提供商身份、历史上观察到的网络质量(例如,上传和下载速度)、位置、网络接入点204与用户设备202的距离、以及当前服务质量的一个或多个因素来确定重新评估的时间段。例如,如果网络接入点204是4g网络,与如果网络接入点204是3g网络相比,则可以将网络重新评估定时器220设置更长时间。作为另一示例,对于基于第一和第二服务提供商的历史上观察到的数据被识别为在当前地理区域中比第二服务提供商具有更好的网络的第一服务提供商,网络重新评估定时器220被设置为更长时间。在一些实施方式中,基于分配给网络接入点204的评级来确定网络重新评估定时器220的时间段。例如,用户设备202可以使用与网络接入点204相关联的一个或多个特性,或用户设备202和网络接入点204之间的通信连接,来向网络接入点204分配一个或多个评级。然后可以使用该评级来识别网络接入点204的重新评估时间段,并且网络重新评估定时器220可以被设置为识别的重新评估时间段。

在222处,网络重新评估定时器220届满。例如,网络质量评估模块216或用户设备202的一个或多个其他组件可以确定已经过去了设定的重新评估时间。作为另一示例,网络重新评估定时器220可以向网络质量评估模块216通知所识别的重新评估时间已经过去。在224处,响应于网络重新评估时间届满,网络质量评估模块216重新评估用户设备202和网络接入点204之间的网络连接的质量。

在224处,如果网络质量评估模块216确定网络连接仍然降级(例如,连接的一个或多个特性在阈值水平以下),则用户设备202结束与网络接入点204的网络连接。在226处,响应于网络质量评估模块216确定了与网络接入点204的网络连接仍处于降级状态(在224),无线网络接口210建立与网络接入点的网络连接206。

在一些实施方式中,如果由网络接入点206采用的无线通信技术低于由网络接入点204采用的无线通信技术的水平,用户设备202将切换回与网络接入点204通信。在一些实施方式中,用户设备202可以基于与网络接入点206或用户设备202与网络接入点206之间的连接相关联的一个或多个其他因素,诸如当前通信速率或与网络接入点206相关联的服务提供商的身份,来进行确定以切换回网络接入点204。在切换回到网络接入点204之后,用户设备202可以保持“锁定”以与网络接入点204通信一个设定时间段(基于与网络接入点204相关联的一个或多个因素确定的),或直到用户设备202的地理位置改变。

图3示出了用于从第一无线通信网络切换到第二无线通信网络的示例过程300的流程图。过程300可以由图1和图2所示的系统中的一个或多个设备执行。例如,过程300可以由图1的移动设备102或图2的用户设备202执行。过程300的操作可以通过执行存储在非暂时性计算机可读介质中的指令来实施。指令的执行使得一个或多个数据处理装置执行过程300的操作。

建立与第一无线通信网络的连接(302)。例如,具有无线通信能力的设备可以在多个无线网络接入点的通信范围内。无线网络接入点可以是例如蜂窝通信塔、wifi路由器或其他无线网络接入设备。具有无线通信能力的设备与通信范围内的无线网络接入点中的一个建立连接。

识别第一无线通信网络的特性(304)。识别的特性可以是网络类型、服务提供商身份、历史上观察到的网络质量(例如,上传和下载速度)、丢包率、位置、通信塔与具有无线通信能力的设备的距离、以及当前服务质量。例如,具有无线通信能力的设备可以识别第一无线通信网络是3g网络。识别的特性可以基于与第一无线通信网络相关联的当前观察到的信息和/或历史上观察到的信息。在一些实施方式中,所识别的特性可以用于向第一无线通信网络分配评级。可以单独基于所识别的特性,或者使用所识别的特性与关联于第一无线通信网络或者具有无线通信能力的设备与第一无线通信网络之间的连接的一个或多个其他特性的组合,来确定评级。

可以做出与第一无线通信网络的连接已经降级到阈值质量水平以下的确定(306)。例如,具有无线通信能力的设备可以测量与第一无线通信网络的连接的一个或多个特性,并将特性与阈值水平进行比较,以确定连接的质量是否已经降级。这些特性可以包括上传速度、下载速度和丢包率。例如,如果连接的上传速度在阈值水平以下,则具有无线通信能力的设备可以确定连接降级。作为另一示例,如果连接的下载速度在阈值水平以下,则具有无线通信能力的设备可以确定连接降级。

识别重新评估连接是否仍在阈值质量水平以下的时间(308)。重新评估连接是否仍然在阈值质量水平以下的时间(或“重新评估时间”)可以至少部分地基于在304处识别的第一无线通信网络的特性。例如,重新评估时间可以基于由第一无线通信网络采用的无线通信技术的水平来识别,更高水平技术(例如,4glte网络)比较低水平技术(例如2g网络)具有更高重新评估时间。在一些实施方式中,重新评估时间基于分配给第一无线通信网络的评级,该评级至少部分地基于在304处识别的特性。

做出与第一无线通信网络的连接仍然在阈值质量水平以下的确定(310)。可以响应于确定重新评估与第一无线通信网络的连接是否已经降级到阈值质量水平以下的时间(“重新评估时间”)届满来做出该确定。例如,具有无线通信能力的设备可以确定从在306处第一次评定连接质量之后,所识别的重新评估时间已经过去。在确定所识别的重新评估时间已经过去之后,具有无线通信能力的设备可以评估与第一无线通信网络连接以确定连接仍然在阈值质量水平以下。例如,连接的下载速度可以从在306处连接的第一次评估之后已经改变,但是仍然在阈值下载速度值以下。

建立与第二无线通信网络的连接(312)。可以响应于在306处确定了与第一无线的连接已经降级到阈值质量水平以下,并且在310处确定了与第一无线通信网络的连接仍然在阈值质量水平以下,建立与第二无线通信网络的连接。例如,具有无线通信能力的设备可以结束与第一无线通信网络的连接并建立与在具有无线通信能力的设备的通信范围内的第二、不同的无线通信网络的连接。

图4示出了可以与这里描述的技术一起使用的通用计算机设备400和通用移动计算机设备450的示例。计算设备400旨在表示各种形式的数字计算机,例如膝上型计算机、桌面型计算机、工作站、个人数字助理、服务器、刀片服务器、大型机和其他适当的计算机。计算设备450旨在表示各种形式的移动设备,诸如个人数字助理、蜂窝电话、智能电话和其他类似的计算设备。这里所示的组件、它们的连接和关系以及它们的功能仅仅是示例性的,并不意味着限制本文中描述和/或要求保护的发明的实施方式。

计算设备400包括处理器402、存储器404、存储设备406、连接到存储器404和高速扩展端口410的高速接口408、以及连接到低速总线414和存储设备406的低速接口412。组件402、404、406、408、410和412中的每一个使用各种总线互连,并且可以适当地安装在公共主板或以其他适当方式。处理器402可以处理用于在计算设备400内执行的指令,包括存储在存储器404中或存储设备406上的指令,以在外部输入/输出设备上显示gui的图形信息,外部输入/输出设备诸如耦合到高速接口408的显示器416。在其他实施方式中,可以适当地使用多个处理器和/或多个总线以及多个存储器和多个类型的存储器。此外,可以连接多个计算设备400,每个设备提供必要操作的一部分(例如,作为服务器组、一组刀片服务器或多处理器系统)。

存储器404在计算设备400内存储信息。在一个实施方式中,存储器404是易失性存储器单元。在另一个实施方式中,存储器404是非易失性存储器单元。存储器404还可以是另一种形式的计算机可读介质,诸如磁盘或光盘。

存储设备406能够为计算设备400提供大容量存储。在一个实施方式中,存储设备406可以是或包含计算机可读介质,诸如软盘设备、硬盘设备、光盘设备、或磁带设备、闪速存储器或其它类似的固态存储设备、或设备阵列,包括存储区域网络或其他配置中的设备。计算机程序产品可以有形地体现在信息载体中。计算机程序产品还可以包含指令,所述指令当被执行时执行一个或多个方法,例如上述的方法。信息载体是诸如存储器404、存储设备406、处理器402上的存储器或传播信号的计算机或机器可读介质。

高速控制器408管理计算设备400的带宽密集型操作,而低速控制器412管理较低带宽的大量操作。这种功能的分配仅是示例性的。在一个实施方式中,高速控制器408耦合到存储器404、显示器416(例如,通过图形处理器或加速器)、以及可接受各种扩展卡(未示出)的高速扩展端口410。在实施方式中,低速控制器412耦合到存储设备406和低速扩展端口414。可以包括各种通信端口(例如,usb、蓝牙、以太网、无线以太网)的低速扩展端口可以耦合到一个或多个输入/输出设备,诸如键盘、指示设备、扫描仪、或诸如交换机或路由器的网络设备,例如通过网络适配器。

计算设备400可以以多种不同的形式来实施,如图所示。例如,它可以被实施为标准服务器420,或者在一组这样的服务器中多次实施。它也可以被实施为机架式服务器系统424的一部分。附加地,其可以在诸如膝上型计算机422的个人计算机中实施。替选地,来自计算设备400的组件可以与移动设备中的其他组件(未示出)组合,诸如设备450。这些设备中的每一个可以包含计算设备400、450中的一个或多个,并且整个系统可以由多个彼此通信的计算设备400、450组成。

计算设备450包括处理器452、存储器464、诸如显示器454的输入/输出设备、通信接口466和收发机468以及其他组件。设备450还可以设置有诸如微驱动器或其他设备的存储设备,以提供附加的存储。组件450、452、464、454、466和468中的每一个使用各种总线互连,并且组件中的若干个可以安装在公共母板上或以其他适当方式。

处理器452可以执行计算设备450内的指令,包括存储在存储器464中的指令。处理器可以被实施为包括单独的和多个模拟和数字处理器的芯片的芯片集。处理器可以提供例如设备450的其他组件的协调,诸如用户接口、由设备450运行的应用以及设备450的无线通信的控制。

处理器452可以通过耦合到显示器454的控制接口458和显示接口456与用户进行通信。显示器454可以是例如tftlcd(薄膜晶体管液晶显示器)或oled(有机发光二极管)显示器或其他适当的显示技术。显示接口456可以包括适当的电路,用于驱动显示器454以向用户呈现图形和其它信息。控制接口458可以从用户接收命令并将其转换以提交给处理器452。此外,可以提供与处理器452通信的外部接口462,以便能够与其他设备进行设备450的近区域通信。在某些实施方式中外部接口462可以提供例如有线通信,或者在其他实施方式中提供无线通信,以及还可以使用多个接口。

存储器464在计算设备450内存储信息。存储器464可以被实施为计算机可读介质、易失性存储器单元、或者非易失性存储器单元中的一个或多个。扩展存储器474也可以通过扩展接口472来提供和连接到设备450,扩展接口472可以包括例如simm(单列直插式内存模块)卡接口。这种扩展存储器474可以为设备450提供额外的存储空间,或者还可以存储用于设备450的应用或其他信息。具体来说,扩展存储器474可以包括指令来执行或补充上述过程,并且也可以包括安全信息。因此,例如,扩展存储器474可以被提供为设备450的安全模块,并且可以用允许设备450的安全使用的指令来编程。附加地,可以经由simm卡与附加信息一起来提供安全应用,诸如以不可攻击的方式将识别信息放置在simm卡上,

存储器可以包括例如闪存和/或nvram存储器,如下所述。在一个实施方式中,计算机程序产品被有形地体现在信息载体中。计算机程序产品包含指令,所述指令当被执行时执行一个或多个方法,诸如上述的方法。信息载体是诸如存储器464、扩展存储器474、处理器452上的存储器、或可以例如通过收发机468或外部接口462接收的传播信号的计算机或机器可读介质。

设备450可以通过通信接口466进行无线通信,其可以在必要时包括数字信号处理电路。通信接口466可以提供诸如gsm语音呼叫、sms、ems或mms消息传递、cdma、tdma、pdc、wcdma、cdma2000或gprs等各种模式或协议下的通信。这种通信可以例如通过射频收发机468发生。附加地,短距离通信可以诸如使用蓝牙、wifi或其他这样的收发机(未示出)发生。附加地,gps(全球定位系统)接收器模块470可以向设备450提供附加的导航和位置相关的无线数据,其可以由在设备450上运行的应用适当地使用。

设备450还可以使用音频编解码器460可听地通信,其可以从用户接收口语信息并将其转换为可用的数字信息。音频编解码器460同样可以为用户生成可听声音,诸如通过扬声器,例如在设备450的手机中。这种声音可以包括来自语音电话呼叫的声音,可以包括记录的声音(例如,语音消息、音乐文件等等),并且还可以包括在设备450上操作的应用生成的声音。

计算设备450可以以多种不同的形式来实施,如图所示。例如,它可以被实施为蜂窝电话480。它也可以被实施为智能电话482、个人数字助理或其他类似的移动设备的一部分。

这里描述的系统和技术的各种实施可以在数字电子电路、集成电路、专门设计的asic(专用集成电路)、计算机硬件、固件、软件和/或其组合中实现。这些各种实施方式可以包括在可编程系统上可执行和/或可解释的一个或多个计算机程序中的实施,所述可编程系统包括至少一个可编程处理器、至少一个输入设备和至少一个输出设备,所述可编程处理器可以是特殊或通用目的、被耦合以从存储系统接收数据和指令以及向存储系统发送数据以及指令。

这些计算机程序(也称为程序、软件、软件应用或代码)包括用于可编程处理器的机器指令,并且可以以高级过程语言和/或面向对象的编程语言,和/或以汇编/机器语言来实施。如本文所使用的,术语“机器可读介质”、“计算机可读介质”是指用于向可编程处理器提供机器指令和/或数据的任何计算机程序产品、装置和/或设备(例如,磁盘、光盘、存储器、可编程逻辑器件(pld)),包括接收机器指令作为机器可读信号的机器可读介质。术语“机器可读信号”是指用于向可编程处理器提供机器指令和/或数据的任何信号。

为了提供与用户的交互,这里描述的系统和技术可以在具有用于向用户显示信息的显示器设备(例如,crt(阴极射线管)或lcd(液晶显示器)监视器)以及用户可以向计算机提供输入的键盘和指点设备(例如,鼠标或轨迹球)的计算机上实施。也可以使用其他种类的设备来提供与用户的交互;例如,提供给用户的反馈可以是任何形式的感觉反馈(例如,视觉反馈、听觉反馈或触觉反馈);并且可以以任何形式接收来自用户的输入,包括声音、语音或触觉输入。

这里描述的系统和技术可以在包括后端组件(例如,作为数据服务器)计算机系统中实施,或在包括中间件组件(例如,应用服务器)的计算系统中实施,或者在包括前端组件(例如,具有图形用户界面或web浏览器的客户端计算机,用户可以通过该图形用户界面或web浏览器与这里描述的系统和技术的实施进行交互)的计算系统中实施,或者在这种后端、中间件或前端组件的任何组合的计算系统中实施。系统的组件可以通过数字数据通信(例如,通信网络)的任何形式或介质互连。通信网络的示例包括局域网(“lan”)、广域网(“wan”)和互联网。

计算系统可以包括客户端和服务器。客户端和服务器通常彼此远离,并且通常通过通信网络进行交互。客户端和服务器之间的关系是由于各自计算机上运行的计算机程序和彼此之间的客户端-服务器关系而产生的。

对于这里讨论的系统收集关于用户的个人信息或可以利用个人信息的情况,可以向用户提供用于控制程序或特征是否收集个人信息(例如,关于用户社交网络、社会行为或活动、职业、用户偏好或用户的当前位置的信息)、或者控制是否和/或如何从内容服务器接收可能与用户更相关的内容的机会。附加地,在存储或使用某些数据之前,可以以一种或多种方式来匿名化某些数据,以便去除个人可识别信息。例如,用户的身份可以被匿名化,使得不能为用户确定个人可识别信息,或者在获得位置信息的情况下,可以将用户的地理位置一般化(诸如到城市、邮政编码或州级),使得不能确定用户的特定位置。因此,用户可以控制如何收集关于他或她的信息并由内容服务器如何使用该信息。

已经描述了本发明的许多实施例。然而,应当理解,在不脱离本发明的精神和范围的情况下,可以进行各种修改。例如,描述为由移动计算设备执行的一个或多个功能可以由一个或多个远程服务器执行,并且这些功能的结果可以被传送到移动计算设备。例如,可以由远程服务器基于无线通信网络接入点的一个或多个特性对无线通信网络接入点进行评级。然后,远程服务器可以将评级传达给移动计算设备。因此,其它实施例在所附权利要求的范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1