Slide 1
1
CMPT 471
Networking II
DHCP Failover and multiple servers
© Janice Regan, 2006-2013
© Janice Regan, 2006-2013
2
Server responsibilities
To provide dynamic IP address allocation a DHCP server needs to
Maintain a database of IP addresses
Know the dynamic state of each IP address in the database
When multiple servers share responsibility for the same pool of IP addresses they must maintain synchronization of the information in this database. This is necessary to prevent multiple allocations of the same IP address by different servers
© Janice Regan, 2006-2013
3
Failover Protocol
Governs communications between two or more DHCP servers serving the same network
Provides a mechanism for one DHCP server to act as a primary server, and another as a backup server
The primary provides all DHCP service unless the contact between the primary and secondary fails then the secondary provides service
Provides a mechanism for load balancing between servers
Communications occur through a TCP connection between the DHCP servers
© Janice Regan, 2006-2013
4
Failure modes: multiple servers
One server may fail due to a hardware or software problem
The network segment containing one server mail fail
The network between the two servers or between two network segments may fail
THE DHCP SERVER CANNOT DISTINGUISH BETWEEN THESE TYPES OF FAILURE
When contact fails each server functions as if the other servers might still be running
The system must be stable if the server the cannot be contacted is still running, and if it is not running
© Janice Regan, 2006-2013
5
Bases of database synchronization
Each server tries to keep the others up to date
BUT
It is not required that the database be completely up to date for DHCP to function correctly
An address can be served before one peer informs the other it has been served
SO updates are called “Lazy updates”
© Janice Regan, 2006-2013
6
Communications
Any failover peer can initiate connections to other peers (so connections can be initiated as soon as a new peer starts, regardless of which order primary and secondary start).
Primary DHCP server sends Connect message as soon as the connection is established. When the secondary’s ack is received the connection is established
When a lease is granted a message is sent to all failover peers, when it is acked the sender knows the peers know about the new lease
During periods of inactivity Contact messages are sent.
Principles of address allocation
All DCHP servers must follow the same principles so that multiple servers do not allocate the same address to different machines
The available addresses for each network segment are divided into free addresses (for allocation by the primary server) and backup addresses (for allocation by the secondary server)
An address that has been assigned to one client cannot be assigned to another unless all severs have agreed that the original client is no longer using it
A lease for a particular address can be extended only for a limited time beyond the time known by other servers ( time is called the maximum client lease time or MCLT) (Usually < 1hr).
© Janice Regan, 2006-2013
7
© Janice Regan, 2006-2013
8
Address allocation: MCLT
The MCLT is the time a lease for a particular address can be extended, beyond the time known by other servers It is usually < 1hr
A lease can be repeatedly renewed extending its expiry time by the MCLT.
Repeatedly renewing the lease is not efficient
When a the renewal timer expires the client will request a renewal. The server will
Check the desired lease time against the MCLT and choose the shortest (probably the MCLT) and offer a least of shortest of the two times
The server will contact the other dhcp failover server/s
Address allocation: MCLT
All the servers will agree that the lease may be renewed, the expiry time of the agreed upon will be the lease time plus the MCLT from the original request time
At half the MCLT the lease given by the server before agreement will expire
The request for renewal will ask for a lease with the originally requested lease time
Since the expiry of the requested lease is at or before the agreed expiry time the DHCP server will give the lease
Agreement between the servers must be obtained for each lease renewal (it applies only the present renewal, not to future renewals)
© Janice Regan, 2006-2013
9
© Janice Regan, 2006-2013
10
Bases of database synchronization
Each server tries to keep the others up to date
BUT
It is not required that the database be completely up to date for DHCP to function correctly
SO updates are called “Lazy updates”
NOTE that a three way handshake for committing data to remote databases imposes an unacceptable delay, since the handshake must complete before the address is offered
/docProps/thumbnail.jpeg