190 likes | 782 Vues
Open OMA DM. Kevin Chang. OMA DM server component. Bootstrap generator. Web UI. MySQL Database. Command script. Command parser. Authentication Module. Log. AES CCM. SyncML parser. Content Management. Content Management. DDF. WBXML parser. Large Object encoder. Download
E N D
Open OMA DM Kevin Chang
OMA DM server component Bootstrap generator Web UI MySQL Database Command script Command parser Authentication Module Log AES CCM SyncML parser Content Management Content Management DDF WBXML parser Large Object encoder Download Descriptor Device Tree parser Packet parser Large Object decoder SIP provision WSP packet generator AAA connection module Libevent HTTP HTTPS HTTPS TCP/Socket UDP/Socket TCP/Socket
Main process MySQL Data Base Command result Commands EMSK or BEK Command Bootstrap information ProvSyncML Generator Flow controller Msg Log P1/ Result Logger Provision Data collector WBXML convertor Device IP ServerID Device IP Provisoon Data Device ID Provision AAA server socket Provision server socket Server socket WSP notification WSP bootstrap TCP UDP
OMA Server Core 4. Get command from DB MySQL DB 7. Update job status 3. Choice work queue. 6. Update work flow 1. Send notification packet Flow Controller / Scheduler Handler WSP notification 2. Device connect to server socket 5. Receive command result 4. Send command to device
Content Server Add new download record and generate download ticket Download Descriptor 1. Get Download Descriptor Content Logger Download Agent Firmware 2. Download FW Status Report Update download ticket 3. Report download status
Download Descriptor • <?xml version="1.0" encoding="UTF-8" ?> • <media xmlns="http://www.openmobilealliance.org/xmlns/dd"> • <DDVersion>1.0</DDVersion> • <name>fw_name</name> • <type>application/octet-stream</type> • <description>fw_name.ipk</description> • <objectURI>http://omadm.kevindm.com.tw/fw_name.ipk</objectURI> • <size>123456</size> • <installNotifyURI>http://omadm.kevindm.com.tw</installNotifyURI> • <vendor>KevinDM</vendor> • </media>
Bootstrap ServerID: KevinDM Client Name: 00112233445566 Client PW: test_client Server Name: KevinDM Server PW: test_server Server ID, client name,client,pw, server name, server pw… SyncML WBXML BEK=HMAC(EMSK|“bek@wimaxforum.org”) AES-CCM Ciphertext WSP Packet
WIB AAA DNS WIB/OMA DM 4. DNS SRV query _wimax-bootstrap._tcp.domain 2. Send BEK, IP, MAC to OMA DM Server 1. NAI={sm=1}MAC@realm 5. Get bootstrap payload http://x.x.x.x/bootstrap.wib?msid=MAC&protocol={0}&version=0 01010... 3. Generate encrypted Bootstrap