Discussion
Sniffnoy: (2017)
rnhmjoj: Previous discussions:https://news.ycombinator.com/item?id=14986324 (2017)https://news.ycombinator.com/item?id=20167686 (2019)https://news.ycombinator.com/item?id=25568766 (2020)https://news.ycombinator.com/item?id=37116487 (2023)
p4bl0: Thanks for sharing this very interesting read.There's one point I don't really get and I would be glad if someone could clarify it for me. When the author says that even over wifi, the CSMDA/CD protocol is not used anymore. Then how does it actually work?Discussing this, the author explains:> If you have two wifi stations connected to the same access point, they don't talk to each other directly, even when they can hear each other just fine.So, each station still has to decide at some point if what its hearing is for them or not, as it could be another station talking to the AP, or the AP talking to another station. How is that done if not using CSMA/CD (or something very similar at least)?
NooneAtAll3: > Internet routing can't handle mobility - at all.so all the fairy tales about IP invented for nuclear war was a lie? the moment military started moving around, IP became useless?
PunchyHamster: the mobility in context of article means "changing IP within same TCP connection".IP + some dynamic routing handles the situation of "the connection site got nuked and we need to route around it", it's just not in the protocol, it's additional layer on top of it
PunchyHamster: > Now imagine that X changes addresses to Q. It still sends out packets tagged with (uuid,80), to IP address Y, but now those packets come from address Q. On machine Y, it receives the packet and matches it to the socket associated with (uuid), notes that the packets for that socket are now coming from address Q, and updates its cache. Its return packets can now be sent, tagged as (uuid), back to Q instead of X. Everything works! (Modulo some care to prevent connection hijacking by impostors.2)And how the fuck anything in-between knows where to route it ? The article glows a blazing beacon of ignorance about everything in-between.The whole entire problem with mobile IP is "how we get intermediate devices to know where to go?" we're back to> The problem with ethernet addresses is they're assigned sequentially at the factory, so they can't be hierarchical.Which author hinted at then forgot. We can't have globally routable, unique, random-esque ID precisely because it has to be hierarchical. Keeping connection flow ID at L4 instead of L3+L4 changes very little, yeah, you can technically roam the client except how the fuck server would know where to send the packet back when L3 address changes ? It would have to get client packet with updated L3 address and until then all packets would go to void.But hey, at least it's some progress ? NOPE, nothing at protocol layer can be trusted before authentication, it would make DoS attacks far easier (just flood the host in a bunch of random uuids), and you would still end up doing it QUIC way of just re-implementing all of that stuff after encryption of the insides
znkr: Moving running computers around and maintaining connection would have required large trucks and very long cables at the time the internet was invented.
globular-toast: This is one of my favourite blog posts ever. For those unaware (or who didn't read right to the bottom), the author is the CEO of Tailscale.One of the problems we have is when we're born we don't question anything. It just is the way it is. This, of course, lets us do things in the world much more quickly than if we had to learn everything from basic principles, but it's a disadvantage too. It means we get stuck in these local optima and can't get out. Each successive generation only finally learns enough to change anything fundamental once they're already too old and set in their ways doing the standard thing.How I wish we could have a new generation of network engineers who just say "fuck this shit" and build their own internet.