350. Erlang B

The Erlang B formula: probability that all servers in an M/M/c/c queue (Poisson arrivals, exponential service, servers, capacity = no queue) are busy. Arriving customers facing all-busy are blocked / lost.

350.1. Formula

where is the offered load (in Erlangs).

is the blocking probability — proportion of arrivals turned away.

350.2. Telephony origin

Developed by A. K. Erlang for telephone networks (1917). servers = trunk lines; blocked calls are dropped (no queue — caller hears busy signal).

Used for over a century to size phone networks: how many trunk lines do I need to keep blocking probability below some threshold (typically 1% or 0.1%)?

350.3. Worked example

calls/hour, average call lasts minutes = hr. So Erlangs.

How many trunks to keep blocking below 1%?

3
5
7
8

Need trunks for blocking with offered load 2.5 Erlangs.

350.4. Recursive formula (numerically stable)

This recursion avoids the factorials that overflow in direct computation. Standard implementation.

350.5. Erlang B vs Erlang C

Model System Blocked customer
Erlang B (M/M/c/c) c servers, no queue lost (dropped)
Erlang C (M/M/c) c servers, infinite queue waits

Erlang B is the blocking probability (proportion lost). Erlang C is the waiting probability (proportion who must wait > 0).

For the same parameters, Erlang B < Erlang C.

350.6. Where it shows up

350.7. Insensitivity to service distribution

Surprisingly: Erlang B is insensitive to the service-time distribution — only the mean matters. So even if call durations are highly variable, Erlang B’s blocking probability formula stays exact. Holds because of PASTA (Poisson Arrivals See Time Averages) + reversibility.

350.8. See also