Guidance for Light-Weight Implementations of the Internet Protocol Suite
draft-ietf-lwig-guidance-01

The information below is for an old version of the document
Document Type Active Internet-Draft (lwig WG)
Last updated 2012-07-16
Replaces draft-bormann-lwig-guidance
Stream IETF
Intended RFC status (None)
Formats plain text pdf html bibtex
Stream WG state WG Document
Document shepherd None
IESG IESG state I-D Exists
Consensus Boilerplate Unknown
Telechat date
Responsible AD (None)
Send notices to (None)
LWIG Working Group                                       C. Bormann, Ed.
Internet-Draft                                   Universitaet Bremen TZI
Intended status: Informational                             July 16, 2012
Expires: January 17, 2013

Guidance for Light-Weight Implementations of the Internet Protocol Suite
                      draft-ietf-lwig-guidance-01

Abstract

   Implementation of Internet protocols on small devices benefits from
   light-weight implementation techniques, which are often not
   documented in an accessible way.

   This document provides a first outline of and some initial content
   for the Light-Weight Implementation Guidance document planned by the
   IETF working group LWIG.

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 January 17, 2013.

Copyright Notice

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

   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

Bormann                 Expires January 17, 2013                [Page 1]
Internet-Draft  Guidance for Light-Weight Implementations      July 2012

   the Trust Legal Provisions and are provided without warranty as
   described in the Simplified BSD License.

Table of Contents

   1.  Introduction . . . . . . . . . . . . . . . . . . . . . . . . .  4
     1.1.  Objectives . . . . . . . . . . . . . . . . . . . . . . . .  4
     1.2.  Call for contributions . . . . . . . . . . . . . . . . . .  6
     1.3.  Terminology  . . . . . . . . . . . . . . . . . . . . . . .  6
   2.  Drawing the Landscape  . . . . . . . . . . . . . . . . . . . .  7
     2.1.  Classes of Devices . . . . . . . . . . . . . . . . . . . .  7
     2.2.  Design Objectives  . . . . . . . . . . . . . . . . . . . .  7
     2.3.  Implementation Styles  . . . . . . . . . . . . . . . . . .  8
     2.4.  Roles of nodes . . . . . . . . . . . . . . . . . . . . . .  9
     2.5.  Overview over the document . . . . . . . . . . . . . . . .  9
   3.  Data Plane Protocols . . . . . . . . . . . . . . . . . . . . . 10
     3.1.  Link Adaptation Layer  . . . . . . . . . . . . . . . . . . 10
       3.1.1.  Fragmentation in a 6LoWPAN Route-Over Configuration  . 10
         3.1.1.1.  Implementation Considerations for
                   Not-So-Constrained Nodes . . . . . . . . . . . . . 11
     3.2.  Network Layer  . . . . . . . . . . . . . . . . . . . . . . 11
     3.3.  Transport Layer  . . . . . . . . . . . . . . . . . . . . . 11
       3.3.1.  TCP  . . . . . . . . . . . . . . . . . . . . . . . . . 12
         3.3.1.1.  Absolutely required TCP behaviors for proper
                   functioning and interoperability . . . . . . . . . 12
         3.3.1.2.  Strongly encouraged, but non-essential,
                   behaviors of TCP . . . . . . . . . . . . . . . . . 13
         3.3.1.3.  Experimental extensions that are not yet
                   standard practices . . . . . . . . . . . . . . . . 15
         3.3.1.4.  Others . . . . . . . . . . . . . . . . . . . . . . 15
     3.4.  Application Layer  . . . . . . . . . . . . . . . . . . . . 15
       3.4.1.  General considerations about Application
               Programming Interfaces (APIs)  . . . . . . . . . . . . 15
       3.4.2.  Constrained Application Protocol (CoAP)  . . . . . . . 16
         3.4.2.1.  Message Layer Processing . . . . . . . . . . . . . 17
         3.4.2.2.  Message Parsing  . . . . . . . . . . . . . . . . . 18
         3.4.2.3.  Storing Used Message IDs . . . . . . . . . . . . . 19
       3.4.3.  (Other Application Protocols...) . . . . . . . . . . . 22
   4.  Control Plane Protocols  . . . . . . . . . . . . . . . . . . . 23
     4.1.  Link Layer Support . . . . . . . . . . . . . . . . . . . . 23
     4.2.  Network Layer  . . . . . . . . . . . . . . . . . . . . . . 23
     4.3.  Routing  . . . . . . . . . . . . . . . . . . . . . . . . . 23
     4.4.  Host Configuration and Lookup Services . . . . . . . . . . 23
Show full document text