←back to thread

354 points timdoug | 8 comments | | HN request time: 0.606s | source | bottom
1. pinko ◴[] No.2755626[source]
This is a great example of Apple's detail-oriented focus on real-world user experience, and helps explain why people prefer Macs even if they can't always explain why. Lots of little things just work better. You (where "you" == myself and many others, even if not /you/ personally) are left overall with an experience of less frustration.
replies(2): >>2755752 #>>2756053 #
2. tonfa ◴[] No.2755752[source]
Well, in that case they might not be following the protocol. And in some cases break the connectivity for others...
replies(1): >>2757464 #
3. kcbanner ◴[] No.2756053[source]
Is this case the Mac user may get a better UX, but the user who's IP was just stolen has a worse one.
replies(1): >>2756789 #
4. Locke1689 ◴[] No.2756789[source]
I'd like to see evidence that this happens enough to matter. Any time you use a Bloom filter you recognize that doing great in most cases is much better than doing OK in every case.
replies(1): >>2757088 #
5. axiak ◴[] No.2757088{3}[source]
What does a bloom filter have to do with this? Generally when someone uses a probabilistic data structure, they ensure its used in a manner that becomes consistent (e.g., as a caching layer). If by not following the dhcp spec, macs are breaking other peoples' connectivity, there's no recovery save them disabling/reenabling the network for them manually.
replies(1): >>2757204 #
6. Locke1689 ◴[] No.2757204{4}[source]
First, they don't break the DHCP spec -- everything they do is completely within spec. Second, ARP resolution doesn't require any manual resolution. Third, show me that the OS X ARP system is breaking other peoples' connectivity.

The Bloom filter was an analogy. Optimize for the common case, not the rare case.

7. rektide ◴[] No.2757464[source]
DHCP (rfc2131) doesn't really talk about IP exhaustion.

It's undefined behavior, and there's a bunch of people in here saying that server's have every right to violate DHCP leases, otherwise someone can take over a network by continually claiming all of a Class C by continually making DHCP requests.

That argument makes sense, but it goes very strongly against the grain of what I would think a DHCP lease meant, whcih is that it's a contract for a specific amount of time. If it is indeed a contract for a specific amount of time, the client has every right to claim what they're contractually obliged to. This was my initial assumption, and I believe it's Apple's rather valid assumption.

It's not a case of Apple not following the protocol. It's a case of the real world being more complex than the protocol.

replies(1): >>2757644 #
8. hristov ◴[] No.2757644{3}[source]
Look at parts 3.1, 3.2, 4.4 and Fig. 5 of the DHCP protocol. They describe what a client must do on initialization. For example, section 3.2 describes what a client should do if they have a previously assigned addressed they would like to keep using. It seems to me the behavior here is very precisely defined.

Maybe a networking expert can correct me but it seems to me that those initial ARP requests before the DHCP request are not exactly in accordance with the protocol.