5 ms·
Maybe moving the connection protocol into userspace isn't such a great plan.
by jacob019 2y ago
Maybe moving the connection protocol into userspace isn't such a great plan.
- foota 2y agoI don't have access to the article, but they're saying the issue is due to client side ack processing. I suspect they're testing at bandwidths far beyond what's normal for consumer applications.
- dartharva 2y agoIt's available on arxiv and nope, they are testing mostly for regular 4G/5G speeds. https://arxiv.org/pdf/2310.09423 https://arxiv.org/pdf/2310.09423
- DannyBee 2y ago4g tops out at 1gbps only when one person is on the network. 5g tops out at ~10gbps (some 20gbps i guess) only when one person is on the network. They are testing at 1gbps. This is not regular 4g speed for sure, and it's a rare 5g speed. regular 5g speed is (in the US) 40-50mbps, so, 20x slower than they are testing.
- dartharva 2y agoStill won't be beyond normal consumer applications' capacity, right?
- DannyBee 2y agocorrect
- izend 2y agoWhat about 1gbps fiber at home, it is becoming common in Canada. I have 1gbps up/down.
- DannyBee 2y agoThis would affect that. As said, i was only replying to the claim that this affects things at 4g/5g cell phone speeds, which it clearly does not, by their own data.
- vrighter 2y agoGigabit fiber internet is quite cheap and increasingly available (I'm not from the US). I don't just use the internet over a 4/5g connection. This definitely affects more people than you think.
- DannyBee 2y agoI think it affects lots of people. I have 5gbps internet at home myself. But that is not what i was replying to. I was replying to the claim that this affects regular 4g/5g cell phone speeds. The data is clear that it does not.
- KaiserPro 2y agoHttp1.1 has been around for 28 years. At the time, gigabit ethernet was _expensive_. 9600baud on mobile was rare. and yet http1.1 runs on gigabit networks pretty well.
- yencabulator 2y agoYour 5G has 0.23ms ping to the average webserver?
- spacebacon 2y agoSee arXiv link in comments.
- 01HNNWZ0MV43FF 2y agoDoes QUIC mandate that, or is that just the stepping stone until the chicken-and-egg problem is solved and we get kernel support?
- wmf 2y agoOn mobile the plan is to never use kernel support so that apps can have the latest QUIC on old kernels.
- vlovich123 2y agoAs others in the thread summarized the paper as saying the issue is ack offload. That has nothing to do with whether the stack is in kernel space or user space. Indeed there’s some concern about this inevitable scenario because the kernel is so slow moving, updates take much longer to propagate to applications needing them without a middle ground whereas as user space stacks they can update as the endpoint applications need them to.
- kmeisthax 2y agoNo, but it depends on how QUIC works, how Ethernet hardware works, and how much you actually want to offload to the NIC. For example, QUIC has TLS encryption built-in, so anything that's encrypted can't be offloaded. And I don't think most people want to hand all their TLS keys to their NIC[0]. At the very least you probably would have to assign QUIC its own transport, rather than using UDP as "we have raw sockets at home". Problem is, only TCP and UDP reliably traverse the Internet[1]. Everything in the middle is sniffing traffic, messing with options, etc. In fact, Google rejected an alternate transport protocol called SCTP (which does all the stream multiplexing over a single connection that QUIC does) specifically because, among other things, SCTP's a transport protocol and middleboxes choke on it. [0] I am aware that "SSL accelerators" used to do exactly this, but in modern times we have perfectly good crypto accelerators right in our CPU cores. [1] ICMP sometimes traverses the internet, it's how ping works, but a lot of firewalls blackhole ICMP. Or at least they did before IPv6 made it practically mandatory to forward ICMP packets.
- _flux 2y ago
- throwaway984393 2y ago[dead]
- kccqzy 2y agoThe flexibility and ease of changing a userspace protocol IMO far outweighs anything else. If the performance problem described in this article (which I don't have access to) is in userspace QUIC code, it can be fixed and deployed very quickly. If similar performance issue were to be found in TCP, expect to wait multiple years.
- vrighter 2y agoWell, the problem is probably that it is in userspace in the first place.
- mrweasel 2y agoMaybe moving the entire application to the browser/cloud wasn't the best idea for a large number of use cases? Video streaming, sure, but we're already able to stream 4K video over a 25Mbit line. With modern internet connections being 200Mbit to 1Gbit, I don't see that we need the bandwidth in private homes. Maybe for video conferencing in large companies, but that also doesn't need to be 4K. The underlying internet protocols are old, so there's no harm in assessing if they've outlived their usefulness. However, we should also consider in web applications and "always connected" is truly the best solution for our day to day application needs.
- kuschku 2y ago> With modern internet connections being 200Mbit to 1Gbit, I don't see that we need the bandwidth in private homes Private connections tend to be asymmetrical. In some cases, e.g. old DOCSIS versions, that used to be due to technical necessity. Private connections tend to be unstable, the bandwidth fluctuates quite a bit. Depending on country, the actually guaranteed bandwidth is somewhere between half of what's on the sticker, to nothing at all. Private connections are usually used by families, with multiple people using it at the same time. In recent years, you might have 3+ family members in a video call at the same time. So if you're paying for a 1000/50 line (as is common with DOCSIS deployments), what you're actually getting is usually a 400/20 line that sometimes achieves more. And those 20Mbps upload are now split between multiple people. At the same time, you're absolutely right – Gigabit is enough for most people. Download speeds are enough for quite a while. We should instead be increasing upload speeds and deploying FTTH and IPv6 everywhere to reduce the latency.
- throwaway2037 2y agoThis is a great post. I often forget that home Internet connections are frequently shared between many people. This bit: > IPv6 everywhere to reduce the latency I am not an expert on IPv4 vs IPv6. Teach me: How will migrating to IPv6 reduce latency? As I understand, a lot of home Internet connections are always effectively IPv6 via CarrierNAT. (Am I wrong? Or not relevant to your point?)
- simiones 2y agoThe problem is that the biggest win by far with QUIC is merging encryption and session negotiation into a single packet, and the kernel teams have been adamant about not wanting to maintain encryption libraries in kernel. So, QUIC or any other protocol like it being in kernel is basically a non-starter.
- suprjami 2y agoLooking forward to QUIC in the kernel. Linux already has kTLS.