Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 Network Transport Layer: Primal-Dual Resource Allocation; TCP in New Settings Y. Richard Yang 4/6/2016.

Similar presentations


Presentation on theme: "1 Network Transport Layer: Primal-Dual Resource Allocation; TCP in New Settings Y. Richard Yang 4/6/2016."— Presentation transcript:

1 1 Network Transport Layer: Primal-Dual Resource Allocation; TCP in New Settings Y. Richard Yang http://zoo.cs.yale.edu/classes/cs433/ 4/6/2016

2 2 Outline  Admin and recap  Bandwidth allocation framework  Network overview

3 Admin. r Exam 1 m High – 74 m Low – 36 m Solutions and grading rubric to be posted online Please discuss any questions with me and TFs r Assignment four m Questions? r Projects 3

4 Admin: Web Server Benchmarking (2016; Using Zoo Machines) 4

5 Admin: Web Server Benchmarking (Dedicated Machine; 2013) 5 - Apache: 4.925 Gbps - Fastest student server: 7.530 Gbps Apache (2013)

6 Outline r Recap  Transport congestion control  What is congestion  The AIMD alg o TCP/reno congestion control o TCP/Vegas o A unifying view of TCP/Reno TCP/Vegas o Network wide resource allocation o Framework o Axiom derivation of network-wide objective function  Derive distributed algorithm

7 Outline r Recap  Transport congestion control  What is congestion  The AIMD alg o TCP/reno congestion control o TCP/Vegas o A unifying view of TCP/Reno TCP/Vegas o Network wide resource allocation o Framework o Axiom derivation of network-wide objective function  Derive distributed algorithm

8 8 Recap: TCP/Reno and TCP/Vegas TCP/RenoTCP/Vegas Congestion signal Dynamics (x’) Equilibrium loss rate p queueying delay T queueing

9 9 Recap: Interpreting Congestion Measure x f (t) q l (t) q 2 (t) TCP/Reno: TCP/Vegas:

10 Recap: Network-Wide Resource Allocation Examples ObjectiveAllocation (x1, x2, x3) TCP/Reno0.260.74 TCP/Vegas1/32/3 Max Throughput011 Max-min½½½ Max sum log(x)1/32/3 Max sum of -1/(RTT 2 x)0.260.74 10 x1x1 x2x2 x3x3 C= 1

11 11 Roadmap: Resource Allocation Frameworks r Engineering (design): m how to determine objective? m given objective, how to design effective alg? r Science/reverse engineering (understand): m better understanding of current protocols

12 12 Recap: Nash Bargain Solution (NBS) r R T s x1x1 x2x2

13 13 Recap: Nash Bargain Solution (NBS) r Surprising result by John Nash (1951) m the rate allocation point is the feasible point which maximizes r This is equivalent to maximize r In other words, assume each flow f has utility function log(x f ) R x1x1 x2x2

14 Outline r Recap  Transport congestion control  What is congestion  The AIMD alg o TCP/reno congestion control o TCP/Vegas o A unifying view of TCP/Reno TCP/Vegas o Network wide resource allocation o Framework o Axiom derivation of network-wide objective function  Derive distributed algorithm

15 15 Problem x1x1 x2x2 x3x3 1 1 Typical setting: max f(x) s.t. x in S

16 16 Problem x1x1 x2x2 x3x3 1 1 Q: Why is it hard to solve the problem using a distributed protocol (i.e., in the Internet)?

17 17 A Two-Slide Summary of Constrained Convex Optimization Theory g(x) f(x) f(x) concave g(x) linear S is a convex set q S -Map each x in S, to [g(x), f(x)] -For each slope q (>=0), computes f(x) – q g(x) of all mapped [f(x), g(x)] q

18 18 A Two-Slide Summary of Constrained Convex Optimization Theory g(x) f(x) f(x) concave g(x) linear S is a convex set q1q1 q2q2 S -D(q) is called the dual; q (>= 0) are called prices in economics - According to optimization theory: when D(q) achieves minimum over all q (>= 0), then the optimization objective is achieved. -D(q) provides an upper bound on obj. q3q3

19 19 Dual of the Primal x1x1 x2x2 x3x3 1 1

20 20 Decomposition r Assume each link l has non-negative congestion signal q l, consider the dual D(q) x1x1 x2x2 x3x3 1 1

21 21 Distributed Optimization: User Problem r Given network-wide signal per unit rate p f (=sum of q l along the path), flow f chooses rate x f to maximize: r Using the network signals, the optimization problem of each user is decoupled: independent of each other!

22 22 Distributed Optimization: User Problem At equilibrium (i.e., at optimal), x f satisfies: How should flow f adjust x f locally?

23 23 Interpreting Congestion Measure x f (t) q l (t) q 2 (t)

24 24 Distributed Optimization: Network Problem Assume after all flows have picked their optimal rates given congestion signal, the network (i.e., link l) adjusts the link signals q l :

25 25 Distributed Optimization: Network Problem how should link l adjust q l locally?

26 26 Decomposition r SYSTEM(U): r USER f : r NETWORK:

27 Outline r Recap  Transport congestion control  What is congestion  The AIMD alg o TCP/reno congestion control o TCP/Vegas o A unifying view of TCP/Reno TCP/Vegas o Network wide resource allocation o Framework o Axiom derivation of network-wide objective function o Derive distributed algorithm  TCP/Reno, TCP/Vegas revisited

28 28 TCP/Reno Dynamics

29 29 TCP/Vegas Dynamics

30 30 Summary: TCP/Vegas and TCP/Reno r Pricing signal is queueing delay T queueing r Pricing signal is loss rate p

31 31 Summary: Resource Allocation Framework r Engineering (design): m how to determine objective? m given objective, how to design effective alg? r Science/reverse engineering (understand): m better understanding of current protocols r Additional pointers m http://www.statslab.cam.ac.uk/~frank/pf/

32 Outline r Recap  Transport congestion control  What is congestion  The AIMD alg o TCP/reno congestion control o TCP/Vegas o A unifying view of TCP/Reno TCP/Vegas o Network wide resource allocation o Framework o Axiom derivation of network-wide objective function o Derive distributed algorithm  New protocols

33 Motivation TCP/Reno growth function Time cwnd CA TD ssthresh TD WmWm CA Grows linearly throughout. Motivation: Is there a faster way?

34 TCP BIC Algorithm  Setting - W max = cwnd size before reduction -Too big - W min = β*W max – just after reduction, where β is multiplicative decrease factor -Small  Basic idea - binary search between W max and W min Time cwnd CA TD Wmin TD WmWm CA Wmax

35 TCP BIC Algorithm: Issues  Pure binary search (jump from W min to (W max and W min )/2) may be too aggressive o Use a large step size Smax  What if you grow above W max ? - Use binary growth (slow start) to probe more Time cwnd CA TD Wmin TD WmWm CA Wmax

36 TCP BIC Algorithm Packet loss event W max W min = β*W max midpoint = (W min + W max )/2 midpoint – W min > S max W min + S max W min midpoint = (W min + W max )/2 W min + S max W min Additive Increase midpoint = (W min + W max )/2 W min + S min W min (midpoint – W min )< S min Binary Search W max + S min W max +S max Slow Start W max + 2S max W max + 3S max Additive Inc. Max Probing

37 TCP BIC Algorithm while (cwnd < Wmax) { if ( (midpoint - Wmin) > Smax ) cwnd = cwnd + Smax else if ((midpoint - Wmin) < Smin) cwnd = Wmax else cwnd = midpoint if (no packet loss) Wmin = cwnd else Wmin = β*cwnd Wmax = cwnd midpoint = (Wmax + Wmin)/2 } Additive Increase Binary Search

38 TCP BIC Algorithm: Probe while (cwnd >= W max ){ if (cwnd < W max + S max ) cwnd = cwnd + S min else cwnd = cwnd + S max if (packet loss) W min = β*cwnd W max = cwnd } Slow growth Fast growth Max Probing

39 TCP BIC - Summary Packet loss event Binary Increase Additive Increase Slow Start Max Probing + S max Time Additive Increase W max jump to midpoint + S min + S max

40 TCP BIC in Action

41 41 TCP BIC Analysis  Advantages o Faster convergence at large gap o Slower growth at convergence to avoid timeout  Issues o Still depend on RTT o Complex growth function More details: http://www.land.ufrj.br/~classes/coppe-redes-2007/projeto/BIC-TCP-infocom-04.pdf

42 TCP Cubic  cwnd = C( t – K) 3 + W max, where - W max = cwnd before last reduction - C scaling factor - t is the time elapsed since last window reduction - - β multiplicative decrease factor

43 TCP CUBIC Packet loss event Time Steady State Behavior Max Probing W max Around W max, window growth almost becomes zero Fast growth upon reduction Cubic starts probing for more bandwidth

44 TCP CUBIC Advantages  Good RTT fairness  Growth dominated by t, competing flows have same t after synchronized packet loss  Real-time dependent  Similar to BIC but linear increases are time dependent  Does not depend on ACK’s like TCP/ Reno  Scalability  Cubic increases window to W max (or its vicinity) quickly and keeps it there longer

45 TCP CUBIC Drawbacks  Slow Convergence - Flows with higher cwnd are more aggressive initially => Prolonged unfairness between flows - More details: http://www4.ncsu.edu/~rhee/export/bitcp/c ubic-paper.pdf

46 Summary  Many aspects of TCP can be studied, for example TCP under wireless (LTE)  http://conferences.sigcomm.org/sigcomm/2013/papers/sigcomm/p363.pdf

47 47 Outline  Admin and recap  Network resource allocation framework  Network overview

48 48 Network Layer r Transport packet from source to dest. r Network layer in every host, router Basic function: m determine route taken by packets of a flow, and move the packets along the route

49 49 Network Layer: Complexity Factors r For network providers m efficiency of routes m policy control on routes m scalability r For users: quality of services m guaranteed bandwidth? m preservation of inter-packet timing (no jitter)? m loss-free delivery? m in-order delivery? r Interaction between users and network providers m signaling: congestion feedback/resource reservation

50 50 Network Layer Quality of Service Network Architecture Internet ATM Service Model best effort CBR VBR ABR UBR Bandwidth none constant rate guaranteed rate guaranteed minimum none Loss no yes no Order no yes Timing no yes no Congestion feedback no (inferred via loss/delay) no congestion no congestion yes no Guarantees ? r Internet model being extended: Intserv, Diffserv m multimedia networking ATM: Asynchronous Transfer Mode; CBR: Constant Bit Rate; V: Variable; A: available; U: User

51 51 Current Internet Network Layer forwarding Network layer functions: Routing protocols path selection e.g., RIP, OSPF, BGP Network layer protocol (e.g., IP) addressing conventions packet format packet handling conventions Control protocols error reporting e.g. ICMP Transport layer Link layer physical layer Network layer Control protocols - router “signaling” e.g. RSVP

52 52 Routing: Overview Graph abstraction for the routing problem: r graph nodes are routers r graph edges are physical links m links have properties: delay, capacity, $ cost, policy Goal: determine “good” paths (sequences of routers) thru networks from source to dest. Routing A E D CB F 2 2 1 3 1 1 2 5 3 5

53 53 Routing Design Space r Routing has a large design space m who decides routing? source routing: end hosts make decision network routing: networks make decision m how many paths from source s to destination d? multi-path routing single path routing m will routing adapt to network traffic demand? adaptive routing static routing m…m… - Robustness - Optimality - Simplicity

54 54 Routing Design Space: User-based, Multipath, Adaptive r Routing has a large design space m who decides routing?  source routing: end hosts make decision network routing: networks make decision m how many paths from source s to destination d?  multi-path routing single path routing m will routing adapt to network traffic demand?  adaptive routing static routing m … - Robustness - Optimality - Simplicity

55 55 User Optimal, Multipath, Adaptive r User optimal: users pick the shortest routes (selfish routing) Braess’s paradox

56 56 Price of Anarchy For a network with linear latency functions  total latency of user (selfish) routing for given traffic demand ≤ 4/3 total latency of network optimal routing for the traffic demand

57 57 Price of Anarchy r For any network with continuous, non- decreasing latency functions  total latency of user (selfish) routing for given traffic demand ≤ total latency of network optimal routing for twice traffic demand

58 58 r Routing has a large design space m who decides routing? source routing: end hosts make decision  network routing: networks make decision - (applications such as overlay and p2p are trying to bypass it) m how many paths from source s to destination d? multi-path routing  single path routing (with small amount of multipath) m will routing adapt to network traffic demand? adaptive routing  static routing (mostly static; adjust in larger timescale) m … - Robustness - Optimality - Simplicity Routing Design Space: Internet

59 Backup Slides 59

60 60 Another Decomposition r SYSTEM(U): r USER f (U f ; p f ) r NETWORK(w f )

61 61 Decomposition Theorem r There exist vectors p, w and x such that 1. w f = p f x f for f  F 2. w f solves USER f (U f ; p f ) 3. x solves NETWORK(w) r The vector x then also solves SYSTEM(U).


Download ppt "1 Network Transport Layer: Primal-Dual Resource Allocation; TCP in New Settings Y. Richard Yang 4/6/2016."

Similar presentations


Ads by Google