OMA 设备管理的通知发起的会话OMA Device Management Notification Initiated Session

介绍

一些设备不能持续侦听是否有需要连接的服务器。有的设备基于安全考虑不希望“开放一个端口”(比如主动接受连接)。无论如何,大多数设备可以接受未经请求的信息,有时也叫做“通知”。比如一些手持设备可以接收SMS文本短信息。甚至有的设备可能还可以接受简单的数据信息。

DM服务器可以利用这种通知来引导DM客户端向DM服务器建立一个连接。这个连接可能是通过HTTP、WAP、SIP或其它传输协议传输。

通知信息需要包含发送通知的服务器的认证消息。接受这个通知后DM客户端会建立一个到DM服务器的连接。在这期间,DM客户端会确认DM服务器是否在授权的服务器里然后在请求连接。

服务器Alerted的会话管理

通知信息给DM服务器请求DM客户端建立一个可管理的会话提供了可能。在这个通知信息里DM服务器可以告知DM客户端协议的版本以及会话服务在前台(用户界面)还是后台(对终端用户不可见)执行。它还可以告知用户会话的执行是由于服务器的决定还是用户自己决定。同时,服务器必须发送一个通知信息的摘要以避免拒绝服务(Dos)攻击。

图1 描述了服务器怎样提示管理会话的信息流


上面的信息流介绍是一个设备管理的会话。这意味着所有的信息共享一个相同的OMA DM Session ID。

DM通知的结构

Package#0 是通知信息里面用的默认格式。

DM 通知信息被编码成简单的二进制格式。DM通知信息由固定大小的header,后面跟着可选的Type-Length—Value(TVL)格和摘要组成。可选信息的数量由header决定。

下面的图片描述了一般的Package#0的格式。

DM 通知信息的MIME版本是 application/vnd.syncml.dm.notification,它的Content-Type 编码是 0x58。他的Byte顺序是Big Endian(网络顺序)。

DM客户端必须支持DM1.2[DMNotil2]的通知格式并且符合通知这本说明书里的格式定义。

DM 通知信息头格式

下面是dm通知信息的可选项的规格定义

Option 编号
(二进制)
名字 格式 大小/bytes DM客户端支持 DM服务器支持 发生
0001 Server-ID String 1-256 Mandatory Mandatory One
0010 Targeted-MO Unit 1-2 Optional Mandatory ZeroOrMore
0011 Requested-MO Unit 1-2 Mandatory Mandatory ZeroOrMore
0100 Preferred-Bearer Uint 1 Mandatory Mandatory ZeroOrMore
0101 Connect-Reason String 1-4095 Optional Optional ZeroOrOne
0110 Vendor-Info String 1-4095 Optional Optional ZeroOrOne

DM通知信息的可选格式

可选项必须按照Option Number里的顺序出现(见下一节)。见下图的Option Number,每一个可选项都有一个Length字段用来指定可选项的值的长度,按bytes计。可选项的值直接跟length字段。

Option Number

字段在header后面指定一个可选的序列数。它的值指定为4 bits。

Option Lenght

字段指定一个可选值的长度。比如,如果可选长度的值是3,那么可选值的大小是3 bytes。它的值指定为12 bits。

Option Value

可选值的格式依赖于各自的值。在这个文档里的可选项定义也使用下面的可选值的格式。

  • Uint:一个使Option length 的athe位代表网络字节顺序的非负整数。可选值的范围由2的Option Length bit 的次幂值计算决定。例如Option Length是2的话,Option Value 的十进制范围是 0-65535。

  • String:一个从[RFC5198]来的Net-Unicode即UTF-8[RFC3629]编码的Unicode字符串。注意ASCII字符串(没有用到任何特殊的控制字符)一直是有效的UTF-8 Net-Unicode 字符串。

  • Opaque:一个不透明的字节序列。这个类型在当其他类型如Uint或String需要的时候使用。怎样处理这个类型取决于可选项使用的类型。

DM 通知信息可选项

下面是dm通知信息的可选项的规格定义

Option 编号
(二进制)
名字 格式 大小/bytes DM客户端支持 DM服务器支持 发生
0001 Server-ID String 1-256 Mandatory Mandatory One
0010 Targeted-MO Unit 1-2 Optional Mandatory ZeroOrMore
0011 Requested-MO Unit 1-2 Mandatory Mandatory ZeroOrMore
0100 Preferred-Bearer Uint 1 Mandatory Mandatory ZeroOrMore
0101 Connect-Reason String 1-4095 Optional Optional ZeroOrOne
0110 Vendor-Info String 1-4095 Optional Optional ZeroOrOne

信息头字段描述

版本信息(VER)

VER字段指定DM服务器发送的DM通知信息的版本。它的值在通知信息里用4bits描述。为了启用这一规格必须把这个字段设置为0x01.其他的版本是为将来的版本预留的。

注意这个不是DM协议的版本,这是DM通知的版本。

Options Count(OPC)

OPC字段制订了header后面可选项的数量。它的值在通知信息里面用3 bits来表示。

引发管理的行为(I)

I 字段指定DM服务器怎样创建管理动作,既可以是用户请求,也可以是DM服务器已经控制了管理行为。这个值指定1bit。

引发管理行为的值必须是下面这两个。

值(binary) 语义 描述
0 终端用户引发 终端用户产生设备管理会话启动。
1 服务器引发 服务器产生设备管理会话启动。

用户交互模式(UIM)

UIM字段指定DM服务器的建议,是否....未完

 

转载于:https://www.cnblogs.com/xinyuyuanm/archive/2013/04/03/2998679.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/576037.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

zabbix中常用到的几个key:

1、监控端口的:net.tcp.port[,3306]/usr/local/zabbix/bin/ -s192.168.8.120 -knet.tcp.port[,3306] 返回1为192.168.8.120的端口3306存在,0为不存在2、监控进程的:proc.num[mysqld]/usr/local/zabbix/bin/zabbix_get -s192.168.8.120 -kproc…

【zabbix个性化监控之一】TCP连接数

一、在被监控端上设置 主要命令: netstat -an | awk /^tcp/ {S[$NF]} END {for(a in S) print a, S[a]}1netstat -an | awk /^tcp/ {S[$NF]} END {for(a in S) print a, S[a]}输出内容: TIME_WAIT 100 CLOSE_WAIT 5 FIN_WAIT1 6 ESTABLISHED 161 S…

石头剪刀布 -2013编程之美全国测试赛 每日一练

Description:石头剪刀布是常见的猜拳游戏。石头胜剪刀,剪刀胜布,布胜石头。如果两个人出拳一样,则不分胜负。 一天,小A和小B正好在玩石头剪刀布。已知他们的出拳都是有规律的,比如:“石头-布-石…

CentOS 6.4下PXE+Kickstart无人值守安装操作系统

原文出自http://http://www.cnblogs.com/mchina/p/centos-pxe-kickstart-auto-install-os.html 一、简介 1.1 什么是PXE PXE(Pre-boot Execution Environment,预启动执行环境)是由Intel公司开发的最新技术,工作于Client/Server的网络模式,支持…

CSS3属性box-shadow使用教程

CSS3的box-shadow属性可以让我们轻松实现图层阴影效果。我们来实战详解一下这个属性。 1. box-shadow属性的浏览器兼容性 先来看一个这个属性的浏览器兼容性: Opera: 不知道是从哪个版本开始支持的,我在发这篇文章测试的时候,正好更新了Opera到最新的10.…

实战Zabbix-Server数据库MySQL的libdata1文件过大

原文出自http://www.linuxidc.com/Linux/2014-12/110353.htm zabbix自动清理30天前的数据 zabbix属于一个细度化的监控工具,其入库数据随着细度的增加相应的入库数据量也会较大,当数据量到一定时候的时候其反映速度会比较慢,尽管其监控服务在…

RadioButtonList Enabled=false 文字背景

RadioButtonList有个属性RepeatLayout"Flow",可以防止控件与前面的文本换行,但是,使用这个属性之后,有个奇怪的问题,RadioButtonList 在Enabledfalse时,文字成灰色,在打印时&#xff…

我的LAMP源码编译安装linux+Apache+mysql+php

httpd-2.2.17.tar.gz mysql-5.1.51.tar.gz php-5.2.17.tar.gz mysql的安装 #安装需要的库 yum -y install ncurses ncurses-devel #创建MySQL用户及用户组 groupadd mysql useradd -g mysql -s /sbin/nologin mysql cp /home/root/mysql-5.1.41.tar.gz /usr/local/src c…

编译php,ldap问题

今天在ubunte上安装php,ldap模块一直报错: configure: error: Cannot find ldap libraries in /usr/lib. 网上都说解决方法: cp -frp /usr/lib64/libldap* /usr/lib/ 结果我的/usr目录下 根本就没有lib64 还是找找libldap.so在哪吧 执行&…

mysql 5.7.13 安装配置方法图文教程(linux)

原文出自:http://www.jb51.net/article/87160.htm 1系统约定 安装文件下载目录:/data/software Mysql目录安装位置:/usr/local/mysql 数据库保存位置:/data/mysql 日志保存位置:/data/log/mysql 2下载mysql 在官网&am…

hasOwnProperty和isPrototypeOf

hasOwnProperty和isPrototypeOf hasOwnProperty:是用来判断一个对象是否有你给出名称的属性或对象,此方法无法检查该对象的原型链中是否具有该属性,该属性必须是对象本身的一个成员。 isPrototypeOf是用来判断要检查其原型链的对象是否存在于指定对象实…

linux下防火墙加白名单

在linux系统中安装yum install iptables-services 然后 vi /etc/sysconfig/iptables # Generated by iptables-save v1.4.7 on Sun Aug 28 12:14:02 2016*filter:INPUT ACCEPT [0:0]:FORWARD ACCEPT [0:0]:OUTPUT ACCEPT [0:0]-N whitelist-A whitelist -s 8.8.8.8 -j ACCEPT-…

Linux LVM硬盘管理及LVM扩容

原文出自http://www.cnblogs.com/gaojun/archive/2012/08/22/2650229.html 一、LVM简介 LVM是 Logical Volume Manager(逻辑卷管理)的简写,它由Heinz Mauelshagen在Linux 2.4内核上实现。LVM将一个或多个硬盘的分区在逻辑上集合,相当于一个大硬盘来使用&…

android系统框架()

Android系统框架介绍: 1.大体框架: -src目录: 主要是完成java代码的编写 -assets目录: 资源目录 -res目录: 存储图片,布局文件和字符串,菜单等文件 -bin目录: 输出文件夹,如生成的APK文件 -project.properties: 工程属性文件配置 -gen目录: 系统自动生成的源代码目录 R.java默认…

zabbix服务端远程执行命令

执行一些命令或者脚本就行了。 但zabbix远程执行命令需要客户端的zabbix用户要有sudo权限,zabbix的客户端要改的地方是配置文件里 EnableRomoteCommands1 然后要更改的是visudo里的给zabbix用户赋予权限 zabbix ALLNOPASSWD:ALL 然后把defaults requiretty注释掉。…

Keil 文本对不上格

初次使用keil3,光标总是定位不准,修改十分麻烦,google后解决问题,修改tools.ini如下(蓝色为加入项):NAME"YGLenovo User", "a"EMAIL"a"ANSI1BOOK0"UV3\RELEASE_NOTES.HTM" (&…

Linux(CentOS6.5)下编译安装Nginx1.10.1

原文出自:http://www.cnblogs.com/comexchan/p/5815753.html Linux(CentOS6.5)下编译安装Nginx1.10.1 首先在特权账号(root)下安装编译时依赖项: yum install gcc gcc-c perl -y 首先以非特权账号(本文以账号comex为例…

Java volatile关键字

Java 语言中的volatile变量可以被看作是一种“程度较轻的synchronized”,与synchronized相比,volatile变量所需的编码较少,并且运行时开销也较少,但是它所能实现的功能也仅是synchronized的一部分。本文介绍了几种有效使用volatil…

Zabbix 3.0 基础介绍 [一]

原文出自 http://www.abcdocker.com/abcdocker/1402 Zabbix 3.0 基础介绍 [上] zabbix 一、Zabbix介绍 zabbix 简介 Zabbix 是一个高度集成的网络监控解决方案,可以提供企业级的开源分布式监控解决方案,由一个国外的团队持续维护更新,软件可以…

DOM 节点的创建、删除、替换

只要在屏幕上托三个button按钮就可以了&#xff0c;下面就是程序运行时的界面&#xff1a; <head> <title></title> <script type"text/javascript"> function CreateNode() { var pnode document.createElement(p…