Network Utility Maximization: Solving TCP Optimization Problems

Network Utility Maximization: Solving TCP Optimization Problems
Slide Note
Embed
Share

TCP, in computer networks, solves an optimization problem related to max-min rate allocation. This lecture discusses the role of TCP in maximizing network utility and its impact on protocol design. With a focus on distributed algorithms, utility functions, and examples, the content explores the intricate details of network utility maximization for efficient data transmission.

  • Network Utility Maximization
  • TCP Optimization
  • Distributed Algorithms
  • Utility Functions
  • Protocol Design

Uploaded on Apr 27, 2025 | 0 Views


Download Presentation

Please find below an Image/Link to download the presentation.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.If you encounter any issues during the download, it is possible that the publisher has removed the file from their server.

You are allowed to download the files provided on this website for personal or commercial use, subject to the condition that they are used lawfully. All files are the property of their respective owners.

The content on the website is provided AS IS for your information and personal use only. It may not be sold, licensed, or shared on other websites without obtaining consent from the author.

E N D

Presentation Transcript


  1. 6.829 Computer Networks Lecture 6: Network Utility Maximization Mohammad Alizadeh Fall 2016 1

  2. What Problem is TCP really solving? Max-min rate allocation? x1 = ? 1 Mb/s x2 = ? x3 = ? x1 1/3 x2 1/3 x3 1/3 Max- min TCP Assuming equal RTTs 2 1/3 1/3 1/3

  3. What Problem is TCP really solving? Max-min rate allocation? 1 Mb/s 1 Mb/s x1 = ? x3 = ? x2 = ? x1 1/2 x2 1/2 x3 1/2 Max- min TCP 3 ~0.4 ~0.6 ~0.6

  4. What Problem is TCP really solving? 1 Mb/s 1 Mb/s 1 Mb/s x1 = ? x3 = ? x2 = ? What is the difference between these links? 4

  5. What Problem is TCP really solving? 5

  6. Network Utility Maximization TCP is solving an optimization problem! Spurred a lot of research on analyzing and designing network protocols from the lens of optimization > 5000 citations 6

  7. Outline for Rest of Lecture Network Utility Maximization (NUM) Distributed Algorithm for NUM TCP s NUM Problem 7

  8. Utility Function Good model for elastic flows e.g. file downloads The benefit derived from sending at rate x We ll assume U(.) is increasing & concave 8

  9. Examples of Utility Functions log(x) x -1 x 9

  10. Network Utility Maximization (NUM) c1 = 1 Mb/s c2 = 1 Mb/s x1 x3 x2 maximize log(x1) + log(x2) + log(x3) subject to: x1 + x2 1 x1 + x3 1 10

  11. Network Utility Maximization (NUM) c1 = 1 Mb/s c2 = 1 Mb/s x1 x3 x2 maximize log(x1) + log(x2) + log(x3) x1 x2 x3 subject to: 1 1 1 1 0 1 0 1 11

  12. NUM: General Case N N flows L links (xi) Ui maximize i=1 subject to: c1 c2 x1 x2 0 1 0 1 1 1 0 1 0 0 RLxN routing matrix 0 0 1 1 0 cL xN 12

  13. NUM Example 1: Throughput Maximization c1 = 1 Mb/s c2 = 1 Mb/s x1 x3 x2 maximize x1 + x2 + x3 x1 = 0 Mb/s x2 = 1 Mb/s x3 = 1 Mb/s subject to: x1 + x2 1 x1 + x3 1 13

  14. NUM Example 2: Proportional Fairness c1 = 1 Mb/s c2 = 1 Mb/s x1 x3 x2 maximize log(x1) + log(x2) + log(x3) x1 = 1/3 Mb/s x2 = 2/3 Mb/s x3 = 2/3 Mb/s subject to: x1 + x2 1 x1 + x3 1 14

  15. NUM Example 3: -fairness c1 = 1 Mb/s c2 = 1 Mb/s x1 x3 x2 1-a 3 xi 1-a 0 (a constant) maximize alpha = 0 = 1 Objective i=1 Thrput Maximization Proportional Fairness subject to: x1 + x2 1 x1 + x3 1 Max-min Fairness 15

  16. Outline The Network Utility Maximization (NUM) Problem Distributed Algorithm for NUM TCP s NUM Problem 16

  17. Proportional Fairness Example c1 = 1 Mb/s c2 = 1 Mb/s x1 x3 x2 maximize log(x1) + log(x2) + log(x3) subject to: x1 + x2 1 x1 + x3 1 17

  18. Distributed Algorithm c1 = 1 Mb/s c2 = 1 Mb/s x1 p2 p1 x3 x2 pl= congestion price for link l price per unit of bandwidth (pl 0) qi = total price for source i Sum of prices on source i s path 18

  19. The Source Problem c1 = 1 Mb/s c2 = 1 Mb/s x1 p2 p1 x3 x2 Pick rate xi to maximize utility: log(xi) qi xi xi = 1/qi benefit cost This is done independently at each source. 19

  20. The Network Problem c1 = 1 Mb/s c2 = 1 Mb/s x1 p2 p1 x3 x2 Adapt link prices periodically based on congestion pl(t+1) = [ pl(t) + (yl(t) cl) ]+ total traffic at link l [.]+ = max(., 0) 20

  21. The Network Problem c1 = 1 Mb/s c2 = 1 Mb/s x1 p2 p1 x3 x2 Adapt link prices periodically based on congestion pl(t+1) = [ pl(t) + (yl(t) cl) ]+ This is done independently at each link. 21

  22. Putting it All Together c1 = 1 Mb/s c2 = 1 Mb/s x1 p2 p1 x3 x2 Sources x1(t) = 1 / (p1(t) + p2(t)) x2(t) = 1 / p1(t) x3(t) = 1 / p2(t) Links p1(t+1) = [p1(t) + (y1(t) c1)]+ p2(t+1) = [p2(t) + (y2(t) c2)]+ 22

  23. Example 23

  24. Outline The Network Utility Maximization (NUM) Problem NUM Distributed Algorithm TCP s NUM Problem 24

  25. TCP + PI c1 = 1 Mb/s c2 = 1 Mb/s x1 p2 p1 x3 x2 Sources x1(t) = 1 / RTT1 Links p1(t)+ p2(t) p1(t) p2(t) p1(t+1) = [p1(t) + (y1(t) c1)]+ p2(t+1) = [p2(t) + (y2(t) c2)]+ x2(t) = 1 / RTT2 x3(t) = 1 / RTT3 25

  26. What is TCPs Utility Function? 26

  27. 27

More Related Content