TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Katran: A high-performance layer 4 load balancer

105 pointsby SriniKalmost 7 years ago

6 comments

hacknatalmost 7 years ago
So before anyone gets excited about using this, XDP has to be enabled at the driver level to work, because basically is allows you to write your own program to handle incoming packets from the driver, taking the kernel out as the middle man. The list of supported drivers is small:<p><a href="http:&#x2F;&#x2F;prototype-kernel.readthedocs.io&#x2F;en&#x2F;latest&#x2F;networking&#x2F;XDP&#x2F;implementation&#x2F;drivers.html" rel="nofollow">http:&#x2F;&#x2F;prototype-kernel.readthedocs.io&#x2F;en&#x2F;latest&#x2F;networking&#x2F;...</a><p>I’m actually working on porting XDP into the Xen net front end driver to see if I can’t get something like this working in AWS. If I do it, I’ll likely post an example about it here:<p><a href="https:&#x2F;&#x2F;github.com&#x2F;newtools&#x2F;ebpf" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;newtools&#x2F;ebpf</a><p>As an aside cloudflare is using that repo for an XDP load balancer as well.
edf13almost 7 years ago
This is where Facebook actually does some good... their open source efforts are really good...<p><a href="https:&#x2F;&#x2F;github.com&#x2F;facebookincubator" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;facebookincubator</a> And... <a href="https:&#x2F;&#x2F;github.com&#x2F;facebook" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;facebook</a>
评论 #17204151 未加载
评论 #17206963 未加载
nickcwalmost 7 years ago
An interesting idea to load balance at L4 so as not to terminate the TCP sessions (for speed). Normally this constrains the network rather as you can&#x27;t route the output packets normally after that (they need to be routed to a vLAN) but encapsulating with IPIP means the load balancer output can go straight back into the normal routing layer.<p>Not constraining the output of the load balancer to a single vLAN really helps for larger networks.<p>Reading the readme I see they&#x27;ve made every effort to process the packets as little as possible to it seems likely that this will run at line speed.<p>For L4 the main competitor is LVS which scales pretty well in my experience but probably not as well as this.
IMTDbalmost 7 years ago
They talk about being compatible with RSS.<p>What is RSS in this context, ? My guess is that it&#x27;s not this RSS <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;RSS" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;RSS</a> because I do not see how&#x2F;why you should need any rule at L4 to maintain compatibility with an XML based protocol.<p>Is it possible they talk about : <a href="https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Network_interface_controller#RSS" rel="nofollow">https:&#x2F;&#x2F;en.wikipedia.org&#x2F;wiki&#x2F;Network_interface_controller#R...</a> ?
评论 #17203809 未加载
bdahzalmost 7 years ago
What is the difference with IPVS kernel module in Linux? Both are layer 4 load balancers and IPVS has come a long time and is proven to be good. Any performance comparisons available?
评论 #17204362 未加载
nubbalmost 7 years ago
Fun project. Would anyone actually ever run something like this in production over something like HAProxy?
评论 #17202792 未加载
评论 #17204960 未加载
评论 #17204785 未加载