在设备管理中同步操作时间的方法及装置的制作方法

文档序号:7619847阅读:128来源:国知局
专利名称:在设备管理中同步操作时间的方法及装置的制作方法
技术领域
本发明涉及通信领域的设备管理技术,尤其涉及在设备管理中同步操作时间的方法及装置。
背景技术
移动终端是整个移动运营服务体系中重要组成部分,随着终端功能的日趋复杂,终端软件出现问题的可能性显著增加。未来运营商之间的竞争日趋激烈,如何有效的保证用户体验、提高用户忠诚度,保持高效的服务质量以及低成本的设备维护已经成为运营商、终端厂商的一个重要的关注点。开放移动联盟设备管理(OMA DM)规范的目标正在与此。
DM规范是一种管理、诊断、维护移动终端设备的技术。移动终端包括手机终端、掌上电脑、笔记本电脑、嵌入式设备、车载系统等,同时不排除任何其它移动设备。
目前的OMA DM规范支持服务器下发一些基于时间触发的任务,如陷阱触发(Trap)、定时(Scheduling)、诊断(Diagnostic)等,由DMS预定一些任务和触发时间下载到终端设备,当终端的时间等于预定任务的触发时间时,自动触发预定任务。
设备管理(DM)中涉及定时触发的需求很多,例如Trap、Scheduling、Diagnostic等,由于目前在终端设备与设备管理服务器之间没有时间同步机制,无法保证服务器时间和设备终端时间保持一致,导致服务器指定的定时执行的操作可能无法准确的在服务器指定的时间点触发,这可能会导致一些不可预测的问题,例如软件升级时要求终端完成的最后期限(Deadline)的设置,会因为时间不同步而产生错误(错过更新时间)。

发明内容
本发明提供一种在设备管理中同步操作时间的方法及装置,以解决现有技术中因设备管理服务器与终端设备之间因时间不同步,导致终端设备不能准确的在设备管理服务器所指定的时间点触发操作的问题。
实现本发明的技术方案如下一种在设备管理中同步操作时间的方法,包括如下步骤根据设备管理服务器的本地时间和终端设备的本地时间确定该两个设备之间的时间差;终端设备根据所述时间差,将以设备管理服务器的本地时间为参照的执行操作的指定时间转换为以终端设备本地时间为参照的执行操作的实际时间,并按该实际时间触发操作。
其中终端设备向设备管理服务器发送一个时间同步请求,由设备管理服务器向终端设备发送一个响应消息并携带本地的发送时间,终端设备根据收到所述响应消息时的本地时间和该响应消息中的发送时间确定两个设备之间的时间差。
设备管理服务器在下发的命令或消息中携带本地的发送时间,终端设备根据收到所述命令或消息时的本地时间确定两个设备之间的时间差。
终端设备收到设备管理服务器下发的任务列表时,将任务列表中各操作的触发时间修改为转换后的实际时间;或者,终端设备收到设备管理服务器下发的任务列表时,建立任务列表中各操作的触发时间和与该时间同步的实际时间之间的映射关系。
终端设备在监控任务列表中的操作时,将以设备管理服务器的本地时间为参照的执行操作的指定时间转换为以终端设备本地时间为参照的执行操作的实际时间,并以该实际时间与本地时间比较确定是否触发操作。
一种在设备管理中同步操作时间的方法,该方法由设备管理服务器向终端下发操作命令,终端设备按操作命令中指定的时间触发操作;其中,设备管理服务器在下发所述操作命令前或下发所述操作命令后,指示终端设备依据设备管理服务器的本地时间设置终端设备的本地时间,使以终端设备的本地时间为参照触发操作的实际时间与以设备管理服务器的本地时间为参照指定执行操作的时间保持同步。
一种终端设备,包括设备管理代理模块,终端设备通过该设备管理代理模块与设备管理服务器交互;其中该终端设备还包括代理时间接口,设置在所述设备管理代理模块内,用于确定终端设备与设备管理服务器之间的时间差;同步模块,与所述代理时间接口连接,用于根据所述时间差将设备管理代理模块进行管理和应用的时间调整为设备管理服务器的同步时间。
本发明通过确定设备管理服务器与终端设备之间的时间差,使终端设备以本地时间为参照的执行操作的实际时间与设备管理服务器规定的时间保持同步,有效避免了因时间差异可能带来的问题。


图1A、图1B为本发明中确定时间差的流程图;图2A为本发明中设备管理系统的第一结构示意图;图2B为本发明中同步时间的流程图;图3为本发明中设备管理系统的第二结构示意图;图4为本发明中设置终端时钟的流程图;图5为本发明设备管理系统的第三结构示意图。
具体实施例方式
在设备管理系统中,为了能够使终端设备执行操作的时间与设备管理服务器规定的时间同步,本发明根据设备管理服务器和终端设备中,其中一个设备发送命令或消息时的本地时间与另一个设备收到所述命令或消息时的本地时间,计算出终端设备与管理服务器备之间的时间差;然后,终端设备根据接收到操作命令时的本地时间、所述时间差和操作命令中以设备管理服务器的本地时间为参照的执行操作(或称任务,以下同)时间,确定以本地时间为参照的执行操作的实际时间,终端设备按该实际时间触发操作,从而保证该实际时间与设备管理服务器指定的执行操作时间同步。
对时间差计算可以采用以下方式A、忽略传输延时的时间差计算方法一、终端设备的设备管理代理(DM Agent)模块给设备管理服务器(DMS)发起一个时间同步请求,设备管理服务器在收到请求后回送一个服务器时间(忽略传输延时)。DM Agent模块依据此回送时间计算DMS与终端时钟的时间差。例如终端向服务器发起时间同步请求,服务器回送的时间为200506081750(2005年6月8日17:50);终端接收到回送响应的时间点为2005年6月8日18:30;DMAgent计算出的时间差为(本例以终端作为基准)(2005.06.0817:50)-(2005.06.0818:30)=-40分钟(表示终端设备的时间比DMS快40分钟)。
方法二、DMS下发任务时,在任务中附带服务器的时间戳,DM Agent模块依据此时间戳计算DMS与终端时钟的时间差。例如任务所带的DMS下发时间为200506081750(2005年6月8日17:50);终端在接收到任务时的时间为2005年6月8日18:30;DMAgent计算出的时间差为(本例以终端作为基准)(2005.06.08 17:50)-(2005.06.08 18:30)=-40分钟。
B、消除传输延时的时间差计算方法一、DM Agent给服务器发起一个时间同步请求,服务器在收到请求后回送一个服务器时间。DM Agent依据此回送时间计算DMS与终端时钟的时间差。为了消除传输延时,DM Agent计算请求时和接收到服务器回送的消息时的时间间隔(忽略服务器处理的时间),除以2后得出传输延时,然后利用此传输延时修正时间差。例如,如图1A所示终端向服务器发起时间同步请求的时间为2005.06.08 18:30:35服务器回送的时间戳为20050608175032(2005年6月8日 17:50:32);终端接收到回送时间的时间点为2005.06.08 18:30:39;延时计算利用两次的终端时间计算(18:30:39-18:30:35)/2=2秒;DM Agent计算出的时间差为(本例以终端作为基准)(2005.06.0817:50:32)-(2005.06.0818:30:39)=-40分7秒;传输延时修正后的时间差为-40分7秒-2秒=-40分9秒。
方法二、DMS在下发任务时,在任务中附带服务器下发时的时间戳,DMAgent模块依据此时间戳计算DMS与终端时钟的时间差。为了消除传输延时,DM Agent在接收到任务后发送一个消息给服务器,请求服务器在接到消息后立即发送一个确认消息给终端,DM Agent在接到服务器发的第二个消息后,计算出两次消息的时间间隔,除以2后得出传输延时,然后利用此传输延时修正时间差。例如,如图1B所示DM Agent计算的包含传输延时的时间差为(本例已终端作为基准)(2005.06.08 17:50:28)-(2005.06.08 18:30:35)=-40分7秒;延时计算可以利用两次的服务器时间计算(17:50:32-17:50:28)/2=2秒;或者,利用两次的终端时间计算(18:30:39-18:30:35)/2=2秒;
利用传输延时修正后的时间差为-40分7秒-2秒=-40分9秒。
在计算出终端设备与DMS的时间差之后,时间差值可保存在终端,由DMAgent管理和维护。当终端设备时间发生调整,例如用户手动修改终端时间、设备管理服务器远程设定终端设备的时间、某些应用软件调整终端时间、时区的调整或其它手段调整终端时间等,服务器时间发生调整、服务器与终端时间差的定时修正等,这时都需要更新时间差。
更新时间差可以采用以下方式(1)终端相对调整在终端进行时间调整后,DM Agent计算终端时钟的调整量,然后利用此调整量重新调整终端和服务器时间差值。例如DM Agent保存的服务器和终端的时间差值为-47分9秒;终端调整前的时间为2005.06.08 18:22:00;终端调整后的时间为2005.06.08 18:56:00;终端的时钟调整量为调整前的时间-调整后的时间=-34分;根据前后的调整量修正终端和服务器的时间差值为(-34)+(-47分9秒)=(-1小时21分9秒)。
(2)重新协商时间差在终端时间发生调整后,利用上述时间差计算方法,重新计算时间差。
(3)定期修正时间差使用DM协议的定时机制(Scheduling),利用上述描述的时间差计算方法定时更新时间差。
在设备管理服务器和设备终端之间正常维护时间差的基础上,可以在终端设备和设备管理服务器之间同步时间。其实现方式可以在终端设备上增加同步模块和代理时间接口,其中,代理时间接口设置在所述设备管理代理模块内,用于按前述方式确定终端设备与设备管理服务器之间的时间差;同步模块与所述代理时间接口连接,用于根据所述时间差将设备管理代理模块进行管理和应用的时间调整为设备管理服务器的同步时间。实现同步的方式可以采用以下几种方式1、软同步软同步是指在比较终端本地时间和操作触发时间时,为了具有可比性而进行时间调整,可以是将读取的本地时间用时间差进行调整,也可以是将读取的操作触发时间利用时间差进行调整,整个调整的过程并不真正修改终端本地时间,也不真正修改任务的触发时间。
如图2A所示,在该设备管理系统中,同步模块为一调整器,设置在终端设备的时间系统和DM Agent模块的时间接口之间,代理时间接口负责计算终端设备时间系统和服务器时间系统之间的时间差。调整器根据代理时间接口计算的时间差,调整设备代理模块和设备时间系统的时间偏差。
每当DM Agent模块需要涉及时间操作(调用系统时间)时,先经过时间调整器,根据时间差,调整为服务器同步时间。在DM Agent管理应用中,所有时间描述都是和服务器同步的,即DM Agent和DMS维护相同的时间域。在向用户显示任务情况时,显示任务相对终端设备的时间,以本地时间为基准。如果用户修改了任务触发时间,需要利用时间差转换为服务器时间。
同步原则是DM Agent模块管理应用的时间描述使用服务器时间,用户能感受到的时间和设备终端时间系统一致。调整器在两个系统之间起到协调作用。
在这种实现方式中,调整器并不真正修改终端时钟的时间值。如图2B所示,DM Agent模块获取设备时间的调整过程如下步骤1、DM Agent模块从调整器获取终端设备的当前时间。
步骤2、调整器调用设备应用程序接口(API)从终端设备请求时钟值。
步骤3、调整器利用时间差值对获取的设备时间进行调整,将其转换为设备管理服务器的同步时间。
步骤4、调整器向DM Agent模块返回调整后的时间值。这样,DM Agent模块就可以按该时间值来确定是否到达操作的触发时间,从而实现软同步。
当然,DM Agent模块如果想获取设备的真实时间,可以不通过调整器而是直接调用设备API获取。
2、利用时间差修改任务触发时间达到相对同步参阅图3所示,同步模块为一修改器,在这种方案中,DM Agent模块的管理应用的时间描述使用终端时间。服务器和Agent之间通过所述修改器修改任务列表中的所有任务触发时间,达到执行时间同步的目的。
DM Agent模块首先计算出终端时钟和服务器时钟之间的时间差,然后修改器根据时间差修改DMS下发的任务列表中所有任务的触发时间。例如任务列表所带的DMS下发时间戳为200506081750(2005年6月8日17:50);任务列表如下

终端在接收到任务列表时的时间为2005年6月8日18:30;DM Agent计算的时间差为(2005.06.08 18:30)-(2005.06.08 17:50)=+40分钟;DM Agent根据这个时间差调整任务列表中的触发时间,将触发时间(因为有些任务列表的触发时间是时间段)通过修改器修改(+40)分钟(+表示顺延,-表示提前),这样就达到了服务器希望终端设备执行操作的真实时间。
调整后的任务触发时间如下

当终端侧进行的一些操作造成终端时钟时间值的调整(例如用户手动修改终端时间、设备管理服务器远程设定终端设备的时间、某些应用软件调整终端时间、时区的调整或其它手段调整终端时间),DM Agent根据终端时钟前后调整值修改时间差,同时修改所有任务列表的触发时间。
例如用户因为某些原因调整了终端设备的时间,终端调整前的时间为2005年06月08日17:50;任务列表如下

终端调整后的时间为2005年06月08日17:30;调整值为(2005.06.08 17:30)-(2005.06.08 17:50)=-20分钟;DM Agent模块根据调整值修改任务列表中的触发时间,将触发点时间加上(-20)分钟(+顺延表示,-表示提前)。调整后的任务列表为

其他一些情况,例如终端向服务器上传某些数据(这些数据可能是终端主动上传或是服务器主动获取的)时,可以利用保存的时间差对时间数据进行修正,使上传的数据以服务器时间为基准。当然,DM Agent模块如果想获取设备的真实时间,可以不用修正。
当然,也可以不修改任务表中的触发时间,而建立一个映射表来实现。在这种方式下,DM Agent模块首先计算终端时钟和服务器时钟的时间差,并根据时间差计算任务触发的终端相对时间值。然后创建并维护一个任务触发时间映射表,用以映射任务触发时间的服务器相对值和终端相对值,DM Agent模块并不修改原任务列表。
映射表在任务下发时创建,例如任务列表所带的DMS下发时间戳为200506081750(2005年6月8日17:50);任务列表如下

终端在接收到任务列表时的时间为2005年6月8日18:30;DM Agent计算的时间差为(2005.06.0818:30)-(2005.06.0817:50)=+40分钟;DM Agent创建映射表,然后根据这个时间差计算任务触发时间的终端相对值,并填入映射表,其映射如下

当终端侧进行的一些操作造成终端时钟时间值的调整(例如用户手动修改终端时间、设备管理服务器远程设定终端设备的时间、某些应用软件调整终端时间、时区的调整或其它手段调整终端时间),DM Agent根据终端时钟前后调整值修改时间差,同时修改映射表中任务触发时间的终端相对值。
3、DMS强行同步机制DMS在向终端下发定制任务列表前或下发定制任务列表后,DMS通过DMAgent对终端的时钟进行设置,使其和DMS在一定允许的偏差范围内保持同步(偏差包括命令传输延时等),即强制同步终端时间。设置流程参阅如图4所示。
DMS可定期(期间的长短可由DMS设定)对终端的时钟进行同步,使得终端和DMS的时间保持一致。
为了防止终端侧的时间调整造成时间的不同步,如果终端侧支持,DMS可以限制或禁止终端调整时间的能力。
4、在终端设备保持两套时钟如图5所示,在终端维护第一、第二时钟,第一时钟是终端本地时钟,第二时钟是和服务器保持同步的时钟,DM Agent模块根据第二时钟触发对应的任务。在第一、第二时钟之间设置转换器,在向用户显示任务信息时,操作(或任务)的触发时间通过转换器转换为本地时间,用户在修改操作触发时间后(以本地时间为参照),DM Agent通过转换器将其转换为服务器同步时间然后保存。与用户的交互是以终端设备本地时钟为参照,判断任务触发时间是以服务器同步时钟为参照,服务器时钟对用户透明。
可以由DM Agent模块定时与服务器进行第二时钟与服务器时钟的同步,也可以是服务器主动进行同步动作,同步动作的发起可能是定时发起,或者在服务器时间调整后发起。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若对本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
权利要求
1.一种在设备管理中同步操作时间的方法,其特征在于,包括如下步骤根据设备管理服务器的本地时间和终端设备的本地时间确定该两个设备之间的时间差;终端设备根据所述时间差和以设备管理服务器的本地时间为参照的执行操作的指定时间,确定以终端设备本地时间为参照的执行操作的实际时间,并按该实际时间触发操作。
2.如权利要求1所述的方法,其特征在于,根据设备管理服务器和终端设备中,其中一个设备发送命令或消息时的本地时间与另一个设备收到所述命令或消息时的本地时间,确定所述时间差。
3.如权利要求2所述的方法,其特征在于,由终端设备向设备管理服务器发送一个时间同步请求,设备管理服务器向终端设备发送一个响应消息并携带本地的发送时间,终端设备根据收到所述响应消息时的本地时间和该响应消息中的发送时间确定两个设备之间的时间差。
4.如权利要求3所述的方法,其特征在于,终端设备还根据发送所述时间同步请求的本地时间和接收到所述响应消息的本地时间确定传输延时,并利用该延时修正所述时间差。
5.如权利要求2所述的方法,其特征在于,设备管理服务器在下发的命令或消息中携带本地的发送时间,终端设备根据收到所述命令或消息时的本地时间确定两个设备之间的时间差。
6.如权利要求5所述的方法,其特征在于,终端设备在接收到所述命令或消息后,向设备管理服务器发送一个消息和由该服务器返回一个确认消息,终端设备根据发送消息时的本地时间和收到确认消息时的本地时间确定传输延时,并利用该延时修正所述时间差。
7.如权利要求1所述的方法,其特征在于,所述时间差由终端设备保存并维护。
8.如权利要求7所述的方法,其特征在于,终端设备动态地更新所述时间差;或者,终端设备或服务器在调整本地时间后,重新确定设备之间的时间差,或者,终端设备在调整本地时间后根据时间调整量修正所述时间差。
9.如权利要求1至8任一项所述的方法,其特征在于,终端设备在监控任务列表中的操作时,将所述指定时间转换为所述实际时间,并通过比较实际时间与本地时间确定是否触发操作;或者,将终端设备的本地时间转换为以设备管理服务器本地时间为参照的时间,并通过比较该时间与所述指定时间确定是否触发操作。
10.如权利要求1至8任一项所述的方法,其特征在于,终端设备收到设备管理服务器下发的任务列表时,将任务列表中各执行操作的指定时间修改为所述实际时间;或者,终端设备收到设备管理服务器下发的任务列表时,根据执行各操作的指定时间确定对应的实际操作时间并建立映射关系。
11.如权利要求10所述的方法,其特征在于,当所述时间差变化时,调整所述实际时间。
12.一种在设备管理中同步操作时间的方法,该方法由设备管理服务器向终端下发操作命令,终端设备按操作命令中指定的时间触发操作;其特征在于,由设备管理服务器指示终端设备依据设备管理服务器的本地时间设置终端设备的本地时间,使以终端设备的本地时间为参照触发操作的实际时间与以设备管理服务器的本地时间为参照指定执行操作的时间保持同步。
13.如权利要求12所述的方法,其特征在于,设备管理服务器在下发所述操作命令前或下发所述操作命令后指示终端设备设置本地时间;或者,设备管理服务器定时指示终端设备设置本地时间。
14.如权利要求12或13所述的方法,其特征在于,在终端设备维护用于本地事务的第一时钟和用于触发操作的第二时钟,终端设备在得到设备管理服务器的指示后直接按设备管理服务器的本地时间设置所述第二时钟。
15.一种终端设备,包括设备管理代理模块,终端设备通过该设备管理代理模块与设备管理服务器交互;其特征在于,还包括代理时间接口,设置在所述设备管理代理模块内,用于确定终端设备与设备管理服务器之间的时间差;同步模块,与所述代理时间接口连接,用于根据所述时间差将设备管理代理模块进行管理和应用的时间调整为设备管理服务器的同步时间。
16.如权利要求15所述的终端设备,其特征在于,所述同步模块为一个调整器或者为一个修改器。
17.一种终端设备,包括设备管理代理模块,终端设备通过该设备管理代理模块与设备管理服务器交互;其特征在于,该终端设备包括用于本地事务的第一时钟和用于触发操作的第二时钟,所述管理代理模块按设备管理服务器的本地时间设置第二时钟。
18.如权利要求17所述的终端设备,其特征在于,所述第一、第二时钟之间设置有转换器,所述转换器将操作的触发时间转换为终端设备的本地时间显示给用户,或者将修改的操作触发时间转换为服务器同步时间并保存。
全文摘要
本发明公开了一种在设备管理中同步操作时间的方法及装置,以解决现有技术中因设备管理服务器与终端设备之间因时间不同步,导致终端设备不能准确的在设备管理服务器所指定的时间点触发操作的问题;所述方法根据设备管理服务器的本地时间和终端设备的本地时间确定该两个设备之间的时间差,终端设备根据所述时间差和以设备管理服务器的本地时间为参照的执行操作的指定时间,确定以终端设备本地时间为参照的执行操作的实际时间,并按该实际时间触发操作。
文档编号H04W56/00GK1794855SQ20051007993
公开日2006年6月28日 申请日期2005年6月27日 优先权日2005年6月27日
发明者柴晓前, 程建章 申请人:华为技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1