GMA: A Pareto Optimal Distributed Resource-Allocation Algorithm
GGMA: A Pareto Optimal DistributedResource-Allocation Algorithm
GIACOMO GIULIARI, MARC WYSS, MARKUS LEGNER, and ADRIAN PERRIG,
ETH Zurich, SwitzerlandTo address the rising demand for strong packet delivery guarantees in networking, we study a novelway to perform graph resource allocation. We first introduce allocation graphs , in which nodes canindependently set local resource limits based on physical constraints or policy decisions. In thisscenario we formalize the distributed path-allocation (PA dist ) problem, which consists in allocatingresources to paths considering only local on-path information—importantly, not knowing whichother paths could have an allocation—while at the same time achieving the global property of neverexceeding available resources.Our core contribution, the global myopic allocation (GMA) algorithm, is a solution to thisproblem. We prove that GMA can compute unconditional allocations for all paths on a graph, whilenever over-allocating resources. Further, we prove that GMA is Pareto optimal with respect to theallocation size, and it has linear complexity in the input size. Finally, we show with simulationsthat this theoretical result could be indeed applied to practical scenarios, as the resulting pathallocations are large enough to fit the requirements of practically relevant applications.
Allocating resources such as bandwidth in a network has proven to be a difficult problemfrom both a theoretical and practical perspective: in many cases, networks consist ofindependent nodes without central controller and without a global view of the topologyand available resources. Furthermore, these nodes often have their own policies on how toallocate resources. To the best of our knowledge, the theoretical networking literature islacking solutions that address this distributed setting.In this paper, we consider allocation graphs , directed graphs consisting of independentnodes augmented with local policies, i.e., the amount of resources each node allocates fortransit between any pair of neighbors. While we interpret the resources as bandwidth,other interpretations—like computations on behalf of the neighbors—are possible as well.For any path in the allocation graph, we want to myopically compute a static allocation,i.e., based only on the local policies of on-path nodes. This allocation should guarantee thatno local allocation is ever exceeded, even when all path allocations in the network are fullyused simultaneously. This is resource allocation is therefore unconditional , since the sizeof one allocation is completely independent of any other allocation, and not determinedby an admission process, and thus cannot be influenced by single off-path nodes. Inparticular, nodes do not need to keep track of allocations as each individual allocation isvalid independently of whether or not any other allocations are used. We formalize theproblem of finding the size of such allocations as the distributed path allocation (PA dist )problem. Two major questions then arise: (i) Can unconditional resource allocation indeedbe performed in a distributed setting, where nodes have only partial information on thenetwork, without creating over-allocation? And (ii), since an allocation is implicitly createdfor every path in the network, can allocations be large enough to be useful in practice? a r X i v : . [ c s . N I] F e b IROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland G.Giuliari, M.Wyss, M.Legner, and A.Perrig
Our work addresses these problems, finding that it is possible to both avoid over-allocation and create allocations that meet the demands of a number of modern criticalapplications at the same time. We show this constructively, by proposing the first uncondi-tional resource allocation algorithm: the global myopic allocation (GMA) algorithm. GMAinterprets each node’s local allocations as both capacity limits that must not be exceededand as policy decisions about the relative importance of links to neighbors. It efficientlycomputes allocations that scale with these local policies, and ensures that capacities are notover-allocated. We prove that GMA fulfills all desired properties and that it is
Pareto optimal with respect to all other algorithms that solve the PA dist problem. Finally, we simulateGMA on random graphs, chosen to model real-world use cases; we evaluate the size of theresulting path allocations and show that they are viable for practical applications.
Practical relevance of the PA dist problem.
Over the past decades, computer networkshave predominantly relied on the best-effort paradigm. End-points run congestion-controlalgorithms to prevent a congestion-induced collapse of the network [13, 15], but no furtherguarantees for packet delivery or quality of service can be given. This has been shownto work reasonably well for many applications like web browsing, but it is becomingincreasingly clear that it is far from optimal in terms of performance and fairness [9, 26].Although the networking community has developed several protocols to reserve re-sources for individual connections [5, 6, 19], none of them has seen widespread adoptionbecause of their high complexity and poor scalability. These drawbacks arise in all thesesystems as they offer conditional allocations: endpoints can select the amount of resourceto allocate, the rationale being that supply and demand will eventually lead to optimalresource utilization. However, this also means that all nodes have to store informationabout all individual requests, and check that new requests do not exceed resource capacity.An unconditional resource allocation system based on the GMA algorithm avoids thisproblem. In a network of compliant sources using such a system, nodes do not need to keeptrack of allocations as each allocation is valid independently of whether or not any otherallocations are used. Further, GMA guarantees that no over-allocation of bandwidth—andtherefore congestion—occurs. Thus, strong delivery guarantees can be provided to thecommunications in this network, without the overhead required by conditional systems.Appendix A presents overview of the critical applications that would benefit the most froman unconditional resource allocation system.
We now introduce the formalism we use throughout the paper, and characterize the path-allocation (PA) problem. Although the PA problem arises from an applied networkingcontext (as some of the terminology also suggests), we seek to provide a formulation that isnot tied to networking, such that our solution can also be applied to other areas. Therefore,we define the problem with the abstraction of allocation graphs.
Allocation graphs.
We augment the standard directed graph definition, comprisingnodes and edges, with a set of interfaces at every node. An interface denotes the end of A node can be thought of as, for example, an autonomous system in the Internet, or any other entity part ofa distributed system that acts independently from other entities.2 lobal myopic resource allocation SIROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland one of the edges attached to a node, while a local interface , which is not associated withany edge, represents internal sources or sinks (these concepts are shown in Figs. 1a and 1bon page 6). In an allocation graph, a resource —a generic quantity of interest—is associatedwith edges, and is a measure of supply. The capacity of an edge is a fixed, positive realnumber that represents the maximal amount of resource it can provide; it is denotedby cap ( 𝑘 ) 𝑖 ,IN , for the capacity of the edge incoming to interface 𝑖 of node 𝑘 , and cap ( 𝑘 ) 𝑖 ,OUT forthe outgoing edge. Furthermore, we assume that an allocation matrix 𝑀 ( 𝑘 ) is given foreach node 𝑘 . Allocation matrices are illustrated in Figs. 1b and 1c. An entry 𝑀 ( 𝑘 ) 𝑖 , 𝑗 in theallocation matrix, called pair allocation , denotes the maximal amount of resource that canbe allocated in total to all the paths incoming at interface 𝑖 and outgoing at interface 𝑗 .Allocation matrices are non-negative and not necessarily symmetric. We call the maximalamount of resource that can be allocated from an interface 𝑖 to every other interface the divergent , and the maximal amount of resource that can be allocated from every otherinterface towards an interface 𝑗 the convergent . They can be calculated as the sum of rowsor columns of 𝑀 ( 𝑘 ) , respectively: DIV ( 𝑘 ) 𝑖 = ∑︁ 𝑗 𝑀 ( 𝑘 ) 𝑖 , 𝑗 , CON ( 𝑘 ) 𝑗 = ∑︁ 𝑖 𝑀 ( 𝑘 ) 𝑖 , 𝑗 . (1)The matrix 𝑀 ( 𝑘 ) must be defined to fulfill ∀ 𝑖 . DIV ( 𝑘 ) 𝑖 ≤ cap ( 𝑘 ) 𝑖 ,IN , CON ( 𝑘 ) 𝑖 ≤ cap ( 𝑘 ) 𝑖 ,OUT , that is,neither DIV ( 𝑘 ) 𝑖 nor CON ( 𝑘 ) 𝑖 respectively exceed the capacity of the incoming and outgoingedges, connected to interface 𝑖 of node 𝑘 .Intuitively, an interface pair ( 𝑖 , 𝑗 ) is the logical connection between two interfaces ofa node, and thus a pair allocation expresses the maximal amount of resource the node iswilling to provide from one neighbor to the next. Allocation matrices can therefore beseen as a way for nodes to encode policies on the level of service they want to grant toeach pair of neighbors.In this model, we represent a path of ℓ nodes 𝑁 , . . . , 𝑁 ℓ as a list of nodes and interfacepairs 𝜋 = [( 𝑁 , 𝑖 , 𝑗 ) , ( 𝑁 , 𝑖 , 𝑗 ) , . . . , ( 𝑁 ℓ , 𝑖 ℓ , 𝑗 ℓ )] . To simplify the presentation, we willomit the nodes from the list when they are implicitly clear; we will also use the abbreviation 𝑀 ( 𝑘 ) 𝑖 , 𝑗 ≡ 𝑀 ( 𝑁 𝑘 ) 𝑖 𝑘 , 𝑗 𝑘 . We say that a path is terminated , if the first interface of the first pair and thesecond interface of the last pair are local interfaces. Otherwise the path is called preliminary .A path is considered loop-free , if it contains each node at most once. Furthermore, weuse 𝜋 𝑘 to denote the preliminary prefix-path of length 𝑘 of some terminated path 𝜋 oflength ℓ ( 𝜋 𝑘 = [( 𝑖 , 𝑗 ) , ( 𝑖 , 𝑗 ) , . . . , ( 𝑖 𝑘 , 𝑗 𝑘 )] for 1 ≤ 𝑘 < ℓ ). Finally, we call a path valid , if 𝑀 ( ) 𝑖 , 𝑗 , . . . , 𝑀 ( ℓ ) 𝑖 , 𝑗 >
0, otherwise it is invalid . The PA problem.
We are interested in the problem of allocating the resource on anallocation graph to paths. A path allocation is created when a certain amount of resourceis allocated for that path, exclusively reserving this amount on every edge and interface We use dimensionless values for the resource; in practice, these could correspond to, e.g., bandwidth (inGbps) or computations per second. This definition implicitly includes edges. Also, we assume that the interfaces match, i.e., 𝑗 ( 𝑘 − ) and 𝑖 ( 𝑘 ) areinterfaces at opposite ends of the same directed edge.3 IROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland G.Giuliari, M.Wyss, M.Legner, and A.Perrig pair of the path and thus making it unavailable for any other path. If the sum of the pathallocations traversing an edge exceeds the capacity of the edge, we say that the edge is over-allocated . Similarly, an interface pair ( 𝑖 𝑘 , 𝑗 𝑘 ) is over-allocated if this sum is larger thanits corresponding pair allocation 𝑀 ( 𝑘 ) 𝑖 , 𝑗 .Given an allocation graph and information on the allocation matrices, the PA problem isto calculate a path allocation for any path 𝜋 in this graph with the following constraint: C1 No-over-allocation:
For all allocation graphs, even if there is an allocation onevery possible valid path in the graph, no edge and no interface pair is ever over-allocated. Solving the PA problem then requires finding an algorithm A that can compute such pathallocations. We intentionally left underspecified the precise input that such an algorithmreceives, as it depends on whether the algorithm is centralized or distributed. If centralized, A ’s input is the whole network topology, as well as the allocation matrices of all the nodes.Thus, the centralized PA problem can be viewed as a variant of the multicommodity flowproblem [12], with the additional constraint that pair allocations have to be respected.In the distributed version of the PA problem (PA dist ), the algorithm has to run consistentlyon each node, with partial information about the allocation graph. Since nodes on a pathare assumed to be able to exchange information, we restrict this information by requiring A ’s input to contain only information about the path for which the path allocation iscomputed. This is captured by the following definition:The PA dist problem is to solve the PA problem with the following additional restriction: C2 Locality:
The path allocation is a function of the on-path allocation matri-ces 𝑀 ( ) , . . . , 𝑀 ( ℓ ) only.Among the set of algorithms that fit this definition, we are naturally interested in theones that lead to higher path allocations. Since a precise optimality condition on thealgorithm depends on the practical application for which it is used, we generally postulatethat meaningful algorithms provide path allocations that cannot be strictly increased. Thisdefinition is captured by Pareto optimality: Opt Optimality:
Consider a class of algorithms fulfilling the requirement of eitherPA or PA dist . Algorithm A from this class is (Pareto) optimal if there is no otheralgorithm B from the same class that can provide at least the same path allocationfor every path of every allocation graph, and a strictly better allocation for at leastone path. Formally, if there exists a graph with a path 𝜋 for which B ( 𝜋 ) = A ( 𝜋 ) + 𝛿 with 𝛿 >
0, then there exists at least one other path 𝜋 ′ , possibly in a differentgraph, where B ( 𝜋 ′ ) = A ( 𝜋 ′ ) − 𝛿 ′ with 𝛿 ′ > Paths with loops, and of arbitrary length, are also included in this definition. The loose constraint that 𝜋 ′ is possibly in a different graph comes from the fact that because of the localityproperty in the PA dist problem, the algorithm has no way to differentiate two graphs having a path with thesame nodes and allocation matrices. 4 lobal myopic resource allocation SIROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland In addition, we specify three supplementary properties that make an algorithm moreamenable to practical settings. First, the algorithm should provide non-zero allocations forall valid paths, second, we require the algorithm to be efficient in the length of the pathand the size of the on-path allocation matrices, and lastly, we enforce stricter requirementson the policy of individual nodes with the monotonicity property: if a node increases oneof its pair allocations, we expect all path allocations crossing the interface pair to at leastnot decrease. Increasing one pair allocation also increases the corresponding divergent andconvergent, while all other pair allocations that contribute to this convergent or divergentremain the same. Therefore the relative contribution of the increased pair allocationbecomes higher, while the relative contribution of the other pair allocations decreases.This way, a node’s allocation matrix can also be understood as a policy that defines therelative importance of its neighbors. Since a path containing loops might traverse both apair allocation with increased importance and one with decreased importance in a node,monotonicity is only meaningful in the context of loop-free paths.
S1 Usability:
For every valid path 𝜋 , the resulting allocation is positive ( A ( 𝜋 ) > S2 Efficiency:
Algorithm A should have at most polynomial complexity as a functionof input size. Specifically, for PA dist this means polynomial in the total size of theallocation matrices of on-path nodes. This is a relatively loose requirement, wewill show a linear algorithm in the following. S3 Monotonicity:
If the pair allocation of some node 𝑘 on a loop-free path 𝜋 isincreased and all other allocations remain unchanged, the resulting allocation mustnot decrease: 𝑀 ( 𝑘 ) 𝑖 , 𝑗 ≤ (cid:101) 𝑀 ( 𝑘 ) 𝑖 , 𝑗 = ⇒ A ( 𝜋 ) ≤ (cid:101) A ( 𝜋 ) .The challenge of devising an optimal PA dist algorithm is clear: A can only rely on a myopic view of the path, without any further knowledge about the larger graph. However,it has to achieve the global constraints of Pareto-optimality and no-over-allocation, whichconsider the result of performing allocations on all valid paths.In the remainder of the paper, we present the global myopic allocation (GMA) algorithmas a solution to the PA dist problem. GMA fulfills requirements C1 and C2, and is optimalaccording to Opt, which we formally prove in §4. Furthermore, we prove in Appendix Ethat GMA also satisfies all the supplementary requirements (S1–S3). We present the GMA algorithm in three steps: starting from a simple first-cut approach,at each step we present a refinement of the previous algorithm. This section is meant toprovide a profound yet intuitive understanding of the GMA algorithm and its properties—accompanied by the example in Fig. 1a—leading to the final formulation of GMA in Eq. (10).
As a first attempt to achieve no-over-allocation, we take the pair allocation of the firstnode on a path, and multiply it by the ratio of the pair allocation and the divergent foreach of the traversed interface pairs. With this approach, each node receives a preliminaryallocation from the previous node, fairly splits it among all interfaces according to the pair IROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland G.Giuliari, M.Wyss, M.Legner, and A.Perrig
Node BAA A C C C C b c defgh qpra
11 1 121 11 π π (a) An allocation graph. Internalinterface p
Maximumtotal allocationfor the pair (d,q)
CON d DIV c M c,d = (A) Interface d dp qc (b)
Detailed structure of A . Allocation matrixfor node A : c d p qcdpq 0110 1001 1001 0110 iface OUT iface IN CON d DIV c M c,d(A) M (A) (c) Allocation matrix of A . Fig. 1.
Example of an allocation graph . Pair allocations are represented in Fig. 1a bydashed lines—their size shown by the number in the respective node. If two interfaces are notconnected by dashed lines, their pair allocation is zero. All pair allocations are bidirectional,as shown in Fig. 1b. For clarity, we use globally unique interface identifiers. Figure 1a alsoshows paths 𝜋 and 𝜋 , used in the examples ( 𝜋 is the reverse of 𝜋 ). allocations, and passes it on to the next node. This leads to the following formula: A ( 𝜋 ) = 𝑀 ( ) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 . (2) Example
Consider the path 𝜋 = [( A , a , b ) , ( A , c , d ) , ( B , e , f ) , ( C , g , h )] in Fig. 1a. Then,Eq. (2) results in an allocation A ( 𝜋 ) = · · · = . To understand the idea behind this formula we consider some node 𝑘 with interface 𝑖 ,connected through this interface to a neighboring node 𝑛 . If node 𝑛 can guarantee that thesum the preliminary allocations of all preliminary paths going towards node 𝑘 is at most DIV ( 𝑘 ) 𝑖 , then A ensures that for each of node 𝑘 ’s interfaces 𝑗 , the sum of all preliminaryallocations of all preliminary paths going through ( 𝑖 , 𝑗 ) is at most 𝑀 ( 𝑘 ) 𝑖 , 𝑗 . If all neighborscan provide this guarantee, no pair allocation of node 𝑘 will be over-allocated, whichimplies that also none of its convergents will be over-allocated. If node 𝑘 ’s convergents aresmaller or equal to the corresponding divergents of its neighbors, also node 𝑘 can give thisguarantee to all of its neighbors. Therefore A will never cause over-allocation, if everynode’s convergents are smaller or equal to the corresponding divergents of its neighbors —whichis an assumption we want to get rid of. Example
The graph in Fig. 1a ensures that the divergent of a node is always largerthan the convergent of the previous node when going upwards . Going downwards , this isnot the case. Indeed, already two paths 𝜋 = [( B , r , e ) , ( A , d , 𝑐 ) , ( A , b , a )] with A ( 𝜋 ) = lobal myopic resource allocation SIROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland · · = and 𝜋 = [( C , h , g ) , ( B , f , e ) , ( A , d , 𝑐 ) , ( A , b , a )] (reverse of 𝜋 ) with A ( 𝜋 ) = · · · = together cause an over-allocation of interface pairs ( d , c ) and ( b , a ) . As over-allocation with A can only occur when some node’s convergent is larger thanthe corresponding divergent of its neighbor, we can normalize each preliminary allocationto compensate this disparity. More concretely, if CON ( 𝑘 − ) 𝑖 > DIV ( 𝑘 ) 𝑗 for an on-path node 𝑘 , the preliminary allocation from node 𝑘 − DIV ( 𝑘 ) 𝑗 CON ( 𝑘 − ) 𝑖 · 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑗 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 − ) 𝑖 . (3)Adapting Eq. (2) to this modification gives rise to the following formula: A ( 𝜋 ) = 𝑀 ( ) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 max { CON ( 𝑘 − ) 𝑗 , DIV ( 𝑘 ) 𝑖 } . (4) Example
We find A ( 𝜋 ) = · · · = = A ( 𝜋 ) and A ( 𝜋 ) = · · = . This algorithm will never cause over-allocation, which follows directly from our proof in§4.1. Unfortunately, A is neither monotonic nor Pareto optimal. We can see why this is thecase by taking a closer look at the contribution of some node 𝑘 to the calculated allocations,which consists of the values ( DIV ( 𝑘 ) 𝑖 , 𝑀 ( 𝑘 ) 𝑖 , 𝑗 , CON ( 𝑘 ) 𝑗 ) . In Eq. (4), the only subterm dependingon those values is 𝑀 ( 𝑘 ) 𝑖 , 𝑗 max { CON ( 𝑘 − ) 𝑗 , DIV ( 𝑘 ) 𝑖 } · max { CON ( 𝑘 ) 𝑗 , DIV ( 𝑘 + ) 𝑖 } . (5)Increasing 𝑀 ( 𝑘 ) 𝑖 , 𝑗 by 𝛿 >
0, which implicitly also increases
DIV ( 𝑘 ) 𝑖 and CON ( 𝑘 ) 𝑗 by 𝛿 , canpotentially contribute twice to the denominator and only once to the nominator of Eq. (5),thereby reducing all the allocations going through the interface ( 𝑖 , 𝑗 ) . Example
Consider increasing the pair allocation ( c , d ) to (cid:101) 𝑀 ( A ) c , d = , leaving everythingelse unchanged. Then, we have (cid:101) A ( 𝜋 ) = · · = < = A ( 𝜋 ) . In general, A provides suboptimal allocations when there is a node 𝑘 with “ superfluous allocations”, i.e., where DIV ( 𝑘 ) 𝑖 > CON ( 𝑘 − ) 𝑗 and CON ( 𝑘 ) 𝑗 > DIV ( 𝑘 + ) 𝑖 . We explain how toresolve this and describe GMA, a strictly better algorithm, in the next section. The main idea to resolve the violation of monotonicity and optimality is to implicitly scaledown the three-tuple of a node 𝑘 with superfluous allocations to ( 𝑠 · DIV ( 𝑘 ) 𝑖 , 𝑠 · 𝑀 ( 𝑘 ) 𝑖 , 𝑗 , 𝑠 · CON ( 𝑘 ) 𝑗 ) for 0 < 𝑠 <
1, such that either 𝑠 · DIV ( 𝑘 ) 𝑖 ≤ CON ( 𝑘 − ) 𝑗 or 𝑠 · CON ( 𝑘 ) 𝑗 ≤ DIV ( 𝑘 + ) 𝑖 .The intuition is that a third algorithm, based on A but with scaled-down three-tuples, IROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland G.Giuliari, M.Wyss, M.Legner, and A.Perrig does not cause over-allocation while observing monotonicity. We will prove later in §4that this statement indeed holds.For some arbitrary path, we now want to find a way to optimally scale down the three-tuple ( DIV ( 𝑘 ) 𝑖 , 𝑀 ( 𝑘 ) 𝑖 , 𝑗 , CON ( 𝑘 ) 𝑗 ) of each node 𝑘 . The result is a new algorithm that takes theoriginal inputs, scales them down implicitly, and finally uses A to compute the allocation.As we prove in Appendix B, down-scaling improves the resulting path allocation onlyfor the case—as considered above—in which superfluous allocations are present ( DIV ( 𝑘 ) 𝑖 > CON ( 𝑘 − ) 𝑗 and CON ( 𝑘 ) 𝑗 > DIV ( 𝑘 + ) 𝑖 ). It is therefore sufficient to scale down the divergent ofnode 𝑘 to the convergent of node 𝑘 −
1, any further scaling will not improve the allocation.This observation results in the following iterative algorithm.On a path 𝜋 with ℓ nodes, we start from node 1. As there is no previous node, scaling isnot possible, and the scaling factor is f ( ) =
1. At the second node, the convergent of thefirst node can either be smaller than the divergent of the second node, or larger. In thefirst case, we scale down the three-tuple of the second node by a factor
CON ( ) 𝑗 / DIV ( ) 𝑖 .In the second case, no scaling down is possible. Both cases combined, we scale down thethree-tuples of node 2 by f ( ) = min { CON ( ) 𝑗 / DIV ( ) 𝑖 } , and so the first factor of theproduct in Eq. (4) becomes 𝑀 ( ) 𝑖 , 𝑗 · f ( ) max { CON ( ) 𝑗 , DIV ( ) 𝑖 · f ( ) } = 𝑀 ( ) 𝑖 , 𝑗 · f ( ) CON ( ) 𝑗 . (6)At the third node this case distinction is repeated. However, recall that the convergentof the second node might have been scaled down, so we have to use the value ( f ( ) · CON ( ) 𝑗 ) instead of CON ( ) 𝑗 in the computation. Therefore, taking f ( ) = min { ( CON ( ) 𝑗 · f ( ) )/ DIV ( ) 𝑖 } , we obtain the third factor of the product in Eq. (4): 𝑀 ( ) 𝑖 , 𝑗 · f ( ) max { CON ( ) 𝑗 · f ( ) , DIV ( ) 𝑖 · f ( ) } = 𝑀 ( ) 𝑖 , 𝑗 · f ( ) CON ( ) 𝑗 · f ( ) . (7)Continuing this expansion, we can define the scaling factors 𝑓 recursively for each node as f ( ) = f ( 𝑘 ) = min (cid:26) CON ( 𝑘 − ) 𝑗 · f ( 𝑘 − ) DIV ( 𝑘 ) 𝑖 (cid:27) . (8)Overall, we modify Eq. (4) in the following way: G ( 𝜋 ) = 𝑀 ( ) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 · f ( 𝑘 ) CON ( 𝑘 − ) 𝑗 · f ( 𝑘 − ) = f ( ℓ ) · (cid:206) ℓ𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 (cid:206) ℓ𝑘 = CON ( 𝑘 − ) 𝑗 , (9)which is equivalent to computing A on the scaled-down input three-tuples. The last stepfollows from rearranging indices and realizing that f ( 𝑘 ) can be factored out recursively,apart from the first ( f ( ) =
1) and the last one. Instead of this recursive formulation, Eq. (9)can also be written as a direct formula (the proof can be found in Appendix C). The convergent of 𝑘 − 𝑘 + lobal myopic resource allocation SIROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland The global myopic allocation (GMA) algorithm : G ( 𝜋 ) = min 𝑥 (cid:169)(cid:173)(cid:171) 𝑥 − (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 ) 𝑗 · 𝑀 ( 𝑥 ) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = 𝑥 + 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 (cid:170)(cid:174)(cid:172) (10) Example
Consider again our example of Fig. 1a with (cid:101) 𝑀 ( A ) c , d = . In this case we haveDIV ( A ) d = > CON ( B ) e = and CON ( A ) c = > DIV ( A ) b = . The three-tuple of A can thus be scaled down by a factor of . Using Eq. (10) for the path 𝜋 , we find that theargument of the minimum is A and G ( 𝜋 ) = · · = > = (cid:101) A ( 𝜋 ) . In this section, we prove that GMA’s computation described in Eq. (10) satisfies the prop-erties defined in §2. We prove the core properties C1 and C2 in §4.2 and §4.1, respectively,and Opt in §4.3. The supplementary properties S1–S3 are proven in Appendix E.
In this subsection we prove that there is no resource overuse of any of the pair allocation 𝑀 ( 𝑘 ) 𝑖 , 𝑗 , which, by the fact that convergent and divergent of an interface must be smaller thanthe capacity of the edge connected to it, implies that there is also no overuse on any edgeof the graph. In the context of this proof, the + operator is not only used for addition, butalso for list concatenation. We denote the set of non-local interfaces of some node 𝑘 as I ( 𝑘 ) ext .We will use the notation 𝑀 ( 𝑘 ) 𝑖 , 𝑗 ( 𝜋 ) to state more precisely which path the variable refers to.We want to prove that for every node 𝑘 and all of its interface pairs, the correspondingpair allocation is greater than or equal to the sum of all resource allocations of all pathsgoing through that interface pair. For this we distinguish the following cases an interfacepair can be assigned to, and prove each case individually: Case 1:
The interface pair starts from a local interface: (⊥ , 𝑗 ) Case 2:
The interface pair ends in a local interface: ( 𝑖 , ⊥) Case 3:
The interface pair starts and ends in non-local interfaces: ( 𝑖 , 𝑗 ) Case 1:
We will prove a stronger statement, which is captured by the following lemma:
Lemma 1.
For an arbitrary node 𝐴 and an arbitrary non-local interface 𝑗 𝐴 , let 𝑆 𝑥 t be the setof terminated paths of length at most 𝑥 that start in (⊥ , 𝑗 𝐴 ) , and 𝑆 𝑥 p the set of preliminarypaths of length exactly 𝑥 that start in (⊥ , 𝑗 𝐴 ) . Then it holds ∀ 𝑥 ≥ ∑︁ 𝜋 ∈ 𝑆 𝑥 p G ( 𝜋 ) + ∑︁ 𝜋 ∈ 𝑆 𝑥 t G ( 𝜋 ) ≤ 𝑀 ( 𝐴 )⊥ , 𝑗 . (11)We emphasize that, by the definition in Eq. (10), GMA not only allows to calculate allo-cations on terminated, but also on preliminary paths. The lemma implies our originalstatement, i.e., ∀ 𝑥 ≥ (cid:205) 𝜋 ∈ 𝑆 𝑥 t G ( 𝜋 ) ≤ 𝑀 ( 𝐴 )⊥ , 𝑗 . Proof.
We prove Lemma 1 by induction over 𝑥 for an arbitrary node 𝐴 and interface 𝑗 𝐴 . IROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland G.Giuliari, M.Wyss, M.Legner, and A.Perrig
Base case ( 𝑥 = ): We have 𝑆 = { [(⊥ , 𝑗 𝐴 )] } and 𝑆 = {} , which directly implies (cid:205) 𝜋 ∈ 𝑆 G ( 𝜋 ) + (cid:205) 𝜋 ∈ 𝑆 G ( 𝜋 ) = 𝑀 ( 𝐴 )⊥ , 𝑗 ≤ 𝑀 ( 𝐴 )⊥ , 𝑗 . Inductive step:Induction hypothesis:
For a particular 𝑥 : (cid:205) 𝜋 ∈ 𝑆 𝑥 p G ( 𝜋 ) + (cid:205) 𝜋 ∈ 𝑆 𝑥 t G ( 𝜋 ) ≤ 𝑀 ( 𝐴 )⊥ , 𝑗 . To show: (cid:205) 𝜋 ∈ 𝑆 𝑥 + G ( 𝜋 ) + (cid:205) 𝜋 ∈ 𝑆 𝑥 + G ( 𝜋 ) ≤ 𝑀 ( 𝐴 )⊥ , 𝑗 . Definitions:
For some preliminary path 𝜋 of length ℓ , let node 𝑍 be the node thatis connected to 𝑗 ℓ and let the corresponding interface of 𝑍 be 𝑖 𝑍 . We define the localextension of a path 𝜋 as 𝐸 loc ( 𝜋 ) : = { 𝜋 + [( 𝑖 𝑍 , ⊥)] } , the non-local extension of a path 𝜋 as 𝐸 ext ( 𝜋 ) : = ∪ 𝑗 𝑍 ∈ I ( 𝑍 ) ext { 𝜋 + [( 𝑖 𝑍 , 𝑗 𝑍 )] } and their union as 𝐸 ( 𝜋 ) : = 𝐸 loc ( 𝜋 ) ∪ 𝐸 ext ( 𝜋 ) . Proof: ∑︁ 𝜋 ∈ 𝑆 𝑥 + G ( 𝜋 ) + ∑︁ 𝜋 ∈ 𝑆 𝑥 + G ( 𝜋 ) = (cid:169)(cid:173)(cid:171) ∑︁ 𝜋 ∈ 𝑆 𝑥 p ∑︁ 𝜙 ∈ 𝐸 ext ( 𝜋 ) G ( 𝜙 ) (cid:170)(cid:174)(cid:172) + (cid:169)(cid:173)(cid:171) ∑︁ 𝜋 ∈ 𝑆 𝑥 t G ( 𝜋 ) + ∑︁ 𝜋 ∈ 𝑆 𝑥 p ∑︁ 𝜙 ∈ 𝐸 loc ( 𝜋 ) G ( 𝜙 ) (cid:170)(cid:174)(cid:172) (12a) = ∑︁ 𝜋 ∈ 𝑆 𝑥 p ∑︁ 𝜙 ∈ 𝐸 ( 𝜋 ) G ( 𝜙 ) + ∑︁ 𝜋 ∈ 𝑆 𝑥 t G ( 𝜋 ) (12b) = ∑︁ 𝜋 ∈ 𝑆 𝑥 p ∑︁ 𝜙 ∈ 𝐸 ( 𝜋 ) min (cid:169)(cid:173)(cid:171) G ( 𝜋 ) · 𝑀 ( 𝑍 ) 𝑖 , 𝑗 DIV ( 𝑍 ) 𝑖 , ℓ (cid:214) 𝑘 = CON ( 𝑘 ) 𝑗 · 𝑀 ( 𝑍 ) 𝑖 , 𝑗 (cid:170)(cid:174)(cid:172) + ∑︁ 𝜋 ∈ 𝑆 𝑥 t G ( 𝜋 ) (12c) ≤ ∑︁ 𝜋 ∈ 𝑆 𝑥 p ∑︁ 𝜙 ∈ 𝐸 ( 𝜋 ) 𝑀 ( 𝑍 ) 𝑖 , 𝑗 DIV ( 𝑍 ) 𝑖 · G ( 𝜋 ) + ∑︁ 𝜋 ∈ 𝑆 𝑥 t G ( 𝜋 ) (12d) = ∑︁ 𝜋 ∈ 𝑆 𝑥 p G ( 𝜋 ) + ∑︁ 𝜋 ∈ 𝑆 𝑥 t G ( 𝜋 ) ≤ 𝑀 ( 𝐴 )⊥ , 𝑗 (12e)In the step from Eq. (12b) to Eq. (12c), we used the fact that when extending the path,the argument of the minimum of Eq. (10) either stays the same, or the newly addednode now minimizes the formula, which follows directly from Eq. (9). Furthermore, (cid:205) 𝜙 ∈ 𝐸 ( 𝜋 ) 𝑀 ( 𝑍 ) 𝑖 , 𝑗 = DIV ( 𝑍 ) 𝑖 explains the transition from Eq. (12d) to Eq. (12e). Case 2:
The proof is exactly the same as for case 1, except that we extend the path in thebackward instead of the forward direction. The only change required is the adaptation of thedefinitions of local and non-local extensions of a path and we use (cid:205) 𝜙 ∈ 𝐸 ( 𝜋 ) 𝑀 ( 𝑍 ) 𝑖 , 𝑗 = CON ( 𝑍 ) 𝑗 . Case 3:
Choose an arbitrary node 𝐴 . Then choose arbitrary non-local interfaces 𝑖 𝐴 , 𝑗 𝐴 ∈ I ( 𝐴 ) ext of node 𝐴 . Using exactly the same procedure as for the proof of case 2, but using ( 𝑖 𝐴 , 𝑗 𝐴 ) as the interface pair where the paths “end” (it does not terminate in a local interface), wecan show that the sum of all resource allocations for all paths ending in ( 𝑖 𝐴 , 𝑗 𝐴 ) is alwayssmaller or equal to 𝑀 ( 𝐴 ) 𝑖 , 𝑗 . We then choose an arbitrary path 𝜋 that ends in ( 𝑖 𝐴 , 𝑗 𝐴 ) . Usingexactly the same procedure as for the proof of case 1, but using ( 𝑖 𝐴 , 𝑗 𝐴 ) as the interface pairwhere the paths “begin” (it does not start in a local interface) and setting ˆ 𝑀 ( 𝐴 ) 𝑖 , 𝑗 : = G ( 𝜋 ) ,we can show that the sum of the resource allocations of all the (terminated) paths that lobal myopic resource allocation SIROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland extend 𝜋 never exceeds G ( 𝜋 ) . It follows that the sum of the resource allocations of all thepaths going through ( 𝑖 𝐴 , 𝑗 𝐴 ) never exceeds 𝑀 ( 𝐴 ) 𝑖 , 𝑗 . □ This property follows directly from Eq. (10), as the computation only involves allocation-matrix entries of the nodes on the path. □ In this section we show that GMA is optimal according to Opt, which means that there isno better local (C2) algorithm that does not over-allocate any edge or interface pair (C1).As every invocation of a local algorithm is only based on the nodes of one path, and isoblivious of all the other nodes of the graph, in order to prevent overuse the algorithm hasto consider all possible graphs containing this path. This insight is central for the proof ofoptimality and is formalized in the following lemma:
Lemma 2.
For every allocation graph and every one of its paths 𝜋 , there exists anotherallocation graph that contains a path with the same sequence of allocation matrices, wherethe pair allocation 𝑀 ( 𝑥 ) 𝑖 , 𝑗 of some on-path node 𝑥 is fully utilized (there is no available resourceleft) if there is a GMA allocation on every path containing ( 𝑥 , 𝑖 𝑥 , 𝑗 𝑥 ) in this new graph. Proof.
Let 𝜋 be an arbitrary path of an arbitrary allocation graph, and let 𝑥 be the indexfor which Eq. (10) is minimized. We construct a new allocation graph around 𝜋 as follows: • Remove all the nodes that are not part of 𝜋 . • Keep the on-path nodes, their interfaces, and their allocation matrices as they are. • For every node, create identical copies of the node for each of its occurrences on thepath (multiple copies, in case the path contains loops) and only keep the edges to theprevious and subsequent node on the path. • For all these on-path nodes, attach new nodes to the non-local interfaces that are notalready part of 𝜋 . Those new nodes only have one local and one non-local interface(the interface through which they are attached to the on-path node). • For every node 𝑘 ∈ { . . . , 𝑥 − } and each of its interfaces (cid:101) 𝑖 to which a new nodewas attached, the pair allocation (from its local to its non-local interface) of the newnode is set to DIV ( 𝑘 ) (cid:101) 𝑖 . This implies that also the divergent (at the local interface) andthe convergent (at the non-local interface) of the new node are equal to DIV ( 𝑘 ) (cid:101) 𝑖 . • For 𝑥 , the newly attached nodes can have arbitrary allocation-matrix entries. • For every node 𝑘 ∈ { 𝑥 + . . . , ℓ } and each of its interfaces (cid:101) 𝑗 to which a new nodewas attached, the pair allocation (from its non-local to its local interface) of the newnode is set to CON ( 𝑘 ) (cid:101) 𝑗 . This implies that also the divergent (at the non-local interface)and the convergent (at the local interface) of the new node are equal to CON ( 𝑘 ) (cid:101) 𝑗 .Given that there is a GMA allocation on every possible path (in our new graph) goingthrough ( 𝑖 𝑥 , 𝑗 𝑥 ) , we want to show that 𝑀 ( 𝑥 ) 𝑖 , 𝑗 is fully utilized. We characterize all possiblepaths for three cases: If 1 < 𝑥 < ℓ (case 1), a path starts at a local interface of some node 𝑘 ≤ 𝑥 − IROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland G.Giuliari, M.Wyss, M.Legner, and A.Perrig of some node 𝑚 ≥ 𝑥 + 𝑥 = 𝑥 , and ends at a local interface of somenode 𝑘 ≥ 𝑥 = ℓ (case 3), everypath starts at a local interface of some node 𝑘 ≤ ℓ − ℓ . Case 1:
We use the following notation in order to simplify our proof: a ( 𝑢 ) = 𝑀 ( 𝑢 ) 𝑖 , 𝑗 CON ( 𝑢 ) 𝑗 , b ( 𝑢 ) = 𝑀 ( 𝑢 ) 𝑖 , 𝑗 DIV ( 𝑢 ) 𝑖 (13)Let 𝑅 𝑢 be the sum of all allocations of all the nodes 𝑘 ∈ { . . . , 𝑥 − } starting either at alocal interface or at the local interface of some of its attached nodes, and ending either ata local interface of node 𝑢 or at the local interface of some of its attached nodes, dividedby 𝑀 ( 𝑥 ) 𝑖 , 𝑗 . Thus, we need to prove 𝑀 ( 𝑥 ) 𝑖 , 𝑗 · ℓ ∑︁ 𝑢 = 𝑥 + 𝑅 𝑢 = 𝑀 ( 𝑥 ) 𝑖 , 𝑗 ⇔ ℓ ∑︁ 𝑢 = 𝑥 + 𝑅 𝑢 =
1. (14)We formulate two lemmas, both of which are proven in Appendix D.2:
Lemma 3.
For 𝑎 , . . . , 𝑎 𝑥 > it holds that (cid:206) 𝑥𝑖 = 𝑎 𝑖 + (cid:205) 𝑥𝑘 = (cid:0) ( − 𝑎 𝑘 ) · (cid:206) 𝑥𝑖 = 𝑘 + 𝑎 𝑖 (cid:1) = . Lemma 4. 𝑅 ℓ = (cid:206) ℓ − 𝑘 = 𝑥 + b ( 𝑘 ) and 𝑅 𝑢 = ( (cid:206) 𝑢 − 𝑘 = 𝑥 + b ( 𝑘 ) ) · ( − b ( 𝑢 ) ) (for 𝑥 + ≤ 𝑢 ≤ ℓ − ). These lemmas immediately imply our proof goal: ℓ ∑︁ 𝑢 = 𝑥 + 𝑅 𝑢 = ℓ − ∑︁ 𝑢 = 𝑥 + 𝑅 𝑢 + 𝑅 ℓ = ℓ − ∑︁ 𝑢 = 𝑥 + 𝑢 − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) · ( − b ( 𝑢 ) ) + ℓ − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) =
1. (15)
Case 2+3:
The proofs follow a simplified structure of the proof of case 1. □ Theorem 5.
GMA is Pareto optimal among all algorithms in the sense of Opt.
Proof.
This follows directly from Lemma 2: for a given path (nodes with their associatedallocation matrices) there always exists a graph containing that path, where increasingthe allocation calculated by GMA will cause overuse, which can only be prevented bydecreasing allocations on other paths. □ A potential limitation of GMA is the size of the allocations it provides. We proved thatGMA’s path allocations are small enough that, even if all the paths have an allocation,no over-allocation occurs. In this section we show that GMA’s path allocations are stilllarge enough to satisfy the requirements of the critical applications that motivate thiswork (details in Appendix A). We do this by simulating GMA on random graphs, therebyexploring the trade-offs between graph topology and the resulting GMA allocation sizes. lobal myopic resource allocation SIROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland Graph topology.
We use the well-known Barabási–Albert random graph model togenerate allocation graphs [4]. This algorithm is designed to produce scale-free randomgraphs, which are found to well approximate real-life technological networks [8].At the topological level, the size of a GMA allocation for some path depends on (i) thedegree of the nodes on the path, as it determines the size of the allocation matrix, (ii) thelength of the path, since Eq. (10) contains an iterative product on each node on the path,and (iii) the capacity of each on-path edge (discussed in the next paragraph). We aggregatethe first two metrics at the graph level by considering the average node degree and thediameter of the graph, i.e., the length of the longest path. Therefore, we generate 275random graphs for our simulations, with 8 to 2048 nodes, varying average degree anddiameter. Additional details on graph generation can be found in Appendix G.
Resources and Allocation matrices.
In the simulations, we model the varying band-width of real-world network links by assigning different capacities to the edges of graphs.To assign capacity to edges based on a degree–gravity model: the capacity of a (directed)edge is selected proportionally to the product of the degrees of its adjacent nodes [18]. Wediscretize these values to 10 different levels from 40 to 400. This choice is motivated by realnetworks, where more connected nodes also tend to have higher forwarding capabilities.Based on these edge capacities, we then create the allocation matrices. Although eachnode might have different policies, simulating those policies for the nodes introducesmany additional degrees of complexity, beyond the scope of this evaluation. Therefore,we assume a simple proportional sharing policy to construct an allocation matrix, whichwe obtain by performing the following three steps for each node 𝑘 and all its interfaces 𝑖 and 𝑗 : (i) 𝑀 ( 𝑘 ) 𝑖 , 𝑗 ← cap ( 𝑘 ) 𝑖 , while for the local interface ⊥ , 𝑀 ( 𝑘 )⊥ , 𝑗 , 𝑀 ( 𝑘 ) 𝑖 , ⊥ ← max 𝑖 { cap ( 𝑘 ) 𝑖 } ; (ii) 𝑀 ( 𝑘 ) 𝑖 , 𝑗 ← 𝑀 ( 𝑘 ) 𝑖 , 𝑗 · cap ( 𝑘 ) 𝑗 / CON ( 𝑘 ) 𝑗 ; (iii) if DIV ( 𝑘 ) 𝑖 > cap ( 𝑘 ) 𝑗 , then 𝑀 ( 𝑘 ) 𝑖 , 𝑗 ← 𝑀 ( 𝑘 ) 𝑖 , 𝑗 · cap ( 𝑘 ) 𝑖 / DIV ( 𝑘 ) 𝑖 . Path selection.
In this simulation, the goal is to create path allocations between everypair of nodes. Motivated again by networking practice, we consider allocations made on 𝑘 -shortest paths, with 𝑘 ∈ {
1, 2, 3 } . For 𝑘 =
1, we create allocations on the single-shortestpath for every pair of nodes. However, GMA can compute an allocation for any path inthe graph. Therefore, if two nodes are able to use multiple paths simultaneously, the totalallocation for the pair is the aggregate of the allocations on the individual paths. We thencreate allocations on the 2- and 3-shortest paths for every pair of nodes, and evaluate theadvantage that multipath communication can provide.
Metrics: 𝜶 -cover. Given a source node, the size of the GMA allocations to differentdestination nodes can vary greatly, and computing average statistics does not reflectthe binary nature of critical application requirements: either the allocation exceeds theminimum usability threshold, or the allocation is not useful (see Appendix A for details).Therefore, we introduce a new metric to aggregate this information and compare theeffectiveness of GMA across different topologies, called 𝛼 -cover. Given a source node in These two factors are closely related with each other and to the number of nodes in the graph: keeping thenumber of nodes fixed, a graph with higher average node degree will inevitably have smaller diameter.13
IROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland G.Giuliari, M.Wyss, M.Legner, and A.Perrig C o v e r Median caseBest caseWorst case
Fig. 2.
Minimum, maximum, and me-dian single-path − -cover. The high-lighted markers show the max ✚ , median ● , and min ✖ cover for one specific graph. C o v e r i m p r o v . ( % ) SPs: 2SPs: 3
Fig. 3.
Improvement in the median − -cover when using the 2- and 3-shortestpath selection schemes instead of the singleshortest path selection scheme. a graph and a path selection strategy, the node’s 𝛼 -cover is the fraction of destinationnodes to which the sum of the path allocations computed over the available paths is morethan 𝛼 . Therefore, 𝛼 -cover captures the size of the sub-graph with which the source nodecan communicate using an adequately-sized GMA allocation. For example, a node with a10 − -cover of 0.7 can reach 70 % of the nodes in the graphs with an allocation of at least 10 − .Naturally, higher values of 𝛼 -cover are better. We define the median 𝛼 -cover of a graphas the median of the 𝛼 -covers of its nodes (and similarly for minimum and maximum).While different applications will require different values of 𝛼 , we use a 10 − -cover inall simulations. Again, this is motivated by practical considerations: if we set 1 unit ofresource = 1 Gbps, 10 − units correspond to 100 kbps. The applications that motivate thiswork, such as blockchains and inter-bank transaction clearing, can comfortably operatewithin this boundary. For each of the generated graphs, Fig. 2 relates its minimum, maximum, and median 10 − -cover to the number of nodes, where we used the single shortest path selection scheme.We see that all graphs have a median cover in the upper 50 % range , while the minimumcover decreases to just a few percent for graphs with a high number of nodes. Graphs withlower median cover are the ones that have low or high diameter, as Fig. 5 in Appendix Gshows. This confirms the observation that large allocation matrices (low diameter) or longpaths (high diameter) decrease the size of allocations. Further, in all graphs, we find atleast one node with cover greater than 89 %, and observe that the cover increases with thedegree of the nodes: central nodes have therefore better cover, an important property inpractical applications. An example is shown in Fig. 6 in Appendix G.Figure 3 shows the improvement in the median cover of the graphs when using the 2- or3-shortest path selection schemes in place of of the single shortest path selection scheme.We see that the returns for using additional paths are high, reaching over 120 % increaseover single-path cover when using three paths instead of one. Graphs with lower numberof nodes benefit less from the additional paths, as many already achieve perfect cover. Ahigher 𝑘 could further increase the cover, but this exploration is left to future work. lobal myopic resource allocation SIROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland Flow problems and algorithms.
A class of theoretical problems that are related toour path-allocation problem are multi-commodity flow problems , which have been studiedextensively since the 1950s [12]. The variant which is most closely related to our setting isthe maximum concurrent flow problem [20], where fairness between different commoditiesis taken into account, but the ratios are set by a central controller. All variants differ fromour PA dist problem in that they (i) do not consider independent nodes with their ownproperties and (ii) require a global knowledge of the topology. They have thus been appliedmostly to centrally controlled networks [10].
Resource allocation in networks.
Bandwidth guarantees were a central conceptof virtual-circuit architectures like ATM [19]. For today’s IP-based Internet, bandwidthreservations have been proposed in the Integrated Services (IntServ) architecture [6], inwhich they are negotiated through the Resource Reservation Protocol (RSVP) [7]. However,due to its high reliance on in-network state, IntServ has never been widely adopted. Further,these systems do not specify how much bandwidth should be allocated to flows. The Internetoverwhelmingly relies on congestion control [13, 15] as a distributed mechanism forbandwidth allocation between flows, which provides no guarantees to the communicationpartners and has no support to implement traffic policies. There exists a wide range oftraffic-engineering systems suitable to intra-domain contexts, such as MPLS [17] withOSPF-TE [14] and RSVP-TE [3] or SDN-based solutions [21]. However, in contrast to GMA,which supports autonomous nodes, all these systems require a central controller.
In this paper, we revisit an old networking and distributed-systems problem—how toallocate resources in a network of independent nodes when no central controller is available.After introducing the formalism of allocation graphs, in which each node is associated with local allocations based on available resources and policies, we ask a novel question: can analgorithm compute resource allocations for all paths in an allocation graph, without causingover-allocation, and relying only on local information? This is the foundation of the PA dist problem. We answer with our global myopic allocation (GMA) algorithm, showing howthese local decisions give rise to meaningful and sustainable global allocations. Further, weprove that these allocations are Pareto-optimal, and therefore cannot be trivially improved.
Relevance to networking.
The allocations calculated through GMA are static anddepend only on the policies of on-path nodes; in particular, they are independent of otherallocations and resource demands. They thus provide strong minimal resource guaranteesthat are valid under all networking conditions and are particularly relevant for applicationswhere centralized solutions based on dedicated network infrastructure are too expensiveor inherently impossible. By their very nature, these guaranteed allocations are smallerthan what can be achieved through dynamic resource-allocation systems. However, oursimulations show that, even under conservative assumptions, GMA provides sufficientcommunication bandwidth to virtually all pairs of nodes in small to medium-sized networks. IROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland G.Giuliari, M.Wyss, M.Legner, and A.Perrig
Thus, GMA-based allocations with strong availability guarantees could complement othersystems with higher network utilization but weaker guarantees, such as best-effort traffic.
Future work.
The novel results on graph resource allocation presented in this paperopen many new and exciting avenues for future research, both theoretical and applied.First of all, this paper did not explore the fairness implications of GMA allocations. Theproperties of monotonicity and Pareto-optimality, along with the proportional use of pairallocations in the computation, point towards a strong neighbor-based fairness notion. Weleave the analysis of such a notion to future work. Second, we see great potential for furtherresearch on PA dist algorithms. For instance, Pareto optimality does not satisfy the questionof whether GMA is optimal in a global sense, i.e., it maximizes a function over all pathallocations—their sum, for example. The discovery of globally optimal PA dist algorithmscould lead to interesting theoretical advancements, with profound practical implications.Finally, in this paper we have discussed how allocations can be computed in a distributedsetting. This is orthogonal to the development of specific protocols necessary to communi-cate and authenticate necessary information and enforce the allocations. Future researchcould focus on the development of such a protocol and investigate its interplay with othernetworking paradigms like best-effort traffic and congestion control.
References [1] Maria Apostolaki, Aviv Zohar, and Laurent Vanbever. 2017. Hijacking Bitcoin: Routing Attacks onCryptocurrencies. In
RSVP-TE: Extensions to RSVPfor LSP Tunnels . RFC 3209.[4] A.-L. Barabási and R. Albert. 1999. Emergence of Scaling in Random Networks.
Science
Proceedings of NDSS .[6] R. Braden, D. Clark, and S. Shenker. 1994.
Integrated Services in the Internet Architecture: an Overview .RFC 1633.[7] R. Braden, L. Zhang, S. Berson, S. Herzog, and S. Jamin. 1997.
Resource ReSerVation Protocol (RSVP) –Version 1 Functional Specification . RFC 2205.[8] A. D. Broido and A. Clauset. 2019. Scale-free networks are rare.
Nature Communications
10, 1 (2019).[9] L. Brown, G. Ananthanarayanan, E. Katz-Bassett, A. Krishnamurthy, S. Ratnasamy, M. Schapira, and S.Shenker. 2020. On the Future of Congestion Control for the Public Internet. In
ACM HotNets .[10] T. Chang, Y. Tang, Y. Chen, W. Hsu, and M. Tsai. 2018. Maximum Concurrent Flow Problem in MPLS-BasedSoftware Defined Networks. In
IEEE Global Communications Conference (GLOBECOM) .[11] Kyle Croman, Christian Decker, Ittay Eyal, Adem Efe Gencer, Ari Juels, Ahmed Kosba, Andrew Miller,Prateek Saxena, Elaine Shi, Emin Gün Sirer, Dawn Song, and Roger Wattenhofer. 2016. On ScalingDecentralized Blockchains. In
Financial Cryptography and Data Security . Springer Berlin Heidelberg.[12] L. R. Ford Jr and D. R. Fulkerson. 1958. A suggested computation for maximal multi-commodity networkflows.
Management Science
5, 1 (1958).[13] V. Jacobson. 1988. Congestion Avoidance and Control.
SIGCOMM CCR
18, 4 (1988).[14] D. Katz, K. Kompella, and D. Yeung. 2003.
Traffic Engineering (TE) Extensions to OSPF Version 2 . RFC 3630.[15] Frank P Kelly, Aman K Maulloo, and David KH Tan. 1998. Rate control for communication networks:shadow prices, proportional fairness and stability.
Journal of the Operational Research society
49, 3 (1998).[16] The Libra Association. 2020. White Paper v2.0. https://libra.org/en-US/white-paper/.[17] E. Rosen, A. Viswanathan, and R. Callon. 2001.
Multiprotocol Label Switching Architecture . RFC 3031.16 lobal myopic resource allocation SIROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland [18] L. Saino, C. Cocora, and G. Pavlou. 2013. A Toolchain for Simplifying Network Simulation Setup. In
Proceedings of the International Conference on Simulation Tools and Techniques .[19] Hiroshi Sait¯o. 1994.
Teletraffic Technologies in ATM Networks .[20] F. Shahrokhi and D. W. Matula. 1990. The Maximum Concurrent Flow Problem.
J. ACM
37, 2 (1990).[21] Z. Shu, J. Wan, J. Lin, S. Wang, D. Li, S. Rho, and C. Yang. 2016. Traffic engineering in software-definednetworking: Measurement and management.
IEEE Access
ACM HotNets .17
IROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland G.Giuliari, M.Wyss, M.Legner, and A.Perrig
A Critical networking applications
For many critical applications, reliability, security, and scalability of communication sys-tems are of paramount importance. These application require relatively low traffic volumes,but availability has to be guaranteed at all times for these services to achieve their task.We provide two examples of such applications.The first is inter-bank transactions. The SWIFT financial messaging network is a promi-nent example in this market, as it handles transactions between its 11 000 member insti-tutions and accounts for half of global cross-border inter-bank transactions [2]. Despitethe importance of these transactions for today’s financial system, their actual bandwidthrequirements are modest. On an average day, SWIFT processes around 40 million messagesin total [23], which corresponds to fewer than 500 messages per second—globally. Eachtransaction is encoded in an XML file of variable size, usually around a few kilobytes(estimate based on real-world examples of the XML-encoded ISO 20022 transaction mes-sage format [22]), resulting on an average load of less than 1 Mbps between all 11 000institutions.The Bitcoin network provides a second example. Each Bitcoin miner node needs to runthe consensus protocol in order to verify the transaction that are being committed to theblockchain. Today, the network processes 7 transactions per second [11], with an averagetransaction size of 500 B, and very rarely above 1 kB [24, 25]. This directly translatesto modest bandwidth requirements of less than 100 kbps per node. However, delays orinterruptions of communication can result in financial loss [1]. A further complicationcomplication that arises in blockchain networks is decentralization. As nodes are run bydifferent—and often untrusted—entities, centralized solutions are avoided as they introducea single point of failure. Even permissioned blockchains, like the Libra network, imposenode decentralization by design as a way to build trust [16].In general, critical applications share these common traits: (i) the required traffic volumesare relatively small, less than 100 kbps per end-to-end communication, but (ii) connectivityhas to be ensured at all times (availability), (iii) even in the presence of denial-of-service(DoS) attacks (security). Finally, (iv) the guarantees have to be extended to large networks,in many cases under the assumption of decentralized control.
B Cases in which down-scaling improves the allocation calculated by Eq. (4)
Lemma 6.
Let 𝜋 be an arbitrary path consisting of ℓ nodes, and let 𝑘 be one if its on-pathnodes. If < 𝑘 < ℓ , scaling down its contributed values ( DIV ( 𝑘 ) 𝑖 , 𝑀 ( 𝑘 ) 𝑖 , 𝑗 , CON ( 𝑘 ) 𝑗 ) (withoutscaling down any values of other nodes) can only improve A ( 𝜋 ) if DIV ( 𝑘 ) 𝑖 > CON ( 𝑘 − ) 𝑗 andCON ( 𝑘 ) 𝑗 > DIV ( 𝑘 + ) 𝑖 .If 𝑘 = or 𝑘 = ℓ , scaling-down its hop values will never increase A ( 𝜋 ) . Proof.Case < 𝑘 < ℓ : The contributed values of node 𝑘 are part of the following factor of Eq. (4): 𝐹 : = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 max { CON ( 𝑘 − ) 𝑗 , DIV ( 𝑘 ) 𝑖 } · max { CON ( 𝑘 ) 𝑗 , DIV ( 𝑘 + ) 𝑖 } . (16) lobal myopic resource allocation SIROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland We write ˜ 𝐹 for the same factor after scaling down the values ( DIV ( 𝑘 ) 𝑖 , 𝑀 ( 𝑘 ) 𝑖 , 𝑗 , CON ( 𝑘 ) 𝑗 ) . Case ( DIV ( 𝑘 ) 𝑖 > CON ( 𝑘 − ) 𝑗 ) ∧ ( CON ( 𝑘 ) 𝑗 > DIV ( 𝑘 + ) 𝑖 ) : Scaling down the contributedvalues by 𝑠 : = CON ( 𝑘 − ) 𝑗 / DIV ( 𝑘 ) 𝑖 < 𝐹 = 𝑠 · 𝑀 ( 𝑘 ) 𝑖 , 𝑗 𝑠 · DIV ( 𝑘 ) 𝑖 · max { 𝑠 · CON ( 𝑘 ) 𝑗 , DIV ( 𝑘 + ) 𝑖 } > 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 · CON ( 𝑘 ) 𝑗 = 𝐹 . (17) Case ( DIV ( 𝑘 ) 𝑖 > CON ( 𝑘 − ) 𝑗 ) ∧ ( CON ( 𝑘 ) 𝑗 ≤ DIV ( 𝑘 + ) 𝑖 ) : Scaling down the contributedvalues by 𝑠 where CON ( 𝑘 − ) 𝑗 / DIV ( 𝑘 ) 𝑖 ≤ 𝑠 < 𝐹 = 𝑠 · 𝑀 ( 𝑘 ) 𝑖 , 𝑗 𝑠 · DIV ( 𝑘 ) 𝑖 · max { 𝑠 · CON ( 𝑘 ) 𝑗 , DIV ( 𝑘 + ) 𝑖 } = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 · DIV ( 𝑘 + ) 𝑖 = 𝐹 . (18)Any further down-scaling only decreases the allocation, as shown in the last case. Case ( DIV ( 𝑘 ) 𝑖 ≤ CON ( 𝑘 − ) 𝑗 ) ∧ ( CON ( 𝑘 ) 𝑗 > DIV ( 𝑘 + ) 𝑖 ) : The proof follows the samestructure as in the previous case.
Case ( DIV ( 𝑘 ) 𝑖 ≤ CON ( 𝑘 − ) 𝑗 ) ∧ ( CON ( 𝑘 ) 𝑗 ≤ DIV ( 𝑘 + ) 𝑖 ) : Scaling down the contributedvalues by any factor 𝑠 < 𝐹 = 𝑠 · 𝑀 ( 𝑘 ) 𝑖 , 𝑗 max { CON ( 𝑘 − ) 𝑗 , 𝑠 · DIV ( 𝑘 ) 𝑖 } · max { 𝑠 · CON ( 𝑘 ) 𝑗 , DIV ( 𝑘 + ) 𝑖 } (19a) = 𝑠 · 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 − ) 𝑗 · DIV ( 𝑘 + ) 𝑖 < 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 − ) 𝑗 · DIV ( 𝑘 + ) 𝑖 = 𝐹 . (19b) Case 𝑘 = ℓ : The contributed values of node ℓ are part of the following factor of Eq. (4): 𝑀 ( ℓ ) 𝑖 , 𝑗 max { CON ( ℓ − ) 𝑗 , DIV ( ℓ ) 𝑖 } (20)Scaling down the contributed values by any factor 𝑠 < 𝑠 · 𝑀 ( ℓ ) 𝑖 , 𝑗 max { CON ( ℓ − ) 𝑗 , 𝑠 · DIV ( ℓ ) 𝑖 } = 𝑀 ( ℓ ) 𝑖 , 𝑗 max { 𝑠 · CON ( ℓ − ) 𝑗 , DIV ( ℓ ) 𝑖 } ≤ 𝑀 ( ℓ ) 𝑖 , 𝑗 max { CON ( ℓ − ) 𝑗 , DIV ( ℓ ) 𝑖 } .(21) Case 𝑘 = : The proof follows the same structure as in the case 𝑘 = ℓ . □ C Equivalence of recursive and direct GMA formulas
Lemma 7.
Equation (9) is equivalent to Eq. (10) . Proof.
We prove Lemma 7 by induction over the path length ℓ . Base case ( ℓ = ): Because 𝑓 ( ) =
1, we get 𝑀 ( ) 𝑖 , 𝑗 = 𝑓 ( ) · 𝑀 ( ) 𝑖 , 𝑗 . Inductive step: IROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland G.Giuliari, M.Wyss, M.Legner, and A.Perrig
Induction hypothesis:
For a particular ℓ : 𝑓 ( ℓ ) · (cid:206) ℓ𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 (cid:206) ℓ𝑘 = CON ( 𝑘 − ) 𝑗 = min ≤ 𝑥 ≤ ℓ (cid:18) 𝑥 − (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 ) 𝑗 · 𝑀 ( 𝑥 ) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = 𝑥 + 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 (cid:19) To show: 𝑓 ( ℓ + ) · (cid:206) ℓ + 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 (cid:206) ℓ + 𝑘 = CON ( 𝑘 − ) 𝑗 = min ≤ 𝑥 ≤ ℓ + (cid:18) 𝑥 − (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 ) 𝑗 · 𝑀 ( 𝑥 ) 𝑖 , 𝑗 · ℓ + (cid:214) 𝑘 = 𝑥 + 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 (cid:19) Proof: 𝑓 ( ℓ + ) · (cid:206) ℓ + 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 (cid:206) ℓ + 𝑘 = CON ( 𝑘 − ) 𝑗 = min (cid:18) CON ( ℓ ) 𝑗 · 𝑓 ( ℓ ) DIV ( ℓ + ) 𝑖 (cid:19) · (cid:206) ℓ + 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 (cid:206) ℓ + 𝑘 = CON ( 𝑘 − ) 𝑗 (22a) = min (cid:18) (cid:206) ℓ + 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 (cid:206) ℓ + 𝑘 = CON ( 𝑘 − ) 𝑗 , 𝑀 ( ℓ + ) 𝑖 , 𝑗 DIV ( ℓ + ) 𝑖 · 𝑓 ( ℓ ) · (cid:206) ℓ𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 (cid:206) ℓ𝑘 = CON ( 𝑘 − ) 𝑗 (cid:19) (22b) = min (cid:18) (cid:206) ℓ + 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 (cid:206) ℓ + 𝑘 = CON ( 𝑘 − ) 𝑗 , min ≤ 𝑥 ≤ ℓ (cid:18) 𝑥 − (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 ) 𝑗 · 𝑀 ( 𝑥 ) 𝑖 , 𝑗 · ℓ + (cid:214) 𝑘 = 𝑥 + 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 (cid:19) (cid:19) (22c) = min ≤ 𝑥 ≤ ℓ + (cid:18) 𝑥 − (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 ) 𝑗 · 𝑀 ( 𝑥 ) 𝑖 , 𝑗 · ℓ + (cid:214) 𝑘 = 𝑥 + 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 (cid:19) (22d)In the first step we applied the definition of 𝑓 from Eq. (8). To get Eq. (22b) we movedthe rightmost factor into the min term, and in the following step used the inductionhypothesis. The last equation follows from min ≤ 𝑥 ≤ ℓ + ( 𝑔 ( 𝑥 )) = min (cid:0) 𝑔 ( ℓ + ) , min ≤ 𝑥 ≤ ℓ ( 𝑔 ( 𝑥 )) (cid:1) ,which holds for any function 𝑔 . □ D Lemmas used in the proof of optimality
We first formulate some additional lemmas and then prove Lemmas 3 and 4 used in §4.1.To simplify the notation, we drop the nodes in the paths in this section.
D.1 Auxiliary lemmas
In the following lemmas we consider an arbitrary path 𝜋 = [( 𝑖 , 𝑗 ) , ( 𝑖 , 𝑗 ) , . . . , ( 𝑖 ℓ , 𝑗 ℓ )] and denote the index for which Eq. (10) is minimized as 𝑥 ★ . Lemma 8. If 𝑥 ★ ≥ , then the GMA allocation for the path (cid:101) 𝜋 = [( (cid:101) 𝑖 , 𝑗 ) , . . . , ( 𝑖 ℓ , 𝑗 ℓ )] beginning at some interface of node 2 is still minimized at node 𝑥 ★ . Proof. 𝑥 ★ = arg min 𝑥 (cid:169)(cid:173)(cid:171) 𝑥 − (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 ) 𝑗 · 𝑀 ( 𝑥 ) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = 𝑥 + 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 (cid:170)(cid:174)(cid:172) (23a) lobal myopic resource allocation SIROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland = arg min 𝑥 (cid:169)(cid:173)(cid:171) 𝑥 − (cid:214) 𝑘 = CON ( 𝑘 ) 𝑗 · ℓ (cid:214) 𝑘 = 𝑥 + DIV ( 𝑘 ) 𝑖 (cid:170)(cid:174)(cid:172) (23b) = arg min 𝑥 (cid:169)(cid:173)(cid:171) 𝑥 − (cid:214) 𝑘 = CON ( 𝑘 ) 𝑗 · ℓ (cid:214) 𝑘 = 𝑥 + DIV ( 𝑘 ) 𝑖 (cid:170)(cid:174)(cid:172) (23c) = arg min 𝑥 (cid:169)(cid:173)(cid:171) 𝑀 ( ) (cid:101) 𝑖 , 𝑗 CON ( ) 𝑗 · 𝑥 − (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 ) 𝑗 · 𝑀 ( 𝑥 ) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = 𝑥 + 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 (cid:170)(cid:174)(cid:172) (23d)In Eqs. (23b) and (23d) we used the fact that the allocation-matrix entries do not contributeto the argument of the minimum (they are constant among all the possible values for 𝑥 ).This is also true for the convergent of node 1 (because 𝑥 ≥ □ Lemma 9. If 𝑥 ★ ≤ ℓ − , then the GMA allocation for the path (cid:101) 𝜋 = [( 𝑖 , 𝑗 ) , ( 𝑖 , 𝑗 ) . . . , ( 𝑖 ℓ − , (cid:103) 𝑗 ℓ − )] ending at some interface of node ℓ − is still minimized at node 𝑥 ★ . Proof.
The proof follows the same structure as the proof of Lemma 8. □ Lemma 10.
When extending the path on a non-local interface (cid:101) 𝑖 of node 1 with some node0 that only consists of a local and a non-local interface to (cid:101) 𝜋 = [( 𝑖 , 𝑗 ) , ( (cid:101) 𝑖 , 𝑗 ) , . . . , ( 𝑖 ℓ , 𝑗 ℓ )] ,and given that 𝑀 ( ) 𝑖 , 𝑗 = CON ( ) 𝑗 = DIV ( ) (cid:101) 𝑖 , then the resulting allocation will be independent ofthe allocation matrix of node 0 and will still be minimized at node 𝑥 ★ . Proof.
We define 𝑔 ( 𝑥 ) : = ℓ (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 · 𝑥 − (cid:214) 𝑘 = CON ( 𝑘 ) 𝑗 · ℓ (cid:214) 𝑘 = 𝑥 + DIV ( 𝑘 ) 𝑖 , (24a) 𝑔 ( 𝑥 ) : = 𝑀 ( ) 𝑖 , 𝑗 · 𝑀 ( ) (cid:101) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 · 𝑥 − (cid:214) 𝑘 = CON ( 𝑘 ) 𝑗 · ℓ (cid:214) 𝑘 = 𝑥 + DIV ( 𝑘 ) 𝑖 . (24b)We see that 𝑔 ( 𝑥 ★ ) = G ( 𝜋 ) by def = ℓ (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 · min ≤ 𝑥 ≤ ℓ (cid:18) 𝑥 − (cid:214) 𝑘 = CON ( 𝑘 ) 𝑗 · ℓ (cid:214) 𝑘 = 𝑥 + DIV ( 𝑘 ) 𝑖 (cid:19) , (25)because 𝑥 ★ is the argument of the minimum of G ( 𝜋 ) . By multiplying the terms on bothsides of the equation with 𝑀 ( ) 𝑖 , 𝑗 · 𝑀 ( ) (cid:101) 𝑖 , 𝑗 CON ( ) 𝑗 · 𝑀 ( ) 𝑖 , 𝑗 , we get 𝑔 ( 𝑥 ★ ) = 𝑀 ( ) 𝑖 , 𝑗 · 𝑀 ( ) (cid:101) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 · min ≤ 𝑥 ≤ ℓ (cid:18) 𝑥 − (cid:214) 𝑘 = CON ( 𝑘 ) 𝑗 · ℓ (cid:214) 𝑘 = 𝑥 + DIV ( 𝑘 ) 𝑖 (cid:19) (26a) = 𝑀 ( ) 𝑖 , 𝑗 · 𝑀 ( ) (cid:101) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 · min ≤ 𝑥 ≤ ℓ (cid:18) 𝑥 − (cid:214) 𝑘 = CON ( 𝑘 ) 𝑗 · ℓ (cid:214) 𝑘 = 𝑥 + DIV ( 𝑘 ) 𝑖 (cid:19) by def = G ( (cid:101) 𝜋 ) . (26b) IROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland G.Giuliari, M.Wyss, M.Legner, and A.Perrig
Equation (26b) shows that
G ( (cid:101) 𝜋 ) is still minimized at node 𝑥 ★ ; it follows from the inequality 𝑔 ( 𝑥 ★ ) ≤ 𝑀 ( ) 𝑖 , 𝑗 CON ( ) 𝑗 · 𝑀 ( ) (cid:101) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = DIV ( 𝑘 ) 𝑖 = 𝑀 ( ) 𝑖 , 𝑗 · 𝑀 ( ) (cid:101) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = DIV ( 𝑘 ) 𝑖 .(27)Here we first used that, as 𝑥 ★ minimizes the right side of Eq. (26a), 𝑔 ( 𝑥 ★ ) is at mostas high as the expression of the minimum for index 1. The second step follows from CON ( ) 𝑗 = DIV ( ) (cid:101) 𝑖 . Note that the resulting allocation 𝑔 ( 𝑥 ) on path (cid:101) 𝜋 is independent ofnode 0, because 𝑀 ( ) 𝑖 , 𝑗 = CON ( ) 𝑗 , meaning that those terms cancel each other out, seeEq. (24b). □ Lemma 11.
When extending the path on a non-local interface (cid:101) 𝑗 ℓ of node ℓ with some node ℓ + that only consists of a local and a non-local interface to (cid:101) 𝜋 = [( 𝑖 , 𝑗 ) , . . . , ( 𝑖 ℓ , (cid:101) 𝑗 ℓ ) , ( 𝑖 ℓ + , 𝑗 ℓ + )] ,and given that 𝑀 ( ℓ + ) 𝑖 , 𝑗 = CON ( ℓ + ) 𝑖 = DIV ( ℓ ) (cid:101) 𝑗 , then the resulting allocation will be independentof the allocation matrix of node ℓ + and will still be minimized at node 𝑥 ★ . Proof.
The proof follows the same structure as the proof of Lemma 10. □ D.2 Lemmas used in main text
Lemma 3.
For 𝑎 , . . . , 𝑎 𝑥 > 𝑥 (cid:214) 𝑖 = 𝑎 𝑖 + 𝑥 ∑︁ 𝑘 = (cid:32) ( − 𝑎 𝑘 ) · 𝑥 (cid:214) 𝑖 = 𝑘 + 𝑎 𝑖 (cid:33) =
1. (28)
Proof.
We do the proof by induction.
Base case ( 𝑥 = ): 𝑎 + ( − 𝑎 ) = Inductive step:Induction hypothesis: (cid:206) 𝑥𝑖 = 𝑎 𝑖 + (cid:205) 𝑥𝑘 = (cid:0) ( − 𝑎 𝑘 ) · (cid:206) 𝑥𝑖 = 𝑘 + 𝑎 𝑖 (cid:1) = To show: (cid:206) 𝑥 + 𝑖 = 𝑎 𝑖 + (cid:205) 𝑥 + 𝑘 = (cid:0) ( − 𝑎 𝑘 ) · (cid:206) 𝑥 + 𝑖 = 𝑘 + 𝑎 𝑖 (cid:1) = Proof: 𝑥 + (cid:214) 𝑖 = 𝑎 𝑖 + 𝑥 + ∑︁ 𝑘 = (cid:32) ( − 𝑎 𝑘 ) · 𝑥 + (cid:214) 𝑖 = 𝑘 + 𝑎 𝑖 (cid:33) (29a) = 𝑎 𝑥 + · 𝑥 (cid:214) 𝑖 = 𝑎 𝑖 + 𝑎 𝑥 + · 𝑥 ∑︁ 𝑘 = (cid:32) ( − 𝑎 𝑘 ) · 𝑥 + (cid:214) 𝑖 = 𝑘 𝑎 𝑖 (cid:33) + ( − 𝑎 𝑥 + ) (29b) = 𝑎 𝑥 + · + ( − 𝑎 𝑥 + ) = □ Lemma 4.
We defined 𝑥 as the index for which Eq. (10) is minimized and assume1 < 𝑥 < ℓ . We defined 𝑅 𝑢 as the sum of all allocations of all the nodes 𝑘 ∈ { . . . , 𝑥 − } starting either at a local interface or at the local interface of some of its attached nodes, and lobal myopic resource allocation SIROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland ending either at a local interface of node 𝑢 or at the local interface of some of its attachednodes, divided by 𝑀 ( 𝑥 ) 𝑖 , 𝑗 .Then, it holds that 𝑅 ℓ = ℓ − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) , (30a) 𝑅 𝑢 = ( 𝑢 − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) ) · ( − b ( 𝑢 ) ) (for 𝑥 + ≤ 𝑢 ≤ ℓ − Proof.
Let I ( 𝑢 ) be the set of interfaces of node 𝑢 . For each node we will use ⊥ to refer toits local interface. 𝑅 ℓ consists of all allocations starting at the local interface of node 1 plusall the allocations starting at the local interface of some node that is attached to one of thenodes 1 to 𝑥 −
1, where the allocations are ending either at a local interface of node ℓ or atthe local interface of some of its attached nodes: 𝑅 ℓ = 𝑥 − (cid:214) 𝑘 = a ( 𝑘 ) · ℓ − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) · (cid:18) b ( ℓ ) + ∑︁ 𝑡 ∈ I ( ℓ ) \{ 𝑖 ℓ , ⊥} 𝑀 ( ℓ ) 𝑖 , 𝑡 DIV ( ℓ ) 𝑖 (cid:19) + ∑︁ ≤ 𝑝 ≤ 𝑥 − ∑︁ 𝑡 ∈ I ( 𝑝 ) \{ 𝑖 𝑝 , 𝑗 𝑝 } 𝑀 ( 𝑝 ) 𝑡 , 𝑗 CON ( 𝑝 ) 𝑗 · 𝑥 − (cid:214) 𝑘 = 𝑝 + a ( 𝑘 ) · ℓ − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) · (cid:18) b ( ℓ ) + ∑︁ 𝑡 ∈ I ( ℓ ) \{ 𝑖 ℓ , ⊥} 𝑀 ( ℓ ) 𝑖 , 𝑡 DIV ( ℓ ) 𝑖 (cid:19) . (31)Note that for all paths going through ( 𝑖 𝑥 , 𝑗 𝑥 ) , the argument of the minimum of Eq. (10)is always the index 𝑥 : every such path can be constructed from the initial path by firstdropping interface pairs at its origin and its end, and then extending the reduced path withthe attached nodes. Both operations preserve 𝑥 as the argument of the minimum of Eq. (10),as shown in Lemmas 8–11. Furthermore, the attached nodes do not have an influenceon the GMA allocation, which is a consequence of Lemmas 10 and 11. We observed that b ( ℓ ) + (cid:205) 𝑡 ∈ I ( ℓ ) \{ 𝑖 ℓ , ⊥} 𝑀 ( ℓ ) 𝑖 , 𝑡 DIV ( ℓ ) 𝑖 = 𝑅 ℓ = 𝑥 − (cid:214) 𝑘 = a ( 𝑘 ) · ℓ − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) + ∑︁ ≤ 𝑝 ≤ 𝑥 − ∑︁ 𝑡 ∈ I ( 𝑝 ) \{ 𝑖 𝑝 , 𝑗 𝑝 } 𝑀 ( 𝑝 ) 𝑡 , 𝑗 CON ( 𝑝 ) 𝑗 · 𝑥 − (cid:214) 𝑘 = 𝑝 + a ( 𝑘 ) · ℓ − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) (32a) = 𝑥 − (cid:214) 𝑘 = a ( 𝑘 ) · ℓ − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) + ∑︁ ≤ 𝑝 ≤ 𝑥 − ( − a ( 𝑝 ) ) · 𝑥 − (cid:214) 𝑘 = 𝑝 + a ( 𝑘 ) · ℓ − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) (32b) = ℓ − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) , (32c)where we used the observation that (cid:205) 𝑡 ∈ I ( 𝑝 ) \{ 𝑖 𝑝 , 𝑗 𝑝 } 𝑀 ( 𝑝 ) 𝑡 , 𝑗 CON ( 𝑝 ) 𝑗 = − a ( 𝑝 ) in the step to Eq. (32b)and Lemma 3 for the last step. IROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland G.Giuliari, M.Wyss, M.Legner, and A.Perrig
With the same reasoning as above, we get, for 𝑥 + ≤ 𝑢 ≤ ℓ − 𝑅 𝑢 = 𝑥 − (cid:214) 𝑘 = a ( 𝑘 ) · 𝑢 − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) · (cid:18) ∑︁ 𝑡 ∈ I ( 𝑢 ) −{ 𝑖 𝑢 , 𝑗 𝑢 } 𝑀 ( 𝑢 ) 𝑖 , 𝑡 DIV ( 𝑢 ) 𝑖 (cid:19) + ∑︁ ≤ 𝑝 ≤ 𝑥 − ∑︁ 𝑡 ∈ I ( 𝑝 ) \{ 𝑖 𝑝 , 𝑗 𝑝 } 𝑀 ( 𝑝 ) 𝑡 , 𝑗 CON ( 𝑝 ) 𝑗 · 𝑥 − (cid:214) 𝑘 = a ( 𝑘 ) · 𝑢 − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) · (cid:18) ∑︁ 𝑡 ∈ I ( 𝑢 ) \{ 𝑖 𝑢 , 𝑗 𝑢 } 𝑀 ( 𝑢 ) 𝑖 , 𝑡 DIV ( 𝑢 ) 𝑖 (cid:19) (33a) = 𝑥 − (cid:214) 𝑘 = a ( 𝑘 ) · 𝑢 − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) · ( − b ( 𝑢 ) ) + ∑︁ ≤ 𝑝 ≤ 𝑥 − ( − a ( 𝑝 ) ) · 𝑥 − (cid:214) 𝑘 = 𝑝 + a ( 𝑘 ) · 𝑢 − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) · ( − b ( 𝑢 ) ) (33b) = (cid:169)(cid:173)(cid:171) 𝑥 − (cid:214) 𝑘 = a ( 𝑘 ) · 𝑢 − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) + ∑︁ ≤ 𝑝 ≤ 𝑥 − ( − a ( 𝑝 ) ) · 𝑥 − (cid:214) 𝑘 = 𝑝 + a ( 𝑘 ) · 𝑢 − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) (cid:170)(cid:174)(cid:172) · ( − b ( 𝑢 ) ) (33c) = (cid:32) 𝑢 − (cid:214) 𝑘 = 𝑥 + b ( 𝑘 ) (cid:33) · ( − b ( 𝑢 ) ) . (33d) □ E Proofs of supplementary properties
Usability (S1).
For every valid path, all the pair allocations used to calculate the alloca-tion are positive by definition. Moreover, convergents and divergents at each node containthe respective pair allocation as part of the sum in Eq. (1), and are therefore positive. Everyallocation is then positive, as it is a product of positive factors (Eq. (10)). □ Efficiency (S2).
The polynomial complexity of GMA follows directly from Eqs. (8) and(9). In fact, GMA has linear complexity in the path length (assuming convergents anddivergents are precomputed together with the allocation matrices). □ Monotonicity (S3).
In the proof of monotonicity we will make use of the followinglemma:
Lemma 12. If 𝑎 , 𝑏 , 𝛿 > and 𝑎 ≤ 𝑏 , then it holds that 𝑎 + 𝛿𝑏 + 𝛿 ≥ 𝑎𝑏 . Proof. 𝑎 + 𝛿𝑏 + 𝛿 = 𝑎𝑏 · 𝑏 ·( 𝑎 + 𝛿 ) 𝑎 ·( 𝑏 + 𝛿 ) = 𝑎𝑏 · 𝑎𝑏 + 𝑏𝛿𝑎𝑏 + 𝑎𝛿 = 𝑎𝑏 · (cid:16) + 𝛿 ( 𝑏 − 𝑎 ) 𝑎𝑏 + 𝑎𝛿 (cid:17) ≥ 𝑎𝑏 □ Let 𝜋 be an arbitrary loop-free path and let node 𝑛 be one of its on-path nodes. We want toshow that increasing the pair allocation 𝑀 ( 𝑛 ) 𝑖 , 𝑗 by some amount 𝛿 > 𝜋 . Let G ( 𝜋 ) be the formula from Eq. (10) and 𝑥 ★ bethe argument of its minimum before increasing 𝑀 ( 𝑛 ) 𝑖 , 𝑗 , and let (cid:98) G ( 𝜋 ) be the formula fromEq. (10) and ˆ 𝑥 ★ the argument of its minimum after increasing 𝑀 ( 𝑛 ) 𝑖 , 𝑗 . We can distinguish lobal myopic resource allocation SIROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland three cases and write (cid:98) G ( 𝜋 ) as follows:ˆ 𝑥 ★ < 𝑛 : (cid:98) G ( 𝜋 ) = ˆ 𝑥 ★ − (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 ) 𝑗 · 𝑀 ( ˆ 𝑥 ★ ) 𝑖 , 𝑗 · 𝑛 − (cid:214) 𝑘 = ˆ 𝑥 ★ + 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 · 𝑀 ( 𝑛 ) 𝑖 , 𝑗 + 𝛿 DIV ( 𝑛 ) 𝑖 + 𝛿 · ℓ (cid:214) 𝑘 = 𝑛 + 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 (34a)ˆ 𝑥 ★ = 𝑛 : (cid:98) G ( 𝜋 ) = ˆ 𝑥 ★ − (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 ) 𝑗 · ( 𝑀 ( 𝑛 ) 𝑖 , 𝑗 + 𝛿 ) · ℓ (cid:214) 𝑘 = ˆ 𝑥 ★ + 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 (34b)ˆ 𝑥 ★ > 𝑛 : (cid:98) G ( 𝜋 ) = 𝑛 − (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 ) 𝑗 · 𝑀 ( 𝑛 ) 𝑖 , 𝑗 + 𝛿 CON ( 𝑛 ) 𝑗 + 𝛿 · ˆ 𝑥 ★ − (cid:214) 𝑘 = 𝑛 + 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 ) 𝑗 · 𝑀 ( ˆ 𝑥 ★ ) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = ˆ 𝑥 ★ + 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 (34c)The following derivation holds for all of the cases above and directly proves monotonicity: (cid:98) G ( 𝜋 ) ≥ ˆ 𝑥 ★ − (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 ) 𝑗 · 𝑀 ( ˆ 𝑥 ★ ) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = ˆ 𝑥 ★ + 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 (35a) ≥ 𝑥 ★ − (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 CON ( 𝑘 ) 𝑗 · 𝑀 ( 𝑥 ★ ) 𝑖 , 𝑗 · ℓ (cid:214) 𝑘 = 𝑥 ★ + 𝑀 ( 𝑘 ) 𝑖 , 𝑗 DIV ( 𝑘 ) 𝑖 = G ( 𝜋 ) (35b)To get Eq. (35a), we applied Lemma 12 to Eqs. (34a) and (34c) and the assumption that 𝛿 > 𝑥 ★ is theargument of the minimum of Eq. (10). □ F Extensibility
In real-world implementations of resource-allocation protocols, messages need to be senton the desired paths in order to discover information about the allocation matrices of theon-path nodes. To avoid unnecessary communication overhead, we want intermediatenodes to be able to drop allocation messages if the preliminary allocation up to such a nodeis below a certain threshold. This is captured by the following supplementary property:
S4 Extensibility:
Algorithm A should allow to calculate a preliminary allocation forevery preliminary prefix-path 𝜋 𝑘 of length 𝑘 of some terminated path 𝜋 ( 𝜋 𝑘 = [( 𝑖 , 𝑗 ) , ( 𝑖 , 𝑗 ) , . . . , ( 𝑖 𝑘 , 𝑗 𝑘 )] for 1 ≤ 𝑘 < ℓ ), where we require that A ( 𝜋 ) ≥A ( 𝜋 ) ≥ · · · ≥ A ( 𝜋 ) . Theorem 13.
GMA satisfies property S4.
Proof.
For every prefix-path 𝜋 𝑘 = [( 𝑖 , 𝑗 ) , ( 𝑖 , 𝑗 ) , . . . , ( 𝑖 𝑧 , 𝑗 𝑧 )] (2 ≤ 𝑧 ≤ ℓ ) of someterminated path 𝜋 , we have G ( 𝜋 𝑧 ) = (cid:32) 𝑧 (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 (cid:33) · min ≤ 𝑥 ≤ 𝑧 (cid:169)(cid:173)(cid:171) 𝑥 − (cid:214) 𝑘 = CON ( 𝑘 ) 𝑗 · 𝑧 (cid:214) 𝑘 = 𝑥 + DIV ( 𝑘 ) 𝑖 (cid:170)(cid:174)(cid:172) (36a) IROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland G.Giuliari, M.Wyss, M.Legner, and A.Perrig
Average degree D i a m e t e r Fig. 4.
Simulated graphs by degree and diameter.
As shown by the marginals, the graphsare chosen to span a wide range in diameter and average node degree. = (cid:32) 𝑧 (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 (cid:33) · min (cid:169)(cid:173)(cid:171) min ≤ 𝑥 ≤ 𝑧 − (cid:169)(cid:173)(cid:171) 𝑥 − (cid:214) 𝑘 = CON ( 𝑘 ) 𝑗 · 𝑧 − (cid:214) 𝑘 = 𝑥 + DIV ( 𝑘 ) 𝑖 (cid:170)(cid:174)(cid:172) · DIV ( 𝑧 ) 𝑖 , 𝑧 − (cid:214) 𝑘 = CON ( 𝑘 ) 𝑗 (cid:170)(cid:174)(cid:172) (36b) ≤ (cid:32) 𝑧 (cid:214) 𝑘 = 𝑀 ( 𝑘 ) 𝑖 , 𝑗 (cid:33) · min ≤ 𝑥 ≤ 𝑧 − (cid:169)(cid:173)(cid:171) 𝑥 − (cid:214) 𝑘 = CON ( 𝑘 ) 𝑗 · 𝑧 − (cid:214) 𝑘 = 𝑥 + DIV ( 𝑘 ) 𝑖 (cid:170)(cid:174)(cid:172) · DIV ( 𝑧 ) 𝑖 (36c) = 𝑀 ( 𝑧 ) 𝑖 , 𝑗 DIV ( 𝑧 ) 𝑖 · G ( 𝜋 𝑧 − ) (36d) ≤ G ( 𝜋 𝑧 − ) . (36e)We started with Eq. (10) and in the step from Eq. (36a) to Eq. (36b) used the fact thatmin ≤ 𝑥 ≤ 𝑧 ( 𝑓 ( 𝑥 )) = min (cid:18) min ≤ 𝑥 ≤ 𝑧 − ( 𝑓 ( 𝑥 )) , 𝑓 ( 𝑧 ) (cid:19) . The last inequality follows from Eq. (1). □ G Simulation details
In the Barabási–Albert model, average degree and diameter are controlled by a preferentialattachment parameter, and the total number of nodes. A higher preferential attachmentwill yield graphs with higher average degree and smaller diameter. We vary these twoparameters to obtain 275 random graphs, with the number of nodes varying exponentiallyfrom 8 to 2048, and the attachment from 1 to 32 (the attachment always has to be smallerthan the number of nodes).The relation between the average degree and the diameter of the resulting topologies isvisualized in Fig. 4. Figures 5 and 6 show additional evaluation results. lobal myopic resource allocation SIROCCO ’21, June 28 – July 1, 2021, Wrocław, Poland Diameter C o v e r Median caseBest caseWorst case
Fig. 5.
Minimum, maximum, and me-dian single-path − -cover breakdown. The highlighted markers show the maximum ✚ , median ● , and minimum ✖ cover for onespecific graph. Node degree N o d e c o v e r Fig. 6.
Cover and degree of a singlegraph.