# A Mathematical Model for Efficient and Fair Resource Assignment in Multipath Transport
## 2 Terminology
### Efficiency vs. Fairness  
The performance of sending data across a network can be characterized by efficiency or fairness. There are two ways to measure _efficiency_: On the one hand, the focus can be on the individual links inside a network, which is the method which is preferred in the literature e.g., [29]. What is the load on each link in relation to the capacity of the respective link is observed. On the other hand, the entire network can be under consideration: when summing up the throughput of all flows which are transported by the network, the result is the aggregated capacity of the network. A high link utilization does not necessarily result in a high aggregated capacity, e.g., if because of bad network design a large number of links become bottlenecks, the link utilization is high, whereas the aggregated capacity may still be low since the transported traffic is slowed down due to these bottlenecks.  
In opposition to a pure view on maximizing the network utilization, one can also aim at providing maximum _fairness_ between the allocation of capacity to a number of flows, which means in the best case that each flow gets the same amount of capacity.  
In many cases, it is not possible to maximize both efficiency and fairness, i.e., they form a trade-off, so that a network operator has to find a compromise between both metrics. The scenario depicted in in Figure 5 shows the relationship between network utilization and fairness. Three nodes \(a\), \(b\) and \(c\) are connected by two links \((a,b)\) and \((b,c)\) which have the same capacity of \(100\,\mathrm{Mbps}\). There are two data flows \([a,c]\) and \([b,c]\). The link \((a,b)\) is only occupied by flow \([a,c]\) whereas link \((b,c)\) is used by both flows, which results in a bottleneck situation. If the aim is optimum resource utilization of the network, flow \([a,c]\) will be allocated the entire capacities of both links which results in full link utilization, but minimum fairness because flow \([b,c]\) does not achieve any throughput. If the focus is on fairness, flows \([a,c]\) and \([b,c]\) share the bottlenecked link \((b,c)\) by \(50\,\mathrm{Mbps}\) each, which, however, results in the problem that link \((a,b)\) is now only utilized by \(50\,\mathrm{Mbps}\). The given scenario is an example where fairness only can be achieved at the expense of network utilization. Weighting can be applied to specify by what extent efficiency or fairness should be considered when assigning resources. In the discussed example, a factor \(\alpha\) is set to \(0\) if utilization should be the only goal and fairness should not  
Figure 4: Example for network flow fair allocation. Blue circles: nodes; black arrows/numbers: links with capacities. Colored arrows/numbers: flows with capacity assignments. All numerical values in Mbps.  
be considered at all, whereas it is set to 1 if fairness should be pursued irrespective of any efficiency loss. Figure 6 shows the amount of average link utilization dependent on \(\alpha\) for the scenario in Figure 5. In case of \(\alpha=0\), both links are fully utilized, so the average utilization is 1. In case of \(\alpha=1\), link \((\mathrm{a},\mathrm{b})\) has a utilization of 0.5 and link \((\mathrm{b},\mathrm{c})\) is fully utilized, so the average utilization is 0.75.