DHCP server selection internet draft
Glenn Stump <stump@raleigh.ibm.com> Thu, 28 November 1996 21:49 UTC
Received: from cnri by ietf.org id aa09658; 28 Nov 96 16:49 EST
Received: from marge.bucknell.edu by CNRI.Reston.VA.US id aa15354; 28 Nov 96 16:49 EST
Received: from reef.bucknell.edu by mail.bucknell.edu; (5.65v3.2/1.1.8.2/17Jul96-0109PM) id AA14749; Thu, 28 Nov 1996 16:38:29 -0500
Date: Thu, 28 Nov 1996 16:38:29 -0500
Message-Id: <01BBDD49.1DC19E80@glennlaptop.raleigh.ibm.com>
Errors-To: droms@bucknell.edu
Reply-To: dhcp-v4@bucknell.edu
Originator: dhcp-v4@bucknell.edu
Sender: dhcp-v4@bucknell.edu
Precedence: bulk
From: Glenn Stump <stump@raleigh.ibm.com>
To: Multiple recipients of list <dhcp-v4@bucknell.edu>
Subject: DHCP server selection internet draft
X-Listprocessor-Version: 6.0c -- ListProcessor by Anastasios Kotsikonas
X-Comment: Discussion of DHCP for IPv4
Mime-Version: 1.0
Hi all, Below is a (significant) portion of a short draft which I plan to introduce in SanJose. I missed the internet-draft cut-off date, but Ralph has kindly agreed to place the entire draft on the Bucknell anonymous ftp site early next week for the downloading. Please check it out when you get a chance and we'll discuss more here as well as in SanJose in a few weeks. Regards, Glenn --------------------------------------------------------------------------------------- Network Working Group Glenn Stump, IBM INTERNET DRAFT Pratik Gupta, IBM November 1996 Expires May 1996 The Server Selection Option for DHCP <draft-ietf-dhc-sso-00.txt> Status of this Memo This document is an Internet-Draft. 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.'' To learn the current status of any Internet-Draft, please check the ``1id-abstracts.txt'' listing contained in the Internet-Drafts Shadow Directories on ftp.is.co.za (Africa), nic.nordu.net (Europe), munnari.oz.au (Pacific Rim), ds.internic.net (US East Coast), or ftp.isi.edu (US West Coast). 1.0 Abstract This option is provided by DHCP servers to DHCP clients so that clients may optionally select from among multiple offers received from DHCP servers in the network offer from a DHCP. The information contained in this option is an hex value that represents an integer value indicating the priority of the offer in which this option is contained. 2.0 Definitions Throughout this document, the words that are used to define the significance of particular requirements are capitalized. These words are: o "MUST" This word or the adjective "REQUIRED" means that the item is an absolute requirement of this specification. Stump, Gupta [Page 1] DRAFT DHCP Server Selection Option November 1996 o "MUST NOT" This phrase means that the item is an absolute prohibition of this specification. o "SHOULD" This word or the adjective "RECOMMENDED" means that there may exist valid reasons in particular circumstances to ignore this item, but the full implications should be understood and the case carefully weighed before choosing a different course. o "SHOULD NOT" This phrase means that there may exist valid reasons in particular circumstances when the listed behavior is acceptable or even useful, but the full implications should be understood and the case carefully weighed before implementing any behavior described with this label. o "MAY" This word or the adjective "OPTIONAL" means that this item is truly optional. One vendor may choose to include the item because a particular marketplace requires it or because it enhances the product, for example; another vendor may omit the same item. This document also uses the following terms: o "DHCP client" A DHCP client or "client" is an Internet host using DHCP to obtain configuration parameters such as a network address. o "DHCP server" A DHCP server of "server"is an Internet host that returns configuration parameters to DHCP clients. o "binding" A binding is a collection of configuration parameters, including at least an IP address, associated with or "bound to" a DHCP client. Bindings are managed by DHCP servers. Stump, Gupta [Page 2] DRAFT DHCP Server Selection Option November 1996 3.0 The DHCP Server Selection Option DHCP provides a powerful mechanism for automating and centralizing the administration of IP host configuration and has become a critical service in many large IP networks. Because of its importance in networks and because it can create a single point of failure for network operations (from a DHCP client's perspective), many network administrators choose to deploy many DHCP in order to enhance availability and/or performance of DHCP services. However, for networks with multiple DHCP servers, the DHCP protocol does not provide a means by which a DHCP client may select from among the DHCP server offers according to policy determined by the network administrator. The protocol [see RFC1541 or current internet draft] currently states that: "DHCP clients are free to use any strategy in selecting a DHCP server among those from which the client receives a DHCPOFFER message." Thus, currently, client "policy" , of which there is essentially no standardization, determines which offer is selected. What's worse is that, in practice, most vendor's implementation of policy here is very basic (e.g., first offer received) and is "hard- coded" (i.e., non- configurable). A mechanism which enables a server-based policy for determining how clients select among DHCP offers would allow a network administrator to control the manner in which addresses are allocated across the multiple DHCP servers. This type of control takes on increased importance considering that IP address spaces cannot generally be shared across DHCP servers, thus requiring network administrators to divide the available addresses among many DHCP servers. This document specifies an option that can be configured by network administrators in DHCP servers and which can influence how DHCP clients select an offer from among those servers. 3.1 Motivation In general, the motivation for inventing the DHCP Server Selection option originates from shortcomings identified in networks where multiple DHCP servers are used enhance DHCP serving performance, availability, or both. Specifically, these problems are: 1. Server Segregation 2. Server Aggregation 3. Server Introduction and Deprecation 4. DNS IP Address Mapping Stability Stump, Gupta [Page 3] DRAFT DHCP Server Selection Option November 1996 There may well be others which are important - or will be important given new capabilities in the future - and not listed above. The DHCP Server Selection mechanism defined herein must be flexible enough to accommodate future requirements. 3.1.1 Server Segregation: Differentiating Servers Based on Varying Priorities Multiple DHCP servers can also be segregated to differentiate the importance or roles of some DHCP server or servers vs. others. The simplest and most common example here is where one DHCP server is intended as a "primary" or "preferred" server for a subnet while some other server is intended as a "secondary" or "backup" server capacity in the case the primary fails. Typically, the preferred server(s) will have the most number of available addresses and the backups have some lesser number, which are only intended for use when the preferred server(s) fail or their addresses are depleted. Again, all servers are assumed to provide an equivalent set of options to a requesting client. Segregated DHCP server deployments present two fundamental problems for today's DHCP implementations: 1. There is no standard means for a client to differentiate which of many equivalent offers to accept. Assuming that most client implementations will accept the first of many equivalent offers received, a "backup" server's address pool will be depleted each time its offers are served first to a client. This may happen frequently, for example, during times of peak loads on the preferred servers. 2. Once an address lease from an "alternate" DHCP server is selected (for any reason), that address will likely be re-selected on sub- sequent client reboot/init-reboots. A mechanism which enables DHCP clients to select an offer based on an administrative preference by encouraging clients to always select a preferred DHCP server (or order of servers) over others who respond in the network. *** MAILING LIST DISCUSSION *** NOTE: Such a mechanism could also help in preventing DHCP service disruption due to the accidental introduction of rogue DHCP servers. That is, if all clients would be configured to choose offers with the DHCP Server Selection when present, and all DHCP Server Vendors would disable the option by default, then a DHCP offer from a rogue DHCP server accidentally started by a novice would essentially be ignored. Is this worth mentioning as a motivation? Stump, Gupta [Page 4] DRAFT DHCP Server Selection Option November 1996 3.1.2 Server Aggregation: Grouping Servers of Equal Priority Multiple DHCP servers, typically two, which have essentially equivalent configuration characteristics - typically in terms of the options served and the number of addresses available -- be aggregated to enhance the responsiveness and availability of DHCP services to a particular subnet. However, in the event that one of the DHCP servers responds more quickly than others the number of addresses available at one server (e.g., a "fast" server) may be disproportionately low. Thus, failure of another server in the aggregated set (e.g., the other, "slower" server) will cause a disproportionately high risk in availability of DHCP services (e.g., when a slow server, with more available addresses, fails or is removed from operation temporarily). A mechanism which enables DHCP clients to select an offer based on server- administrated preference could allow clients to choose leases from among servers in a way which could maintain a prescribed balance of address availability across servers (by maintaining a balance in the relative address depletion rates). 3.1.3 DHCP Server Introduction or Deprecation Currently, the process of changing the number of DHCP servers in a network cannot generally be done gradually or gracefully because, currently, there is no standard means of allowing servers to share IP address spaces. A mechanism which enables DHCP clients to select an offer based on an administrative preference could help in this process by identifying particular DHCP servers to (or from) which clients should "migrate" (rather than continuing to use an existing server). 3.1.4 DNS Address Mapping Stability Regardless of whether multiple DHCP servers are aggregated, segregated, or a combination or both, a "mobile" DHCP client which... 1. moves frequently across many networks or subnetworks, and/or. 2. does not keep track of which leases are active beyond their current lease. connections and reconnections. This is due to the fact that, the client would not necessarily choose a lease based on an active or previous lease association since it is not instructed to do so and/or is no aware that one exists. In network environments where either dynamic DNS updates are not employed or where there is a desire to minimize the number of updates to DNS mappings, a mechanism to identify a lease representing a previous address association can be used to, in effect, reduce the Stump, Gupta [Page 5] DRAFT DHCP Server Selection Option November 1996 number of changes in a DNS host-name-to-address mapping (i.e., A-RR). 3.2 DHCP Server Selection Option Format The code for this option is TBD, and its length is 4 bytes. Code Len Priority +-------+-------+---------+---------+ | TBD | 2 | p | +-------+-------+---------+---------+ where: "p" is the priority value chosen for the server (x'0000'- x'FFFF', inclusive). *** MAILING LIST DISCUSSION *** Should/can we use only len=1, or 8 bits? It is envisioned that this field can be used in many ways to accomplish various system behavior across servers. However, the values within this field must be administered consistently across all DHCP servers in "the system" (i.e., those serving a particular subnet) and across DHCP server vendors (so that the same basic capabilities are administered) in order to achieve the desired behaviors. To that end, the policies for acceptable uses of the priority field will be directed through the specification of DHCP Server Selection option "profiles", which will be maintained - at least for now -- as appendices to this document. Each profile will list how the priority field value is derived, what DHCP serving behaviors are possible, and how these behaviors are achieved. 4.0 DHCP Client Behavior A client supporting the DHCP Server Selection option MUST use the DHCP Server Selection option as the primary discriminator for selecting among multiple offers from servers. The highest priority value gets first preference. If two DHCP Server Selection priority values are equivalent, then the DHCP client can use other mechanisms as described in RFC1541 to choose among the offers. *** MAILING LIST DISCUSSION *** Should the client be required to use the DHCP Server Selection offer if present? In general, how should this option relate to other decision factors (implicit or explicit). 5.0 DHCP Server Behavior When a DHCP server supports the DHCP Server Selection option, the server MUST select a value for the field according to the policy set Stump, Gupta [Page 6] DRAFT DHCP Server Selection Option November 1996 forth by a selected DHCP Server Selection Option "profile". The set of standardized DHCP Server Selection profiles will be maintained by the IETF DHC Working Group. The current list of profiles under consideration is maintained in the appendices of this document. It is intended that all of the DHCP servers serving a particular subnet or set of hosts MUST support the same profile in order to achieve the associated/desired DHCP service behavior for that subnet or set of hosts. 6.0 Security Considerations There are currently no security mechanisms defined for the DHCP protocol. 7.0 References [RFC1533] S. Alexander, R. Droms, "DHCP Options and BOOTP Vendor Extensions" [RFC1541] R. Droms, "Dynamic Host Configuration Protocol" 8.0 Acknowledgments The authors would like to thank the following people for their review and helpful comments in the formulation of this paper: 9.0 Author Information Pratik Gupta IBM, Inc. 4205 S.Miami Blvd Research Triangle Park, NC 27709 Phone: (919)254-5616 email: pratik_gupta@vnet.ibm.com Glenn Stump IBM, Inc. 4205 S.Miami Blvd Research Triangle Park, NC 27709 Phone: (919)254-5616 email: glennstump@vnet.ibm.com Appendix A: Profile 0 [Rank (only)] The DHCP Server Selection option specifies a mechanism for an administrator to determine the policy governing how a client chooses Stump, Gupta [Page 7] DRAFT DHCP Server Selection Option November 1996 among multiple DHCP offers. In this profile, Profile 0, the selection criteria used to govern DHCPOFFER selection policy is a simple, relative "ranking" value. That is, a client will select the offer from the server with the highest designated priority. A.1 DHCP Server Selection Option Format The code for this option is TBD, and its length is 4 bytes. Code Len Priority +-------+-------+---------+----------+ | TBD | 2 | r | reserved | +-------+-------+---------+----------+ where: r = rank, or relative priority, of server (higher order 8 bits) reserved = reserved for future use; must be x'00' The priority field is actually a concatenation of the "rank", "address availability, and "flags" field. The "flags" field, represented in the lower order byte, can be used to instruct the client to give preference to offers from servers which have a currently active or recently expired lease association. The priority field, represented in the high order byte, can be used to instruct the client to accept a lease from a server according to some other criteria (see "DHCP Server Behavior" below). A.2 DHCP Server Behavior When a server supports the "rank" field, the value can be statically pre-configured or dynamically calculated and set to any integer between x'00' and x'FF', inclusive. The values can be coordinated across DHCP servers to achieve the desired priority system behavior. A.3 Application Notes The DHCP Server Selection option allows the DHCP/network administrator to control DHCP services characteristics by influencing the way addresses are allocated across a set of DHCP servers. The administrator may wish to configure all of the servers to have equal serving priority or to configure some to have a greater priority than others. Further, not only can the network administrator prescribe an address allocation scheme across DHCP servers, but the option can also be used to enable the servers to return to the prescribed state in the event that a server failure resulted in an imbalance. The following outlines how the DHCP Server Selection option can be used in each of these situations to achieve the desired service behavior. Note that these scenarios presume that there are no DHCP Stump, Gupta [Page 8] DRAFT DHCP Server Selection Option November 1996 server-to-server coordination mechanisms which could be used to synchronize the server's databases and effectively share address spaces. A.3.1 Server Segregation DHCP servers which are assigned different rank values, "r", are viewed by DHCP clients as having varying priorities. That is, the DHCP servers are segregated according to a distinct priority system (set by the DHCP system administrator). Clients will choose an offer received from the server with the highest assigned rank value, "r". Once a client can differentiate priorities among DHCP servers, the DHCP administrator can manipulate the priorities across DHCP servers to affect the DHCP serving system behavior, such as: - primary-and-backup - graceful addition or deletion of DHCP servers A.3.2 Server Aggregation DHCP servers which are assigned the same rank value, "r", are viewed by DHCP clients as equal. That is, the servers are an aggregated set of equivalent servers, and offers from equivalent servers can be selected using some other criteria (e.g., first offer received). Appendix B: Profile 1 ...
- DHCP server selection internet draft Glenn Stump
- Re: DHCP server selection internet draft Michael J. Lewis