Subject: [mobile-ip] [Fwd: Re: Proposed addition to RFC2002bis]

From: "Charles E. Perkins" <[email-masked]>
Date: Fri, 07 Sep 2001 12:39:00 -0700

Hello folks,

In case it is finally decided to insert MIER into RFC2002bis,
I have prepared the following rough text.  It was taken directly
from MIER version 7, and I did a little wordsmithing to make it
fit.  If there are no objections, the final result is likely
to be very similar to what is shown below.

Comments will be appreciated!

Regards,
Charlie P.

====================================================================================

material for existing section 1.8.
	"Message Format and Protocol Extensibility"

    The type field in the Mobile IP extension structure can support
    upto 255 (skippable and not skippable) uniquely identifiable
    extensions.  Unless additional structure is utilized for the
    extension types, the proliferation of new developments/additions
    to Mobile IP might require so many new extensions that the available
    space for extension types might run out.

    Two new extension structures are proposed to solve this problem.
    Certain types of extensions can be aggregated, using subtypes to
    identify the precise extension, for example as has been done
    with the Generalized Key Distribution extensions~\cite{genkey}.
    This will greatly reduce the rate of allocation for news
    values of the type field. 

    Since the new extension structures will cause an efficient
    usage of the extension type space, it is recommended
    that new Mobile IP extensions follow one of the two new
    extension formats whenever there may be the possibility to
    group related extensions together. 

1.8.1 Long Extension Format

   This format is applicable for non-skippable extensions which carry 
   information more than 256 bytes. It should be applicable to any future
   standardization which consider non-skippable extensions which accommodate 
   up to 64 KBytes of data. 

      0                   1                   2                   3
     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |     Type      |  Sub-Type     |           Length              |
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |                           Data      .....    
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 

     The proposed general structure of the Long Extension consists
     of the following fields:

    Type   is the type which describe a collection of extensions which
           has a common data type (see A.1, A.3).

    Sub-Type  is a unique number given to each member in the
              aggregated type.  Sub-Type values between of 200 through
              255 are reserved for future use and standardization.

    Length indicates the length (in bytes) of the data field within
           this Extension. It does NOT include the Type, Length
           and Sub-Type bytes.

    Data   is the data associated with this extension. This data MAY
           be represented in many ways (see A.1, A.3)

    Two bytes for the length field is suggested to enable providing a
    sufficiently large space for the extension data (maximum 64Kbytes). 
    
1.8.2 Short Extension Format

    This format is backward compatible with the skippable extensions
    as it is defined in [Perkins96]. Also, it applicable for extensions
    which doe not require more than 256 bytes of data.

      0                   1                   2                   3
     0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
    |     Type      |   Length      |    Sub-Type   |    Data ....
    +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

     The proposed general structure of the Short Extension consists
     of the following fields:

    Type   is the type which describe a collection of extensions which
           has a common data type (see  A.2).

    Sub-Type  is a unique number given to each member in the
              aggregated type.  Sub-Type values between of 200 through
              255 are reserved for future use and standardization.

    Length 8-bit unsigned integer. Length of the extension, in octets,
           excluding the extension Type and the extension Length fields.
           This field MUST be set to 1 plus the total length of the 
           data field.

    Data   is the data associated with this extension. This data MAY
           be represented in many ways (see  A.2)