CN101686243A - 一种信息管理方法、装置和系统 - Google Patents
一种信息管理方法、装置和系统 Download PDFInfo
- Publication number
- CN101686243A CN101686243A CN200810161300A CN200810161300A CN101686243A CN 101686243 A CN101686243 A CN 101686243A CN 200810161300 A CN200810161300 A CN 200810161300A CN 200810161300 A CN200810161300 A CN 200810161300A CN 101686243 A CN101686243 A CN 101686243A
- Authority
- CN
- China
- Prior art keywords
- information
- change
- change information
- client
- server
- 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.)
- Pending
Links
Images
Abstract
本发明实施例公开了一种信息管理方法、装置和系统,所述方法包括以下步骤:向客户端发送包含标识信息的针对管理目标的变化信息获取命令;接收所述客户端根据所述变化信息获取命令返回的所述管理目标的变化信息,所述变化信息与所述变化信息获取命令中的标识信息相对应。通过应用本发明的技术方案,可以在多服务器管理客户端或用户修改管理树的场景下,使服务器灵活的获取客户端管理树结构、数据、属性变化情况,达到了减少服务器与客户端的信息交互,节省空口资源和节约处理时间的效果。
Description
技术领域
本发明涉及通讯技术领域,特别是涉及一种信息管理方法、装置和系统。
背景技术
OMA DM V1.2(以下简称DM规范)是OMA DM WG制定的设备管理统一规范。DM系统提供了一种低成本方案,用于第三方管理和设置无线网络终端设备(比如手机终端及终端中的功能对象)中的环境和配置信息,解决这些网络设备在使用过程中遇到的问题,通过OTA(Over The Air无线网络)方式进行软件和固件的安装、升级等操作,并提供更加人性化和个性化的服务,提高用户体验。第三方可以是移动运营商,业务提供商或者合作方的信息管理部门。
终端设备上的DM Agent(代理)用于解释和执行DM服务器下发的管理命令。终端设备上存储的管理树可以被认为是一个DM Server通过DM协议对终端设备进行管理的接口。其中包括一些基本管理对象(MO,ManagementObject),DM Server通过对管理树对象的操作达到控制终端管理对象的目的。操作命令有Get(获取)、Replace(替换)、Exec(执行)、Copy(复制)、Delete(删除)等。
由于设备生产厂商的竞争,不同类型的终端会有不同的内部结构,例如管理对象的结构和其包含的节点的属性等的不同,因此在DM服务器可以对终端设备进行管理之前,需要规定一种方法使设备的生产商可以对终端设备进行描述,并告知DM服务器,这样,DM服务器才可以根据这个描述对终端进行管理,这种描述方法就叫做设备描述框架(Device Description Framework,DDF)。
当有多个DM管理方,即多个DM管理服务器时,其中一个服务器对终端管理树的操作会改变管理树的状态,例如树结构,节点值,节点属性等,这会导致另外一个服务器不知道管理树的最新状态而无法有效的管理终端设备。
在现有技术中服务器可以通过三种方式获取终端管理树的情况:
第一,获取管理树或管理对象的结构,使用该方式服务器将获知整个管理树或整个管理对象的树状结构,但不获取叶子节点的节点值;
第二,获取管理树或管理对象的结构和数据,这种方式服务器既获取树状结构又获取叶子节点的值;
第三,通过管理树及描述序列化(Tree and Description Serialization,TNDS)的方式获取整个管理树或整个管理对象的结构、数据及属性。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
使用以上三种方法时将获取整个管理树或管理对象的结构、数据、属性信息,这样不够灵活,特别是在多服务器的场景下,以上方法不能有效的获取管理树或管理对象的变化情况,可能使服务器获取一些已知的无用的信息,这样浪费了空口资源,浪费了处理时间。
发明内容
本发明实施例要解决的问题是提供一种信息管理方法、装置和系统,以解决DM管理服务器不能灵活的获取终端管理树结构、数据、属性变化情况的问题。
为达到上述目的,本发明实施例一方面提出一种信息管理方法,包括以下步骤:
向客户端发送包含标识信息的针对管理目标的变化信息获取命令;
接收所述客户端根据所述变化信息获取命令返回的所述管理目标的变化信息,所述变化信息与所述变化信息获取命令中的标识信息相对应。
另一方面,本发明实施例还提出一种信息管理方法,包括以下步骤:
接收服务器发送的包含标识信息的针对管理目标的变化信息获取命令;
根据所述变化信息获取命令,向所述服务器发送所述管理目标的变化信息,所述变化信息与所述变化信息获取命令中的标识信息相对应。
另一方面,本发明实施例还提出一种服务器,包括:
发送模块,用于向客户端发送包含标识信息的针对管理目标的变化信息获取命令;
接收模块,用于接收所述客户端根据所述变化信息获取命令返回的所述管理目标的变化信息,所述变化信息与所述变化信息获取命令中的标识信息相对应。
另一方面,本发明实施例还提出一种客户端,包括:
接收模块,用于接收服务器发送的包含标识信息的针对管理目标的变化信息获取命令;
发送模块,用于根据所述接收模块所接收的变化信息获取命令,向所述服务器发送所述管理目标的变化信息,所述变化信息与所述变化信息获取命令中的标识信息相对应。
另一方面,本发明实施例还提出一种信息管理系统,包括服务器和客户端:
所述服务器,用于向所述客户端发送包含标识信息的针对管理目标的变化信息获取命令,并接收所述客户端根据所述变化信息获取命令返回的所述管理目标的变化信息,所述变化信息与所述变化信息获取命令中的标识信息相对应。
所述客户端,用于接收所述服务器发送的包含标识信息的针对管理目标的变化信息获取命令,并根据所述接收的变化信息获取命令,向所述服务器发送所述管理目标的变化信息。
本发明实施例的技术方案具有以下优点,因为采用了添加标识信息获取变化信息的方案,从而,可以在多服务器管理客户端或用户修改管理树的场景下,使服务器有效的获取管理树或管理对象的变化情况,达到了减少服务器所获取的无用的信息,避免浪费空口资源和处理时间的效果。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一中的一种信息管理方法的流程示意图;
图2为本发明实施例二中的一种信息管理方法的流程示意图;
图3为本发明实施例三中的一种信息管理系统的结构示意图;
图4为本发明实施例中的管理对象X的原始情况示意图;
图5为本发明实施例中的管理对象X变化后的情况的示意图;
图6为本发明实施例中的一种指纹参数管理对象的示意图。
具体实施方式
本发明实施例提出了一种信息管理方法、装置和系统,用于解决DM管理服务器不能灵活的获取终端管理树结构、数据、属性变化情况的问题。
本发明实施例所提出的技术方案对现有技术的方法进行了增强和完善,使服务器能灵活的获取客户端管理树的信息和/或变化情况,无论是在多服务器还是单服务器的场景下,在实际应用中,客户端属于终端的一种,名称的变化并不影响本发明的保护范围。
如图1所示,为本发明实施例一所提供的一种信息管理方法,包括以下步骤:
步骤S101、向客户端发送包含标识信息的针对管理目标的变化信息获取命令。
其中,标识信息,具体包括以下内容中的一个或多个:
结构变化标识;
结构和/或数据的变化标识;
TNDS信息变化标识。
TNDS是一种用XML或无线二进制XML(Wireless Binary XML,WBXML)来描述运行状态下的管理树或管理对象的方法,它把管理树或管理对象的树状结构、数据、属性转换成XML或WBXML格式的文本,这样可以在DM命令中携带该文本来达到操作或上报客户端管理树的目的。
并且,上述的标识信息还可以通过逻辑运算标识,增加或减少标识信息所对应的变化信息类别。
步骤S102、接收客户端根据变化信息获取命令返回的管理目标的变化信息,该变化信息与变化信息获取命令中的标识信息相对应。
其中,管理目标的变化信息,具体包括以下内容中的一个或多个:
管理目标中增加内容的信息;
管理目标中增加内容的信息和该增加内容的指纹信息;
管理目标中改变内容的信息;
管理目标中改变内容的信息和该改变内容的指纹信息;
管理目标中减少内容的信息。
进一步的,本实施例所提出的方法还包括:
接收客户端根据变化信息获取命令返回的管理目标的变化信息对应的指纹信息,其中的指纹信息,具体包括:
在管理目标中通过DM协议定义的节点的版本号(Version Number,VerNo)属性;或,
在管理目标中整数类型,或字符串类型,或浮点数类型,或布尔类型的节点的节点值。
需要进一步指出的是,向客户端发送包含标识信息的针对管理目标的变化信息获取命令之前,还包括向客户端发送包含指纹信息获取标识的指纹信息获取命令,并接收客户端根据该指纹信息获取命令返回的管理目标的指纹信息,该指纹信息与指纹信息获取命令中的指纹信息获取标识相对应。
其中,指纹信息获取标识,具体包括以下内容中的一个或多个:
结构化的指纹信息获取标识;
TNDS类型的指纹信息获取标识。
在本实施例所提出的方法中,在获取指纹信息或获取管理目标的变化信息过程中,还包括指纹参数信息的获取,具体可以通过以下几种方式实现:
方式一、向客户端发送对管理目标中指纹信息的参数指定消息,并接收客户端发送的对参数指定消息的确认消息。
方式二、直接接收客户端发送的指纹参数信息。
方式三、通过预设的指纹参数管理对象获取。根据上述指纹参数信息,识别指纹变化信息。
上述三种方式中,参数指定消息所指定的指纹参数信息,或客户端发送的指纹参数信息,具体包括以下内容中的一个或多个:
指纹内容类型、替换指纹内容类型、指纹算法、指纹计算前的数据内容、指纹计算前的数据排列顺序。
需要进一步指出的是,上述的步骤是通过向客户端发送包含信息标识的变化信息获取命令,接收客户端根据该变化信息获取命令发送的对应的变化信息,但在实际的应用场景中,客户端可以在不接收变化信息获取命令的情况下,直接向服务器发送变化信息,这样的变化同样属于本发明的保护范围。
本发明实施例的技术方案具有以下优点,因为采用了添加标识信息获取变化信息的方案,从而,可以在多服务器管理客户端或用户修改管理树的场景下,使服务器有效的获取管理树或管理对象的变化情况,达到了减少服务器所获取的无用的信息,避免浪费空口资源和处理时间的效果。
如图2所示,为本发明实施例二所提供的一种信息管理方法,包括以下步骤:
步骤S201、接收服务器发送的包含标识信息的针对管理目标的变化信息获取命令。
其中的标识信息,具体包括以下内容中的一个或多个:
结构变化标识;
结构和/或数据的变化标识;
TNDS信息变化标识。
其中,在本步骤之前,还包括根据管理目标的变化,保存管理目标的更改记录。
步骤S202、根据变化信息获取命令,向服务器返回管理目标的变化信息,变化信息与变化信息获取命令中的标识信息相对应。
基于上述步骤中的保存更改记录的操作,本步骤具体为根据管理目标的更改记录,向服务器返回管理目标的变化信息。
其中,本步骤还包括根据变化信息获取命令,向服务器发送管理目标的指纹变化信息。
进一步的,本发明实施例所提出的信息管理方法还包括:
接收服务器发送的对管理目标中指纹信息的参数指定消息,并向服务器发送对参数指定消息的确认消息;或
向服务器发送指纹参数信息。
需要进一步指出的是,上述的步骤是通过接收服务器发送的变化信息获取命令,从而,根据该变化信息获取命令,向服务器发送对应的变化信息,但在实际的应用场景中,客户端可以在不接收变化信息获取命令的情况下,直接向服务器发送变化信息,这样的变化同样属于本发明的保护范围。
本发明实施例的技术方案具有以下优点,因为采用了添加标识信息获取变化信息的方案,从而,可以在多服务器管理客户端或用户修改管理树的场景下,使服务器有效的获取管理树或管理对象的变化情况,达到了减少服务器所获取的无用的信息,避免浪费空口资源和处理时间的效果。
基于本发明上述实施例所提出的的方法,本发明实施例三提供了一种信息管理系统,如图3所示,包括:
服务器1,用于向客户端2发送包含标识信息的针对管理目标的变化信息获取命令,并接收客户端2根据变化信息获取命令返回的管理目标的变化信息,变化信息与变化信息获取命令中的标识信息相对应,包括:
发送模块11,用于向客户端2发送包含标识信息的针对管理目标的变化信息获取命令,向客户端2发送对管理目标中指纹信息的参数指定消息;
接收模块12,用于接收客户端2根据变化信息获取命令返回的管理目标的变化信息,变化信息与变化信息获取命令中的标识信息相对应,接收客户端2发送的对参数指定消息的确认消息。
进一步的,服务器1还包括指纹参数获取模块13,用于接收客户端2发送的指纹参数信息,或通过预设的指纹参数管理对象获取。
客户端2,用于接收服务器1发送的包含标识信息的针对管理目标的变化信息获取命令,并根据所接收的变化信息获取命令,向服务器1发送管理目标的变化信息,包括:
接收模块21,用于接收服务器1发送的包含标识信息的针对管理目标的变化信息获取命令,接收服务器发送的对管理目标中指纹信息的参数指定消息;
发送模块22,用于根据接收模块21所接收的变化信息获取命令,向服务器1发送管理目标的变化信息,变化信息与变化信息获取命令中的标识信息相对应,根据接收模块所接收的参数指定消息向服务器发送对参数指定消息的确认消息,或,还用于向服务器发送指纹参数信息。
进一步的,客户端2还包括记录保存模块23,用于根据管理目标的变化,保存管理目标的更改记录。
上述模块可以分布于一个装置,也可以分布于多个装置。上述模块可以合并为一个模块,也可以进一步拆分成多个子模块。
本发明实施例的技术方案具有以下优点,因为采用了添加标识信息获取变化信息的方案,从而,可以在多服务器管理客户端或用户修改管理树的场景下,使服务器有效的获取管理树或管理对象的变化情况,达到了减少服务器所获取的无用的信息,避免浪费空口资源和处理时间的效果。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
假设某服务器维护了某客户端管理树上的一个管理对象X,管理对象X对应前述实施例中的管理目标,该管理对象X的原始情况如图4所示。
其中,“管理对象X”表示该管理对象X的根节点,其它节点的名称及属性如图所示,其中整数、可扩展标记语言(eXtensible Markup Language,XML)、二进制等属性表示的是该节点值的类型。图中虚线和其它子树表示的是该管理对象的其它部分。
若该管理对象发生了改变,这些改变可能来自于其它服务器的操作、用户的输入或增加了新硬件,这时,管理树变为了如图5所示的情况。
其中,节点A的值变为20,节点C下增加了一棵子树,即G、H、I三个节点,节点E被删除,节点F的值也发生改变。
如果服务器需要对管理对象X进行管理,例如需要修改A节点及F节点的值,或需要为C节点增加子树,或需要操作E节点,则可能会出现错误或造成重复,因此在管理之前需要重新获取管理树的结构、数据、属性,此时客户端必须告知服务器的信息包括:
信息1、节点A、F的值发生变化,可选地包括节点指纹;
信息2、节点C下面增加了一棵子树,可选地包括G、H、I三个节点的结构、数据、属性、指纹;
信息3、节点E被删除;
获取这些信息的方法是服务器发送变化信息获取命令,该命令中标识出只需要获取管理对象变化的部分,然后客户端根据本地存储的管理对象的ChangeLog(更改记录)向服务器上报,ChangeLog应对应于服务器标识,即客户端需要为每个服务器维护一个ChangeLog。另外不通过服务器获取,客户端也可以主动上报这些信息。具体获取及上报上述信息的方法参见后续实施例。
通过该方法,服务器可以不用获取该管理对象的其它未发生变化部分的信息,而可以灵活的了解管理树或管理对象变化情况的梗概和/或变化的具体细节,且服务器可以不用获取一些冗长的节点值,而只获取节点指纹。
下面,通过具体的实施例对上述的信息管理方法的实现过程进行说明。
基于前述的管理对象构成情况,本发明实施例四提出了一种获取管理对象结构变化的消息构成方案。
本发明实施例中,服务器对图5所示的管理对象X发送变化信息获取命令获取其结构变化情况,此时服务器发送的变化信息获取命令如下:
<Get>
<CmdID>4</CmdID>
<Item>
<Target>
<LocURI>./X?list=StructDelta</LocURI>
</Target>
</Item>
</Get>
该命令中的X标识的即是管理对象X,其中的StructDelta表示需要获取X的结构变化。客户端收到该命令后,根据对该服务器存储的ChangeLog信息,提取出仅与结构相关的变化情况,向服务器做出回复如下:
<Results>
<CmdRef>4</CmdRef>
<CmdID>7</CmdID>
<Item>
<StructAddition/>
<Meta><Format xmlns=″syncml:metinf″>node</Format></Meta>
<Source><LocURI>./X/B/C/G</LocURI></Source>
</Item>
<Item>
<StructAddition/>
<Meta><Format xmlns=″syncml:metinf″>xml</Format></Meta>
<Source><LocURI>./X/B/C/G/H</LocURI></Source>
</Item>
<Item>
<StructAddition/>
<Meta><Format xmlns=″syncml:metinf″>bool</Format></Meta>
<Source><LocURI>./X/B/C/G/I</LocURI></Source>
</Item>
<Item>
<StructDeletion/>
<Meta><Format xmlns=″syncml:metinf″>xml</Format></Meta>
<Source><LocURI>./X/B/D/E</LocURI></Source>
</Item>
</Results>
在上述的回复消息中,包括了如图5所示的增加的节点标识的信息,即./X/B/C/G、./X/B/C/G/H、./X/B/C/G/I和删除的节点标识,即./X/B/D/E,其中./X/B/C/G/H和./X/B/C/G/I为可选内容,若不包含该内容,则服务器仅得知在C节点下增加了一棵名为G的子树而不知其具体内容。对于是否获取可选内容,可以有几种实现方式,如可以在服务器下发的获取命令中进行标识、可以在客户端管理树的某个节点上进行标识、可以根据客户端具体实现自行决定等。
消息中还包括了<StructAddition/>和<StructDeletion/>字段,它们标识某个或某些节点是增加的节点还是删除的节点。其中<StructAddition/>这个标识为可选标识,若不包含该内容,则服务器可以根据该管理对象以前的情况或其DDF获知某节点是新增加的。另外,若E节点下还有子节点,则不需要列举出它的子节点,服务器即可知道E下的所有节点都被删除。
上述消息即可看作是管理对象的结构增量信息。
进一步的,基于前述的管理对象构成情况,本发明实施例五提出了一种获取管理对象数据和结构变化的消息构成方案。
本实施例中服务器对图5所示的管理对象X发送命令获取其结构及数据的变化情况,此时服务器发送的获取命令如下:
<Get>
<CmdID>4</CmdID>
<Item>
<Target>
<LocURI>./X?list=StructDataDelta</LocURI>
</Target>
</Item>
</Get>
其中的StructDataDelta表示服务器需要获取X的结构及数据变化情况。客户端收到该命令后,根据对该服务器存储的ChangeLog信息,提取出仅与结构及数据相关的变化情况进行回复。当然,服务器也可以只获取数据变化信息,例如使用DataDelta作为标识。
客户端针对服务器的命令,向服务器做出回复如下:
<Results>
<CmdRef>4</CmdRef>
<CmdID>7</CmdID>
<Item>
<Source><LocURI>./X/A</LocURI></Source>
<FP>”Fingerprint of A”</FP>
</Item>
<Item>
<StructAddition/>
<Meta><Format xmlns=″syncml:metinf″>node</Format></Meta>
<Source><LocURI>./X/B/C/G</LocURI></Source>
</Item>
<Item>
<StructAddition/>
<Meta><Format xmlns=″syncml:metinf″>xml</Format></Meta>
<Source><LocURI>./X/B/C/G/H</LocURI></Source>
<Data>”XML document”</Data>
<FP>”Fingerprint of H”</FP>
</Item>
<Item>
<StructAddition/>
<Meta><Format xmlns=″syncml:metinf″>bool</Format></Meta>
<Source><LocURI>./X/B/C/G/I</LocURI></Source>
<Data>True</Data>
<FP>”Fingerprint of I”</FP>
</Item>
<Item>
<StructDeletion/>
<Meta><Format xmlns=″syncml:metinf″>xml</Format></Meta>
<Source><LocURI>./X/B/D/E</LocURI></Source>
</Item>
<Item>
<Source><LocURI>./X/B/D/F</LocURI></Source>
<FP>”Fingerprint of F”</FP>
</Item>
</Results>
在实施例四的基础上,本例中客户端除了回复结构变化信息外还回复了数据变化信息,即节点A和F的相关信息。其中<FP>为节点的指纹,服务器收到指纹后可以和以前保存的或实时计算的该节点的指纹做比较以确定该节点值是否发生了变化,以便进行后续处理。指纹的算法类型可以有多种,例如Changed Flag(更改标志)、Changed Count(更改次数)、Hash(哈希算法)。
其中可以使用DM协议定义的节点的VerNo属性来作为Changed Count类型的指纹;另外,对于简单的整数类型的节点、字符串类型等的节点、浮点数类型节点或布尔型节点,可以直接使用其节点值作为其指纹。
节点的指纹,即<FP>的值,可以仅是节点值的指纹、仅是节点其它属性的指纹、或节点值及其它属性的指纹,若是后两者,需要把节点值和/或节点的各属性按一定的顺序串联起来计算指纹。而节点属性可以包括所有属性或只包括部分属性,但无论计算指纹时是否包括节点属性以及包括多少属性,在单向指纹运算的情况下,客户端每一次都需要按照相同的算法、相同的属性个数及相同串联顺序来计算节点的指纹,而在双向指纹运算的情况下,上述信息不必每一次都相同,但客户端和服务器之间需要协商上述信息。
对于H节点和I节点,由于它们是新增节点,消息中除了包含它们的指纹外还可以包含它们的节点值,即<Data>中包含的内容,当然,消息中也可以不包含节点值。对于直接使用节点值来作为指纹的情况,<FP>和<Data>中选择其中一项发送。若新增的节点没有节点值,则<FP>和<Data>都不发送,或者标记出该节点没有节点值。
再进一步的,基于前述的管理对象构成情况,本发明实施例六提出了一种获取管理对象结构变化的消息构成方案。
本实施例中服务器对图5所示的管理对象X发送变化信息获取命令获取其TNDS方式的结构、数据、属性的变化情况,此时服务器发送的变化信息获取命令如下:
<Get>
<CmdID>4</CmdID>
<Item>
<Target>
<LocURI>./X?list=TNDSDelta+Value</LocURI>
</Target>
</Item>
</Get>
其中的TNDSDelta+Value表示服务器需要获取X的TNDS方式的结构、数据、属性的变化情况,其中的+Value表示对于新增加的有节点值的节点,则获取其节点值。客户端收到该命令后,根据对该服务器存储的ChangeLog信息,提取出管理对象X的所有变化情况进行回复。当然,服务器也可以在该方式下通过变换获取命令中的标识只单独获取结构的变化信息、数据的变化信息、属性的变化信息,或它们的组合。
客户端针对服务器的变化信息获取命令,向服务器做出回复如下:
<Results>
<CmdRef>4</CmdRef>
<CmdID>7</CmdID>
<Item>
<Meta>
<Format xmlns=’syncml:metinf’>xml</Format>
<Type xmlns=’syncml:metinf’>application/vnd.syncml.dmtnds+xml</Type>
</Meta>
<Source><LocURI>./X</LocURI></Source>
<Data>
<MgmtTree xmlns=’syncml:dmddf1.2’>
<VerDTD>1.2</VerDTD>
<Node>
<NodeName>A</NodeName>
<RTProperties><FP>”Fingerprint of A”</FP></RTProperties>
</Node>
<Node>
<NodeName>B</NodeName>
<Node>
<NodeName>C</NodeName>
<Node>
<NodeName>G</NodeName>
<Node>
<NodeName>H</NodeName>
<RTProperties>
<Value>”XML document”</Value>
<FP>”Fingerprint of H”</FP>
</RTProperties>
</Node>
<Node>
<NodeName>I</NodeName>
<RTProperties>
<Value>True</Value>
<FP>”Fingerprint of I”</FP>
</RTProperties>
</Node>
</Node>
<Node>
<NodeName>D</NodeName>
<Node>
<NodeName>E</NodeName>
<RTProperties><Format><removed/></Format></RTProperties>
</Node>
<Node>
<NodeName>F</NodeName>
<RTProperties><FP>”Fingerprint of F”</FP></RTProperties>
</Node>
</Node>
</Node>
</MgmtTree>
</Data>
</Item>
</Results>
可见,对于A节点和F节点,在TNDS中新增了一个<FP>属性用以表示节点的指纹。对于H节点和I节点,把它们的节点值和指纹都包含在了消息中,同样,消息中也可以不包含节点值。对于直接使用节点值来作为指纹的情况,<FP>和<Value>中选择其中一项发送。若新增的节点没有节点值,则<FP>和<Value>都不发送。
对于删除的节点E,本发明使用一个removed标志说明它已经被删除,包括它可能包含的所有子节点。
以上通过TNDSDelta+Value这个限定获取了管理对象X的变化信息,其中Value其实是节点的一个属性,另外,FP并没有列举在其中,它是默认需要发送的属性。若不加value项,则将获取管理对象X的所有变化信息。若服务器还需要获取除Value和FP以外的其它属性,则可以继续添加“+”号和属性,例如TNDSDelta+Value+ACL,此时若X中的某个节点的ACL属性有变化,则把它也包含在上述消息中发送给服务器,若ACL属性无变化,则不包含。若服务器需要获取所有变化的属性,但排除掉某个属性,可以使用“-”号,例如TNDSDelta-Value-ACL-VerNo表示获取X的变化信息,但不包括节点值、ACL和VerNo属性的变化情况。
另一方面,在获取管理树或管理对象的变化信息之前,服务器可能需要先保存管理树或管理对象的原始指纹,服务器获取原始指纹可以用类似实施例五和实施例六的方式。
具体的获取方式通过本发明实施例七进行说明,服务器发送如下的指纹信息获取命令获取原始指纹:
<Get>
<CmdID>4</CmdID>
<Item>
<Target>
<LocURI>./X?list=StructFP</LocURI>
</Target>
</Item>
</Get>
或:
<Get>
<CmdID>4</CmdID>
<Item>
<Target>
<LocURI>./X?list=TNDSFP</LocURI>
</Target>
</Item>
</Get>
即使用一个标识来告知客户端,服务器需要获取管理树或某个管理对象的指纹信息。然后客户端以实施例五和实施例六的方式向服务器反馈所有可计算出指纹的节点的指纹,具体反馈方法不再赘述。
在本发明实施例五中提到,节点的指纹可以有三种内容类型:节点值的指纹、节点其它属性的指纹、节点值及其它属性的指纹。这样服务器与客户端之间就需要相互协商指纹属于哪种内容类型。若是双向指纹则还需要相互协商指纹算法及节点属性排列顺序信息。本实施例即实现这些信息的协商。
可以使用三种方式来实现上述信息的协商或交换。
方式一、在实施例五的基础上使用参数反馈,例如客户端上报一些参数以使服务器获知计算指纹的参数信息;另外,服务器也可以在获取指纹的命令中指定这些参数,然后客户端再反馈确认的参数,也即客户端和服务器可以相互协商确定这些参数
以下是客户端上报的指纹及参数信息,服务器指定的情况类似,不再赘述。
<Results>
<CmdRef>4</CmdRef>
<CmdID>7</CmdID>
<Item><Data>FPContentType=NodeValue & FPContentTypeDefault=NodeValue &
FPContent=Value</Data></Item>
<Item>
<Source><LocURI>./X/A</LocURI></Source>
<FP>”Fingerprint of A”</FP>
</Item>
</Results>
其中,FPContentType为参数名称,含义是节点指纹属于哪种内容类型,NodeValue为该参数的值,表示后续的指纹是基于节点值计算的。后面的FPContentTypeDefault参数表示在未指定FPContentType的情况下,指纹属于哪种内容类型,客户端在以后上报指纹的消息中若不包含内容类型的参数,服务器就可以根据FPContentTypeDefault确定指纹的内容类型。FPContent参数表示指纹具体基于哪些属性计算而得,此例中为Value说明,指纹是基于节点值计算的,在指纹基于多个属性计算时,这个参数就可以让服务器知道指纹具体基于哪些属性。另外,本例中FPContentType和FPContent都表示指纹的内容是节点值,因此可以只发送其中一个参数,但在其它内容类型时,则两个参数都需要。
若各节点基于的内容类型不同,则可以用下面的方式表示:
<Results>
<CmdRef>4</CmdRef>
<CmdID>7</CmdID>
<Item><Data>FPContentType=NodeValue</Data></Item>
<Item>
<Source><LocURI>./X/A</LocURI></Source>
<FP>”Fingerprint of A”</FP>
</Item>
<Item>
<Source><LocURI>./X/B/D/F</LocURI></Source>
<FPContentType>NodeProperty</FPContentType>
<FPContent>ACL+Type</FPContent>
<FP>”Fingerprint of F”</FP>
</Item>
</Results>
可见对于节点F,使用一个新的xml元素<FPContentType>来标识指纹的内容类型,此例中为NodeProperty,表示除了Value之外的其它属性。这个标识也可以直接加在指纹元素中,如直接用<FPNodeProperty>取代<FP>来携带指纹。对于未指定内容类型的指纹,则为<Item>/<Data>中FPContentType参数定义的类型,或是前述的默认类型FPContentTypeDefault。另外<FPContent>元素则与前述的FPcontent参数的作用相同,它说明节点F的指纹是基于ACL和Type属性计算而得的。对于<FPContentType>和<FPContent>这两个元素,可以都上报给服务器,也可以上报其中一个。
若是双向指纹,则在消息中还可以包含以下信息:
<Results>
<CmdRef>4</CmdRef>
<CmdID>7</CmdID>
<Item><Data>FPAlg=Hash&FPContent=ACL+Type&FPPropOrder=Value+ACL+Format+Type</Data></Item>
<Item>
<Source><LocURI>./X/A</LocURI></Source>
<FP>”Fingerprint of A”</FP>
</Item>
</Results>
其中FPAlg表示指纹算法;FPPropOrder表示指纹计算前数据的排列顺序,若FPContent中只有部分FPPropOrder中列举的属性,则仍按照该排列顺序,即例子中按照ACL在前,Type在后的顺序。同样,这些参数也可以对每个节点进行指定。
指纹内容类型、算法、排列顺序等指纹参数信息也可以用于内部节点或根节点,以表示根节点或内部节点下面的子节点都使用这些指纹参数。
若对内部节点或根节点本身也计算指纹的话,这些信息则是内部节点或根节点本身的指纹参数信息。此时需要新加入一些参数,如<FPNode>和<FPNodeOrder>来表示内部节点或根节点的指纹是基于哪些节点计算而得,以及节点的排列顺序。而在计算时对于<FPContentType>、<FPContent>、<FPPropOrder>等参数,若内部节点或根节点已包含,则必须使用它们的这些属性,如没有包含则使用子节点各自的属性。
方式二,在实施例六的基础上,客户端使用TNDS的方式反馈,另外,服务器也可以在获取指纹的命令中指定这些参数,然后客户端再反馈确认的参数,也即客户端和服务器可以相互协商确定这些参数。
以下是客户端上报的指纹及参数信息,服务器指定的情况类似,不再赘述。
例如:
<Results>
<CmdRef>4</CmdRef>
<CmdID>7</CmdID>
<Item>
......
<Data>
<MgmtTree xmlns=’syncml:dmddf1.2’>
<VerDTD>1.2</VerDTD>
<Node>
<NodeName>A</NodeName>
<RTProperties>
<FP>”Fingerprint of A”</FP>
<FPContentType>NodeValue</FPContentType>
<FPContentTypeDefault>NodeValue</FPContentTypeDefault>
<FPContent>ACL+Type</FPContent>
<FPAlg>Hash</FPAlg>
<FPPropOrder>Value+ACL+Format+Type</FPPropOrder>
</RTProperties>
</Node>
</MgmtTree>
</Data>
</Item>
</Results>
指纹内容类型、算法、排列顺序等指纹参数信息的含义与方式一相同,只是使用了节点属性来表示。这些节点属性也可以加在内部节点或根节点的节点属性中,以表示根节点或内部节点下面的子节点都使用这些指纹参数。
若对内部节点或根节点本身也计算指纹的话,这些信息则是内部节点或根节点本身的指纹参数信息。此时需要新加入一些参数,如<FPNode>和<FPNodeOrder>来表示内部节点或根节点的指纹是基于哪些节点计算而得,以及节点的排列顺序。而在计算时对于<FPContentType>、<FPContent>、<FPPropOrder>等属性,若内部节点或根节点有,则必须使用它们的这些属性,如没有则使用子节点各自的属性。
方式三、从管理对象中获取参数,如图6所示,为指纹参数管理对象的结构示意图。
该管理对象中保存了前述的指纹参数信息,服务器可以从这个管理对象中获取这些信息以确定客户端发送来的指纹的具体参数,同样服务器可以设置这些参数以使客户端根据这些参数来计算指纹。
本发明实施例的技术方案具有以下优点,因为采用了添加标识信息获取变化信息的方案,从而,可以在多服务器管理客户端或用户修改管理树的场景下,使服务器有效的获取管理树或管理对象的变化情况,达到了减少服务器所获取的无用的信息,避免浪费空口资源和处理时间的效果。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以可借助软件加必要的通用硬件平台的方式来实现基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视本发明的保护范围。
Claims (23)
1、一种信息管理方法,其特征在于,包括以下步骤:
向客户端发送包含标识信息的针对管理目标的变化信息获取命令;
接收所述客户端根据所述变化信息获取命令返回的所述管理目标的变化信息,所述变化信息与所述变化信息获取命令中的标识信息相对应。
2、如权利要求1所述信息管理方法,其特征在于,所述标识信息,具体包括以下内容中的一个或多个:
结构变化标识;
结构和/或数据的变化标识;
管理树及描述序列化TNDS信息变化标识。
3、如权利要求2所述信息管理方法,其特征在于,所述标识信息通过逻辑运算标识增加或减少所述标识信息所对应的变化信息类别。
4、如权利要求1所述信息管理方法,其特征在于,所述管理目标的变化信息,具体包括以下内容中的一个或多个:
所述管理目标中增加内容的信息;
所述管理目标中增加内容的信息和所述增加内容的指纹信息;
所述管理目标中改变内容的信息;
所述管理目标中改变内容的信息和所述改变内容的指纹信息;
所述管理目标中减少内容的信息。
5、如权利要求1所述信息管理方法,其特征在于,在所述接收客户端根据所述变化信息获取命令返回的所述管理目标的变化信息时,
接收所述客户端根据所述变化信息获取命令返回的所述管理目标的变化信息对应的指纹信息。
6、如权利要求4或5所述信息管理方法,其特征在于,所述指纹信息,具体包括:
所述管理目标中通过DM协议定义的节点的版本号VerNo属性;或,
所述管理目标中整数类型或字符串类型或浮点数类型或布尔类型的节点的节点值。
7、如权利要求1所述信息管理方法,其特征在于,所述向客户端发送包含标识信息的针对管理目标的变化信息获取命令之前,所述信息管理方法还包括以下步骤:
向所述客户端发送包含指纹信息获取标识的指纹信息获取命令;
接收所述客户端根据所述指纹信息获取命令返回的所述管理目标的指纹信息,所述指纹信息与所述指纹信息获取命令中的指纹信息获取标识相对应。
8、如权利要求7所述信息管理方法,其特征在于,所述指纹信息获取标识,具体包括以下内容中的一个或多个:
结构化的指纹信息获取标识;
TNDS类型的指纹信息获取标识。
9、如权利要求1或7所述信息管理方法,其特征在于,所述信息管理方法还包括:
向所述客户端发送对所述管理目标中指纹信息的参数指定消息;
接收所述客户端发送的对所述参数指定消息的确认消息。
10、如权利要求1所述信息管理方法,其特征在于,所述信息管理方法还包括:
接收所述客户端发送的指纹参数信息;
根据所述指纹参数信息,识别所述指纹信息。
11、如权利要求10所述信息管理方法,其特征在于,所述指纹参数信息,通过以下方式获取:
通过预设的指纹参数管理对象获取。
12、如权利要求9至11中任意一项所述信息管理方法,其特征在于,所述参数指定消息所指定的指纹参数信息,或所述客户端发送的指纹参数信息,具体包括以下内容中的一个或多个:
指纹内容类型、替换指纹内容类型、指纹算法、指纹计算前的数据内容、指纹计算前的数据排列顺序。
13、一种信息管理方法,其特征在于,包括以下步骤:
接收服务器发送的包含标识信息的针对管理目标的变化信息获取命令;
根据所述变化信息获取命令,向所述服务器发送所述管理目标的变化信息,所述变化信息与所述变化信息获取命令中的标识信息相对应。
14、如权利要求13所述信息管理方法,其特征在于,所述标识信息,具体包括以下说明中的一个或多个:
结构变化标识;
结构和/或数据的变化标识;
TNDS信息变化标识。
15、如权利要求13所述信息管理方法,其特征在于,所述接收服务器发送的包含标识信息的针对管理目标的变化信息获取命令之前,所述信息管理方法还包括:
根据所述管理目标的变化,保存所述管理目标的更改记录。
16、如权利要求13或15所述信息管理方法,其特征在于,所述根据变化信息获取命令,向所述服务器返回所述管理目标的变化信息,具体为:
根据所述管理目标的更改记录,向所述服务器发送所述管理目标的变化信息。
17、如权利要求13所述信息管理方法,其特征在于,在所述根据变化信息获取命令,向所述服务器返回所述管理目标的变化信息时,根据所述变化信息获取命令,向所述服务器发送所述管理目标的变化信息对应的指纹信息。
18、如权利要求13所述信息管理方法,其特征在于,所述信息管理方法还包括:
接收所述服务器发送的对所述管理目标中指纹信息的参数指定消息,并向所述服务器发送对所述参数指定消息的确认消息;或
向所述服务器发送指纹参数信息。
19、一种服务器,其特征在于,包括:
发送模块,用于向客户端发送包含标识信息的针对管理目标的变化信息获取命令;
接收模块,用于接收所述客户端根据所述变化信息获取命令返回的所述管理目标的变化信息,所述变化信息与所述变化信息获取命令中的标识信息相对应。
20、如权利要求19所述服务器,其特征在于,所述服务器还包括:
指纹参数获取模块,用于接收所述客户端发送的指纹参数信息,或通过预设的指纹参数管理对象获取;
所述发送模块,还用于向所述客户端发送对所述管理目标中指纹信息的参数指定消息;
所述接收模块,还用于接收所述客户端发送的对所述参数指定消息的确认消息。
21、一种客户端,其特征在于,包括:
接收模块,用于接收服务器发送的包含标识信息的针对管理目标的变化信息获取命令;
发送模块,用于根据所述接收模块所接收的变化信息获取命令,向所述服务器发送所述管理目标的变化信息,所述变化信息与所述变化信息获取命令中的标识信息相对应。
22、如权利要求21所述客户端,其特征在于,所述客户端还包括:
记录保存模块,用于根据所述管理目标的变化,保存所述管理目标的更改记录;
所述接收模块,还用于接收所述服务器发送的对所述管理目标中指纹信息的参数指定消息;
所述发送模块,还用于根据所述接收模块所接收的参数指定消息向所述服务器发送对所述参数指定消息的确认消息,或,还用于向所述服务器发送指纹参数信息。
23、一种信息管理系统,其特征在于,包括服务器和客户端:
所述服务器,用于向所述客户端发送包含标识信息的针对管理目标的变化信息获取命令,并接收所述客户端根据所述变化信息获取命令返回的所述管理目标的变化信息,所述变化信息与所述变化信息获取命令中的标识信息相对应。
所述客户端,用于接收所述服务器发送的包含标识信息的针对管理目标的变化信息获取命令,并根据所述接收的变化信息获取命令,向所述服务器发送所述管理目标的变化信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810161300A CN101686243A (zh) | 2008-09-26 | 2008-09-26 | 一种信息管理方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810161300A CN101686243A (zh) | 2008-09-26 | 2008-09-26 | 一种信息管理方法、装置和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101686243A true CN101686243A (zh) | 2010-03-31 |
Family
ID=42049213
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200810161300A Pending CN101686243A (zh) | 2008-09-26 | 2008-09-26 | 一种信息管理方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101686243A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103516851A (zh) * | 2012-06-30 | 2014-01-15 | 北京新媒传信科技有限公司 | 一种无线产品云测试平台系统 |
CN103532920A (zh) * | 2012-07-06 | 2014-01-22 | 腾讯科技(深圳)有限公司 | cookie更新方法以及cookie更新系统 |
CN103902278A (zh) * | 2012-12-31 | 2014-07-02 | 鼎捷软件股份有限公司 | 描述对象变化信息的记录方法 |
-
2008
- 2008-09-26 CN CN200810161300A patent/CN101686243A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103516851A (zh) * | 2012-06-30 | 2014-01-15 | 北京新媒传信科技有限公司 | 一种无线产品云测试平台系统 |
CN103516851B (zh) * | 2012-06-30 | 2016-05-25 | 北京新媒传信科技有限公司 | 一种无线产品云测试平台系统 |
CN103532920A (zh) * | 2012-07-06 | 2014-01-22 | 腾讯科技(深圳)有限公司 | cookie更新方法以及cookie更新系统 |
CN103532920B (zh) * | 2012-07-06 | 2018-01-23 | 腾讯科技(深圳)有限公司 | cookie更新方法以及cookie更新系统 |
CN103902278A (zh) * | 2012-12-31 | 2014-07-02 | 鼎捷软件股份有限公司 | 描述对象变化信息的记录方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101854343B (zh) | 提供节点信息的方法、获取节点信息的方法及设备 | |
US11171994B2 (en) | Tag-based security policy creation in a distributed computing environment | |
US20190089749A1 (en) | Method for providing wireless application privilege management | |
CN101360121A (zh) | 设备管理中权限控制的方法、系统及终端 | |
US20170279688A1 (en) | Method, device and system for providing device application software management service in internet of things | |
CN106470150B (zh) | 关系链存储方法及装置 | |
CN112422709A (zh) | 标识管理方法、终端设备、标识解析二级节点及介质 | |
US11063829B2 (en) | Secure collaborative data communications network | |
CA3065729A1 (en) | Business rules processing framework | |
CN101686243A (zh) | 一种信息管理方法、装置和系统 | |
US8489838B2 (en) | Method and terminal device for erasing data of terminal | |
CN101409632A (zh) | 一种远程过程调用命令的传输方法、系统和装置 | |
CN110300222A (zh) | 一种短信显示方法、系统及终端设备 | |
CN100440801C (zh) | 一种实现代理侧多标准管理信息库融合的方法 | |
CN109508226B (zh) | 一种基于openstack的虚拟机生命周期的管理方法 | |
AU2009349406B2 (en) | Method for managing configuration information of outsourced part, and method and system for managing alarm | |
EP3629616A1 (en) | Data interaction method, device and equipment | |
CN112468385A (zh) | 虚拟分组的配置方法和装置、存储介质及电子装置 | |
CN109213955A (zh) | 数据处理方法及相关设备 | |
CN111966641B (zh) | 一种通用的日志范化模型配置方法和装置 | |
CN110134467B (zh) | 参数配置的处理方法、装置、存储介质及处理器 | |
CN107318149B (zh) | 自适应更新wifi热点的方法及装置 | |
CN101442791B (zh) | 一种节点信息的发送方法和装置 | |
CN116341508A (zh) | 报文模板的动态配置方法、装置、计算机设备及存储介质 | |
CN101753604A (zh) | 上报设备信息的方法、用户终端和服务器 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20100331 |