22
COPE: Traffic Engineering COPE: Traffic Engineering in Dynamic Networks in Dynamic Networks Hao Wang, Hao Wang, Haiyong Haiyong Xie, Xie, Lili Lili Qiu Qiu , , Yang Richard Yang, Yang Richard Yang, Yin Zhang Yin Zhang , Albert Greenberg , Albert Greenberg Yale University Yale University UT Austin UT Austin AT&T Labs AT&T Labs - - Research Research ACM SIGCOMM 2006 ACM SIGCOMM 2006

COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

COPE: Traffic Engineering COPE: Traffic Engineering in Dynamic Networksin Dynamic NetworksHao Wang, Hao Wang, HaiyongHaiyong Xie, Xie, LiliLili QiuQiu,,

Yang Richard Yang, Yang Richard Yang, Yin ZhangYin Zhang, Albert Greenberg, Albert GreenbergYale UniversityYale UniversityUT AustinUT Austin

AT&T Labs AT&T Labs -- ResearchResearchACM SIGCOMM 2006ACM SIGCOMM 2006

Page 2: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

2Traffic Engineering (TE)Traffic Engineering (TE)• Objective– Adapting the routing of traffic to avoid congestion and make more efficient use of network resource

• Motivation– High cost of network assets & highly competitive nature of ISP market– Routing influences efficiency of network resource utilization

• Latency, loss rate, congestion, …• Two components– Understand traffic demands– Configure routing protocols

• This paper focuses on intra-domain TE– But the basic approach may also apply in inter-domain TE and network optimization in general

Page 3: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

3Challenge: Unpredictable TrafficChallenge: Unpredictable Traffic

• Internet traffic is highly unpredictable!– Can be relatively stable most of the time …– However, usually contains spikes that ramp up extremely quickly

• We identified sudden traffic spikes in the traces of several networks– Unpredictable traffic variations have been observed and studied by other researchers

• [ Teixeira et al. ’04, Uhlig & Bonaventure ’02, Xu et al. ’05 ]– Confirmed by operators of several large networks via email survey– Abrupt traffic changes often occur when service is most valuable!

• Many possible causes for traffic unpredictability– Worms/viruses, DoS attacks, flash crowds, BGP routing changes

[ Teixeira et al. ’05, Agarwal et al. ’05 ], failures in other networks, load balancing by multihomed customers, TE by peers …• TE needs to handle unpredictable traffic

– Otherwise, links and/or routers may get unnecessarily overloaded• Long delay, high loss, reduced throughput, violation of SLA

– Customers can remember bad experiences really well …

Page 4: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

4Existing TE SolutionsExisting TE Solutions• Prediction-based TE– Examples:

• Off-line:– Single predicted TM [ Sharad et al. ’05 ]– Multiple predicted TMs [ Zhang et al. ’05 ]

• On-line: MATE [ Elwalid et al. ’01 ] & TeXCP [ Kandula et al. ’05 ]– Pro: Works great when traffic is predictable– Con: May pay a high penalty when real traffic deviates substantially from the prediction

• Oblivious routing– Examples:

• Oblivious routing [ Racke ’02, Azar et al. ’03, Applegate et al. ’03 ]• Valiant load-balancing [ Kodialam et al. ’05, Zhang & McKeown ’04 ]

– Pro: Provides worst-case performance bounds– Con: May be sub-optimal for normal traffic

• The optimal oblivious ratio of several real network topologies studied in [Applegate et al ’03] is ~2

Page 5: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

5Our Approach: COPEOur Approach: COPECommon-case Optimization with Penalty Envelope

C

X

Bound for set X

Optimize for set C

minf maxd∈C PC(f, d)s.t. (1) f is a routing

(2) ∀x∈X: PX(f, x) ≤ PEC: common-case (predicted) TMsX: all TMs of interestPC(f,d): common-case penalty functionPX(f,x): worst-case penalty functionPE: penalty envelope

Page 6: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

6ModelModel• Network topology: graph G = (V,E)

– V: set of routers– E: set of network links

• Traffic matrices (TMs)– A TM is a set of demands: d = { dab | a,b ∈ V }– dab: traffic demand from a to b– Can extend to point-to-multipoint demands

• MPLS-style, link-based routing– f = { fab(i,j) | a,b ∈ V, (i,j) ∈ E }– fab(i,j) : the fraction of demand from a to b (i.e., dab) that is routed through link (i,j)– Paper includes ideas on how to approximate OSPF-style (i.e., shortest path implementable) routing

Page 7: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

7Routing Performance MetricsRouting Performance Metrics• Maximum Link Utilization (MLU):

• Optimal Utilization

• Performance Ratio),(min)(

routing a is dfUdOU

f=

)(

),(),(

dOU

dfUdfPR =

∑∈∈

=Vba

ijababEji

cjifddfU,

),(/),(max),(

Page 8: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

8COPE InstantiationCOPE Instantiation

C: convex hull of multiple past TMs– A linear predictor predicts the next TM as a convex combination of past TMs (e.g., EWMA)– Aggregation of all possible linear predictors � the convex hull

X: all possible non-negative TMs– Can add access capacity constraints or use a bigger convex hull

PC(f,d): penalty function for common cases– maximum link utilization: U(f,d)– performance ratio: PR(f,d)

PX(f,x): penalty function for worst cases– performance ratio: PR(f,x)PE: penalty envelope

– PE = β minf maxx∈X PX(f,x)– β≥1 controls the size of PE w.r.t. the optimal worst-case penalty

• β=1 � oblivious routing• β=∞ � prediction-based TE

minf maxd∈C PC(f, d)s.t. (1) f is a routing; and (2) ∀x∈X: PC(f, x) ≤ PE

Page 9: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

9Current COPE ImplementationCurrent COPE Implementation1. Collect TMs continuously2. Compute COPE routing for the next day by solving a linear program (LP)

– Common-case optimization• Common case: convex hull of multiple past TMs

– All TMs in previous day + same/previous days in last week• Minimize either MLU or PR over the convex hull

– Penalty envelope• Bounded PR over all possible nonnegative TMs

– See paper for details of our LP formulation3. Install COPE routing

• Currently done once per day � an off-line solution– Can be made on-line (e.g., recompute routing upon detection of significant changes in TM)

Page 10: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

10COPE IllustratedCOPE Illustrated

Prediction-based TE

Best common-case+

Poor worst-caseOblivious Routing

Poor common-case+

Best worst-caseCOPE

Good common-case+

Bounded worst-case

Spectrum of TE with unpredictable traffic

Position controllable by penalty envelope

There are enough unexpected cases � Penalty envelope is requiredThe worst unexpected case too unlikely to occur �Too wasteful to “optimize” for the worst-case (at the cost of poor common-case performance)

Page 11: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

11Evaluation MethodologyEvaluation Methodology• TE Algorithms

– COPE: COPE with PC(f,d) = PR(f,d) (i.e. performance ratio)– COPE-MLU: COPE with PC(f,d) = U(f,d) (i.e. max link utilization)– Oblivious routing: minf maxxPR(f,x) (≈ COPE with β=1)– Dynamic: optimize routing for TM in previous interval– Peak: peak interval of previous day + prev/same days in last week– Multi: all intervals in previous day + prev/same days in last week– Optimal: requires an oracle

• Dataset– US-ISP

• hourly PoP-level TMs for a tier-1 ISP (1 month in 2005)• Optimal oblivious ratio: 2.045; default penalty envelope: 2.5

– Abilene• 5-min router-level TMs on Abilene (6 months: Mar – Sep. 2004)• Optimal oblivious ratio: 1.853; default penalty envelope: 2.0

Page 12: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

12USUS--ISP: Performance RatioISP: Performance Ratio

1

1.5

2

2.5

3

3.5

4

4.5

5

0 100 200 300 400 500 600 700

Per

form

ance

rat

io

Intervals sorted by performance ratio

multipeakdynamicobliviousCOPE-MLUCOPE

Common cases: COPE is close to optimal/dynamic and much better than othersUnexpected cases: COPE beats even OR and is much better than others

Page 13: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

13USUS--ISP: Maximum Link UtilizationISP: Maximum Link Utilization

0

1

2

3

4

5

6

0 100 200 300 400 500

MLU

afte

r no

rmal

izat

ion

Interval

multipeakdynamicobliviousCOPE-MLUCOPE

Common cases: COPE is close to optimal/dynamic and much better than othersUnexpected cases: COPE beats even OR and is much better than others

Page 14: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

14Abilene: Performance RatioAbilene: Performance Ratio

1

2

3

4

5

6

7

8

0 500 1000 1500 2000

Per

form

ance

rat

io

Sorted interval

multipeak

dynamicoblivious

COPE

Common cases: COPE is close to optimal/dynamic and much better than othersUnexpected cases: COPE is close to OR and much better than others

Page 15: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

15Abilene: MLU in Common CasesAbilene: MLU in Common Cases

0

0.05

0.1

0.15

0.2

100 120 140 160 180 200 220 240 260 280

MLU

Interval

multipeak

dynamicoblivious

COPEoptimal

Common cases: COPE is close to optimal/dynamic and much better than others

Page 16: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

16Abilene: MLU in Unexpected CasesAbilene: MLU in Unexpected Cases

0

0.5

1

1.5

2

2.5

120 130 140 150 160 170 180 190 200

MLU

Interval

multipeak

dynamicoblivious

COPEoptimal

Unexpected cases: COPE is close to OR and much better than others

Page 17: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

17USUS--ISP: Sensitivity to PEISP: Sensitivity to PE

1

1.2

1.4

1.6

1.8

2

2.2

0 50 100 150 200 250

Per

form

ance

rat

io

Intervals sorted by performance ratio

obliviousPE = 2.2PE = 2.4PE = 2.6PE = 2.8

COPE is insensitive to PE; even a small margin in PE can significantly improve the common-case performance

Page 18: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

18COPE with COPE with InterdomainInterdomain RoutingRouting• Motivation

– Changes in availability of interdomain routes can cause significant shifts of traffic within the domain• E.g. when a peering link fails, all traffic through that link isrerouted

• Challenges– Point-to-multipoint demands �

need to find splitting ratios among exit points– The set of exit points may change �

topology itself is dynamic– Too many prefixes �

cannot enumerate all possible exit point changes

Page 19: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

19COPE with COPE with InterdomainInterdomain Routing: Routing: A TwoA Two--Step ApproachStep Approach

1. Apply COPE on an extended topology to derive good splitting ratios• Group dest prefixes with same set of exit points into a virtual node• Derive pseudo demands destined to each virtual node by merging demands to prefixes that belong to this virtual node• Connect virtual node to corresponding peer using virtual link with infinite BW• Compute extended topology G’ as G’ = intradomain topology + peers + peering links + virtual nodes + virtual links• Apply COPE to compute routing on G’ for the pseudo demands• Derive splitting ratios based on the routes

2. Apply COPE on point-to-point demands to compute intradomain routing• Use the splitting ratios obtained in Step 1 to map point-to-multipoint demands into point-to-point demands

intradomain topology peer

peerpeer

peer

virtual

virtual

Page 20: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

20Preliminary EvaluationPreliminary Evaluation

COPE can significantly limit the impact of peering link failures

0

0.05

0.1

0.15

0.2

0 50 100 150 200

MLU

Interval

link 11 and 15 fail

COPE PE=2.2, with failuresCOPE PE=2.2, no failureoptimal, with failuresoptimal, no failure

Page 21: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

21Conclusions & Future WorkConclusions & Future Work• COPE = Common-case Optimization with Penalty Envelope• COPE works!

– Common cases: close to optimal; much better than oblivious routing and prediction-based TE with comparable overhead– Unexpected cases: much better than prediction-based TE, and sometimes may beat oblivious routing– COPE is insensitive to the size of the penalty envelope; even a small margin in PE improves common-case performance a lot– COPE can be extended to cope with interdomain routes

• Lots of ongoing & future work– Efficient implementation of COPE– COPE with MPLS and VPN– COPE with OSPF– COPE with online TE – COPE for other network optimization problems

Page 22: COPE: Traffic Engineering in Dynamic Networks · COPE Instantiation C: convex hull of multiple past TMs – A linear predictor predicts the next TM as a convex combination of past

22

Thank you!Thank you!