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