Ruoska Encoding
draft-ruoska-encoding-06

Document Type Active Internet-Draft (individual)
Last updated 2013-10-12
Stream ISE
Intended RFC status (None)
Formats plain text xml pdf html bibtex
Stream ISE state Submission Received
Consensus Boilerplate Unknown
Document shepherd No shepherd assigned
IESG IESG state I-D Exists
Telechat date
Responsible AD (None)
Send notices to (None)
Network Working Group                                         JP. Makela
Internet-Draft                                          October 12, 2013
Intended status: Experimental
Expires: April 15, 2014

                            Ruoska Encoding
                        draft-ruoska-encoding-06

Abstract

   This document describes hierarchically structured binary encoding
   format called Ruoska Encoding (later RSK).  The main design goals are
   minimal resource usage, well defined structure with good selection of
   widely known data types, and still extendable for future usage.

   The main benefit when compared to non binary hierarchically
   structured formats like XML is simplicity and minimal resource
   demands.  Even basic XML parsing is time and memory consuming
   operation.

   When compared to other binary formats like BER encoding of ASN.1 the
   main benefit is simplicity.  ASN.1 with many different encodings is
   complex and even simple implementation needs a lot of effort.  RSK is
   also more efficient than BER.

Status of this Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   Internet-Drafts are draft documents valid for a maximum of six months
   and may be updated, replaced, or obsoleted by other documents at any
   time.  It is inappropriate to use Internet-Drafts as reference
   material or to cite them other than as "work in progress."

   This Internet-Draft will expire on April 15, 2014.

Copyright Notice

   Copyright (c) 2013 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

Makela                   Expires April 15, 2014                 [Page 1]
Internet-Draft               Ruoska Encoding                October 2013

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Document Structure . . . . . . . . . . . . . . . . . . . . . .  3
     1.1.  Endianness . . . . . . . . . . . . . . . . . . . . . . . .  4
     1.2.  String Encoding  . . . . . . . . . . . . . . . . . . . . .  4
   2.  Frame Definitions  . . . . . . . . . . . . . . . . . . . . . .  5
     2.1.  Leading Byte . . . . . . . . . . . . . . . . . . . . . . .  5
     2.2.  Meta Frames  . . . . . . . . . . . . . . . . . . . . . . .  6
       2.2.1.  Null Frame . . . . . . . . . . . . . . . . . . . . . .  6
       2.2.2.  Begin Frame  . . . . . . . . . . . . . . . . . . . . .  6
       2.2.3.  End Frame  . . . . . . . . . . . . . . . . . . . . . .  7
       2.2.4.  Array Frame  . . . . . . . . . . . . . . . . . . . . .  7
     2.3.  Data Frames  . . . . . . . . . . . . . . . . . . . . . . .  8
       2.3.1.  Boolean Frame  . . . . . . . . . . . . . . . . . . . .  9
       2.3.2.  Integer Frames . . . . . . . . . . . . . . . . . . . .  9
       2.3.3.  Float Frames . . . . . . . . . . . . . . . . . . . . . 10
       2.3.4.  String Frame . . . . . . . . . . . . . . . . . . . . . 10
       2.3.5.  Binary Frame . . . . . . . . . . . . . . . . . . . . . 11
       2.3.6.  DateTime Frames  . . . . . . . . . . . . . . . . . . . 12
       2.3.7.  NTP Short Frame  . . . . . . . . . . . . . . . . . . . 13
       2.3.8.  NTP Timestamp Frame  . . . . . . . . . . . . . . . . . 13
       2.3.9.  NTP Date Frame . . . . . . . . . . . . . . . . . . . . 14
       2.3.10. RSK Date Frame . . . . . . . . . . . . . . . . . . . . 14
     2.4.  Extended Frames  . . . . . . . . . . . . . . . . . . . . . 15
   3.  Identifiers  . . . . . . . . . . . . . . . . . . . . . . . . . 16
     3.1.  Identifier Types in Leading Byte . . . . . . . . . . . . . 16
     3.2.  Null Identifier  . . . . . . . . . . . . . . . . . . . . . 16
     3.3.  Integer Identifiers  . . . . . . . . . . . . . . . . . . . 16
     3.4.  String Identifier  . . . . . . . . . . . . . . . . . . . . 17
   4.  Frame Type Table . . . . . . . . . . . . . . . . . . . . . . . 18
   5.  Implementation Notes . . . . . . . . . . . . . . . . . . . . . 20
   6.  Security Considerations  . . . . . . . . . . . . . . . . . . . 21
   7.  IANA Considerations  . . . . . . . . . . . . . . . . . . . . . 22
Show full document text