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通知信息的可選項的規格定義
| 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通知信息的可選項的規格定義
| 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。
引發管理行為的值必須是下面這兩個。
| 0 | 終端用戶引發 | 終端用戶產生設備管理會話啟動。 |
| 1 | 服務器引發 | 服務器產生設備管理會話啟動。 |
用戶交互模式(UIM)
UIM字段指定DM服務器的建議,是否....未完
?
轉載于:https://www.cnblogs.com/xinyuyuanm/archive/2013/04/03/2998679.html
總結
以上是生活随笔為你收集整理的OMA 设备管理的通知发起的会话OMA Device Management Notification Initiated Session的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 如何发现需求
- 下一篇: Thinking In Design P