专利名称:用于在通信系统中将软件升级通知传递给装置的方法
技术领域:
以下描述大体上涉及无线通信,且更特定来说,涉及促进在无线通信环境中用于使 用单播和多播网络的装置的软件升级通知。
无线通信系统已成为世界上大多数人用以进行通信的普遍手段。无线通信装置已变 得更小且更强大,以便迎合消费者的需要并改进便携性和便利性。例如蜂窝式电话的移 动装置中的处理能力的增加已导致对无线网络传输系统的需求增加。此类系统通常不如 经由这些系统进行通信的蜂窝式装置那样容易更新。随着移动装置的能力扩大,可能难 以以促进全面开发新的且改进的无线装置的能力的方式来维持较旧的无线网络系统。
典型的无线通信网络(例如,使用频分、时分和码分技术)包含提供覆盖区域的一 个或一个以上基站和可在所述覆盖区域内传输和接收数据的一个或一个以上移动(例如, 无线)终端。典型的基站可同时传输用于广播、多播和/或单播服务的多个数据流,其中 数据流是移动终端可具有独立接收兴趣的数据流。所述基站的覆盖区域内的移动终端可 能有兴趣接收由复合流载运的一个、 一个以上或所有数据流。同样,移动终端可将数据 传输到所述基站或另一移动终端。由于信道变化和/或干扰功率变化的原因,基站与移动 终端之间或若干移动终端之间的此类通信可能降级。
例如,可在启动软件应用程序时或通过用户起始在有线通信环境中执行软件升级检 査,例如当应用程序建立与指定服务器的单播连接且检查是否存在任何可用的软件升级 时。然而,当今的移动装置能够经由无线网络下载软件,使得它们无需硬连线到系统以 获得软件升级通知。因此,此项技术中需要一种用于改进此类无线网络系统中的处理量
的系统和/或方法。
发明内容
以下展现一个或一个以上实施例的简化概要以提供对这些实施例的基本理解。此概 要不是所有所涵盖的实施例的详尽综述,且不期望识别所有实施例的关键或重要元件, 也不期望描绘任何或所有实施例的范围。其唯一目的是以简化的形式展现一个或一个以 上实施例的某些概念,以作为对稍后展现的更详细的描述的序言。
本文展现的各方面涉及为利用多播(广播)和单播网络的装置中的应用禾呈序提供软 件升级通知。这两种类型的网络(多播和单播)可为有线或无线的。此类应用程序的一 实例是仅前向链路(FLO)系统,其具有两种类型的网络可用(1)作为多播(广播) 网络的FLO和(2)作为单播网络的CDMAlxEV-DO。通常,不经常发生软^牛升级;然 而,装置仍然需要保持最新的软件升级,因为软件可能出于重要原因(例如,特征增强、 缺陷修复、安全缺口等)而进行升级。本文展现的各方面可应用于对无线网络中的装置 的任何类型的频繁、不频繁和/或重要的信息传递。各个方面促进使消耗的资源和服务器 负载最小化,将软件升级通知快速传递给装置,每当装置连接到网络时,此类装置可由 于软件升级通知而为最新的。
根据一方面, 一种在无线通信环境中提供软件升级通知的方法可包括A^服务器接 收软件版本信息;执行检验协议以确定软件升级是否可用于用户装置;和执纟亍接入协议 以接收软件升级通知。所述方法可另外包括经由多播信道传输软件升级通知。所述检验 协议可以是经由服务器与至少一个用户装置之间的多播连接而执行的"推送"检验协议, 其可包括经由多播数据信道接收软件版本信息;和评估与所述版本信息一起接收到的 软件ID是否对应于用户装置,以确定所接收的软件版本信息是否与用户装置相关。检验 协议也可以是"拉取"检验协议,其包括在用户装置之间产生点对点连接;从服务器 处请求软件升级信息;接收包括所述软件版本信息的服务器响应;和如果服务器响应中 的版本号大于与存储在用户装置上的软件相关联的版本号,那么接收软件升级通知。所 述方法可进一步包括使用基于令牌的接入协议;和确定客户端令牌在用户装置中是否 有效;执行拉取检验协议;产生客户端令牌;和如果所述客户端值无效,那么将所述客 户端令牌值设定为等于服务器令牌值;和如果客户端令牌有效,那么确定客户端令牌值 是否大于或等于服务器令牌值(模数n)。另外,所述方法可包括如果客户端令牌值不大 于或等于服务器令牌值(模数n),那么确定客户端令牌值是否在服务器令牌值减去m(模 数n)(其中服务器传输与m (正整数)最近的服务器令牌值相关联的软件升级通知)与
服务器令牌值-1 (模数n)之间,其中n为最大令牌值。所述方法可额外包括如果所述 客户端令牌值在所述服务器令牌值减去m (模数n)与所述服务器令牌值-1 (模数n)之 间,那么执行推送检验协议,并将所述客户端令牌值设定为等于所述服务器令牌值;和 如果所述客户端令牌值不在所述服务器令牌值减去m (模数n)与所述服务器令牌值-1 (模数n)之间,那么执行拉取检验协议,并将所述客户端令牌值设定为等于所述服务器 令牌值。
根据另一方面, 一种促进在无线通信环境中将软件升级通知提供给经由多播和单播 连接进行通信的用户装置的设备可包括接收器,其接收软件版本信息;和处理器,其 执行检验协议和接入协议以获得软件升级通知。所述处理器可执行如上文相对于所述方 法而描述的推送和拉取检验协议中的任一者或两者。举例来说,所述处理器可确定客户 端令牌在用户装置中是否有效,可将所述客户端令牌值与服务器令牌值进行比较等,以 确定利用何种检验协议。另外,可使用推送检验协议持续预定时间周期,随后使用拉取 检验协议来执行软件升级通知。
根据另一方面, 一种无线通信设备可包括用于经由多播和单播连接从服务器接收 软件版本信息的装置;用于执行检验协议以确定软件升级是否可用于用户装置的装置;
和用于执行接入协议以接收软件升级通知的装置。所述设备可进一步包括用于使用基 于令牌的接入协议并确定客户端令牌在用户装置中是否有效的装置;用于执行单播检验 协议的装置;和用于产生客户端令牌的装置;和用于如果客户端值无效,那么将客户端 令牌值设定为等于服务器令牌值的装置。所述设备仍可进一步包括用于如果客户端令 牌有效,那么确定客户端令牌值是否大于或等于服务器令牌值(模数tl)的装置;用于 如果客户端令牌值不大于或等于服务器令牌值(模数n),那么确定客户端令牌值是否在 服务器令牌值减去m (模数n)(其中服务器传输与m (正整数)最近的服务器令牌值相 关联的软件升级通知)与服务器令牌值-1 (模数n)之间的装置,其中n为最大令牌值; 用于如果所述客户端令牌值在所述服务器令牌值减去m (模数n)与所述服务器令牌值-1 (模数n)之间,那么执行多播检验协议的装置,和用于将所述客户端令牌值设定为等于 所述服务器令牌值的装置;和如果所述客户端令牌值不在所述服务器令牌值减去m (模 数n)与所述服务器令牌值-1 (模数n)之间,那么执行单播检验协议的装置,和将所述 客户端令牌值设定为等于所述服务器令牌值的装置。另外,所述设备可包括用于通过使 用用于执行多播检验协议持续预定时间周期的装置,随后使用用于执行单播检验协议的 装置来提供软件升级通知的装置。
又一方面涉及一种具有计算机程序的计算机可读媒体,所述计算机程序包括计算机 可执行指令,其用于从服务器接收包括软件版本信息的额外开销消息;执行检验协议以 确定软件升级是否可用于用户装置;和执行接入协议以接收软件升级通知。所述检验协 议可以是多播检验协议和/或单播检验协议。所述计算机可读媒体可进一步具有用于确定 执行何种检验协议的指令,包含用于分析客户端令牌值并将所述客户端令牌值与服务器 令牌值进行比较的指令。
另一方面涉及一种执行用于增加无线通信环境中的处理量的指令的处理器,所述指 令包括从服务器接收具有软件版本信息的额外开销消息;执行检验协议以确定软件升 级是否可用于用户装置;和执行接入协议以接收软件升级通知。所述检验协议可以是多 播检验协议和单播检验协议中的任一者或两者,如由关于客户端令牌值和服务器令牌值 的一系列确定所确定。另外,可使用多播协议持续预定时间周期(其后用户装置可起始 单播协议以获得升级通知信息)而将软件升级通知提供给用户装置。
为了实现前述和相关目的,所述一个或一个以上实施例包括下文全面描述且在权利 要求书中特定指出的特征。以下描述和附图详细陈述一个或一个以上实施例的某些说明 性方面。然而,这些方面仅指示可使用各种实施例的原理的各种方式中的一些方式,且 所描述的实施例期望包含所有此类方面及其等效物。
图1说明根据本文展现的各个方面的无线网络通信系统。
图2是根据一个或一个以上方面用于在无线通信环境中执行"推送"检验协议以确 定软件升级是否可用于用户装置的方法的说明。
图3是根据一个或一个以上方面用于在无线通信环境中执行"拉取"检验协议以确 定软件升级是否可用于用户装置的方法的说明。
图4是根据一个或一个以上方面促进准许用户装置接收软件升级通知的方法的说明。
图5说明根据各个方面促进与推送检验方法和拉取检验协议中的每一者组合而执行 令牌接入协议的方法。
图6是根据多种方面其中可执行一个或一个以上检验协议的软件升级通知情形的说明。
图7是一系统的说明,其是推送方法、拉取方法和具有令牌接入的混合检验方法的 概念性总览。
图8是可结合本文所描述的各种系统和方法而使用的无线网络环境的说明。 图9说明根据各个方面包括经操作以产生多媒体内容流并在数据网络上运输多媒体 内容流的运输系统的通信网络。
图io说明适合用于内容传递系统中的内容提供商服务器的各个方面。
图11说明根据一个或一个以上方面适合用于内容传递系统中的服务器或装置。
图12是根据各个方面促进在无线通信环境中执行检验协议和接入协议的设备的说明。
具体实施例方式
现参看图式描述各个实施例,所有图式中相同的参考标号用于指代相同的元件。在 以下描述中,出于阐释的目的,陈述许多特定细节以便提供对一个或一个以上实施例的 彻底理解。然而,显然可在不具有这些特定细节的情况下实践所述实施例。在其它例子 中,以框图形式展示众所周知的结构和装置以便促进描述一个或一个以上实施例。
如本申请案中所使用,术语"组件"、"系统"和类似物期望指代计算机相关实体,
其为硬件、软件、执行中的软件、固件、中间件、微码和/或其任何组合。举例来说,组 件可以是(但不限于)在处理器上运行的过程、处理器、对象、可执行对象、执行线程、 程序和/或计算机。 一个或一个以上组件可驻留在过程和/或执行线程内,且组件可位于一 个计算机上和/或分布在两个或两个以上计算机之间。而且,这些组件可从其上存储有各
种数据结构的各种计算机可读媒体执行。组件可借助本地和/或远程过程进行通信,例如 根据具有一个或一个以上数据包的信号(例如,来自与本地系统、分布式系统中的另一
组件和/或在例如因特网的网络上借助所述信号与其它系统交互的一个组件的数据)。另 外,本文所描述的系统组件可重新布置和/或由额外的组件补充,以便促进实现相对于其 而描述的各个方面、目标、优点等,且不限于给定图中所陈述的精确配置,如所属领域 的技术人员将了解的。
此外,本文结合订户站而描述各个实施例。订户站还可称为系统、订户单元、移动 台、移动装置、远程站、接入点、远程终端、接入终端、用户终端、用户代理、用户装 置或用户装备。订户站可为蜂窝式电话、无绳电话、会话起始协议(SIP)电话、无线本 地环路(WLL)站、个人数字助理(PDA)、具有无线连接能力的手提式装置,或连接到 无线调制解调器的其它处理装置。
另外,可使用标准编程和/或工程技术将本文所描述的各个方面或特征实施为方法、 设备或制品。如本文所使用的术语"制品"期望涵盖可从任何计算机可读装置、载体或
媒体存取的计算机程序。举例来说,计算机可读媒体可包含(但不限于)磁性存储装置 (例如,硬盘、软盘、磁带……)、光盘(例如,紧致盘(CD)、数字多功能盘(DVD)……)、 智能卡和快闪存储器装置(例如,卡、棒、保密磁盘(key drive))。另外,本文所描述 的各种存储媒体可表示用于存储信息的一个或一个以上装置和/或其它机器可读媒体。术 语"机器可读媒体"可包含(但不限于)无线信道和能够存储、含有和/或载运指令和/ 或数据的各种其它媒体。
现参看图1,根据本文所展现的各个实施例说明无线网络通信系统100。系统100可 包括在一个或一个以上扇区中的一个或一个以上基站102,其接收、传输、重复(等) 到达彼此和/或到达一个或一个以上移动装置104的无线通信信号。每一基站102可包括 传输器链和接收器链,其每一者又可包括与信号传输和接收相关联的多个组件(例如, 处理器、调制器、多路复用器、解调器、解多路复用器、天线等),如所属领域的技术人 员将了解。移动装置104可为(例如)蜂窝式电话、智能电话、膝上型计算机、手提式 通信装置、手提式计算装置、卫星无线电设备、全球定位系统、PDA和/或用于经由无线 网络IOO进行通信的任何其它合适的装置。可结合本文所描述的各个方面使用系统100, 以便促进在无线通信环境中向用户装置通知软件升级,如相对于随后的图所陈述。
根据本文展现的各个方面,以下实例涉及其中大量用户装置使用软件升级通知应用 程序且希望用于大量软件类别的更新通知的情形。假设软件版本包括两个组件,X和Y, 使得将软件的类别描述为SOFTWARE_ID(X),且(Y)界定软件的序列号。可能存在多种 类别的应用程序软件,其取决于不同的操作系统(OS)类型、不同的网络提供商和不同 的装置类型。因此,X可包括任何层级层级,例如,X=a.b.c,其中"a"是OS—typeID, "b"是网络提供商ID,且"c"是装置类型ID。每当有新的软件可用于给定SOFTWARE—ID 时,递增序列号(Y)(例如,"版本3、版本5.2等)。
对于软件升级通知,从装置角度可考虑两个设计因素,即(1)获得信息的方式, 和(2)获得信息的时间。获得升级信息的方式涉及执行"检验"协议,且其时序涉及执 行接入协议。如本文所描述, 一个或一个以上检验协议可与多个接入协议中的任一者组 合。以此方式,本文展现的系统和方法可通过减少对长期消耗带宽的软件升级广播的需 要来节省网络资源,同时仍促进在网络上将软件升级提供给用户装置。
参看图2-5,说明与向用户装置通知软件升级相关的方法。可在FDMA环境、OFDMA 环境、CDMA环境、WCDMA环境、TDMA环境、SDMA环境或任何其它合适的无线环 境中执行本文所描述的方法。虽然出于阐释简明性的目的,所述方法展示和描述为一系
列动作,但应了解并理解,所述方法不受动作的次序限制,因为根据一个或一个以上实 施例,某些动作可以不同的次序和/或与除本文所展示和描述的动作之外的其它动作同时 发生。举例来说,所属领域的技术人员将了解并理解,方法可替代地表示为一系列相关 状态或事件,例如以状态图的形式。另外,根据一个或一个以上方面,可能并不需要所 有所说明的动作来实施方法。
图2是根据一个或一个以上方面用于在无线通信环境中执行"推送"检验协议以确 定软件升级是否可用于用户装置的方法200的说明。如本文所使用,"升级"和"更新" 期望是同义的并可互换的术语,其表示比目前驻留在用户装置上的新的一件特定软件的 版本。"推送"期望描述"一对多"或多播广播系统。因此,推送机制利用广播(多播) 网络,其中信息从服务器被推送到多个装置。在"拉取"机制(例如,如下文相对于图 3而详细描述)中,装置个别地起始与服务器的点对点通信,且服务器使用单播网络而 对其作出响应(例如,装置从服务器"拉取"信息)。
根据方法200,在202处,用户装置可经由专用多播数据信道从服务器接收软件版 本信息。服务器可在数据信道上连续传输用于全部软件类别的软件版本的最近序列号。 根据各个方面,SOFTWARE—ID可用于描绘序列和/或版本信息的范围。举例来说, SOFTWARE—ID可用作消息的"地址",且装置仅接收"定址到"其特定SOFTWAREJD 的消息。因此,在204处,具有特定SOFTWARE—ID的装置调谐到数据信道中,并评估 其上的信号,直到其找到对应于其SOFTWAREJD的最新的序列号为止。在206处,作 出关于数据信道中所广告的最新的序列号是否大于装置的当前软件序列号的确定。如果 是,那么接着应将软件升级通知传递到用户装置。在208处,用户装置可继续执行接入 协议以获得软件升级。
图3是根据一个或一个以上方面在无线通信环境中执行"拉取"检验协议以确定软 件升级是否可用于用户装置的方法300的说明。拉取检验协议包括服务器与用户装置之 间的点对点通信。在302处,所述装置可个别地产生与服务器的点对点(单播)连接。 在304处,所述装置可发送对于软件升级信息的请求消息,以从服务器"拉取"所述信 息。请求消息可含有装置的SOFTWARE—ID和指示装置上的最近的软件版本的序列号。 在306处,所述装置可从服务器接收响应消息。根据一个方面,所述响应消息可包括与 针对由装置在304处提供的SOFTWARE—ID的特定软件应用程序相关联的最新的序列 号。在这种情况下,所述装置可确定其是否需要软件升级(例如,通过确定在响应消息 中接收到的序列号是否大于装置的当前软件的序列号)。根据另一方面,服务器可确定最
新的软件序列号是否大于装置的所指示的序列号,且可在306处的响应消息中发送软件 升级通知(例如,"有必要升级"或"无必要升级"等)。在任一情况下,在308处,所 述装置可接收升级通知。
方法200和300可与多个接入方法中的任一者组合。举例来说,可使用周期性接入 方法,其中装置周期性地检査软件升级是否可用。对于每一软件类别,将关联有一检验 周期(例如,l天、5天、7天、30天等),其可针对不同的软件类别而不同。根据另一 接入方法,装置可在每次启动应用程序时检查升级。根据又一方面,可准许用户起始软 件检验。另一方面涉及基于事务的接入协议,借此装置在装置与服务器之间发生事务时 执行检验协议。另一方面涉及"令牌"接入方法,其使用称为"额外开销"信道的专用 多播信道,以传达最新系统状态信息,如下文在图4处更详细地描述。
图4是根据一个或一个以上方面促进准许用户装置接收软件升级通知的方法400的 说明。方法400是基于令牌的方法,其中将客户端令牌值与服务器令牌值进行比较,在 多播信道中周期性地广告所述服务器令牌值。在402处,装置可调谐到服务器连续传输 额外开销信息(其可包含最新的软件版本或序列号、装置ID信息等)所经由的额外开销 信道中,且接收额外开销消息。装置可周期性地调谐到额外开销信道中。与其它数据信 道形成对比,额外开销信道含有较少量的(但重要的)用于应用程序的操作的信息。因 此,从装置的角度来看,用户装置用于调谐到此信道中并读取额外开销消息所需的资源 是相对少的。在404处,可作出关于是否存在客户端令牌(CLI—TOKEN)的确定。根据 一方面,所述装置在本地维持整数CLIJTOKEN值(例如,1字节整数值或某一其它合适 的值)。起初,CLI—TOKEN不存在然而,在接收到额外开销消息时,如果在404处确 定在装置中不存在CLI—TOKEN,那么在406处,装置执行用于软件升级的检验。同样在 406处,装置可产生CLI—TOKEN并将其设定为等于额外开销信道中的SVR—TOKEN。
服务器维持整数SVR—TOKEN值(例如,1字节或某一其它合适的值)。根据l字节 实例(不限于该l字节实例),在发布新的软件升级时,SVRJTOKEN值可从0递增l模 数256。可在额外开销信道中连续广告SVR—TOKEN值。如果CLI_TOKEN在404处存 在,那么在408处,作出关于CLI—TOKEN是否等于SVR_TOKEN的确定。如果 CLI—TOKEN值小于SVR—TOKEN值,那么在412处,装置执行对软件升级的检验,且 将CLI—TOKEN值设定为SVR—TOKEN值。如果CLI_TOKEN值大于或等于SVR—TOKEN 值,那么装置具有最新的软件版本,且无必要更新,如410处所指示。另外,SVR—TOKEN 可在256次递增之后绕回。因此,例如在装置长期脱离网络时,CLIJTOKEN值可能等于 绕回的SVR一TOKEN。为了解决此情形,如果在某一预定义时间周期(例如,30天、45 天、90天等)内尚未获得额外开销消息,那么可擦除所存储的CLI—TOKEN。此持续时 间可设定为实质上短于SVR—TOKEN绕回所需的估计周期。
图5说明根据各个方面促进与推送检验方法和拉取检验协议中的每一者组合而执行 令牌接入协议的方法500。类似于方法400,方法500也利用基于令牌的协议,其中将客 户端令牌值与多播信道中周期性地广告的服务器令牌值进行比较。举例来说,不再如上 所述发送针对全部软件类别的所有最新的序列号,服务器可在数据信道中发送两个 SVR—TOKEN之间的增量改变信息。举例来说,在存在针对软件类别A和B的两个新的 升级且SVR—TOKEN二3的情况下,服务器可递增其SVR一TOKEN (例如,递增到4), 且在额外开销信道中广告所述SVR—TOKEN (例如,以类似于上文相对于图3所描述的 方式),接着,服务器可在数据信道中发送两个软件升级通知消息。消息的格式可包括多 个字段。举例来说,"SVR—TOKEN"可包括与软件升级相关联的值。"NUM—RECORD" 可界定添加在给定SVR—TOKEN中的软件升级通知的数目。可在NUM—RECORD软件升 级通知中唯 一 地指派"RECORD—ID "。可如上文所述界定"SOFTWARE—ID "。 "LATEST—SQN—NUM"可界定针对SOFTWARE—ID的最新序列号。通过利用每一消息的 NUM—RECORD和RECORD—ID,装置可确定应收集多少软件升级通知和何时停止寻找 升级通知。
因此,方法500开始于502处,其中用户装置可接收额外开销消息。在504处,作 出关于是否存在CLI—TOKEN的确定。如果不存在,那么在506处,可执行拉取检验协 议,且可产生CLI—TOKEN,并设定为等于SVR—TOKEN。如果客户端令牌在504处有效, 那么在508处,可作出关于客户端令牌值是否大于或等于服务器令牌值(模数n)的确 定,其中n为最大令牌号。如果客户端令牌值大于或等于服务器令牌值,那么无需采取 动作,如510处所指示,因为装置是最新的,且具有所讨论的软件的最新版本。
如果客户端令牌值不大于或等于服务器令牌值(模数n)(例如,以解决其中服务器 令牌值从最大值n绕回到0的情形),如果客户端令牌值小于服务器令牌值,那么在512 处,可作出关于客户端令牌值是否在服务器令牌值-m(模数n)(其中服务器传输与m(正 整数)最近的服务器令牌值相关联的软件升级通知)与服务器令牌值-1 (模数n)之间的 确定。举例来说,服务器可连续地和/或周期性地传输与m个最近的令牌值相关联的软件 升级通知。举例来说,m可为预设的数字,例如3,使得服务器连续地和/或周期性地传 输与3个最近的服务器令牌值相关联的软件升级通知。另外或作为替代,可动态地界定
m,且m可包含在额外开销消息中。根据另一实例,在n为由单字节表达的整数值(例 如,8位值)的情形中,n可具有最大值255,且当客户端值达到255且服务器令牌已绕 回到0时(例如,或某一其它小于255的值),可出现绕回条件。在此类情形中,虽然客 户端装置符合用于软件升级通知的条件,但客户端令牌值可能似乎大于服务器令牌值。 为了减轻绕回问题,如果服务器传输与SVR—TOKEN-m (模数255)至lj SVRJTOKEN-l (模数255)(例如,最近的服务器令牌)的范围中的升级数目相关联的多播软件升级通 知,那么可强加一标准,以确保在起始推送检验协议之前,客户端令牌值落在值 "SVR—TOKEN-m (模数255)"与"SVR—TOKEN-l (模数255)"之间。将了解,上述实 例在本质上是说明性的,且期望促进理解解决绕回条件所借助的机制,且n可为任何整 数(例如,512、 1000、 1024),且不限于与最大单字节整数值相关联的255值。
如果条件在512处为真,那么在514处,可实施推送检验协议,其后,客户端令牌 值可设定为等于服务器令牌值。如果条件在512处不为真,那么在516处,可实施拉取 检验协议,其后,客户端令牌值可设定为等于服务器令牌值。通过方法400,如果在某 一预定义时间周期(例如,15天、31天、60天等)内尚未获得额外开销消息,那么可 擦除所存储的客户端令牌。此持续时间可设定为实质上短于SVR—TOKEN绕回所需的估 计周期。
以下论述展现方法400和500的若干变化。举例来说,服务器可在预定义时间周期 后停止在数据信道中发送增量软件升级信息。在此情况下,如果装置不能在数据信道中 收集软件升级通知,那么其可利用拉取检验方法。根据另一实例,不再发送最新的 SVR—TOKEN与SVR—TOKEN-1之间的增量改变,服务器可发送描述最新的SVR_TOKEN 与SVR—TOKEN-M之间的差的改变值。在此情况下,可能存在M数目个令牌改变,且 可经由数据信道发送相应的软件升级信息。在CLI—TOKEN在SVR—TOKEN-M与 SVR—TOKEN之间的情况下(包含绕回情况),那么装置可利用推送检验协议。否则,装 置可利用拉取检验协议。
根据又一方面,存在下载软件升级的两种方式(1)点对点,和(2)多播。对于点 对点实施方案,在用户批准后,每一装置可产生与服务器的点对点连接,并下载更新的 软件应用程序。对于多播,服务器可多播经升级的应用程序持续给定时间周期(例如,1 个星期、30天……)。因此,依据下载协议,数据信道中的软件升级通知消息可具有额 外的字段。举例来说,如果利用点对点下载机制,那么可将"NOTIFICATION—DELAY" 字段添加到消息。装置可产生0与NOTIFICATION—DELAY的值之间的随机数,且可在 所选择的随机时间之后通知用户需要软件升级。此参数促进同时将升级通知记录传递给 多个装置。如果在用户准许后使用自动下载机制,那么下载请求的涌入可能淹没下载地 点。另外,如果多播用于应用程序更新下载,那么"CONTACT—WINDOW"字段可添加 到消息,其可指示何时调谐到广播信道中以下载经升级的应用程序。
图6是根据多种方面可执行一个或一个以上检验协议的软件升级通知情形600的说 明。根据所述情形,服务器令牌已从3升级到4,如图中由从3到4的箭头所指示。可 假定存在用于软件类别A和B的两个新的更新,且服务器可在额外开销信道中广告 SVR_TOKEN。如果客户端令牌值等于3,那么服务器可接着利用推送检验协议在数据信 道中发送两个软件升级通知消息。如果客户端令牌值不等于3,那么客户端可使用拉取 检验协议请求升级通知。
图7是系统700的说明,其是推送方法702、拉取方法704和具有令牌接入的混合 检验方法706的概念性总览。根据各个方面,描述使用推送和拉取检验协议两者的混合 方法。在不频繁发生软件升级事件的情况下,仅涉及最新的增量改变的广播数据的量将 相对较小,其可节省广播资源。另外,混合协议将即时的升级通知传递给连接到网络的 装置。另外,SVR—TOKEN改变之间的时间周期可能较大。因此,大多数装置可与 SVR—TOKEN值同步,且仅少数装置可能要求拉取机制是最新的,其又节省了单播资源。
依据一升级相比于先前升级的重要性,可存在与每一软件升级相关联的多个软件升 级紧急度层级(URGENCY—LEVEL)。软件升级紧急度层级信息也可添加到通知消息。 举例来说,从层级1到3,层级l可为重要的,层级2可为中等的,且层级3可为可选 的。依据URGENCY—LEVEL,装置可以不同方式行动。举例来说,当应用程序标记为层 级l时,装置可退出应用程序,并迫使用户下载新的软件升级以便保护装置免受危害。
图8说明示范性无线通信系统800。出于简明起见,无线通信系统800描绘了一个 基站和一个终端。然而,应了解,系统可包含一个以上基站和/或一个以上终端,其中额 外的基站和/或终端可大体上类似于或不同于下文所描述的示范性基站和终端。另外,应 了解,基站和/或终端可使用本文所描述的系统(图1、 6、 7和9-12)和/或方法(图2-5), 以促进其间的无线通信。
现参看图8,在下行链路上,在接入点805处,传输(TX)数据处理器810接收、 格式化、编码、交错并调制(或符号映射)业务数据,并提供调制符号("数据符号")。 符号调制器815接收并处理数据符号和导频符号,并提供符号流。符号调制器820多路 复用数据和导频符号,并将其提供给传输器单元(TMTR) 820。每一传输符号可为数据
符号、导频符号或零信号值。可在每一符号周期中连续地发送导频符号。导频符号可经 频分多路复用(FDM)、正交频分多路复用(OFDM)、时分多路复用(TDM)、频分多路 复用(FDM)或码分多路复用(CDM)。
TMTR 820接收符号流并将其转换为一个或一个以上模拟信号,并进一步调节(例 如,放大、滤波和上变频转换)所述模拟信号以产生适合在无线信道上传输的下行链路 信号。接着通过天线825将下行链路信号传输到终端。在终端830处,天线835接收下 行链路信号并将所接收的信号提供到接收器单元(RCVR) 840。接收器单元840调节(例 如,滤波、放大并下变频转换)所接收的信号,并数字化经调节的信号以获得样本。符 号解调器845解调所接收的导频符号,并将其提供给处理器850以供信道估计。符号解 调器845进一步从处理器850接收用于下行链路的频率响应估计值,对所接收的数据符 号执行数据解调以获得数据符号估计值(其为所传输数据符号的估计值),并将数据符号 估计值提供到RX数据处理器855,所述RX数据处理器855解调(即,符号解映射)、 解交错并解码数据符号估计值以恢复所传输的业务数据。符号解调器845和RX数据处 理器855进行的处理分别与接入点805处符号调制器815和TX数据处理器810进行的 处理互补。
在上行链路上,TX数据处理器860处理业务数据并提供数据符号。符号调制器865 接收数据符号并使用导频符号对其进行多路复用,执行调制,并提供符号流。传输器单 元870接着接收并处理符号流以产生上行链路信号,天线835将所述上行链路信号传输 到接入点805。
在接入点805处,来自终端830的上行链路信号由天线825接收并由接收器单元875 处理以获得样本。符号解调器880接着处理样本并提供所接收的导频符号和用于上行链 路的数据符号估计值。RX数据处理器885处理数据符号估计值以恢复由终端830传输的 业务数据。处理器890针对在上行链路上传输的每一活动终端而执行信道估计。多个终 端可在其各自指派组的导频子带上在上行链路上同时传输导频,其中所述导频子带组可 经交错。
处理器890和850分别引导(例如,控制、协调、管理等)接入点805和终端830 处的操作。各自的处理器890和850可与存储程序代码和数据的存储器单元(未图示) 相关联。处理器890和850还可执行计算以分别导出用于上行链路和下行链路的频率和 脉冲响应估计值。
对于多址系统(例如,FDMA、 OFDMA、 CDMA、 TDMA等),多个终端可同时在
上行链路上传输。对于此类系统,可在不同终端之间共享导频子带。可在用于每一终端 的导频子带横跨整个操作带(可能除带边缘之外)的情况下使用信道估计技术。此类导 频子带结构将对获得用于每一终端的频率分集是理想的。可通过各种手段实施本文所描 述的技术。举例来说,可在硬件、软件或其组合中实施这些技术。对于硬件实施方案, 可在一个或一个以上专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理装 置(DSPD)、可编程逻辑装置(PLD)、场可编程门阵列(FPGA)、处理器、控制器、微 控制器、微处理器、经设计以执行本文所描述的功能的其它电子单元或其组合中实施用 于信道估计的处理单元。通过软件,可经由执行本文所描述的功能的模块(例如,程序、 函数等)来实施。软件代码可存储在存储器单元中,且由处理器890和850执行。
图9说明根据各个方面包括经操作以产生多媒体内容流并在数据网络上运输多媒体 内容流的运输系统的通信网络900。举例来说,运输系统适合用于将内容剪辑从服务器 网络运输到无线接入网络以用于广播分布。网络900包括服务器902、多播网络906和 无线接入网络908。网络900还包含装置910,所述装置910包括移动电话912、个人数 字助理(PDA) 914和笔记本计算机916。装置910说明适合用于运输系统的一个或一个 以上方面中的仅一些装置。应注意,尽管在图9中展示三个装置,实际上任何数目的装 置或任何类型的装置都适合用于运输系统中。
服务器902经操作以将供分布的内容提供到网络卯0中的用户。所述内容包括视频、 音频、多媒体内容、剪辑、实时和非实时内容、脚本、程序、数据或任何其它类型的合 适内容。服务器902将内容提供到多播网络906和/或单播网络908以供分布。举例来说, 服务器902经由通信链路918与单播网络908通信,所述通信链路918包括任何合适类 型的有线和/或无线通信链路。
网络900包括经操作以分布供传递给用户的内容的有线和无线网络的任何组合。服 务器902经由链路920与多播网络906通信。链路920包括任何合适类型的有线和/或无 线通信链路。多播网络906包括经设计以广播高质量内容的有线和无线网络的任何组合。 举例来说,多播网络906可为专用的私有网络,其已经优化以经由多个优化的通信信道 将高质量内容传递到选定装置。
在一个或一个以上方面中,运输系统经操作以通过多播网络906和单播网络908将 内容从服务器902传递到装置910。举例来说,内容流可包括非实时内容剪辑,其由服 务器902提供以用于使用多播网络906进行分布。在一个方面中,服务器902经操作以 与多播网络906协商,以确定与内容剪辑相关联的一个或一个以上参数。 一旦多播网络906接收到内容剪辑,其就经由网络900广播/多播内容剪辑以用于由装置910中的一者 或一者以上接收。装置910中的任一者可经授权以接收内容剪辑并对其进行高速缓存以 供稍后由装置用户观看。
举例来说,装置910包括客户端节目932,其经操作以提供节目指南,所述节目指 南显示经调度以供在网络900上广播的内容的列表。装置用户接着可选择接收用于实时 呈现或将存储在高速缓冲存储器934中以供随后观看的任何特定内容。举例来说,内容 剪辑可经调度以供在晚间广播,且装置912经操作以接收广播,并将内容剪辑高速缓存 在高速缓冲存储器934中,使得装置用户可在第二天观看剪辑。通常,内容作为预订服 务的一部分而广播,且接收装置可需要提供密钥或以另外的方式进行自身鉴定以接收广 播。
图10说明适合用于内容传递系统中的内容提供商服务器1000的各个方面。举例来 说,服务器IOOO可用作图9中的服务器902。服务器1000包括处理逻辑1002、资源和 接口 1004,和收发器逻辑IOIO,所有都耦合到内部数据总线1012。服务器1000还包括 激活逻辑1014、 PG 1006和PG记录逻辑1008,其也耦合到数据总线1012。在一个或一 个以上方面中,处理逻辑1002包括CPU、处理器、门阵列、硬件逻辑、存储器元件、虚 拟机、软件,和/或硬件与软件的任何组合。因此,处理逻辑1002 —般包括执行机器可 读指令和经由内部数据总线1012控制服务器1000的一个或一个以上其它功能元件的逻 辑。
资源和接口 1004包括允许服务器1000与内部和外部系统通信的硬件和/或软件。举 例来说,内部系统可包含大容量存储系统、存储器、显示器驱动器、调制解调器或其它 内部装置资源。外部系统可包含用户接口装置、打印机、磁盘驱动器或其它本地装置或 系统。收发器逻辑1010包括硬件逻辑和/或软件,其经操作以允许服务器IOOO使用通信 信道1016与远程装置或系统一起传输和接收数据和/或其它信息。举例来说,在一个方 面中,通信信道1016包括任何合适类型的通信链路以允许服务器IOOO与数据网络通信。
激活逻辑1014包括CPU、处理器、门阵列、硬件逻辑、存储器元件、虚拟机、软件 和/或硬件与软件的任何组合。激活逻辑1014经操作以激活服务器和/或装置,以允许服 务器和/或装置选择并接收PG 1006中所描述的内容和/或服务。在一个方面中,激活逻辑 1014在激活过程期间将客户端节目1020传输到服务器和/或装置。客户端节目1020在服 务器和/或装置上运行以接收PG 1006,并显示关于装置用户可用的内容或服务的信息。 因此,激活逻辑1014经操作以鉴定服务器和/或装置,下载客户端1020并下载PG 1006,
以用于由客户端1020在装置上呈现。
PG 1006包括具有任何合适格式的信息,其描述可用于供装置接收的内容和/或服务。 举例来说,PG 1006可存储在服务器1000的本地存储器中,且可包括例如内容或服务识 别符、调度信息、定价和/或任何其它类型相关信息等信息。在一个方面中,PG 1006包 括一个或一个以上可识别的区段,在可用的内容或服务发生改变时,由处理逻辑1002对 所述区段进行更新。
PG记录1008包括经操作以产生通知消息的硬件和/或软件,所述通知消息识别和/ 或描述对PG 1006的改变。举例来说,当处理逻辑1002更新PG 1006时,PG记录逻辑 1008收到关于改变的通知。PG记录逻辑1008接着产生传输到可能已与服务器1000 — 起激活的服务器的一个或一个以上通知消息,使得这些服务器迅速收到关于对PG 1006 的改变的通知。
在各个方面中,作为内容传递通知消息的一部分,提供广播指示符,其指示何时将 广播消息中所识别的PG区段。举例来说,在一个方面中,广播指示符包括指示将广播 所述区段的一个位和指示何时将发生广播的时间指示符。因此,希望更新其PG记录的 本地副本的服务器和/或装置可在指定时间收听广播以接收PG记录的经更新区段。在一 个方面中,内容传递通知系统包括存储在计算机可读媒体上的程序指令,其在由处理器 (例如,处理逻辑1002)执行时提供本文所描述的服务器IOOO的功能。举例来说,可从 计算机可读媒体将程序指令载入到服务器1000中,所述计算机可读媒体例如为软盘、 CDROM、存储卡、快闪存储器装置、RAM、 ROM或通过资源1004介接到服务器1000 的任何其它类型的存储器装置或计算机可读媒体。在另一方面中,可从通过收发器逻辑 1010介接到服务器1000的外部装置或网络资源将指令下载到服务器1000中。程序指令 在由处理逻辑1002执行时提供如本文所描述的指导状态通知系统的一个或一个以上方 面。
图11说明根据一个或一个以上方面适合用于内容传递系统中的服务器或装置1100。 举例来说,服务器1100可为图9中所展示的服务器902或装置910。服务器1100包括处 理逻辑1102、资源和接口 1104和收发器逻辑1106,所有都耦合到数据总线1108。服务 器1100还包括客户端1110、程序逻辑1114和PG逻辑1112,其也耦合到数据总线1108。 在一个或一个以上方面中,处理逻辑1102包括CPU、处理器、门阵列、硬件逻辑、存储 器元件、虚拟机、软件,和/或硬件与软件的任何组合。因此,,处理逻辑1102—般包括 经配置以执行机器可读指令和经由内部数据总线1108控制服务器1100的一个或一个以
上其它功能元件的逻辑。
资源和接口 1104包括允许服务器1100与内部和外部系统通信的硬件和/或软件。举 例来说,内部系统可包含大容量存储系统、存储器、显示器驱动器、调制解调器或其它 内部装置资源。外部系统可包含用户接口装置、打印机、磁盘驱动器或其它本地装置或 系统。收发器逻辑1106包括硬件和/或软件,其经操作以允许服务器IIOO通过通信信道 1114与外部装置或系统一起传输和接收数据和/或其它信息。举例来说,通信信道1114 可包括网络通信链路、无线通信链路或任何其它类型的通信链路。
在操作期间,服务器和/或装置1100经激活以使得其可经由数据网络接收可用的内 容或服务。举例来说,在一个方面中,服务器和/或装置1100在激活过程期间向内容提 供商服务器进行自身识别。作为激活过程的一部分,服务器和/或装置IIOO通过PG逻辑 1112接收并存储PG记录。PG 1112含有识别可由服务器IIOO接收的内容或服务的信息。 客户端1110经操作以使用资源和接口 1104将PG逻辑1112中的信息呈现在服务器和/或 装置1100上。举例来说,客户端1U0将PG逻辑1112中的信息呈现在作为装置的一部 分的显示器屏幕上。客户端1110还通过资源和接口接收用户输入,使得装置用户可选择 内容或服务。
在一些方面中,服务器通过收发器逻辑1106接收通知消息。举例来说,消息可被广 播或单播到服务器IIOO且由收发器逻辑1106接收。PG通知消息在PG逻辑1112处识别 对PG记录的更新。在一个方面中,客户端1110处理PG通知消息以确定PG逻辑1112 处的本地副本是否需要更新。举例来说,在一个方面中,通知消息包含区段识别符、开 始时间、结束时间和版本号。服务器1100操作以将PG通知信息中的信息与现有PG逻 辑1112处的本地存储的信息进行比较。如果服务器1100从PG通知消息中确定PG逻辑 1112处的本地副本的一个或一个以上区段需要更新,那么服务器1100操作而以若干方式 中的一种方式来接收PG的经更新的区段。举例来说,可在PG通知消息中所指示的时间 广播PG的经更新区段,使得收发器逻辑1106可接收广播并将经更新区段传递到服务器 1100,服务器1100又更新PG逻辑1112处的本地副本。
在其它方面中,服务器1100基于所接收的PG更新通知消息来确定PG的哪些区段 需要更新,且将请求传输到CP服务器以获得PG的所需经更新区段。举例来说,可使用 任何合适的格式来格式化所述请求,且所述请求包括例如发出请求服务器识别符、区段 识别符、版本号和/或任何其它合适信息等信息。在一个方面中,服务器1100在PG通知 系统的一个或一个以上方面中执行以下功能中的一者或一者以上。应注意,可以在各方面的范围内改变、重新布置、修改、添加、删除或以另外的方式调整以下功能。所述服 务器可经激活以用于与内容提供商系统一起操作来接收内容或服务。作为激活过程的一 部分,将客户端和PG传输到服务器。 一个或一个以上PG通知消息可由服务器接收并用 于确定本地存储的PG的一个或一个以上区段是否需要更新。在一个方面中,如果服务 器确定本地存储的PG的一个或一个以上区段需要更新,那么服务器从分布系统收听广 播,以获得其需要用来更新其本地副本的PG的经更新区段。在另一方面中,服务器将 一个或一个以上请求消息传输到CP以获得其需要的PG的经更新区段。响应于所述请求, CP将PG的经更新区段传输到服务器。服务器使用接收到的PG的经更新区段来更新其 PG的本地副本。
根据另外其它方面,内容传递系统包括存储在计算机可读媒体上的程序指令,其在 由例如处理逻辑1102等处理器执行时提供如本文所描述的内容传递通知系统的功能。举 例来说,可从计算机可读媒体将指令载入到服务器IIOO中,所述计算机可读媒体例如为 软盘、CDROM、存储卡、快闪存储器装置、RAM、 ROM或通过资源和接口 1104介接 到服务器1100的任何其它类型的存储器装置或计算机可读媒体。在另一方面中,可从通 过收发器逻辑1106介接到服务器1100的网络资源将指令下载到服务器1100中。指令在 由处理逻辑1102执行时提供如本文所描述的内容传递系统的一个或一个以上方面。应注 意,服务器1100仅表示一种实施方案,且在各方面的范围内可能有其它实施方案。
图12是根据各个方面促进在无线通信环境中执行检验协议和接入协议的设备1200 的说明。设备1200可包括用于接收例如序列号和/或与软件类别相关联的软件ID等软件 版本信息的装置1202。所述设备进一步包括用于执行检验协议的装置1204,其可执行推 送检验协议或拉取检验协议或两者,这取决于某些条件(例如,上文相对于图2和图3 所描述的那些条件)。设备1200还进一步包括用于执行接入协议以促进确定是否需要升 级通知的装置。用于执行接入协议的装置1206可执行以预定时间间隔执行的周期性协 议、每次启动软件时执行的启动起始的协议、通过用户命令执行的用户起始的协议、通 过客户端与服务器之间的事务起始的基于事务的协议等。另外,用于执行接入协议的装 置1206可执行令牌接入协议,例如相对于图4和图5详细描述的。以此方式,设备1200 可促进确定用户装置上的软件是否为最新的,或装置是否需要软件升级通知。
对于软件实施方案,可使用执行本文所描述的功能的模块(例如,程序、函数等) 来实施本文所描述的技术。软件代码可存储在存储器单元中,且由处理器执行。可在处 理器内或处理器外部实施存储器单元,在后一情况下,存储器单元可经由此项技术中已
知的各种手段通信地耦合到处理器。
上文已描述的内容包含一个或一个以上实施例的实例。当然,不可能出于描述以上 提及的实施例的目的而描述组件或方法的可构想出的每种组合,但所属领域的一般技术 人员可认识到,各种实施例的许多另外的组合和排列是可能的。因此,所描述的实施例 希望包含落在所附权利要求书的精神和范围内的所有此类改动、修改和变化。此外,就 术语"包含"用于具体实施方式
或权利要求书中来说,所述术语希望以与术语"包括" 类似的方式为包括界限的(inclusive),因为在权利要求中"包括"在使用时被解释成过 渡词汇。
权利要求
1.一种在无线通信环境中提供软件升级通知的方法,其包括从服务器接收软件版本信息;执行检验协议以确定软件升级是否可用于用户装置;以及执行接入协议以接收软件升级通知。
2. 根据权利要求l所述的方法,其中所述检验协议是经由服务器与至少一个用户装置 之间的多播连接而执行的推送检验协议。
3. 根据权利要求2所述的方法,其进一步包括经由多播信道传输软件升级通知。
4. 根据权利要求2所述的方法,其进一步包括经由多播数据信道接收所述软件版本信 息。
5. 根据权利要求4所述的方法,其进一步包括评估与所述通知中的所述版本信息一起 接收的软件ID是否对应于所述用户装置,以确定所述接收的软件版本信息是否与 所述用户装置相关。
6. 根据权利要求l所述的方法,其进一步包括在所述用户装置与所述服务器之间产生 点对点连接,以及执行拉取检验协议。
7. 根据权利要求6所述的方法,其进一步包括从所述服务器请求所述软件升级信息。
8. 根据权利要求7所述的方法,其进一步包括接收包括所述软件版本信息的服务器响 应。
9. 根据权利要求8所述的方法,其进一步包括如果所述服务器响应中的版本号大于 与存储在所述用户装置上的软件相关联的版本号,那么接收软件升级通知。
10. 根据权利要求l所述的方法,其中所述接入协议是周期性接入协议、用户起始的接 入协议、基于事务的接入协议和启动起始的协议中的至少一者。
11. 根据权利要求l所述的方法,其中所述接入协议进一步包括基于令牌的方法,其中 将客户端令牌值与在多播信道中周期性地广告的服务器令牌值进行比较。
12. 根据权利要求ll所述的方法,其进一步包括执行拉取检验协议,产生客户端令牌, 以及如果所述客户端令牌值无效,那么将所述客户端令牌值设定为等于所述服务器 令牌值。
13. 根据权利要求11所述的方法,其进一步包括确定所述客户端令牌值是否大于或等于 所述服务器令牌值。
14. 根据权利要求13所述的方法,其进一步包括如果所述客户端令牌值等于或大于所 述服务器令牌值,那么确认所述客户端装置具有最新的软件。
15. 根据权利要求13所述的方法,其进一步包括如果所述客户端令牌值不大于或等于 所述服务器令牌值(模数n),那么确定所述客户端令牌值是否在所述服务器令牌值 减去m(模数n)与所述服务器令牌值-1 (模数n)之间,其中n为最大令牌值,其 中服务器传输与m (正整数)最近的服务器令牌值相关联的软件升级通知。
16. 根据权利要求15所述的方法,其进一步包括如果所述客户端令牌值在所述服务 器令牌值减去m (模数n)与所述服务器令牌值-1 (模数n)之间,那么执行推送检 验协议,并将所述客户端令牌值设定为等于所述服务器令牌值。
17.根据权利要求15所述的方法,其进一步包括如果所述客户端令牌值不在所述服 务器令牌值减去m (模数ii)与所述服务器令牌值-1 (模数n)之间,那么执行拉取 检验协议,并将所述客户端令牌值设定为等于所述服务器令牌值。
18. 根据权利要求l所述的方法,其进一步包括通过执行推送检验协议持续预定时间 周期,随后执行拉取检验协议来提供所述软件升级通知。
19. 一种促进在无线通信环境中将软件升级通知提供到经由多播和单播连接进行通信 的用户装置的设备,其包括接收器,其接收软件版本信息;以及处理器,其执行检验协议和接入协议以获得软件升级通知。
20. 根据权利要求19所述的设备,其中所述处理器使用基于令牌的协议,其中将客户 端令牌与在多播信道上周期性地广告的服务器令牌值进行比较,并确定所述客户端 令牌在所述用户装置中是否有效。
21. 根据权利要求20所述的设备,其中所述处理器执行拉取检验协议,产生客户端令 牌,且如果所述客户端令牌值无效,那么将所述客户端令牌值设定为等于与所述软 件版本信息一起接收的服务器令牌值。
22. 根据权利要求19所述的设备,其中所述处理器确定客户端令牌值是否大于或等于 服务器令牌值。
23. 根据权利要求22所述的设备,其中如果所述客户端令牌值不大于或等于所述服务 器令牌值(模数n),那么所述处理器确定所述客户端令牌值是否在所述服务器令牌 值减去m (模数n)与所述服务器令牌值-1 (模数ii)之间,其中n为最大令牌值, 其中服务器传输与m (正整数)最近的服务器令牌值相关联的软件升级通知。
24. 根据权利要求23所述的设备,其中如果所述客户端令牌值在所述服务器令牌值减 去m (模数n)与所述服务器令牌值-1 (模数n)之间,那么所述处理器执行推送检 验协议,并将所述客户端令牌值设定为等于所述服务器令牌值。
25. 根据权利要求23所述的设备,其中如果所述客户端令牌值不在所述服务器令牌值 减去m (模数n)与所述服务器令牌值-I (模数n)之间,那么所述处理器执行拉取 检验协议,并将所述客户端令牌值设定为等于所述服务器令牌值。
26. 根据权利要求19所述的设备,其进一步包括通过执行推送检验协议持续预定时 间周期,随后执行拉取检验协议来提供所述软件升级通知。
27. —种无线通信设备,其包括用于经由多播和单播连接从服务器接收软件版本信息的装置; 用于执行检验协议以确定软件升级是否可用于用户装置的装置;以及 用于执行接入协议以接收软件升级通知的装置。
28. 根据权利要求27所述的设备,其中所述接入协议是周期性接入协议、用户起始的 接入协议、基于事务的接入协议和启动起始的协议中的至少一者。
29. 根据权利要求27所述的设备,其进一步包括用于使用基于令牌的协议并确定客户 端令牌在所述用户装置中是否有效的装置。
30. 根据权利要求29所述的设备,其进一步包括用于执行单播检验协议的装置、用于 产生客户端令牌的装置,和用于如果所述客户端值不存在那么将所述客户端令牌值 设定为等于服务器令牌值的装置。
31. 根据权利要求29所述的设备,其进一步包括用于如果所述客户端令牌有效那么确 定客户端令牌值是否大于或等于服务器令牌值的装置。
32. 根据权利要求31所述的设备,其进一步包括用于如果所述客户端令牌值不大于或 等于所述服务器令牌值(模数n)那么确定所述客户端令牌值是否在所述服务器令 牌值减去m (模数n)与所述服务器令牌值-1 (模数n)之间的装置,其中n为最大 令牌值,其中服务器传输与m (正整数)最近的服务器令牌值相关联的软件升级通 知。
33. 根据权利要求32所述的设备,其进一步包括如果所述客户端令牌值在所述服务器 令牌值减去m (模数n)与所述服务器令牌值-1 (模数n)之间那么用于执行多播检 验协议的装置,以及用于将所述客户端令牌值设定为等于所述服务器令牌值的装 置。
34. 根据权利要求32所述的设备,其进一步包括如果所述客户端令牌值不在所述服务 器令牌值减去m (模数n)与所述服务器令牌值-1 (模数n)之间那么用于执行单播 检验协议的装置,以及用于将所述客户端令牌值设定为等于所述服务器令牌值的装 置。
35. 根据权利要求27所述的设备,其进一步包括用于通过使用用于执行多播检验协议 的装置持续预定时间周期随后使用用于执行单播检验协议的装置来提供所述软件 升级通知的装置。
36. —种具有计算机程序的计算机可读媒体,所述计算机程序包括计算机可执行指令以 用于从服务器接收包括软件版本信息的额外开销消息; 执行检验协议以确定软件升级是否可用于用户装置;以及 执行接入协议以接收软件升级通知。
37. 根据权利要求36所述的计算机可读媒体,其中所述检验协议是经由服务器与至少 一个用户装置之间的多播连接而执行的推送检验协议。
38. 根据权利要求37所述的计算机可读媒体,其进一步包括用于以下操作的指令经 由多播数据信道接收所述软件版本信息,以及确定与所述版本信息一起接收的软件 ID是否与所述用户装置相关。
39. 根据权利要求36所述的计算机可读媒体,其进一步包括用于以下操作的指令在 所述用户装置与所述服务器之间产生点对点连接,以及执行拉取检验协议,从所述 服务器请求所述软件升级信息,接收包括所述软件版本信息的服务器响应,且如果 所述服务器响应中的版本号大于与存储在所述用户装置上的软件相关联的版本号, 那么接收软件升级通知。
40. 根据权利要求36所述的计算机可读媒体,其中所述接入协议是周期性接入协议、 用户起始的接入协议、基于事务的接入协议和启动起始的协议中的至少一者。
41. 根据权利要求36所述的计算机可读媒体,其进一步包括用于使用基于令牌的接入 协议并确定客户端令牌在所述用户装置中是否有效的指令。
42. 根据权利要求41所述的计算机可读媒体,其进一步包括用于执行拉取检验协议, 产生客户端令牌,且如果所述客户端值无效那么将所述客户端令牌值设定为等于所 述服务器令牌值的指令。
43. 根据权利要求41所述的计算机可读媒体,其进一步包括用于如果所述客户端令牌有效那么确定客户端令牌值是否大于或等于服务器令牌值的指令。
44. 根据权利要求43所述的计算机可读媒体,其进一步包括用于如果所述客户端令牌 值不大于或等于所述服务器令牌值(模数n)那么确定所述客户端令牌值是否在所 述服务器令牌值减去m (模数n)与所述服务器令牌值-1 (模数n)之间的指令,其 中n为最大令牌值,其中服务器传输与m (正整数)最近的服务器令牌值相关联的 软件升级通知。
45. 根据权利要求44所述的计算机可读媒体,其进一步包括用于如果所述客户端令牌 值在所述服务器令牌值减去m (模数n)与所述服务器令牌值-1 (模数n)之间那么 执行推送检验协议并将所述客户端令牌值设定为等于所述服务器令牌值的指令。
46. 根据权利要求44所述的计算机可读媒体,其进一步包括用于如果所述客户端令牌 值不在所述服务器令牌值减去m (模数n)与所述服务器令牌值-1 (模数n)之间那 么执行拉取检验协议并将所述客户端令牌值设定为等于所述服务器令牌值的指令。
47. 根据权利要求36所述的计算机可读媒体,其进一步包括用于通过执行推送检验协 议持续预定时间周期随后执行拉取检验协议来提供所述软件升级通知的指令。
48. —种执行用于增加无线通信环境中的处理量的指令的处理器,所述指令包括从服务器接收具有软件版本信息的额外开销消息; 执行检验协议以确定软件升级是否可用于用户装置;以及 执行接入协议以接收软件升级通知。
49. 根据权利要求48所述的处理器,其中所述检验协议是经由服务器与至少一个用户 装置之间的多播信道而执行的多播检验协议。
50. 根据权利要求48所述的处理器,所述指令进一步经由点对点连接执行单播检验协 议,从所述服务器处请求软件版本信息,接收包括所述软件版本信息的服务器响应, 且如果所述服务器响应中的版本号大于与存储在所述用户装置上的软件相关联的 版本号,那么接收软件升级通知。
51. 根据权利要求48所述的处理器,所述指令进一步包括实施基于令牌的接入协议并 确定客户端令牌在所述用户装置中是否有效。
52. 根据权利要求51所述的处理器,所述指令进一步包括执行单播检验协议,产生客 户端令牌,且如果客户端值无效,那么将所述客户端令牌值设定为等于服务器令牌 值。
53. 根据权利要求51所述的处理器,所述指令进一步包括如果所述客户端令牌有效, 那么确定客户端令牌值是否大于或等于服务器令牌值。
54. 根据权利要求53所述的处理器,所述指令进一步包括如果所述客户端令牌值不大 于或等于所述服务器令牌值(模数n),那么确定所述客户端令牌值是否在所述服务 器令牌值减去m (模数n)与所述服务器令牌值-1 (模数n)之间,其中n为最大令 牌值,其中服务器传输与m (正整数)最近的服务器令牌值相关联的软件升级通知。
55. 根据权利要求54所述的处理器,所述指令进一步包括如果所述客户端令牌值在所 述服务器令牌值减去m (模数n)与所述服务器令牌值-1 (模数n)之间,那么执行 多播检验协议并将所述客户端令牌值设定为等于所述服务器令牌值。
56. 根据权利要求54所述的处理器,所述指令进一步包括如果所述客户端令牌值不在 所述服务器令牌值减去m (模数n)与所述服务器令牌值-1 (模数n)之间,那么执 行单播检验协议并将所述客户端令牌值设定为等于所述服务器令牌值。
57. 根据权利要求48所述的处理器,所述指令进一步包括通过执行多播检验协议持续 预定时间周期,且在所述预定时间周期期满后准许所述用户装置起始单播检验协议 来提供所述软件升级通知。
全文摘要
本发明描述促进在无线通信环境中将软件升级通知提供到利用单播和多播通信技术的用户装置的系统和方法。通过准许在试图下载或接收给定软件更新的通知之前作出关于所述给定软件更新是否与所述用户装置相关的确定,使带宽和功率消耗最小化。另外,对版本号和软件身份的评估促进确定是使用单播软件检验协议还是使用多播软件检验协议。也可经由多播信道传输软件升级信息持续预定时间周期,其后,用户装置可起始单播检验协议以接收软件升级信息。
文档编号G06F9/445GK101361354SQ200680051194
公开日2009年2月4日 申请日期2006年11月22日 优先权日2005年11月23日
发明者李江元, 陈安梅 申请人:高通股份有限公司