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.

GLB: GitHub's open source load balancer

478 pointsby csteinbealmost 7 years ago

13 comments

justinsaccountalmost 7 years ago
See also:<p>Facebook: <a href="https:&#x2F;&#x2F;code.fb.com&#x2F;open-source&#x2F;open-sourcing-katran-a-scalable-network-load-balancer&#x2F;" rel="nofollow">https:&#x2F;&#x2F;code.fb.com&#x2F;open-source&#x2F;open-sourcing-katran-a-scala...</a><p>Google: <a href="https:&#x2F;&#x2F;cloudplatform.googleblog.com&#x2F;2016&#x2F;03&#x2F;Google-shares-software-network-load-balancer-design-powering-GCP-networking.html" rel="nofollow">https:&#x2F;&#x2F;cloudplatform.googleblog.com&#x2F;2016&#x2F;03&#x2F;Google-shares-s...</a><p>The design of all 3 is very similar.
评论 #17718367 未加载
评论 #17718290 未加载
emmericpalmost 7 years ago
Cool use of SR-IOV, I like it. We&#x27;ve done a few (academic) experiments with SR-IOV for flow bifurcation and we&#x27;ve wondered why no one seems to use it like this. The performance was quite good: neglible performance difference between PF and a single VF and only 5-10% when running multiple &gt;= 8 VFs (probably cache contention somewhere in our specific setup).<p>You seem to be running this on X540 NICs, aren&#x27;t you running into limitations for the VFs. Mostly the number of queues which I believe is limited to 2 per VF in the ixgbe family. I wonder whether the AF_XDP DPDK driver could be used instead if SR-IOV isn&#x27;t available or feasible for some reason.<p>A more detailed look at performance would have been cool. I might try it myself if I find some time (or a student) :)
评论 #17720516 未加载
q3kalmost 7 years ago
This basically looks like an open source Maglev [1]. Awesome!<p>[1] - <a href="https:&#x2F;&#x2F;static.googleusercontent.com&#x2F;media&#x2F;research.google.com&#x2F;en&#x2F;&#x2F;pubs&#x2F;archive&#x2F;44824.pdf" rel="nofollow">https:&#x2F;&#x2F;static.googleusercontent.com&#x2F;media&#x2F;research.google.c...</a>
评论 #17719635 未加载
jsiepkesalmost 7 years ago
Looks really cool! Though a simpler solution for most people will probably be OpenBSD&#x27;s CARP protocol to share a single virtual IP between multiple boxes (with for example relayd). ECMP routing can get complex fast.
评论 #17718329 未加载
评论 #17718650 未加载
评论 #17718008 未加载
评论 #17718042 未加载
Drdrdrqalmost 7 years ago
Off-topic: I <i>love</i> the GLB icon, pure genius!
bogomipzalmost 7 years ago
I am having trouble understanding this passage. I&#x27;m wondering is someone could help me understand this as it seems like an important design detail:<p>&gt;&quot;Another benefit to using UDP is that the source port can be filled in with a per-connection hash so that they are flow within the datacenter over different paths (where ECMP is used within the datacenter), and received on different RX queues on the proxy server’s NIC (which similarly use a hash of TCP&#x2F;IP header fields).&quot;<p>A source port in the UDP header still needs to be be just that a port number no? Or are they actually stuffing a hash value in to that UDP header field? How would the receiving IP stack no how to understand a value other than a port number in that field?
评论 #17725869 未加载
subleqalmost 7 years ago
This is the first I&#x27;ve heard of Rendezvous hashing. It seems superior in every respect to the ring-based consistent hashing I&#x27;ve heard much more about. Why is the ring-based method more common?
bogomipzalmost 7 years ago
The article states:<p>&gt;&quot;Each server has a bonded pair of network interfaces, and those interfaces are shared between DPDK and Linux on GLB director servers.&quot;<p>What&#x27;s the distinction between DPDK and Linux here? It wasn&#x27;t clear to me why SR-IOV is needed in this design. Does DPGK need to &quot;own&quot; the entire NIC device is that? In other words using DPDK and regular kernel networking are mutually exclusive option on the NIC? Is that correct?
llama052almost 7 years ago
Maybe I don&#x27;t see the use case since I&#x27;m not at that scale, but it seems like a lot of added complexity for what appears to be hacking around using other load balancing solutions as a Layer-4 option?<p>Edit: It&#x27;s a question, if you downvote please let me know why it&#x27;s a better solution.
评论 #17719608 未加载
KenanSulaymanalmost 7 years ago
Why would one use this over HAProxy?
评论 #17718549 未加载
评论 #17718571 未加载
评论 #17718598 未加载
toomuchtodoalmost 7 years ago
Previous discussion (September 2016): <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=12558053" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=12558053</a>
评论 #17717965 未加载
koolhead17almost 7 years ago
Will it have some special love in azure ecosystem?
评论 #17719084 未加载
weberc2almost 7 years ago
Where is the source code? Skimmed but didn’t see a link.
评论 #17718583 未加载