26 ms·
I thought anycast wasn't reliable for TCP sessions? You can serve UDP services (eg DNS) by anycast, but if you hosted a tcp service, there's no guarantee the s
by NickNameNick 5y ago
I thought anycast wasn't reliable for TCP sessions?
You can serve UDP services (eg DNS) by anycast, but if you hosted a tcp service, there's no guarantee the same server would receive consecutive packets from the tcp stream
- CameronNemo 5y agoIt is rarely an issue in practice. There are workarounds to minimize connection resets. Using ECMP hashing on routers and a tiered load balancing topology are important. https://vincent.bernat.ch/en/blog/2018-multi-tier-loadbalancer https://vincent.bernat.ch/en/blog/2018-multi-tier-loadbalanc... https://blog.cloudflare.com/high-availability-load-balancers-with-maglev/ https://blog.cloudflare.com/high-availability-load-balancers... https://engineering.linkedin.com/network-performance/tcp-over-ip-anycast-pipe-dream-or-reality https://engineering.linkedin.com/network-performance/tcp-ove...
- sterlind 5y agoSeems like LinkedIn had to do some finessing and still couldn't go with global anycast. How do CDNs work without controlling DNS resolution by source subnet?
- CameronNemo 5y agoPresumably a CDN has better and more direct peerings with ISPs than LinkedIn, or admittedly archive.is.
- diroussel 5y agoCloudflare uses any cast, and they deal with it by making every external node able to handle every public IP that they have. If packets in a TCP stream end up going to different nodes, then they deal with that in their infrastructure.