:::: MENU ::::

Wake on LAN

Wake on LAN은 네트워크 패킷(매직 패킷)으로 컴퓨터를 켜거나, 깨우는 기능을 하는 AMD와 HP에서 만든 표준이다.

요즘 PC들은 전원을 꺼도 이더넷 잭에 연결된 LED가 깜박이는 것을 볼 수 있는데, 즉 LAN은 패킷을 받을 수 있는 모드에 있다. 

AMD의 White paper

cfile26.uf.1225CD3F5022E8BF13F2F0.pdf

매직 패킷의 구성

매직 패킷은 2가 있는데, ether-wakeUDP상에서 구현하는 패킷이 있다. 대부분의 PC 프로그램이 보내는 패킷은 후자이다.

아래 내용은 ether-wake패킷의 구성이다. 출처) http://wiki.wireshark.org/WakeOnLAN

이 사이트에서 관련 패킷 샘플도 다운로드 가능하다.

Synchronization Stream

Target MAC

Password (optional)

6

96

0, 4 or 6

-. Synchronization Stream : FF FF FF FF FF FF

-. Target MAC: 깨울 상대의 맥 어드레스

-. Password: 옵션

즉 옵션이 없고 맥 어드레스가 01:02:03:04:05:06 이면 패킷의 형태는 다음과 같다.

FFFFFFFFFFFF010203040506010203040506010203040506010203040506 010203040506010203040506010203040506010203040506010203040506 010203040506010203040506010203040506010203040506010203040506 010203040506010203040506



아래 첨부 파일은 매직 패킷을 Wireshark로 캡쳐한 것이다.[출처: Wireshark.org]

Ether-wake와 UDP 패킷 2가지가 나와있다.

cfile26.uf.125CBA4350259BC91C8AB5.pcap


매직 패킷을 보낼 수 있는 프로그램

Fusion WOL

http://fusionfenix.com/product/wol-1-0

찾아보면 이것말고 꽤 있다.

W5200의 WOL 기능

-. Wake On LAN과 Power down mode와는 아무 관련이 없다. 그리고 power down mode를 enable하면 패킷을 못 받는다.

-. 즉 WOL은 MCU가 sleep하고 있고, W5200은 동작하고 있는 상태에서 WOL기능을 이용해서 매직 패킷을 받으면 인터랍트가 떠서 MCU 깨울때 사용하면 다.

-. 단 주의 사항은 W5200은 ether-wake 패킷만 지원을 한다. 

   따라서 PC에서 raw Ethernet Packet을 보낼 수 있는 프로그램이 필요하다.

참고

http://en.wikipedia.org/wiki/Wake-on-LAN

http://wiki.wireshark.org/WakeOnLAN

http://support.amd.com/us/Embedded_TechDocs/20213.pdf


So, what do you think ?