CN101589599B - 移动设备管理代理系统 - Google Patents
移动设备管理代理系统 Download PDFInfo
- Publication number
- CN101589599B CN101589599B CN2007800505269A CN200780050526A CN101589599B CN 101589599 B CN101589599 B CN 101589599B CN 2007800505269 A CN2007800505269 A CN 2007800505269A CN 200780050526 A CN200780050526 A CN 200780050526A CN 101589599 B CN101589599 B CN 101589599B
- Authority
- CN
- China
- Prior art keywords
- service
- client
- task
- mobile device
- state
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/567—Integrating service provisioning from a plurality of service providers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/56—Provisioning of proxy services
- H04L67/568—Storing data temporarily at an intermediate stage, e.g. caching
- H04L67/5681—Pre-fetching or pre-delivering data based on network characteristics
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/60—Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
- H04L67/62—Establishing a time schedule for servicing the requests
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Information Transfer Between Computers (AREA)
- Mobile Radio Communication Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种通用代理移动设备管理体系结构。该体系结构充当寻找来自后端系统的服务的移动客户机的代理。与移动客户机相关联的状态信息的虚拟客户机映像被存储,从而当移动客户机与该代理交互时,该虚拟映像更新到最新客户机状态。基于对该状态的改变,代理系统代表移动客户机异步地访问后端系统的一个或多个任意服务。当移动客户机连接到代理时,代理将最新服务与虚拟映像的状态相关联,并更新移动客户机的状态。更新和访问在代理与移动设备之间在前端以及在代理与后端系统之间在后端异步地发生。
Description
背景
蜂窝技术与基于IP的技术的汇聚充当了将技术融入便携式设备的催化剂。例如,目前诸如蜂窝电话等移动客户机可以访问诸如因特网等IP网络上的基于IP的服务。同样地,诸如便携式计算机等计算系统可以包括便于通过因特网向电话机目的地进行语音呼叫的移动客户机技术。这在很大程度上归功于网络服务提供者包括了桥接主要网络的装置,使得处于两种制度中的用户可以访问彼此的服务。
用户拥有多个计算设备且每个计算设备具有与数据及程序交互的一组不同的要求,这种情况越来越常见。在公司环境中,随着雇员越来越具移动性,从而例如在旅行期间经常使设备离线,保持最新的设置和信息变得越来越重要。因此,当雇员需要(也许用新的设备)重新连接到公司环境时,诸如操作系统、通信性能等特定的设备特性不成为阻止雇员进行所需访问的限制是合乎要求的。
由于现今有使用了多种不同的计算系统,公司解决此问题还要更进一步。用户可以将多种不同类型的计算机带入企业,且如果被给予适当的授权,将可容易地访问后端系统所提供的服务。然而,对移动客户机的支持也应该能用于提供日常工作用的透明连通性。例如,智能电话中的启用了设备和用户在场的通信有助于企业简化工作流并提高生产力。然而,需要有能够毫无困难地为企业标识这些移动客户机性能无论在客户机在线还是离线时都透明地检测和维护客户机信息的适当的机制。
因此,业务迁移到系统集成以便在基于开放式标准的基础设施方面为多种不同类型的设备提供企业支持。然而,常规的解决方案缺乏可扩展的、同构的、且可伸缩的体系结构来用于支持完全不同的移动客户机技术和企业后端系统可提供的多种不同服务。
概述
以下给出简化概述以便提供对所公开的本发明的一些方面的基本理解。此概述不是详尽综览,并且既非旨在标识出其关键/决定性要素亦非试图界定其范围。其唯一的目的是要以简化形式给出一些概念以为稍后给出的更详细描述的序言。
所公开的体系结构是一种灵活的、可扩展的、且稳健的移动客户机(或客户机设备)管理系统。该系统充当寻找来自后端系统的服务的移动客户机的代理。代理系统包括与移动客户机相关联的状态信息的虚拟客户机映像。当移动客户机与代理交互时,代理服务器确认客户机的虚拟映像,然后与该虚拟映像交互以优化从后端系统获取对客户机的最新更新的过程。另外,代理系统基于状态的改变代表移动客户机自动地且异步地访问后端系统的一个或多个任意服务。当移动客户机连接到代理时,代理将使最新服务与虚拟映像的状态相关联。
该代理体系结构可以使用抽象组件(例如,服务驱动器)来访问并处理任意服务,该抽象组件将完全不同的服务抽象成代理能够处理以更新虚拟映像的客户机状态的格式。因而,该体系结构是可扩展的且可伸缩的。而且,例如当在公司企业中被采用时,该体系结构方便了大量移动客户机连接来访问服务的情况下的负载平衡。可采用多个代理管理系统来动态地扩大规模以满足对客户机服务的需求,以及当需求减少时缩小规模。换言之,不要求客户机连接到特定的代理设备服务管理系统。
更具体而言,该代理是包括接收并处理从任意后端系统作为工作单元提交的任务的任务执行引擎的设备管理系统。移动客户机的状态信息可以作为虚拟客户机映像来存储,该映像可以例如与多个代理系统相关联地存储。从而,多个代理管理系统可以依需要访问该映像。该系统促进了例如基于虚拟设备映像(且当设备离线时)评估后端系统工作和网络接入保护所需的任何工作的能力。任务引擎与后端系统异步地操作以基于虚拟客户机映像的状态改变来访问所需服务。
该系统还可以维护可被频繁利用且为非易失性的设备配置服务提供者值的高速缓存。根据确认,高速缓存的信息还可以与映像的确认分开或相结合地确认。由于任务执行引擎使用“任务”对象来抽象要对于设备执行的工作单元,因此它能够与任意后端系统相接口。从而,将代理连接至相应的后端系统的任意数量的驱动器可以将要对于设备执行的工作单元排队。此外,该引擎可以批量地处理工作单元。
该代理系统可以在相关联的移动设备连接之前利用虚拟设备身份来对一个或多个任务执行评估测试。此机制便于确定,例如何时客户机设备需要关键更新并且应被强制联系管理端点。代理任务执行引擎与多个任意后端系统异步地交互,从而使得驱动器能在任何时候提交工作,而无论客户机是在线还是离线。另外,任务引擎不需要在其能开始处理前等待所有驱动器响应。
为了实现前述及相关目的,此处结合下列描述及附图来描述所公开的本发明的某些说明性方面。然而,这些方面仅指示了可利用此处公开的原理的各种方法中的少数几种,且旨在包括所有这些方面及其等效方面。结合附图阅读下面的详细描述,则其他优点和新颖特征将变得清楚。
附图简述
图1示出了根据所公开的本发明的用于提供移动客户机代理服务的计算机实现的代理设备管理系统。
图2示出了根据本发明的用于代理设备管理的更详细的系统。
图3示出了方便移动客户代理服务的替换代理设备管理系统。
图4示出了采用调度和同步处理的替换代理设备管理系统。
图5示出了根据本发明的与示例性目录服务访问及同步相关联的流程。
图6示出了采用便于自动化一个或多个代理功能的机器学习和推理组件的代理设备管理系统。
图7示出了经由代理系统管理移动设备的方法。
图8示出了代理处理服务和移动设备的方法。
图9示出了在将更新应用于移动设备之前对设备映像抽象执行评估测试的方法。
图10示出了根据本发明的调度对后端服务的异步访问的方法。
图11示出了将学习和推理处理应用于代理设备管理处理的方法。
图12示出了可用于提供根据所公开的体系结构的移动设备代理处理的计算系统的框图。
图13示出了便于为获得后端服务而由代理服务器进行的移动客户机更新的示例性计算环境的示意性框图。
详细描述
一般而言,所公开的体系结构是一种用于寻找来自企业后端系统的服务的移动客户机的移动客户机设备代理管理服务器。与移动客户机相关联的客户机状态信息被存储在例如服务器处,从而当移动客户机与代理交互时,该设备的客户机状态被更新到最新客户机状态。基于状态的改变,代理系统代表移动客户机异步地访问后端系统的一个或多个任意服务。当移动客户机连接到代理时,代理将使最新服务与虚拟映像的状态相关联。同样地,该代理系统便于与客户机的异步连接,这表现在客户机可以在任何时候连接并从代理接收最新状态信息和/或将附加的状态信息传递给代理。
现在参照附图描述本发明,其中相同的附图标记用于指代全文中相同的元素。在以下描述中,为解释起见,描绘了众多具体细节以提供对本发明的全面理解。然而,显然,本发明可以在没有这些具体细节的情况下实现。在其它情况下,以框图形式示出了公知的结构和设备以便于描述它们。
开始参考附图,图1示出了根据所公开的本发明的用于提供移动客户机代理服务的计算机实现的代理设备管理系统100。系统100包括,例如代表移动客户机106异步地访问企业后端系统的任意服务104的代理组件102。系统100还包括驱动器组件108,驱动器组件108包括用于访问任意服务并将服务抽象成关于与移动客户状态相关联的处理的任务的驱动器。在一实施例中,代理组件102和驱动器组件108组成代理设备管理系统100。
在一替换实现中,驱动器组件108可以是与设备管理系统100分开且在其远程的组件。例如,驱动器组件108的驱动器可以各自都是相应的后端服务(或提供该服务的系统)的一部分,从而当代理组件102请求至各个服务的连接时,在对应的服务位置处的后端驱动器方便了对相应服务的访问。
在又一个实现中,当使新的后端系统(也提供和/或需要新的驱动器)在线时,驱动器组件108可以方便驱动程序的上传和安装以供代理组件102进行将来的自动化且异步的处理。
图2示出了根据本发明的用于代理设备管理的更详细的系统200。系统200包括用于代表一个或多个移动客户机206(表示为移动客户机1,移动客户机2,……,移动客户机M,其中M为正整数)访问提供对应的服务(表示为服务1,服务2,……,服务N,其中N为正整数)的一个或多个后端系统204(表示为后端系统1,后端系统2,……,后端系统N)的设备代理服务器202。每个客户机206都包括对应的客户机状态(表示为客户机状态1,客户机状态2,……,客户机状态M)。客户机状态包括诸如操作系统类型、版本、硬件配置、应用程序版本、用户信息、数据版本等等的客户机信息。代理服务器202包括驱动代理服务器202访问后端系统204的代理组件102(例如,任务执行引擎)。代理服务器202还包括驱动器组件108,驱动器组件108包括对应于便于访问相应的后端服务器204的每个后端系统204(后端系统1-N)的驱动器208(表示为驱动器1-N)。服务器202还可以包括用于为每个客户机206存储客户机状态的虚拟映像212(表示为客户机状态1-M的映像)的相关联的数据存储210。数据存储210可以充当经常被需要且为非易失性的设备配置服务提供者(CSP)值的高速缓存。
在第一操作中,当第一移动客户机214连接到代理202时,第一客户机状态216被传递并存储到代理数据存储210。代理组件102确定后端系统204中的哪一个应该被访问以提供第一客户机214所需要或所请求的服务。一旦确定,驱动器组件108就提供用于访问对应的后端系统204和对应的服务的相关联的驱动器208。所选服务将所需服务信息提供回驱动器组件108,驱动器组件108将服务信息抽象成任意任务以供代理服务器202执行,代理服务器202更新所存储的映像212的所存储的第一客户机状态和第一客户机状态216(如果第一客户机214被连接)。
在第二操作中,第一客户机214在以上第一操作完成之后就变为离线(例如,客户机用户关闭第一客户机214的电源,离开服务区……)。其后,在一实现中,代理服务器202使用与先前为第一客户机214所采用的驱动器相同的驱动器,(基于在所存储的映像212的第一客户机映像中存储的驱动器信息)异步地连接到后端系统204,检测到至对所存储的映像212的现有第一客户机映像的更新存在,并将数据上传至与代理服务器202相关联地存储的第一客户机映像。最后,当第一客户机214重新连接到代理服务器202以获得企业后端服务时,并非直通连接到代理服务器204,而是所需信息能够容易地从代理服务器202的所存储的映像212中的第一客户机映像中获得。
然而应该明白,第一客户机214仍可能通过代理服务器202连接到一个或多个后端系统204。第一客户机状态216的所存储的虚拟映像212可能不是恰好绝对最新的。这是由于可正经历代理服务器202的更新处理的虚拟客户机映像212的多重性。换言之,当第二客户机218的数据存储210的客户机状态的虚拟映像正经历处理时,后端系统204可以接收仍必须被移至第一客户机状态的虚拟映像的更新。从而,数据存储210上第一客户机的虚拟映像将变老。如果第一客户机214要求(例如,基于用户设置)第一客户机状态216为绝对最新,那么第一客户机214可以被直通路由到后端系统204以获得最新信息或强制代理服务器202进行对第一机客户状态216的全部或一部分的更新操作。在任一情况下,第一客户机状态212的虚拟映像都将被更新。
在实际操作的更具体描述中,代理服务器202在前端(为移动设备)异步地操作,以及在后端(为后端系统)异步地操作。换言之,当一个或多个客户机206正连接以接收来自对应的虚拟客户机映像212的更新时,代理服务器202可以正在后端进行访问和更新操作。为支持这一功能,代理服务器202可以包括用于提供对所存储的虚拟映像状态212的快速读/写访问的高速缓存子系统。因此,应该理解,可以采用多个代理服务器系统202来处理与这些操作相关联的负载。负载平衡、规模缩放以及高速缓存将在下文中描述。
代理服务器202的代理组件102能与多个任意后端系统204一起工作,因为代理服务器202能使用“任务”对象将要对于移动客户机执行的工作抽象为工作单元(或任务)。从而,将代理组件102连接至各个后端系统204的任意数量的驱动器208可以将要对于对应的移动客户机(和客户机设备)完成的工作排队。从而,代理组件102(或代理引擎)可以批量地处理任务。因而,代理服务器202方便了面向任务的抽象,从而使多个后端系统204能将工作单元提交给中央代理组件102。
代理服务器202可以使用虚拟客户机映像212(包括设备身份信息)来在相应的客户连接之前对任务进行评估测试。因而,此机制可以被用来确定客户是否需要关键更新和是否应该被立即强制联系管理端点(或后端系统204)。
如先前所述,代理组件102与多个后端系统204一起异步地工作。这使驱动器208能在任何时候提交工作,而无论客户机是否被连接。另外,代理组件102不需要在其能够开始处理来自后端系统204的服务前等待所有驱动器响应。换言之,与第一后端系统220和第二后端系统222相关联的驱动器可以被用于在用于第三后端系统224的驱动器响应之前的数据处理。
图3示出了方便移动客户机代理服务的替换代理设备管理系统300。系统300的代理服务器202包括代理引擎302,代理引擎302包括用于执行与更新客户机106的状态相关联的任务的任务执行引擎(TEE)304。代理引擎302还可以包括多个接入组件306(例如,多路复用器),以便可以经由多个驱动器308发生向对应的多个服务310的通信。然而,可以理解,对多路复用器306的包括是可任选的。在此,提供了至少三种服务:目录服务312(例如,微软公司的现用目录(Active Directory)TM)及相关联的目录服务驱动器314;更新服务316(例如,微软公司的Windows服务器更新服务(Windows Server Update Service)TM)及相关联的更新服务驱动器318;以及消息收发服务(例如,SMS——短消息服务、NMS——多媒体消息收发服务、即时消息收发……)及相关联的消息收发服务驱动器322。尽管只示出了三种服务和驱动器,但可以实现更多的服务及相关联的驱动器。另外,如上所表明的,可以采用多个代理引擎302来动态地处理单个代理引擎302不能高效地处理的对前端上的移动设备的改变的需求及对后端服务的改变的需求。
多路复用器306方便了与服务310的通信。TEE 304可以从客户机106获得客户机状态,处理该状态来确定应更新哪个部分,并基于所需更新来请求对适当的服务310的访问。TEE 304将此请求发送至多路复用器306,以经由驱动器308路由至服务310。然后更新被传递回驱动器308以供抽象处理为任务,接着被传递到多路复用器306来供TEE 304处理以便被插入到客户机虚拟映像数据存储210和/或客户机102中。如前所述,任务执行可以独立于客户机102是在线还是离线而发生。如果离线,则任务执行对照数据存储210的客户机状态映像来发生。因而,当客户机102连接到代理引擎302时,对客户机状态的更新根据数据存储210的虚拟客户机状态映像而非服务310来发生。同样地,任务执行可以独立于代理202是否连接到后端服务310而发生。只要在代理引擎302中排队了供执行的任务,映像更新处理就可以发生。
所公开的移动设备代理管理系统是一种通用系统,这表现在不管提供服务的后端系统的类型,后端服务都可以由代理服务器202来主存或提供、访问和处理。例如,后端系统可以提供例如使用多种不同类型的操作系统(例如,Unix、Linux、Windows、Apple等)和文件结构、协议及数据格式的服务。驱动器308执行转换处理以将服务信息抽象成可由TEE 304执行的任意任务。与此相反,常规的体系结构提供不可扩展的且从移动设备到后端系统为一对一的硬编码实现。所公开的体系结构提供在前端和后端都异步操作的多对多可扩展实现。
图4示出了采用调度和同步处理的替换通用代理设备管理系统400。在此,驱动器组件108包括分别对应于目录服务312、更新服务316和消息收发服务320的目录服务驱动器314、更新服务驱动器318、和消息收发服务驱动器332。另外,系统400是可扩展的,从而可提供第三方驱动器402来作为对应于其它后端服务404的驱动器组件108的一部分。
代理引擎406包括TEE 304和多路复用器306,其功能已在上文中描述。另外,代理引擎406包括同步组件408,同步组件408用于在前端同步客户机106与服务器202的虚拟状态映像之间的状态,且在代理202的后端同步后端系统与服务器202的虚拟状态映像之间的状态。调度器组件410方便了在服务器202在后端和/或前端上执行同步时的调度。例如,根据一实现,同步可以基于时间信息(例如,时间、日期、自从上一次更新以来的天数等)。在另一实现中,调度是根据状态数据的版本来进行的。应该明白,调度可以根据每个客户机的规则、客户机的组、客户机的类别、设备信息、根据客户机状态、后端系统策略的改变、后端数据等等来促进。
在此,TEE 304接口至两个数据存储:引擎数据存储412和历史数据存储414。例如,引擎数据存储412可以持久保持与例如对客户机的调度、规则、供执行的任务和同步相关的信息。历史数据存储414可以方便存储关于连接到此代理服务器202的多个客户机的客户机虚拟状态映像数据。应该理解,数据存储(412和414)可以是用于快速执行和处理的高速缓冲存储器(例如,DRAM)。从而,代理服务器202可以访问存储关于多个代理服务器的数据的远程数据存储(未示出),其中该数据的所选部分被上传到适当的代理服务器以供高速缓存和异步处理。
可以提供诸如根据用户偏好、状态、上下文或其它度量来预取和/或预高速缓存信息等高速缓存功能,这增强了用户体验并弥补了便携式设备与台式计算机相比的某些固有限制(例如,带宽、存储器、处理能力、显示器可操作区域)。可以明白,例如,基于设备性能和用户相关度量而被视为低价值的虚拟映像数据可以被选择性地从存储中老化出去以便为新内容腾出空间。
在一示例性实施例中,代理服务器支持OMA DM(用于设备管理的开放移动联盟),而且服务器202与客户机之间的通信可以根据SyncML协议进行。OMA DM指定了诸如移动电话和有移动能力的便携式计算设备等移动客户机和设备的管理。SyncML是为开放式系统而提议的基于XML(可扩展标记语言)的协议。SyncML是用于通过任何网络来同步设备及应用程序的公共语言。通过充分利用XML,SyncML可以用于网络化信息与任何移动设备相同步,且移动信息可与任何网络化应用程序相同步。诸如电子邮件、日历、待完成事项列表、联系人信息、设备信息、应用程序信息和其它所需数据等个人信息可以变得一致、可访问且处于最新状态。另外,SyncML允许通过例如固定网络、红外线、电缆或蓝牙来进行同步。
图5示出了根据本发明的与示例性目录服务访问和同步相关联的流程。调度器410可以启动到后端系统目录服务312的同步会话,从而代理引擎406向目录服务驱动器314传送信息。驱动器314通过驱动器打包器模块500来打包信息,并将所打包的信息通过目录服务组策略驱动器502传送到目录服务312。目录服务312将所需的已更新的服务信息或工作送回给驱动器314,驱动器314将该工作抽象为一个或多个任务。令任务通过驱动器打包器500以被解开,然后令其通过代理引擎406至引擎数据库412以供执行。如上所述,也可以将一个或多个任务排队以供稍后处理。因而,可以在代理引擎406中采用任务优先化管理。
客户机106可以启动到代理引擎406的代理引擎层504(例如,SyncML)的连接,以经由协议(例如,SyncML)传递基于XML的数据。层504将XML数据转发给TEE 304以供处理。TEE 304从引擎数据库412拉取任务信息并执行该任务来经由层504更新客户机106,并更新存储在活动历史数据库414上的虚拟映像(未示出)。在层504处,所执行的任务数据被转换回XML并通过协议传送给客户机106。现在,客户机106和虚拟状态映像都以最新客户机状态更新了。可以明白,在一实现中,移动设备可以先被更新,而代理则将经更新的状态保存在高速缓存中。其后,高速缓存的信息被持久保存到代理服务器的虚拟状态映像。
图6示出了采用便于自动化一个或多个特征的机器学习和推理(MLR)组件602的代理设备管理系统600。在此,代理服务器604包括用于处理状态相关任务的代理引擎302、用于提供访问相关后端系统和服务104的驱动器的驱动器组件108、用于调度同步的调度器组件410、以及用于后端服务104的多重访问的多路复用器306。另外,服务器602可以包括例如用于快速数据访问和客户机状态信息处理的高速缓存组件606。在一示例中,高速缓存组件606便于例如基于虚拟映像状态(且当设备离线时)对后端系统工作和网络接入保护所需的任何工作的预评估测试。预评估测试可以用来确定客户机是否需要关紧更新和是否应该立即被强制联系管理端点。
高速缓存组件606还可以维护可被频繁利用且为非易失性的设备配置服务提供者值。
本发明的体系结构(例如,结合选择)可采用各种基于MLR的方案来实现其各个方面。例如,用于确定何时异步地连接到后端服务104的过程可以通过自动分类器系统和过程来方便。
分类器是将输入属性向量x=(x1,x2,x3,x4,xn)映射到类标签class(x)的函数。分类器也可以输出输入属于一个类的置信度,即f(x)=confidence(class(x))。这样的分类可采用概率性的和/或其它统计性的分析(例如,分解成分析效用和成本以最大化对一人或多人的期望值)来预测或推断用户期望自动执行的动作。
如此处所使用的,术语“推断”和“推论”通常是指从经由事件和/或数据捕捉的一组观察结果来推理或推断系统、环境和/或用户的状态的过程。例如,推断可用于标识特定的上下文或动作,或可生成状态的概率分布。推断可以是概率性的,即,基于对数据和事件的考虑计算所关注状态的概率分布。推断也可以指用于从一组事件和/或数据合成更高级事件的技术。这类推断导致从一组观察到的事件和/或储存的事件数据中构造新的事件或动作,而无论事件是否在相邻时间上相关,也无论事件和数据是来自一个还是若干个事件和数据源。
支持向量机(SVM)是可采用的分类器的一个示例。SVM通过在可能的输入空间中找出以最优方式将触发输入事件和非触发事件分离开来的超曲面来操作。直观上,这使得分类对于接近但不等同于训练数据的测试数据正确。可采用其它定向和非定向模型分类方法,包括,例如,各种形式的统计回归、朴素贝叶斯、贝叶斯网络、决策树、神经网络、模糊逻辑模型以及表示不同独立性模式的其他统计分类模型。如此处所使用的分类也包括用于分派排名和/或优先级的方法。
如从本说明书中可以容易地理解的,本发明的体系结构可以使用显式训练(例如,经由一般训练数据)以及隐式训练(例如,经由观察用户行为、接收外来信息)的分类器。例如,SVM经由分类器构造器和特征选择模块内的学习或训练阶段来配置。因此,可采用分类器来根据预定准则自动学习和执行多个功能。
例如,基于客户机设备的类型,MLR组件602可以学习和推理同步可能不需要像其它设备类型那样频繁地被执行。在另一示例中,MLR组件602可以学习读取客户机设备的用户偏好信息以作为区分哪些设备状态应该被更新的优先级的手段。学习和推理也可以用来调整调度、代理服务器604相对于其它企业代理服务器的地址加载、何时应该基于带宽和负载而扩大规模至另一代理服务器等等。
同步也可以是基于事件触发的。在此类型的实现中,客户机设备可以包括监视客户机状态改变的代理程序或类似的软件模块,并且当改变的范围满足预定或所配置的触发准则时,代理程序触发对代理服务器604的同步请求。然后对代理服务器604上关于该客户机的虚拟状态映像做出状态更新。当对应的客户机连接到服务器604时,客户机接收最新更新。
这些只是MLR组件602可以提供的灵活性以及用于获得后端同步的方法的少数示例。其它示例包括代理服务器周期性地向后端系统轮询关于给定客户机或所有连接的客户机的更新。另一示例包括后端系统将对于服务器604的更新请求排队,其中服务器以先到先服务的基础来选择请求。或者,MLR组件602可以基于所学习和推理的行为来接收请求并区分其优先次序。
图7示出了通过代理系统管理移动设备的方法。尽管出于解释简明的目的,此处例如以流图或流程图形式示出的一个或多个方法被示出并描述为一系列动作,但是可以理解和明白,本发明不受动作的次序的限制,因为根据本发明,某些动作可以按与此处所示并描述的不同的次序和/或与其它动作同时发生。例如,本领域技术人员将会明白并理解,方法可被替换地表示为一系列相互关联的状态或事件,诸如以状态图的形式。而且,并非所有示出的动作都是实施根据本发明的方法所必需的。
在700,代理服务器代表移动设备访问后端系统的任意服务。在702,通过服务驱动器将来自后端系统的服务信息抽象为供在代理服务器处执行的任务。在704,在代理服务器处存储移动设备的设备状态的抽象映像,该映像包括服务信息。在706,基于与任意服务相关联的改变来更新移动设备的设备状态的映像。
图8示出了代理处理服务和移动设备的方法。在800,在代理服务器处创建多个移动设备的状态的设备状态映像抽象。在802,通过用于该一个或多个映像抽象的服务驱动器发起对任意后端系统的访问。在804,异步地访问与任意后端系统相关联的服务。在806,通过服务驱动器返回关于一个或多个移动设备的服务信息。在808,通过服务驱动器将服务信息抽象为供在代理服务器处执行的任意任务。在810,基于任务的执行来更新移动设备的相应的映像抽象。在812,当移动设备连接到代理服务器时,从相应的映像抽象异步地更新该设备。在814,在更新过程期间从移动设备接收新的设备信息。在816,当在线时基于该新的设备信息异步地访问后端服务以获得新的服务信息。
图9示出了在将更新应用于移动设备之前对设备映像抽象执行评估测试的方法。在900,为移动设备创建移动设备状态映像抽象,并将其存储在代理服务器上。在902,通过用于该映像抽象的服务驱动器异步地访问任意后端服务。在904,将服务接收进驱动器并抽象为供在代理服务器处执行的任务。在906,针对该映像抽象执行任务评估测试,以确定一个或多个任务是否应该应用于移动设备。在908,基于针对移动设备的映像抽象的测试结果来应用或丢弃一个或多个任务。
图10示出了根据本发明的调度对后端服务的异步访问的方法。在1000,在代理处提供调度信息,用于在代理处更新多个移动设备状态映像。在1002,基于调度信息,代理服务器通过服务驱动器发起对后端服务的访问。在1004,将来自一个或多个后端系统的服务信息接收进服务驱动器,抽象成任务,并将其排队以供在代理处的任务执行处理。在1006,针对现有的代理状态映像执行任务。在1008,存储已更新的映像。在1010,一个或多个相关联的移动设备异步地连接到代理服务器并接收来自对应的映像的已更新的状态。
图11示出了将学习和推理处理应用于代理设备管理处理的方法。在1100,部署代理服务器以用于图像创建、异步后端服务处理以及移动设备状态更新。在1102,将学习和推理应用于代理服务器处理。在1104,鉴于移动设备及服务访问的现有异步处理,代理服务器基于学习和推理自动地采用提供的新调度。在1106,鉴于移动设备及服务访问的现有异步处理,代理服务器基于学习和推理自动地采用新图像更新处理和服务访问。在1108,鉴于第一代理服务器对移动设备及服务访问的现有异步处理,服务处理基于学习和推理而被扩大规模至另外的代理服务器。
如在本申请中所使用的,术语“组件”和“系统”旨在表示计算机相关的实体,其可以是硬件、硬件和软件的组合、软件、或者执行中的软件。例如,组件可以是但不限于,在处理器上运行的进程、处理器、硬盘驱动器、(光和/或磁存储介质的)多个存储驱动器、对象、可执行代码、执行的线程、程序、和/或计算机。作为说明,运行在服务器上的应用程序和服务器都可以是组件。一个或多个组件可以驻留在进程和/或执行的线程内,且组件可以位于一台计算机上和/或分布在两台或更多的计算机之间。
现在参考图12,示出了可用于提供根据所公开的体系结构的移动设备代理处理的计算系统1200的示意图。为了提供用于其各方面的附加上下文,图12及以下讨论旨在提供对其中可实现本发明的各方面的合适的计算系统1200的简要概括描述。尽管以上描述是在可在一个或多个计算机上运行的计算机可执行指令的一般上下文中进行的,但是本领域的技术人员将认识到,本发明也可结合其它程序模块和/或作为硬件和软件的组合来实现。
一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构等等。此外,本领域的技术人员可以理解,本发明的方法可用其它计算机系统配置来实施,包括单处理器或多处理器计算机系统、小型机、大型计算机、以及个人计算机、手持式计算设备、基于微处理器的或可编程消费电子产品等,其每一个都可操作上耦合到一个或多个相关联的设备。
所示的本发明的各方面也可在其中某些任务由通过通信网络链接的远程处理设备来执行的分布式计算环境中实施。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备中。
计算机通常包括各种计算机可读介质。计算机可读介质可以是可由计算机访问的任何可用介质,且包括易失性和非易失性介质、可移动和不可移动介质。作为示例而非限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据之类的信息的任意方法或技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或者其它存储器技术、CD-ROM、数字视频盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁存储设备、或可以用于存储所需信息并且可以由计算机访问的任何其它介质。
再次参考图12,用于实现各方面的示例性计算系统1200包括计算机1202,计算机1202包括处理单元1204、系统存储器1206和系统总线1208。系统总线1208向包括但不限于系统存储器1206的系统组件提供到处理单元1204的接口。处理单元1204可以是市场上可购买到的各种处理器中的任意一种。双微处理器和其它多处理器体系结构也可用作处理单元1204。
系统总线1208可以是若干种总线结构中的任一种,这些总线结构还可互连到存储器总线(带有或没有存储器控制器)、外围总线、以及使用各类可购买到的总线体系结构中的任一种的局部总线。系统存储器1206包括只读存储器(ROM)1210和随机存取存储器(RAM)1212。基本输入/输出系统(BIOS)储存在诸如ROM、EPROM、EEPROM等非易失性存储器1210中,其中BIOS包含帮助诸如在启动期间在计算机1202内的元件之间传输信息的基本例程。RAM 1212还可包括诸如静态RAM等高速RAM来用于高速缓存数据。
计算机1202还包括内置硬盘驱动器(HDD)1214(例如,EIDE、SATA),该内置硬盘驱动器1214还可被配置成在合适的机壳(未示出)中外部使用;磁软盘驱动器(FDD)1216(例如,从可移动磁盘1218中读取或向其写入);以及光盘驱动器1220(例如,从CD-ROM盘1222中读取,或从诸如DVD等其它高容量光学介质中读取或向其写入)。硬盘驱动器1214、磁盘驱动器1216和光盘驱动器1220可分别通过硬盘驱动器接口1224、磁盘驱动器接口1226和光盘驱动器接口1228连接到系统总线1208。用于外置驱动器实现的接口1224包括通用串行总线(USB)和IEEE 1394接口技术中的至少一种或两者。其它外部驱动器连接技术在本发明所考虑的范围之内。
驱动器及其相关联的计算机可读介质提供了对数据、数据结构、计算机可执行指令等的非易失性存储。对于计算机1202,驱动器和介质容纳适当的数字格式的任何数据的存储。尽管以上对计算机可读介质的描述涉及HDD、可移动磁盘以及诸如CD或DVD等可移动光学介质,但是本领域的技术人员应当理解,示例性操作环境中也可使用可由计算机读取的任何其它类型的介质,诸如zip驱动器、磁带盒、闪存卡、盒式磁带等等,并且任何这样的介质可包含用于执行所公开的发明的方法的计算机可执行指令。
多个程序模块可储存在驱动器和RAM 1212中,包括操作系统1230、一个或多个应用程序1232、其它程序模块1234和程序数据1236。操作系统、应用程序、模块和/或数据的全部或部分也可被高速缓存在RAM 1212中。应该明白,本发明可以用各种市场上可购得的操作系统或操作系统的组合来实施。
应用程序1232和/或模块1234可以包括在此与例如代理组件102、驱动器组件108、代理服务器202、任务执行引擎304、多路复用器306、代理引擎406、同步组件408、调度器组件410、驱动器打包器500、策略驱动器502、层504、MLR组件602以及高速缓存组件606等相关联地描述的功能和性能。
用户可以通过一个或多个有线/无线输入设备,例如键盘1238和诸如鼠标1240等定点设备将命令和信息输入到计算机1202中。其它输入设备(未示出)可包括话筒、IR遥控器、操纵杆、游戏手柄、指示笔、触摸屏等等。这些和其它输入设备通常通过耦合到系统总线1204的输入设备接口1242连接到处理单元1208,但也可通过其它接口连接,如并行端口、IEEE1394串行端口、游戏端口、USB端口、IR接口等等。
监视器1244或其它类型的显示设备也经由接口,诸如视频适配器1246连接至系统总线1208。除了监视器1244之外,计算机通常包括诸如扬声器和打印机等的其它外围输出设备(未示出)。
计算机1202可使用经由有线和/或无线通信至一个或多个远程计算机,诸如远程计算机1248的逻辑连接在网络化环境中操作。远程计算机1248可以是工作站、服务器计算机、路由器、个人计算机、便携式计算机、基于微处理器的娱乐设备、对等设备或其它常见的网络节点,并且通常包括以上相对于计算机1202描述的许多或所有元件,尽管为简明起见仅示出了存储器/存储设备1250。所描绘的逻辑连接包括到局域网(LAN)1252和/或例如广域网(WAN)1254等更大的网络的有线/无线连接。这一LAN和WAN联网环境常见于办公室和公司,并且方便了诸如内联网等企业范围计算机网络,所有这些都可连接到例如因特网等全球通信网络。
当在LAN网络环境中使用时,计算机1202通过有线和/或无线通信网络接口或适配器1256连接到局域网1252。适配器1256可以方便到LAN1252的有线或无线通信,并且还可包括其上设置的用于与无线适配器1256通信的无线接入点。
当在WAN网络环境中使用时,计算机1202可包括调制解调器1258,或连接到WAN 1254上的通信服务器,或具有用于通过WAN 1254,诸如通过因特网建立通信的其它装置。或为内置或为外置以及有线或无线设备的调制解调器1258经由串行端口接口1242连接到系统总线1208。在网络化环境中,相对于计算机1202所描述的程序模块或其部分可以存储在远程存储器/存储设备1250中。应该理解,所示网络连接是示例性的,并且可以使用在计算机之间建立通信链路的其它手段。
计算机1202可用于与操作上设置在无线通信中的任何无线设备或实体通信,这些设备或实体例如有打印机、扫描仪、台式和/或便携式计算机、便携式数据助理、通信卫星、与无线可检测标签相关联的任何一个设备或位置(例如,公用电话亭、报亭、休息室)以及电话机。这至少包括Wi-Fi和蓝牙TM无线技术。由此,通信可以如对于常规网络那样是预定义结构,或者仅仅是至少两个设备之间的自组织(ad hoc)通信。
现在参考图13,示出了便于为获得后端服务而由代理服务器进行的移动客户更新的示例性计算环境1300的示意性框图。系统1300包括一个或多个客户机1302。客户机1302可以是硬件和/或软件(例如,线程、进程、计算设备)。客户机1302可例如通过使用本发明而容纳cookie和/或相关联的上下文信息。
系统1300还包括一个或多个服务器1304。服务器1304也可以是硬件和/或软件(例如,线程、进程、计算设备)。服务器1304可以例如通过使用本体系结构来容纳线程以执行变换。在客户机1302和服务器1304之间的一种可能的通信能够以适合在两个或多个计算机进程之间传输的数据分组的形式进行。数据分组可包括例如cookie和/或相关联的上下文信息。系统1300包括可以用来使客户机1302和服务器1304之间通信更容易的通信框架1306(例如,诸如因特网等全球通信网络)。
通信可经由有线(包括光纤)和/或无线技术来促进。客户机1302操作上被连接到可以用来存储对客户机1302本地的信息(例如,cookie和/或相关联的上下文信息)的一个或多个客户机数据存储1308。同样地,服务器1304可在操作上连接到可以用来存储对服务器1304本地的信息的一个或多个服务器数据存储1310。
上面描述的包括所公开的本发明的各示例。当然,描述每一个可以想到的组件和/或方法的组合是不可能的,但本领域内的普通技术人员应该认识到,许多其它组合和排列都是可能的。因此,本发明旨在涵盖所有这些落入所附权利要求书的精神和范围内的更改、修改和变化。
此外,就在说明书或权利要求书中使用术语“包括”而言,这一术语旨在以与术语“包含”在被用作权利要求书中的过渡词时所解释的相似的方式为包含性的。
Claims (19)
1.一种计算机实现的设备管理系统(100),包括:
用于存储移动客户机的设备状态的映像并且代表所述移动客户机异步地访问后端系统的任意服务的代理组件(102);以及
包括用于访问所述任意服务的驱动器的驱动器组件(108),所述任意服务被抽象为与所述移动客户机的设备状态相关联的任意任务;
其中所述代理组件基于与所述任意任务相关联的改变来更新所述移动客户机的所述设备状态的所述映像。
2.如权利要求1所述的系统,其特征在于,所述代理组件创建所述移动客户机的设备状态的虚拟客户机映像,所述虚拟客户机映像与所述代理组件相关联地存储,且所述代理组件基于对所述虚拟客户机映像的改变来访问所述任意服务。
3.如权利要求1所述的系统,其特征在于,所述移动客户机访问所述代理组件以接收对所述设备状态的改变。
4.如权利要求1所述的系统,其特征在于,还包括用于通过所述驱动器组件来提供对所述后端系统的任意服务的访问的多重访问组件。
5.如权利要求1所述的系统,其特征在于,所述后端系统包括服务,所述服务包括目录服务、更新服务和消息收发服务。
6.如权利要求1所述的系统,其特征在于,所述驱动器组件便于将所述服务抽象成供所述代理组件执行的任意任务。
7.如权利要求1所述的系统,其特征在于,还包括便于对所述移动客户机的设备状态的改变进行评估处理的高速缓存组件。
8.如权利要求1所述的系统,其特征在于,还包括用于调度所述代理组件何时访问所述服务以便进行任务处理的调度组件。
9.如权利要求1所述的系统,其特征在于,所述移动客户机使用开放移动联盟的基于XML的协议来与所述代理组件通信。
10.如权利要求1所述的系统,其特征在于,还包括采用基于概率和/或基于统计的分析来预测或推断期望自动执行的动作的机器学习和推理组件。
11.一种管理设备的计算机实现的方法,包括:
代表移动设备访问来自后端系统的任意服务(700);
通过服务驱动器将所述任意服务的服务信息抽象为任务以供在代理服务器处执行(702);
在代理服务器处存储所述移动设备的设备状态的映像(704),所述映像包括所述服务信息;以及
基于与所述任意服务相关联的改变来更新所述设备状态的映像(706),其中当所述移动设备连接到所述代理服务器时自动地从所述设备映像更新所述移动设备上的设备状态。
12.如权利要求11所述的方法,其特征在于,还包括批量地处理所述任务。
13.如权利要求11所述的方法,其特征在于,还包括当所述移动设备离线时执行所述任务来以最新客户机状态更新所述映像。
14.如权利要求11所述的方法,其特征在于,还包括将要使用对应于所述任意服务的所述服务驱动器执行的任务排队。
15.如权利要求11所述的方法,其特征在于,还包括异步地从所述代理服务器访问多个后端系统,其中所述后端系统与所述任意服务相关联。
16.如权利要求11所述的方法,其特征在于,还包括针对所述设备映像来执行评估测试以确定所述任意服务是否与所述移动设备相兼容。
17.如权利要求16所述的方法,其特征在于,还包括基于所述评估测试来延迟所述移动设备上的状态的更新。
18.如权利要求11所述的方法,其特征在于,还包括在更新所述移动设备上的状态之前高速缓存设备配置值以便对所述设备状态进行条件评估。
19.一种计算机实现的系统,包括:
用于代表移动设备访问来自后端系统的任意服务的计算机实现的装置(202);
用于将所述任意服务的服务信息抽象为任务的计算机实现的装置(108);
用于将所述任务写入数据库并从所述数据库读取所述任务以供在代理服务器处执行的计算机实现的装置(304);
用于在所述代理服务器处存储所述移动设备的设备状态的映像的计算机实现的装置(412),所述映像包括所述服务信息;以及
用于基于与所述任意服务相关联的改变来更新所述移动设备的设备状态的映像的计算机实现的装置(304),其中当所述移动设备连接到所述代理服务器时自动地从所述设备映像更新所述移动设备上的设备状态。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US11/698,639 US7987471B2 (en) | 2007-01-26 | 2007-01-26 | Mobile device management proxy system |
US11/698,639 | 2007-01-26 | ||
PCT/US2007/088919 WO2008091472A1 (en) | 2007-01-26 | 2007-12-27 | Mobile device management proxy system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101589599A CN101589599A (zh) | 2009-11-25 |
CN101589599B true CN101589599B (zh) | 2013-02-13 |
Family
ID=39644776
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007800505269A Active CN101589599B (zh) | 2007-01-26 | 2007-12-27 | 移动设备管理代理系统 |
Country Status (7)
Country | Link |
---|---|
US (1) | US7987471B2 (zh) |
EP (1) | EP2106669B1 (zh) |
JP (1) | JP4875756B2 (zh) |
KR (1) | KR101301333B1 (zh) |
CN (1) | CN101589599B (zh) |
TW (1) | TWI441477B (zh) |
WO (1) | WO2008091472A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9858550B2 (en) | 2011-12-08 | 2018-01-02 | Microsoft Technology Licensing, Llc | Techniques to manage remote events |
Families Citing this family (94)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2003058879A1 (en) | 2002-01-08 | 2003-07-17 | Seven Networks, Inc. | Secure transport for mobile communication network |
US7917468B2 (en) | 2005-08-01 | 2011-03-29 | Seven Networks, Inc. | Linking of personal information management data |
US8468126B2 (en) | 2005-08-01 | 2013-06-18 | Seven Networks, Inc. | Publishing data in an information community |
US7853563B2 (en) | 2005-08-01 | 2010-12-14 | Seven Networks, Inc. | Universal data aggregation |
WO2006045102A2 (en) | 2004-10-20 | 2006-04-27 | Seven Networks, Inc. | Method and apparatus for intercepting events in a communication system |
US7706781B2 (en) | 2004-11-22 | 2010-04-27 | Seven Networks International Oy | Data security in a mobile e-mail service |
FI117152B (fi) | 2004-12-03 | 2006-06-30 | Seven Networks Internat Oy | Sähköpostiasetusten käyttöönotto matkaviestimelle |
US7877703B1 (en) | 2005-03-14 | 2011-01-25 | Seven Networks, Inc. | Intelligent rendering of information in a limited display environment |
US8438633B1 (en) | 2005-04-21 | 2013-05-07 | Seven Networks, Inc. | Flexible real-time inbox access |
WO2006136660A1 (en) | 2005-06-21 | 2006-12-28 | Seven Networks International Oy | Maintaining an ip connection in a mobile network |
US7769395B2 (en) | 2006-06-20 | 2010-08-03 | Seven Networks, Inc. | Location-based operations and messaging |
US20080104269A1 (en) * | 2006-10-30 | 2008-05-01 | Research In Motion Limited | Method and apparatus for web browser page fragmentation |
US8693494B2 (en) | 2007-06-01 | 2014-04-08 | Seven Networks, Inc. | Polling |
US8805425B2 (en) | 2007-06-01 | 2014-08-12 | Seven Networks, Inc. | Integrated messaging |
US8364181B2 (en) | 2007-12-10 | 2013-01-29 | Seven Networks, Inc. | Electronic-mail filtering for mobile devices |
US9002828B2 (en) | 2007-12-13 | 2015-04-07 | Seven Networks, Inc. | Predictive content delivery |
US8107921B2 (en) | 2008-01-11 | 2012-01-31 | Seven Networks, Inc. | Mobile virtual network operator |
US8862657B2 (en) | 2008-01-25 | 2014-10-14 | Seven Networks, Inc. | Policy based content service |
US20090193338A1 (en) | 2008-01-28 | 2009-07-30 | Trevor Fiatal | Reducing network and battery consumption during content delivery and playback |
US9141483B1 (en) | 2008-03-27 | 2015-09-22 | Dropbox, Inc. | System and method for multi-tier synchronization |
US8787947B2 (en) | 2008-06-18 | 2014-07-22 | Seven Networks, Inc. | Application discovery on mobile devices |
US8078158B2 (en) | 2008-06-26 | 2011-12-13 | Seven Networks, Inc. | Provisioning applications for a mobile device |
US8560713B2 (en) * | 2008-07-31 | 2013-10-15 | Sap Ag | Method and system for mediating enterprise service access for smart devices |
US8224850B2 (en) * | 2008-08-13 | 2012-07-17 | Motorola Mobility, Inc. | Method and system for determining users that satisfy desired conditions |
US8181178B2 (en) * | 2008-08-14 | 2012-05-15 | Yahoo! Inc. | Online batch execution |
US8767688B2 (en) * | 2008-09-23 | 2014-07-01 | Lu Qian | Virtual network image system for wireless local area network services |
US8909759B2 (en) | 2008-10-10 | 2014-12-09 | Seven Networks, Inc. | Bandwidth measurement |
US9014640B2 (en) * | 2008-10-31 | 2015-04-21 | Qualcomm Incorporated | Wake-up trigger for implementation of target actions |
WO2010092585A1 (en) * | 2009-02-16 | 2010-08-19 | Communitake Technologies Ltd. | A system, a method and a computer program product for automated remote control |
US9665729B2 (en) * | 2009-04-13 | 2017-05-30 | Microsoft Technology Licensing, Llc | Revocation of application on mobile device |
CN101924645B (zh) * | 2009-06-12 | 2013-07-10 | 华为技术有限公司 | 一种设备管理方法、装置及系统 |
US20110047253A1 (en) * | 2009-08-19 | 2011-02-24 | Samsung Electronics Co. Ltd. | Techniques for controlling gateway functionality to support device management in a communication system |
US8838783B2 (en) | 2010-07-26 | 2014-09-16 | Seven Networks, Inc. | Distributed caching for resource and mobile network traffic management |
WO2012018556A2 (en) | 2010-07-26 | 2012-02-09 | Ari Backholm | Mobile application traffic optimization |
JP5620578B2 (ja) | 2010-07-26 | 2014-11-05 | セブン ネットワークス インコーポレイテッド | 複数のアプリケーションにわたるモバイルネットワークトラフィック調整 |
GB2495877B (en) | 2010-07-26 | 2013-10-02 | Seven Networks Inc | Distributed implementation of dynamic wireless traffic policy |
US9060032B2 (en) | 2010-11-01 | 2015-06-16 | Seven Networks, Inc. | Selective data compression by a distributed traffic management system to reduce mobile data traffic and signaling traffic |
US8484314B2 (en) | 2010-11-01 | 2013-07-09 | Seven Networks, Inc. | Distributed caching in a wireless network of content delivered for a mobile application over a long-held request |
US8903954B2 (en) | 2010-11-22 | 2014-12-02 | Seven Networks, Inc. | Optimization of resource polling intervals to satisfy mobile device requests |
US8843153B2 (en) | 2010-11-01 | 2014-09-23 | Seven Networks, Inc. | Mobile traffic categorization and policy for network use optimization while preserving user experience |
US9330196B2 (en) | 2010-11-01 | 2016-05-03 | Seven Networks, Llc | Wireless traffic management system cache optimization using http headers |
CN103620576B (zh) * | 2010-11-01 | 2016-11-09 | 七网络公司 | 适用于移动应用程序行为和网络条件的缓存 |
US8166164B1 (en) | 2010-11-01 | 2012-04-24 | Seven Networks, Inc. | Application and network-based long poll request detection and cacheability assessment therefor |
WO2012061430A2 (en) | 2010-11-01 | 2012-05-10 | Michael Luna | Distributed management of keep-alive message signaling for mobile network resource conservation and optimization |
WO2012060995A2 (en) | 2010-11-01 | 2012-05-10 | Michael Luna | Distributed caching in a wireless network of content delivered for a mobile application over a long-held request |
US8495195B1 (en) * | 2010-11-04 | 2013-07-23 | Sprint Communications Company L.P. | Cookie preservation when switching devices |
CA2798523C (en) | 2010-11-22 | 2015-02-24 | Seven Networks, Inc. | Aligning data transfer to optimize connections established for transmission over a wireless network |
EP2661697B1 (en) | 2011-01-07 | 2018-11-21 | Seven Networks, LLC | System and method for reduction of mobile network traffic used for domain name system (dns) queries |
US9038915B2 (en) | 2011-01-31 | 2015-05-26 | Metrologic Instruments, Inc. | Pre-paid usage system for encoded information reading terminals |
US20130007625A1 (en) * | 2011-03-21 | 2013-01-03 | Victor Lozinski | Apparatus, system, and method for connecting mobile devices to a backend server in an enterprise software environment and initiating a business process |
WO2012145541A2 (en) | 2011-04-19 | 2012-10-26 | Seven Networks, Inc. | Social caching for device resource sharing and management |
EP2556441B8 (en) | 2011-04-27 | 2015-11-25 | Seven Networks, LLC | System and method for making requests on behalf of a mobile device based on atomic processes for mobile network traffic relief |
EP2702500B1 (en) | 2011-04-27 | 2017-07-19 | Seven Networks, LLC | Detecting and preserving state for satisfying application requests in a distributed proxy and cache system |
US9239800B2 (en) | 2011-07-27 | 2016-01-19 | Seven Networks, Llc | Automatic generation and distribution of policy information regarding malicious mobile traffic in a wireless network |
US10592865B2 (en) * | 2011-08-05 | 2020-03-17 | Genband Us Llc | Methods, systems, and computer readable media for managing social interaction histories |
US8781475B1 (en) | 2012-08-24 | 2014-07-15 | Utility Associates, Inc. | Method for switching from a first cellular network to a second cellular network |
US8918503B2 (en) | 2011-12-06 | 2014-12-23 | Seven Networks, Inc. | Optimization of mobile traffic directed to private networks and operator configurability thereof |
EP2789138B1 (en) | 2011-12-06 | 2016-09-14 | Seven Networks, LLC | A mobile device and method to utilize the failover mechanisms for fault tolerance provided for mobile traffic management and network/device resource conservation |
US9277443B2 (en) | 2011-12-07 | 2016-03-01 | Seven Networks, Llc | Radio-awareness of mobile device for sending server-side control signals using a wireless network optimized transport protocol |
EP2788889A4 (en) * | 2011-12-07 | 2015-08-12 | Seven Networks Inc | FLEXIBLE AND DYNAMIC INTEGRATION SCHEMES OF A TRAFFIC MANAGEMENT SYSTEM WITH VARIOUS NETWORK OPERATORS TO REDUCE NETWORK TRAFFIC |
EP2792188B1 (en) | 2011-12-14 | 2019-03-20 | Seven Networks, LLC | Mobile network reporting and usage analytics system and method using aggregation of data in a distributed traffic optimization system |
US9832095B2 (en) | 2011-12-14 | 2017-11-28 | Seven Networks, Llc | Operation modes for mobile traffic optimization and concurrent management of optimized and non-optimized traffic |
US8861354B2 (en) | 2011-12-14 | 2014-10-14 | Seven Networks, Inc. | Hierarchies and categories for management and deployment of policies for distributed wireless traffic optimization |
CN102448147B (zh) * | 2011-12-21 | 2014-12-03 | 华为技术有限公司 | 一种无线业务接入方法和装置 |
WO2013103988A1 (en) | 2012-01-05 | 2013-07-11 | Seven Networks, Inc. | Detection and management of user interactions with foreground applications on a mobile device in distributed caching |
WO2013116856A1 (en) | 2012-02-02 | 2013-08-08 | Seven Networks, Inc. | Dynamic categorization of applications for network access in a mobile network |
WO2013116852A1 (en) | 2012-02-03 | 2013-08-08 | Seven Networks, Inc. | User as an end point for profiling and optimizing the delivery of content and data in a wireless network |
US8812695B2 (en) | 2012-04-09 | 2014-08-19 | Seven Networks, Inc. | Method and system for management of a virtual network connection without heartbeat messages |
WO2013155208A1 (en) | 2012-04-10 | 2013-10-17 | Seven Networks, Inc. | Intelligent customer service/call center services enhanced using real-time and historical mobile application and traffic-related statistics collected by a distributed caching system in a mobile network |
US9313252B2 (en) | 2012-04-20 | 2016-04-12 | Microsoft Technology Licensing, Llc | Binding crud-type protocols in distributed agreement protocols |
WO2013172958A1 (en) | 2012-05-16 | 2013-11-21 | Spydrsafe Mobile Security, Inc. | Systems and methods for providing and managing distributed enclaves |
GB2503441A (en) | 2012-06-26 | 2014-01-01 | Ibm | Managing mobile devices using other mobile devices based on loation |
WO2014011216A1 (en) | 2012-07-13 | 2014-01-16 | Seven Networks, Inc. | Dynamic bandwidth adjustment for browsing or streaming activity in a wireless network based on prediction of user behavior when interacting with mobile applications |
EP2704396B1 (en) * | 2012-09-04 | 2019-07-31 | Tata Consultancy Services Limited | System and method facilitating communication in an adaptive virtual environment |
US9161258B2 (en) | 2012-10-24 | 2015-10-13 | Seven Networks, Llc | Optimized and selective management of policy deployment to mobile clients in a congested network to prevent further aggravation of network congestion |
US9307493B2 (en) | 2012-12-20 | 2016-04-05 | Seven Networks, Llc | Systems and methods for application management of mobile device radio state promotion and demotion |
US9241314B2 (en) | 2013-01-23 | 2016-01-19 | Seven Networks, Llc | Mobile device with application or context aware fast dormancy |
US8874761B2 (en) | 2013-01-25 | 2014-10-28 | Seven Networks, Inc. | Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols |
CN103974312A (zh) * | 2013-02-05 | 2014-08-06 | 中国移动通信集团公司 | 一种无线局域网wlan设备测试方法、装置及系统 |
US8750123B1 (en) | 2013-03-11 | 2014-06-10 | Seven Networks, Inc. | Mobile device equipped with mobile network congestion recognition to make intelligent decisions regarding connecting to an operator network |
US9559902B2 (en) * | 2013-06-02 | 2017-01-31 | Microsoft Technology Licensing, Llc | Distributed state model for system configuration synchronization |
US9065765B2 (en) | 2013-07-22 | 2015-06-23 | Seven Networks, Inc. | Proxy server associated with a mobile carrier for enhancing mobile traffic management in a mobile network |
WO2015089483A1 (en) * | 2013-12-12 | 2015-06-18 | Mobile Iron, Inc. | Application synchornization |
US20150312102A1 (en) * | 2014-02-18 | 2015-10-29 | Seven Networks, Inc. | Policy management for signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols |
US9954728B2 (en) * | 2014-04-11 | 2018-04-24 | Arxan Technologies, Inc. | Management of mobile devices in a network environment |
US9661440B2 (en) | 2014-07-25 | 2017-05-23 | Qualcomm Incorporated | Methods and systems for triggering efficient application synchronization |
CN104881327B (zh) * | 2015-06-01 | 2018-08-24 | 曙光信息产业(北京)有限公司 | 集群的作业流管理方法和装置 |
US9606817B1 (en) | 2015-06-23 | 2017-03-28 | Symantec Corporation | Systems and methods for virtualizing internet of things (IoT) devices |
US10136247B2 (en) * | 2015-10-20 | 2018-11-20 | Microsoft Technology Licensing, Llc | Physical and virtual phone mobility |
US10331434B2 (en) * | 2016-12-21 | 2019-06-25 | Quanta Computer Inc. | System and method for remotely updating firmware |
US20200028879A1 (en) | 2018-07-17 | 2020-01-23 | Microsoft Technology Licensing, Llc | Queryless device configuration determination-based techniques for mobile device management |
US11184223B2 (en) * | 2018-07-31 | 2021-11-23 | Microsoft Technology Licensing, Llc | Implementation of compliance settings by a mobile device for compliance with a configuration scenario |
US11811604B2 (en) * | 2021-03-17 | 2023-11-07 | Stripe, Inc. | Cross-platform contract validation |
WO2024103083A1 (en) | 2022-11-14 | 2024-05-23 | Xephor Solutions GmbH | Computing system |
Family Cites Families (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6233577B1 (en) | 1998-02-17 | 2001-05-15 | Phone.Com, Inc. | Centralized certificate management system for two-way interactive communication devices in data networks |
US6311206B1 (en) | 1999-01-13 | 2001-10-30 | International Business Machines Corporation | Method and apparatus for providing awareness-triggered push |
US6480901B1 (en) * | 1999-07-09 | 2002-11-12 | Lsi Logic Corporation | System for monitoring and managing devices on a network from a management station via a proxy server that provides protocol converter |
WO2001075663A2 (en) * | 2000-03-31 | 2001-10-11 | Mdsi Mobile Data Solutions Inc. | Systems and methods for enhancing connectivity |
JP2002007238A (ja) | 2000-06-21 | 2002-01-11 | Nec Corp | 移動通信システム及びそのゲートウェイ選択方法 |
AU2001289212A1 (en) * | 2000-09-11 | 2002-03-26 | Viafone, Inc. | Method and system for integrating applications and mobile networks |
US6895444B1 (en) * | 2000-09-15 | 2005-05-17 | Motorola, Inc. | Service framework with local proxy for representing remote services |
US6944760B2 (en) | 2001-05-24 | 2005-09-13 | Openwave Systems Inc. | Method and apparatus for protecting identities of mobile devices on a wireless network |
KR100682377B1 (ko) * | 2001-05-25 | 2007-02-15 | 삼성전자주식회사 | 유기 전계발광 디바이스 및 이의 제조 방법 |
US20030017826A1 (en) * | 2001-07-17 | 2003-01-23 | Dan Fishman | Short-range wireless architecture |
US7149813B2 (en) * | 2001-08-14 | 2006-12-12 | Microsoft Corporation | Method and system for synchronizing mobile devices |
US6697839B2 (en) | 2001-11-19 | 2004-02-24 | Oracle International Corporation | End-to-end mobile commerce modules |
US20040215711A1 (en) | 2002-03-14 | 2004-10-28 | Openwave Systems Inc. | Mobile services platform architecture |
JP4149199B2 (ja) * | 2002-06-05 | 2008-09-10 | 富士通株式会社 | 携帯端末補助装置、データ同期方法および携帯端末装置 |
US6978453B2 (en) | 2002-10-21 | 2005-12-20 | Bitfone Corporation | System with required enhancements to syncML DM environment to support firmware updates |
US8356067B2 (en) * | 2002-10-24 | 2013-01-15 | Intel Corporation | Servicing device aggregates |
US8694620B2 (en) | 2003-09-08 | 2014-04-08 | Microsoft Corporation | System and method for an OMA DM extension to manage mobile device configuration settings |
US7324473B2 (en) * | 2003-10-07 | 2008-01-29 | Accenture Global Services Gmbh | Connector gateway |
US7523155B2 (en) | 2004-03-18 | 2009-04-21 | International Business Machines Corporation | Method, system and program product for using open mobile alliance (OMA) alerts to send client commands/requests to an OMA DM server |
US7995506B2 (en) * | 2004-03-23 | 2011-08-09 | Flash Networks Ltd. | System and method for integrating information services through cellular network |
US20050220080A1 (en) * | 2004-04-01 | 2005-10-06 | Nokia Corporation | System, method, computer program product, and business method for device group management using virtual device domain |
US7613881B2 (en) | 2004-06-08 | 2009-11-03 | Dartdevices Interop Corporation | Method and system for configuring and using virtual pointers to access one or more independent address spaces |
KR100641238B1 (ko) | 2004-07-09 | 2006-11-02 | 엘지전자 주식회사 | 장치 관리 시스템 및 그 시스템에서의 장치관리 명령스케줄링 방법 |
US7844964B2 (en) | 2004-09-23 | 2010-11-30 | Hewlett Packard Development Company, L.P. | Network for mass distribution of configuration, firmware and software updates |
WO2006049276A1 (ja) * | 2004-11-08 | 2006-05-11 | iWaveDesign, Inc. | データ伝送システム |
US20060217111A1 (en) | 2005-02-11 | 2006-09-28 | Sunil Marolia | Network for customer care and distribution of firmware and software updates |
US20060200814A1 (en) | 2005-03-02 | 2006-09-07 | Nokia Corporation | Software distribution with activation control |
US20060200503A1 (en) * | 2005-03-03 | 2006-09-07 | Nokia Corporation | Modifying back-end web server documents at an intermediary server using directives |
US7716661B2 (en) | 2005-03-16 | 2010-05-11 | Microsoft Corporation | Embedded device update service |
EP1705832A3 (en) * | 2005-03-22 | 2011-08-03 | Hewlett-Packard Development Company, L.P. | Device profile retrieval in a management network |
WO2006110998A1 (en) * | 2005-04-18 | 2006-10-26 | Research In Motion Limited | System and method for discovering component applications |
US20060271662A1 (en) * | 2005-04-18 | 2006-11-30 | Brindusa Fritsch | System and method for enabling group subscription for asynchronous push-based applications on a wireless device |
US8060554B2 (en) * | 2005-04-18 | 2011-11-15 | Research In Motion Limited | System and method for enabling asynchronous push-based applications on a wireless device |
-
2007
- 2007-01-26 US US11/698,639 patent/US7987471B2/en not_active Expired - Fee Related
- 2007-12-27 WO PCT/US2007/088919 patent/WO2008091472A1/en active Application Filing
- 2007-12-27 JP JP2009547249A patent/JP4875756B2/ja not_active Expired - Fee Related
- 2007-12-27 CN CN2007800505269A patent/CN101589599B/zh active Active
- 2007-12-27 EP EP07869964.2A patent/EP2106669B1/en active Active
- 2007-12-27 KR KR1020097015702A patent/KR101301333B1/ko active IP Right Grant
-
2008
- 2008-01-04 TW TW097100422A patent/TWI441477B/zh not_active IP Right Cessation
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9858550B2 (en) | 2011-12-08 | 2018-01-02 | Microsoft Technology Licensing, Llc | Techniques to manage remote events |
Also Published As
Publication number | Publication date |
---|---|
TW200838213A (en) | 2008-09-16 |
EP2106669A1 (en) | 2009-10-07 |
KR101301333B1 (ko) | 2013-08-29 |
WO2008091472A1 (en) | 2008-07-31 |
US20080183800A1 (en) | 2008-07-31 |
US7987471B2 (en) | 2011-07-26 |
KR20090111824A (ko) | 2009-10-27 |
TWI441477B (zh) | 2014-06-11 |
EP2106669B1 (en) | 2014-11-12 |
EP2106669A4 (en) | 2013-02-06 |
JP4875756B2 (ja) | 2012-02-15 |
JP2010517165A (ja) | 2010-05-20 |
CN101589599A (zh) | 2009-11-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101589599B (zh) | 移动设备管理代理系统 | |
US10429825B2 (en) | Collaborative automation platform | |
CN102750266B (zh) | 管理文件转换的技术 | |
CN102460393B (zh) | 用于在虚拟存储资源之间建立云桥的系统和方法 | |
US6829630B1 (en) | Mechanisms for web-object event/state-driven communication between networked devices | |
US20230164099A1 (en) | Predictive resolutions for tickets using semi-supervised machine learning | |
US20030172175A1 (en) | System for standardizing updates of data on a plurality of electronic devices | |
CN101809561B (zh) | 同步数据和元数据的交换 | |
CN102414692A (zh) | 副本数据的动态安置 | |
CN101809536A (zh) | 经由移动设备的多os(操作系统)引导 | |
CN101346972A (zh) | 用于收集数据以便特征化http会话工作负荷的方法和装置 | |
CN102523242B (zh) | 用于计算机群集中的目标状态通信的方法和系统 | |
WO2003079144A2 (en) | System for standardizing updates of data on a plurality of electronic devices | |
CN1871584B (zh) | 在无线设备上灵活主持应用程序的系统和方法 | |
CN102150151B (zh) | web应用程序的异步队列的消息收发 | |
CN111885177B (zh) | 一种基于云计算技术的生物信息分析云计算方法、系统 | |
Bolívar et al. | Complexity analysis of a matchmaker based on hidden Markov model for decentralised grid scheduling | |
JP2023538941A (ja) | コンテナ化された環境のインテリジェントバックアップ及び復元 | |
Singhvi et al. | Prophet: a contextual information system framework | |
US11695853B1 (en) | Content management systems providing zero recovery point objective | |
US11868751B2 (en) | Intelligent interceptor for SaaS cloud migration and integration | |
US11513817B2 (en) | Preventing disruption within information technology environments | |
US20240070574A1 (en) | Optimal selection of a service request response team | |
CN112883184A (zh) | 对话管理方法、设备、计算机可读存储介质及程序产品 | |
TEAM | CHART II System Architecture |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
ASS | Succession or assignment of patent right |
Owner name: MICROSOFT TECHNOLOGY LICENSING LLC Free format text: FORMER OWNER: MICROSOFT CORP. Effective date: 20150601 |
|
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20150601 Address after: Washington State Patentee after: Micro soft technique license Co., Ltd Address before: Washington State Patentee before: Microsoft Corp. |