Re: kannel OTA/OMA dev ?

Stipe Tolj <[email protected]>
Newsgroups gmane.comp.mobile.kannel.devel
Organization tolj.org system architecture
Message-ID <[email protected]>
ok, so Kannel does not support "string table" creation in the OTA compiler
module. The string table defines specific "own tokens" that are not pre-defined
from any specs, but create a sort of "shortcode" for literal strings.

See attached a sample XML, then the corresponding WBXML output of libwxml's
xml2wbxml WITH string table crating, WITHOUT string table creation and Kannel's
test_ota output.

In addition hexdump -C output of all 3 variants are included.

What we see is that Kannel's OTA compiler produces a 919 byte block, the
libwbxml creates 710 bytes even with no string table usage, and 601 bytes with
string table use.

So this is a 30% gap between the best and worst :/

We need to do something here. Anyone willing to pick up the item and go into the
deeps of the gw/ota_compiler.c module for it?

Stipe

-- 
-------------------------------------------------------------------
Kölner Landstrasse 419
40589 Düsseldorf, NRW, Germany

tolj.org system architecture      Kannel Software Foundation (KSF)
http://www.tolj.org/              http://www.kannel.org/

mailto:st_{at}_tolj.org           mailto:stolj_{at}_kannel.org
-------------------------------------------------------------------
voip.dump (text/plain, 2.9 KB)
00000000  03 0b 6a 52 57 4c 41 4e  00 50 52 4f 56 00 73 69  |..jRWLAN.PROV.si|
00000010  70 72 65 66 00 43 4f 44  45 43 00 4d 45 44 49 41  |pref.CODEC.MEDIA|
00000020  53 55 42 54 59 50 45 00  50 52 49 4f 52 49 54 59  |SUBTYPE.PRIORITY|
00000030  49 4e 44 45 58 00 61 75  74 68 6e 61 6d 65 00 61  |INDEX.authname.a|
00000040  75 74 68 73 65 63 72 65  74 00 66 6f 6f 2e 62 61  |uthsecret.foo.ba|
00000050  72 2e 63 6f 6d 00 c5 45  03 31 2e 31 00 01 c6 55  |r.com..E.1.1...U|
00000060  01 87 07 06 03 41 50 00  01 87 11 06 03 41 50 00  |.....AP......AP.|
00000070  01 87 00 01 38 00 00 06  03 41 50 00 01 87 10 06  |....8....AP.....|
00000080  83 00 01 c6 50 83 00 01  87 05 03 50 52 49 2d 53  |....P......PRI-S|
00000090  53 49 44 00 06 03 41 50  00 01 87 05 03 4e 45 54  |SID...AP.....NET|
000000a0  4d 4f 44 45 00 06 03 49  4e 46 52 41 00 01 01 01  |MODE...INFRA....|
000000b0  c6 00 01 55 01 87 36 00  00 06 03 77 39 30 31 33  |...U..6....w9013|
000000c0  00 01 87 00 01 38 00 00  06 83 05 01 87 07 06 83  |.....8..........|
000000d0  05 01 87 05 03 54 4f 2d  41 50 50 52 45 46 00 06  |.....TO-APPREF..|
000000e0  83 0a 01 87 05 03 55 41  48 53 54 52 49 4e 47 00  |......UAHSTRING.|
000000f0  06 03 48 65 6c 6c 6f 21  00 01 c6 50 83 11 01 87  |..Hello!...P....|
00000100  05 83 17 06 03 33 00 01  87 05 83 24 06 03 30 00  |.....3.....$..0.|
00000110  01 01 c6 50 83 11 01 87  05 83 17 06 03 30 00 01  |...P.........0..|
00000120  87 05 83 24 06 03 31 00  01 01 c6 50 83 11 01 87  |...$..1....P....|
00000130  05 83 17 06 03 34 00 01  87 05 83 24 06 03 32 00  |.....4.....$..2.|
00000140  01 01 01 c6 00 01 55 01  87 36 00 00 06 03 77 39  |......U..6....w9|
00000150  30 31 30 00 01 87 07 06  03 53 6f 6d 65 20 4e 61  |010......Some Na|
00000160  6e 65 00 01 87 05 03 41  50 50 52 45 46 00 06 83  |ne.....APPREF...|
00000170  0a 01 87 00 01 38 00 00  06 83 0a 01 87 05 03 50  |.....8.........P|
00000180  54 59 50 45 00 06 03 49  45 54 46 00 01 87 05 03  |TYPE...IETF.....|
00000190  50 55 49 44 00 06 03 78  78 78 78 78 78 78 78 78  |PUID...xxxxxxxxx|
000001a0  78 20 61 74 20 00 83 46  01 87 22 06 03 41 50 00  |x at ..F.."..AP.|
000001b0  01 87 00 01 37 00 00 06  03 55 44 50 00 01 c6 00  |....7....UDP....|
000001c0  01 56 01 87 34 00 00 06  03 73 69 70 3a 31 30 2e  |.V..4....sip:10.|
000001d0  31 30 2e 31 30 2e 31 00  01 c6 53 01 87 23 06 03  |10.10.1...S..#..|
000001e0  35 30 36 30 00 01 01 01  c6 00 01 57 01 87 31 00  |5060.......W..1.|
000001f0  00 06 83 32 01 87 00 01  32 00 00 06 83 3b 01 87  |...2....2....;..|
00000200  00 01 2f 00 00 06 83 46  01 01 c6 00 01 59 01 87  |../....F.....Y..|
00000210  3a 00 00 06 03 73 69 70  3a 31 30 2e 31 30 2e 31  |:....sip:10.10.1|
00000220  30 2e 31 3a 35 30 36 30  3b 74 72 61 6e 73 70 6f  |0.1:5060;transpo|
00000230  72 74 3d 55 44 50 00 01  87 00 01 31 00 00 06 83  |rt=UDP.....1....|
00000240  32 01 87 00 01 32 00 00  06 83 3b 01 87 00 01 2f  |2....2....;..../|
00000250  00 00 06 83 46 01 01 01  01                       |....F....|
00000259
voip.wbxml (application/octet-stream, 601 B) - not displayed
voip.xml (text/xml, 2.4 KB)
<?xml version="1.0"?>
<!DOCTYPE wap-provisioningdoc PUBLIC "-//WAPFORUM//DTD PROV 1.0//EN" "
http://www.wapforum.org/DTD/prov.dtd">
<wap-provisioningdoc version="1.1">

<!-- WLAN Access point settings -->
<characteristic type="NAPDEF">
  <parm name="NAME" value="AP"/>
  <parm name="NAPID" value="AP"/>
  <parm name="PROVIDER-ID" value="AP"/>
  <parm name="BEARER" value="WLAN"/>
  <characteristic type="WLAN">
   <parm name="PRI-SSID" value="AP"/>
   <parm name="NETMODE" value="INFRA"/>
  </characteristic>
 </characteristic>
<!-- WLAN Access point settings end -->

<!-- VoIP profile settings -->
<characteristic type="APPLICATION">
  <parm name="APPID" value="w9013"/>
  <parm name="PROVIDER-ID" value="PROV"/>
  <parm name="NAME" value="PROV"/>
  <parm name="TO-APPREF" value="sipref"/>
  <parm name="UAHSTRING" value="Hello!"/>
  <characteristic type="CODEC">
   <parm name="MEDIASUBTYPE" value="3"/>
   <parm name="PRIORITYINDEX" value="0"/>
  </characteristic>
  <characteristic type="CODEC">
   <parm name="MEDIASUBTYPE" value="0"/>
   <parm name="PRIORITYINDEX" value="1"/>
  </characteristic>
  <characteristic type="CODEC">
   <parm name="MEDIASUBTYPE" value="4"/>
   <parm name="PRIORITYINDEX" value="2"/>
  </characteristic>
 </characteristic>
<!-- VoIP profile settings end -->

<!-- SIP profile settings end -->
<characteristic type="APPLICATION">
  <parm name="APPID" value="w9010"/>
  <parm name="NAME" value="Some Nane"/>
  <parm name="APPREF" value="sipref"/>
  <parm name="PROVIDER-ID" value="sipref"/>
  <parm name="PTYPE" value="IETF"/>
  <parm name="PUID" value="xxxxxxxxxx at foo.bar.com"/>
  <parm name="TO-NAPID" value="AP"/>
  <parm name="APROTOCOL" value="UDP"/>
  <characteristic type="APPADDR">
   <parm name="ADDR" value="sip:10.10.10.1"/>
   <characteristic type="PORT">
    <parm name="PORTNBR" value="5060"/>
   </characteristic>
  </characteristic>
  <characteristic type="APPAUTH">
    <parm name="AAUTHNAME" value="authname"/>
    <parm name="AAUTHSECRET" value="authsecret"/>
    <parm name="AAUTHDATA" value="foo.bar.com"/>
  </characteristic>
  <characteristic type="RESOURCE">
    <parm name="URI" value="sip:10.10.10.1:5060;transport=UDP"/>
    <parm name="AAUTHNAME" value="authname"/>
    <parm name="AAUTHSECRET" value="authsecret"/>
    <parm name="AAUTHDATA" value="foo.bar.com"/>
  </characteristic>
 </characteristic>
<!-- SIP profile settings end -->

</wap-provisioningdoc>
voip-kannel.dump (text/plain, 4.5 KB)
00000000  03 0b 6a 00 c5 45 03 31  2e 31 00 01 c6 50 03 4e  |..j..E.1.1...P.N|
00000010  41 50 44 45 46 00 01 87  05 03 4e 41 4d 45 00 06  |APDEF.....NAME..|
00000020  03 41 50 00 01 87 05 03  4e 41 50 49 44 00 06 03  |.AP.....NAPID...|
00000030  41 50 00 01 87 05 03 50  52 4f 56 49 44 45 52 2d  |AP.....PROVIDER-|
00000040  49 44 00 06 03 41 50 00  01 87 05 03 42 45 41 52  |ID...AP.....BEAR|
00000050  45 52 00 06 03 57 4c 41  4e 00 01 c6 50 03 57 4c  |ER...WLAN...P.WL|
00000060  41 4e 00 01 87 05 03 50  52 49 2d 53 53 49 44 00  |AN.....PRI-SSID.|
00000070  06 03 41 50 00 01 87 05  03 4e 45 54 4d 4f 44 45  |..AP.....NETMODE|
00000080  00 06 03 49 4e 46 52 41  00 01 01 01 c6 50 03 41  |...INFRA.....P.A|
00000090  50 50 4c 49 43 41 54 49  4f 4e 00 01 87 05 03 41  |PPLICATION.....A|
000000a0  50 50 49 44 00 06 03 77  39 30 31 33 00 01 87 05  |PPID...w9013....|
000000b0  03 50 52 4f 56 49 44 45  52 2d 49 44 00 06 03 50  |.PROVIDER-ID...P|
000000c0  52 4f 56 00 01 87 05 03  4e 41 4d 45 00 06 03 50  |ROV.....NAME...P|
000000d0  52 4f 56 00 01 87 05 03  54 4f 2d 41 50 50 52 45  |ROV.....TO-APPRE|
000000e0  46 00 06 03 73 69 70 72  65 66 00 01 87 05 03 55  |F...sipref.....U|
000000f0  41 48 53 54 52 49 4e 47  00 06 03 48 65 6c 6c 6f  |AHSTRING...Hello|
00000100  21 00 01 c6 50 03 43 4f  44 45 43 00 01 87 05 03  |!...P.CODEC.....|
00000110  4d 45 44 49 41 53 55 42  54 59 50 45 00 06 03 33  |MEDIASUBTYPE...3|
00000120  00 01 87 05 03 50 52 49  4f 52 49 54 59 49 4e 44  |.....PRIORITYIND|
00000130  45 58 00 06 03 30 00 01  01 c6 50 03 43 4f 44 45  |EX...0....P.CODE|
00000140  43 00 01 87 05 03 4d 45  44 49 41 53 55 42 54 59  |C.....MEDIASUBTY|
00000150  50 45 00 06 03 30 00 01  87 05 03 50 52 49 4f 52  |PE...0.....PRIOR|
00000160  49 54 59 49 4e 44 45 58  00 06 03 31 00 01 01 c6  |ITYINDEX...1....|
00000170  50 03 43 4f 44 45 43 00  01 87 05 03 4d 45 44 49  |P.CODEC.....MEDI|
00000180  41 53 55 42 54 59 50 45  00 06 03 34 00 01 87 05  |ASUBTYPE...4....|
00000190  03 50 52 49 4f 52 49 54  59 49 4e 44 45 58 00 06  |.PRIORITYINDEX..|
000001a0  03 32 00 01 01 01 c6 50  03 41 50 50 4c 49 43 41  |.2.....P.APPLICA|
000001b0  54 49 4f 4e 00 01 87 05  03 41 50 50 49 44 00 06  |TION.....APPID..|
000001c0  03 77 39 30 31 30 00 01  87 05 03 4e 41 4d 45 00  |.w9010.....NAME.|
000001d0  06 03 53 6f 6d 65 20 4e  61 6e 65 00 01 87 05 03  |..Some Nane.....|
000001e0  41 50 50 52 45 46 00 06  03 73 69 70 72 65 66 00  |APPREF...sipref.|
000001f0  01 87 05 03 50 52 4f 56  49 44 45 52 2d 49 44 00  |....PROVIDER-ID.|
00000200  06 03 73 69 70 72 65 66  00 01 87 05 03 50 54 59  |..sipref.....PTY|
00000210  50 45 00 06 03 49 45 54  46 00 01 87 05 03 50 55  |PE...IETF.....PU|
00000220  49 44 00 06 03 78 78 78  78 78 78 78 78 78 78 20  |ID...xxxxxxxxxx |
00000230  61 74 20 66 6f 6f 2e 62  61 72 2e 63 6f 6d 00 01  |at foo.bar.com..|
00000240  87 05 03 54 4f 2d 4e 41  50 49 44 00 06 03 41 50  |...TO-NAPID...AP|
00000250  00 01 87 05 03 41 50 52  4f 54 4f 43 4f 4c 00 06  |.....APROTOCOL..|
00000260  03 55 44 50 00 01 c6 50  03 41 50 50 41 44 44 52  |.UDP...P.APPADDR|
00000270  00 01 87 05 03 41 44 44  52 00 06 03 73 69 70 3a  |.....ADDR...sip:|
00000280  31 30 2e 31 30 2e 31 30  2e 31 00 01 c6 50 03 50  |10.10.10.1...P.P|
00000290  4f 52 54 00 01 87 05 03  50 4f 52 54 4e 42 52 00  |ORT.....PORTNBR.|
000002a0  06 03 35 30 36 30 00 01  01 01 c6 50 03 41 50 50  |..5060.....P.APP|
000002b0  41 55 54 48 00 01 87 05  03 41 41 55 54 48 4e 41  |AUTH.....AAUTHNA|
000002c0  4d 45 00 06 03 61 75 74  68 6e 61 6d 65 00 01 87  |ME...authname...|
000002d0  05 03 41 41 55 54 48 53  45 43 52 45 54 00 06 03  |..AAUTHSECRET...|
000002e0  61 75 74 68 73 65 63 72  65 74 00 01 87 05 03 41  |authsecret.....A|
000002f0  41 55 54 48 44 41 54 41  00 06 03 66 6f 6f 2e 62  |AUTHDATA...foo.b|
00000300  61 72 2e 63 6f 6d 00 01  01 c6 50 03 52 45 53 4f  |ar.com....P.RESO|
00000310  55 52 43 45 00 01 87 05  03 55 52 49 00 06 03 73  |URCE.....URI...s|
00000320  69 70 3a 31 30 2e 31 30  2e 31 30 2e 31 3a 35 30  |ip:10.10.10.1:50|
00000330  36 30 3b 74 72 61 6e 73  70 6f 72 74 3d 55 44 50  |60;transport=UDP|
00000340  00 01 87 05 03 41 41 55  54 48 4e 41 4d 45 00 06  |.....AAUTHNAME..|
00000350  03 61 75 74 68 6e 61 6d  65 00 01 87 05 03 41 41  |.authname.....AA|
00000360  55 54 48 53 45 43 52 45  54 00 06 03 61 75 74 68  |UTHSECRET...auth|
00000370  73 65 63 72 65 74 00 01  87 05 03 41 41 55 54 48  |secret.....AAUTH|
00000380  44 41 54 41 00 06 03 66  6f 6f 2e 62 61 72 2e 63  |DATA...foo.bar.c|
00000390  6f 6d 00 01 01 01 01                              |om.....|
00000397
voip-kannel.wbxml (application/octet-stream, 919 B) - not displayed
voip-no-st.dump (text/plain, 3.5 KB)
00000000  03 0b 6a 00 c5 45 03 31  2e 31 00 01 c6 55 01 87  |..j..E.1.1...U..|
00000010  07 06 03 41 50 00 01 87  11 06 03 41 50 00 01 87  |...AP......AP...|
00000020  00 01 38 00 00 06 03 41  50 00 01 87 10 06 03 57  |..8....AP......W|
00000030  4c 41 4e 00 01 c6 50 03  57 4c 41 4e 00 01 87 05  |LAN...P.WLAN....|
00000040  03 50 52 49 2d 53 53 49  44 00 06 03 41 50 00 01  |.PRI-SSID...AP..|
00000050  87 05 03 4e 45 54 4d 4f  44 45 00 06 03 49 4e 46  |...NETMODE...INF|
00000060  52 41 00 01 01 01 c6 00  01 55 01 87 36 00 00 06  |RA.......U..6...|
00000070  03 77 39 30 31 33 00 01  87 00 01 38 00 00 06 03  |.w9013.....8....|
00000080  50 52 4f 56 00 01 87 07  06 03 50 52 4f 56 00 01  |PROV......PROV..|
00000090  87 05 03 54 4f 2d 41 50  50 52 45 46 00 06 03 73  |...TO-APPREF...s|
000000a0  69 70 72 65 66 00 01 87  05 03 55 41 48 53 54 52  |ipref.....UAHSTR|
000000b0  49 4e 47 00 06 03 48 65  6c 6c 6f 21 00 01 c6 50  |ING...Hello!...P|
000000c0  03 43 4f 44 45 43 00 01  87 05 03 4d 45 44 49 41  |.CODEC.....MEDIA|
000000d0  53 55 42 54 59 50 45 00  06 03 33 00 01 87 05 03  |SUBTYPE...3.....|
000000e0  50 52 49 4f 52 49 54 59  49 4e 44 45 58 00 06 03  |PRIORITYINDEX...|
000000f0  30 00 01 01 c6 50 03 43  4f 44 45 43 00 01 87 05  |0....P.CODEC....|
00000100  03 4d 45 44 49 41 53 55  42 54 59 50 45 00 06 03  |.MEDIASUBTYPE...|
00000110  30 00 01 87 05 03 50 52  49 4f 52 49 54 59 49 4e  |0.....PRIORITYIN|
00000120  44 45 58 00 06 03 31 00  01 01 c6 50 03 43 4f 44  |DEX...1....P.COD|
00000130  45 43 00 01 87 05 03 4d  45 44 49 41 53 55 42 54  |EC.....MEDIASUBT|
00000140  59 50 45 00 06 03 34 00  01 87 05 03 50 52 49 4f  |YPE...4.....PRIO|
00000150  52 49 54 59 49 4e 44 45  58 00 06 03 32 00 01 01  |RITYINDEX...2...|
00000160  01 c6 00 01 55 01 87 36  00 00 06 03 77 39 30 31  |....U..6....w901|
00000170  30 00 01 87 07 06 03 53  6f 6d 65 20 4e 61 6e 65  |0......Some Nane|
00000180  00 01 87 05 03 41 50 50  52 45 46 00 06 03 73 69  |.....APPREF...si|
00000190  70 72 65 66 00 01 87 00  01 38 00 00 06 03 73 69  |pref.....8....si|
000001a0  70 72 65 66 00 01 87 05  03 50 54 59 50 45 00 06  |pref.....PTYPE..|
000001b0  03 49 45 54 46 00 01 87  05 03 50 55 49 44 00 06  |.IETF.....PUID..|
000001c0  03 78 78 78 78 78 78 78  78 78 78 20 61 74 20 66  |.xxxxxxxxxx at f|
000001d0  6f 6f 2e 62 61 72 2e 63  6f 6d 00 01 87 22 06 03  |oo.bar.com..."..|
000001e0  41 50 00 01 87 00 01 37  00 00 06 03 55 44 50 00  |AP.....7....UDP.|
000001f0  01 c6 00 01 56 01 87 34  00 00 06 03 73 69 70 3a  |....V..4....sip:|
00000200  31 30 2e 31 30 2e 31 30  2e 31 00 01 c6 53 01 87  |10.10.10.1...S..|
00000210  23 06 03 35 30 36 30 00  01 01 01 c6 00 01 57 01  |#..5060.......W.|
00000220  87 31 00 00 06 03 61 75  74 68 6e 61 6d 65 00 01  |.1....authname..|
00000230  87 00 01 32 00 00 06 03  61 75 74 68 73 65 63 72  |...2....authsecr|
00000240  65 74 00 01 87 00 01 2f  00 00 06 03 66 6f 6f 2e  |et...../....foo.|
00000250  62 61 72 2e 63 6f 6d 00  01 01 c6 00 01 59 01 87  |bar.com......Y..|
00000260  3a 00 00 06 03 73 69 70  3a 31 30 2e 31 30 2e 31  |:....sip:10.10.1|
00000270  30 2e 31 3a 35 30 36 30  3b 74 72 61 6e 73 70 6f  |0.1:5060;transpo|
00000280  72 74 3d 55 44 50 00 01  87 00 01 31 00 00 06 03  |rt=UDP.....1....|
00000290  61 75 74 68 6e 61 6d 65  00 01 87 00 01 32 00 00  |authname.....2..|
000002a0  06 03 61 75 74 68 73 65  63 72 65 74 00 01 87 00  |..authsecret....|
000002b0  01 2f 00 00 06 03 66 6f  6f 2e 62 61 72 2e 63 6f  |./....foo.bar.co|
000002c0  6d 00 01 01 01 01                                 |m.....|
000002c6
voip-no-st.wbxml (application/octet-stream, 710 B) - not displayed
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.