Reputation: 29
Based on a discussion with a colleague, I need some help:
Is it true, that without anything fancy (NAT, virtual-IP, etc.) a sw load-balancer can sustain a max of. ~64K backend (to a server) connections concurrently (at the same time), based on the port limit on the network interface it's bind on?
So for example, if there's a sw load-balancer connecting to 2 backend servers using long-lived TCP connections (not for HTTP) each of the servers can have up to ~64K connections at a given time?
(let's forget that the port limit is usually less than ~64K per connection)
Thanks.
Upvotes: 0
Views: 475
Reputation: 11558
The limitation comes from the fact that every connection through the LB requires 1 unique port on the internal interface of the LB.
If you only have 1 internal and 1 external interface pair then you will only be able to sustain approximately 64,000 connections due to port exhaustion. All the servers must share that limitation. This means that if you have 2 servers then they will have, if evenly distributed, around 32k connections each.
You can however easily lift this bottleneck by adding more than 1 internal interface on the LB.
Upvotes: 1