One document matched: draft-raza-dice-compressed-dtls-00.ps


%!PS-Adobe-3.0
%%BoundingBox: 76 24 574 716
%%Title: Enscript Output
%%For: Dr. Shahid Raza
%%Creator: GNU enscript 1.6.4
%%CreationDate: Mon Mar 10 11:42:21 2014
%%Orientation: Portrait
%%Pages: (atend)
%%DocumentMedia: Letter 612 792 0 () ()
%%DocumentNeededResources: (atend)
%%EndComments
%%BeginProlog
%%BeginResource: procset Enscript-Prolog 1.6 4
%
% Procedures.
%

/_S {	% save current state
  /_s save def
} def
/_R {	% restore from saved state
  _s restore
} def

/S {	% showpage protecting gstate
  gsave
  showpage
  grestore
} bind def

/MF {	% fontname newfontname -> -	make a new encoded font
  /newfontname exch def
  /fontname exch def

  /fontdict fontname findfont def
  /newfont fontdict maxlength dict def

  fontdict {
    exch
    dup /FID eq {
      % skip FID pair
      pop pop
    } {
      % copy to the new font dictionary
      exch newfont 3 1 roll put
    } ifelse
  } forall

  newfont /FontName newfontname put

  % insert only valid encoding vectors
  encoding_vector length 256 eq {
    newfont /Encoding encoding_vector put
  } if

  newfontname newfont definefont pop
} def

/MF_PS { % fontname newfontname -> -	make a new font preserving its enc
  /newfontname exch def
  /fontname exch def

  /fontdict fontname findfont def
  /newfont fontdict maxlength dict def

  fontdict {
    exch
    dup /FID eq {
      % skip FID pair
      pop pop
    } {
      % copy to the new font dictionary
      exch newfont 3 1 roll put
    } ifelse
  } forall

  newfont /FontName newfontname put

  newfontname newfont definefont pop
} def

/SF { % fontname width height -> -	set a new font
  /height exch def
  /width exch def

  findfont
  [width 0 0 height 0 0] makefont setfont
} def

/SUF { % fontname width height -> -	set a new user font
  /height exch def
  /width exch def

  /F-gs-user-font MF
  /F-gs-user-font width height SF
} def

/SUF_PS { % fontname width height -> -	set a new user font preserving its enc
  /height exch def
  /width exch def

  /F-gs-user-font MF_PS
  /F-gs-user-font width height SF
} def

/M {moveto} bind def
/s {show} bind def

/Box {	% x y w h -> -			define box path
  /d_h exch def /d_w exch def /d_y exch def /d_x exch def
  d_x d_y  moveto
  d_w 0 rlineto
  0 d_h rlineto
  d_w neg 0 rlineto
  closepath
} def

/bgs {	% x y height blskip gray str -> -	show string with bg color
  /str exch def
  /gray exch def
  /blskip exch def
  /height exch def
  /y exch def
  /x exch def

  gsave
    x y blskip sub str stringwidth pop height Box
    gray setgray
    fill
  grestore
  x y M str s
} def

/bgcs { % x y height blskip red green blue str -> -  show string with bg color
  /str exch def
  /blue exch def
  /green exch def
  /red exch def
  /blskip exch def
  /height exch def
  /y exch def
  /x exch def

  gsave
    x y blskip sub str stringwidth pop height Box
    red green blue setrgbcolor
    fill
  grestore
  x y M str s
} def

% Highlight bars.
/highlight_bars {	% nlines lineheight output_y_margin gray -> -
  gsave
    setgray
    /ymarg exch def
    /lineheight exch def
    /nlines exch def

    % This 2 is just a magic number to sync highlight lines to text.
    0 d_header_y ymarg sub 2 sub translate

    /cw d_output_w cols div def
    /nrows d_output_h ymarg 2 mul sub lineheight div cvi def

    % for each column
    0 1 cols 1 sub {
      cw mul /xp exch def

      % for each rows
      0 1 nrows 1 sub {
        /rn exch def
        rn lineheight mul neg /yp exch def
        rn nlines idiv 2 mod 0 eq {
	  % Draw highlight bar.  4 is just a magic indentation.
	  xp 4 add yp cw 8 sub lineheight neg Box fill
	} if
      } for
    } for

  grestore
} def

% Line highlight bar.
/line_highlight {	% x y width height gray -> -
  gsave
    /gray exch def
    Box gray setgray fill
  grestore
} def

% Column separator lines.
/column_lines {
  gsave
    .1 setlinewidth
    0 d_footer_h translate
    /cw d_output_w cols div def
    1 1 cols 1 sub {
      cw mul 0 moveto
      0 d_output_h rlineto stroke
    } for
  grestore
} def

% Column borders.
/column_borders {
  gsave
    .1 setlinewidth
    0 d_footer_h moveto
    0 d_output_h rlineto
    d_output_w 0 rlineto
    0 d_output_h neg rlineto
    closepath stroke
  grestore
} def

% Do the actual underlay drawing
/draw_underlay {
  ul_style 0 eq {
    ul_str true charpath stroke
  } {
    ul_str show
  } ifelse
} def

% Underlay
/underlay {	% - -> -
  gsave
    0 d_page_h translate
    d_page_h neg d_page_w atan rotate

    ul_gray setgray
    ul_font setfont
    /dw d_page_h dup mul d_page_w dup mul add sqrt def
    ul_str stringwidth pop dw exch sub 2 div ul_h_ptsize -2 div moveto
    draw_underlay
  grestore
} def

/user_underlay {	% - -> -
  gsave
    ul_x ul_y translate
    ul_angle rotate
    ul_gray setgray
    ul_font setfont
    0 0 ul_h_ptsize 2 div sub moveto
    draw_underlay
  grestore
} def

% Page prefeed
/page_prefeed {		% bool -> -
  statusdict /prefeed known {
    statusdict exch /prefeed exch put
  } {
    pop
  } ifelse
} def

% Wrapped line markers
/wrapped_line_mark {	% x y charwith charheight type -> -
  /type exch def
  /h exch def
  /w exch def
  /y exch def
  /x exch def

  type 2 eq {
    % Black boxes (like TeX does)
    gsave
      0 setlinewidth
      x w 4 div add y M
      0 h rlineto w 2 div 0 rlineto 0 h neg rlineto
      closepath fill
    grestore
  } {
    type 3 eq {
      % Small arrows
      gsave
        .2 setlinewidth
        x w 2 div add y h 2 div add M
        w 4 div 0 rlineto
        x w 4 div add y lineto stroke

        x w 4 div add w 8 div add y h 4 div add M
        x w 4 div add y lineto
	w 4 div h 8 div rlineto stroke
      grestore
    } {
      % do nothing
    } ifelse
  } ifelse
} def

% EPSF import.

/BeginEPSF {
  /b4_Inc_state save def    		% Save state for cleanup
  /dict_count countdictstack def	% Count objects on dict stack
  /op_count count 1 sub def		% Count objects on operand stack
  userdict begin
  /showpage { } def
  0 setgray 0 setlinecap
  1 setlinewidth 0 setlinejoin
  10 setmiterlimit [ ] 0 setdash newpath
  /languagelevel where {
    pop languagelevel
    1 ne {
      false setstrokeadjust false setoverprint
    } if
  } if
} bind def

/EndEPSF {
  count op_count sub { pos } repeat	% Clean up stacks
  countdictstack dict_count sub { end } repeat
  b4_Inc_state restore
} bind def

% Check PostScript language level.
/languagelevel where {
  pop /gs_languagelevel languagelevel def
} {
  /gs_languagelevel 1 def
} ifelse
%%EndResource
%%BeginResource: procset Enscript-Encoding-88591 1.6 4
/encoding_vector [
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/space        	/exclam       	/quotedbl     	/numbersign   	
/dollar       	/percent      	/ampersand    	/quoteright   	
/parenleft    	/parenright   	/asterisk     	/plus         	
/comma        	/hyphen       	/period       	/slash        	
/zero         	/one          	/two          	/three        	
/four         	/five         	/six          	/seven        	
/eight        	/nine         	/colon        	/semicolon    	
/less         	/equal        	/greater      	/question     	
/at           	/A            	/B            	/C            	
/D            	/E            	/F            	/G            	
/H            	/I            	/J            	/K            	
/L            	/M            	/N            	/O            	
/P            	/Q            	/R            	/S            	
/T            	/U            	/V            	/W            	
/X            	/Y            	/Z            	/bracketleft  	
/backslash    	/bracketright 	/asciicircum  	/underscore   	
/quoteleft    	/a            	/b            	/c            	
/d            	/e            	/f            	/g            	
/h            	/i            	/j            	/k            	
/l            	/m            	/n            	/o            	
/p            	/q            	/r            	/s            	
/t            	/u            	/v            	/w            	
/x            	/y            	/z            	/braceleft    	
/bar          	/braceright   	/tilde        	/.notdef      	
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/.notdef      	/.notdef      	/.notdef      	/.notdef      	
/space        	/exclamdown   	/cent         	/sterling     	
/currency     	/yen          	/brokenbar    	/section      	
/dieresis     	/copyright    	/ordfeminine  	/guillemotleft	
/logicalnot   	/hyphen       	/registered   	/macron       	
/degree       	/plusminus    	/twosuperior  	/threesuperior	
/acute        	/mu           	/paragraph    	/bullet       	
/cedilla      	/onesuperior  	/ordmasculine 	/guillemotright	
/onequarter   	/onehalf      	/threequarters	/questiondown 	
/Agrave       	/Aacute       	/Acircumflex  	/Atilde       	
/Adieresis    	/Aring        	/AE           	/Ccedilla     	
/Egrave       	/Eacute       	/Ecircumflex  	/Edieresis    	
/Igrave       	/Iacute       	/Icircumflex  	/Idieresis    	
/Eth          	/Ntilde       	/Ograve       	/Oacute       	
/Ocircumflex  	/Otilde       	/Odieresis    	/multiply     	
/Oslash       	/Ugrave       	/Uacute       	/Ucircumflex  	
/Udieresis    	/Yacute       	/Thorn        	/germandbls   	
/agrave       	/aacute       	/acircumflex  	/atilde       	
/adieresis    	/aring        	/ae           	/ccedilla     	
/egrave       	/eacute       	/ecircumflex  	/edieresis    	
/igrave       	/iacute       	/icircumflex  	/idieresis    	
/eth          	/ntilde       	/ograve       	/oacute       	
/ocircumflex  	/otilde       	/odieresis    	/divide       	
/oslash       	/ugrave       	/uacute       	/ucircumflex  	
/udieresis    	/yacute       	/thorn        	/ydieresis    	
] def
%%EndResource
%%EndProlog
%%BeginSetup
%%IncludeResource: font Courier-Bold
%%IncludeResource: font Courier
/HFpt_w 10 def
/HFpt_h 10 def
/Courier-Bold /HF-gs-font MF
/HF /HF-gs-font findfont [HFpt_w 0 0 HFpt_h 0 0] makefont def
/Courier /F-gs-font MF
/F-gs-font 10 10 SF
/#copies 1 def
% Pagedevice definitions:
gs_languagelevel 1 gt {
  <<
    /PageSize [612 792] 
  >> setpagedevice
} if
/d_page_w 498 def
/d_page_h 692 def
/d_header_x 0 def
/d_header_y 692 def
/d_header_w 498 def
/d_header_h 0 def
/d_footer_x 0 def
/d_footer_y 0 def
/d_footer_w 498 def
/d_footer_h 0 def
/d_output_w 498 def
/d_output_h 692 def
/cols 1 def
%%EndSetup
%%Page: (1) 1
%%BeginPageSetup
_S
76 24 translate
/pagenum 1 def
/fname () def
/fdir () def
/ftail () def
/user_header_p false def
/user_footer_p false def
%%EndPageSetup
5 635 M
(DICE Working Group                                               S. Raza) s
5 624 M
(Internet-Draft                                           SICS, Stockholm) s
5 613 M
(Intended Status: Standard Track                               H. Shafagh) s
5 602 M
(                                                              ETH Zurich) s
5 591 M
(                                                               O. Dupont) s
5 580 M
(                                                    Cisco Systems, Paris) s
5 569 M
(Expires: September 11, 2014                               March 10, 2014) s
5 536 M
(Compression of Record and Handshake Headers for Constrained Environments) s
5 525 M
(                   draft-raza-dice-compressed-dtls-00) s
5 503 M
(Abstract) s
5 481 M
(   This document describes header compression mechanisms for the) s
5 470 M
(   Datagram Transport Layer Security \(DTLS\) [RFC6347] based on the) s
5 459 M
(   encoding scheme standardized in [RFC6282]. The DTLS Record Header) s
5 448 M
(   \(RH\), Handshake Header \(HH\), and optionally handshake message headers) s
5 437 M
(   are compressed using Next Header Compression \(NHC\) defined in) s
5 426 M
(   [RFC6282]. This document neither invalidates any encoding schemes) s
5 415 M
(   proposed in 6LoWPAN [RFC6282] nor compromises the end-to-end security) s
5 404 M
(   properties provided by DTLS. This document aims to increase the) s
5 393 M
(   applicability of DTLS and, thus, CoAPs [draft-ietf-core-coap-18] in) s
5 382 M
(   constrained environments.) s
5 360 M
(Status of this Memo) s
5 338 M
(   This Internet-Draft is submitted in full conformance with the) s
5 327 M
(   provisions of BCP 78 and BCP 79.) s
5 305 M
(   Internet-Drafts are working documents of the Internet Engineering) s
5 294 M
(   Task Force \(IETF\).  Note that other groups may also distribute) s
5 283 M
(   working documents as Internet-Drafts.  The list of current Internet-) s
5 272 M
(   Drafts is at http://datatracker.ietf.org/drafts/current/.) s
5 250 M
(   Internet-Drafts are draft documents valid for a maximum of six months) s
5 239 M
(   and may be updated, replaced, or obsoleted by other documents at any) s
5 228 M
(   time.  It is inappropriate to use Internet-Drafts as reference) s
5 217 M
(   material or to cite them other than as "work in progress.") s
5 195 M
(   This Internet-Draft will expire on September 11, 2014.) s
5 162 M
(Copyright and License Notice) s
5 140 M
(   Copyright \(c\) 2014 IETF Trust and the persons identified as the) s
5 129 M
(   document authors. All rights reserved.) s
5 74 M
(Raza, Shafagh & Dupont Expires September 11, 2014               [Page 1]) s
_R
S
%%Page: (2) 2
%%BeginPageSetup
_S
76 24 translate
/pagenum 2 def
/fname () def
/fdir () def
/ftail () def
/user_header_p false def
/user_footer_p false def
%%EndPageSetup
5 668 M
(INTERNET DRAFT        Compressed-DTLS-for-6LoWPAN         March 10, 2014) s
5 635 M
(   This document is subject to BCP 78 and the IETF Trust's Legal) s
5 624 M
(   Provisions Relating to IETF Documents) s
5 613 M
(   \(http://trustee.ietf.org/license-info\) in effect on the date of) s
5 602 M
(   publication of this document. Please review these documents) s
5 591 M
(   carefully, as they describe your rights and restrictions with respect) s
5 580 M
(   to this document. Code Components extracted from this document must) s
5 569 M
(   include Simplified BSD License text as described in Section 4.e of) s
5 558 M
(   the Trust Legal Provisions and are provided without warranty as) s
5 547 M
(   described in the Simplified BSD License.) s
5 503 M
(Table of Contents) s
5 481 M
(   1  Introduction  . . . . . . . . . . . . . . . . . . . . . . . . .  3) s
5 470 M
(     1.1  Terminology . . . . . . . . . . . . . . . . . . . . . . . .  3) s
5 459 M
(   2.  Linking DTLS Header Compression with 6LoWPAN . . . . . . . . .  4) s
5 448 M
(   3. LOWPAN_NHC for the Record Header  . . . . . . . . . . . . . . .  4) s
5 437 M
(   4. LOWPAN_NHC for the Record Plus Handshake Headers  . . . . . . .  6) s
5 426 M
(   5. LOWPAN_NHC for the Handshake Messages . . . . . . . . . . . . .  7) s
5 415 M
(   6. Summary of DTLS header sizes with and without Compression . . . 10) s
5 404 M
(   7. Implementation Considerations . . . . . . . . . . . . . . . . . 10) s
5 393 M
(   8. Security Considerations . . . . . . . . . . . . . . . . . . . . 11) s
5 382 M
(   9. IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 11) s
5 371 M
(   10. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . 12) s
5 360 M
(   11. References . . . . . . . . . . . . . . . . . . . . . . . . . . 12) s
5 349 M
(     11.1. Normative References . . . . . . . . . . . . . . . . . . . 12) s
5 338 M
(     11.2. Informative References . . . . . . . . . . . . . . . . . . 12) s
5 327 M
(   Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 12) s
5 74 M
(Raza, Shafagh & Dupont Expires September 11, 2014               [Page 2]) s
_R
S
%%Page: (3) 3
%%BeginPageSetup
_S
76 24 translate
/pagenum 3 def
/fname () def
/fdir () def
/ftail () def
/user_header_p false def
/user_footer_p false def
%%EndPageSetup
5 668 M
(INTERNET DRAFT        Compressed-DTLS-for-6LoWPAN         March 10, 2014) s
5 635 M
(1  Introduction) s
5 613 M
(   To protect CoAP transmissions, Datagram TLS \(DTLS\) has been proposed) s
5 602 M
(   as the primary security protocol. Analogous to TLS-protected HTTP) s
5 591 M
(   \(HTTPs\), the DTLS-secured CoAP protocol is termed CoAPs. DTLS is a) s
5 580 M
(   chatty protocol and requires numerous message exchanges to establish) s
5 569 M
(   a secure session. While DTLS supports a wide range of cryptographic) s
5 558 M
(   primitives for peer authentication and payload protection, it was) s
5 547 M
(   originally designed for network scenarios where message length was) s
5 536 M
(   not a critical design criterion. Therefore, it is inefficient to use) s
5 525 M
(   the DTLS protocol, as it is, for constrained devices. To cope with) s
5 514 M
(   constrained resources and the size limitations of IEEE 802.15.4-based) s
5 503 M
(   networks, 6LoWPAN header compression mechanisms are defined.) s
5 492 M
(   [RFC6282] defines how IPv6 datagrams can be routed over IEEE 802.15.4) s
5 481 M
(   [IEEE802.15.4]-based networks. [RFC6282] defines header compression) s
5 470 M
(   schemes that can significantly reduce the size of IP, IP extensions,) s
5 459 M
(   and UDP headers. It is particularly beneficial to apply the 6LoWPAN) s
5 448 M
(   header compression mechanisms to compress other protocols having) s
5 437 M
(   well-defined header fields, such as DTLS. This document provides) s
5 426 M
(   header compression for the DTLS Record, Handshake, and handshake) s
5 415 M
(   messages headers with 6LoWPAN header compression mechanisms. This) s
5 404 M
(   enables the routing of heavy-weight IP traffic to resource-) s
5 393 M
(   constrained [IEEE802.15.4]-based wireless network.) s
5 371 M
(   The DTLS header compression defined in this documents does not) s
5 360 M
(   compromise the DTLS ability to provide end-to-end security between) s
5 349 M
(   constrained nodes and hosts on the Internet. The security in) s
5 338 M
(   [IEEE802.15.4]-based IP networks or what is more commonly known) s
5 327 M
(   6LoWPAN networks is particularly important as we connect the insecure) s
5 316 M
(   Internet with the vulnerable wireless network. The purpose of DTLS) s
5 305 M
(   header compression is twofold. First, achieving energy efficiency by) s
5 294 M
(   reducing the message size, since communication requires more energy) s
5 283 M
(   than computation. Second, avoiding 6LoWPAN fragmentation that is) s
5 272 M
(   applied when the size of a datagram is larger than the link layer) s
5 261 M
(   MTU. Avoiding fragmentation, whenever possible, is also important) s
5 250 M
(   from the security point of view as the 6LoWPAN protocol is vulnerable) s
5 239 M
(   to fragmentation attacks [WiSec13].) s
5 217 M
(   Generic Header Compression \(GHC\) [draft-bormann-6lowpan-ghc-06],) s
5 206 M
(   analogous to NHC, is also defined to allow upper layer \(UDP payload) s
5 195 M
(   and above\) header compression. 6LoWPAN-GHC is a generic compression) s
5 184 M
(   scheme for all headers and header-like structures, and is not) s
5 173 M
(   targeted for the DTLS protocol; also, it is generally a slightly less) s
5 162 M
(   efficient approach. It is an alternative to the approach presented in) s
5 151 M
(   this document and it is worth evaluating the two approaches for the) s
5 140 M
(   DTLS Record and Handshake headers.) s
5 118 M
(1.1  Terminology) s
5 74 M
(Raza, Shafagh & Dupont Expires September 11, 2014               [Page 3]) s
_R
S
%%Page: (4) 4
%%BeginPageSetup
_S
76 24 translate
/pagenum 4 def
/fname () def
/fdir () def
/ftail () def
/user_header_p false def
/user_footer_p false def
%%EndPageSetup
5 668 M
(INTERNET DRAFT        Compressed-DTLS-for-6LoWPAN         March 10, 2014) s
5 635 M
(   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",) s
5 624 M
(   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this) s
5 613 M
(   document are to be interpreted as described in RFC 2119 [RFC2119].) s
5 580 M
(2.  Linking DTLS Header Compression with 6LoWPAN) s
5 558 M
(   [RFC6282] defines the general format of NHC that can be used to) s
5 547 M
(   encode DTLD headers. In order to apply 6LoWPAN header compression) s
5 536 M
(   mechanisms to compress headers in the UDP payload, we either require) s
5 525 M
(   a modification in the current NHC encodings for UDP in the 6LoWPAN) s
5 514 M
(   standard, or need to define a new NHC for UDP with different ID bits.) s
5 503 M
(   The first solution requires modification in the current standard and) s
5 492 M
(   hence is not a favorable solution. The second solution, that is used) s
5 481 M
(   in this document, is an extension to the 6LoWPAN standard; a similar) s
5 470 M
(   approach is adapted to distinguish NHC from GHC [draft-bormann-) s
5 459 M
(   6lowpan-ghc-06]. The ID bits 11110 in the NHC for UDP, as defined in) s
5 448 M
(   the 6LoWPAN standard, indicate that the UDP payload is not) s
5 437 M
(   compressed. We define the ID bits 11011 in the NHC for UDP to) s
5 426 M
(   indicate that the UDP payload is compressed with 6LoWPAN_NHC. The ID) s
5 415 M
(   bits 11011 are currently unassigned in the 6LoWPAN standard. Figure 1) s
5 404 M
(   shows our proposed NHC for UDP that allows compression of UDP) s
5 393 M
(   payload; in the case of DTLS, the UDP payload contains the NHC) s
5 382 M
(   compressed DTLS headers.) s
5 360 M
(                     0   1   2   3   4   5   6   7) s
5 349 M
(                   +---+---+---+---+---+---+---+---+) s
5 338 M
(                   | 1 | 1 | 0 | 1 | 1 | C |   P   |) s
5 327 M
(                   +---+---+---+---+---+---+---+---+) s
5 305 M
( Figure 1: 6LOWPAN_NHC for UDP which allows compression of UDP payload) s
5 272 M
(3. LOWPAN_NHC for the Record Header) s
5 250 M
(   The Record protocol adds header fields of 13 bytes length to each) s
5 239 M
(   packet that is sent throughout the lifetime of a device that uses) s
5 228 M
(   DTLS. The header compression proposed in this section reduces the) s
5 217 M
(   Record header length to 4 bytes \(plus one byte for the NHC\). In) s
5 206 M
(   contrary to the handshake header and messages, the Record header) s
5 195 M
(   remains un-encrypted in all cases. Thus it can always be compressed) s
5 184 M
(   using the mechanism explained in this section.) s
5 162 M
(   In order to provide header compression for the Record and Handshake) s
5 151 M
(   headers, this document discusses two cases. In the first case, the) s
5 140 M
(   Record header fragment field contains a handshake message; the next) s
5 129 M
(   section defines header compression regarding this case. In the second) s
5 118 M
(   case, the fragment field in the Record header is not a handshake) s
5 74 M
(Raza, Shafagh & Dupont Expires September 11, 2014               [Page 4]) s
_R
S
%%Page: (5) 5
%%BeginPageSetup
_S
76 24 translate
/pagenum 5 def
/fname () def
/fdir () def
/ftail () def
/user_header_p false def
/user_footer_p false def
%%EndPageSetup
5 668 M
(INTERNET DRAFT        Compressed-DTLS-for-6LoWPAN         March 10, 2014) s
5 635 M
(   message, it is mostly application data, or could be a DTLS alert) s
5 624 M
(   message or ChangeCipherSpec. Figure 2 shows 6LoWPAN_NHC encoding for) s
5 613 M
(   the Record header \(LOWPAN_NHC_R\).) s
5 591 M
(                     0   1   2   3   4   5   6   7) s
5 580 M
(                   +---+---+---+---+---+---+---+---+) s
5 569 M
(                   | 1 | 0 | 0 | 1 | V | EC|  SN   |) s
5 558 M
(                   +---+---+---+---+---+---+---+---+) s
5 536 M
(   Figure 2: Proposed LOWPAN NHC encoding for the DTLS Record header) s
5 514 M
(   The encoded bits have the following functions:) s
5 492 M
(   o  The first four bits in the NHC represent the NHC ID we define for) s
5 481 M
(      the Record header. These are set to 1001.) s
5 459 M
(   o Version \(V\): If 0, the version is the DTLS latest version which is) s
5 448 M
(      1.2, and the field is omitted. If 1, the version field is carried) s
5 437 M
(      inline.) s
5 415 M
(   o Epoch \(EC\): If 0, an 8 bit epoch is used and the left most 8 bits) s
5 404 M
(      are omitted. If 1, all 16 bits of the epoch are carried inline. In) s
5 393 M
(      most cases the actual epoch is either 0 or 1. Therefore, an 8 bit) s
5 382 M
(      epoch is used most of the time, allowing for a higher space.) s
5 360 M
(   o Sequence Number \(SN\): The sequence number consists of 48 bits, of) s
5 349 M
(      which some are leading zeros. If SN is set to 00, a 16 bit) s
5 338 M
(      sequence number is used and the left most 32 bits are omitted. If) s
5 327 M
(      01, a 24 bit sequence number is used and the left most 24 bits are) s
5 316 M
(      omitted. If 10, a 32 bit sequence number is used and the left most) s
5 305 M
(      16 bits are omitted. If 11, all 48 bits of the sequence number are) s
5 294 M
(      carried inline. The SN field in the Record header contains a value) s
5 283 M
(      1 for the first packet sent, and it is incremented sequentially) s
5 272 M
(      for the subsequent packets. Note that by using 16-bit sequence) s
5 261 M
(      number we do not limit the size of sequence number to 2^\(16-1\),) s
5 250 M
(      but propose to use 16 bits for the sequence number prior to the) s
5 239 M
(      transmission of the 2^16th packet on a DTLS connection. From the) s
5 228 M
(      2^16 to 2^\(24-1\) we propose to use 24-bit sequence numbers. Follow) s
5 217 M
(      the same procedure for the 32-bit sequence numbers as well.) s
5 206 M
(      However, the sender and the receiver sequence-number-counters must) s
5 195 M
(      be reset prior to sending the 2^48th packet.) s
5 162 M
(   In the Record header, content_type field is always carried inline.) s
5 151 M
(   The length field in the Record header is omitted as we expect only) s
5 140 M
(   one DTLS record per UDP packet in constrained environments. While a) s
5 129 M
(   source device inside a 6LoWPAN sends one DTLS record per UDP packet,) s
5 118 M
(   a typical destination device on the conventional Internet side may) s
5 74 M
(Raza, Shafagh & Dupont Expires September 11, 2014               [Page 5]) s
_R
S
%%Page: (6) 6
%%BeginPageSetup
_S
76 24 translate
/pagenum 6 def
/fname () def
/fdir () def
/ftail () def
/user_header_p false def
/user_footer_p false def
%%EndPageSetup
5 668 M
(INTERNET DRAFT        Compressed-DTLS-for-6LoWPAN         March 10, 2014) s
5 635 M
(   send multiple DTLS records in a single UDP packet. However, as the) s
5 624 M
(   6BR performs the compression/decompression of incoming packets, there) s
5 613 M
(   is the possibility to enforce one DTLS record per UDP packet before) s
5 602 M
(   routing these packets in 6LoWPAN networks. The length field can be) s
5 591 M
(   deduced from the lower layers: either from the 6LoWPAN header or the) s
5 580 M
(   IEEE 802.15.4 header. Figure 3 shows a sample NHC compressed IP/UDP) s
5 569 M
(   packet secured with the Record protocol.) s
5 514 M
(   |   octet 1     |   octet 2     |    octet 3    |    octet 4    |) s
5 503 M
(   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+) s
5 492 M
(   |         LOWPAN_IPHC           |  Hop Limit    | Source Address|) s
5 481 M
(   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+) s
5 470 M
(   | Source Address|      Destination Address      | LOWPAN_NHC_UDP|) s
5 459 M
(   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+) s
5 448 M
(   |S Port |D Port |           Checksum            | LOWPAN_NHC_R  |) s
5 437 M
(   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+) s
5 426 M
(   | Content Type  |      Epoch    |       Sequence Number         |) s
5 415 M
(   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+) s
5 404 M
(   |                                                               |) s
5 393 M
(   +       Initialization Vector \(IV\) [16 bytes for AES]           +) s
5 382 M
(   |                                                               |) s
5 371 M
(   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+) s
5 360 M
(   |        Application Data Fragment \(Variable Size\)              |) s
5 349 M
(   +                               +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+) s
5 338 M
(   |                               |                               |) s
5 327 M
(   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+                               +) s
5 316 M
(   |                                                               |) s
5 305 M
(   +         MAC \(Variable Size\)   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+) s
5 294 M
(   |                               |    padding    |Padding Length |) s
5 283 M
(   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+) s
5 261 M
(     Figure 3: A sample NHC compressed IP/UDP packet containing an) s
5 250 M
(               application data such as a CoAP message.) s
5 217 M
(4. LOWPAN_NHC for the Record Plus Handshake Headers) s
5 195 M
(   In the case where the Record header fragment field contains a) s
5 184 M
(   handshake message, we compress both the Record header and the) s
5 173 M
(   Handshake header using a single encoding byte and define 6LoWPAN_NHC) s
5 162 M
(   for Record+Handshake \(6LoWPAN_NHC_RH\). The Handshake protocol) s
5 151 M
(   requires 12 bytes of the handshake header. Using the proposed) s
5 140 M
(   6LoWPAN_NHC_RH the handshake header length is reduced to 3 bytes.) s
5 129 M
(   Figure 4 shows 6LoWPAN NHC encoding for the Record+Handshake) s
5 118 M
(   headers.) s
5 74 M
(Raza, Shafagh & Dupont Expires September 11, 2014               [Page 6]) s
_R
S
%%Page: (7) 7
%%BeginPageSetup
_S
76 24 translate
/pagenum 7 def
/fname () def
/fdir () def
/ftail () def
/user_header_p false def
/user_footer_p false def
%%EndPageSetup
5 668 M
(INTERNET DRAFT        Compressed-DTLS-for-6LoWPAN         March 10, 2014) s
5 635 M
(                     0   1   2   3   4   5   6   7) s
5 624 M
(                   +---+---+---+---+---+---+---+---+) s
5 613 M
(                   | 1 | 0 | 0 | 1 | V |EC |SN | F |) s
5 602 M
(                   +---+---+---+---+---+---+---+---+) s
5 580 M
(Figure 4: LOWPAN_NHC encoding for the DTLS Record plus Handshake headers) s
5 558 M
(   The encoded bits have the following functions:) s
5 525 M
(   o The first four bits represent the ID field that is used to) s
5 514 M
(      distinguish 6LoWPAN_NHC_RH from other encodings, and to comply) s
5 503 M
(      with 6LoWPAN_NHC encoding scheme. In case of 6LoWPAN_NHC_RHS we) s
5 492 M
(      set the ID bits to 1000.) s
5 470 M
(   o The Version \(V\) and Epoch \(EC\) are encoded using the same scheme) s
5 459 M
(      presented in Section 3.) s
5 437 M
(   o If SN is set to 0, a 16 bit sequence number is used and the left) s
5 426 M
(      most 32 bits are omitted. If 1, all 48 bits of the sequence number) s
5 415 M
(      are carried inline.) s
5 393 M
(   o Fragment \(F\): If 0, the handshake message is not fragmented and the) s
5 382 M
(      fields fragment_offset and fragment_length are omitted. This is) s
5 371 M
(      the common case, which occurs when a handshake message is not) s
5 360 M
(      larger than the maximum record size. If 1, the fields) s
5 349 M
(      fragment_offset and fragment_length are carried inline.) s
5 316 M
(   In contrary to the scheme defined in Section 3, the content_type) s
5 305 M
(   field is always omitted as it is obvious based on the ID bits that) s
5 294 M
(   the content type is the Handshake protocol. The message_type and) s
5 283 M
(   message_sequence fields of the Handshake header are always carried) s
5 272 M
(   inline. The length field in the Handshake headers is always omitted) s
5 261 M
(   as it can be deduced from the lower layers: either from the 6LoWPAN) s
5 250 M
(   header or the IEEE 802.15.4 header. We have to un-compress layer-wise) s
5 239 M
(   from lower to higher layers until the UDP header is uncompressed.) s
5 228 M
(   Then the length of the UDP payload is known and the DTLS payload) s
5 217 M
(   length can be calculated.) s
5 195 M
(   With this combined encoding scheme the 25 bytes of Record plus) s
5 184 M
(   Handshake headers are bring down to 6 bytes \(plus one additional byte) s
5 173 M
(   for the 6LoWPAN_NHC_RH\). Considering that a handshake process) s
5 162 M
(   consists of 10 messages, sending 18 less bytes for each message is a) s
5 151 M
(   very significant saving. This contributes to the feasibility of using) s
5 140 M
(   the chatty handshake protocol for constrained nodes.) s
5 118 M
(5. LOWPAN_NHC for the Handshake Messages) s
5 74 M
(Raza, Shafagh & Dupont Expires September 11, 2014               [Page 7]) s
_R
S
%%Page: (8) 8
%%BeginPageSetup
_S
76 24 translate
/pagenum 8 def
/fname () def
/fdir () def
/ftail () def
/user_header_p false def
/user_footer_p false def
%%EndPageSetup
5 668 M
(INTERNET DRAFT        Compressed-DTLS-for-6LoWPAN         March 10, 2014) s
5 635 M
(   The Handshake protocol consists of 10 messages, all having well-) s
5 624 M
(   defined headers. We can compress some of the handshake messages. Two) s
5 613 M
(   of the handshake messages with most number of header fields are) s
5 602 M
(   ClientHello and ServerHello. Using the 6LoWPAN_NHC for the) s
5 591 M
(   ClientHello message \(6LoWPAN_NHC_CH\) defined in this document, we can) s
5 580 M
(   omit all ClientHello fields except the random field. The minimum) s
5 569 M
(   possible size of a ClientHello message without the random field is 10) s
5 558 M
(   bytes: version \(2\), session_id length\(1\), cookie length \(1\),) s
5 547 M
(   cipher_suites length \(2\), cipher_suites \(2\), compression_methods) s
5 536 M
(   length \(1\), compression_methods \(1\). By appling 6LoWPAN_NHC_CH the) s
5 525 M
(   minimum possible size of a ClientHello message without a random field) s
5 514 M
(   is 1 byte that is used to encode 6LoWPAN_NHC_CH. This is the common) s
5 503 M
(   case when DTLS is used to secure CoAP messages. Figure 5 depicts the) s
5 492 M
(   NHC encoding for the ClientHello message.) s
5 470 M
(                     0   1   2   3   4   5   6   7) s
5 459 M
(                   +---+---+---+---+---+---+---+---+) s
5 448 M
(                   | 1 | 0 | 1 | 0 | SI| C |CS |CM |) s
5 437 M
(                   +---+---+---+---+---+---+---+---+) s
5 415 M
(     Figure 5: LOWPAN_NHC encoding for the DTLS ClientHello Message) s
5 393 M
(   The function of each compressed header field is described below:) s
5 360 M
(   o The first four bits in the 6LoWPAN_NHC_CH represent the ID field) s
5 349 M
(      which are set to 1010.) s
5 327 M
(   o Session ID \(SI\) and Cookie \(C\): If 0, the session_id and/or cookie) s
5 316 M
(      fields are not available and these fields and 8 bits of the) s
5 305 M
(      prefixed length fields are omitted. In the \(D\)TLS protocol,) s
5 294 M
(      session_id is empty if no session is available, or if the client) s
5 283 M
(      wishes to generate new security parameters. The ClientHello) s
5 272 M
(      message uses session_id only if the DTLS client wants to resume) s
5 261 M
(      the old session. If SI or C is set to 1, the session_id and/or) s
5 250 M
(      cookie fields are carried inline.) s
5 228 M
(   o Cipher Suites \(CS\): If 0, the default \(mandatory\) cipher suite for) s
5 217 M
(      CoAP that supports automatic key management is used and this field) s
5 206 M
(      and the prefixed 16 bits length field are omitted. In the current) s
5 195 M
(      CoAP draft, TLS_ECDHE_ECDSA_WITH_AES_128_CCM_8 is a mandatory) s
5 184 M
(      cipher suite. If CS is set to 1, the cipher_suites field is) s
5 173 M
(      carried inline.) s
5 151 M
(   o Compression Methods \(CM\): If 0, the default compression method,) s
5 140 M
(      i.e., COMPRESSION_NULL is used and this field and the prefixed 8) s
5 129 M
(      bits length field are omitted. If CM is set to 1, the) s
5 118 M
(      compression_methods field is carried inline.) s
5 74 M
(Raza, Shafagh & Dupont Expires September 11, 2014               [Page 8]) s
_R
S
%%Page: (9) 9
%%BeginPageSetup
_S
76 24 translate
/pagenum 9 def
/fname () def
/fdir () def
/ftail () def
/user_header_p false def
/user_footer_p false def
%%EndPageSetup
5 668 M
(INTERNET DRAFT        Compressed-DTLS-for-6LoWPAN         March 10, 2014) s
5 635 M
(   The random field in the ClientHello is always carried inline whereas) s
5 624 M
(   the version field is always omitted. The version contains the same) s
5 613 M
(   value as in the DTLS Record header. In case of TLS/SSL the version) s
5 602 M
(   field was defined to let a TLS client specify an older version to be) s
5 591 M
(   compatible with an SSL client, which is rarely used in practice. All) s
5 580 M
(   current versions of web browsers use the same TLS version in Record) s
5 569 M
(   and ClientHello. DTLS 1.2 \(adapted from TLS 1.2\) mentions that the) s
5 558 M
(   client sends its latest supported version in the ClientHello message.) s
5 547 M
(   All DTLS versions \(1.0 and 1.2\) have compatible ClientHello messages.) s
5 536 M
(   If the server does not support this version, then the ServerHello) s
5 525 M
(   message contains its supported version. If the client is not capable) s
5 514 M
(   of handling server's version, it terminates the connection with a) s
5 503 M
(   protocol version alert.) s
5 481 M
(   Figure 6 shows a sample compressed IP/UDP datagram that contains a) s
5 470 M
(   ClientHello.) s
5 448 M
(   |   octet 1     |   octet 2     |    octet 3    |    octet 4    |) s
5 437 M
(   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+) s
5 426 M
(   |         LOWPAN_IPHC           |  Hop Limit    | Source Address|) s
5 415 M
(   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+) s
5 404 M
(   | Source Address|      Destination Address      | LOWPAN_NHC_UDP|) s
5 393 M
(   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+) s
5 382 M
(   |S Port |D Port |           Checksum            | LOWPAN_NHC_RHS|) s
5 371 M
(   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+) s
5 360 M
(   |     Epoch     |        Sequence Number        | Message Type  |) s
5 349 M
(   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+) s
5 338 M
(   |       Message Sequence        | LOWPAN_NHC_C  |               |) s
5 327 M
(   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+               +) s
5 316 M
(   |                                                               |) s
5 305 M
(   +            Client Random \(32 bytes\)                           +) s
5 294 M
(   |                                                               |) s
5 283 M
(   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+) s
5 261 M
(    Figure 6: A sample NHC compressed IP/UDP packet containing the) s
5 250 M
(              ClientHello message.) s
5 228 M
(   This document also proposes 6LoWPAN_NHC for the ServerHello message) s
5 217 M
(   \(LOWPAN_NHC_SH\). ServerHello is very similar to ClientHello except) s
5 206 M
(   that the length of the cipher_suites and compression_methods fields) s
5 195 M
(   are fixed to 16 and 8 bits, respectively. Figure 7 shows the 6LoWPAN-) s
5 184 M
(   NHC encoding for the ServerHello message.) s
5 162 M
(                     0   1   2   3   4   5   6   7) s
5 151 M
(                   +---+---+---+---+---+---+---+---+) s
5 140 M
(                   | 1 | 0 | 1 | 1 | V |SI |CS |CM |) s
5 129 M
(                   +---+---+---+---+---+---+---+---+) s
5 74 M
(Raza, Shafagh & Dupont Expires September 11, 2014               [Page 9]) s
_R
S
%%Page: (10) 10
%%BeginPageSetup
_S
76 24 translate
/pagenum 10 def
/fname () def
/fdir () def
/ftail () def
/user_header_p false def
/user_footer_p false def
%%EndPageSetup
5 668 M
(INTERNET DRAFT        Compressed-DTLS-for-6LoWPAN         March 10, 2014) s
5 635 M
(     Figure 7: LOWPAN_NHC encoding for the DTLS ServerHello Message) s
5 613 M
(   The function of each compressed header field is described below:) s
5 591 M
(   o The first four bits in the 6LoWPAN_NHC_SH represent the ID field) s
5 580 M
(   set to 1011.) s
5 558 M
(   o Version \(V\): In order to avoid version negotiation in the initial) s
5 547 M
(   handshake, the DTLS 1.2 standard suggests that the server) s
5 536 M
(   implementation should use DTLS version 1.0. If V is set to 0, the) s
5 525 M
(   version is DTLS 1.0 and the version field is omitted. However the) s
5 514 M
(   DTLS 1.2 clients must not assume that the server does not support) s
5 503 M
(   higher versions or it will eventually negotiate DTLS 1.0 rather than) s
5 492 M
(   DTLS 1.2. If V is set to 1, the version field is carried inline.) s
5 470 M
(   o Session ID \(SI\), Cipher Suite \(CS\), and Compression Method \(CM\) are) s
5 459 M
(   encoded in a similar fashion as discussed above for the ClientHello) s
5 448 M
(   message. In order to not compromise security the random field in the) s
5 437 M
(   ServerHello, like in the ClientHello message, is always carried) s
5 426 M
(   inline.) s
5 404 M
(6. Summary of DTLS header sizes with and without Compression) s
5 371 M
(       +---+---+---+---+---+---+---+---+---+---+---+---+---+---+) s
5 360 M
(       |               |        Without    |           With    |) s
5 349 M
(       +  DTLS Header  +Compression [bytes]+Compression [bytes]+) s
5 338 M
(       |               |                   |                   |) s
5 327 M
(       +---+---+---+---+---+---+---+---+---+---+---+---+---+---+) s
5 316 M
(       |    Record     |        13         |        4* or 5    |) s
5 305 M
(       +---+---+---+---+---+---+---+---+---+---+---+---+---+---+) s
5 294 M
(       |   Handshake   |        12         |           3       |) s
5 283 M
(       +---+---+---+---+---+---+---+---+---+---+---+---+---+---+) s
5 272 M
(       |  ClientHello  |        10**       |           1       |) s
5 261 M
(       +---+---+---+---+---+---+---+---+---+---+---+---+---+---+) s
5 250 M
(       |  ServerHello  |        6**        |           1       |) s
5 239 M
(       +---+---+---+---+---+---+---+---+---+---+---+---+---+---+) s
5 217 M
(      *  For Record plus handshake case \(Section 4\) the size is 4.) s
5 206 M
(      ** Without the random field) s
5 184 M
(      Table 1: With the header compression defined in this document we) s
5 173 M
(      can clearly reduce significant communication overhead in resource-) s
5 162 M
(      constrained networks.) s
5 140 M
(7. Implementation Considerations) s
5 118 M
(   We provide an open source implementation of the proposed compression) s
5 74 M
(Raza, Shafagh & Dupont Expires September 11, 2014              [Page 10]) s
_R
S
%%Page: (11) 11
%%BeginPageSetup
_S
76 24 translate
/pagenum 11 def
/fname () def
/fdir () def
/ftail () def
/user_header_p false def
/user_footer_p false def
%%EndPageSetup
5 668 M
(INTERNET DRAFT        Compressed-DTLS-for-6LoWPAN         March 10, 2014) s
5 635 M
(   scheme in the Contiki operating system. The implementation is) s
5 624 M
(   released under BSD license and can be obtained at the following URI:) s
5 613 M
(   http://www.shahidraza.info/resources/CoAP-DTLS.zip. We also evaluate) s
5 602 M
(   the compressed DTLS and the details are published in Lithe) s
5 591 M
(   [Lithe13].) s
5 558 M
(8. Security Considerations) s
5 536 M
(   The compression scheme proposed in this document does not compromise) s
5 525 M
(   any of the security provided by the DTLS Record header and the) s
5 514 M
(   Handshake header. In particular, the SN field is compressed in an on-) s
5 503 M
(   demand fashion, as described in Section 3. In order to overcome) s
5 492 M
(   replay attacks, it is recommended that the communication end-points) s
5 481 M
(   re-establish a connection using handshake before the sequence number) s
5 470 M
(   overflows. However, in constrained environments, different) s
5 459 M
(   implementations can decide the overflow size; 2^16, 2^24, 2^32, or) s
5 448 M
(   2^48. This leads to a trade-off between the overhead incurred by) s
5 437 M
(   establishing a new secure connection \(i.e. a re-handshake\) and by) s
5 426 M
(   sending more bits of sequence number. The random number field,) s
5 415 M
(   Initialization Vector \(IV\), and Message Authentication Code \(MAC\) are) s
5 404 M
(   also not compressed to take full advantage of DTLS security.) s
5 382 M
(9. IANA Considerations) s
5 360 M
(   [RFC6282] creates a new IANA registry for the LOWPAN_NHC header type.) s
5 349 M
(   This document requests the assignment of following contents:) s
5 327 M
(   11011XXX: The 6LOWPAN_NHC encoding for the UDP header where the UDP) s
5 316 M
(   is compressed with LOWPAN_NHC.) s
5 294 M
(   1000XXXX: The 6LOWPAN_NHC encoding for the Record plus Handshake) s
5 283 M
(   headers \(LOWPAN_NHC_RH\).) s
5 261 M
(   1001XXXX: The 6LOWPAN_NHC encoding for the Record header) s
5 250 M
(   \(LOWPAN_NHC_R\).) s
5 228 M
(   1010XXXX: The 6LOWPAN_NHC encoding for the DTLS ClientHello message) s
5 217 M
(   \(LOWPAN_NHC_CH\)) s
5 195 M
(   1011XXXX: The 6LOWPAN_NHC encoding for the DTLS ServerHello message) s
5 184 M
(   \(LOWPAN_NHC_SH\)) s
5 162 M
(   The Capital letter X in bit positions represent class-specific bit) s
5 151 M
(   assignments as defined in Section 3,  4, and  5.) s
5 74 M
(Raza, Shafagh & Dupont Expires September 11, 2014              [Page 11]) s
_R
S
%%Page: (12) 12
%%BeginPageSetup
_S
76 24 translate
/pagenum 12 def
/fname () def
/fdir () def
/ftail () def
/user_header_p false def
/user_footer_p false def
%%EndPageSetup
5 668 M
(INTERNET DRAFT        Compressed-DTLS-for-6LoWPAN         March 10, 2014) s
5 635 M
(10. Acknowledgements) s
5 613 M
(   The work is funded by CALIPSO, Connect All IP-based Smart Objects,) s
5 602 M
(   funded by the European Commission under FP7 with contract number FP7-) s
5 591 M
(   ICT-2011.1.3-288879.) s
5 569 M
(11. References) s
5 547 M
(11.1. Normative References) s
5 525 M
(   [KEYWORDS] Bradner, S., "Key words for use in RFCs to Indicate) s
5 514 M
(              Requirement Levels", BCP 14, RFC 2119, March 1997.) s
5 492 M
(   [RFC6282]  Hui, J., Ed., and P. Thubert, "Compression Format for IPv6) s
5 481 M
(              Datagrams over IEEE 802.15.4-Based Networks", RFC 6282,) s
5 470 M
(              September 2011.) s
5 448 M
(   [RFC6347]  Rescorla, E. and N. Modadugu, "Datagram Transport Layer) s
5 437 M
(              Security Version 1.2", RFC 6347, January 2012.) s
5 415 M
(   [RFC4303]  J. Hui, P. Thubert, "Compression Format for IPv6 Datagrams) s
5 404 M
(              over IEEE 802.15.4-Based Networks", RFC 6282, September) s
5 393 M
(              2011) s
5 382 M
(11.2. Informative References) s
5 360 M
(   [WiSec13]  R. Hummen, J. Hiller, H. Wirtz, M. Henze, H. Shafagh, and) s
5 349 M
(              K. Wehrle, "6LoWPAN fragmentation attacks and mitigation) s
5 338 M
(              mechanisms," in Proceedings of the 6th ACM Conference on) s
5 327 M
(              Security and Privacy in Wireless and Mobile Networks, Apr.) s
5 316 M
(              2013, Budapest, Hungry.) s
5 294 M
(   [Lithe13] S. Raza, H. Shafagh, K. Hewage, R. Hummen, Thiemo Voigt,) s
5 283 M
(              "Lithe: Lightweight Secure CoAP for the Internet of) s
5 272 M
(              Things". IEEE Sensors Journal, 13\(10\), 3711-3720, October) s
5 261 M
(              2013.) s
5 217 M
(Authors' Addresses) s
5 184 M
(   Shahid Raza) s
5 173 M
(   SICS Swedish ICT AB \(SICS\)) s
5 162 M
(   Isafjordsgatan 22, 16440 Kista) s
5 151 M
(   SWEDEN) s
5 129 M
(   Phone: +46-\(0\)768831797) s
5 118 M
(   EMail: shahid@sics.se) s
5 74 M
(Raza, Shafagh & Dupont Expires September 11, 2014              [Page 12]) s
_R
S
%%Page: (13) 13
%%BeginPageSetup
_S
76 24 translate
/pagenum 13 def
/fname () def
/fdir () def
/ftail () def
/user_header_p false def
/user_footer_p false def
%%EndPageSetup
5 668 M
(INTERNET DRAFT        Compressed-DTLS-for-6LoWPAN         March 10, 2014) s
5 635 M
(   Hossein Shafagh) s
5 624 M
(   ETH Zurich) s
5 613 M
(   Universitatstrasse 6, CH-8092 Zurich) s
5 602 M
(   SWITZERLAND) s
5 580 M
(   Phone: +41 44 63 26136) s
5 569 M
(   EMail: shafagh@ethz.ch) s
5 536 M
(   Olivier Dupont) s
5 525 M
(   Cisco) s
5 514 M
(   Cisco Systems, Paris) s
5 503 M
(   FRANCE) s
5 481 M
(   Phone: +33 158 043 480) s
5 470 M
(   Email: odupont@cisco.com) s
5 74 M
(Raza, Shafagh & Dupont Expires September 11, 2014              [Page 13]) s
_R
S
%%Trailer
%%Pages: 13
%%DocumentNeededResources: font Courier-Bold Courier 
%%EOF

PAFTECH AB 2003-20262026-04-23 13:38:08