Skip to content
Calcrivo

LACP Distribution Calculator

Check how evenly a LAG hash spreads flows across members and how much skew a non-power-of-two bundle causes.

Inputs

links
flows
buckets

Skew on the Busiest Member

0.130%

Hash Buckets per Member

42

Buckets on the Busiest Member

43

Ideal Share per Member

16.667%

Flows per Member

833

Distribution Verdict

Uneven — 0.13% extra load on 4 member(s); a power-of-two bundle divides cleanly

Step by step

  1. Values used

    Active member links = 6 links; Concurrent flows = 5,000 flows; Hash buckets in hardware = 256 buckets; Hash policy = Source + destination IP

  2. LACP Distribution

    Buckets per member = floor(buckets ÷ members); the members that absorb the remainder carry one extra bucket, so skew = (busiest buckets ÷ buckets) − (1 ÷ members).

  3. Flow distribution

    flows per member = flows ÷ members, assuming uniform hash input.

  4. Skew on the Busiest Member

    = 0.130

  5. Hash Buckets per Member

    = 42

  6. Buckets on the Busiest Member

    = 43

  7. Ideal Share per Member

    = 16.667

  8. Flows per Member

    = 833

  9. Distribution Verdict

    = Uneven — 0.13% extra load on 4 member(s); a power-of-two bundle divides cleanly

How it works

Hashing maps each flow to one of a fixed number of buckets and buckets to members. When the member count divides the bucket table exactly the split is perfect; otherwise the members holding the leftover buckets run hot, which is the real reason bundles are built in powers of two. Bucket skew is small, but hash-entropy skew is not — a few elephant flows or a MAC-only hash behind a router can put most of the traffic on one member while the bundle reports plenty of spare capacity.

Formulas

LACP Distribution

Buckets per member = floor(buckets ÷ members); the members that absorb the remainder carry one extra bucket, so skew = (busiest buckets ÷ buckets) − (1 ÷ members).

buckets
Size of the hardware hash table, typically 256 entries
remainder
Buckets left over when members do not divide the table evenly
skew
Extra share of traffic the busiest member receives

Flow distribution

flows per member = flows ÷ members, assuming uniform hash input.

Frequently Asked Questions

How is LACP Distribution calculated?

Buckets per member = floor(buckets ÷ members); the members that absorb the remainder carry one extra bucket, so skew = (busiest buckets ÷ buckets) − (1 ÷ members). Hashing maps each flow to one of a fixed number of buckets and buckets to members. When the member count divides the bucket table exactly the split is perfect; otherwise the members holding the leftover buckets run hot, which is the real reason bundles are built in powers of two.

Why does LACP Distribution matter?

Bucket skew is small, but hash-entropy skew is not — a few elephant flows or a MAC-only hash behind a router can put most of the traffic on one member while the bundle reports plenty of spare capacity.

What values do I need to enter?

This calculator takes 4 inputs: Active member links, Concurrent flows, Hash buckets in hardware, Hash policy. The pre-filled defaults are a realistic starting point — replace them with figures from your own environment for a result you can act on.

You might also need