Network Working Group                                          B. Fenner
Internet-Draft                                      AT&T Labs - Research
Expires: October 26, 2006                                 April 24, 2006


 Experimental Values In IPv4, IPv6, ICMPv4, ICMPv6, UDP and TCP Headers
                     draft-fenner-iana-exp-2780-03

Status of this Memo

   By submitting this Internet-Draft, each author represents that any
   applicable patent or other IPR claims of which he or she is aware
   have been or will be disclosed, and any of which he or she becomes
   aware will be disclosed, in accordance with Section 6 of BCP 79.

   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 October 26, 2006.

Copyright Notice

   Copyright (C) The Internet Society (2006).

Abstract

   When experimenting with or extending protocols, it is often necessary
   to use some sort of protocol number or constant in order to actually
   test or experiment with the new function, even when testing in a
   closed environment.  This document reserves some ranges of numbers
   for experimentation purposes in specific protocols where the need to
   support experimentation has been identified, and describes the
   numbers that have already been reserved by other documents.





Fenner                  Expires October 26, 2006                [Page 1]


Internet-Draft             Experimental Values                April 2006


1.  Introduction

   [RFC3692] recommends assigning option numbers for experiments and
   testing.  This document requests [[anchor2: documents --(when
   assigned)]] such assignments for the number spaces whose IANA
   considerations are documented in [RFC2780].  This document generally
   follows the form of [RFC2780].

   When using these values, carefully consider the advice in Sections 1
   and 1.1 of [RFC3692].  It is not appropriate to simply select one of
   these values and hard code it into a system.


2.  Fields in the IPv4 header

   The IPv4 header [RFC0791] contains the following fields that carry
   values assigned by the IANA: Version, Type of Service, Protocol,
   Source Address, Destination Address, and Option Type.

2.1.  IPv4 IP Version field

   The IPv4 Version field is always 4.

2.2.  IPv4 Type of Service field

   [RFC2474] defines Pool 2 (all code points xxxx11, where 'x' refers to
   either '0' or '1') as Experimental / Local Use, so no additional code
   points should be needed.  The ECN field [RFC3168] has no free code
   points to assign.

2.3.  IPv4 Protocol field

   [RFC3692] allocates two experimental code points (253 and 254) for
   the IPv4 Protocol field.

2.4.  IPv4 Source and Destination addresses

2.4.1.  IPv4 Unicast

   No experimental IPv4 addresses are defined.  For certain experiments,
   the address ranges set aside for Private Internets in [RFC1918] may
   be useful.  It is not appropriate to use other special-purpose IPv4
   addresses [RFC3330] for experimentation.

2.4.2.  IPv4 Multicast

   The globally routable group 224.0.1.20 is set aside for
   experimentation.  For certain experiments, the administratively



Fenner                  Expires October 26, 2006                [Page 2]


Internet-Draft             Experimental Values                April 2006


   scoped multicast groups defined in [RFC2365] may be useful.  This
   document assigns a single link-local scoped group, 224.0.0.TBD, and a
   single scope-relative group, TBD.

2.5.  IPv4 Option Type field

   This document assigns a single option number, with all defined values
   of the "copy" and "class" fields, resulting in four distinct option
   type codes.  See Section 8 for the assigned values.


3.  Fields in the IPv6 header

   The IPv6 header [RFC2460] contains the following fields that carry
   values assigned from IANA-managed name spaces: Version, Traffic
   Class, Next Header, Source and Destination Address.  In addition, the
   IPv6 Hop-by-Hop Options and Destination Options extension headers
   include an Option Type field with values assigned from an IANA-
   managed name space.

3.1.  IPv6 Version field

   The IPv6 Version field is always 6.

3.2.  IPv6 Traffic Class field

   [RFC2474] defines Pool 2 (all code points xxxx11, where 'x' refers to
   either '0' or '1') as Experimental / Local Use, so no additional code
   points should be needed.  The ECN field [RFC3168] has no free code
   points to assign.

3.3.  IPv6 Next Header field

   [RFC3692] allocates two experimental code points (253 and 254) for
   the IPv6 Next Header field.

3.4.  IPv6 Source and Destination Addresses

3.4.1.  IPv6 Unicast Addresses

   [RFC2928] defines a set of IPv6 addresses for testing and
   experimental usage:

      The block of Sub-TLA IDs assigned to the IANA (i.e., 2001:
      0000::/29 - 2001:01F8::/29) is for assignment for testing and
      experimental usage to support activities such as the 6bone, and
      for new approaches like exchanges.




Fenner                  Expires October 26, 2006                [Page 3]


Internet-Draft             Experimental Values                April 2006


   However, at this writing, there are no RFC3692-style experimental
   IPv6 addresses assigned.  [I-D.huston-ipv6-iana-specials] creates an
   IANA registry which may in the future contain such assignments.  For
   certain experiments, Unique Local Addresses [RFC4193] may be useful.
   It is not appropriate to use addresses in the documentation prefix
   [RFC3849] for experimentation.

3.4.2.  IPv6 Multicast Addresses

   The group FF0X::114 is set aside for experimentation at all scope
   levels.  Smaller scopes may be particularly useful for
   experimentation, since they are defined not to leak out of a given
   defined boundary which can be set to be the boundary of the
   experiment.  For certain experiments, other multicast addresses with
   the T (non-permanently-assigned or "transient" address) bit [RFC4291]
   set may be useful.

3.5.  IPv6 Hop-by-Hop and Destination Option Fields

   This document assigns a single option type, with all possible values
   of the "act" and "chg" fields, resulting in eight distinct option
   type codes.  See Section 8 for the assigned values.

3.6.  IPv6 Neighbor Discovery Fields

   The IPv6 Neighbor Discovery header [RFC2461] contains the following
   fields that carry values assigned from IANA-managed name spaces:
   Type, Code and Option Type.

3.6.1.  IPv6 Neighbor Discovery Type

   The Neighbor Discovery Type field is the same as the ICMPv6 Type
   field.  See Section 5 for those code points.

3.6.2.  IPv6 Neighbor Discovery Code

   The ICMPv6 Code field is not used in IPv6 Neighbor Discovery, so no
   experimental code points are necessary.

3.6.3.  IPv6 Neighbor Discovery Option Type

   This document assigns two IPv6 Neighbor Discovery Option Types, TBD1
   and TBD2.

3.7.  IPv6 Routing Header Routing Type

   This document assignes two values for the Routing Type field in the
   IPv6 Routing Header, TBDY and TBDZ.



Fenner                  Expires October 26, 2006                [Page 4]


Internet-Draft             Experimental Values                April 2006


4.  Fields in the IPv4 ICMP header

   This document assigns two ICMPv4 type numbers, TBD3 and TBD4.  ICMPv4
   code values are allocated per-type, so it's not feasible to assign
   experimental values in this document.


5.  Fields in the IPv6 ICMP header

   [I-D.ietf-ipngwg-icmp-v3] includes experimental ICMPv6 type values
   for Informational (200, 201) and Error (100, 101) message types.
   ICMPv6 code values are allocated per-type, so it's not feasible to
   assign experimental values in this document.


6.  Fields in the UDP header

   Two system ports, TBD5 and TBD6, have been reserved for
   experimentation for UDP and TCP.  While [RFC3692] says that it may
   not be necessary to allocate values for UDP and TCP ports, having
   explicitly reserved ports for this purpose avoids any possible
   conflict.


7.  Fields in the TCP header

7.1.  TCP Source and Destination Port fields

   Two system ports, TBD5 and TBD6, have been reserved for
   experimentation for UDP and TCP.

7.2.  Reserved Bits in TCP Header

   There are not enough reserved bits to allocate any for
   experimentation.

7.3.  TCP Option Kind field

   Two TCP options, TBD7 and TBD8, have been reserved for
   experimentation with TCP Options.


8.  IANA Considerations

   The new assignments are summarized below.






Fenner                  Expires October 26, 2006                [Page 5]


Internet-Draft             Experimental Values                April 2006


   IPv4 Multicast Addresses (multicast-addresses (224.0.0/24) Local
   Network Control Block section) (Section 2.4.2)

   Group Address Name
   ------------- ----------------------------
   224.0.0.TBD   RFC3692-style Experiment (*)

   IPv4 Multicast Addresses (multicast-addresses relative addresses
   section) (Section 2.4.2)

   Relative Description
   -------- ----------------------------
   TBD      RFC3692-style Experiment (*)

   IPv4 Option Numbers (ipv4-parameters initial section) (Section 2.5)

   Copy Class Number Value
   ---- ----- ------ -------
   0    0     ?      ??_30_
   0    2     ?      ??_94_
   1    0     ?      ??_158_
   1    2     ?      ??_222_

   [all '?' are the same, suggest ? = 11110; '??' calculated from other
   values]

   IPv6 Option Types (ipv6-parameters section 5.b.)  (Section 3.5)

   HEX          act chg rest
   ------------ --- --- -----
   0x??_[0x1e]_ 00  0   ?????
   0x??_[0x3e]_ 00  1   ?????
   0x??_[0x5e]_ 01  0   ?????
   0x??_[0x7e]_ 01  1   ?????
   0x??_[0x9e]_ 10  0   ?????
   0x??_[0xbe]_ 10  1   ?????
   0x??_[0xde]_ 11  0   ?????
   0x??_[0xfe]_ 11  1   ?????

   [suggest ????? = 11110]











Fenner                  Expires October 26, 2006                [Page 6]


Internet-Draft             Experimental Values                April 2006


   Could be represented in registry as:
   b                   BINARY
       HEX         act  chg  rest
       ---         ---  ---  -----
   ...
      1E,3E,5E,7E,  [x = don't care]
      9E,BE,DE,FE   xx    x  ?????  RFC3692-style Experiment (*) [ref-to-this-doc]

   IPv6 Neighbor Discovery Option Formats (icmpv6-parameters)
   (Section 3.6.3)

   Type Description
   ---- ------------------------------
   TBD1 RFC3692-style Experiment 1 (*)
   TBD2 RFC3692-style Experiment 2 (*)

     IPv6 Routing Header Routing Types (ipv6-parameters section 5.c.)
                               (Section 3.7)

                 +------+--------------------------------+
                 | Type | Description                    |
                 +------+--------------------------------+
                 | TBDY | RFC3692-style Experiment 1 (*) |
                 | TBDZ | RFC3692-style Experiment 2 (*) |
                 +------+--------------------------------+

   ICMPv4 Type Numbers (icmp-parameters) (Section 4)

   Type Name
   ---- ------------------------------
   TBD3 RFC3692-style Experiment 1 (*)
   TBD4 RFC3692-style Experiment 2 (*)

   System Port Numbers (port-numbers) (Sections 6 and 7.1)

   Keyword Decimal  Description
   ------- -------- ------------------------------
   exp1    TBD5/udp RFC3692-style Experiment 1 (*)
   exp1    TBD5/tcp RFC3692-style Experiment 1 (*)
   exp2    TBD6/udp RFC3692-style Experiment 2 (*)
   exp2    TBD6/tcp RFC3692-style Experiment 2 (*)










Fenner                  Expires October 26, 2006                [Page 7]


Internet-Draft             Experimental Values                April 2006


   TCP Option Numbers (tcp-parameters) ( Section 7.3)

   Kind Length Meaning
   ---- ------ ------------------------------
   TBD7 N      RFC3692-style Experiment 1 (*)
   TBD8 N      RFC3692-style Experiment 2 (*)

   Each of these registrations should be accompanied by the following
   footnote:

   *  It is only appropriate to use these values in explicitly-
      configured experiments; they MUST NOT be shipped as defaults in
      implementations.  See RFC 3692 for details.


9.  Security Considerations

   Security analyzers such as firewalls and network intrusion detection
   monitors often rely on unambiguous interpretations of the fields
   described in this memo.  As new values for the fields are assigned,
   existing security analyzers that do not understand the new values may
   fail, resulting in either loss of connectivity if the analyzer
   declines to forward the unrecognized traffic, or loss of security if
   it does forward the traffic and the new values are used as part of an
   attack.  Assigning known values for experiments can allow such
   analyzers to take a known action for explicitly experimental traffic.

   Because the experimental IPv4 options defined in Section 2.5 are not
   included in the IPsec AH [RFC4302] calculations, it is not possible
   for one to authenticate their use.  Experimenters ought to keep this
   in mind when designing their experiments.  Users of the experimental
   IPv6 options defined in Section 3.5 can choose whether or not the
   option is included in the AH calculations by choosing the value of
   the "chg" field.

   When experimental code points are deployed within an administratively
   self-contained network domain, the network administrators should
   ensure that each code point is used consistently to avoid
   interference between experiments.  When experimental code points are
   used in traffic that crosses multiple adminstrative domains, the
   experimenters should assume that there is a risk of the same code
   points being used simultaneously by other experiments and thus that
   there is a possibility that the experiments will interfere.
   Particular attention should be given to security threats that such
   interference might create.


10.  References



Fenner                  Expires October 26, 2006                [Page 8]


Internet-Draft             Experimental Values                April 2006


10.1.  Normative References

   [I-D.ietf-ipngwg-icmp-v3]
              Conta, A., "Internet Control Message Protocol (ICMPv6) for
              the Internet Protocol Version 6 (IPv6) Specification",
              draft-ietf-ipngwg-icmp-v3-07 (work in progress), I-D
              Status iesg, IETF Datatracker State RFC Ed Queue, Intended
              Status Draft Standard, Responsible AD Margaret Wasserman,
              RFC-Editor Queue State RFC-EDITOR, July 2005.

   [RFC0791]  Postel, J., "Internet Protocol", RFC 791, STD 5, Updated
              by RFC1349, Current Status STANDARD, September 1981.

   [RFC1918]  Rekhter, Y., Moskowitz, B., Karrenberg, D., J. de Groot,
              G., and E. Lear, "Address Allocation for Private
              Internets", RFC 1918, BCP 5, Current Status BEST CURRENT
              PRACTICE, February 1996.

   [RFC2365]  Meyer, D., "Administratively Scoped IP Multicast",
              RFC 2365, BCP 23, Current Status BEST CURRENT PRACTICE,
              July 1998.

   [RFC2460]  Deering, S. and R. Hinden, "Internet Protocol, Version 6
              (IPv6) Specification", RFC 2460, Current Status DRAFT
              STANDARD, December 1998.

   [RFC2461]  Narten, T., Nordmark, E., and W. Simpson, "Neighbor
              Discovery for IP Version 6 (IPv6)", RFC 2461, Updated
              by RFC4311, Current Status DRAFT STANDARD, December 1998.

   [RFC2474]  Nichols, K., Blake, S., Baker, F., and D. Black,
              "Definition of the Differentiated Services Field (DS
              Field) in the IPv4 and IPv6 Headers", RFC 2474, Updated
              by RFC3168, Updated by RFC3260, Current Status PROPOSED
              STANDARD, December 1998.

   [RFC2780]  Bradner, S. and V. Paxson, "IANA Allocation Guidelines For
              Values In the Internet Protocol and Related Headers",
              RFC 2780, BCP 37, Was Internet-Draft
              draft-bradner-iana-allocation-05, Current Status BEST
              CURRENT PRACTICE, March 2000.

   [RFC2928]  Hinden, R., Deering, S., Fink, R., and T. Hain, "Initial
              IPv6 Sub-TLA ID Assignments", RFC 2928, Was Internet-
              Draft  draft-ietf-ipngwg-iana-tla-03, Current
              Status INFORMATIONAL, September 2000.

   [RFC3168]  Ramakrishnan, K., Floyd, S., and D. Black, "The Addition



Fenner                  Expires October 26, 2006                [Page 9]


Internet-Draft             Experimental Values                April 2006


              of Explicit Congestion Notification (ECN) to IP",
              RFC 3168, Was Internet-Draft  draft-ietf-tsvwg-ecn-04,
              Current Status PROPOSED STANDARD, September 2001.

   [RFC3330]  "Special-Use IPv4 Addresses", RFC 3330, Was Internet-
              Draft  draft-iana-special-ipv4-05, Current
              Status INFORMATIONAL, September 2002.

   [RFC3692]  Narten, T., "Assigning Experimental and Testing Numbers
              Considered Useful", RFC 3692, BCP 82, Was Internet-Draft
              draft-narten-iana-experimental-allocations-05, Current
              Status BEST CURRENT PRACTICE, January 2004.

   [RFC3849]  Huston, G., Lord, A., and P. Smith, "IPv6 Address Prefix
              Reserved for Documentation", RFC 3849, Was Internet-Draft
              draft-huston-ipv6-documentation-prefix-03, Current
              Status INFORMATIONAL, July 2004.

   [RFC4193]  Hinden, R. and B. Haberman, "Unique Local IPv6 Unicast
              Addresses", RFC 4193, Was Internet-Draft
              draft-ietf-ipv6-unique-local-addr-09, Current
              Status PROPOSED STANDARD, October 2005.

   [RFC4291]  Hinden, R. and S. Deering, "IP Version 6 Addressing
              Architecture", RFC 4291, Was Internet-Draft
              draft-ietf-ipv6-addr-arch-v4-04, Current Status DRAFT
              STANDARD, February 2006.

   [RFC4302]  Kent, S., "IP Authentication Header", RFC 4302, Was
              Internet-Draft  draft-ietf-ipsec-rfc2402bis-10, Current
              Status PROPOSED STANDARD, December 2005.

10.2.  References

   [I-D.huston-ipv6-iana-specials]
              Huston, G., "Administration of the IANA Special Purpose
              Address Block", draft-huston-ipv6-iana-specials-01 (work
              in progress), I-D Status iesg, IETF Datatracker State AD
              Evaluation, Intended Status Informational, Responsible
              AD David Kessens, December 2005.


Appendix A.  Change History

   (To be removed before publication)






Fenner                  Expires October 26, 2006               [Page 10]


Internet-Draft             Experimental Values                April 2006


A.1.  Changes from -01

   o  Added refs to 3849 and 3330 for things not to use in unicast
      addresses.

   o  Updated ULA ref to be 4193.

   o  Changed multiple "TBD1+TBD2" to TBD1 thru TBD8

   o  Added IPv6 multicast addresses with T bit.

   o  Added footnote to be included in all IANA registrations.

   o  Added link-local and scope-relative v4 multicast addresses

A.2.  Changes from -02

   o  Added IPsec AH discussion in security considerations

   o  Added mention of the IPv6 special use unicast address block.

   o  Added IPv6 Routing Header TBDY and TBDZ

   o  Point out that even though RFC3692 gives UDP/TCP ports as an
      example where reserving values isn't necessary, we do anyway since
      it allows avoiding conflicts.

























Fenner                  Expires October 26, 2006               [Page 11]


Internet-Draft             Experimental Values                April 2006


Author's Address

   Bill Fenner
   AT&T Labs - Research
   75 Willow Rd
   Menlo Park, CA  94025
   USA

   Phone: +1 650 330-7893
   Email: fenner@research.att.com









































Fenner                  Expires October 26, 2006               [Page 12]


Internet-Draft             Experimental Values                April 2006


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 (2006).  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.


Acknowledgment

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




Fenner                  Expires October 26, 2006               [Page 13]