Efficient Algorithms For Optimizing Policy-Constrained Routing

Similar documents
If you are at the university, either physically or via the VPN, you can download the chapters of this book as PDFs.

COMP 423 lecture 11 Jan. 28, 2008

Lecture 10 Evolutionary Computation: Evolution strategies and genetic programming

Ma/CS 6b Class 1: Graph Recap

A dual of the rectangle-segmentation problem for binary matrices

2 Computing all Intersections of a Set of Segments Line Segment Intersection

In the last lecture, we discussed how valid tokens may be specified by regular expressions.

Ma/CS 6b Class 1: Graph Recap

Today. CS 188: Artificial Intelligence Fall Recap: Search. Example: Pancake Problem. Example: Pancake Problem. General Tree Search.

Network Interconnection: Bridging CS 571 Fall Kenneth L. Calvert All rights reserved

Before We Begin. Introduction to Spatial Domain Filtering. Introduction to Digital Image Processing. Overview (1): Administrative Details (1):

9 Graph Cutting Procedures

A Tautology Checker loosely related to Stålmarck s Algorithm by Martin Richards

What are suffix trees?

F. R. K. Chung y. University ofpennsylvania. Philadelphia, Pennsylvania R. L. Graham. AT&T Labs - Research. March 2,1997.

Fig.25: the Role of LEX

Presentation Martin Randers

CS143 Handout 07 Summer 2011 June 24 th, 2011 Written Set 1: Lexical Analysis

MATH 25 CLASS 5 NOTES, SEP

CS311H: Discrete Mathematics. Graph Theory IV. A Non-planar Graph. Regions of a Planar Graph. Euler s Formula. Instructor: Işıl Dillig

CS321 Languages and Compiler Design I. Winter 2012 Lecture 5

Slides for Data Mining by I. H. Witten and E. Frank

Fig.1. Let a source of monochromatic light be incident on a slit of finite width a, as shown in Fig. 1.

Pointwise convergence need not behave well with respect to standard properties such as continuity.

Tries. Yufei Tao KAIST. April 9, Y. Tao, April 9, 2013 Tries

MTH 146 Conics Supplement

Graphs with at most two trees in a forest building process

Solving Problems by Searching. CS 486/686: Introduction to Artificial Intelligence Winter 2016

P(r)dr = probability of generating a random number in the interval dr near r. For this probability idea to make sense we must have

Announcements. CS 188: Artificial Intelligence Fall Recap: Search. Today. Example: Pancake Problem. Example: Pancake Problem

4452 Mathematical Modeling Lecture 4: Lagrange Multipliers

Definition of Regular Expression

Announcements. CS 188: Artificial Intelligence Fall Recap: Search. Today. General Tree Search. Uniform Cost. Lecture 3: A* Search 9/4/2007

Meaningful Change Detection in Structured Data.

The Greedy Method. The Greedy Method

Mobile IP route optimization method for a carrier-scale IP network

CSCI 3130: Formal Languages and Automata Theory Lecture 12 The Chinese University of Hong Kong, Fall 2011

Rethinking Virtual Network Embedding: Substrate Support for Path Splitting and Migration

Network Layer: Routing Classifications; Shortest Path Routing

OUTPUT DELIVERY SYSTEM

10.5 Graphing Quadratic Functions

Misrepresentation of Preferences

CS 268: IP Multicast Routing

Lecture 7: Integration Techniques

Solving Problems by Searching. CS 486/686: Introduction to Artificial Intelligence

Premaster Course Algorithms 1 Chapter 6: Shortest Paths. Christian Scheideler SS 2018

ΕΠΛ323 - Θεωρία και Πρακτική Μεταγλωττιστών

EECS150 - Digital Design Lecture 23 - High-level Design and Optimization 3, Parallelism and Pipelining

1.1. Interval Notation and Set Notation Essential Question When is it convenient to use set-builder notation to represent a set of numbers?

Position Heaps: A Simple and Dynamic Text Indexing Data Structure

Typing with Weird Keyboards Notes

Algorithm Design (5) Text Search

1 Quad-Edge Construction Operators

Efficient Rerouting Algorithms for Congestion Mitigation

On Achieving Optimal Throughput with Network Coding

3.5.1 Single slit diffraction

On Computation and Resource Management in Networked Embedded Systems

2014 Haskell January Test Regular Expressions and Finite Automata

An evolutionary approach to inter-session network coding

From Dependencies to Evaluation Strategies

A New Learning Algorithm for the MAXQ Hierarchical Reinforcement Learning Method

Compression Outline :Algorithms in the Real World. Lempel-Ziv Algorithms. LZ77: Sliding Window Lempel-Ziv

CSEP 573 Artificial Intelligence Winter 2016

3.5.1 Single slit diffraction

SUPPLEMENTARY INFORMATION

Approximation of Two-Dimensional Rectangle Packing

12-B FRACTIONS AND DECIMALS

MATH 2530: WORKSHEET 7. x 2 y dz dy dx =

1. SEQUENCES INVOLVING EXPONENTIAL GROWTH (GEOMETRIC SEQUENCES)

CS201 Discussion 10 DRAWTREE + TRIES

Unit #9 : Definite Integral Properties, Fundamental Theorem of Calculus

UT1553B BCRT True Dual-port Memory Interface

Section 3.1: Sequences and Series

McAfee Network Security Platform

CSCI 104. Rafael Ferreira da Silva. Slides adapted from: Mark Redekopp and David Kempe

Grade 7/8 Math Circles Geometric Arithmetic October 31, 2012

PPS: User Manual. Krishnendu Chatterjee, Martin Chmelik, Raghav Gupta, and Ayush Kanodia

Complete Coverage Path Planning of Mobile Robot Based on Dynamic Programming Algorithm Peng Zhou, Zhong-min Wang, Zhen-nan Li, Yang Li

ΕΠΛ323 - Θεωρία και Πρακτική Μεταγλωττιστών. Lecture 3b Lexical Analysis Elias Athanasopoulos

INTRODUCTION TO SIMPLICIAL COMPLEXES

AI Adjacent Fields. This slide deck courtesy of Dan Klein at UC Berkeley

Midterm 2 Sample solution

this grammar generates the following language: Because this symbol will also be used in a later step, it receives the

Evolutionary Approaches To Minimizing Network Coding Resources

Notes for Graph Theory

PARALLEL AND DISTRIBUTED COMPUTING

Outline. Introduction Suffix Trees (ST) Building STs in linear time: Ukkonen s algorithm Applications of ST

Efficient K-NN Search in Polyphonic Music Databases Using a Lower Bounding Mechanism

6.2 Volumes of Revolution: The Disk Method

1.5 Extrema and the Mean Value Theorem

A Heuristic Approach for Discovering Reference Models by Mining Process Model Variants

An Efficient Divide and Conquer Algorithm for Exact Hazard Free Logic Minimization

MA1008. Calculus and Linear Algebra for Engineers. Course Notes for Section B. Stephen Wills. Department of Mathematics. University College Cork

A Sparse Grid Representation for Dynamic Three-Dimensional Worlds

ZZ - Advanced Math Review 2017

ON THE DEHN COMPLEX OF VIRTUAL LINKS

Union-Find Problem. Using Arrays And Chains. A Set As A Tree. Result Of A Find Operation

CS 221: Artificial Intelligence Fall 2011

Journal of Graph Algorithms and Applications

CS481: Bioinformatics Algorithms

Transcription:

Efficient Algorithms For Optimizing Policy-Constrined Routing Andrew R. Curtis curtis@cs.colostte.edu Ross M. McConnell rmm@cs.colostte.edu Dn Mssey mssey@cs.colostte.edu Astrct Routing policies ply n essentil role in how trffic is forwrded cross the Internet. The network would not e commercilly vile without these routing policies, ut policies lso introduce inefficiencies nd fil to fully exploit the underlying network topology. Our work ssumes routes re selected ccording to some policy such s vlley-free routing policy. However, we pply policy t n ggregte trffic level nd don t require individul pckets to follow pths tht mtch the policy. Our pproch never reduces, nd usully increses, the connectivity nd cpcity of the network, nd does not infringe on the underlying motivtions tht led to the routing policy. By dopting this pproch, we lso provide polynomil lgorithms for otherwise NP-hrd prolems, including finding mximum policy-oserving routing cpcity etween two sets of AS s, minimumizing cuts seprting ll policy-oserving pths etween two sets of AS s, nd mximumizing sets of edge- or vertex-disjoint policy-oserving pths. I. INTRODUCTION In tody s Internet, routes re selected sed on comintion of network topology nd routing policies. The network topology is function of the physicl connections nd numer of studies hve ttempted to provide ccurte models or estimtions of the Internet topology. Given the network topology, one cn nswer sic grph theoretic prolems such s wht is the shortest pth etween source nd destintion or how mny disjoint pths exist etween given source nd destintion. But the topology is only prt of the story. The set of possile pths etween source nd destintion depends on oth the network topology nd the routing polices t nodes long these pths. Some pths tht exists in the topology my e disllowed due to routing polices. To identify the potentil routes etween given source nd destintion, one must consider oth the network topology nd the routing policies used in the network. As simple exmple of routing policy, suppose Colordo Stte University hs purchsed Internet service from AT&T nd Sprint. In the resulting network topology, there is link connecting Colordo Stte to AT&T nd link connecting to Colordo Stte to Sprint. The pth (AT&T, Colordo Stte, Sprint) exists in the topology nd could theoreticlly e used to forwrd pcket from n AT&T customer to Sprint customer. However, routing policy prevents n AT&T customer from using Colordo Stte s network to rech Sprint customer. Even if the Colordo Stte network hd sufficient resources to serve s n intermedite link etween AT&T nd Sprint, there is no economic incentive for Colordo Stte to provide this service. In fct, Colordo Stte purchsed connectivity from AT&T nd Sprint. AT&T cnnot use its customer Colordo Stte s trnsit network for other trffic. This simple exmple illustrtes how policies cn impct route selection. A comprehensive exmintion of Internet routing policies cn e found in [Go00] Routing policies re n essentil component of the Internet, ut routing policies cn lso led to oth prcticl nd theoreticl limittions. In this pper, we develop new theoreticl results out the impcts of policy on the vulnerility of network to filure, the cpcity nd efficiency of network, the efficiency of optiml routing lgorithms. We extend the discourging results of [EHPV05] to roder clss of optimiztion prolems. Moreover, we show tht the introduction of policy cn led to solutions tht fil to e preto-optiml, which is considered highly undesirle in economic theory, s it mens tht the costs for some ctors cn e reduced without incresing the cost for ny of the ctors, reflecting needless expenditure of resources tht is devoid of enefit for nyone. These results re not encourging nd would seem to suggest tht routing polices hve considerle prcticl nd theoreticl drwcks. However, our min result is to show tht if trivil chnge is mde not to the policies themselves, ut in minor detils out the wy they re executed, these negtive impcts cn e mde to vnish. The key chnge is to enforce policies t n ggregte level rther thn on individul pcket sis. Our work suggests tht individul pckets should e llowed to devite from the routing policy. By llowing pcket to devite from the routing policy, n individul node my e required to perform processing tht would not hve een necessry under the routing policy nd link my crry trffic tht would not hve een llowed under the routing policy. But the node or link is compensted for this cost y hving some other pcket devite from the routing policy. Overll, no node or link is worse off thn it would hve een under the policy, ut some nodes nd links gin nd the network s whole is etter off. Our primry result is to demonstrte the power of such n pproch nd motivte work on routing protocols tht follow wht we cll currency-level pproch to routing policies. Section II egin y formlly introducing the concepts of routing policies nd policy constrined network routing. Section III then shows the limittions of enforcing routing policies on pcket level sis. Section IV then introduces our currency-level pproch to enforcing routing policies nd

shows the how the limittions of pcket-level pproches re reduced. II. POLICY CONSTRAINED NETWORK ROUTING We egin this section y formlly defining wht is ment y routing policy nd then formlly define network routing. Our work is motivted y routing policies tht re used in tody s Internet, ut we lso seek model tht is generl enough to include wide vriety of routing policies. In prticulr, future Internet designs or other lrge-scle networks my devise policies unlike those in the current network nd we would like our results to hold under very rod clss of potentil routing policies. Towrd this end, we first introduce the strct notion of routing policy nd then show how this definition cn e used to cpture current Internet routing policy models nd then formlly define network routing A. Routing Policies Let G = (V, E) denote network topology where V represents the nodes nd E represents links etween the nodes. For exmple, the nodes in V my represent routers or my represent lrger entities such s n Internet Autonomous System. It does not mtter how the topology ws derived nd we do not ssume tht ny node or ny centrl uthority knows the full topology. The routing policy t node x V is defined s follows: Definition 1: A routing policy t node x is set of pirs {(E 1, E 1), (E 2, E 2),..., (E k, E k )}, where {E 1, E 2,..., E k } is prtition of incoming edges into x, nd where pcket coming into x on n edge E i cn e forwrded through ny edge in E i. The sets {E 1, E 2,..., E k } re distinct ut need not e disjoint, nd some E i cn e empty, mening tht x cnnot forwrd pckets coming in on n edge in E i. This generl model is intended to cover wide vriety of potentil polices nd explictly llows different policies t different nodes. For exmple, node x my represents n AS nd our model llows ech AS to independently selects its own routing policy. To see how this model pplies in the Internet, we show how the model cn e used to crete vlley-free routing policy. In the Internet, routing policies often reflect customerprovider reltionships etween Autonomous Systems. Tht is, given two ASes which re connected y link, one AS is customer of the other AS which must e the provider. In the vlley-free model, pcket cn never go from provider to customer nd then ck to provider gin. Such dip in the pth is clled vlley. Erlech et l. [EHPV05] formlize this customer-provider reltionship y modeling the AS grph s directed grph where edges point upwrds from customers to providers, tht is, if (x, y) is n edge in the grph G, then x is customer of y, nd we do not llow the nti-prrllel edge (y, x) to lso e n edge in G. A pth in this model is sid to e vlley free if it leds up from customers to providers nd then decreses from providers to customers. To cpture this in our model, ech vertex hs two policies: one for pckets coming from customers nd silings, nd one for pckets coming from providers nd peers. More formlly, the two policies t ech node re (E 1, E 1), nd (E 2, E 2), where E 1 is the set of edges coming from providers nd E 1 is the set of edges tht cn e used to forwrd pckets tht rrived from provider. Similrly, E 2 is the set of edges coming from customers, nd E 2 is the set of edges tht cn e used to forwrd pckets tht rrived from customers. Enforcing these constrints results in vlley-free model, where we cn view the restrictions plced on the pckets flowing to ech outgoing edge of node s policy. B. Network Routings In this section, we formlly define the concept of policy constrined network routing nd routing policies. Definition 2: Let us initilly define the prmeters to policy-constrined routing prolem, s follows. The inputs re the following: 1) A network, which is n undirected grph representing the communiction links; 2) A destintion vertex t, set s 1, s 2,..., s p of source vertices generting pckets destined for t, nd integer rtes i 1, i 2,..., i p reflecting the rtes t which these pckets re generted; 3) A (possily unounded) cpcity on ech edge, indicting the mximum rte t which pckets cn e routed through the edge or the vertex (useful for solving edgedisjoint pth prolems); 4) A cost per pcket on ech vertex, reflecting the cost of routing pcket through tht vertex; 5) A set of policies t ech vertex v, suject to the condition tht no two policies t v shre n incoming edge. And finlly, the following gives the definition of the prolem we would like to solve on policy-constrined routings. Definition 3: The following re defined in terms of the inputs to the policy-constrined routing prolem. A pcket routing is the set of pths, ech from some source s i, to t, where the pth is leled with the rte t which pckets follow tht pth. There cn e more thn one pth from single pth s i to t. The sum of rte lels of the pths is the rte of flow from {s 1, s 2,..., s p } to t (no pckets re unccounted for). A routing pth is fesile if it violtes no edge cpcity nd no pcket s pth violtes policy t ny node tht it trverses. III. LIMITATIONS PACKET-LEVEL ROUTING POLICIES In the ove model, the pth tken y pcket to does not violte the routing policy t ny node. We will refer to this conventionl enforcement of policies s pcket-level enforcement. In this section we show tht requiring every pcket to oey the policy results in numer of negtive consequences. Section III-A shows tht current routings in the Internet re not optiml when viewed under economic theory nd Section III-B then explores the computtionl properties of optimiztion prolems. The pcket level constrints result in oth prcticl nd theoreticl limittions.

s s' c d 2 2 t Fig. 1. In oth figures, lower-level nodes re customers of higher-level nodes, ie. s is customer of nd c. And, ll edges hve cpcity 1 except for c which hs cpcity 2. The first figure () depicts vlley-free flow from sources s nd s to destintion node t. (An edge tht goes from lower to higher node in the figure represents n edge from customer to provider.) The second figure () illustrtes n improvement otinle if nd c re llowed to trde identities of pckets tht they hndle through swpping of pcket envelopes. A. Policy Constrined Routings re Not Preto-Optiml Routing policies re typiclly motivted y economic concerns, ut the results often fil to e preto-optiml. A set of trnsctions mong set of ctors tht stisfies set of economic constrints is preto-optiml if every other fesile trnsction tht is preferred y ny ctor is strictly less preferle to t lest one other ctor. In other words, the trnsctions re preto optiml if no ctor cn e mde etter off without mking some other ctor worse off. Trnsctions tht re not preto-optiml re considered highly undesirle in economic theory: they cn e modified to increse the totl enefit of the trnsction to the ctors t no dditionl cost to ny of them, nd therefore wste resources. Theorem 1: It cn e the cse tht no fesile pcket routing is preto-optiml. Proof: An exmple for the cse when the policy is the vlley-free constrint t ll nodes is depicted in Figure 1. Suppose one pcket per time unit must e routed from s nd s to t nd ll edges hve cpcity of one, except for c, which hs cpcity of two. All solutions tht enforce the policy t the individul pcket level must route one unit of flow through ech of nd d nd two units through ech of nd c. The solution depicted in the (), which routes one unit of flow through ech of these four nodes without incresing the flow through ny node, is preto-optiml however. Our next result shows tht preto-optiml routing cn e found in polynomil time. Despite this, the pcket constrints prevent such routing from eing vlid. In Section IV, we show how to gin preto-optiml routings y relxing the constrint tht policy e enforced on ech individul pcket. Theorem 2: Given ny set of policies nd ny fesile routing, preto-optimiztion tht minimizes the sum of flow costs t the vertices cn e found in polynomil time. Proof: The proof is y reduction to the min-cost flow prolem [Chv83], where ech node v is replced y two nodes, v, which tkes ecomes the hed of the edges into v, v, which ecomes the til of ll edges out of v, nd n edge (v, v ). The cpcity of edge (v, v ) is the flow through v given y the routing, nd the cpcity of ech edge is the flow through the edge given y the routing. This construction is shown in Figure 2. The cost of edge (v, v ) is set to the s s' c d t c d v x y z Fig. 2. The construction of Theorem 2. Figure () shows the originl node v, nd () shows v split into two nodes so tht we cn constrin the mount of flow through it. The edge (v, v ) would e leled with the mount of flow through v. per-unit cost of flow through v, nd the cpcities nd costs of edges of the form (v, w ) (edges in the originl grph) re set to infinity nd 0, respectively. The cpcity constrint on edge (v, v ) ensures tht no more flow is routed through node v thn in the originl solution. The fct tht the sum of costs of flows through the nodes is minimized mens tht no flow cn e reduced through ny node without violting cpcity constrint, tht is, the constrint tht more flow e routed through some node thn in the originl routing. The limittions of pplying policy on pcket level sis cretes suoptiml scenrios such s the ones descried ove. In the next section, we consider how the pcket level policies impct theoreticl results nd optimiztion prolems. B. Optimiztion Prolems nd Policy Two pths in grph re edge-disjoint if they hve no edges in common, nd vertex-disjoint if they hve no vertices, except their endpoints, in common. Vertex-disjoint pths re edgedisjoint, ut the converse is not necessrily true. The rte t which pckets from source node to destintion node flow on different links is known s flow. The cpcity of link or node is the mximum rte t which it cn route pckets. If s nd t re nodes of network, n s-t cut is prtition of the nodes into set S contining s nd set T contining t. The cpcity of the cut is the sum of cpcities of the edges from S to T. A common mesure of the roustness of communiction from s to t in networks is minimum-crdinlity edge cut, tht is, minimum-sized set of edges tht must fil (or e sotged) in order to disconnect ll pths from s to t. Wht is of interest in studying routing nd roustness nd routing topology of the Internet, however, is the numer of edges tht must e removed in order to cut ll policy-stisfying pths from s to t, since the policies t the nodes dictte tht this will render t inccessile from s. A relted prolem, which occurs in mny pplictions is one where high premium is plced on the timely rrivl t t of messge from s. The strtegy of s is to decide in dvnce on set of edge disjoint pths to use in sending messges from s to t. The pths re chosen to e edge-disjoint so tht no one edge filure cn disrupt ny two pths; s seeks mximum set of such pths. In the sence of policy constrints, mximum c d v' v'' x y z

set of edge-disjoint pths from s to t cn e found efficiently using network flow lgorithms. Clerly, the numer of pths in mximum set P of edgedisjoint pths from s to t is lower ound on the size of minimum cut, since minimum requirement of ny s-t cut, which must cut ll pths from s to t, is tht it must cut every pth in P. Since the pths in P re edge-disjoint, n s-t cut must contin t lest one edge from ech memer of P. A fmous theorem in grph theory, known s Menger s theorem [Wes01] is tht the numer of edge in min s-t cut is equl to the mximum numer of edge-disjoint pths from s to t. According to this theorem, if there re no policy constrints, s my commit to set of stle edge-disjoint pths in dvnce, nd n intruder who knows these pths is not helped y this knowledge in deciding on set of links to undermine in order to hlt communiction from s to t; whether or not s is committed to prticulr mximum set of edgedisjoint pths, the intruder must undermine set of edges tht cuts ll s-t pths in order to cut this set of pths. Erlech et l. investigte severl of the these clssic prolems in the vlley-free pth model, nd find they re no longer vlid in the vlley-free model. Their results show tht vlley-free policy hs striking effect on the roustness nd connectivity of the internet nd re summrized s the following [EHPV05]: 1) Menger s theorems no longer pply when policy constrints re introduced. In prticulr, under the vlleyfree model, the mximum numer of edge or (vertex) disjoint pths from s to t cn e s smll s hlf the minimum numer of edges (vertices) whose removl disconnects ll fesile s-t pths. 2) Finding the minimum numer of edges (vertices) whose removl disconnects ll fesile pths from s to t is NP-hrd, s is finding the mximum numer of edge- (vertex-) disjoint pths from s to t. 3) There exists n efficient pproximtion lgorithm tht finds set of edge disjoint fesile pths whose numer is t lest hlf the mximum numer, nd n pproximtion lgorithm tht finds set of edges whose removl disconnects ll fesile pths tht is t most twice s lrge s the minimum numer required. 4) Unless P = NP, no etter worst-cse pproximtion cn e found in polynomil time. While Erlech et l. showed tht the roustness nd connectivity of the internet is negtively impcted y policy, they did not show tht policy impirs the network s ility to find flows tht mximize the utiliztion of the links etween s nd t. We will now extend their results to network flows. Let mximum fesile policy s-t flow e mximum flow from s to t tht respects the network s pcket constrints, ie. in vlley-free flow ll pths in the flow cn never contin vlley. In network setting, the mximum fesile policy s- t flow is n upper ound on the mount of trffic tht cn flow from s to t if policy is respected. In clssicl grph theory, it s well known tht the minimum edge cut is equl to the mximum flow. This is the celerted min-cut, mxflow theorem [Chv83]. We show tht the min-cut, mx-flow theorem no longer holds when policy is enforced t the pcket level in Theorem 4. Before showing this, however, we show tht the ddition of policy mkes it intrctle to compute the mximum fesile policy flow etween two nodes, ssuming P NP. Theorem 3: It is NP-hrd to find mximum fesile policy s-t flow under the pcket model, nd this is true in the specil cse of vlley-free flows. Proof: Erelech, et. l. show tht it is NP-hrd to find mximum set of edge-disjoint vlley-free pths from vertex s to vertex t in grph where the customerprovider nd peer-to-peer reltionships re mrked on the edges. Therefore, the question of whether there exists set of k edge-disjoint vlley-free vlley free pths on such grph is NP-complete. However, this question cn e solved in polynomil time if there exists polynomil-time lgorithm for the pth-constrined routing prolem, s follows. Give ech node two policies reflecting the vlley-free constrints (one for customers nd silings nd one for providers nd peers), ssign cpcity of one to ech edge, let s e the only source vertex nd t e the destintion vertex, nd ssign s n output rte of k. This policy-constrined routing prolem is fesile if nd only if the given prolem hs k edge-disjoint vlley-free pths. The following shows tht policy cn lower the overll throughput of network. Theorem 4: Given network with ritrry edge cpcities nd policies t the nodes, the mximum fesile policy s-t flow under the pcket constrints cn e strictly smller thn the minimum-cpcity policy cut, nd this is true in the specil cse of vlley-free flows. Proof: (Sketch) Erelech, et. l. show tht the numer of pths in mximum set of edge-disjoint pths cn e s smll s hlf the numer of edges in minimum policy edge cut. The reduction similr to tht of Theorem 3: for network where the minimum crdinlity edge cut is 2k nd the mximum numer of disjoint pths is k. Estlish corresponding flow prolem where the edges ll hve cpcity equl to one. A mximum set consisting of k edge-disjoint pths constitutes mximum pcket-constrined flow of size k, nd minimum policy cut constitutes policy cut of minimum totl cpcity, which is 2k. While our theorem is theoreticl result, we clim tht it is pplicle to the rel-world Internet. For instnce in [GW02], the degree to which the lengths of routing pths re incresed due to policies, clled pth infltion, is studied nd evidence is provided tht it is significnt. Thus fr, we hve pointed the finger t policy for ll of our negtive results; however, the negtive computtionl nd economic effects we hve shown do not rise s result of policy. Insted, these effects rise s result of enforcing policy t the pcket level. We next propose new method of policy enforcement tht llows ASes to keep the ility to specify ritrry policy, ut

does not hve ny of the negtive effects we hve shown here tht rise when policy is enforced t the pcket-level. IV. CURRENCY-ENFORCEMENT OF POLICY By pcket constrints, we men the constrints tht n individul pcket must oey on vlid pth. This definition, which mtches the wy policy is currently enforced on the Internet, implies tht ech pcket hs n individul identity. To llevite the negtive effects of pcket-level enforcement, we remove this notion of pcket identity. Tht is, y the currency constrints, let us denote the constrints tht must e oeyed when one is llowed to find solution tht oeys the pcket constrints, nd then reduce the flow through some nodes without incresing the flow through ny node y ignoring the identities of individul pckets. As n exmple of the currency constrints, consider the two flows shown in Figure 1. Assume tht oth flows re equl in size. In Figure 1(), the nodes nd c route pckets etween ech other ecuse their policies dictte how ech pcket from the previous hop must e routed, ie. in the cse of c, its policy dicttes tht ny pcket rriving from s must e routed to if ct is sturted. Let s consider wht hppens under the currency constrints. Nodes nd c notice 1 tht they cn cncel out flow etween them y violting the pcket constrints. Both nodes reduce the flow through them y enforcing policy t currency-level rther thn t the pcket-level. In Figure 1(), no node hs n incresed mount of flow going through it, ut nodes nd c re etter off since they ech hve less flow going through them. We cn now chieve routings tht re preto-optiml with respect to the costs re ech node. Once gin, consider the exmple given in Figure 1. It s cler tht the flows in Figure 1() crete costs tht re not preto-optiml; however, under the pcket constrints, there is no other wy the pckets cn e routed (recll tht edge ct hs cpcity 1). As just discussed, with the currency constrints the flow shown in Figure 1() is now vlid. Thus, the currency constrints llow the routing to ecome preto-optiml. Furthermore, this preto-optimiztion ws done with only n greement etween nd c. We clim tht, in generl, preto-optimiztions under the currency constrints cn e found with only pirwise greements etween nodes. In order to prove routing results out the currency constrint model, we need to construct grph tht cptures ll policy informtion of the network we re given, the next section gives this construction. A. Policy Constrint Grph For policy-constrined routing prolem, we sy its policy constrint grph is directed grph where ech directed pth in the policy constrint grph is vlid pth in the policyconstrined routing. We ll now give constructions of the policy constrint grph in the cses where the edges hve unounded 1 For now, we ssume tht the nodes hve mechnism to detect this optimiztion. We discuss this further in Section VI s 1 s' 1 s 2 s' 2 1 1 d 1 c 1 2 2 d 2 c 2 Fig. 3. The unounded policy constrint grph of the network shown in Figure 2. cpcities nd then for the slightly trickier cse when the edges hve ounded cpcity. For now, let s ssume tht ll edges in the given network hve unounded cpcity. Let the policies t x e {(E 1, E 1),..., (E kx, E k x }. Then, in the unounded policy-constrint grph, x is split into k x vertices, sy x 1, x 2,..., x kx. Vertex x i then hs incoming edges E i nd outgoing edges E i. As simple exmple, Figure 3 shows the unounded policy constrint grph of the exmple network in Figure 1 where the network follows the vlley-free policy model. In Figure 3, it s cler tht once pth hs provider to customer edge, it cn never go ck up to provider. In order to construct the more generl ounded policy constrint grph, let the cpcity of n edge xy e c(xy). As efore, let the policies t x e {(E 1, E 1),..., (E kx, E k x }, nd let x 1, x 2,..., x kx e the vertices representing ech policy of x. For ech edge x i y j in the unounded policy constrint grph, where 1 i k x nd j is fixed, we need to insert dummy node tht llows us to ound to overll flow from ll x i s to y j. So, we redirect the edges from ech x i to y j so tht they ll point to new node d xy, nd we give them n unounded cpcity. Then, in order to retin the cpcity of xy in the originl network, we dd the edge d xy y j with cpcity c(d xy y j ) = c(xy). This edges limits the mount of flow tht cn trvel from ny x i to y j ut does not specify how the flows should e distriuted mongst the vrious outgoing policies of x (hence it does wy with the notion of n individul pcket identity which is precisely wht we defined the currency constrints s doing). An exmple of ounded constrin grph is shown in Figure 4. There, ech vertex hs three policies, so the constrint grph hs three versions of ech vertex. Note how xzy is pth in the originl network on in (), nd it is still possile to get from x to y in the constrint grph shown in (), ut the pth reflects the policies of ech node. t 1 t 2

x y 3 5 z x 1 x 2 x 3 y 1 Fig. 4. Incorporting edge cpcity constrints into the unounded policy constrint grph. In figure () re two edges xz nd yz of network with cpcities 3 nd 5 respectively. Ech vertex hs three policies: xz is n output edge for x s first two policies; zx is n output edge for z s first policy; yz is n output edge for y s first nd third policy; zy is n output edge for z s second nd third policy. Figure () shows how these constrints re modeled in the ounded constrint grph: Ech dummy node d uv hs one outgoing directed edge tht enforces the cpcity constrint of the edge uv in the network. The directed edges from copies of node u to dummy node d uv enforce the policy constrints; there is no such edge from copy u i if uv is not n outgoing edge for u s i th policy. y 2 y 3 d xz B. Currency-Constrined Routing Results The following theorems show tht the discourging computtionl results of Section III-B out policy dispper when policy is enforced t the currency-level rther thn the pcket level. Theorem 5: Under the currency constrints, it tkes polynomil time to find n s-t flow tht is s lrge s the minimum s-t policy cut, nd the lgorithm cn e implemented to run in polynomil time on distriuted model, using only pirwise greements etween djcent nodes, where ech of the two prties enefits from the greement. Proof: Let type 1 edge in the ounded policy constrint construction e one tht goes from dummy vertex node to copy of network node, ie. Figure 4 hs four type 1 edges d xz z 2, d zx x 3, d yz z 2, nd d zy y 2. And let type 2 edge e one tht goes from copy of network node to dummy node. The type 2 edges hve unounded cpcities, so minimumcpcity cut consists exclusively of type 1 edges. If set of edges go from set of copies x 1, x 2,..., x k of node x to dummy vertex, let us denote the dummy vertex y x. Let the imge of type 1 edge (x, y j ) in the network e the link xy tht gve rise to it in the construction. Note tht (x, y j ) nd (y, x h ) oth mp to the sme imge for some 1 h, k, where k is the mximum numer of policies. Becuse j is the unique policy t y for pckets coming into y on xy nd h is the unique policy t x for pckets coming into x on xy, these re the only two edges tht re inverse imges of xy. Let s i denote the copy of s tht corresponds to the policy for pckets originting t s in the network. A pth from s to t is policy-respecting pth if nd only if it is the imge of type 1 edges on pth from s i to copy t j in the constrint 3 d zx 5 d yz 3 d zy 5 z 1 z 2 z 3 grph. By min-cpcity s-t pth in the constrint grph we denote minimum edge cut tht severs ll such pths in the constrint grph. Suppose tht this hs totl cpcity of c. The imge of this cut in the constrint grph hs cpcity t lest c/2, since ech edge of the imge is the imge of t most two edges of the cut. This cuts the imges of ll pths from s i to t in the constrint grph, so it cuts ll policy pths in the network. By the mx-flow min-cut theorem, there is flow from s i to copies of t of mgnitude c. The imge of this flow is flow in the network where link xy of cpcity c i cn hve flow of t most 2c i on it: t most c i units from x to y nd t most c i units from y to x. The currency model llows the minimum of these two flows to e cnceled y n equl portion of the flow in the other direction, yielding flow of t most c on the edge. Since this resolution cn e performed t ll edges of the network where the flow exceeds the cpcity, the finl flow stisfies the cpcity. Ech resolution of cpcity violtion is n optimiztion permitted under the currency model, ut not under the pcket model. Moreover, ech resolution requires n greement etween two djcent nodes x nd y, nd the greement reduces the routing costs for oth x nd y. Theorem 6: It tkes polynomil time to find set of edge disjoint pths under the currency constrints tht is s lrge s the numer of edges in minimum policy edge cut, nd the lgorithm cn e implemented on distriuted model using only pirwise greements etween djcent nodes, where ech of the two prties enefits from the greement. Proof: (Sketch) The proof is y reduction to Theorem 5, y ssigning unit edge cpcities to the links of the network. V. NEW ALGORITHMS FOR PACKET-CONSTRAINED OPTIMIZATION PROBLEMS In this section, we once gin consider optimiztion prolems under the pcket constrints. Now rmed with our powerful policy constrint grph construction, we re le to find n efficient lgorithm to find shortest policy-oserving pths in Theorem 7. And finlly in Lemm 1, we use our construction to find k-pproximtion lgorithm for the edgedisjoint policy pths, where k is the numer of policies t ech node. Theorem 7: Given network with n nodes nd m links nd t most k ritrry policies t ech node of the form given in Definition 2, point 5 t ech node, it tkes O(k(n + m)) time to find the shortest policy-oserving pths from every node to given destintion node. Proof: The construction of the unounded constrint grph cretes t most k copies of ech vertex, so the numer of vertices is t most kn. The key to ounding the numer of edges is the fct tht the incoming edges for different policies t node v re disjoint. Thus, for ny edge uv, there is t most one copy v j of v tht receives incoming directed edges from copies of u. An edge uv of the network mps to t most

k edges of the form (u i, v j ) nd t most k edges of the form (v h, u l ), for totl of t most 2k edges. Let s i e the copy of s in the grph tht corresponds to the policy for pckets originting t s. Let the imge of n edge (x i, y j ) in the network e link xy. A pth in the network is policy pth if nd only if it is the imge of the sequence of edges in pth from s i to copy of t. Run redth-first serch from s i. For ech node x, find the copy x i of x tht hs minimum distnce lel, nd the prent y j of this node in the redth-first serch tree; let the prent of x in the network e node the node y tht is the imge of y j. The prent reltion is tree rooted t s such tht the unique tree pth from s to ny node x is shortest policy pth. A somewht tighter ound is O(k 1 n+k 2 m), where k 1 is the sum, over ll vertices of the numer of policies t the vertex, nd k 2 is the sum, over ll edges, of the numer of policies t the endpoints of the edge. Lemm 1: There is k-pproximtion lgorithm for finding edge-disjoint policy pths under the pcket constrints, given network with t most k policies t ech node. Proof: (Sketch) Let the imge in the network of vertex x i in the unounded policy grph e the node x tht gve rise to it in the construction. By n rgument nlogous to the one in the proof of Theorem 7, set of vertices is n s-t policy cut in the network if it cuts ll pths from the copy s i of s tht hndles pckets originting t s from ll copies of t. The imge such set in the network is t lest 1/k times s lrge, since ech node of the network is the imge of t most k vertices of the cut. The result of Erlech et. l. is therefore specil cse of our Lemm, reflecting the fct tht vlley-free consists of two policies t ech node, one for providers nd peers, nd one for customers nd silings. Erlech et. l. lso show tht, unless P = NP, no etter pproximtion ound is possile, ut we do not yet know whether this result generlizes to Lemm 1. VI. DISCUSSION The results presented here show we cn gin gret del y enforcing policies on currency-level rther thn on pcket level. This suggests new direction in developing routing lgorithms. A trditionl routing lgorithm such s BGP computes networks routes ccording some routing policy. Once the routes hve een computed, second phse monitors trffic nd looks for optimiztions where pckets my e forwrded on pths tht do not comply with the policy. These optimiztions cn e performed on loclized sis nd need not require coopertion of ll nodes in the network. Nodes which fil to cooperte continue to use the pths computed y the trditionl protocol such s BGP. Nodes which choose to cooperte cn gin y greeing to diverting pckets onto non-policy compliment routes in return for similr ctions y other nodes in the network. One possile protocol for tking dvntge of the currency relxtion involves dvertising of pths. Senders send groups of k pckets ccompnied y smll envelope tht indictes the pths tht the pckets re expected to follow. One my set k to e lrge to mke the cost of forwrding envelopes trivil compred to the cost of forwrding pckets. The ctors gree tht pckets cnnot proceed without n ccompnying envelope, ut tht it is cceptle to swp the contents of two envelopes tht re ound for the sme destintion. One consequence is tht, fter optimiztion, some envelopes my trvel empty for some portions of their pth. Work remins to explore prcticl implementtions of these protocols, s well s to find distriuted lgorithms tht mke optiml use of them. One immedite concern is pcket looping. A trditionl routing protocol such s BGP computes the policy complint routes nd prevents the formtion of long lsting routing loops. But our pproch llows pcket to devite from the policy complint route nd thus loop freedom is no longer gurnteed. We first rgue tht ny loops will not cuse prolems t the ggregte trffic level. Since the improvement is n optimiztion of flow tht is indistinguishle from one tht oserves the policy t the level of the pckets, there is no dnger tht cycling of pckets will increse the trffic in the network. But this gurntee is of little comfort to pcket tht my ecome permnently stuck in loop. One pproch under the currency model is to tke dvntge of nondeterminism in deciding which of two indistinguishle pckets t node to route to two distinct next hops. This mkes the proility of pcket cycling k times vnish exponentilly s k increses. A second more deterministic pproch is keep count of how mny times pcket is diverted. The sender sets n initil vlue in DivertsLeft field nd this field specifies how mny times the pcket my e diverted from onto non-policy complint route. DivertsLef t is decremented ech time the pcket is forwrded out n interfce tht does not mtch the interfce of the policy complint route. When DivertsLef t reches zero, the pcket cn no longer e diverted from the policy complint route. Since the policy complint route is ssumed to e loop free, the pcket is now forwrd long this loop free pth. VII. CONCLUSIONS AND FUTURE WORK This pper considered the impct of routing policy nd showed how enforcing routing policies on pcket level results in severl prcticl nd theoreticl limittions. The prolem however is not with the routing policies, ut rther with the policies re enforced. The prolems occur when policies re enforced on ech pcket. By insted tking currency level pproch to enforcement, one cn still meet the rod gols of the routing nd eliminte the prolems. These results suggest tht future work on routing protocols should consider dopting currency pproch where individul pckets cn violte the routing policy s long s the overll system still meets the policy. [Chv83] REFERENCES V. Chvtl. Liner Progrmming. W. H. Freemn, New York, 1983.

[EHPV05] T. Erlech, A. Hll, A. Pnconesi, nd D. Vukdinovic. Cuts nd disjoint pths in the vlley-free pth model of internet gp routing. Lecture Notes in Computer Science, 3405:49 62, 2005. [Go00] L. Go. On inferring utonomous system reltionships in the internet, 2000. [GW02] L. Go nd F. Wng. The extent of s pth infltion y routing [Tr83] policies. IEEE Glol Internet Symposium, 2002. R. E. Trjn. Dt Structures nd Network Algorithms. Society for Industril nd Applied Mth., Phildelphi, 1983. [Wes01] D. B. West. Introduction to Grph Theory. Prentice Hll, Englewood Cliffs, New Jersey, 2001.