Remix.run Logo
How do Wake-On-LAN works(blog.xaner.dev)
48 points by swq115 4 days ago | 16 comments
ryandrake 2 hours ago | parent | next [-]

[2020] and wow, what a title. It looks like someone was trying to decide between "How Wake-On-LAN works" and "How does Wake-On-LAN work" and "How do Wake-On-LANs work" and just picked a random combination of words from those choices.

Aurornis 2 hours ago | parent | next [-]

English is not the author's primary language.

I think they did a great job for writing in a secondary language.

yyhhsj0521 an hour ago | parent | prev | next [-]

They did a much better job than a JavaScript developer writing Java.

wat10000 an hour ago | parent | prev [-]

This sort of thing is quite common for non-native speakers. The fact that you can say "how does X work" and "how X works" but not "how does X works" is not particularly obvious, and easy to mix up.

ysleepy an hour ago | parent | prev | next [-]

I was kinda hoping to get the nitty gritty of how the NIC does the packet matching, how, it wakes up the system via PCIe and how switches route the frames to the port which has/had the client.

Nothing against the article though, but maybe someone knows a good writeup.

jonah-archive an hour ago | parent | next [-]

The original paper proposing the technology is actually very good (and surprisingly still online!): https://www.amd.com/content/dam/amd/en/documents/archived-te...

Animats an hour ago | parent | next [-]

That's more useful. A big question is how much is really turned off in a computer waiting for the wake-up packet. "The power to the Ethernet controller must be maintained at all times, allowing the Ethernet controller to scan all incoming packets for the Magic Packet frame". So the full network controller is still alive. There's not some tiny Magic Packet detector hardware running off a rechargable coin cell or something, with the main power supply turned off. At least not in the original design.

A lot of sleep modes leave more running than you'd expect.

adrian_b 12 minutes ago | parent [-]

The Ethernet cards that wait for WoL packets use the "+5 V Standby" supply voltage, which is available on the PCIe slots, coming from the ATX power supplies.

"+5 V Standby" is provided by a separate voltage regulator, which continues to work even when the PC, including the rest of the ATX PSU, is shut down.

"+5 V Standby" typically can provide up to 2 A, i.e. up to 10 watt, though some old PSUs may be able to deliver only up to 5 watt and some of the bigger ATX PSUs may be able to deliver up to 15 watt.

Besides supplying the Ethernet cards, to enable WoL, "+5 V Standby" can be used by the USB ports if configured so in BIOS, to enable waking the PC with the keyboard, or to enable charging from USB even when the PC is shut down.

elevation 28 minutes ago | parent | prev | next [-]

I was distracted by the poor typesetting in parts of the page. The meaning of the text is overwhelmed by the distracting spacing used to justify the text:

> . I n o t h e r w o r d s , s i l i c o n - o r g a t e - l evel

MrBuddyCasino 13 minutes ago | parent | prev [-]

Didn‘t know a whitepaper is allowed to be this readable.

Terr_ 40 minutes ago | parent | prev [-]

Ditto, I clicked and was disappointed.

"How to send a magic packet in $LANG" isn't very interesting to me. There are plenty of guides for it, and I remember actually doing it 20+ years ago with a short PHP script.

Even at the time, the task didn't seem like "enough" for a show-the-world blog post. A dramatically shortened version (no validation, error handling, logging, etc.) for your amusement:

    // Given $macAddress and $addr and $port
    $macAddress = str_replace(":","",$macAddress);
    $macAddress = str_replace("-","",$macAddress);

    $header = pack('H12','FFFFFFFFFFFF');
    $payload = pack("H12",$macAddress);
    $packet = $header . str_repeat($payload,16);

    $sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);
    socket_set_option($sock, 1, 6, TRUE);
    socket_sendto($sock, $payload, strlen($payload), 0, $addr, $port);
    socket_close($sock);
chungy 2 hours ago | parent | prev | next [-]

Somehow, the bad grammar gives something special by signifying an LLM didn't write it.

Then again, an LLM could probably help clean up the grammar.

michaelbuckbee an hour ago | parent | next [-]

This is one of those slippery slope things where Grammarly did "just" Grammar and then slowly got into tone and perception and brand voice suggestions and now seems to more or less just want to shave everything down to be as bland as possible.

jayd16 2 hours ago | parent | prev [-]

I'm sure we'll start to get 'authentic' bad grammar LLMs that actually mussy up your grammar for that natural feeling.

dyauspitr an hour ago | parent [-]

You can do that now. Just ask it to use bad grammar and introduce spelling mistakes and it does.

havblue 2 hours ago | parent | prev [-]

Maybe you should run it through ai to correct the grammar before reading it...