faqs.org - Internet FAQ Archives

RFC 4390 - Dynamic Host Configuration Protocol (DHCP) over Infin


Or Display the document by number




Network Working Group                                      Vivek Kashyap
Request for Comments: 4390                                           IBM
Category: Standards Track                                     April 2006

       Dynamic Host Configuration Protocol (DHCP) over InfiniBand

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.

Copyright Notice

   Copyright (C) The Internet Society (2006).

Abstract

   IP over Infiniband (IPoIB) link-layer address is 20 octets long.
   This is larger than the 16 octets reserved for the hardware address
   in a Dynamic Host Configuration Protocol/Bootstrap Protocol
   (DHCP/BOOTP) message.  The above inequality imposes restrictions on
   the use of the DHCP message fields when used over an IPoIB network.
   This document describes the use of DHCP message fields when
   implementing DHCP over IPoIB.

Table of Contents

   1. Introduction ....................................................2
   2. The DHCP over IPoIB Mechanism ...................................2
      2.1. IPoIB-specific Usage of DHCP Message Fields ................3
      2.2. Use of the BROADCAST flag ..................................3
   3. Security Considerations .........................................3
   4. Acknowledgement .................................................4
   5. References ......................................................4
      5.1. Normative References .......................................4
      5.2. Informative References .....................................4

1.  Introduction

   The Dynamic Host Configuration Protocol (DHCP) provides a framework
   for passing configuration information to hosts on an IP network
   [RFC2131].  DHCP is based on the Bootstrap Protocol (BOOTP) [RFC951]
   adding the capability of automatic allocation of reusable network
   addresses and additional configuration options [RFC2131,RFC2132].

   The DHCP server receives a broadcast request from a client.  The DHCP
   server uses the client interface's hardware address to unicast a
   reply when the client does not yet have an IP address assigned to it.
   The "chaddr" field in the DHCP message carries the client's hardware
   address.

   The "chaddr" field is 16 octets in length.  The IPoIB link-layer
   address is 20 octets in length [RFC4391].  Therefore, the IPoIB
   link-layer address will not fit in the "chaddr" field making it
   impossible for the DHCP server to unicast a reply to the client.

   To ensure interoperability, the usage of the fields and the method
   for DHCP interaction must be clarified.  This document describes the
   IPoIB-specific usage of some fields of DHCP.  See [RFC2131] for the
   mechanism of DHCP and the explanations of each field.

   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 [RFC2119].

2.  The DHCP over IPoIB Mechanism

   As described above, the link-layer address is unavailable to the DHCP
   server because the link-layer address is larger than the "chaddr"
   field length.  As a result, the server cannot unicast its reply to
   the client.  Therefore, a DHCP client MUST request that the server
   send a broadcast reply by setting the BROADCAST flag when IPoIB
   Address Resolution Protocol (ARP) is not possible, i.e., in
   situations where the client does not know its IP address.

   [RFC1542] discourages the use of a broadcast reply.  But in the case
   of IPoIB, this is a necessity because the server does not receive the
   link-layer address.  To desynchronise broadcasts at subnet startup,
   [RFC2131] suggests that a client wait a random time (1 to 10 seconds)
   before initiating server discovery.  The same timeout will spread out
   the DHCP server broadcast responses generated due to the use of the
   BROADCAST bit.

   The client hardware address, "chaddr", is unique in the subnet and
   hence can be used to identify a client interface.  But in the absence
   of a unique "chaddr", another unique client identifier must be used.

   The DHCP protocol states that the "client identifier" option may be
   used as the unique identifying value for the client [RFC2132].  This
   value must be unique within the client's subnet.

   The "client identifier" option includes a type and identifier pair.
   The identifier included in the "client identifier" option may consist
   of a hardware address or any other unique value such as the DNS name
   of the client.  When a hardware address is used, the type field
   should be one of the ARP hardware types listed in [ARPPARAM].

2.1.  IPoIB-specific Usage of DHCP Message Fields

   A DHCP client, when working over an IPoIB interface, MUST follow the
   following rules:

    "htype" (hardware address type) MUST be 32 [ARPPARAM].

    "hlen" (hardware address length) MUST be 0.

    "chaddr" (client hardware address) field MUST be zeroed.

    "client-identifier" option MUST be used in DHCP messages.

   The "client identifier" used in DHCP messages MUST conform to
   [RFC4361].

2.2.  Use of the BROADCAST flag

   A DHCP client on IPoIB MUST set the BROADCAST flag in DHCPDISCOVER
   and DHCPREQUEST messages (and set "ciaddr" to zero) to ensure that
   the server (or the relay agent) broadcasts its reply to the client.

   Note: As described in [RFC2131], "ciaddr" MUST be filled in with the
         client's IP address during BOUND, RENEWING or REBINDING states;
         therefore, the BROADCAST flag MUST NOT be set.  In these cases,
         the DHCP server unicasts DHCPACK message to the address in
         "ciaddr".  The link address will be resolved by ARP.

3.  Security Considerations

   [RFC2131] describes the security considerations relevant to DHCP.
   This document does not introduce any new issues.

4.  Acknowledgement

   This document borrows extensively from [RFC2855].  Roy Larsen pointed
   out the length discrepancy between the IPoIB link address and DHCP's
   "chaddr" field.

5.  References

5.1.  Normative References

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

   [RFC2131]       Droms, R., "Dynamic Host Configuration Protocol", RFC
                   2131, March 1997.

   [RFC2132]       Alexander, S. and R. Droms, "DHCP Options and BOOTP
                   Vendor Extensions", RFC 2132, March 1997.

   [RFC951]        Housley, R., Horting, T., and P. Yee, "TELNET
                   Authentication Using KEA and SKIPJACK", RFC 2951,
                   September 2000.

   [RFC4391]       Chu, J. and V. Kashyap "Transmission of IP over
                   InfiniBand (IPoIB)", RFC 4391, April 2006.

   [ARPPARAM]      http://www.iana.org/numbers.html

   [RFC4361]       Lemon, T. and B. Sommerfeld, "Node-specific Client
                   Identifiers for Dynamic Host Configuration Protocol
                   Version Four (DHCPv4)", RFC 4361, February 2006.

5.2.  Informative References

   [RFC2855]       Fujisawa, K., "DHCP for IEEE 1394", RFC 2855, June
                   2000.

   [RFC1542]       Wimer, W., "Clarifications and Extensions for the
                   Bootstrap Protocol", RFC 1542, October 1993.

Author's Address

   Vivek Kashyap
   15350, SW Koll Parkway
   Beaverton, OR 97006
   USA

   Phone: +1 503 578 3422
   EMail: vivk@us.ibm.com

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

   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.

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.

Acknowledgement

   Funding for the RFC Editor function is provided by the IETF
   Administrative Support Activity (IASA).

 

User Contributions:

Comment about this RFC, ask questions, or add new information about this topic: