WO2009097801A1 - 版本协商方法及终端、服务器 - Google Patents
版本协商方法及终端、服务器 Download PDFInfo
- Publication number
- WO2009097801A1 WO2009097801A1 PCT/CN2009/070266 CN2009070266W WO2009097801A1 WO 2009097801 A1 WO2009097801 A1 WO 2009097801A1 CN 2009070266 W CN2009070266 W CN 2009070266W WO 2009097801 A1 WO2009097801 A1 WO 2009097801A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- server
- version
- terminal
- session
- management
- Prior art date
Links
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/14—Session management
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/24—Negotiation of communication capabilities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/18—Multiprotocol handlers, e.g. single devices capable of handling multiple protocols
Definitions
- the present invention relates to device management, and more particularly to version negotiation in device management.
- OMA Open Mobile Alliance
- DM Device Management VI. 2
- the DM system provides a low-cost solution for managing and setting environment and configuration information in wireless network terminal devices (such as mobile terminals and functional objects in terminals) to solve problems encountered during the use of these network devices. Install and upgrade software and firmware through OTA (over the air wireless network), and provide more personalized and personalized services to enhance the user experience.
- the party can be the information management department of the mobile operator, service provider or partner.
- the OMA DM technology consists of two phases, one of which is called Bootstrap (initialization, or boot), which enables a device to transition from an empty state with no parameter configuration to a state where a management session can be initiated to the DM server.
- Bootstrap initialization, or boot
- the terminal that has been Bootstrap can be further Bootstrap so that the device can initiate a session to the new DM server.
- device and user application settings can be configured during the Bootstrap process.
- the DM management phase is divided into two phases: the session establishment phase and the management session phase, in which the process of the session establishment phase is as wrong! The reference source was not found.
- the server When the server needs to manage the terminal, the server initiates a notification to the terminal, which is called management session package 0, and the management session package 0 includes information such as the protocol version, the session identifier, and the server identifier, and the management session packet 0 is used.
- the trigger terminal initiates a session to the server.
- the terminal After receiving the management session packet 0, the terminal starts to establish a session with the server, that is, sends a management session packet 1 to the server, and the management session packet 1 includes authentication information, device information, etc., for the server to verify the identity of the terminal and understand the terminal. Device related parameters.
- the server After receiving the management session packet 1, the server sends a management session packet 2 to the terminal, which includes authentication information, an initialization management operation, or a user interaction command, for the terminal to verify the identity of the server and start Some information about managing the terminal or interacting with the user for that management session.
- the transmission mode may be different from the subsequent management session packet, and one of the transmission modes is implemented by WAP Push carried on the SMS (short message), and the terminal parses the WAP Push message. It can be known that the information in the message is for the DM application, and it is also known that the message is carried in the message.
- the terminal may also initiate the session actively.
- the process at this time is different from the process in FIG. 1 above, that is, the process does not include the management tongue packet 0.
- the technical problem to be solved by the embodiment of the present invention is that the server and the terminal cannot negotiate the version of each other.
- the server initiates a session to the terminal using the device management notification message
- the terminal cannot identify the protocol version of the device management notification message; then re-send the device management notification message of the other protocol version to the terminal.
- a version negotiation method provided by the present invention includes:
- the server initiates a session to the terminal using the device management notification message
- the terminal cannot completely identify the device management notification message, but can identify the server identifier and the session identifier in the device management notification message, send the first management session packet to the server according to the server identifier and the session identifier. ;
- the server can identify the first management session packet, proceed with the session; if the server cannot identify the first management session packet, select another protocol version to resend the device management notification message to the terminal.
- a method for version negotiation provided by the present invention includes:
- the terminal initiates a session to the server by using the first management session packet
- the terminal resends to the server Send the first management session package of the other protocol version.
- the server sends a device management notification message to the terminal;
- the device management notification message includes a version number supported by the server; such that the terminal can select a version supported by the server to conduct a session with the server.
- a version negotiation method provided by the present invention includes:
- the terminal sends the first management session package to the server;
- the second management session package includes a version number supported by the server; such that the server can select a version supported by the server to conduct a session with the terminal.
- a terminal provided by the present invention includes:
- An identification unit configured to identify a device management notification message sent by the server
- the error response information unit is configured to generate and send the error response information to the server when the identification list cannot identify the device management notification message or partially identify the device management notification message sent by the server.
- a server provided by the present invention includes:
- a device management notification message packet sending unit configured to send a device management notification message to the terminal
- a policy setting unit configured to set a policy
- the policy processing unit is configured to process according to the policy setting unit when the terminal sends the error response information or sends the first management session packet.
- a terminal provided by the present invention includes:
- a first management session packet sending unit configured to send a first management session packet to the server
- a policy setting unit configured to set a policy
- a server provided by the present invention includes:
- An identifying unit configured to identify a first management session packet sent by the terminal
- a second management session packet sending unit configured to partially identify the first management session packet
- the second management session packet replies to the terminal.
- the version of the terminal and the server are negotiated, thereby achieving the effect of mutual compatibility between the devices.
- 1 is a flow chart of a session establishment phase of a prior art DM management phase
- FIG. 2 is a flowchart of a version negotiation method according to Embodiment 1 of the present invention.
- FIG. 3 is a schematic diagram of a terminal according to Embodiment 1 of the present invention.
- FIG. 4 is a schematic diagram of a server according to Embodiment 1 of the present invention.
- FIG. 5 is a flowchart of another version negotiation method according to Embodiment 1 of the present invention.
- FIG. 6 is a schematic diagram of another terminal according to Embodiment 1 of the present invention.
- Fig. 7 is another server of the first embodiment of the present invention.
- the method is divided into two situations: server initiation and terminal initiation.
- server initiation When the server or terminal supports multiple versions of the protocol, the default protocol version is used to initiate the session. If only one version of the protocol is supported, the version itself is the default protocol version.
- the embodiment of the invention provides a method for version negotiation.
- the method is as shown in FIG. 2, including: the server uses a device management notification message to initiate a session to the terminal;
- the terminal identifies the device management notification message
- the terminal part identifies the management session package: no response is made or an error response message is sent to the server, and the server processes according to the local setting policy; or initiates a session with the server by using the first management session package, and the server processes according to the server local policy.
- the server initiates a session with the terminal by using the management session package 0. Since the management session package 0 is initiated by the default protocol version on the server, the terminal has two cases for identifying the information in the management session package 0, that is, the management session cannot be recognized at all. Package 0, can partially identify management session packet 0. 1.1, the terminal can not identify the management session package at all 0
- the terminal may take different countermeasures according to the local settings, such as not responding, or sending a management packet to the client.
- the server feedback error response information includes at least an error prompt and a correlation identifier (Correlator), wherein the error prompt indicates to the server that the terminal does not recognize the management session packet 0; the correlation identifier is for the receiver (ie the server) to identify which error response message is for the management session packet 0, which requires the server to carry the same correlation identifier when sending the management session packet 0, which can be associated with the management session packet 0 It is carried in the SMS at the same time, and can carry different correlation identifiers when sending different management session packets 0.
- the information may also be used to manage the session including the DM protocol version supported by the terminal.
- the error response information can be implemented by using various transmission means, and the present invention is not limited, and one of the methods is to use SMS.
- the server After the server receives the error response message, if the message only contains an error message, the server selects to initiate another version of the management session packet 0 according to the local policy setting, and the policy may be sequentially selected or preset. Priority selection. If the management session also includes a protocol supported by the terminal to resend the management session packet 0, the method of selection is also set according to local policies, such as in order or by a certain priority. If the server only supports one version of the protocol or tries all the supported versions of the protocol to the terminal, then no action is taken after receiving the error response message.
- the server may process according to the local policy settings, for example, after more than one time threshold, repeatedly initiate management session packet 0. It can be repeated sending the same version of the management package 0, or repeatedly sending different versions of the management session package 0, or a combination of various forms of the two cases to ensure that the terminal can receive the correct or compatible version accurately and quickly.
- the DM proxy of the terminal can partially identify the management session packet 0, and at least identify the server identification information and the session identification information included in the management session packet 0, and the terminal can completely follow the method of case 1.1.
- the session can be initiated directly with the server, that is, the management session packet 1 is sent, and the protocol version used for initiating the session is determined by the policy set locally by the terminal. Such as from high to low or a certain priority.
- the server selects whether to continue the session according to the support for the management session packet 1 protocol version, that is, if the protocol version of the management session packet 1 is supported, the session is continued.
- the server according to the local policy setting Select to initiate another version of Management Session Pack 0, which can be selected in order or by a certain priority. If the server only supports one version of the protocol, then no action is taken after receiving the management session package 1.
- the server in the management session package 0 may include all the version numbers supported by the server, in addition to the protocol version number of the identity management session package 0 itself, and may optionally include the preferred version number recommended by the server.
- the terminal can determine a version according to the information to establish a session with the server, for example, the terminal selects to use the same version as the management session package 0, or selects one of the versions supported by the server, or selects the preferred version number recommended by the server, so as to avoid the above The repeated attempts described save resources and time.
- An embodiment of the present invention provides a terminal. As shown in FIG. 2, the terminal includes:
- An identification unit configured to identify a device management notification message sent by the server
- the error response information unit is configured to generate and send the error response information to the server when the identification list cannot identify the device management notification message or partially identify the device management notification message sent by the server.
- the terminal may further include a first management session packet sending unit, configured to initiate a session with the server by using the first management session packet when the identifying unit portion identifies the device management notification message sent by the server.
- a first management session packet sending unit configured to initiate a session with the server by using the first management session packet when the identifying unit portion identifies the device management notification message sent by the server.
- An embodiment of the present invention provides a server. As shown in FIG. 4, the server includes:
- a device management notification message sending unit configured to send a device management notification message to the terminal
- a policy setting unit configured to set a policy
- the policy processing unit is configured to process according to the policy setting unit when the terminal sends the error response information or sends the first management session packet.
- the embodiment of the present invention further provides a method for version negotiation, where the method is as shown in FIG. 5, the terminal initiates a session with the server by using the first management session package;
- the server identifies the first management session package;
- the server does not respond to the second management session packet, and the terminal terminates the session beyond the time threshold, and processes according to the local policy of the terminal;
- the second management session packet is used to reply to the terminal. If the terminal supports the protocol version of the second management session packet sent by the server, the first management session packet of the protocol version is redirected to the server. Send, if not supported, send to the server with the first management session packet of the other protocol version.
- the terminal initiates a session with the server by using the management session package 1. Since the management session package 1 is initiated by the default protocol version on the terminal, the server has several cases for identifying the information in the management session package 1, that is, the management session cannot be recognized at all. Package 1, can partially identify management session package 1.
- the server does not recognize the management session package at all 1
- the server discards the management session packet 1 and does not respond.
- the terminal terminates the session after more than one time threshold, and then processes according to the local policy settings, for example, repeatedly sending the same version of the management session packet 1, or repeatedly sending. Different versions of Management Session Pack 1 are required to ensure that the server can receive the correct or compatible version of the Management Session Pack 1 accurately and quickly. If the terminal only supports one version of the protocol, the session is no longer initiated.
- the server can partially identify the management session package 1
- the server can at least identify the session identifier in the management session packet 1, and optionally, the terminal identifier can be identified. In this way, the server can select the supported protocol version to reply to the management session packet 2 to the terminal, and the selected method is also selected according to the policy setting order or by priority.
- the management session package 2 includes the version number supported by the server. Optionally, it also includes an error message indicating to the terminal that the management session package 1 is not supported.
- the terminal determines whether the version number of the management session package 2 is supported. If it is supported, the management session packet is resent to the server according to the protocol of the version. If not, the terminal selects to send the other version of the management session packet according to the policy. Then repeat the steps in 2.2.
- the terminal includes all the version numbers supported by the terminal, and may also include the preferred version number recommended by the terminal, in addition to the protocol version number of the management management session package 1 itself.
- the server determines a version based on the information to establish a session with the terminal, for example, the server selects to use the same version as the management session package 1, or selects one from the version supported by the terminal, or selects the terminal.
- the preferred version of the recommendation which avoids multiple iterations as described above, saving resources and time.
- the embodiment of the invention provides a terminal. As shown in FIG. 6, the terminal includes:
- a first management session packet sending unit configured to send a first management session packet to the server
- the policy setting unit is used to set the policy; it is processed according to the policy set by the policy setting unit.
- the embodiment of the present invention further provides a server, as shown in FIG. 7, the server includes: an identifying unit, configured to identify a first management session packet sent by the terminal;
- a second management session packet sending unit configured to reply to the terminal by using the second management session packet when the first management session packet is partially identified.
- the method provided in Embodiment 1 can not only negotiate during the management session, but also negotiate only the version, that is, the session package does not include other management session contents except the version-related fields.
- This negotiation process can be in the same session as the subsequent management session process or in different tongues.
- the protocol versions supported by the terminal are 1.3 and 1.4, and the servers support 2.0, 1.2, 1.3, and 1.4.
- the server initiates the management session packet 0 to the terminal with the default protocol version 2.0.
- the specific contents of the management session packet 0 are as follows:
- the version information is given at the very front of the management session pack 0.
- the association with the management session packet 0 may also include a correlation identifier, such as using a string abc, or using the time of sending the packet as a correlation identifier, such as 20080201143300, without limiting the specific representation of the correlation identifier.
- the terminal finds that the protocol version is not supported at all. If the feedback flag set locally is feedback error response information to the server and the terminal receives the correlation identifier, the terminal feeds back the information to the server as follows:
- the type of error can be no, That is, it is only indicated by Error, and the terminal support version may not be available because it is optional.
- 20080201143300 is the correlation identifier fed back to the server, indicating that this is a reply to the management session packet 0 sent above, instead of the other management session packet 0, which is mandatory.
- the server After the server receives the error response information, if the information does not include the version information supported by the terminal, that is, 1.3; 1.4 is not included, the server performs subsequent processing according to the locally set policy.
- the policy set locally by the server may be a version selection policy.
- the version order is 2.0, 1.2, 1.3.... and so on. If the flag is equal to 2, the server will initiate management session packet 0 again, and the protocol version is 1.2. The above process will be repeated by the subsequent terminal and server.
- the server may perform corresponding processing according to a locally set time gate P ⁇ and a repeated transmission policy flag, for example, the time threshold is set to 60 seconds, and the transmission is repeated.
- the time threshold and flag bits can also be set to other values, and parameters such as the number of repetitions, the order of rotation, the number of version rotations, and the like should not be construed as limiting the invention. If the terminal initiates a session with the server during the iterative process, the iterative process stops.
- the protocol versions supported by the terminal are 1.3 and 1.4, and the servers support 2.0, 1.2, and 1.3.
- the server initiates the management session packet 0 to the terminal with the default protocol version 2.0.
- the specific contents of the management session packet 0 are as follows:
- the terminal identifies the server ID and session identifier information included in the management session packet 0, and directly initiates a session with the server using version 1.4.
- the version used to initiate the session is determined by the local policy flag, which is the server-side version in the second embodiment.
- the selection strategy flag is similar and will not be mentioned.
- the server Since the server does not support version 1.4, the server terminates the session and then initiates other versions of the management session package 0 according to the local policy flag bits, for example, the version 1.3 management session package 0 is initiated in descending order.
- the terminal can initiate the management session package of version 1.3 this time. 1 Start a management session with the server.
- the protocol version supported by the terminal is 1.2 and 2.0, and the server supports 2.0.
- the terminal uses the default protocol version 1.2 to initiate the management session package 1.
- the management session package 1 is as follows:
- the server does not respond because it cannot recognize the management session packet 1.
- the time threshold is set to 30 seconds on the terminal, and a repeat transmission policy flag similar to that of the second embodiment is set. After 30 seconds, the terminal terminates the session, and then the 2.0 version of the management session package 1 is repeatedly sent to re-establish the session.
- the server can identify the management session package 1 and the management session begins.
- the protocol versions supported by the terminal are 1.2 and 2.0, and the servers support 2.0 and 3.0.
- the terminal initiates management session package 1 using the default protocol version 1.2.
- the server can partially identify the session identifier in the management session packet 1, that is, the content in ⁇ 8688101110>, and optionally identify the terminal identifier, that is, the content in ⁇ 801 « ⁇ >, and the message identifier, that is, ⁇ MsgID> ⁇ content.
- the server selects the version of the reply according to a setting of the version selection flag in the second embodiment. According to the flag bit, the server selects the version 2.0 to reply to the terminal with the management session package 2, and the management session package 2 is as follows:
- the management session package 2 optionally includes a ⁇ Status> portion for prompting the terminal.
- the server does not support the management session package version 1.
- the terminal determines the version number or ⁇ Status>.
- the server does not support 1.2, but supports 2.0, the terminal uses version 2.0 to re-initiate management session package 1 to establish a session with the server, and then the terminal locally records the version of the session with the server, and still uses the version and server in the next management session.
- Session the method of recording can be to modify the default protocol flag.
- the protocol version supported by the terminal is 1.2, and the server supports 1.2, 2.0 and 3.0.
- the server initiates management session package 0 using the default protocol version 1.2, which also includes all version numbers supported by the server, and the preferred version number recommended by the server.
- the preferred version number is an optional field, and the management session package 0 is as follows:
- the protocol versions supported by the terminal are 2.0 and 3.0, and the servers support 2.0 and 3.0.
- the terminal initiates a management session package 1 using the default protocol version 3.0, which also includes all version numbers supported by the terminal.
- the management session package 1 is as follows:
- the server uses the trial error method similar to that in the fourth embodiment to solve.
- the terminal After receiving the management session package 2, the terminal continues the session with the server using version 2.0, and then the terminal locally records the version of the session with the server, and still uses the version to communicate with the server during the next management session.
- the recording method may be Modify the default protocol flag.
- the protocol versions supported by the terminal are 1.2 and 2.0, and the servers support 1.2, 2.0 and 3.0.
- the server initiates management session package 0 using the default protocol version 1.2, which also includes all version numbers supported by the server, and the preferred version number recommended by the server, wherein the preferred version number is an optional field, and the management session package 0 is as shown in the following table. :
- the terminal records the negotiated session version locally, and uses version 2.0 and the server in the future management session with the server. Continue the conversation.
- Management session package 1 is as follows:
- the server After the server receives the management session packet 1, the session can be ended, or the management session can be followed.
- the server records the negotiated session version locally, and uses the 2.0 version protocol in the future management session with the terminal. Of course, because there is a ⁇ 1 ⁇ 0861> field, the server can also select the 1.2 version in the future session. See if the settings on the terminal accept the session for that version.
- the packet 1 replied to the server can be as follows:
- Terminal ⁇ Data> tells the server that the version is not supported, and ⁇ Data> is an optional field.
- the protocol versions supported by the terminal are 2.0 and 3.0, and the servers support 2.0 and 3.0.
- the terminal initiates a management session package 1 using the default protocol version 2.0, which also includes all version numbers supported by the terminal.
- the management session package 1 is as follows:
- the management session package does not include other management session contents.
- the two parties can determine according to this situation that this is a version negotiation process, excluding management content.
- Field such as ⁇ 86881011 Ding 6>, to indicate that this session is Version negotiation session.
- ⁇ VerProtoSet> is an optional field.
- the session can be ended, or the management session can be followed.
- the terminal records the negotiated session version locally, and uses version 2.0 and the server to continue the management session with the server in the future.
- the method of recording may be to modify the default protocol flag.
- the terminal can also select version 3.0 in a future session, and then see if the settings on the server accept the version of the session.
- the terminal and the server can partially identify the management session packet sent by the other party, and the field in the management session packet needs to be set to a version-compatible field, for example, the management session package in the second embodiment. 0: as shown in the following table:
- the session identifier and server identification field need to be set to the version compatibility field, that is, the position of these two fields is set to version 1.2 in version 2.0. The same place, this can facilitate the terminal of 1.2 to contact the server.
- This method can be extended to more versions so that each version of Management Session Pack 0 has some compatibility.
- the version identifier can also be fixed at the beginning of the management session packet 0 as a version compatibility field.
- Both the server and the terminal can set ⁇ 8688101110> as a version-compatible field, that is, the name and position of the field remain unchanged regardless of any version, so that both parties can identify a session through it, and then reply to the tongue. So that the parties will not immediately terminate the session because they are unrecognizable.
- the ⁇ Source> ⁇ MsgID> field can also be set to the version compatibility field.
- the ⁇ VerProtoSet> mentioned in the seventh embodiment and related embodiments can also be set as a version compatible field.
- ⁇ 3 ⁇ 4 ⁇ 0>, ⁇ 1 ⁇ 2 ⁇ mentioned in the related embodiments. 11611 ⁇ > and ⁇ 1 ⁇ 2 ⁇ 1"01;0> can also be set to version compatible fields to meet the requirements of the mutual negotiation method and the version negotiation session method.
- the management session package 0 includes all the version numbers supported by the server in addition to the protocol version of the server, and optionally includes the preferred version number recommended by the server, and also includes the seventh embodiment. Version negotiation field. This can be achieved by extending the function in the management package 0. Of course, it can also be implemented by adding new fields. This example is described in more detail on the basis of the previous example.
- the subsequent version negotiation indicates that the purpose of this management session package is to establish a version negotiation session instead of a management session.
- the three fields of the extension can be set to the version compatibility field as described in Embodiment 10, that is, all subsequent versions can recognize the location and content of the field, so that the versions of the terminal and the server can be mutually negotiated.
- 1.2; 2.0; 3.0 can be expressed only as 3.0, and then the default server supports all versions below 3.0, namely 1.2 and 2.0.
- Example 12 determines the corresponding field
- the rest of the content is exactly the same as the DM.
- data synchronization package 1 For other data synchronization packages, such as data synchronization package 1, as follows:
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Telephonic Communication Services (AREA)
Description
版本协商方法及终端、 服务器
本申请要求于 2008 年 2 月 2 日提交中国专利局、 申请号为 200810066058.0、 发明名称为 "版本协商方法及终端、 服务器" 的中国专利申 请的优先权, 其全部内容通过引用结合在本申请中。
技术领域
本发明涉及设备管理, 尤其涉及设备管理中的版本协商。
背景技术
OMA ( Open Mobile Alliance, 开放移动联盟 ) DM ( Device Management, 设备管理 ) VI.2 (以下简称 DM规范)是 OMA DM WG制定的设备管理统一规 范。 DM ***提供了一种低成本方案,用于方管理和设置无线网络终端设备(比 如手机终端及终端中的功能对象)中的环境和配置信息,解决这些网络设备在 使用过程中遇到的问题,通过 OTA(over the air无线网络)方式进行软件和固件 的安装、 升级等操作, 并提供更加人性化和个性化的服务, 提高用户体验。 方 可以是移动运营商, 业务提供商或者合作方的信息管理部门。
OMA DM技术包括两个阶段, 其中一个阶段称为 Bootstrap (初始化 , 或 引导), 该阶段能使一个设备从没有参数配置的空状态转换到可以向 DM服务 器发起管理会话的状态。 已经被 Bootstrap的终端还可以进一步被 Bootstrap, 以使该设备可以向新的 DM服务器发起会话。除了基本的连接信息外,设备和 用户应用设置信息也可以在 Bootstrap过程中进行配置。
DM的一个阶段即为管理阶段,在此阶段服务器就可以对终端设备进行管 理或信息的 Provisioning (供应)。 DM管理阶段又分为两个阶段: 会话建立阶 段和管理会话阶段, 其中会话建立阶段的流程如错误! 未找到引用源。 所示: 当服务器需要对终端进行管理时,服务器会向终端发起通知,该通知称为 管理会话包 0,管理会话包 0中包括协议版本、会话标识、服务器标识等信息, 管理会话包 0用于触发终端向服务器发起会话。终端收到管理会话包 0后开始 建立与服务器的会话, 即向服务器发送管理会话包 1 , 管理会话包 1中包括了 认证信息、设备信息等, 用于让服务器验证终端的身份和了解终端的设备相关 参数。 服务器收到管理会话包 1后向终端发送管理会话包 2, 其中包括认证信 息、初始化管理操作或用户交互命令, 用于让终端验证服务器的身份以及开始
对终端进行管理或与用户交互该次管理会话的一些信息。
对于管理会话包 0, 其传输方式与后续管理会话包可能是不同的, 其中一 种传输方式是通过承载于 SMS (短消息 )上的 WAP Push来实现, 终端通过对 该 WAP Push消息的解析即可知道该消息中的信息是针对 DM应用的,还可知 道该消息中承载的是管理 ^舌包 0。
除了服务器发起会话的情况以夕卜, 终端也可以主动发起会话,此时的流程 与上述图 1中的流程^敖不同, 即流程中不包括管理 ^舌包 0。
由于 OMADM的发展, 现有特性逐渐不能满足一些不断涌现的新需求, 所以 DM技术已开始并会不断产生新版本的技术规范 ,现有技术中不同的设备 (包括服务器和终端)就可能会使用不同版本的技术规范, 同一个设备也可能 支持多个版本的技术规范 , 这些设备在进行会话时就会产生版本兼容问题。
发明内容
本发明实施例要解决的技术问题是服务器与终端不能相互协商版本的问 题。
本发明提供的一种版本协商的方法, 其特征在于, 包括:
服务器使用设备管理通知消息向终端发起会话;
若所述终端无法识别所述设备管理通知消息的协议版本;则向所述终端重 新发送其他协议版本的设备管理通知消息。
本发明提供的一种版本协商方法, 包括:
服务器使用设备管理通知消息向终端发起会话;
若所述终端无法完全识别所述设备管理通知消息,但是可以识别所述设备 管理通知消息中的服务器标识和会话标识;则根据所述服务器标识和会话标识 向所述服务器发送第一管理会话包;
若所述服务器可以识别所述第一管理会话包, 则继续进行会话; 若所述服 务器无法识别所述第一管理会话包,则选择其他协议版本重新发送设备管理通 知消息给所述终端。
本发明提供的一种版本协商的方法, 包括:
终端使用第一管理会话包向服务器发起会话;
若所述服务器无法识别所述第一管理会话包;则终端向所述服务器重新发
送其他协议版本的第一管理会话包。
本发明提供的一种版本协商方法, 其特征在于, 包括:
服务器向终端发送设备管理通知消息;
所述设备管理通知消息包括服务器支持的版本号;使得所述终端可以选择 服务器支持的版本与服务器进行会话。
本发明提供的一种版本协商方法, 包括:
终端向服务器发送第一管理会话包;
若所述服务器不支持所述第一管理会话包的版本;则向所述终端返回第二 管理会话包;
所述第二管理会话包包括服务器支持的版本号;使得所述服务器可以选择 服务器支持的版本与终端进行会话。
本发明提供的一种终端, 包括:
识别单元 , 用于识别服务器发送的设备管理通知消息;
错误响应信息单元,用于在所述识别单不能识别所述设备管理通知消息或 部分识别所述服务器发送的设备管理通知消息时,生成并向服务器发送错误响 应信息。
本发明提供的一种服务器, 包括:
设备管理通知消息包发送单元, 用于向终端发送设备管理通知消息; 策略设置单元, 用于设置策略;
策略处理单元,用于在终端发送错误响应信息或发送第一管理会话包时根 据策略设置单元进行处理。
本发明提供的一种终端, 包括:
第一管理会话包发送单元, 用于向服务器发送第一管理会话包; 策略设置单元, 用于设置策略; 根据策略设置单元设置的策略进行处理。
本发明提供的一种服务器, 包括:
识别单元, 用于识别终端发送的第一管理会话包;
第二管理会话包发送单元, 用于部分识别所述第一管理会话包时,使用第
二管理会话包回复终端。
本发明实施例通过终端与服务器的版本协商,从而达到了设备之间相互兼 容的效果。
附图说明
图 1是现有技术 DM管理阶段会话建立阶段的流程图;
图 2是本发明实施例一的版本协商方法流程图;
图 3是本发明实施例一的一种终端示意图;
图 4是本发明实施例一的一种服务器示意图;
图 5是发明实施例一的另一种版本协商方法流程图;
图 6是本发明实施例一的另一种终端示意图;
图 7是本发明实施例一的另一种服务器。
具体实施方式
实施例一
根据管理会话发起方的不同,本方法又分为服务器发起和终端发起两种情 况。服务器或终端支持多个版本的协议时使用默认的协议版本来发起会话, 若 只支持一个版本的协议时 , 该版本本身就是默认的协议版本。
本发明实施例提供一种版本协商的方法。 所述方法如图 2所示, 包括: 服务器使用设备管理通知消息向终端发起会话;
终端识别设备管理通知消息;
终端不能识别设备管理通知消息时:不做任何反应或者向服务器发送出错 响应信息; 服务器根据本地设置策略进行处理。
终端部分识别管理会话包时:不做任何反应或者向服务器发送出错响应信 息,服务器根据本地设置策略进行理; 或使用第一管理会话包发起与服务器的 会话, 服务器根据服务器本地策略进行处理。
具体如下:
1、 服务器发起会话
服务器使用管理会话包 0发起与终端的会话,由于管理会话包 0是以服务 器上默认的协议版本发起的,终端对于管理会话包 0中信息的识别就有两种情 况, 即完全不能识别管理会话包 0、 能部分识别管理会话包 0。
1.1、 终端完全不能识别管理会话包 0
若终端中的 DM代理(DM Agent )判断不能识别服务器发送来的管理会 话包 0,则终端可以根据本地的设置来采取不同的应对措施,如不做任何响应, 或者向发送管理^舌包 0的服务器反馈出错响应信息,该出错响应信息至少管 理会话包括一个错误提示和一个相关性标识(Correlator ), 其中错误提示向服 务器说明终端不能识别该管理会话包 0;相关性标识是用于接收方(即服务器) 辨别该出错响应信息是针对哪一个管理会话包 0进行的回复,这就要求服务器 在发送管理会话包 0时就应携带相同的相关性标识,可以把该标识与管理会话 包 0同时承载于 SMS中, 发送不同的管理会话包 0时可以携带不同的相关性 标识。 可选的, 该信息中还可以管理会话包括终端支持的 DM协议版本。对于 该出错响应信息, 可以使用多种传输手段来实现, 本发明并不限定, 其中一种 方法是采用 SMS。
当服务器接收到该出错响应信息后, 若该信息中只包含错误提示, 则服务 器根据本地的策略设置来选择发起其它版本的管理会话包 0, 该策略可以是按 顺序选择或按某种预设的优先级选择。若该信息中还管理会话包括了终端支持 的协议来重新发送管理会话包 0, 选择的方法也是按照本地的策略设置, 如按 顺序或按某种优先级。若服务器只支持一个版本的协议或向终端尝试了所有自 己支持的版本的协议, 则在收到出错响应信息后不做任何操作。
在本情况中, 若终端选择不做任何响应, 则服务器可以根据本地策略设置 来处理, 例如在超过一个时间门限之后, 重复发起管理会话包 0。 可以是重复 发送相同版本的管理 ^舌包 0, 或重复发送不同版本的管理会话包 0, 或这两 种情况的各种形式的组合,以确保终端能准确及快速的接收到正确或兼容版本 的管理会话包 0。
1.2、 终端部分识别管理会话包 0
此种情况下, 终端的 DM代理(DMAgent )能部分识别管理会话包 0, 且 至少识别出了管理会话包 0中包括的服务器标识信息和会话标识信息,终端除 了可以完全按照情况 1.1的方法来处理外, 还可以直接发起与服务器的会话, 即发送管理会话包 1 , 发起会话使用的协议版本由终端本地设置的策略决定,
如按从高到低的顺序或按某种优先级。服务器接收到管理会话包 1后根据对管 理会话包 1 协议版本的支持情况选择是否继续会话, 即若支持管理会话包 1 的协议版本则继续会话, 若不支持, 则服务器根据本地的策略设置来选择发起 其它版本的管理会话包 0, 该策略可以是按顺序选择或按某种优先级选择。 若 服务器只支持一个版本的协议, 则在收到管理会话包 1后不做任何操作。 服务器在管理会话包 0中除了包含标识管理会话包 0本身的协议版本号以 夕卜,还可以包括服务器支持的所有版本号,可选地还可以包括服务器推荐使用 的首选版本号。终端可以根据这些信息确定一个版本来与服务器建立会话, 例 如终端选择使用与管理会话包 0相同地版本,或从服务器支持的版本中选择一 个,或选择服务器推荐的首选版本号,这样可以避免如上所述的多次重复尝试, 节省了资源和时间。
本发明实施例提供一种终端, 所述终端如图 2所示, 包括:
识别单元 , 用于识别服务器发送的设备管理通知消息;
错误响应信息单元,用于在所述识别单不能识别所述设备管理通知消息或 部分识别所述服务器发送的设备管理通知消息时,生成并向服务器发送错误响 应信息。
所述终端还可以包括第一管理会话包发送单元,用于在识别单元部分识别 所述服务器发送的设备管理通知消息时,使用第一管理会话包发起与服务器的 会话。
本发明实施例提供一种服务器, 所述服务器如图 4所示, 包括:
设备管理通知消息发送单元, 用于向终端发送设备管理通知消息; 策略设置单元, 用于设置策略;
策略处理单元,用于在终端发送错误响应信息或发送第一管理会话包时根 据策略设置单元进行处理。 本发明实施例还提供一种版本协商的方法, 所述方法如图 5所示, 终端使用第一管理会话包发起与服务器的会话;
服务器识别所述第一管理会话包;
服务器不能识别所述第二管理会话包时不做响应,终端超过时间门限终止 该会话, 根据终端本地策略进行处理;
服务器部分识别所述第一管理会话包时, 使用第二管理会话包回复终端 , 终端若支持服务器发送的第二管理会话包的协议版本,则以该协议版本的第一 管理会话包向服务器重新发送,若不支持则以其它协议版本的第一管理会话包 向服务器发送。
具体如下:
终端使用管理会话包 1发起与服务器的会话,由于管理会话包 1是以终端 上默认的协议版本发起的,服务器对于管理会话包 1中信息的识别就有几种情 况, 即完全不能识别管理会话包 1、 能部分识别管理会话包 1。
2.1、 服务器完全不能识别管理会话包 1
此时服务器丢弃管理会话包 1 , 不做任何响应 , 终端在超过一个时间门限 之后终止掉该会话, 然后根据本地的策略设置来处理, 例如, 重复发送相同版 本的管理会话包 1 , 或重复发送不同版本的管理会话包 1 , 以确保服务器能准 确及快速的接收到正确或兼容版本的管理会话包 1。 若终端只支持一个版本的 协议, 则不再发起会话。
2.2、 服务器能部分识别管理会话包 1
此情况下, 服务器至少能识别管理会话包 1中的会话标识, 可选地, 能识 别出终端标识。这样,服务器可以选择支持的协议版本对终端回复管理会话包 2, 选择的方法同样是按照策略的设置顺序选择或按优先级选择。 管理会话包 2 中包括了服务器所支持的版本号, 可选地, 还包括一个错误提示, 向终端说 明不支持管理会话包 1。
终端判断是否支持管理会话包 2的版本号, 若支持, 则以该版本的协议重 新向服务器发送管理会话包 1, 若不支持则终端根据策略选择发送其它版本的 管理会话包 1。 然后重复 2.2中的步骤。
终端除了在管理会话包 1中包含标识管理会话包 1本身的协议版本号,还 可以包括终端支持的所有版本号,可选地还可以包括终端推荐使用的首选版本 号。服务器根据这些信息确定一个版本来与终端建立会话, 例如服务器选择使 用与管理会话包 1相同的版本,或从终端支持的版本中选择一个,或选择终端
推荐的首选版本,这样可以避免如上所述的多次重复尝试,节省了资源和时间。 本发明实施例提供一种终端, 所述终端如图 6所示, 包括:
第一管理会话包发送单元, 用于向服务器发送第一管理会话包;
策略设置单元, 用于设置策略; 根据策略设置单元设置的策略进行处理。
本发明实施例还提供一种服务器, 所述服务器如图 7所示, 包括: 识别单元, 用于识别终端发送的第一管理会话包;
第二管理会话包发送单元, 用于部分识别所述第一管理会话包时,使用第 二管理会话包回复终端。
实施例一提供的方法不仅在管理会话过程中可以进行协商,还可以只对版 本进行协商, 即会话包中除了版本相关的字段外不包括其它的管理会话内容, 在这种情况下,会话包专门用于服务器和终端间协商版本,版本协商之后再开 始管理会话。这个协商过程与后面的管理会话过程可以在同一个会话中也可以 在不同^舌中。
实施例二
设终端支持的协议版本为 1.3和 1.4,服务器支持的为 2.0、 1.2、 1.3和 1.4。 服务器以默认协议版本 2.0向终端发起管理会话包 0, 管理会话包 0的具 体内容如下表所示:
2.0 ! .... i 舌标识 服务器标识 版本信息在管理会话包 0的最前端给出。 另外, 与管理会话包 0同时发送 给终端的还可以包括相关性标识, 例如使用一个字符串 abc, 或使用发送包的 时间作为相关性标识, 如 20080201143300, 不限制相关性标识的具体表现形 式。终端收到这个管理会话包后发现完全不支持这个协议版本, 则若本地设置 的反馈标志位为向服务器反馈出错响应信息且终端接收到了相关性标识,则终 端向服务器反馈信息如下表:
Error: 100 版本不支持 1.3;1.4 其中 Error:100表示终端反馈的是一个错误, 错误类型是 100, 错误描述 是 "版本不支持", 之后的 1.3;1.4是终端支持版本。 其中错误类型可以没有,
即只用 Error 表示, 终端支持版本也可以没有, 因为是可选项。 另外 20080201143300 即为向服务器反馈的相关性标识, 表示这是对上面发送的管 理会话包 0的回复, 而不是对其它的管理会话包 0, 它是必选项。
服务器收到出错响应信息后, 若该信息中不包含终端支持的版本信息, 即 不包括 1.3;1.4, 则服务器根据本地设置的策略来进行后续处理,服务器本地设 置的策略可以是一个版本选择策略标志位, 例如标志位 =0表示按从大到小顺 序选择版本, 标志位 =1表示按从小到大的顺序选择版本, 标志位 =2表示按预 设的版本顺序选择版本, 例如预设的版本顺序为 2.0、 1.2、 1.3....等等。 设标 志位此时等于 2, 则服务器再一次发起管理会话包 0, 协议版本为 1.2。 后续终 端和服务器将重复上述流程。
服务器收到出错响应信息后, 若该信息中包含了终端支持的版本信息, 即 包含 1.3;1.4, 则服务器根据本地策略标志位选择一个版本,标志位的设置可以 与上述的版本选择策略标志位类似。设标志位 =1 ,则服务器按从小到大的顺序 选择 1.3版本再一次发起管理会话包 0。
注意若服务器只支持版本 2.0 ,则收到出错响应信息后不做任何后续操作。 本例中若终端中设置的反馈标志位为不做任何响应 ,则服务器可以根据本 地设置的一个时间门 P艮和重复发送策略标志位来进行相应处理,例如时间门限 设为 60秒, 重复发送策略标志位为: 标志位 =0表示重复三次发送 2.0版本管 理会话包 0, 然后再重复三次发送 1.2版本的管理会话包 0, 以此类推直至发 送完所有的版本为止;标志位 =1表示重复发送 1.2的管理会话包 0直至发送完 所有的版本, 然后再重复发送 2.0版本的管理^舌包 0, 以此类推。 时间门限 和标志位还可以设置为其它的值, 其中重复次数、 版本轮换顺序、 版本轮换次 数等参数不应视为对本发明的限制。若在不断重复的过程中, 终端发起了与服 务器的会话则该重复过程停止。
实施例三
设终端支持的协议版本为 1.3和 1.4, 服务器支持的为 2.0、 1.2、 1.3。 服务器以默认协议版本 2.0向终端发起管理会话包 0, 管理会话包 0的具 体内容如下表所示:
2.0 .... 舌标识 服务器标识
终端识别出了管理会话包 0中包括的服务器标识和会话标识信息,直接使 用版本 1.4发起与服务器的会话, 发起会话所使用的版本由本地策略标志位决 定, 这与实施例二中服务器端的版本选择策略标志位是类似的, 不再赞述。
由于服务器不支持版本 1.4, 则服务器终止该会话, 然后根据本地策略标 志位来发起其它版本的管理会话包 0,例如按从大到小的顺序,发起了版本 1.3 的管理会话包 0。
终端此次即可发起版本 1.3的管理会话包 1开始与服务器进行管理会话。 实施例四
设终端支持的协议版本为 1.2和 2.0, 服务器支持的为 2.0。
终端使用默认的协议版本 1.2发起管理会话包 1,管理会话包 1如下所示:
<SyncML xmlns='SYNCML:SYNCMLl .2'>
<SyncHdr>
<VerDTD>l .2</VerDTD>
<VerProto>DM/l .2</VerProto>
<SessionID> 1 </SessionID>
</SyncHdr>
<SyncBody> </SyncBody>
</SyncML>
其中<^½¾0〖0>标识的就是 DM协议版本。
服务器由于不能识别该管理会话包 1 , 则不做任何响应。 终端上设置了时 间门限为 30秒,另外设置了类似实施例二的重复发送策略标志位,在 30秒后, 终端终止该会话, 然后重复发送 2.0版本的管理会话包 1以重新建立会话。 服 务器可以识别管理会话包 1 , 管理会话开始。
实施例五
设终端支持的协议版本为 1.2和 2.0, 服务器支持的为 2.0和 3.0。
终端使用默认的协议版本 1.2发起管理会话包 1,管理会话包 1如下所示:
<SyncML xmlns='SYNCML:SYNCMLl .2'>
<SyncHdr>
<VerDTD>l .2</VerDTD>
<VerProto>DM/l .2</VerProto>
<SessionID>2</SessionID>
<MsgID>K/MsgID>
<Source>
<LocURI>IMEI:493005100592800</LocURI>
</Source>
</SyncHdr>
<SyncBody> </SyncBody>
</SyncML>
本例中服务器能部分识别出管理会话包 1 中的会话标识, 即<8688101110> 中的内容, 可选地能识别出终端标识, 即<801«^>中的内容, 和消息标识, 即 <MsgID>†的内容。然后服务器根据一个类似实施例二中版本选择标志位的设 置来选择回复的版本, 设按照标志位, 服务器选择其中的版本 2.0向终端回复 管理会话包 2, 管理会话包 2如下所示:
<SyncML xmlns='SYNCML:SYNCMLl .2'>
<SyncHdr>
<VerSchema>2.0</VerSchema>
<VerProto>DM/2.0</VerProto>
<SessionID>2</SessionID>
<Target>
<LocURI>IMEI:493005100592800</LocURI>
</Target>
</SyncHdr>
<SyncBody>
<Status>
<MsgRef> 1 </MsgRef><CmdRef>0</CmdRef>
<Cmd>SyncHdr</Cmd>
<CmdID>6</CmdID>
<SourceRef>IMEI:493005100592800</SourceRef> <Data>430</Data><!—版本不支持 ~>
</Status>
</SyncBody>
</SyncML>
管理会话包 2中可选地包括了一个 <Status>部分, 用于提示终端, 服务器 不支持管理会话包 1 的版本, 在收到管理会话包 2后, 终端根据版本号或 <Status>判断出服务器不支持 1.2, 而支持 2.0, 则终端使用版本 2.0重新发起 管理会话包 1与服务器建立会话,然后终端在本地记录该次与该服务器会话的 版本,在下一次管理会话时仍使用这个版本与服务器会话,记录的方法可以是 修改默认协议标志位。服务器收到管理会话包 1后判断出完全支持终端发送的 管理会话包, 则管理会话开始。
实施例六
设终端支持的协议版本为 1.2, 服务器支持的为 1.2, 2.0和 3.0。
服务器使用默认的协议版本 1.2发起管理会话包 0, 其中还包括了服务器 支持的所有版本号, 以及服务器推荐使用的首选版本号,其中首选版本号为可 选字段, 管理会话包 0如下所示:
1.2 1.2;2.0;3.0 2.0 会话标识 服务器标识 其中 1.2;2.0;3.0为支持的所有版本号, 后面的 2.0为首选版本号。 这两个 信息可以在发送管理会话包 0前, 在版本 1.2协议中管理会话包 0的预留字段
***相应字段来实现, 当然, 若不使用 1.2版本的管理会话包 0, 则不限定这 两个字段的***位置。 另外若没有首选版本号则该字段用 0填充。
终端识别出管理会话包 0使用的版本为 1.2则使用 1.2版本发起管理会话。 设终端支持的版本为 2.0和 3.0, 则可以根据本地标志位的设置来选择版 本: 标志位 =0 选择服务器推荐的且终端支持的版本, 若没有推荐的则选择服 务器支持的且终端中优先级高的版本; 标志位 =1 选择服务器支持的且终端中 优先级高的版本。 这样, 若标志位为 0, 则终端使用 2.0版本建立会话, 若为 1, 且终端中 3.0版本的优先级高, 则终端使用 3.0版本建立^舌。 之后终端在 本地记录该次与该服务器会话的版本,在下一次管理会话时仍使用这个版本与 服务器会话。
实施例七
设终端支持的协议版本为 2.0和 3.0, 服务器支持的为 2.0和 3.0。
终端使用默认的协议版本 3.0发起管理会话包 1 , 其中还包括了终端支持 的所有版本号, 管理会话包 1如下所示:
<SyncML xmlns='SYNCML:SYNCMLl .2'>
<SyncHdr>
<VerSchema>3.0</VerSchema>
<VerProto>DM/3.0</VerProto>
<VerProtoSet>DM/2.0/3.0<A¾rProtoSet>
<SessionID>2</SessionID>
</SyncHdr>
<SyncBody> </SyncBody>
</SyncML>
服务器若不能识别管理会话包 1 则使用类似实施例四中的尝试出错法来 解决。 本例中服务器能部分识别出管理会话包 1, 然后根据一个版本选择标志 位的设置来选择回复的版本: 标志位 =0选择终端使用的版本, 标志位 =1按服
务器预设的版本顺序选择 (2.0, 3.0)。 设标志位设置为 1, 则服务器选择其中的 版本 2.0向终端回复管理会话包 2, 管理会话包 2如下所示:
<SyncML xmlns='SYNCML:SYNCMLl .2'>
<SyncHdr>
<VerSchema>2.0</VerSchema>
<VerProto>DM/2.0</VerProto>
<SessionID>2</SessionID>
</SyncHdr>
<SyncBody>
</SyncBody>
</SyncML>
在收到管理会话包 2后, 终端使用版本 2.0与服务器继续会话, 然后终端 在本地记录该次与该服务器会话的版本,在下一次管理会话时仍使用这个版本 与服务器会话 , 记录的方法可以是修改默认协议标志位。
实施例八
设终端支持的协议版本为 1.2和 2.0, 服务器支持的为 1.2, 2.0和 3.0。 服务器使用默认的协议版本 1.2发起管理会话包 0, 其中还包括了服务器 支持的所有版本号, 以及服务器推荐使用的首选版本号,其中首选版本号为可 选字段, 管理会话包 0如下表所示:
3.0 1.2;2.0;3.0 版本协商 ^舌标识 服务器标识 其中 1.2;2.0;3.0为支持的所有版本号, 后面的 0表示没有首选版本, 之后 的 "版本协商" 表示这个会话的目的是用于版本协商。 这些信息可以在发送 管理会话包 0前, 在版本 1.2协议中管理会话包 0的预留字段***相应字段来 实现, 当然, 若不使用 1.2版本的管理会话包 0, 则不限定这些字段的***位 置。
终端可以根据本地标志位的设置来选择版本: 标志位 =0选择服务器推荐 的且终端支持的版本,若没有推荐的则选择服务器支持的且终端中优先级高的
版本; 标志位 =1选择服务器支持的且终端中优先级高的版本。 设标志位为 1, 且 2.0版本的优先级高, 则终端使用 2.0版本发送管理 ^舌包 1, 终端在本地 记录协商的会话版本, 在以后与该服务器进行管理会话时均使用版本 2.0与服 务器继续会话。 管理会话包 1如下所示:
<SyncML xmlns='SYNCML:SYNCMLl .2'>
<SyncHdr>
<VerSchema>2.0</VerSchema>
<VerProto>DM/2.0<A¾rProto>
<VerProtoSet>DM/1.2/2.0<A¾rProtoSet>
<SessionID>3</SessionID>
</SyncHdr>
</SyncML>
注意, 此管理会话包中不包括其它管理会话内容。 另外, <VerProtoSet> 为可选字段。
服务器收到管理会话包 1后,会话可以结束,也可以紧接着进行管理会话。 服务器在本地记录协商的会话版本, 在以后与该终端的管理会话时均使用 2.0 版本的协议, 当然, 由于有 ^^1^0861>字段, 服务器也可以在以后会话中选 择 1.2版本, 这时看终端上的设置是否接受该版本的会话。
若终端与服务器不支持相同的版本的协议, 例如本例中终端只支持 1.3版 本, 则向服务器回复的包 1可以如下:
<SyncML xmlns='SYNCML:SYNCMLl .2'>
<SyncHdr>
<VerDTD>l .3</VerDTD>
<VerProto>DM/l .3</VerProto>
<VerProtoSet>DM/l .3<A¾rProtoSet>
<Data>430</Data>< !—版本不支持 ~>
</SyncHdr>
</SyncML>
终端通 <Data>告知服务器版本不支持 , <Data> 为可选字段。
实施例九
设终端支持的协议版本为 2.0和 3.0, 服务器支持的为 2.0和 3.0。
终端使用默认的协议版本 2.0发起管理会话包 1 , 其中还包括了终端支持 的所有版本号, 管理会话包 1如下所示:
<SyncML xmlns='SYNCML:SYNCMLl .2'>
<SyncHdr>
<VerSchema>2.0</VerSchema>
<VerProto>DM/2.0<A¾rProto>
<VerProtoSet>DM/2.0/3.0</VerProtoSet>
<SessionID>4</SessionID>
</SyncHdr>
</SyncML>
服务器根据一个版本选择标志位的设置来选择回复的版本: 标志位 =0 选 择终端使用的版本, 标志位 =1按服务器预设的版本顺序选择 (2.0, 3.0)。 设标 志位设置为 1, 则服务器选择其中的版本 2.0向终端回复管理^舌包 2, 且服 务器在本地记录协商的会话版本, 在以后与该终端的管理会话时均使用 2.0版 本的协议, 管理会话包 2如下所示:
<SyncML xmlns='SYNCML:SYNCMLl .2'>
<SyncHdr>
<VerSchema>2.0</VerSchema>
<VerProto>DM/2.0</VerProto>
<VerProtoSet>DM/2.0/3.0<A¾rProtoSet>
<SessionID>4</SessionID>
</SyncHdr>
</SyncML>
注意 , 在上面两个管理会话包中管理会话包中不包括其它管理会话内容, 双方可以根据这个情况来确定这是一个版本协商过程, 不包括管理内容, 当然 也可以在管理会话包中加入一个字段, 如<86881011丁 6> , 来表示这个会话是
版本协商会话。 另外, <VerProtoSet>为可选字段。
在收到管理会话包 2后, 会话可以结束, 也可以紧接着进行管理会话。 终 端在本地记录协商的会话版本,在以后与该服务器进行管理会话时均使用版本 2.0与服务器继续 ^舌, 记录的方法可以是修改默认协议标志位。 当然由于有 <VerProtoSet>字段, 终端也可以在以后会话中选择 3.0版本, 这时看服务器上 的设置是否接受该版本的会话。
另外若服务器版本不支持, 同样可以在包 2回复版本不支持的信息。 实施例十
在实施例三和五中提到, 终端和服务器能部分识别对方发送过来的管理 会话包,这需要把管理会话包中的一些字段设定为版本兼容字段, 例如实施例 二中的管理会话包 0: 如下表所示:
2.0 .... 舌标识 服务器标识 由于终端不支持 2.0版本, 则需要把会话标识和服务器标识字段设定为版 本兼容字段, 即在版本 2.0中把这两个字段的位置设定于与版本 1.2相同的地 方, 这样可以方便 1.2的终端与服务器进行联系。 该方法可以扩展到更多的版 本, 以使各版本的管理会话包 0之间都具备一定的兼容性。 当然, 版本标识也 可以固定在管理会话包 0的开始位置作为版本兼容字段。
又例如在实施例五中的管理会话包 1 :
<SyncML xmlns='SYNCML:SYNCMLl .2'>
<SyncHdr>
<VerDTD>l .2</VerDTD>
<VerProto>DM/l .2</VerProto>
<SessionID>2</SessionID>
<MsgID>K/MsgID>
<Source>
<LocURI>IMEI:493005100592800</LocURI>
</Source>
</SyncHdr>
<SyncBody>
</SyncBody>
</SyncML>
服务器和终端都可以把其中的<8688101110>设置为版本兼容字段, 即无论 任何版本都保持该字段的名称和位置不变,这样, 双方就可以通过它来辨识一 个会话,进而对^舌进行回复, 以使双方不会因为什么都无法识别而立即终止 掉会话。 其中 <Source> <MsgID>字段也可以设为版本兼容字段。
在实施例七及相关实施例中提到的 <VerProtoSet>也可以设置为版本兼容 字段。
另外相关实施例中提到的<^¾^丁0>、 <^½^。11611^>和<^½^1"01;0>也都可以 设置为版本兼容字段以满足相互协商法和版本协商会话法的要求。
实施例十一
在实施例六和八中提到, 管理会话包 0中除了本身的协议版本,还包括服 务器支持的所有版本号,及可选地包括服务器推荐使用的首选版本号, 另外还 包括实施例七中的版本协商字段。这可以通过在管理^舌包 0中做功能扩展来 实现的, 当然, 也可以通过增加新的字段来实现, 本例在前例的基础上更伴细 的描述一下。
( 1 )、在 DM现有的版本 1.2协议中已经在管理会话包 0中预留了一个空 字段为未来扩展功能使用, 本发明即对 1.2协议做了一些扩展, 把服务器支持 的所有版本和首选版本放在这个字段内 , 如下表所示:
1.2 1.2;2.0;3.0 2.0 版本协商 会话标识 服务器标识
其中 1.2;2.0;3.0为支持的所有版本号, 后面的 2.0为首选版本号, 后面 的版本协商表明这个管理会话包的目的是建立版本协商会话而不是管理会话。
扩展的这三个字段可以设定为如实施例十所述的版本兼容字段 ,即所有后 续版本都能识别字段的位置和内容, 这样便于终端和服务器的版本相互协商。
( 2 )、 如前所述, 也可以通过增加新的字段来实现, 如上表所示, 只是字 段的位置可能会不同,本发明不限制字段在管理会话包 0中的具***置。但这
样, 支持 1.2版本的终端就无法识别这三个字段了, 只能是后续版本的终端可 以识别。 另外, 也可以把增加的新字段设定为后续所有版本的兼容字段。
注意, 在上面的方法中, 并不限定字段的具体内容和表示方法, 例如 1.2;2.0;3.0可以仅表示为 3.0,然后默认服务器支持 3.0以下的所有版本,即 1.2 和 2.0。 另外, 也不一定用分号进行分割, 可以用其他方式表示, 只要使终端 能知道服务器支持的版本。
在实施例七及后续相关实施例中提到的 ^^1^0861>也如此,即可以通过 在 1.2版本上的功能扩展或在后续版本中添加新字段来实现, 同样不限定其具 体内容和表示方法。
实施例十二 定相应字段
在 DS通知包的包头中, 除了 notification-id (通知标识)夕卜, 其余部分的 内容与 DM完全相同, 这
样, 上述各实施例的方法可适用于 DS。
对于其它数据同步包, 如数据同步包 1 , 如下所示:
<SyncML>
<SyncHdr>
<VerDTD> 1.2</VerDTD>
<VerProto>SyncML/l .2<A¾rProto>
<SessionID>4</SessionID>
<MsgID>K/MsgID>
<Target>
<LocURI>http ://www. syncml.org/ sync-server</LocURI>
</Target>
<Source>
<LocURI>IMEI:493005100592800</LocURI>
</Source>
</SyncHdr>
<SyncBody>
</SyncBody>
</SyncML>
这与 DM也完全一样, 因此也适用上述各实施例的方法。
Claims
1. 一种版本协商的方法, 其特征在于, 包括:
服务器使用设备管理通知消息向终端发起会话;
若所述终端无法识别所述设备管理通知消息的协议版本;则向所述终端重 新发送其他协议版本的设备管理通知消息。
2. 如权利要求 1所述的版本协商方法, 其特征在于, 所述其他协议版本 的选择按从高到低的顺序选择。
3. 如权利要求 1所述的版本协商方法, 其特征在于, 所述终端无法识别 所述设备管理通知消息的判断依据为:在预置的时间内未收到所述终端的第一 管理会话包或者收到所述终端反馈的出错响应信息,所述出错响应信息指示终 端不能识别所述设备管理通知消息。
4. 如权利要求 3所述的版本协商方法, 其特征在于, 所述出错响应信息 中包括终端支持的设备管理协议版本信息;
所述服务器收到所述出错响应信息后,根据所述终端支持的设备管理协议 版本重新发送设备管理通知消息。
5. 如权利要求 3所述的版本协商方法, 其特征在于, 所述出错响应信息 采用短消息 SMS发送。
6. 一种版本协商方法, 其特征在于, 包括:
服务器使用设备管理通知消息向终端发起会话;
若所述终端无法完全识别所述设备管理通知消息 ,但是可以识别所述设备 管理通知消息中的服务器标识和会话标识;则根据所述服务器标识和会话标识 向所述服务器发送第一管理会话包;
若所述服务器可以识别所述第一管理会话包, 则继续进行会话; 若所述服 务器无法识别所述第一管理会话包 ,则选择其他协议版本重新发送设备管理通 知消息给所述终端。
7. 一种版本协商的方法, 其特征在于, 包括:
终端使用第一管理会话包向服务器发起会话;
若所述服务器无法识别所述第一管理会话包;则终端向所述服务器重新发 送其他协议版本的第一管理会话包。
8. 如权利要求 7所述的版本协商方法, 其特征在于, 所述其他协议版本 的选择按从高到低的顺序选择。
9. 如权利要求 8所述的版本协商方法, 其特征在于, 所述服务器无法识 别所述第一管理会话包的判断依据为:在预置的时间内未收到所述服务器的第 二管理^舌包或者收到所述服务器反馈的出错响应信息,所述出错响应信息指 示服务器不能识别所述设备管理通知消息。
10. 如权利要求 9所述的版本协商方法, 其特征在于, 所述出错响应信息 中包括服务器支持的设备管理协议版本信息;
所述终端收到所述出错响应信息后,根据所述服务器支持的设备管理协议 版本重新发送第一管理会话包。
11. 如权利要求 9所述的版本协商方法, 其特征在于, 所述出错响应信息 采用短消息 SMS发送。
12. 一种版本协商方法, 其特征在于, 包括:
服务器向终端发送设备管理通知消息;
所述设备管理通知消息包括服务器支持的版本号;使得所述终端可以选择 服务器支持的版本与服务器进行会话。
13. 如权利要求 12所述的版本协商的方法, 其特征在于, 所述设备管理 终端优先选择所述首选版本号与服务器进行后续的会话。
14. 如权利要求 13所述的版本协商方法, 其特征在于, 还包括: 终端使 用一个比通知消息中服务器推荐使用的首选版本号低的版本与服务器建立会 话。
15—种版本协商方法, 其特征在于, 包括:
终端向服务器发送第一管理会话包;
若所述服务器不支持所述第一管理会话包的版本;则向所述终端返回第二 管理会话包;
所述第二管理会话包包括服务器支持的版本号;使得所述服务器可以选择 服务器支持的版本与终端进行会话。
16. 如权利要求 15所述的版本协商的方法, 其特征在于, 所述第第二管
理会话包中还包括服务器推荐使用的首选版本号,使得终端可以优先选择所述 首选版本号与所述服务器进行后续的^舌。
17. 如权利要求 16所述的版本协商方法, 其特征在于, 还包括: 终端使 用一个比所述第二管理会话包中服务器推荐使用的首选版本号低的版本与服 务器建立会话。
18. 一种终端, 其特征在于, 包括:
识别单元, 用于识别服务器发送的设备管理通知消息;
错误响应信息单元,用于在所述识别单不能识别所述设备管理通知消息或 部分识别所述服务器发送的设备管理通知消息时,生成并向服务器发送错误响 应信息。
19. 一种服务器, 其特征在于, 包括:
设备管理通知消息包发送单元, 用于向终端发送设备管理通知消息; 策略设置单元, 用于设置策略;
策略处理单元,用于在终端发送错误响应信息或发送第一管理会话包时根 据策略设置单元进行处理。
20. 一种终端, 其特征在于, 包括:
第一管理会话包发送单元, 用于向服务器发送第一管理会话包; 策略设置单元, 用于设置策略; 根据策略设置单元设置的策略进行处理。
21. 一种服务器, 其特征在于, 包括:
识别单元, 用于识别终端发送的第一管理会话包;
第二管理会话包发送单元, 用于部分识别所述第一管理会话包时,使用第 二管理会话包回复终端。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200810066058 | 2008-02-02 | ||
CN200810066058.0 | 2008-02-02 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2009097801A1 true WO2009097801A1 (zh) | 2009-08-13 |
Family
ID=40951784
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/CN2009/070266 WO2009097801A1 (zh) | 2008-02-02 | 2009-01-22 | 版本协商方法及终端、服务器 |
Country Status (1)
Country | Link |
---|---|
WO (1) | WO2009097801A1 (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1633127A (zh) * | 2004-12-31 | 2005-06-29 | 北京邮电大学 | 一种用于应用服务器的安全能力的协商方法 |
CN1671123A (zh) * | 2004-03-18 | 2005-09-21 | 华为技术有限公司 | 一种使用不同版本的ip协议的gsn之间的通讯方法 |
CN1790982A (zh) * | 2005-12-26 | 2006-06-21 | 北京航空航天大学 | 基于协商通信实现信任认证的方法及*** |
CN101035040A (zh) * | 2007-02-02 | 2007-09-12 | 南京邮电大学 | 基于多代理协商的无线传感器网络数据收集方法 |
-
2009
- 2009-01-22 WO PCT/CN2009/070266 patent/WO2009097801A1/zh active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1671123A (zh) * | 2004-03-18 | 2005-09-21 | 华为技术有限公司 | 一种使用不同版本的ip协议的gsn之间的通讯方法 |
CN1633127A (zh) * | 2004-12-31 | 2005-06-29 | 北京邮电大学 | 一种用于应用服务器的安全能力的协商方法 |
CN1790982A (zh) * | 2005-12-26 | 2006-06-21 | 北京航空航天大学 | 基于协商通信实现信任认证的方法及*** |
CN101035040A (zh) * | 2007-02-02 | 2007-09-12 | 南京邮电大学 | 基于多代理协商的无线传感器网络数据收集方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8438616B2 (en) | Method for terminal configuration and management and terminal device | |
WO2019128906A1 (zh) | 一种待配网设备接入网络热点设备的方法、装置和*** | |
US10394674B2 (en) | Local recovery of electronic subscriber identity module (eSIM) installation flow | |
EP2469961B1 (en) | Method, apparatus and network system for tunnel establishment | |
CN112449315B (zh) | 一种网络切片的管理方法及相关装置 | |
TWI393464B (zh) | 用於開放市場無線器件之網路識別之方法及裝置 | |
EP2996430A1 (en) | Method and terminal for content synchronization among terminals | |
WO2013143352A1 (zh) | 无线网络连接的建立方法及终端设备 | |
WO2010031338A1 (zh) | 业务激活的方法和业务提供的方法以及终端设备和服务器 | |
WO2006106434A1 (en) | Device management in a communication system | |
KR101898492B1 (ko) | 전자 장치 및 전자 장치의 제어 방법 | |
WO2007003103A1 (en) | A method for sharing data and a method for recovering the backup data | |
WO2007025428A1 (fr) | Procede, systeme et dispositif terminal de configuration de parametres de composants logiciels | |
CN113055411A (zh) | 一种家庭组网***的控制方法、服务器及电子设备 | |
US8213904B2 (en) | Method and apparatus for provisioning an electronic communication device via a mobile internet protocol registration | |
WO2015085518A1 (zh) | 报文处理方法及装置 | |
JP6548445B2 (ja) | 通信装置、通信方法及びプログラム | |
CN115699837A (zh) | 移动通信***中终端之间传送网络接入信息的方法及装置 | |
WO2012130048A1 (zh) | 设备管理***中对网关进行初始化的方法及装置 | |
WO2024140821A1 (zh) | 基于蓝牙sig mesh协议的配网方法及装置 | |
CN110771117B (zh) | 一种采用面向id的网络的会话层通信 | |
CN103428013B (zh) | 设备管理方法、***和网关设备 | |
WO2009025252A1 (ja) | WiMAXにおけるIPベースの緊急サービスの処理方法 | |
WO2012175024A1 (zh) | 实现无线数据传输与短信收发并行的方法、***及设备 | |
US8924520B2 (en) | Method, remote access server and system for configuring a quality of service parameter |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 09708535 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 09708535 Country of ref document: EP Kind code of ref document: A1 |