An Axiomatic Approach to Routing
Abstract
Information delivery in a network of agents is a key issue for large, complex systems that need to do so in a predictable, efficient manner. The delivery of information in such multiagent systems is typically implemented through routing protocols that determine how information flows through the network. Different routing protocols exist each with its own benefits, but it is generally unclear which properties can be successfully combined within a given algorithm. We approach this problem from the axiomatic point of view, i.e., we try to establish what are the properties we would seek to see in such a system, and examine the different properties which uniquely define common routing algorithms used today.
We examine several desirable properties, such as robustness, which ensures adding nodes and edges does not change the routing in a radical, unpredictable ways; and properties that depend on the operating environment, such as an “economic model”, where nodes choose their paths based on the cost they are charged to pass information to the next node. We proceed to fully characterize minimal spanning tree, shortest path, and weakest link routing algorithms, showing a tight set of axioms for each.
R. Ramanujam (Ed.): TARK 2015 EPTCS 215, 2016, pp. An Axiomatic Approach to Routing–LABEL:LastPage, doi:10.4204/EPTCS.215.14 © O. Lev, M. Tennenholtz & A. Zohar This work is licensed under the Creative Commons Attribution License.
An Axiomatic Approach to Routing
Omer Lev \IfArrayPackageLoaded  




omerl@cs.huji.ac.il and Moshe Tennenholtz \IfArrayPackageLoaded  




moshet@ie.technion.ac.il and Aviv Zohar \IfArrayPackageLoaded  




avivz@cs.huji.ac.il 
1 Introduction
The proper way to distribute power, disseminate information, or establish hierarchies in organizations is an issue encountered whenever there is a large enough network of agents that needs to interact in an orderly manner. For example, when trying to establish efficient lines of communications between agents which all need to reach a central hub, there are various properties we may desire in our system. We might want the system to be able to handle small changes in connections without causing disruptions throughout the network; we may want it to be flexible when we change its parameters so that various routing options are possible, and more. Indeed, the search for the right communication structure has played a role in early work on the foundations of the area of multiagent systems [8, 16, 6], based on classical work in organization theory [9, 17].
More concretely, examining networking, one of the most important aspects of the design of a communication network is the way it routes information through its physical links. Routing protocols, such as those used in packet switching networks, circuit switching, or adhoc networks are designed with many goals in mind. They must adapt to changing network conditions, withstand failures, and operate in a distributed fashion while constructing a “good” routing scheme. Nodes in the network are, in fact, autonomous agents that can control the flow of information through them and can choose to forward it according to their own considerations. Agents may be controlled by different economic entities (such as in the internet, where different internet service providers control some of the routers), and may route according to complex preferences that are derived from economic relations [10, 15]. Even in the cooperative localnetwork setting where all routers are controlled by a single network operator, different considerations such as bandwidth utilization, latency, and the risks of link failures come into play.
The multitude of previous treatments of the problem suggest a myriad of routing protocols, each with their own benefits and shortcomings. In contrast, this work examines the routing problem through the lens of the axiomatic approach, which seeks to formulate different elementary properties that are desirable in this context. One approach to an axiomatic treatment, which we take in this work, is that of characterization: a set of elementary properties is shown to uniquely determine some routing algorithm, and hence the routing outcome on any specific graph. From the designer’s perspective, such a result implies a great deal – any additional property that is not already achieved by the protocol cannot be added to it without giving up on another basic property. The approach thus provably bounds the design space of algorithms and makes explicit the choices made when selecting one over the other.
As we are not aware of any previous axiomatic treatment of routing, we focus our attention on a domain that most closely resembles the internet as it is built today, and focus our efforts within this domain on what one may consider classic, or natural routing schemes. In particular, we assume that routing choices are independent of the congestion on links (such is the case in the internet, where routing protocols such as BGP first establish paths, and congestion control protocols such as the one embedded into TCP manage the load on each flow’s path and ensures that rates are throttled to match the bottleneck of the flow). Furthermore, as with internet routing where routers decide on the next hop of each packet using a routing table that maps its destination to the next hop, routing choices made to different destinations are done independently. Finally, packets addressed to the same destination are not split between different paths, and are routed in the same manner regardless of their source. These choices, which greatly restrict the power of any routing algorithm may seem arbitrary, but are in fact derived from realworld design considerations. For example, the need to quickly forward packets towards their destination at each router mandated that most routing be done in specialized hardware. No complex computation is performed (only a lookup into a routing table) and no deep inspection of the packet is performed. Keeping routing simple has made it fast and robust.
More advanced routing schemes that have been proposed in the literature may split traffic, allow routing choices to depend on the source of the packet or its previous hops, or may even change the routes in response to link congestion. These are notoriously difficult to coordinate and to implement. We leave treatment of these more advanced schemes to future work.
Our set of axioms or “desirable properties” are also motivated by similar considerations. For example, one of the fundamental features we desire in our algorithms is one of robustness, which is the ability of a system to endure changes in the network without creating disruption in parts of the network that have not undergone changes.
A different feature, which might be desirable only in certain cases, is “first hop”, which is particularly relevant for diffuse networks with independent nodes. It means, broadly, that network nodes care only about their immediate surroundings, or the “next step” in the network data transfer. Such a property might be relevant when nodes pursue an “economic model”, paying for transferring information, and hence only caring about the cost they need to pay to move their information to the next node, and following that, they have no preference on the route the information should pass en route to its destination. Other properties, desirable only in some cases include an indifference between two parallel paths, as long as they change their weights by the same amount concurrently.
Ultimately, after devising our axioms we successfully fully characterized 3 natural routing algorithms:

Minimum spanning tree: A tree with the smallest overall weight is a result, among others, of the “first hop” axiom (the “economic model”).

Shortest path: A tree where each node has the shortest possible path to its destination is a result, among other axioms, of viewing as immaterial to the routing decision any parallel paths which change their weight by the same amount.

Weakest link tree: A tree where each node takes the path with the maximal “lightest” weight available to it. This results from considering higher edgeweights as beneficial (e.g., representing bandwidth which one wishes to increase in contrast to delay that one wishes to decrease), and from considering designers that choose between parallel paths in a slightly different manner.
We proceed to review relevant previous research and then continue to define our model and expand on the axioms, which are motivated with a brief explanation and presented formally. Following that we show (and prove) our characterization of the minimal spanning tree, the shortest path tree, and the weakest link tree.
2 Related Work
In the past decade, as routers became more flexible, research on routing (particularly interdomain) and its techniques has been rekindled and extended beyond the technical issues dealt with in the past. The harbinger for much of this research was [11], which was further expanded by several researchers (see updating report here: http://www.cl.cam.ac.uk/~tgg22/metarouting/ ). However, this line of research, while introducing many interesting mathematical and theoretical concepts to the field of routing, has refrained from phrasing its models as requirements by users, to be filled by various routing algorithms.
The axiomatic approach, which does approach problems with this outlook, has been first introduced in CS contexts as extensions to the classical theory of choice [5], and has been applied to ranking systems [2, 3] and trust systems [4], as well as to other multiagent setups such as multilevel marketing [7].
In relation to networking, usage of the axiomatic approach has generally been concentrated in two main areas: applying to general graph theory (e.g., [19]) or in more technical approaches to networks: papers such as [14] which deal with particular wireless models and implementations, and, somewhat closer to our line of work, [13], whose basic axioms are basic enough to be covered through our models, while the routing related axioms involve various assumptions on how routers work (tables, etc.), which we refrain from approaching in our more abstract considerations.
Further work connecting networking and the axiomatic approach has focused on particular instances of problems: [12] try to use the axiomatic approach to extract the costs of multicast routing and decide who is to pay them. Trust networks and social networks (e.g., recommendation systems) have been analysed many times using the axiomatic approach to understand their desirable features and better understand desirable algorithms in these cases [18, 4]. However, none of these papers deal with the basic routing mechanism by which messages and information arrive at each node.
3 Setup
Before introducing our axioms, we begin by setting up our routing model. It is, naturally, only a simplification of routing as it is done in large, complex networks such as the internet, but we believe it is robust enough to display many networking characteristics.
Our world will be a weighted graph and a destination , where is a set of nodes, is a set of edges, and is a function assigning weights to edges, and . A routing solution is a tree over that graph, as defined below (we do not concern ourselves with nontree routing, as passing through the same node several times does not serve any purpose).
Definition 1.
A routing function is a function from connected weighted graph in which , to a tree such that .
We can look at the graph as one with directed edges if we consider each edge’s direction to be the one pointing at the vertex from which there is a path to (without going through the same edge again).
We discuss 3 different routing options:

Minumum spanning tree (MST): a tree connecting all nodes in the graph with the minimal weight, i.e., for every tree that encompasses all of ’s nodes, .

Shortest path: each node is connected to using a shortest length path in the graph. For every node , let be a path without cycles from to such that , and let a different path from to , then .

Weakest link: looking at each potential path from each node to , we give each path the value of its smallest valued edge. The routing tree will contain, for each node the path to with the maximal value. So for every node , let be a path without cycles from to such that , and let a different path from to , then .
Notice that while for the minimal spanning tree and shortest path routing options weights are interpreted as costs (e.g. payments, delays), so these algorithms seek to minimize them, the weakest link views weights as measure for capability such as bandwidth, so seeks to maximize the weight.
4 Axioms
Having introduced our framework, we introduce our axioms, which are, basically, desirable properties of the function (in the axioms below we use , as these are properties which do not depend on a specific destination).
Robustness indicates the routing being quite unsusceptible to changes – only if a path in the routing is destroyed, will it require any change. As indicated in Figure 1, the path from node changes, but not from node .
Axiom 1 (Robustness).
is robust if removing an edge from , yielding , then for every vertex : if the cycleless path from to in did not contain , then this is still the selected path according to (see example Figure 1).
The following axioms deal with global changes to the graph weights, additive or multiplicative:
Axiom 2 (Scale Invariance).
is scale invariant if for a graph , for any positive scalar , defining , for every , .
Axiom 3 (Shift Invariance).
is shiftinvariant if for a graph , for any , defining , for every , .
The monotonicity axiom below seeks to establish that if an edge does not have to be in every tree, if its weight increases enough, it will not be a part of the routing tree:
Axiom 4 (Monotonicity).
is monotone if for a graph and , for , if , then for every , there is a value such that for such that for all and , . Similarly, we can define the opposite direction, an edge in will not be in the routing tree if it has a small enough value; we will refer to it as inverse monotonicity.
While the phrasing of the following axiom is somewhat technical, the first hop axiom below simply means that if a vertex has several potential edges to connect to a path to , the routing only depends on the weights of the edges connecting it to these potential paths, and unrelated to weights of other edges in the graph.
Axiom 5 (First Hop).
Let be a weighted graph and let and . Suppose are the vertices such that and there is a path from to in which does not pass through . W.l.o.g., let be the first step in the path from to in . We say that satisfies first hop if for any such that and if for all contains paths to from that do not pass through , and there is no such that and there is a path from to in , then the cycleless path from to in starts with .
The rational for the first hop axiom is to capture a common economic model, in which edge weights indicate the cost of passing information. In distributed networks, such as the internet, each agent only minds the amount it needs to pay to transfer its data to the next node, not caring about the path the data will take from there.
Path cardinal/ordinal invariance intends to see the planner’s considerations when multiple paths exist. As there might be many potential behaviours, we only limit ourselves to examining the narrow case of what the planner considers important when there is only one cycle in the graph (i.e., the axiom does not strongly enforce a general behaviour on the planner). Cardinal invariance deals with adding the same weight to potential paths, and how it does not effect the routing. Ordinal invariance similarly does not change the routing if all that has changed are the weights of the competing paths, as long as edges in each path maintain their relative position.
Axiom 6 (Path Cardinal Invariance).
Let be a graph which contains a single cycle, , and let be a part of this cycle. Hence there are two alternative paths from to – and (one of them is actually a part of ). is path cardinal invariant if it treats those paths as such: Choosing an edge and , for any , we define as for and and , the path from to will not change in (see example Figure 2).
Axiom 7 (Path Ordinal Invariance).
Let be a graph which contains a single cycle, , and let be a part of this cycle. Hence there are two alternative paths from to – and (one of them is actually a part of ). is path ordinal invariant if it treats those paths as such: Taking an edge () that is not maximal or minimal in , we define as for and allow W’(e’) to be any value it chooses as long as for every if then , and the path from to will not change in (see example Figure 3).
5 Minimal Spanning Tree
Theorem 1.
A robust, scale invariant, shift invariant, monotone, firsthop (axioms 15) routing function , for any graph and , will always be a minimal spanning tree of .
Reminder 1.
As our minimal spanning tree proof relies on the Kruskal algorithm, we will briefly describe it:

Order edges according to weights

Define a set , initialized to the empty set.

Going over edges from lightest to heaviest, if the set has no cycles, .
Proof of Theorem 1.
We shall prove the theorem using complete induction on the number of noncycle lightest edges in the tree . Hence, we shall begin by proving that the lightest edge in the graph is in the routing tree . Assuming we are mistaken, let us consider the lightest edge in – – and assume . We create , and thanks to the robustness axiom, we know .
If ’s path to in goes through , we shall switch the nodes’ names, so that ’s path to does not pass through . As is not in , there is an edge that is the first step from towards . We now define and , and due to our minimality assumption, we know .
Using the monotonicity axiom, we change graph weights to that is identical to except that weight is large enough so that we create a tree in which there is a path from to that does not pass through (e.g., the same path that is in ), and passes through towards (i.e., ). We define .
Using scale invariance we now multiply all edges by , and using shift invariance, we add to all edges . This means the weight of edge is now
While the weight of edge is now
However, the routing tree contains and not , and a path from both and to , contradicting the “first hop” axiom, which should have caused to be chosen over , as the edge weights for and have not changed.
We now turn to the induction step – we assume all bottom weighted edges that do not create a cycle are included in the tree , and we now seek to include the lightest edge that does not create a cycle. We pursue a similar path as we did as previously, and we shall mark the edge as , and assume it is not included in , and instead is included, and there is a path to from and . Again, we create , and thanks to the robustness axiom, we know . Using monotonicity we create weights that just increase weight, so that has which include the same bottom which do not create cycles (from the induction hypothesis), and reaches via the edge . Recall that we know the bottom edges will definitely be in , and we wish to ensure that there will still be a path from to and from to . The same arguments used in the initial step of the induction ensure that, as well as returning the weights of and to their values in , while routing through and not in the routing tree, reaching a contradiction with our initial assumption due to the “first hop” axiom.
What is left is to show MST indeed follows our axioms:
 Robustness (axiom 1)

Trivial thanks to the Kruskal algorithm – if the removed edge () was not in the routing tree, it means it was not selected in the first place, and hence the same routing tree will be chosen. If it was, then any edge added after its removal () closed a cycle with it, and hence, if affecting the edges in any path that did not include , it means closes a cycle with them, hence would have closed a cycle as well.
 Scale invariance (axiom 2)

Multiplying all edges by a fixed amount does not change their order in relation to others, hence Kruskal will choose the same routing tree.
 Shift invariance (axiom 3)

Adding a fixed amount to all edges does not change their order in relation to others, hence Kruskal will choose the same routing tree.
 Monotonicity (axiom 4)

Giving an edge the maximal possible edge value ensures it will only be selected if no other edge can replace it – and if there exists a tree without some edge, we know it will be chosen before.
 “First hop” (axiom 5)

Kruskal ensures that if there are the same possible options of connecting a node to the tree, only the lightest edge will be chosen.
∎
6 Shortest Path
Theorem 2.
A robust, scale invariant, monotone, and path cardinal invariant (axioms 12, 4, 6) routing function , for any graph and , will always be a shortest path graph to of .
Proof.
Suppose is not a shortest path routing tree. Let be the closest node to that is not connected to with a shortest path. Hence, there is an edge which will make ’s path a shortest path one (, being closer to , is already connected to with a shortest path), but , and instead is included in . Using robustness, we create . contains two alternate paths from to , and .
Using path cardinal invariant, we “move” all the value of the edges on each path to it’s “source”, i.e., to or (we do this by adding to the weight of and the value of, and reduce from the weight of all edges of the path from to through and vice versa). We shall refer to and . We now use monotonicity to create a new tree, with but without , with the graph’s weight now (identical to except for increase in weight). Once again, we transfer all value of the paths from to to and respectively, with everything else being 0. Now, using monotonicity, we increase the weight of above that of , with the weight of being (its path weights have not changed) and being .
Finally, we multiply all edges by (using scale invariance), and using path cardinal invariance, we add to and the amount . The weight of is now:
While the weight of edge is now
As all edges are the same weight as before, therefore we reached a contradiction regarding the inclusion of instead of (whose weights are the same as well).
We will now show shortest path follows our axioms:
 Robustness (axiom 1)

Removing an edge, at most, eliminates a potential path from a node to the destination . If the path was not on the shortest path, the previous shortest path remains so.
 Scale invariance (axiom 2)

Multiplying by a fixed amount all edges means the value of each path is multiplied by the same amount, maintaining their relative ordering, hence what was shortest remains so.
 Monotonicity (axiom 4)

Giving an edge the value of the sum of all other edges ensures it will only be selected if no other path can replace it — and if there exists a tree without some edge, we know there is such a path.
 Path cardinal invariance (axiom 6)

Having multiple paths from a node, adding the same amount to each path doesn’t change the ordering of the paths (i.e., which path is “shorter” than another), hence selection of shortest path will be identical.
∎
7 Weakest Link
Theorem 3.
A robust, scale invariant, shift invariant, inverse monotone, and path ordinal invariant (axioms 14, 7) routing function , for any graph and , will always be a weakest link graph to of .
Proof.
Suppose is not a weakest link routing tree. Let be a node that requires just one edge missing from that is not connected to with a weakest link^{1}^{1}1such a node exists as there is a node not connected by weakest link in , hence adding the necessary path for that node, taking the node just before the final edge that we add to (i.e., closest to ), answers our criterion., and we mark this edge as . Since , there is an edge instead that is included in . Using robustness, we create . contains two alternate paths from to , and .
Using path ordinal invariant, we change the value of all edges on each alternate path from to to its weakest link value (we do this by taking the 2nd smallest edge in the path and changing its value to that of the weakest link, which by the axiom does not change the path chosen, and we proceed doing so to all edges on the path). We shall refer to and (from assuming is not in a weakest link path we know ). Using inverse monotonicity, we create identical to except for weight, that is low enough that it is not included in . Once again, we change the values of the paths from to to their weakest link value (this is only relevant for the path through , as the other path has not changed). We term the the new value for – , and we know .
Finally, we multiply all edges by (using scale invariance), and using shift invariance, we add to all edges . Edge now has the weight:
While the weight of edge is now
As all edges are the same weight as before, hence we reached a contradiction regarding the inclusion of instead of .
We shall now show weakest link also follows our axioms:
 Robustness (axiom 1)

Removing an edge, at most, eliminates a potential path from a node to the destination . If the path was not a weakest link, the previous weakest link remains so.
 Scale invariance (axiom 2)

Multiplying by a fixed amount all edges means the value of each path (its smallest edge) is multiplied by the same amount, maintaining their relative ordering, hence what was weakest link remains so.
 Shift invariance (axiom 3)

Adding a fixed amount all edges means the value of each path (its smallest edge) is added the same amount, maintaining their relative ordering, hence what was weakest link remains so.
 Monotonicity (axiom 4)

Giving an edge the value of the minimum of all other edges ensures it will only be selected if no other path can replace it — and if there exists a tree without some edge, we know there is such a path.
 Path ordinal invariance (axiom 7)

Having multiple paths from a node, the weakest link edge (the one with smallest value) of the selected path can’t become lower than the weakest link of the nonselected path, hence weakest link choice does not change.
∎
8 Tightness of Axioms
We will now show that the above characterizations are tight, and that without each axiom, other routing algorithms become possible.
Theorem 4.
All MST axioms (15) are necessary, and without even one of them, other routing algorithms are possible.
Proof.
Going over all MST axioms, we detail potential algorithms which work with all axioms except that one, and are not MST. We will refer below to each relaxed axiom, and to the new/additional system which can obtained by that relaxation:
 Robustness

See example in Figure 4. Apply MST to any other graph that is not a linear transformation of the bottom one.
 Scale invariance

See example in Figure 5. On all graphs except those which contain as a subgraph a linear transformations of the bottom one, apply MST.
 Shift invariance

See example in Figure 6. On all graphs except those which contain as a subgraph a linear transformations of the bottom one, apply MST.
 Monotonicity

A maximal spanning tree implements all axioms but monotonicity.
 First Hop

Weakest link implements all of the other axioms.
∎
Theorem 5.
All shortest path axioms (12, 4, 6) are necessary, and without even one of them, other routing algorithms are possible.
Proof.
Going over all shortest path axioms, we detail potential algorithms which work with all axioms except one, and are not shortest path. We will refer below to the each relaxed axiom, and to the new/additional system which can obtained by that relaxation:
 Robustness

See example in Figure 4. Apply shortest path to any other graph that isn’t a scale of the structure of the bottom one. Any edge in that structure that is 100 times all the others is removed in the tree.
 Scale invariance

See example in Figure 5. Taking the bottom example and for the group that includes all graphs for which it is a subgraph and those that can be formed by path cardinal invariance, and only for them do not apply shortest path but rather the example (it won’t trample on the top example, as if the upper example adds to lowerright edge, and to the rest, and the bottom example adds , it would require , reaching an impossibility).
 Inverse Monotonicity

A longest path tree implements all axioms but monotonicity.
 Path cardinal invariant

Minimal spanning tree implements all other axioms.
∎
Theorem 6.
All weakest link axioms (14, 7) are necessary, and without even one of them, other routing algorithms are possible.
Proof.
Going over all weakest link axioms, we detail potential algorithms which work with all axioms except one, and are not weakest link. We will refer below to the each relaxed axiom, and to the new/additional system which can obtained by that relaxation:
 Robustness

See example in Figure 4. Apply weakest link to any other graph that isn’t of the structure of the bottom one, Any edge that in that structure that is 100 times less that all the others’ weight is removed.
 Scale invariance

See example in Figure 5. Taking the bottom example and for the group that includes all graphs for which it is a subgraph and those that can be formed by shift invariance and only for them do not apply weakest link but rather the example (it won’t trample on the top example, as it can’t be reached by shift invariance, and as the edge weights are all minimal/maximal, they change change by ordinal invariance).
 Shift invariance

See example in Figure 6. Taking the bottom example and for the group that includes all graphs for which it is a subgraph and those that can be formed by scale invariance and only for them do not apply weakest link but rather the example (it won’t trample on the top example, as it can’t be reached by shift invariance, and as the edge weights are all minimal/maximal, they change change by ordinal invariance).
 Monotonicity

A strongest link tree implements all axioms but monotonicity.
 Path ordinal invariant

Minimal spanning tree implements all other axioms.
∎
9 Discussion
In this paper we explore the basic issue of routing – how should information flow through a network and what properties might this process have. In the process of considering this issue we developed several properties we believe might be desirable by system planners. For example, robustness, or the ability of a routing protocol to keep small changes from disrupting the whole routing process, is a property especially required in fast, changing networks.
Naturally, creating a structure from possible interactions between agents defined by a connections’ graph is not limited just to information routing in networks such as the internet. Looking at organizations, where workers are connected according to their ability to work with other workers, and instead of routing messages between them we seek to construct an organizational hierarchy, we face a similar challenge. Again, robustness is a desirable property, as it means that if some workers have a worsening relationship with others, if they’re not very senior in the organization, it has little effect on many others. In this case, we may consider the “economic model” (“first hop” axiom) appropriate as well – if workers only interact with their boss, we only care about the edge from each worker to his/her boss, and each worker does not care what happens further up in the hierarchy^{2}^{2}2Similarly, in a highly centralized organization, a path cardinal invariance is probably a sensible axiom..
Beyond setting up the axioms, we also examined common routing algorithms – minimal spanning tree, shortest path and weakest link, and fully characterized them. Obviously, this is only the beginning of the road for this line of research – further steps will entail developing more axioms and using them to characterize more algorithms, with the aim of giving a set of tools for system designers, allowing them to choose desirable properties which would dictate appropriate routing protocols.
Acknowledgments
The authors thank Michael Schapira for his insightful discussions on this matter. Moshe Tennenholtz carried out this work while at Microsoft Research, Israel. Aviv Zohar is supported in part by the Israel Science Foundation (Grants 616/13 and 1773/13), and by the Israel Smart Grid (ISG) Consortium.
References
 [1]
 [2] Alon Altman & Moshe Tennenholtz (2005): Ranking systems: The PageRank axioms. In: Proceedings of the 6th ACM conference on Electronic commerce (EC), Vancouver, Canada, pp. 1–8, doi:http://dx.doi.org/10.1145/1064009.1064010.
 [3] Alon Altman & Moshe Tennenholtz (2010): An axiomatic approach to personalized ranking systems. Journal of the ACM 57(4), pp. 1–35, doi:http://dx.doi.org/10.1145/1734213.1734220.
 [4] Reid Andersen, Christian Borgs, Jennifer Chayes, Uriel Feige, Abraham Flaxman, Adam Kalai, Vahab Mirrokni & Moshe Tennenholtz (2008): Trustbased recommendation systems: an axiomatic approach. In: Proceedings of the 17th international conference on World Wide Web (WWW), Beijing, China, pp. 199–208, doi:http://dx.doi.org/10.1145/1367497.1367525.
 [5] Kenneth Joseph Arrow (1951): Social Choice and Individual Values. Yale University Press.
 [6] Edmund Durfee, Victor R. Lesser & Daniel D. Corkill (1987): Coherent Cooperation Among Communicating Problem Solvers. IEEE Transactions on Computers 36(2), pp. 1275–1291, doi:http://dx.doi.org/10.1109/TC.1987.5009468.
 [7] Yuval Emek, Ron Karidi, Moshe Tennenholtz & Aviv Zohar (2011): Mechanisms for multilevel marketing. In: Proceedings of the 12th ACM conference on Electronic commerce (EC), San Jose, Califronia, pp. 209–218, doi:http://dx.doi.org/10.1145/1993574.1993606.
 [8] Mark S. Fox (1981): An organizational view of distributed systems. IEEE Transactions on Systems, Man and Cybernetics 11(1), pp. 70–80, doi:http://dx.doi.org/10.1109/TSMC.1981.4308580.
 [9] Jay R. Galbraith (1973): Designing Complex Organizations. AddisonWesley.
 [10] Lixin Gao & Jeniffer Rexford (2001): Stable internet routing without global coordination. IEEE/ACM Transactions on Networking 9(6), pp. 681–692, doi:http://dx.doi.org/10.1109/90.974523.
 [11] Timothy G. Griffin & João Luís Sobrinho (2005): Metarouting. In: Proceedings of the 2005 conference on Applications, technologies, architectures, and protocols for computer communications (SIGCOMM), Philadelphia, Pennsylvania, pp. 1–12, doi:http://dx.doi.org/10.1145/1090191.1080094.
 [12] Shai Herzog, Scott Shenker & Deborah Estrin (1997): Sharing the ”cost” of Multicast Trees: An Axiomatic Analysis. IEEE/ACM Transactions on Networking 5(6), pp. 847–860, doi:http://dx.doi.org/10.1109/90.650144.
 [13] Martin Karsten, S. Keshav, Sanjiva Prasad & Mirza Beg (2007): An axiomatic basis for communication. In: Proceedings of the 2007 conference on Applications, technologies, architectures, and protocols for computer communications (SIGCOMM), Kyoto, Japan, pp. 217–228, doi:http://dx.doi.org/10.1145/1282427.1282405.
 [14] David Kotz, Calvin Newport, Robert S. Gray, Jason Liu, Yougu Yuan & Chip Elliott (2004): Experimental evaluation of wireless simulation assumptions. In: Proceedings of the 7th ACM international symposium on Modeling, analysis and simulation of wireless and mobile systems (MSWiM), Venice, Italy, pp. 78–82, doi:http://dx.doi.org/10.1145/1023663.1023679.
 [15] Hagay Levin, Michael Schapira & Aviv Zohar (2008): Interdomain routing and games. In: Proceedings of the 40th annual ACM symposium on Theory of computing (STOC), Victoria, Canada, pp. 57–66, doi:http://dx.doi.org/10.1145/1374376.1374388.
 [16] T. W. Malone (1986): Informational Efficiency in Networks and Hierarchies. Sloan School of Management Working Paper 1849, MIT.
 [17] James G. March & Herbert A. Simon (1958): Organizations. John Wiley and Sons.
 [18] Yan Lindsay Sun, Wei Yu, Zhu Han & K. J.R. Liu (2006): Information theoretic framework of trust modeling and evaluation for ad hoc networks. IEEE Journal on Selected Areas in Communications 24(2), pp. 305–317, doi:http://dx.doi.org/10.1109/JSAC.2005.861389.
 [19] Tom S. Verma & Judea Pearl (1988): Causal Networks: Semantics and Expressiveness. In: Proceedings of the 4th Conference on Uncertainty in Artificial Intelligence (UAI), pp. 69–78.