Mobile IP Working Group                               Alpesh Patel
   INTERNET DRAFT                                          Kent Leung
   10 September 2004                                    Cisco Systems



    Experimental Message, Extension and Error Codes for Mobile IPv4
             draft-ietf-mip4-experimental-messages-02.txt


   Status of this Memo

      By submitting this Internet-Draft, I certify that any applicable
      patent or other IPR claims of which I am aware have been
      disclosed, and any of which I become aware will be disclosed, in
      accordance with RFC 3668.

      Internet-Drafts are working documents of the Internet Engineering
      Task Force (IETF), its areas, and its working groups. Note that
      other groups may also distribute working documents as
      Internet-Drafts.

      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."

      The list of current Internet-Drafts can be accessed at
      http://www.ietf.org/ietf/1id-abstracts.txt.

      The list of Internet-Draft Shadow Directories can be accessed at
      http://www.ietf.org/shadow.html.

      This Internet-Draft will expire on March 9, 2005.


   Copyright Notice


      Copyright (c) The Internet Society (2004). All Rights Reserved.


        Abstract


        Mobile IPv4 message types range from 0 to 255. This document
        reserves a message type for use by an individual, company, or
        organization for experimental purpose, to evaluate enhancements
        to Mobile IPv4 messages before formal standards proposal.




  Patel, Leung        Expires March 9, 2005             [Page 1]


  Internet Draft   Experimental Mesg., Ext. & Error Codes   September 2004





        Table of Contents


        1. Introduction.............................................2
        2. Terminology..............................................3
        3. Experimental Message.....................................3
        4. Experimental Extensions..................................4
        4.1 Non-skippable Mobile IPv4 Experimental Extension........5
        4.2 Non-skippable ICMP Router Discovery Exp. Extension......5
        4.3 Skippable Mobile IPv4 Experimental Extension............6
        4.4 Skippable ICMP Router Discovery Experimental Extension..7
        5. Experimental Error Codes.................................7
        6. Mobility Entity Considerations...........................7
        7. IANA Considerations......................................8
        7.1 New Message Type........................................8
        7.2 New Extension Values....................................8
        7.3 New Error Codes.........................................8
        9. Backward Compatibility Considerations....................9
        10. Acknowledgements........................................9
        11. References..............................................9
        11.1 Normative References..................................10
        11.2 Informative References................................10
        12. Authors' Addresses.....................................10
        Intellectual Property Statement............................11
        Disclaimer of Validity.....................................11
        Copyright Statement........................................11



1. Introduction


        Mobile IPv4 message types range from 0 to 255. This document
        reserves a message type for experimental purposes, to evaluate
        enhancements to Mobile IPv4 messages before formal standards
        proposal.

        Without experimental message capability, one would have to
        select a type value from the range defined for IANA assignment,
        which may result in collisions.

        Within a message, Mobile IP defines a general extension
        mechanism to allow optional information to be carried by Mobile
        IP control messages. Extensions are not skippable if defined in
        the range [0-127] and skippable if defined in the range [128-
        255]. This document reserves extension types in both the
        skippable and non-skippable ranges for experimental use.



  Patel, Leung        Expires March 9, 2005             [Page 2]


  Internet Draft   Experimental Mesg., Ext. & Error Codes   September 2004


        Mobile IPv4 defines error codes for use by the FA [64-127] and
        HA [128-192]. This document reserves an error code in both
        these ranges for experimental use.

        The definition of experimental numbers in this document is done
        according to the recommendation of Section 2.2 of BCP 82,
        RFC 3692.


 2. Terminology


        The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL
        NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and
        "OPTIONAL" in this document are to be interpreted as described
        in [1].

        In addition, this document frequently uses the following terms:

        EXP-MSG-TYPE: A Mobile-IPv4 message number in the range [0-255]
        to be assigned by IANA for experimental use.

        EXP-SKIP-EXT-TYPE: A Mobile-IPv4 and ICMP router discovery
        Agent Advertisement extension number in the range [128-255] to
        be assigned by IANA for experimental use.

        EXP-NONSKIP-EXT-TYPE: A Mobile-IPv4 and ICMP router discovery
        Agent Advertisement extension number in the range [0-127] to be
        assigned by IANA for experimental use.

        EXP-HA-ERROR-CODE: A Mobile-IPv4 error code in the range [128-
        192] for use by HA in MIPv4 reply messages to indicate an error
        condition.

        EXP-FA-ERROR-CODE: A Mobile-IPv4 error code in the range [64-
        127] for use by FA in reply messages to indicate error
        condition.

        Mobility Entity: Entities as defined in [2] (home agent,
        foreign agent and mobile node).


   3. Experimental Message


        Since the nature and purpose of an experimental message cannot
        be known in advance, the structure is defined as having an
        opaque payload. Entities implementing the message can interpret
        the message as per their implementation. One suggestion is to
        interpret based on extensions present in the message.



  Patel, Leung        Expires March 9, 2005             [Page 3]


  Internet Draft   Experimental Mesg., Ext. & Error Codes   September 2004


        These messages may be used between the mobility entities (Home
        Agent, Foreign Agent, and Mobile Node). Experimental messages
        MUST be authenticated using any of the authentication mechanism
        defined for Mobile IP ([2], [5]).

        This message MAY contain extensions defined in Mobile IP,
        including vendor specific extensions [4].

        IP fields:

           Source Address: Typically the interface address from which
           the message is sent.

           Destination Address: The address of the agent or the Mobile
           Node.

        UDP fields:

            Source Port        Set according to RFC 768 (variable)

            Destination Port   Set to the value 434

        Mobile IP fields shown below follow the UDP header:

      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      |                 Opaque. . .
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+



        Type       EXP-MSG-TYPE (To be assigned by IANA)

         Opaque     Zero or more octets of data, with structure defined
                    only by the particular experiment it is used for.

        Once an experimental message has been tested and shown to be
        useful, a permanent number should be obtained through the
        normal IANA numbers assignment procedures.

        A single experimental message type is defined. This message can
        contain extensions based on which the message can be
        interpreted.


   4. Experimental Extensions


        This document reserves Mobile IPv4 extensions in both the
        skippable and non-skippable ranges for experimental purposes.
        The long extension format (for non-skippable extensions) and

  Patel, Leung        Expires March 9, 2005             [Page 4]


  Internet Draft   Experimental Mesg., Ext. & Error Codes   September 2004


        short extension format (for skippable extensions), as defined
        by [2], are used for Mobile IPv4 experimental extensions.

        Also, ICMP router discovery extension numbers in both the
        skippable and non-skippable ranges are reserved for
        experimental use.


   4.1 Non-skippable Mobile IPv4 Experimental Extension


        This format is applicable for non-skippable extensions and may
        carry information more than 256 bytes.


      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              |
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
      |                           Opaque. . .
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+


        Type     EXP-NONSKIP-EXT-TYPE (to be assigned by IANA) is
                 the type, which describes an experimental extension.

        Sub-Type is a unique number given to each member in the
                 aggregated type.

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

        Opaque   Zero or more octets of data, with structure defined
                 only by the particular experiment it is used for.

        Since the length field is 16 bits wide, the extension data can
        exceed 256 bytes in length.


   4.2 Non-skippable ICMP Router Discovery Exp. Extension


      This format is applicable for non-skippable extensions.


      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     |           Opaque . . .
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

  Patel, Leung        Expires March 9, 2005             [Page 5]


  Internet Draft   Experimental Mesg., Ext. & Error Codes   September 2004




        Type     EXP-NONSKIP-EXT-TYPE (to be assigned by IANA) is
                 the type, which describes an ICMP router discovery
                 experimental extension.

        Length   Indicates the length (in bytes) of the data field
                 within this extension.  It does NOT include the Type
                 and Length fields.

        Opaque   Zero or more octets of data, with structure defined
                 only by the particular experiment it is used for.

        A node which receives a router advertisement with this
        extension should ignore the extension if it does not recognize
        it.

        A mobility entity which understands this extension, but does
        not recognize it, should drop (ignore) the router
        advertisement.


   4.3 Skippable Mobile IPv4 Experimental Extension


        This format is applicable for skippable extensions, which carry
        information less than 256 bytes.


      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    |  Opaque. . .
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+



        Type     EXP-SKIP-EXT-TYPE (to be assigned by IANA) is the
                 type, which describes an experimental extension.

        Length   Indicates the length (in bytes) of the data field
                 within this extension.  It does NOT include the Type
                 and Length fields.

        Sub-Type is a unique number given to each member in the
                 aggregated type.

        Opaque   Zero or more octets of data, with structure defined
                 only by the particular experiment it is used for.

        Since the length field is 8 bits wide, the extension data
        cannot exceed 256 bytes in length.

  Patel, Leung        Expires March 9, 2005             [Page 6]


  Internet Draft   Experimental Mesg., Ext. & Error Codes   September 2004




   4.4 Skippable ICMP Router Discovery Experimental Extension


        This format is applicable for skippable ICMP router discovery
        extensions. This extension should be ignored if an
        implementation does not understand it.

      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     |   Opaque. . .
      +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+



        Type     EXP-SKIP-EXT-TYPE (to be assigned by IANA) is the
                 type, which describes an experimental extension.

        Length   Indicates the length (in bytes) of the data field
                 within this extension.  It does NOT include the Type
                 and Length fields.

        Opaque   Zero or more octets of data, with structure defined
                 only by the particular experiment it is used for.


   5. Experimental Error Codes


        This document reserves reply error code EXP-FA-ERROR-CODE for
        use by the FA. This document also reserves reply error code
        EXP-HA-ERROR-CODE for use by the HA.

        These experimental error codes may be used in registration
        reply messages.

        It is recommended that experimental error codes be used
        with experimental messages and extensions whenever none of the
        standardized error codes are applicable.


   6. Mobility Entity Considerations


        Mobility entities can send and receive experimental messages.
        Implementations that don't understand the message type SHOULD
        silently discard the message.

        Experimental extensions can be carried in experimental messages
        and standards defined messages. In the latter case, it is

  Patel, Leung        Expires March 9, 2005             [Page 7]


  Internet Draft   Experimental Mesg., Ext. & Error Codes   September 2004


        suggested that experimental extensions MUST NOT be used in
        deployed products and usage be restricted to experimentations
        only.


   7. IANA Considerations


        This document defines a control message to be used between
        mobility entities, two new extension formats and two new error
        codes. To ensure correct interoperation based on this
        specification, IANA has reserved values in the Mobile IPv4
        number space, as defined in [2] for one new message type, two
        new extensions and two error codes.


   7.1 New Message Type

        A new Mobile IPv4 control message using UDP port 434, type EXP-
        MSG-TYPE has been defined by IANA. This value has been taken
        from the same number space as Mobile IP Registration Request
        (Type = 1), and Mobile IP Registration Reply (Type = 3). (The
        value 255 is suggested in this case).


   7.2 New Extension Values

        The following extension types are introduced by this
        specification:

        Experimental non-skippable extension: The value for EXP-
        NONSKIP-EXT-TYPE has been assigned from the numbering space for
        non-skippable extensions, which may appear in Mobile IPv4
        control messages.

        Also, the same number, EXP-NONSKIP-EXT-TYPE has been assigned
        from the numbering space for non-skippable extensions, which
        may appear in ICMP router discovery messages.  (The value 127
        is suggested in both cases.)

        Experimental skippable extension: The value EXP-SKIP-EXT-TYPE
        has been assigned from the numbering space for skippable
        extensions, which may appear in Mobile IPv4 control messages.

        Also, the same number, EXP-SKIP-EXT-TYPE has been assigned from
        the numbering space for skippable extensions which may appear
        in ICMP router discovery messages. (The value 255 is suggested
        in both cases.)

   7.3 New Error Codes



  Patel, Leung        Expires March 9, 2005             [Page 8]


  Internet Draft   Experimental Mesg., Ext. & Error Codes   September 2004


        The value EXP-HA-ERROR-CODE has been defined by IANA to be used
        as code field in messages generated by HA. (The value 192 is
        suggested for this code.)

        Also, value EXP-FA-ERROR-CODE has been defined by IANA to be
        used as the code field in messages generated by the FA. (The
        value 127 is suggested for this code.)


   8. Security Considerations


        Like all Mobile IP control messages, the experimental messages
        MUST be authenticated as per the requirements specified in [2]
        or [5]. Experimental messages without a valid authenticator
        SHOULD be discarded.


   9. Backward Compatibility Considerations


        Mobility entities that don't understand the experimental
        message MUST silently discard it.

        Mobility entities that don't understand the experimental
        skippable extensions MUST ignore them. Mobility entities that
        don't understand the non-skippable experimental extensions
        MUST silently discard the message containing them. This
        behavior is consistent with section 1.8 of [2].

        Foreign Agents and Home Agents SHOULD include an experimental
        error code in a reply message only if they have a general
        indication that the receiving entity would be able to parse it.
        An indication of this is if the request message was of type
        EXP-MSG-TYPE or contained at least one experimental extension.


   10. Acknowledgements


        The authors would like to acknowledge Henrik Levkowetz for his
        detailed review of the draft and suggestion to incorporate
        experimental extensions in this draft.

        The authors would also like to acknowledge Thomas Narten for
        his initial review of the draft and reference to [6] for
        general guidelines.


   11. References



  Patel, Leung        Expires March 9, 2005             [Page 9]


  Internet Draft   Experimental Mesg., Ext. & Error Codes   September 2004


   11.1 Normative References


   [1] Bradner, S., "Key words for use in RFCs to Indicate Requirement
       Levels", BCP 14, RFC 2119, March 1997.

   [2] Perkins, C., "IP Mobility Support", RFC 3344, August 2002.

   [3] Reynolds, J. and J. Postel, "Assigned Numbers", STD 2,
       RFC 1700, October 1994.


   11.2 Informative References


   [4] G. Dommety, K. Leung, "Mobile IP Vendor/Organization-Specific
       Extensions" RFC 3115, April 2001

   [5] C. Perkins, P. Calhoun, "Mobile IPv4 Challenge/Response
       Extensions", RFC 3012, November 2000

   [6] T. Narten, "Assigning Experimental and Testing Numbers
       Considered Useful", BCP 82, RFC 3692, January, 2004


   12. Authors' Addresses


        Questions and comments about this draft should be directed at
        the Mobile IPv4 working group:

        mip4@ietf.org

        Questions and comments about this draft may also be directed to
        the authors:


         Alpesh Patel
         Cisco Systems
         170 W. Tasman Drive,
         San Jose, CA 95134
         USA
         Email: alpesh@cisco.com
         Phone: +1 408-853-9580


         Kent Leung
         Cisco Systems
         170 W. Tasman Drive,
         San Jose, CA 95134
         USA
         Email: kleung@cisco.com

  Patel, Leung        Expires March 9, 2005             [Page 10]


  Internet Draft   Experimental Mesg., Ext. & Error Codes   September 2004


         Phone: +1 408-526-5030


   Intellectual Property Statement


        The IETF takes no position regarding the validity or scope of
        any Intellectual Property Rights or other rights that might be
        claimed to pertain to the implementation or use of the
        technology described in this document or the extent to which
        any license under such rights might or might not be available;
        nor does it represent that it has made any independent effort
        to identify any such rights.  Information on the procedures
        with respect to rights in RFC documents can be found in BCP 78
        and BCP 79.

        Copies of IPR disclosures made to the IETF Secretariat and any
        assurances of licenses to be made available, or the result of
        an attempt made to obtain a general license or permission for
        the use of such proprietary rights by implementers or users of
        this specification can be obtained from the IETF on-line IPR
        repository at http://www.ietf.org/ipr.

        The IETF invites any interested party to bring to its attention
        any copyrights, patents or patent applications, or other
        proprietary rights that may cover technology that may be
        required to implement this standard. Please address the
        information to the IETF at ietf-ipr@ietf.org.


   Disclaimer of Validity

        This document and the information contained herein are provided
        on an "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION
        HE/SHE REPRESENTS OR IS SPONSORED BY (IF ANY), THE INTERNET
        SOCIETY AND THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL
        WARRANTIES, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO
        ANY WARRANTY THAT THE USE OF THE INFORMATION HEREIN WILL NOT
        INFRINGE ANY RIGHTS OR ANY IMPLIED WARRANTIES OF
        MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.


   Copyright Statement


        Copyright (C) The Internet Society (2004).  This document is
        subject to the rights, licenses and restrictions contained in
        BCP 78, and except as set forth therein, the authors retain all
        their rights.




  Patel, Leung        Expires March 9, 2005             [Page 11]


  Internet Draft   Experimental Mesg., Ext. & Error Codes   September 2004


   Acknowledgement

        Funding for the RFC Editor function is currently provided by
        the Internet Society.

















































  Patel, Leung        Expires March 9, 2005             [Page 12]