Network Working Group                                            S. Zeng
Request for Comments: 4994                                       B. Volz
Category: Standards Track                                     K. Kinnear
                                                     Cisco Systems, Inc.
                                                           J. Brzozowski
                                                           Comcast Cable
                                                          September 2007


                 DHCPv6 Relay Agent Echo Request Option

Status of This Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Abstract

   This memo defines a Relay Agent Echo Request option for the Dynamic
   Host Configuration Protocol for IPv6 (DHCPv6).  The option allows a
   DHCPv6 relay agent to request a list of relay agent options that the
   server echoes back to the relay agent.

Table of Contents

   1. Introduction ....................................................2
   2. Requirements Terminology ........................................2
   3. The Relay Agent Echo Request Option .............................2
   4. DHCPv6 Relay Agent Behavior .....................................3
   5. DHCPv6 Server Behavior ..........................................3
   6. Security Considerations .........................................4
   7. IANA Considerations .............................................4
   8. Acknowledgements ................................................4
   9. References ......................................................4
      9.1. Normative References .......................................4
      9.2. Informative References .....................................4












Zeng, et al.                Standards Track                     [Page 1]


RFC 4994                    Relay Agent ERO               September 2007


1.  Introduction

   DHCPv6 [2] provides a framework for configuring IPv6 clients with
   addresses and other network parameters.  It includes a relay agent
   capability.  A relay agent is an intermediary node that delivers DHCP
   messages between clients and servers.  The relay agent and the server
   exchange information using options in relay agent messages.  The
   relay agent may add relay agent options to the client DHCP message
   before forwarding it.

   The information that relay agents supply can be used in the server's
   decision making about the addresses, delegated prefixes, and
   configuration parameters that the client is to receive.  Likewise,
   the relay may need some of the information to efficiently return
   replies to clients.

   In DHCPv4, the server generally echoes the relay agent option back
   verbatim to the relay agent in server-to-client replies [3].
   However, DHCPv6 [2] does not require the server to do so.  This could
   be problematic, as the relay agent may need to use some relay options
   even if the server does not recognize them.

   This memo defines a relay agent echo request option that the relay
   agent uses to explicitly request a list of options that the server
   echoes back to the relay agent.

2.  Requirements 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].

3.  The Relay Agent Echo Request Option

   The relay agent adds options in the Relay Forward message that the
   server uses to guide its decision making with regard to address
   assignment, prefix delegation, and configuration parameters.  The
   relay agent also knows which of these options that it will need to
   efficiently return replies to the client.  It uses the relay agent
   Echo Request option to inform the server of the list of relay agent
   options that the server must echo back.










Zeng, et al.                Standards Track                     [Page 2]


RFC 4994                    Relay Agent ERO               September 2007


   The format of the DHCPv6 Relay Agent Echo Request option is shown
   below:

    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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |           OPTION_ERO          |           option-len          |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |    requested-option-code-1    |    requested-option-code-2    |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                              ...                              |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   option-code              OPTION_ERO (43).
   option-len               2 * number of requested options.
   requested-option-code-n  The option code for an option requested by
                            the relay agent.

4.  DHCPv6 Relay Agent Behavior

   A relay agent MAY include an Echo Request option in a Relay Forward
   message to inform the server about options the relay agent wants the
   server to echo back to the relay agent.  If the relay agent takes
   different actions based on whether an option is echoed back or not,
   then the relay agent SHOULD NOT include such an option in the Echo
   Request option.  Note that the relay uses the OPTION_ORO [2] to
   request the server to return options (e.g., [4]) other than relay
   agent options in the Relay Forward message.

5.  DHCPv6 Server Behavior

   When a server creates a Relay-Reply, it SHOULD perform ERO processing
   after processing the ORO and other options processing.  For each
   option in the ERO:

   a.  If the option is already in the Relay-Reply, the server MUST
       ignore that option and continue to process any remaining options
       in the ERO.

   b.  If the option was not in the received Relay-Forward, the server
       MUST ignore that option and continue to process any remaining
       options in the ERO.

   c.  Otherwise, the server MUST copy the option, verbatim, from the
       received Relay-Forward to the Relay-Reply, even if the server
       does not otherwise recognize that option.





Zeng, et al.                Standards Track                     [Page 3]


RFC 4994                    Relay Agent ERO               September 2007


6.  Security Considerations

   As the Echo Request option is only exchanged between relay agents and
   DHCPv6 servers, section 21.1 of [2] provides details on securing
   DHCPv6 messages sent between servers and relay agents.  And, section
   23 of [2] provides general DHCPv6 security considerations.

7.  IANA Considerations

   IANA has assigned a DHCPv6 option code for the OPTION_ERO (Relay
   Agent Echo Request) Option (43).

8.  Acknowledgements

   Thanks to Ralph Droms, Josh Littlefield, Richard Johnson, and Hemant
   Singh for their consistent input, ideas, and review during the
   production of this document.

9.  References

9.1.  Normative References

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

   [2]  Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C., and M.
        Carney, "Dynamic Host Configuration Protocol for IPv6 (DHCPv6)",
        RFC 3315, July 2003.

   [3]  Patrick, M., "DHCP Relay Agent Information Option", RFC 3046,
        January 2001.

9.2.  Informative References

   [4]  Droms, R., Volz, B., and O. Troan, "DHCPv6 Relay Agent
        Assignment Notification (RAAN) Option", Work in Progress,
        November 2006.














Zeng, et al.                Standards Track                     [Page 4]


RFC 4994                    Relay Agent ERO               September 2007


Authors' Addresses

   Shengyou Zeng
   Cisco Systems, Inc.
   1414 Massachusetts Ave.
   Boxborough, MA  01719
   USA

   Phone: +1 978 936 0000
   EMail: szeng@cisco.com


   Bernard Volz
   Cisco Systems, Inc.
   1414 Massachusetts Ave.
   Boxborough, MA  01719
   USA

   Phone: +1 978 936 0000
   EMail: volz@cisco.com


   Kim Kinnear
   Cisco Systems, Inc.
   1414 Massachusetts Ave.
   Boxborough, MA  01719
   USA

   Phone: +1 978 936 0000
   EMail: kkinnear@cisco.com


   John Jason Brzozowski
   Comcast Cable
   1800 Bishops Gate Boulevard
   Mt. Laurel, NJ  08054
   USA

   Phone: +1 856 324 2671
   EMail: john_brzozowski@cable.comcast.com











Zeng, et al.                Standards Track                     [Page 5]


RFC 4994                    Relay Agent ERO               September 2007


Full Copyright Statement

   Copyright (C) The IETF Trust (2007).

   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.

   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, THE IETF TRUST 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.

Intellectual Property

   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.












Zeng, et al.                Standards Track                     [Page 6]