Dynamic MAC Address Protocol (DMAP)
The Dynamic MAC Address Protocol (DMAP) that is described in this page
is intended to allow network interface card (NIC) entities (e.g. Ethernet
MAC controllers) to dynamically obtain a MAC address at startup, rather
than requiring the manufacturer to assign each hardware device an address
during the manufacturing processs. The primary purpose of this protocol
is to simplify the manufacturing process. A side effect is a conservation
of MAC addresses.
Theory Of Operation
A small block of MAC addresses is globally reserved by a manufacturer.
This group of addresses are the ones which are allocated to devices during
the allocation process performed by the DMAP protocol. One of the design
trade-offs of this protocol is that the maximum number of devices on the
LAN from any given manufacturer that use DMAP to obtain a MAC address is
limited to the number of MAC addresses in the reserved block. If the block
contains 256 MAC addresses, then it is only possible for 256 devices manufactured
by XYZ to be active at any given time.
A client begins operation by choosing one of the manufacturer reserved
MAC addresses and sending a conflict detection request to the LAN.
If a station with the address exists on the LAN it responds by broadcasting
a response indicating that it is using the MAC address. The client then
chooses the next MAC address from the reserved group and then repeats the
process until it receives no response after trying several times. Once
and address is obtained using this protocol, the client begins using the
MAC address as its own and activates its DMAC response server. The DMAC
response server is responsible for periodically broadcasting its ownership
of the MAC address periodically. All DMAC response servers maintain a list
of active MAC addresses and each will responde to conflict detection requests
until the entry expires. If the DMAC server receives a periodic keep alive
from another DMAC server that matches its own MAC address, it must begin
arbitrating for a new MAC address using the proceedure described above.
This can happen if an interface is disconnected from the LAN for an interval
of time, and during the interval another station arbitrates and obtains
the sam MAC address. This possibility can be further reduced by having
arbitration clients choose initial MAC addresses randomly.
RFC1060 : Assigned Numbers ; March 1990
Ethernet Protocol Type Allocation
Xerox Systems Institure
475 Oakmead Parkway
Sunnyvale, CA 94086
Atn: Ms. Fonda Pallone (408) 737-4652
Ethernet Address Allocation
IEEE Standards Office
345 East 47th Street
New York, N.Y. 10017
Attn: Vince Condello (212) 705-7092