# Fairness measure

Fairness measures or metrics are used in network engineering to determine whether users or applications are receiving a fair share of system resources. There are several mathematical and conceptual definitions of fairness.

## TCP fairness

Congestion control mechanisms for new network transmission protocols or peer-to-peer applications must interact well with TCP. TCP fairness requires that a new protocol receive no larger share of the network than a comparable TCP flow. This is important as TCP is the dominant transport protocol on the Internet, and if new protocols acquire unfair capacity they tend to cause problems such as congestion collapse. This was the case with the first versions of RealMedia's streaming protocol: it was based on UDP and was widely blocked at organizational firewalls until a TCP-based version was developed.[citation needed]

## Jain's fairness index

Raj Jain's equation,

$\mathcal{J} (x_1, x_2, \dots, x_n) = \frac{( \sum_{i=1}^n x_i )^2}{n \cdot \sum_{i=1}^n {x_i}^2}$

rates the fairness of a set of values where there are $n$ users and $x_i$ is the throughput for the $i$th connection. The result ranges from $\tfrac{1}{n}$ (worst case) to 1 (best case), and it is maximum when all users receive the same allocation. This index is $\tfrac{k}{n}$ when $k$ users equally share the resource, and the other $n-k$ users receive zero allocation.

This metric identifies underutilized channels and is not unduly sensitive to atypical network flow patterns.[1]

## Max-min fairness

Max-min fairness is said to be achieved by an allocation if and only if the allocation is feasible and an attempt to increase the allocation of any flow necessarily results in the decrease in the allocation of some other flow with an equal or smaller allocation. A max-min fair allocation is achieved when bandwidth is allocated equally and in infinitesimal increments to all flows until one is satisfied, then amongst the remainder of the flows and so on until all flows are satisfied or the bandwidth is exhausted.

## Fairly shared spectrum efficiency

In packet radio wireless networks, The fairly shared spectrum efficiency (FSSE) can be used as a combined measure of fairness and system spectrum efficiency. The system spectral efficiency is the aggregate throughput in the network divided by the utilized radio bandwidth in hertz. The FSSE is the portion of the system spectral efficiency that is shared equally among all active users (with at least one backlogged data packet in queue or under transmission). In case of scheduling starvation, the FSSE would be zero during certain time intervals. In case of equally shared resources, the FSSE would be equal to the system spectrum efficiency. To achieve max-min fairness, the FSSE should be maximized.

FSSE is useful especially when analyzing advanced radio resource management (RRM) schemes, for example channel adaptive scheduling, for cellular networks with best-effort packet data service. In such system it may be tempting to optimize the spectrum efficiency (i.e. the throughput). However, that might result in scheduling starvation of "expensive" users at far distance from the access point, whenever another active user is closer to the same or an adjacent access point. Thus the users would experience unstable service, perhaps resulting in a reduced number of happy customers. Optimizing the FSSE results in a compromise between fairness (especially avoiding scheduling starvation) and achieving high spectral efficiency.

If the cost of each user is known, in terms of consumed resources per transferred information bit, the FSSE measure may be redefined to reflect proportional fairness. In a proportional fair system, this "proportionally fair shared spectrum efficiency" (or "fairly shared radio resource cost") is maximized. This policy is less fair since "expensive" users are given lower throughput than others, but still scheduling starvation is avoided.