Introduction to Wake-On-LAN

"Wake On LAN" is the name for a technical development jointly created by IBM and Intel. The technology allows "enabled" devices to be powered on remotely via a special type of network communication. A WOL-enabled device must have special hardware, at minimum a special network interface and power circuitry that allows the network interface to signal the device to turn itself on. If this sounds odd, you should be aware that most new motherboards with built-in network interfaces are being built with this technology. If you work in Information Technology in just about any capacity, you will probably run into this sooner rather than later. A WOL-enabled device, when powered off, will still draw a tiny amount of electricity to drive the network interface. The interface remains in a passive, listening mode, sending nothing out on the network. To wake up the device, a specially formed packet is sent to the network port where the device is plugged in. This special packet, called a magic packet, carries a special "signature." When the network interface sees this signature, it recognizes this as a wakeup call.

Why Not Send To The Target's IP Address? The short answer is that a device doesn't have an IP address until it's turned on. The IP address is configured in software as part of a protocol stack - which means that when powered off, that IP address doesn't really exist. This can lead to some interesting routing problems. If you are sending the magic packet from a machine on the same subnet as the target device (i.e., you don't have to pass through a router to get from point A to point B), your machine will first attempt to learn the MAC address of the device using something called ARP - Addres Resolution Protocol. You'll basically be sending out a packet asking for the MAC address of the device with the IP address in question. Since the device is powered off an can't answer, your machine will simply refuse to send the packet. If you are on a different network segment, there is a little more hope (but not much). Your packet will make it all the way to the router servicing the target machine's segment before it dies. That router will have the same problem your own computer would have if you were on the same segment - it will try to ARP for the MAC address of the machine, and failing to receive an answer will drop the packet. You CAN force the router to deliver it - by placing a static route on the router FORCING the router to dump the packet out the appropriate interface - but static routes are something we try to avoid in big networks, especially static routes to individual hosts. They make the router's configuration a lot more complicated, and that's a "Bad Thing."

Magic Packet Technology

The Magic Packet technology is used to remotely wake up a sleeping or powered off PC on a network. This is accomplished by sending a specific packet of information, called a Magic Packet frame, to a node on the network. When a PC capable of receiving the specific frame goes to sleep, it will enable the Magic Packet mode in the LAN controller, and when the LAN controller receives a Magic Packet frame, it will alert the system to wake up. The patented Magic Packet technology is implemented entirely in the LAN controller. This architecture allows the PC to go into a very low power mode, even as far as to remove the power from the entire system, except for the LAN chip.

Magic Packet Technology Details

Once the LAN controller has been put into the Magic Packet mode, it scans all incoming frames addressed to the node for a specific data sequence, which indicates to the controller that this is a Magic Packet frame. A Magic Packet frame must also meet the basic requirements for the LAN technology chosen, such as SOURCE ADDRESS, DESTINATION ADDRESS (which may be the receiving station's IEEE address or a MULTICAST address which includes the BROADCAST address), and CRC. The specific sequence consists of 16 duplications of the IEEE address of this node, with no breaks or interruptions. This sequence can be located anywhere within the packet, but must be preceded by a synchronization stream. The synchronization stream allows the scanning state machine to be much simpler. The synchronization stream is defined as 6 bytes of FFh. The device will also accept a BROADCAST frame, as long as the 16 duplications of the IEEE address match the address of the machine to be awakened. If the IEEE address for a particular node on the network was 11h 22h 33h 44h 55h 66h, then the LAN controller would be scanning for the data sequence (assuming an Ethernet Frame):

DESTINATION SOURCE MISC. FF FF FF FF FF FF 11 22 33 44 55 66 11 22 33 44 55 66 11 22 33 44 55 66 11 22 33 44 55 66 11 22 33 44 55 66 11 22 33 44 55 66 11 22 33 44 55 
66 11 22 33 44 55 66 11 22 33 44 55 66 11 22 33 44 55 66 11 22 33 44 55 66 11 22 33 44 55 66 11 22 33 44 55 66 11 22 33 44 55 66 11 22 33 44 55 66 11 22 33 44 55 66 
MISC. CRC.

There are no other restrictions on a Magic Packet frame. For instance, the sequence could be in a TCP/IP packet, an IPX packet, etc. The frame may be bridged or routed across the network, without affecting its ability to wake up a node at the destination of the frame.

If the LAN controller scans a frame and does not find the specific sequence shown above, it discards the frame and takes no further action. If the controller detects the data sequence, however, then it alerts the PC's power management circuitry to wake up the system.

Magic Packet Today

Hewlett-Packard, IBM, Gateway 2000 and other leading manufacturers implement AMD's Magic Packet technology. Magic Packet allows IS managers to increase their efficiency by remotely accessing any PC on the network -- on, powered down, or powered off. Magic Packet technology is currently offered on AMD's PCnet-ISA II, PCnet-PCI II, PCnet-FAST, PCnet-FAST+ and PCnet-FAST III, and is a standard feature that will be integrated into future AMD PCnet controllers.

With Magic Packet Technology, AMD set the standard and built the foundation for today's advanced power management technologies for networked PCs, including the OnNow power management industry intitiative. The OnNow design initiative is a comprehensive, system-wide approach to system and device power control. In fact, AMD co-authored the OnNow power management reference specification for networking devices, furthering our leadership position in this industry initiative.

AMD licenses the Magic Packet technology to device manufacturers. If you are interested in getting licensing information, please contact Rahul Deshmukh at (408) 749-5448 or email at rahul.deshmukh@amd.com.