| ▲ | Droobfest 9 hours ago | |||||||||||||||||||||||||||||||||||||||||||
From 2016: https://blog.cloudflare.com/why-we-use-the-linux-kernels-tcp... | ||||||||||||||||||||||||||||||||||||||||||||
| ▲ | notepad0x90 9 hours ago | parent [-] | |||||||||||||||||||||||||||||||||||||||||||
Nice, they know better. But it also makes me wonder, because they're saying "but what if you need to run another app", I'd expect for things like loadbalancers for example, you'd only run one app per server on the data plane, the user space stack handles that, and the OS/services use a different control plane NIC with the kernel stack so that boxes are reachable even if there is link saturation, ddos,etc.. It also makes me wonder, why is tcp/ip special? The kernel should expose a raw network device. I get physical or layer 2 configuration happening in the kernel, but if it is supposed to do IP, then why stop there, why not TLS as well? Why run a complex network protocol stack in the kernel when you can just expose a configured layer 2 device to a user space process? It sounds like "that's just the way it's always been done" type of a scenario. | ||||||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||||||