News for hackers. Stuff that matters.
Re:Protocol Wars by samwillis on Thursday May 11, 2023 @03:44AM (#35899065)
TCP/IP is so entrenched in everything, literally, it will still be in use when we leave this planet and it gets swallowed up by the sun. The news will report the destruction of Earth and explain that it and its inhabitants longest lasting legacy is TCP/IP, then report that the transition to IPv6 is going well and everyone will be on it soon...
Re:Protocol Wars by vmfunction on Thursday May 11, 2023 @04:16AM (#35899316)
The fact that it takes so long to transition to IPv6 and like many other obstruction to technological/social progress are economic and business gain for a certain small group of people and organisations.
Re:Protocol Wars by samwillis on Thursday May 11, 2023 @04:33AM (#35899422)
I propose the Willis law (are you aloud to name a law after yourself?):

The spread and reach of TCP/IP will accelerate at a pace faster than that of the transition to IPv6 indefinitely, therefore we are saddled with IPv4 until the end of time.

Re:Protocol Wars by klabb3 on Thursday May 11, 2023 @05:23AM (#35899762)
In fact, we know that IPv4 lives in the observable universe. You can travel at the speed of light towards IPv6, but the expansion rate of space time-itself (you can think of space-time as a series of tubes) is not limited by the speed of light. Thus, IPv6 is only theorized to exist, in order to explain other physical phenomena. Worse, even if it was proven to exist by a distant observer, there no way for them to relay that information back to us because our routers here at earth would drop the packets.
Re:Protocol Wars by nine_k on Thursday May 11, 2023 @04:27AM (#35899393)
It's just plain cost. Reworking things takes engineering time, an engineers need to be paid.

If I were to list impediments to the technical development of the Internet, local telco monopolies would be much higher in the list, but it's another kettle of fish.

Re:Protocol Wars by TheLoafOfBread on Thursday May 11, 2023 @04:59AM (#35899591)
People wanted to change bitfield with version from 4 to 6 and increase amount of bytes in IP address filed. Simple KISS.

Instead of that we got fragile, backward incompatible, unnecessarily complex, jack of all trades protocol. And people are surprised that even after decades since the release of IPv6, it is being avoided like a plague.

Re:Protocol Wars by p1mrx on Thursday May 11, 2023 @12:46PM (#35904778)
Consider that NAT64 is able to translate between IPv4 and IPv6 at the packet level. If the protocols were as different as you suggest, this wouldn't be possible.
Re:Protocol Wars by michaelt on Thursday May 11, 2023 @05:13PM (#35908473)
Doesn't IPv6 remove broadcast, thus removing DHCP and ARP?

I mean, hosts need to be 'dual stack' to support IPv4 and IPv6 together - whereas TheLoafOfBread's proposal would allow support of both with one backward-compatible stack.

Re:Protocol Wars by p1mrx on Thursday May 11, 2023 @06:32PM (#35909240)
DHCP and ARP use 32-bit addresses, so those protocols had to change regardless.

I would challenge you to find someone who knows the difference between Ethernet broadcast and multicast without looking up the answer. They are very similar mechanisms.

Re:Protocol Wars by yencabulator on Friday May 12, 2023 @11:37AM (#35917718)
NAT64 is never in a position to need to translate DHCP & ARP, those live fully on one side of NAT64 ("4" side for DHCP & ARP, "6" side for SLAAC/DHCPv6 & NDP).

NAT64 is involved on the level of TCP & UDP, not lower level protocols.

Re:Protocol Wars by doublepg23 on Thursday May 11, 2023 @02:23PM (#35906172)
This comes up often. What do you think would happen if you sent a “IPv4+” packet? All the ossified equipment would drop it. So you have to replace all this equipment, ideally _once_ so we ought to make it count.
Re:Protocol Wars by zekica on Thursday May 11, 2023 @05:54AM (#35899967)
The main issue with IPv6 adoption is people who didn't learn IPv4 before NAT, and want to use the hammer (IPv4 NAT) for everything.
Re:Protocol Wars by pif on Thursday May 11, 2023 @06:10AM (#35900098)
A hammer working fine today, that you own, is better than a machine tool tomorrow, that you'll have to pay.
Re:Protocol Wars by fknorangesite on Thursday May 11, 2023 @11:34AM (#35903673)
I wish we had an idiom for this. Maybe something bird-related.
Re:Protocol Wars by talideon on Thursday May 11, 2023 @06:06AM (#35900071)
Also, developers who don't know how to get their daemons to listen on multiple interfaces at once.
Re:Protocol Wars by cesarb on Thursday May 11, 2023 @09:02AM (#35901429)
That's not necessary; listening on the wildcard IPv6 address without the "IPv6 only" flag enabled on the socket is enough. A IPv4 connection arriving at it is mapped to a special IPv6 address, so the code doesn't have to care about IPv4.

Unless you were using Windows, where IIRC the IPv4 and IPv6 stacks were separate, and a single socket couldn't be used to listen to both at the same time. (This might already have been fixed in more recent Windows releases.)

Re:Protocol Wars by PeterisP on Thursday May 11, 2023 @06:46AM (#35900341)
I'd say that it's not that there's some gain causing people/organizations to be obstructive, but rather that IPv4 and its address shortage simply isn't a problem for the influential people and organizations, they're doing just fine and for them there is nothing that needs to be fixed; IPv6 is needed by "someone else" who can be safely ignored with no noticeable effect to the bottom line.
Re:Protocol Wars by pif on Thursday May 11, 2023 @09:06AM (#35901473)
IPv6 lacks back compatibility with the current standard. It cannot succeed.
Re:Protocol Wars by bauruine on Thursday May 11, 2023 @09:15AM (#35901567)
It doesn't there are millions of IPv6 only devices that can connect to IPv4 only sites. See US mobile carriers.
Re:Protocol Wars by greyface- on Thursday May 11, 2023 @05:04AM (#35899634)
TCP becomes unusable under interplanetary latencies; leaving the planet will force us to transition off of it.
Re:Protocol Wars by talideon on Thursday May 11, 2023 @06:04AM (#35900054)
Nah. The main impetus to achieve FTL communication will be because it'll be easier than shifting people off of TCP.
Re:Protocol Wars by aardvark179 on Thursday May 11, 2023 @08:39AM (#35901210)
It’s all fun and games until you get an ACK before you sent the SYN.
Re:Protocol Wars by pif on Thursday May 11, 2023 @08:58AM (#35901387)
That's a solved problem, just ask the thiotimoline research group.

https://en.wikipedia.org/wiki/Thiotimoline

Re:Protocol Wars by dredmorbius on Friday May 12, 2023 @06:30AM (#35914299)
Tardis Control Protocol.
Re:Protocol Wars by KptMarchewa on Thursday May 11, 2023 @06:05AM (#35900063)
I don't think volume of data average user will want to send to Mars over next 100 years will be a important factor enough. I envision Mars comms using some kind of relay service, to which you'd communicate using TCP
Re:Protocol Wars by api on Thursday May 11, 2023 @07:49AM (#35900829)
Earth-Mars will be a store and forward network not unlike the old UUCP or BBS networks like FidoNet. You will send blobs of data via something that probably looks like a replicated S3 bucket and get notified when replication of an object has occurred.

IP is usable to the Moon but a lot of protocols would need latency constants adjusted and very large packets would be desirable. Store and forward with custom replication protocols might still be more efficient for large volumes of data.

Re:Protocol Wars by arpa on Thursday May 11, 2023 @07:03AM (#35900473)
i'm not sure about that statement. See https://en.wikipedia.org/wiki/IP_over_Avian_Carriers
Re:Protocol Wars by chpatrick on Thursday May 11, 2023 @07:49AM (#35900831)
That's IP (and ICMP for ping), not TCP.
Re:Protocol Wars by arpa on Friday May 12, 2023 @03:23PM (#35921010)
Yep yep yep, Long Fat Pipe problems, right.
Re:Protocol Wars by pif on Thursday May 11, 2023 @09:00AM (#35901411)
More likely, we will end up with 15 competing standard.

https://xkcd.com/927/

Re:Protocol Wars by grishka on Thursday May 11, 2023 @03:35PM (#35907306)
That assumes that the speed of light is an insurmountable speed limit. We can't be 100% sure of that.

But even if it is, TCP can be used with any latency if you configure the timeouts accordingly and maintain a large enough send buffer to allow retransmissions.

Re:Protocol Wars by PinguTS on Thursday May 11, 2023 @05:59AM (#35900013)
Actually, even TCP is going to be replaced. I just want to remind the initial work of Google on QUIC, which now has become some standard. It is based on UDP and re-defining TCP features based on UDP together with cryptography and by allowing IP changes to allow moving clients.
Re:Protocol Wars by speed_spread on Thursday May 11, 2023 @07:41AM (#35900759)
TCP is fine and isn't going anywhere. QUIC is an overengineered contraption that only exists to serve more ads. SSH doesn't need it. Postgres doesn't need it. Nobody needs QUIC except Google.
Re:Protocol Wars by neysofu on Thursday May 11, 2023 @08:14AM (#35901039)
QUIC is not without defects, I'm with you there, but almost almost any "web-scale" company dealing with a lot of cellular connections would disagree with your statement. Uber, Verizon, Cloudflare, Meta, Fastly, among others, some of which have reported very significant latency reductions.
Re:Protocol Wars by yencabulator on Friday May 12, 2023 @11:35AM (#35917681)
> SSH doesn't need it.

SSH's "master" mode connection sharing would benefit from QUIC / HTTP/3 head of line blocking elimination just as much as browsers would. Run a heavy rsync using connection sharing with an interactive session and you'll notice the interactive sessions latency suffering noticably.

Long-lived SSH connections would benefit from QUIC / HTTP/3 session survivability.

Re:Protocol Wars by londons_explore on Thursday May 11, 2023 @08:09AM (#35900991)
And yet, even with QUIC and a brand new Google phone on a Google wifi network and a Google Fi cell connection, I still can't walk away from my house and have a video call migrate from wifi to 5G without the audio glitching and dropping frames.

All the mobility benefits of QUIC mean nothing when the rest of the software stack isn't designed to let it work.

Re:Protocol Wars by 867-5309 on Thursday May 11, 2023 @08:19AM (#35901068)
that's never going to be a seamless transition. the fact the transition happens automatically is a marvel in itself
Re:Protocol Wars by londons_explore on Thursday May 11, 2023 @08:44AM (#35901243)
It 100% could be. Changes you'd need are:

* Android lets an application talk over both wifi and 5G at the same time.

* Android exposes information about signal strength on a per packet basis, so that the application can decide at some point that too many packets are too close to not being received, so it's time to send data over 5G in addition. It should also expose data about packet retransmissions at the physical layer (ie. collisions and backoff times due to another device using the media).

* When the 5G data flow is established and channel parameters like delay and loss are characterized, then stop sending data over wifi.

* And since this process never involved delaying any data by a roundtrip, nor any packet loss, there is no need to drop any frames.

Note that the cell network has been able to handoff voice calls from one cell tower to another without glitches since the 80's!.

Re:Protocol Wars by crazygringo on Thursday May 11, 2023 @01:43PM (#35905575)
I think the factor you're missing is that the WiFi and 5G connections may have substantially different latencies to the other person. Going from a lower-latency to a higher-latency connection will always involve audio dropping out and video pausing. And in the opposite direction, it's preferable to skip over a few frames in order to reduce latency, rather than maintain higher latency.

I wonder if you don't see this with cell phones because the latency is generally identical, or if it's just less noticeable with audio than with video? I guess I'd also wonder if cell towers really do hand off without glitches, since there always seem to be glitches when you're driving, but you don't have the slightest idea whether they're from tall buildings or interference or Bluetooth or handoffs or what, or even on your end or the other person's end.

Re:Protocol Wars by londons_explore on Thursday May 11, 2023 @02:17PM (#35906083)
Video conferencing has latency in the 300ms - 1000ms range[1]. The actual network component of that is pretty small. And video conferencing software already has logic for time stretching/compression to handle variable latency - typically they'll speed up or slow down gaps between words and sentences.

[1]: https://www.mdpi.com/2076-3417/12/24/12884

Re:Protocol Wars by crazygringo on Thursday May 11, 2023 @03:56PM (#35907599)
Actually no -- things like FaceTime are more like 90 ms, while other common products like Zoom and Meet are around 150-200. These are minimums with somebody in your own city. This is actually from my own testing in the past, where FaceTime was the clear winner, since Apple cares a lot about latency and is custom written for its own hardware.

But networks absolutely can add major latency, have you never had a slow Zoom call? It's because of congestion building up and radio interference. That's what leads to things like 1,000 ms latency, which makes back and forth conversation very difficult. Perceptible latency issues are always because of the network.

And yes products do time stretching but that's also what people often call glitches because it's very weird.

Re:Protocol Wars by distcs on Thursday May 11, 2023 @08:59AM (#35901396)
> that's never going to be a seamless transition.

Why not? It is not obvious to me why a seamless transition is impossible?

Isn't the whole point of TCP that individual packets can take different paths over different networks and when they reach the destination they can be sequenced? Why should changing the network disrupt the individual packets from traveling independently?

Re:Protocol Wars by dave881 on Thursday May 11, 2023 @11:57AM (#35904052)
There are several things that make this difficult. Much of the difficulty relates to the device changing it's network address. Seamless transition requires that the application can:

- Find the new address; i.e. Cell provider vs. Residential/Business ISP - Associate the new address with the same flow - Duplicate packets and reassemble them, or change to "better" path interface.

Re:Protocol Wars by londons_explore on Thursday May 11, 2023 @02:19PM (#35906113)
On both android and iOS, a regular app can't choose to send packets over both 5G and wifi at the same time. Thats needed to setup a new connection while still using the old one.
Re:Protocol Wars by toast0 on Thursday May 11, 2023 @03:43PM (#35907411)
I was pretty sure that android and iOS both have apis for apps to choose between 'whatever is best', 'wifi preferred' and 'cellular preferred'?

I don't know the details, but some iOS network apis (Network Kit?) allow you to set a required interface type somehow. https://developer.apple.com/documentation/network/nwparamete...

Re:Protocol Wars by toast0 on Thursday May 11, 2023 @03:34PM (#35907286)
Never is a long time. QUIC isn't great for this, because while it has IP address flexibility, it's not designed to have multiple paths simultaneously active.

If you design for this use case, you can make it work today; especially since the user is on a video call and only asking for the audio to be glitchless. Sending audio over both wifi and cell is possible and simple and would solve audio at the expense of double the audio bandwidth. More bandwidth efficient methods are left to the reader.

Re:Protocol Wars by ajsnigrutin on Thursday May 11, 2023 @07:11AM (#35900541)
So.... which will come first, "the year of IPv6" or "the year of linux desktop"? :)
Re:Protocol Wars by api on Thursday May 11, 2023 @07:55AM (#35900879)
IPv6 is waiting on stubborn cloud networks and CDNs. Most of the edge now has it. My guess is that it’s mostly reluctance to introduce complexity when most customers are not asking for it. The biggest holdouts seem to be connected to Microsoft, with GitHub being one of the most relevant.

The Linux desktop will arrive if we just wait for Microsoft to keep making Windows worse. Linux doesn’t have to get better. MS just needs to incorporate more ads.

Re:Protocol Wars by jasode on Thursday May 11, 2023 @08:12AM (#35901025)
>IPv6 is waiting on stubborn cloud networks and CDNs. Most of the edge now has it.

Depends on the ISP. E.g. a lot of Verizon/Frontier FiOS residential customers don't have ipv6. Google statistics say USA is ~47% ipv6. Frontier FiOS is less % than that.

Example recent thread: https://old.reddit.com/r/frontierfios/comments/v9azjj/june_2...

Google's statistics: https://www.google.com/intl/en/ipv6/statistics.html#tab=per-...

Re:Protocol Wars by leansensei on Thursday May 11, 2023 @08:14AM (#35901038)
I know you are joking but I don't get the longevity of this joke. I've been running Debian with XFCE for more than 12 years, on PCs custom-built and branded, and on laptops both of enterprise quality and retail junk. Heck, our entire B2B commerce business runs the same setup, with far fewer (read: zero) issues compared to when we were using Windows 98, 98SE, XP SP3, 7, Vista, and 10, at which point we declined Microsoft's telemetry and ads and forced OneDrive shenanigans and promptly switched everyone to Debian+XFCE.

99.9% of the time, modern Linux works out of the box everytime.

So I'd say it's on par with Windows versions, except I practically never need to download install drivers, or to face ads.

Maybe I'm on a different planet on which the year of the Linux desktop has arrived for longer than a decade.

Re:Protocol Wars by fsflover on Thursday May 11, 2023 @02:19PM (#35906102)
This. I guess one of the main obstacles for the general Linux adoption is the lack of hardware with it preinstalled in the ordinary stores.
Re:Protocol Wars by umanwizard on Thursday May 11, 2023 @08:40AM (#35901224)
* * *
Re:Protocol Wars by MisterTea on Thursday May 11, 2023 @10:11AM (#35902369)
I think the real issue is the operating systems did not properly abstract away the APIs, protocols and networks. On plan 9 the dial string is my favorite part of networking because you optionally specify the network in addition to the address and port in the form of a string: net!address!service. To dial an ssh server on port 1234 you run "ssh user@tcp!server.net!1234". The network database (ndb) can then be setup to alias names with protocols or ports so you can omit parts of the dial string for known services e.g. ssh defaults to tcp and port 22. The dial string neatly wraps up the entire network connection into a single string alleviating the program from having to offer command line arguments for port numbers which leaks protocol details into the code making things ugly and difficult to change.

This lets your server take a dial string and listen on any network - even if that network isn't IP! So say you wanted to bring IPX/SPX back from the dead and use it in any program: so you write an IPX/SPX stack that binds over /net, then tell your server to listen on spx!*!555. Now your client also runs an IPX/SPX stack bound over /net and you hand the client program the dial string spx!server!555 and your program starts communicating over IPX/SPX to the server. Done. Want to use connect to an ssh server using quic on plan 9 (Assuming an imaginary quic stack)? just change the dial string to quic!host!port. Done.

Once you use an OS with clean and simple abstractions you are left craving more of it. I wish more people took an interest in building much more radical operating systems.