combining multipath routing and congestion control for robustness peter key
Post on 21-Dec-2015
221 views
TRANSCRIPT
Combining Multipath Routing and Combining Multipath Routing and Congestion Control for RobustnessCongestion Control for Robustness
Peter KeyPeter Key
Motivation
• Performance of Internet /overlays unpredictable – and hard to manage
• Multiple ownership / policies (eg BGP) can exacerbate performance problems
• … but diversity increasing– Multihoming– Mesh
• So why not harness the diversity?
Outline
• Motivation• Framework• Resource Pooling
– 2 resources– the function– Cutset dimensioning
• Multipath – Coordinated control– Fluid dynamics
• Route choices & architectures• Concluding remarks
Framework
• Network: capacited graph – G=[X,J]
• Edges have capacity Cj
• Routes s S , sets of edges
• Demands type r, associated source –destination, can use a set of routes
• Link-route incidence matrix A,
route flow incidence matrix B
Framework
• File Transfers– Arrival rate – Mean file size
– Nr in progress
• Streaming – Arrival rate
– Mean holding time
– Mr in progress
• Rate allocation : – xr to both types (fair share): exact rate depends on utility
function
rload r
rr
1r rF
r1
r
lrlr
rrr CxMN :
)(
Resource sharing
Fixed Routing
Dynamic Routing
Fixed Proportions
FMean transf er time
C-
Capacity C
2
F
2p
1-p
1 FTransf er time
2 C-
p 1-pTransf er time F
C-2 C-2 (1 )p p
2 max( ,1 )Stable C p p
F
– Assume performance measure
– non-decreasing in 1st arg., non-increasing in second
– Dimensioning means
– Eg
Performance : the function
( , )C
( , ) some measurable C D D
( , ) =(- ,0)C C , D1( , ) ( )C C
( , )C
Take a cutset C of the Graph G
Under resource pooling, necessary performance conditions are
Becomes interesting when related to sufficiency
Cutset Dimensioning
,j r
j
r jjC
C
D
C
C
Node cutsets:
(Keslassy et al)
• Symmetric case; – Valiant load balancing, – Dynamic routing
Mesh Network Example
6
1
5 4
2
3
and ij j ij j
r r
2 per link suffi cient traffi c matrices
rN
1r
N 2r
N
Multipath Routing: Utility functions
• Utility function associated with type r flow
• increasing, strictly concave etc– Eg TCP,
– Putting w=k/(RTT)2 implies familiar
( )rU x
( )U x w x
1 1 TCP f air:
( )r
r
xT p r
Cost functions
• Now require “cost” convex, and
• True for packet marking etc • with “prices” pj,:
• is prob of drop/marking at j when load is yj,
• Eg small buffer model
( , )j C
0
( , ) /jy
j j j j jy C p z C dz
( ; ) ( ; )L z C Lz LC
j j jp y C
min 1,j j
j j
by yC Cjp
Multipath
Maximise
;r r sr sr j r j s sr sr jr s j r s
N U B x N A B x C
over
• Coordinated
• Single utility function across possible routes flow can choose– Single dependence on RTT
0srx
Fluid Dynamics
• Scale arrival rates and capacities by large number L and take limits
• Gives limiting ODE (FLLN)
1
, 1
rrrr ML
mNL
n
( ) ( ) ( ) ( );
( ) ' ( )r r r r r
r r r r
n t n t x n t mt C
m t m t
Limit Theorems
• Theorem:– Under multipath routing, there is a unique
invariant point– System in Lyapunov stable (under mild
conditions on )– Allocation is only non-zero to routes s for
which “prices” on route are equal– When no streaming, offered load is split
optimally, independent of utility functions
ˆ ˆˆ,r r r r r rm n x
j
Remarks
• Prices on route s are
• Unless “prices” are equal on different routes, only one route is used
• Coordinated multipath chooses load fractions to minimise total “cost”– if no streaming traffic present, fractions
independent of utility functions
ˆ' ( ; )j s j j jj
A y C
rs
Remarks
• Coordinated multipath chooses load fractions to minimise total “cost”rs
,
ˆ ;rrj j s sr sr sr j
j s r
A B x C
Route Choices
• How to search for low cost paths?– Use 2 per nominal route, (eg “direct” +1)– Periodically add new route at random– Probe to chose which route to drop
• Cf “Sticky Random” DAR– “Power of 2”, Mitzenmacher
• Theorem: Under random path resampling, mulitpath routing will find an optimal feasible load split, if one exists
Architecture
• Need path diversity– Dual homing– Multiple addresses (eg IPv6)
• For overlays, wireless, or the Internet?
• Need coordinated congestion control, uncoordinated, parallel, inefficient (see Laurent’s talk …)– at transport or application layer
Summary: Multipath routing/multi-access
• Source /edge routing
• Halve delay (processor sharing)
• Resilience • Simpler dimensioning (cutsets)
C
C
C
C
22 vs 2p p
1 1
vs 2 2 ) ( )C C
• Robust routing provides robustness to– Traffic variations /uncertainty– Routing / BGP / Network operators
• Need to combine multipath routing with congestion control
• Challenges: – Time-scales for route adaptation– Removing RTT bias of TCP?
Summary
References
• Fluid models of integrated traffic and multipath routing, Peter Key & Laurent Massoulié, QUESTA, June 2006
• Network Programming methods for loss networks, Gibbens and Kelly, JSAC 1995
• Stability of end-to-end algorithms for joint routing and rate control, Kelly and Voice, CCR, 2005
• Dynamic Alternative Routing, Gibbens, Kelly and Key, ITC, 1989.