Closed source OSes are such a bane.
It's actually not. As a user I'd expect the device to wake up and still have the same IP address via a continuation of the lease.
Yes, the correct way would be a longer lived DHCP lease, but el-cheapo ISP routers often lock down such settings.
Like you said though, it’s pre Apple silicon so who really knows! Maybe it decided to do some other stuff while it was awake?
What were you hoping to achieve by doing that?
If things are set to a really long time, >=12 hours, you find out the next day when everything is broken (or you get alerts in the middle of the night). If you set them to a randomized 15-90m span, you get things breaking immediately when you screw up the dhcp server.
I’m sure both Microsoft and Apple have entire teams with incredibly full backlogs dealing with power management. And I’m sure half their time is spent dealing with “messes” caused by other teams doing wild and crazy (but somehow theoretically useful) shit.
It’s clearly not an easy problem.
It's just been a couple of times, but I've definitely done it (e.g. bridged a couple of networks that shouldn't have been).
But mostly, it's the other two things: it provides me with a list of hosts active now, and if the DHCP server is subtly broken I get a sentinel signal of something being wrong earlier (and it tends to be a partial instead of complete failure).
One more bonus: if I move something to a static lease, out of the pool, it'll renumber in a reasonable time and I don't need to go kick link state to get it to request again.
Things like really big caches and really long lease times: They're good for average performance, and they can let you ride out small problems. The flip side is that they tend to mask problems and to create really big demand transients at times. The trick is always to find a good middle ground.
Bluetooth and WiFi radios on Macs are also semi-independent. They can keep connections alive while the system is in deep sleep.
Waking a big processor, frequency scaling it and turning it off is surprisingly complicated. We disabled SpeedStep in our clusters since frequency scaling visibly affected performance of the systems due to overhead incurred by frequency change. Same is true for waking / sleeping big silicon.
It's complicated, it's wasteful.
Some of the Intel's biggest improvements as their micro-architecture evolved were reduction of the frequency scaling overhead and its performance impact, but this never made the news back in the day because its effect was invisible in consumer class systems even in its most primitive form.
> Maybe it decided to do some other stuff while it was awake?
That's called Power Nap and is enabled only if your computer is connected to power, by default.
On the other hand, I don't consider my computer to wake up, take a backup, check system/app updates and my mails and handle those while I'm sleeping as a feature, not a bug.
now we essentially have sleep++ and no option to set it back to vanilla sleep.
When I put a machine into standby, I want it to go in a standby state, and then stay there until I explicitly wake it -- not keep doing whatever background tasks the OS developers, app developers, or whatever other third parties think they need to keep doing.
Most users don't know what IP addresses even are, let alone care what theirs is. I don't think Apple is (or should be) optimizing for you.
When on a pretty standard /24 network subnet, if there are more than a few dozen devices coming and going, the lease table can fill up until older lease reservations expire.
For most people these days the primary device is their phone, and so that is the model that modern laptops are trying to follow, as that is what most users will expect.
I can see a continuously renewed DHCP lease — with nothing else - useful for reducing the time to reconnected to your network, esp maybe on old/slow networks or routers.
You can Touch ID and get back in a second, and maybe for 5-10% of users, it was resulting in initial network connection slowdowns or errors with buggy online-only apps.
Find My (your device wants to maintain a connection if you have it enabled) is another reason. It must regularly connect (perhaps a long running socket), and I want to be able to remotely lock and wipe my device at any time possible, for example.
My 2014 Intel MacBook Pro has Power Nap and behaves the same when it comes to radios when compared to my M1. It's not new.
> it was resulting in initial network connection slowdowns or errors with buggy online-only apps.
Just because your radio is up, connected to the AP and keeping L2 active doesn't mean your processor/OS is keeping TCP connections up, or even talked to the hardware and updated itself. It's normal.
Find My doesn't keep a connection open 24/7. It pulls the commands the moment system wakes up. I have it enabled and check my devices sometimes, and it's not extraordinary to see "15 minutes ago" or "2 hours ago" for a laptop sitting on the table, not connected to power and its lid closed.
I thought this was a solved issue. How are all OSs suddenly so bad at this? I only really trust on and off anymore.
Extremes of any sort generally aren't good. You fucked around and you found that out.
I haven't had any notable issues with values in the 600-1200 second range, actually. (My macs don't wakeup to keepalive network on battery, though).