用于给多个移动设备提供计算服务的环境服务代理和方法

文档序号:7660996阅读:180来源:国知局
专利名称:用于给多个移动设备提供计算服务的环境服务代理和方法
技术领域
所公开的本发明一般涉及移动计算设备的领域,并且尤其涉及移
动设备的普遍存在(ubiquitous)协作体系结构的领域。
背景技术
手持通信设备,尤其当具有可编程计算引擎和连通性时,允许用 户在移动中工作和欣赏娱乐活动。这些移动设备是便携的,私人的, 并且易于购买。随着计算能力和电信范围的增加,移动设备的功能也 增加。因为允许用户无需地面线路连接就接打电话,仅仅二十多年前 被认为是技术的最前端的蜂窝电话现在具有WEB浏览、电子邮件、日 程表、照相和拍摄视频的能力(当然,除了接打电话之外)。2005年智 利具有1千6百万人口,有9百万蜂窝电话在使用。考虑到总人口数字 包括儿童、老年人和穷人,我们可以推断在智利有钱购买蜂窝电话的 每个成人几乎人手一部蜂窝电话。
移动设备的流行和使用是显而易见的。然而,当前手持设备仍然 面对不同的限制。它们必须足够小而且轻以便用户携带,然而尺寸约 束对其显示屏幕的尺寸和按钮或拨号键的数目有限制。基于语音的接 口始终不能解决这些问题,因为手持设备使用通常发生在噪声环境干 扰语音命令的公共场所中。进一步地,目前强大的手持设备将受到其 相对短的电池寿命的限制。由于有这些限制,我们能够有理由怀疑手 持设备使用在不久的将来是否仍会继续激增。看起来,连通性、较好 1/0性能以及CPU能力对这些膝上型电脑的大尺寸有所补偿。另一方 面,如果可穿戴计算机或甚至体内植入计算机变得容易得到并且安 全,则这些替代设备可以替代手持设备;正如八十年代随处可见的寻
呼机被更多功能的蜂窝电话所替代那样。
仿生学(biomimicry, bios表示生命,mimesis表示模仿)是新形成 的科学思想领域,其研究自然过程和设计,然后模拟那些设计和过程 以解决人类问题。研究叶子来发明更好的太阳能电池是一个例子。仿 生学关注自然界中非人类群落如何演变和适应其环境。尽管无限地变 化,然而这些群落全部具有共同一点 一它们在适应性方面受限于其环 境的限制和约束。成功的群落通过紧紧遵循自然法则来最大化长期可 存续性。为预测手持设备的未来,我们从生物学借用一些思路和模型, 并且在多种设备类型竟争以得到(市场)生存的丛林模型上模仿我们当 前的计算环境。像在自然界中那样,最适应的设备迅速增加其存在并 且成功。在这个当代的丛林中,成功是用人类感觉设备是多么有用来 衡量的。
在自然界中,有机体采取许多不同的生存策略,但是我们将仅探 索生物有机体利用的一个生存机制共生关系。如Anton de Bary在 1879最初定义的,共生描述不相似生物之间的互利关系。通常,我们 可以区分共生关系的三个类型l)互利共生,其中全部有机体受益于 其相互的关系;2)互惠共生,其中一个有机体利用最少成本受益或有 益于其它有机体;以及3)寄生,其中一个有机体衍生的利益以所有其 它方的付出为代价。常见使用将术语互惠共生看作共生的同义词,虽 然共生是指共生关系的整个连续集。
手持设备的开发人员已经探索了共生来克服一些限制。现在参照 图l,其中示出了技术用户的计算环境的典型体系结构的简化描述。 该环境中,用户具有三个常用的移动设备蜂窝电话170,膝上型电 脑160以及个人数字助理(PDA)150。 PDA 150与膝上型计算机160之间 的共生关系提供了一个范例。膝上型电脑的全尺寸键盘和大显示器简 化了所链接的PDA 150上的数据和应用程序的管理。链接关系用虚线 表示,两个设备之间的同步过程简单并且安全地备份PDA 150的数据。 此外,存在诸如容易使用和应用实用性的其它优点.与个人计算机的 共生为PDA提供了超越更简单的电子地址薄的明显竟争优势,从而迅
速迫使这些竟争者消失。
如图1示出的,膝上型电脑160和蜂窝电话170二者都进行因特网 访问,并且可以通过因特网120浏苋万维网(此处示出为服务器中心) 130。 PDA150被链接到膝上型电脑160,使得其可以与膝上型电脑160 同步日历、联系人、电子邮件等等。该环境100的用户通常会在工作 时利用膝上型电脑160,然后将其带回家来继续工作或更新电子邮件。 用户通常还会带着膝上型电脑160出差旅行,以便旅行时与他的同事 保持联系并且跟上其工作安排。蜂窝电话170是移动设备,其趋向于 成为所有当中最普遍的。并且现在,在相同设备中实现蜂窝电话和 PDA功能的智能电话正变得越来越流行。
尽管如前所述,PDA和膝上型电脑正如生物学中一样享有共生关 系,该关系被其环境所产生的约束限制。PDA 150受限于其相对短的 电池寿命,较小的显示区,并且小于人类工程改造学的键盘。膝上型 电脑160受限于其短的电池寿命,其对交流电的依赖,并且虽然膝上 型电脑160是便携的,但是其不如手持设备一样小和轻型。
WiFi(无线保真)咖啡馆解决了为移动设备提供服务的 一 部分问 题。WiFi咖啡馆是被设在诸如咖啡馆的,,友好,,营业处所的因特网热 点。这些热点给顾客和当地居民提供无线基础设施,通常是免费的。 支持无线的膝上型电脑在此人在热点的范围内期间可以访问咖啡馆 的WiFi网络。这些WiFi咖啡馆的流行已促使无线企业实现因特网"热 区"。因特网热区是覆盖邻近的、通常在繁忙的大城市的零售商区中
的较大无线基础设施。在2004年的五月,AnchorFree--个无线服务
提供商通过将California的市区Palo Alto变换成第一批美国Wi-Fi热区 之一而将热区扩大到包括整个城市。Palo Alto区的当地居民和访问者 能够在Palo Alto市区的任何地方访问因特网(室内和室外).无可争 辩地,消费者在其对互连生活方式的探求中正在寻求和接受其无线设 备的更多,,活动(on-the-go),,能力。热点和热区已满足了移动设备市 场中的需要,热点以及甚至更广泛的热区仍然限于仅提供无线连接. 对于可以给移动设备的用户提供不仅仅是因特网访问的大量服务的
环境仍存在需要。
针对上面描述的这些和其它原因,存在对更成熟的移动设备体系 结构的需要,以克服现有技术的缺点。

发明内容
简而言之,根据本发明的优选实施例, 一种用于在至少一个移动 计算设备与至少 一个固定计算设备之间建立共生关系的方法包括步
骤利用至少一个联网协议,与分配给至少一个移动计算设备和至少 一个固定计算设备所位于的区域的计算实体交互;从所述计算实体接
收软件模块,为了在至少一个移动计算设备与至少一个固定计算设备 之间建立共生关系,其中针对接收所述软件模块的至少一个移动计算 设备定制每一个软件模块;运行所述软件模块来与至少一个固定计算 设备和计算实体交互以建立共生关系,该共生关系使得能够执行由至 少一个移动计算设备选择的任务。所述步骤可以在接收到从一个组中 选择的触发器时自动执行,所述组包括至少一个移动计算设备进入 指定位置;移动设备用户的动作;移动设备用户的预先选择的偏好; 以及时间事件。
根据本发明的一个实施例,环境服务代理(broker)给多个移动 设备提供计算服务。所述环境服务代理包括用于在其中存储程序代 码的存储器;连接到所述存储器的处理器,用于才艮据存储的程序代码 执行指令;其中当由所述处理器执行时,所述程序代码使所述处理器 执行下述操作注册每个所述计算服务;处理来自移动设备的查询; 建立以及拆除所述移动设备与所述计算J3艮务之间的会话。处理器还管 理多个移动设备与计算服务之间的工作负栽,以及控制访问所述计算 服务,使得未授权用户被限制访问所述计算服务。环境服务代理还包
子系统: -
根据本发明的一个实施例,设备驻留代理(agent)包括用于给 用户提供有关服务区域的信息的接口 。服务区域包括存储在相同地球
物理位置的多个基于计算机的服务。提供给用户的信息可包括有关 所述服务区域相对于移动设备的位置的信息;有关在位于所述移动设 备的范围内的服务区域中可用的基于计算机的服务的信息;所提供的 基于计算机的服务的持续时间;以及所提供的基于计算机的服务的成 本。
一种用于给多个移动设备提供计算服务的方法包括步骤或操作 接收有关移动设备在提供计算服务的实体的范围内的指示;接收来自 移动设备的查询;建立使移动设备能够利用由实体提供的计算服务的 会话,其中移动设备和计算服务是所述会话的参与方,以及其中所述 会话包括指示会话的参与方之间的关系的关联;以及管理会话。


为描述上述及其他示例目的、方面和优点,我们参考附图利用本
发明的示例性实施例的下列详细说明,其中
图l是根据已知技术的基本移动设备系统体系结构的简化图解。 图2是高层结构图,其根据本发明的一个实施例,示出了普遍协
作系统体系结构。
图3是根据本发明的 一 个实施例的环境服务代理的高层模块图。 图4是根据本发明的 一个实施例示出环境服务代理的功能的高层
模块图。
图5是根据本发明的实施例,从移动设备的角度图解协作过程的 流程图。
图6是根据本发明的实施例,从环境服务代理的角度图解协作过 程的流程图。
图7是根据本发明的实施例,与提供的服务的列表一起示出的 PDA的图解。
图8是被配置成根据本发明的实施例操作的信息处理系统的高层 模块图。
图9是根据本发明的一个实施例,具有支持富客户端平台(Rich
Client Platform )的嵌入式代理的移动设备的简化图解。
具体实施例方式
我们描述了利于一个或多个移动设备与一个或多个环境服务(即 由环境设备提供的服务)之间的共生关系的创建和管理的系统。这些环 境服务可包括高分辨率显示服务,计算负栽分担(offload)服务, 交通调度服务,产品评论服务及其它。通过在移动计算机与环境计算 设备之间建立共生关系,用户获得移动计算设备的优点,例如可携带 性、唯一所有权和隐私,以及非移动环境设备的能力的更丰富的集合 的优点,例如较大的显示器尺寸,访问充足的资源(例如计算能力和 能量),以及更快的网络通信。
根据需要以及当需要时(按需)在各种设置中以无缝方式与具有 不同需要的大量不同用户建立这种共生关系是一个困难挑战,其由普 及计算(pervasive computing), 亦称普遍存在计算(ubiquitous computing)或"ubicomp,,这一领域中正在进行的工作来解决。普及计 算是下一代计算环境,其通过将计算嵌入到现有人类系统中,使信息 和通信技术对于每个人不论何时总是随处可用。例如,IBM正在实现 被称作"蓝板"的分布显示表面,其通过结合无线技术,允许用户在任 何地方以及任意时刻访问个人内容。
参考图2,根据本发明的实施例,其中示出了包括环境服务代理 的普遍存在计算环境200,图2的系统200包括城域网(MAN)225,以及 包括三个远程环境服务代理220的托管中心240。示出了两个服务区域 260和280,每个具有其自身的环境服务代理。服务区是若干环境服务 可供移动设备使用的物理公共场所。此类场所的例子可以是会议室、 火车/巴士或其它交通车辆、大型购物中心、/^交车站、机场的一个区 域等等。通常,服务区位于至少在白天的大部分时间里经历高密度移 动用户的公共场所。MAN 225以及托管中心240被连接到因特网230 上。
^"裙應务W理。图2的环境的中央是环境服务代理220。环境服务
代理(ESB ) 220是环境服务的特殊种类,其知道在特定区域中可用的
其它环境服务,并且管理这些服务的使用,从而使访问该区域(处于区
域的范围内)的移动设备可使用它们。ESB 220被配置成提供服务,其
中考虑到区域的位置,以及区域内的设备配置,针对其服务区域来定
制所述服务。这种定制的服务可包括作为区域中的设备能力的特征的 媒体代码转换服务。
通过使用位置感知(location-aware)应用程序,ESB 220可以知 道其它环境服务。ESB 220也可以执行一些请求的环境服务。ESB220 实质上是给转变服务区的移动设备提供若干服务的机器。其利于在一 个或多个移动设备与一个或多个环境服务之间的共生关系的建立和 管理,并且还帮助管理部署在该区域中的其它服务。管理所述服务包 括认证转变区域的移动设备,维护该区域中可用的服务的注册库(其 中一些服务由移动设备提供),控制以及计量对这些服务的访问。每 个服务区由ESB管理,并且ESB可驻留在其自身区域中,例如区域260 和280,或者驻留在远程托管中心,例如托管中心240。 ESB也可以负 责多个服务区。通过这种方式,ESB的范围很容易扩展,而不是针对 每个附加服务区增加附加ESB。
此外,如果是为满足服务区的要求所需,ESB可以将其服务分配 给另一个处理器。注意到,虽然在这种情况下的ESB不执行其自身代 理服务的全部,但其仍然管理服务区。
應#足。系统200示出了两个服务区,260和280。服务区是一个 物理空间,其中若干环境服务可供移动设备使用,此类空间的例子可 以是会议室、火车/巴士火车站、机场的一个区域、火车/巴士或其它 运输车辆等等。每个区域可提供若干环境服务,其例子包括高分辨率 显示服务、高速无线网络连接服务,以及计算负栽分担服务。服务区 260和280包括具有网络接口 、高速无线连接以及随处交互显示(EID ) 的计算能力.ElD是一个配备了运动检测web摄像机的可操纵的投影 仪。这些仅仅是服务区中提供的服务的一些例子.诸如图2中所示的 PD A和蜂窝电话的移动设备可以通过诸如Wi-Fi或蓝牙的无线连接访
问服务区260和280的计算能力。利用多种互连技术和服务类型,服务 区可以在配备了环境设备的几乎任何位置加以实现,并且被配置成适 应各种设备。服务区能够从具有一两个环境设备的小服务区,例如/> 交车站,扩展到更大区域中的数以百计的设备,例如主要的火车站。
差4谈滋。环境200的网络基础设施适应现有的互连技术,并且 被设计成能满足新兴的技术。同样地,基础设施是可伸缩的。服务区 的主干网优选地是利用交换IOO / 1000Mbps以太网实现的IP LAN。诸 如WiFi、蓝牙和(IrDA红外数据协会)的可用无线通信技术的接入点净皮 连接到LAN。所有这些接入点被配置成桥接模式。这样,蓝牙连接的 客户端可以与WiFi、 IrDA或有线以太网连接的移动或环境设备、或 与不同微微网(利用蓝牙技术以特定方式连接的设备的网络)上的蓝 牙连接的设备通信。这是利用现成产品提供强大解决方案以保证移动 设备与不同连接技术之间的互操作性的例子。
体系结构200的设计始终尝试独立于网络技术、硬件平台、操作 系统、运行时刻架构和被用于其最初实现的编程语言。然而,对于指 定的XML (可扩展标记语言)文件的自我描述性质,其包括WEB服 务接口和消息,以及WEB服务技术的不断增长的普及性,当前可以期 望使用用于设备间通信以及其它开放的、基于XML标准的WEB服务 来描述设备能力和体系结构200的其它单元。
还应当给用户提供足够的安全性和隐私保证。充分的保护必须适 当保证用户的移动设备之间的信息交换,并且保护环境服务不受各种 攻击。应当有使环境服务向用户证实他们会保护其从移动设备接收的 信息的保密性的方式,以及使移动设备透明地验证这些证明无需移动 设备的用户明确涉入的方式。诸如SSL的较好试验过的加密技术被用 来保护客户端与代理之间的通信免受攻击。利用标准帐户/口令技术, 或直接利用配置有客户端认证的SSL连接,移动设备上的客户端代理 可以向代理自动认证i殳备,
为了实现服务的这种广泛散布部署的设想,体系结构需要确保部 署这种服务区的进入障碍较低。此外,服务区应当是由已经存在的各
种各样的移动设备可立即访问和使用的。进一步地, 一旦部署服务区, 该服务区应当易于管理。随着新设备被引进市场,以及发展新服务, 其应当易于向现有区域展开对这些的支持。管理这种展开的管理费用 应当最少。为达到这些目标,服务区应当充分地配备用于现有以及新 部署的服务的远程测试,以及用于智能监视和报告移动用户遇到的问
题的设备。ESB 220可以执行所述监视和测试。
由于服务区处于公共场所,服务提供者可能必须取得经营的许可 证,并且遵守当地的规章要求。遵守可包括维护具有使用服务的个人 的身份标识的安全记录,确保维护行为准则的标准,例如禁止观看仅 对成人观众适合的内容, 一视同仁地提供区域服务,为区域质量和用 户满意度提供文件,以及从当地居民主管团体获得认证等级等等。该 严格要求的收集要求尽可能多地将已验证技术引入到服务区体系结 构及其实现中。
为简单以及澄清起见,图2仅示出少量环境设备和两个服务区。 如图所示的环境200可易于扩展到支持多于两个服务区。
图3根据本发明的一个实施例,示出了普遍存在的协作系统体系 结构300。 该例子中的ESB 220被显示为诸如服务器的单一设备。实 际上,ESB 220可以是任何计算系统或甚至是存储在计算系统中的程 序代码。本地产生器365是主机服务的区域内的设备,例如智能显示 器或在无线连接上可访问的自动调温器。远程产生器是提供服务的因 特网站点,例如amazon.com,其提供用于购物的基于WEB服务的接 口。大量插件被用于针对区域及其用户的要求定制ESB。概括地说, 插件或者是应用程序插件340,其增强区域中设备的,或当被视作提 供应用程序层服务时甚至ESB 220的应用层功能;或者是基础设施插 件350,其增强ESB220和区域设备的能力以便以高效(安全、可伸缩、 可维护、低成本)方式互相交互。该系统300还包括UPnpTM (通用即 插即用)网关380以适应UPnpTM客户端。UPnpTM使用标准TCP/IP协 议,并且可以在多数操作系统上被支持。其提供全部构成因数(all form factor)、智能仪器和无线设备的PC的普遍存在的端到端网络连
接。服务区330中的一些可用服务是大型显示器318、 PC 316、手持 设备或手表314、扬声器或手机312及其他310。 一些设备可能需要定 制插件以使得它们与本地ESB或直接与该区域中的移动设备更好地工 作。这些插件被ESB存储和管理。
图4示出了ESB 220的单元。注意到,这些单元为逻辑构造,此 处被定义来说明ESB 220的不同功能。ESB 220的所有不同方面可被安 装在连接到网络并且具有足够计算资源的任何计算设备上以便按高 效方式执行这些操作。ESB 220服务可被嵌入到适于被管理的区域的 设备中。例如,如果区域处于用户的家中,则代理服务可靠机顶盒运 行并且管理由家庭中的各种大屏幕显示器、家庭中的个人计算机等等 提供的服务。无线接入点也适合于代理服务可被嵌入的设备。提供服 务的任何设备,例如投影仪或高分辨率显示器可驻留代理服务,以便 附近其它设备可向其注册自身。
^"A/艙i^^理器W5.' ESB 220的该单元处理与移动设备415 以及驻留在环境设备上的环境服务425的交互。针对ESB 220的所有输 入和输出由I/O管理器405处理。甚至对于未拥有高级专门技能的用户 来说,服务的发现和使用应当是直观和显而易见的;由于用户可能仅 仅是穿越该区域,它们也应当是快速的。在许多场合中,移动设备无 需用户的干预就可与环境设备交互。仅在确定用户注意力是期望的或 必需的以后,移动设备将尝试得到其拥有者的注意。体系结构及其实 现是上下文感知(context-aware)的,因此它们应当了解它们放在用 户上的认知负载的等级。对于用户来说应当很容易向其移动设备以及 向环境服务表示其意愿。由于设备寻找用户注意而导致的不必要的用 户烦恼应当最少。在区域内,移动设备应当基于可用服务、用户简档 和诸如一天中的时间、星期几、旅行的目的的环境,以及基于还有谁 在区域内,例如朋友、家人等等来请求用户注意。由于移动用户将某 些Celadon服务的使用集成到其日常工作中,他们会期望这些服务是 高度可用(在区域内)的并且表现出可预测的响应时间.这些期望将 由其作为优选移动设备的蜂窝电话的使用来实施,该移动设备通常与
高度可用的蜂窝服务相关联。
g,和查询^理器^^; ESB 220提供了集中注册服务,其中不 同环境服务425向其注册自身,并且对于移动设备415,能够查询和了 解这些服务。当环境服务425在服务区内变得可用时,它必须首先向 ESB 220注册其自己。它必须提供有关其地址、能力和功能的信息。 类似地,利用注册和查询管理器410,转变区域的移动设备可以向本 地ESB注册其驻留的服务。移动设备可以查询代理以发现这些服务, 从而免去对诸如组播的复杂协议的需要。如果移动设备仅仅具有局部 连通性,ESB 220其自身的发现基于IP地址分配。当移动设备从区域 本地DHCP服务器获得本地IP地址时,我们利用命名约定,其通过在 分配的域名中执行DNS查找以得到ESB 220,使移动设备能够发现 ESB 220的位置。如果移动设备具有由本地服务区之外的DHCP服务 器分配的IP地址,移动设备利用DNS查找管理所涉及区域的ESB 220 的名字来发现ESB220。例如,当移动设备415进入服务区时,它首先 发现ESB 220服务,并且与其通信来发现存在于该区域中的其它服务, 并且还发现对于移动设备415来说是当前免费使用和可用的服务。移 动设备415可以"发现"ESB 220服务,因为其被配备为从分配给该区域 并且通过LAN连接到ESB 220的至少一个无线接入点接收射频(RF)信 号,或如果ESB 220在接入点设备中实现,直接从ESB 220接收射频(RF) 信号。当移动设备415在服务区的范围内时,它将拾取服务区的特征 RF信号。通过LED(发光二极管)、嘟都声或某些其它信号使移动设 备415的用户知道信号的存在。如果用户希望接收有关当前该服务区 中提供的服务的信息,用户将确认所述信号。参考图7,其中示出了 具有利用IrDA标准的有源LED 715的图3的PDA 314,其指示来自ESB 220的通信。显示屏幕720示出了可用服务的文本表示。除了文本表示, 显示可以是对应于不同服务的通用图标。例如,打印机图标将类似打 印机,或一张纸。
PDA 314也可配备有传感器和激励器以接收有关可用服务的信 息 一旦信号被移动设备415确认,ESB220就发送有关服务的信息,
图9是具有支持富客户端平台的嵌入式代理的移动设备900的简化图 解。移动设备900包含嵌入式富客户端平台(eRCP)绑定(bundle), 其被用于用户接口。这些eRCP绑定充当嵌入式代理,处理移动设备 900与ESB 220之间的通信。传感器915和激励器935利于设备900与 ESB 220之间的通信。
会话资理器"0.'当移动设备415的用户发现区域中存在对其有意 义的服务,而且如图7中所示这些服务425是当前可用的时,该用户可 以请求ESB 220使设备415能够使用这些服务425。然后ESB 220建立会 话,其中服务425被保留用于移动设备415。直到移动设备415释放服 务425,其不会对另一个用户可用。ESB 220还4吏移动设备415能够从 建立的会话中移除服务425。会话管理还包括要求拆除会话的操作(例 如,当会话中的移动设备415离开该区域时)。
在服务区中,可用服务可被多个移动设备使用。 一种简单环境中, 每个移动设备独立于其它移动设备地使用一个或多个服务。在更复杂 的环境中,可能有希望合作工作的多个用户,其在其自己设备之间共 享环境服务,并且在其移动设备以及环境服务之间交换数据和控制。 移动设备415的拥有者可希望将其它用户的移动设备包括到会话中。 ESB220也利于此。当被一个移动设备请求时,ESB220建立会话,其 中所请求的区域服务的子集被保留用于请求移动设备。这些服务仅仅 由作为会话的一部分的设备使用。ESB 220还^吏移动i殳备的用户能够 从建立的会话中添加或移除服务。
此外,ESB220利于将其它用户的移动设备包括到会话中,如果 发起会话的移动用户希望如此的话,用这种方法,ESB 220可以支持 简单使用环境,其中存在使用区域中的一个或多个服务的单一移动设 备,以及支持更复杂的环境,其中多个用户聚集在一个区域共享信息。 在后一种情况中,移动设备中的一个建立会话,然后允许其它移动设 备加入该会话。ESB 220使得活动会话对该区域内的任何移动设备415 都是显而易见的.为加入会话,移动设备415的用户可基于信道外信 息,例如与相同区域中的其它移动设备用户的语音通信选择会话.一
旦在该会话中,设备就能访问已被保留给该会话的所有服务。这些服 务的使用的实际协同通过如下所述的关联方法管理。
ESB 220提供会话管理服务,该服务提供建立和拆除会话所需的 操作,并且保证不同会话中的设备不受互相干扰。此外,ESB维护会 话所有权,其包括调停会话所有权从一个设备到另一个的传递。会话 拆除可以当移动设备的拥有者决定终止其自身会话时,或者当会话中 的移动设备简单地退出该区域时被明确启动。
^^^埋器WC:在一个特定会话内, 一个或多个移动设备415 可充当已经保留给该会话的服务425的客户。虽然一些服务425可同时 被不止一个客户使用,然而诸如使用诸如EID的显示服务的一些服务 425每次可仅支持一个客户。ESB 220还管理此类单一使用服务以及其 客户之间的关系。此类关系的管理被称作关联管理。关联是服务与被 授权使用该服务的客户之间的关系。关联就像你可以每次仅按一个方 向发送消息的管道。 一个会话内可能有若干关联。关联在相同会话内 可以被若干次建立与终止。ESB 220管理关联,确保区域中的设备可 以不互相干扰地一起工作。如果特定服务每次仅可以支持一个客户, 则ESB 220确保在建立新的关联之前终止当前关联。作为关联管理的 一部分,ESB 220还给服务提供者和服务的消费者建立和分配访问控 制令牌,以确保未经授权的客户被阻止访问未允许的服务。当相应关 联被终止时,访问令牌被销毁。
^竭脊换器W" ESB 220还根据需要提供常规代码转换服务来 帮助执行从移动设备415到服务425的数据语法变换。当移动设备415 使用不同于环境服务425所接受的格式的不同格式时,这么做是必要 的。例如,环境显示服务425可能仅能显示Adobe PDF以及postscript 格式,然而移动设备415需要按MicrosoftWord格式显示文件。由ESB 220提供的代码转换服务将用户的Word文档转换成PDF或postscript 格式,以便显示服务可以将其显示给用户.服务提供者可增加其自己 的代码转换服务,以及可包括语言翻译,或诸如尺寸和分辨率降低、 色浓度(color d印th)转换等等的文档格式转换,以及使其在服务区内可用。
##々记^,理器^^.'根据每次使用付费方式使一些环境服务
425可用,其中移动设备415的拥有者支付一定使用费来使用这些环境 服务425。在一个特定会话内, 一个或多个移动设备可充当已经保留 给该会话的服务的客户。由于ESB 220管理会话和关联的建立和拆除, 它还记录服务的使用并且跟踪其使用,以便可以根据这些服务425的 使用给移动设备拥有者开帐单。根据每次使用付费方式使一 些环境服 务可用。服务提供者可使用现有的付费机制来允许用户享有每次服务 付费设施。ESB 220还负责新功能的升级和安装,尤其对移动设备来 说。ESB220履行这些职责,以便移动用户不必履行。
访河控樹^理器"仏'ESB 220还管理与环境服务425相关的访问 许可,其代表该区域中的所有可用服务。虽然环境服务425在图4中被 示为在ESB 220之外,但是在某些区域中, 一些服务被实现成ESB插 件;注意到,环境服务的集合是动态的,由于转变区域的移动服务可 以驻留和注册其驻留的服务。访问控制管理器460认证进入该区域的 新设备,并且如果有的话,标识新设备被允许使用的环境服务425的 子集。
^^/t'竭供应^理器470:在很多情况下,移动设备415可能不具 有安装的适当代码来使用特定服务区中可用的服务。ESB 220还维护 在其范围中的服务425所需的客户代码,并且使移动设备415能够下栽 和运行客户代码,使得移动设备415可以使用可用的服务425。不同的 移动设备415可支持不同的代码执行环境(即代码容器),而ESB 220 针对每个此类容器保存客户代码的拷贝,并且标识和提供适于移动设 备415上支持的代码容器的客户代码的适当版本。动态代码供应方面 以与OSGi或其它类似软件生命周期管理工具使用的代码供应相比更 加细的粒度操作。在该服务区体系结构中,进入区域的移动设备无需 与该区域中服务进行交互所需的代码就可进来。必需的代码按需被下 载到移动设备中;当移动设备退出该区域,并且下栽的代码不再相关 时,其可被从移动设备上删掉,体系结构的该方面使移动设备的部署
只需要最低水平的预安装或预配置以便使用服务区中的服务。移动设 备所需的全部是一个环境,代码可被下载到其中并且执行。当设备进
入该区域时,设备进入到与ESB 220的对话中,以帮助代理确定设备 支持的代码容器的类型。然后,代理220指示设备下栽与移动设备上 的代码容器匹配的合适代码。表示移动设备的环境的附加参数可被作 为该初始会话的一部分提供,使得下载到移动设备上的代码可#皮定制 以满足移动设备的环境,例如其屏幕分辨率或电池等级、环境噪声级、 用户偏爱等等。.
对于移动设备上以及环境服务和ESB 220上的动态代码供应,作 为IBM的OSGi实现的服务管理架构(SMF)是优选的架构。SMF是 用于动态管理这些设备中软件部件的生命周期的已验证了的解决方 案。对于环境设备和ESB 220, SMF有助于减少管理费用。对于移动 设备,SMF允许这些资源受限的平台的上下文感知按需供应。.
//0键^^卵; 一些服务可支持可从移动设备415发送给它们的控 制操作。例如,高分辨率显示服务可支持缩放和摇动镜头操作。由 ESB 220支持的I/O映射功能帮助用户找到使用在其移动设备415上可 用的I/0控制的方式,以产生服务所需的适当控制操作。ESB220维护
各种移动设备类型和每个设备类型上可用的i/o控制的类型的描述。 它还维护i/o控制与服务操作之间的映射集合。当用户希望利用他的
移动设备415控制特定服务时,ESB220搜寻其映射数据库,并且给用 户示出可能的方式,利用该方式他的移动设备可产生适当的控制操 作,并且允许用户选择映射中的一个。 一旦选定这种映射,用户就可 以通过在他的设备415上操纵控制来产生适当控制操作。ESB 220给可 以捕获控制信号操作的用户的移动设备415动态地供应代码,并且将 这些操作映射到服务425理解的适当的控制操作。.
风/#卯ESB220维护等待服务425变成可用的会话的队列。当 请求时,ESB 220建立这种单一使用的服务与对应客户之间的关联, 并且排队来自其它客户的请求,以便其它客户等到当前关联结束。当 当前关联结束时,将使单一使用服务对队列中的下一客户可用。.
河^伊/^^5.' ESB 220通常被连接到LAN上,该LAN具有也连 接到其上的 一个或多个WiFi或蓝牙接入点。移动设备与接入点会话, 所述接入点通过LAN (或对于远程设置的ESB的LAN + MAN )与ESB 220通信。当ESB220也充当该区域的无线接入点时,针对其情况ESB 220可安装有无线接口。
ESB 220的所有不同方面可被安装在连接到网络并且具有足够 计算资源的任何计算设备上,以便按高效方式执行这些操作。ESB 220 服务可被嵌入到适于被管理的区域的设备中。例如,如果区域处于用 户的家中,则ESB 220服务可靠机顶盒运行,并且管理由家庭中的各 种大屏幕显示器、家庭中的个人计算机等等提供的服务。无线接入点 (WAP)也适合于ESB 220服务可被嵌入的设备。在本发明的一个实 施例中,ESB 220可被连接到因特网热点,并且与其共享空间,从而 提供当前可用因特网热点的WiFi能力与由ESB 220提供的服务的广泛 范围之间的极好共生关系。实际上,提供诸如投影仪或高分辨率显示 器的服务的任何设备都可驻留ESB 220服务,以便附近的其它设备可 向其注册其自身。ESB 220应当具有足够的存储,其被用于存储其自 身程序以及插件、动态供应给移动设备的代码、存储计量与记录信息 等等。
参考图5,根据本发明的一个实施例,其中示出了图解信息处理 方法的流程图500。该方法从移动设备415的角度示出。过程随着移动 设备415进入服务区范围,从步骤510开始。 一旦移动设备415在范围 内,其接收由ESB220发射的RF信号。移动设备始终确认该RF信号。 这就是移动设备如何连接到接入点的说明。在包括不止一个RF信号的 交换的该过程期间,确定移动设备415是否被允许连接到该接入点。 一旦连接,设备可尝试获取网络地址,这也需要交换多个RF信号和链 路级消息。该消息可以是音频消息、可视消息、振动或任何其他代表 使用中的设备的任何其他消息类型的形式。.
仅在此之后,移动i殳备415向ESB 220认证其自己。如果认证成 功,以及如果移动设备415的用户对访问区域中的可用服务感兴趣,
则ESB 220在该点向设备415标识其自身。设备415于是将请求对于其 来说可用和可访问的服务的列表(基于设备认证步骤的结果)。总的 来说,ESB 220与移动设备415之间存在大量消息,直到服务的列表(如 果有的话)被提供给设备415。并且,注意到,该列表仅由ESB220根 据请求提供。.
假定移动设备415在步骤520中已认证其自身。这表明用户对该服 务区提供的环境服务425感兴趣。 一旦ESB 220从用户接收到确认,其 就发送当前可用服务的列表。这些是该服务区中已经注册的所有服 务。.
一旦收到服务的列表,通过选择特定服务,用户在步骤530中向 注册和查询管理器410 (经由输入/输出管理器405)提交查询。选择 具体服务可以象点击列在如图7中所示的用户的显示器720上的服务 一样简单。步骤540中,ESB 220开始一个会话来处理用户的请求。同 样在步骤540中,设备可以在该点进入服务区,并且加入现有的会话。 接下来,在步骤550中ESB 220为请求的服务425建立关联,其还包括 访问令牌的建立,以便当访问该服务时移动设备使用。该访问控制令 牌然后被提供给移动设备415和服务425,使得服务425可以认证设备 415被授权使用服务425。直至由环境服务425认证该访问令牌。如果 由移动设备提供的访问控制令牌不是有效的,则环境服务425忽略请 求并且通知ESB违反安全性。每个会话必须具有拥有者,并且该拥有 者是具有访问控制令牌的设备。希望加入正在进行的会话的新设备必 须服从会话的拥有者,并且该拥有者可以为新设备建立一个关联。如 果会话的拥有者在传送访问控制令牌之前离开会话,则因为会话不具 有拥有者而被终止。这个概念类似于电话会议情况,其中当原始呼叫 者挂断时呼叫被终止.
如果令牌被接受,移动设备415必须向关联管理器430 (经由输入 /输出管理器405)查询设备是否是当前可用于判决550。如果设备不是 可用的,则在步骤560中,移动设备415请求被放入队列中,直到设备 变得可用。 一旦设备变得可用,在步骤570中,请求被处理,并且移
动设备415使用其所需的服务。移动设备415可多次调用该服务或该区 域中的任何其他服务,其由设备驻留、在相同会话中包括。因此,如 果在步骤575中移动设备415希望调用另一个服务,处理循环回到步骤 560,其中确定请求的服务是否可用。.
在步骤575中, 一旦完成调用该会话中的服务,移动设备415就向 ESB 220通知会话结束。在步骤585中,移动设备415与服务425之间的 关联被终止。如果离开的移动设备415是会话的拥有者,则在步骤585 中,会话被拆除,并且处理结束。可选地,作为会话的拥有者,移动 设备415可以简单退出服务区,而这将自动触发ESB220拆除会话。离 开的设备可选择给刚加入会话的设备传送访问令牌,以保持会话进 行。.
必须注意,每次移动设备415调用服务时,会话不被建立和终止。 可从相同会话多次调用相同的服务或服务的相同集合。当与新设备交 互是必要的,即新设备被添加到现有会话,或移动设备415终止其会 话并且加入期望设备已经与其关联的正在进行的会话时,会话被修 改。会话可以被看作"不相重叠的设备组"。
参考图6,其中示出了上述过程的流程图,但是是从ESB 220的 角度示出。过程从步骤605开始,其时ESB220接收服务区中的环境服 务425的注册请求。注意到,服务可被环境设备425驻留,在这种情况 下当环境设备425被安装在该区域中时,提交注册请求;或者服务由 移动设备415驻留,在这种情况下当移动设备进入该区域时,提交注 册请求。当环境设备425停机时,同样当维护或升级时,或当移动设 备415离开该区域时,服务注册被消除。在该点,ESB220必须确定其 是否可以实际适应该服务425,或该服务是否不与现有服务冲突,或 其是否是该服务区中必要或期望的(从规定角度看).如果是这样的 话,则ESB 220在步骤610中注册服务。注册服务涉及从服务接收信息, 其包括服务物理位置、其名字、接口、能力、兼容性、限制和稳定性。
当在步骤610中注册服务之后,ESB 220等待其它服务注册或等 待移动设备415进入其服务区。当移动设备415进入该区域时,其拾取
由连接到ESB 220的无线(WiFi、蓝牙)接入点,或如果ESB 220在 接入点设备上实现的话,由ESB220其自身不断发出的RF信号。这类 似于由进入WiFi热点的用户拾取的信号。认证设备之后,在步骤615 中,ESB 220接收服务的查询,然后在步骤620中确认收到查询。此夕卜, 此时ESB 220通知移动设备415该服务区中的服务可用。.
接下来在步骤625中,ESB220建立会话,并且之后建立设备415 与服务425之间的关联。建立会话包括建立会话ID、将移动设备415和 驻留服务的设备425分配给会话,以及在注册库中注册新会话。移动 设备415变成新会话的拥有者。可选地,如前所述,如果服务或其想 要访问的服务已经被分配给会话,则设备415可以加入现有会话。只 有经现有会话的拥有者的许可,移动设备415才可以加入现有会话。 类似地,移动设备415加入现有会话之后,在步骤630中,ESB 220将 必须建立移动设备415与环境服务425之间的关联。会话拥有者任何时 候都可以将会话拥有权传递给会话中的另一个设备。如果拥有者设备 离开区域,但是希望会话继续的话,这是必要的。
一旦在步骤630中形成关联,如果在步骤635中服务425确定由设 备415提供的访问控制令牌是无效的,则环境服务425忽略请求,并且 ESB 220被通知违反安全性。如果会话有效,在步骤645中,ESB 220 执行移动设备415所需的任何干预服务。ESB 220可确定I/O映射是必 要的。如果是这样的话,则进行映射。如果服务在使用中和/或满负荷, 则有必要管理设备415的排队。如果动态代码供应是必要的,则其在 此处进行。同样,如果代码转换是所需的,则其被执行。如果会话是 每次服务付费会话,则ESB 220必须执行计量和记录任务。每次服务 付费财务方案的替代是用户支付月费的预订服务。另一个替代是类似 于当前可用的电话服务卡的无合同借方卡。用户将购买设定量的卡, 从卡中输入关鍵码到移动设备415,然后将使用服务425直到卡清零为 止.这些仅是由ESB220执行的服务的少数例子,不应被看作是对ESB 220的能力的范围的限制。.
在步骤670中,ESB220从服务425接收关联被结束的指示..这表
明移动设备415不再需要环境服务425。然而,会话仍然进行,直到会 话的拥有者结束会话。在步骤665中,如果移动设备415希望使用其他 服务,其将返回步骤630,并且开始另一个关联来分担另一个环境服 务425。结束关联之后,过程完成,直到接收下一个请求,或直到新 设备进入该区域来参加现有会话。然而,如果会话的拥有者希望终止 会话和/或离开该区域,则在步骤670中,会话被拆除以便新会话可用。.
在另一个实施例中,ESB 220为多个区域提供服务,并且这些服 务被汇集,并且在后端网服务器运行,后端网服务器物理上远离服务 被发现的区域。聚集环境服务代理服务,并且在网络服务器运行它们 以允许容易的管理和负载平衡。.
"上下文(context)"是指计算设备所处的物理和社会状况。上 下文感知计算的一个目标是获得并且使用有关设备的上下文的信息, 以提供适合于特定人们、地方、时间、事件等等的服务。例如,如果 系统可以知道蜂窝电话的位置和音乐会时间表,则在音乐会中蜂窝电 话将始终振动并且从不发嘟嘟声。参见Thomas P. Moran, IBM Almaden Research Center和Paul Dourish, University of California, Irvine "Introduction to This Special Issue on Context - Aware Computing", Special Issue of Human-Computer Interaction , Volume 16, 2001,这里完整地将该文献引为参考。ESB 220能够管理对参加 者的公共服务的上下文感知供应。可利用位置感知应用来协助服务符 合参与方的环境。.
ESB 220和其在其中操作的基础设施的另 一个优点是可伸缩性。 因为其在无线基础设施内操作,所以通过简单地添加更多服务,或甚 至通过用其自身ESB 220以及其自身服务的选择添加其它LAN,可扩 展整个系统。.
参考图8,示出了被配置成根据本发明的一个实施例操作的计算 系统的一个高层模块图。系统800包括可包括若干微处理器的处理器 810。它还包括存储器820、 USB接口和插槽830、 BIOS 840、快擦写 存储器850、网络接口860、大容量存储870、无线接口880和CDROM
890。 UPnP (通用即插即用)驻留在软件操作系统中。
因此,虽然已经描述了当前被认为是优选的实施例,但本领域的 技术人员会理解,在本发明的精神范围内可以做其它修改。
权利要求
1.一种用于向一个区域内的多个移动设备提供计算服务的环境服务代理,所述环境服务代理包括用于在其中存储程序代码的存储器;连接到所述存储器的处理器,用于根据存储的程序代码执行指令;其中当由所述处理器执行时,所述程序代码使所述处理器执行下述操作注册每个所述计算服务;处理来自移动设备的查询;建立以及拆除所述移动设备与所述计算服务之间的会话;管理多个移动设备与计算服务之间的工作负载;控制访问所述计算服务,使得未授权用户被限制访问所述计算服务;以及用于将输入/输出控制从移动设备映射到所述计算服务的输入/输出子系统。
2. 如权利要求1所述的环境服务代理,其中所述程序代码进一步 使所述处理器能够提供为所述区域定制的计算服务,例如所述区域内 的以显示驱动程序为特征的媒体代码转换服务。
3. 如权利要求1所述的环境服务代理,其中所述程序代码进一步 使处理器能够给移动设备提供专用代码,以便利于所述移动设备与计 算服务之间的交互,包括使处理器能够给被配置成提供所述专用代码 的另一个处理器分配专用代码的供应。
4. 如权利要求1所述的环境服务代理,其中所述程序代码进一步 使处理器能够提供计量与记录服务,包括管理所述移动i殳备与所述计算服务之间的会话的财务事项; 根据利于所述移动设备与所述计算服务之间的交互的需要,升级 移动设备的软件;以及 监视计算服务的执行。
5. 如权利要求1所述的环境服务代理,其中环境服务代理被实现 成存储在至少 一 个计算设备中的程序代码。
6. 如权利要求1所述的环境服务代理,进一步包括诸如无线接入 点的无线接口。
7. 如权利要求1所述的环境服务代理,其中所述程序代码被进一 步配置成给移动设备提供基于计算机的服务的上下文感知供应。
8. 如权利要求1所述的环境服务代理,其中所述处理器被进一步 配置成给不同区域提供服务。
9. 如权利要求1所述的环境服务代理,其中所述服务被汇集,并 且在后端网服务器上运行,该后端网服务器物理上远离发现服务的区 域。
10. —种设备驻留代理,包括用于给用户提供有关服务区的信息的接口 ,其中服务区包括存储 在相同地球物理位置的多个基于计算机的服务;其中提供给用户的 信息包括有关所述服务区相对于移动设备的位置的信息; 有关在位于所述移动设备的范围内的服务区中可用的基于计算 机的服务的信息;所提供的基于计算机的服务的持续时间;以及 所提供的基于计算机的服务的成本。
11. 如权利要求10所述的设备驻留代理,其中有关服务区的信息 通过提供消息被传送给用户,或当移动设备在服务区范围之内时提供 给移动设备的用户代理。
12. 如权利要求10所述的设备驻留代理,进一步包括用于与UPnP 设备交互的UPnP接口.
13. 如权利要求10所述的设备驻留代理,其中所述接口进一步提 供基于计算机的服务的上下文感知供应.
14. 如权利要求10所述的设备驻留代理,进一步包括嵌入式富客 户端平台绑定。
15. —种用于给多个移动设备提供计算服务的方法,所述方法包 括步骤接收有关移动设备在提供计算服务的实体的范围内的指示; 接收来自移动设备的查询;建立使移动设备能够利用由实体提供的计算服务的会话,其中移 动设备和计算服务是所述会话的参与方,以及其中所述会话包括指示 会话的参与方之间的关系的关联;以及管理会话。
16. —种用于在至少一个移动计算设备与至少一个固定计算设备 之间建立共生关系的方法,所述方法包括步骤利用至少 一个联网协议,与分配给至少一个移动计算设备和至少 一个固定计算设备所位于的区域的计算实体交互;从所述计算实体接收软件模块,为了在至少一个移动计算设备与 至少一个固定计算设备之间建立共生关系,其中针对接收所述软件模 块的至少一个移动计算设备定制每一个软件模块;运行所述软件模块来与至少 一个固定计算设备和计算实体交互 以建立共生关系,该共生关系使得能够执行由至少一个移动计算设备 选择的任务。
17. 如权利要求16所述的方法,其中所述交互、接收以及运行步 骤在接收到从一个组中选择的触发器时自动执行,所述组包括至少 一个移动计算设备进入指定位置;移动设备用户的动作;移动设备用 户的预先选择的偏好;以及时间事件。
18. 如权利要求16所述的方法,其中所述软件模块通过WEB服务 协议,例如通过HTTP的SOAP来进行交互。
19. 如权利要求16所述的方法,其中所述运行步骤进一步包括运 行所述软件模块以根据预定模式进行交互,其中所述预定模式根据预 先确定的关联来确定。
20. 如权利要求16所述的方法,其中所述运行步骤进一步包括运 行所述软件模块,以包括至少一个移动计算设备的输入/输出能力到代 表移动设备用户执行的任务的输入/输出要求的映射,以及到相同共生 关系中其它计算设备的输入/输出能力的映射。
全文摘要
一种用于向一个区域内的多个移动设备提供计算服务的环境服务代理,所述环境服务代理包括用于在其中存储程序代码的存储器;连接到所述存储器的处理器,用于根据存储的程序代码执行指令;其中当由所述处理器执行时,所述程序代码使所述处理器执行下述操作注册每个所述计算服务;处理来自移动设备的查询;建立以及拆除所述移动设备与所述计算服务之间的会话;管理多个移动设备与计算服务之间的工作负载;控制访问所述计算服务,使得未授权用户被限制访问所述计算服务;以及用于将输入/输出控制从移动设备映射到所述计算服务的输入/输出子系统。
文档编号H04Q7/22GK101175246SQ20071014872
公开日2008年5月7日 申请日期2007年9月6日 优先权日2006年10月6日
发明者昌德拉瑟哈·那拉亚纳瓦米, 曼达雅姆·T.·拉格哈纳斯, 马塞尔·C.·罗素 申请人:国际商业机器公司;信息技术推进研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1