A Hybrid Systems Modeling Framework for Fast and Accurate Simulation of Data Communication Networks João P. Hespanha University of Calif. Santa Barbara.

Slides:



Advertisements
Similar presentations
Congestion Control and Fairness Models Nick Feamster CS 4251 Computer Networking II Spring 2008.
Advertisements

Michele Pagano – A Survey on TCP Performance Evaluation and Modeling 1 Department of Information Engineering University of Pisa Network Telecomunication.
Simulation-based Comparison of Tahoe, Reno, and SACK TCP Kevin Fall & Sally Floyd Presented: Heather Heiman September 10, 2002.
24-1 Chapter 24. Congestion Control and Quality of Service (part 1) 23.1 Data Traffic 23.2 Congestion 23.3 Congestion Control 23.4 Two Examples.
1 TCP Congestion Control. 2 TCP Segment Structure source port # dest port # 32 bits application data (variable length) sequence number acknowledgement.
Improving TCP Performance over Mobile Ad Hoc Networks by Exploiting Cross- Layer Information Awareness Xin Yu Department Of Computer Science New York University,
Congestion Control Created by M Bateman, A Ruddle & C Allison As part of the TCP View project.
TCP Congestion Control Dina Katabi & Sam Madden nms.csail.mit.edu/~dina 6.033, Spring 2014.
1 End to End Bandwidth Estimation in TCP to improve Wireless Link Utilization S. Mascolo, A.Grieco, G.Pau, M.Gerla, C.Casetti Presented by Abhijit Pandey.
Restricted Slow-Start for TCP William Allcock 1,2, Sanjay Hegde 3 and Rajkumar Kettimuthu 1,2 1 Argonne National Laboratory 2 The University of Chicago.
Practice Questions: Congestion Control and Queuing
Selfish Behavior and Stability of the Internet: A Game-Theoretic Analysis of TCP Presented by Shariq Rizvi CS 294-4: Peer-to-Peer Systems.
Congestion Control An Overview -Jyothi Guntaka. Congestion  What is congestion ?  The aggregate demand for network resources exceeds the available capacity.
XCP: Congestion Control for High Bandwidth-Delay Product Network Dina Katabi, Mark Handley and Charlie Rohrs Presented by Ao-Jan Su.
Chapter 3 Transport Layer slides are modified from J. Kurose & K. Ross CPE 400 / 600 Computer Communication Networks Lecture 12.
Congestion Control Tanenbaum 5.3, /12/2015Congestion Control (A Loss Based Technique: TCP)2 What? Why? Congestion occurs when –there is no reservation.
Transport Layer3-1 Congestion Control. Transport Layer3-2 Principles of Congestion Control Congestion: r informally: “too many sources sending too much.
Katz, Stoica F04 EECS 122: Introduction to Computer Networks Performance Modeling Computer Science Division Department of Electrical Engineering and Computer.
WB-RTO: A Window-Based Retransmission Timeout Ioannis Psaras, Vassilis Tsaoussidis Demokritos University of Thrace, Xanthi, Greece.
Fluid-based Analysis of a Network of AQM Routers Supporting TCP Flows with an Application to RED Vishal Misra Wei-Bo Gong Don Towsley University of Massachusetts,
1 Chapter 3 Transport Layer. 2 Chapter 3 outline 3.1 Transport-layer services 3.2 Multiplexing and demultiplexing 3.3 Connectionless transport: UDP 3.4.
1 Emulating AQM from End Hosts Presenters: Syed Zaidi Ivor Rodrigues.
Data Communication and Networks
Medium Start in TCP-Friendly Rate Control Protocol CS 217 Class Project Spring 04 Peter Leong & Michael Welch.
Estimating Congestion in TCP Traffic Stephan Bohacek and Boris Rozovskii University of Southern California Objective: Develop stochastic model of TCP Necessary.
Congestion Control for High Bandwidth-delay Product Networks Dina Katabi, Mark Handley, Charlie Rohrs.
TCP: flow and congestion control. Flow Control Flow Control is a technique for speed-matching of transmitter and receiver. Flow control ensures that a.
Lect3..ppt - 09/12/04 CIS 4100 Systems Performance and Evaluation Lecture 3 by Zornitza Genova Prodanoff.
Hybrid Systems Modeling of Communication Networks João P. Hespanha University of California at Santa Barbara Hybrid Control and Switched Systems.
3: Transport Layer3b-1 Principles of Congestion Control Congestion: r informally: “too many sources sending too much data too fast for network to handle”
Transport Layer 4 2: Transport Layer 4.
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
Qian Zhang Department of Computer Science HKUST Advanced Topics in Next- Generation Wireless Networks Transport Protocols in Ad hoc Networks.
A Hybrid Systems Modeling Framework for Communication Network Junsoo Lee (USC) Prof. Stephan Bohacek Prof. Joao Hespanha Prof. Katia Obraczka Sep 8, 2004.
TFRC: TCP Friendly Rate Control using TCP Equation Based Congestion Model CS 218 W 2003 Oct 29, 2003.
Computer Networks Performance Metrics. Performance Metrics Outline Generic Performance Metrics Network performance Measures Components of Hop and End-to-End.
Understanding the Performance of TCP Pacing Amit Aggarwal, Stefan Savage, Thomas Anderson Department of Computer Science and Engineering University of.
Principles of Congestion Control Congestion: informally: “too many sources sending too much data too fast for network to handle” different from flow control!
UDT: UDP based Data Transfer Yunhong Gu & Robert Grossman Laboratory for Advanced Computing University of Illinois at Chicago.
Link Scheduling & Queuing COS 461: Computer Networks
CA-RTO: A Contention- Adaptive Retransmission Timeout I. Psaras, V. Tsaoussidis, L. Mamatas Demokritos University of Thrace, Xanthi, Greece This study.
Fluid-based Analysis of a Network of AQM Routers Supporting TCP Flows with an Application to RED Vishal Misra Wei-Bo Gong Don Towsley University of Massachusetts,
A Hybrid Systems Modeling Framework for Data Communication Networks Ph.D Dissertation Proposal Junsoo Lee 9/5/2003.
Requirements for Simulation and Modeling Tools Sally Floyd NSF Workshop August 2005.
Hybrid Modeling of TCP Congestion Control João P. Hespanha, Stephan Bohacek, Katia Obraczka, Junsoo Lee University of Southern California.
Transport Layer 3-1 Chapter 3 Transport Layer Computer Networking: A Top Down Approach 6 th edition Jim Kurose, Keith Ross Addison-Wesley March
Deadline-based Resource Management for Information- Centric Networks Somaya Arianfar, Pasi Sarolahti, Jörg Ott Aalto University, Department of Communications.
CS640: Introduction to Computer Networks Aditya Akella Lecture 15 TCP – III Reliability and Implementation Issues.
Computer Networking Lecture 18 – More TCP & Congestion Control.
WB-RTO: A Window-Based Retransmission Timeout Ioannis Psaras Demokritos University of Thrace, Xanthi, Greece.
CS640: Introduction to Computer Networks Aditya Akella Lecture 15 TCP – III Reliability and Implementation Issues.
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
Transport Layer 3- Midterm score distribution. Transport Layer 3- TCP congestion control: additive increase, multiplicative decrease Approach: increase.
T. S. Eugene Ngeugeneng at cs.rice.edu Rice University1 COMP/ELEC 429/556 Introduction to Computer Networks Principles of Congestion Control Some slides.
Transport Layer3-1 Chapter 3 outline r 3.1 Transport-layer services r 3.2 Multiplexing and demultiplexing r 3.3 Connectionless transport: UDP r 3.4 Principles.
© Janice Regan, CMPT 128, CMPT 371 Data Communications and Networking Congestion Control 0.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
@Yuan Xue A special acknowledge goes to J.F Kurose and K.W. Ross Some of the slides used in this lecture are adapted from their.
Congestion Control for High Bandwidth-Delay Product Networks Dina Katabi, Mark Handley, Charlie Rohrs Presented by Yufei Chen.
Network Simulation via Hybrid System Modeling: A Time- Stepped Approach Network Simulation via Hybrid System Modeling: A Time- Stepped Approach Vanderbilt.
Chapter 3 outline 3.1 transport-layer services
Chapter 6 TCP Congestion Control
COMP 431 Internet Services & Protocols
Introduction to Congestion Control
TCP Vegas: New Techniques for Congestion Detection and Avoidance
Chapter 3 outline 3.1 Transport-layer services
Lecture 19 – TCP Performance
TCP Congestion Control
Chapter 3 outline 3.1 Transport-layer services
Presentation transcript:

A Hybrid Systems Modeling Framework for Fast and Accurate Simulation of Data Communication Networks João P. Hespanha University of Calif. Santa Barbara Katia Obraczka University of Calif. Santa Cruz Stephan Bohacek University of Delaware Junsoo Lee University of Southern California

Motivation Why model network traffic? to validate designs through simulation (scalability, performance) to analyze and design protocols (throughput, fairness, security, etc.) to tune network parameters (queue sizes, bandwidths, etc.)

Types of models Packet-level modeling tracks individual data packets, as they travel across the network ignores the data content of individual packets sub-millisecond time accuracy computationally very intensive Fluid-based modeling tracks time/ensemble-average packet rates across the network does not explicitly model individual events (acknowledgments, drops, queues becoming empty, etc.) time accuracy of a few seconds for time-average only suitable to model many flows for ensemble-average computationally very efficient

Types of models Hybrid modeling keeps track of packet rates for each flow averaged over small time scales explicitly models some discrete events (drops, queues becoming empty, etc.) time accuracy of a few milliseconds (round-trip time)  provide information about both average, peak, and “instantaneous” resource utilization (queues, bandwidth, etc.) captures fast dynamics even for a small number of flow 

Talk outline Modeling 1 st pass: Dumbbell topology & simplified TCP Modeling 2 nd pass: General topology & full TCP model Validation Simulation complexity Conclusions and future work

1st pass – Dumbbell topology Several flows follow the same path and compete for bandwidth in a single bottleneck link Prototypical network to study congestion control single queuerouting is trivial q( t ) ´ queue size r 1 bps r 2 bps r 3 bps rate · B bps queue f1 f1 f2 f2 f3 f3 f1 f1 f2 f2 f3 f3

1st pass – Dumbbell topology Queue dynamics: When  f r f exceeds B the queue fills and data is lost (drops) ) drop (discrete event – relevant for congestion control) q( t ) ´ queue size r 1 bps r 2 bps r 3 bps rate · B bps queue f1 f1 f2 f2 f3 f3 f1 f1 f2 f2 f3 f3

Window-based rate adjustment 1 st packet sent e.g., w f = 3 t 2 nd packet sent 3 rd packet sent 1 st packet received & ack. sent 2 nd packet received & ack. sent 3 rd packet received & ack. sent 1 st ack. received ) 4 th packet can be sent t source fdestination f w f effectively determines the sending rate r f : round-trip time t0t0 t1t1 t2t2 t3t3 00 11 22 w f (window size) ´ number of packets that can remain unacknowledged for by the destination propagation delay time in queue until transmission

TCP Reno congestion control 1.While there are no drops, increase w f by 1 on each RTT (additive increase) 2.When a drop occurs, divide w f by 2 (multiplicative decrease) (congestion controller constantly probes the network for more bandwidth) disclaimer: this is a very simplified version of Reno… Queuing model Reno controllers  drop  RTT rfrf

Hybrid system model for TCP (drop) transition enabling condition state reset additive-increase

2nd pass – general topology network dynamics (queuing & routing) congestion control server client data acks A communication network can be viewed as the interconnection of several blocks with specific dynamics b) Queuing: in-queue rate out-queue rate queue size c) End2end cong. control server sending rate acks & drops a) Routing: in-node rate out-node rates

2nd pass – general topology f1 f1 f2 f2 f1 f1 f2 f2 F := { f 1, f 2, … } ´ set of end2end flows N := { n 1, n 2, … } ´ set of nodes L := { 1, 2, … } ´ set of links n1 n1 n2 n2 n3 n3 n4 n4 n5 n5 n6 n B ´ bandwidth of link 2 L T ´ prop. delay of link 2 L

sending rate of flow f Routing in-queue rate of flow f n f upstream out-queue rate of flow f Conservation of flows: determines the sequence of links followed by each flow n ’ n' n'

Routing MulticastMulti-path routing n ’ n' n' n'' ” n 1 ’ n' n' 2 determines the sequence of links followed by each flow

Queue dynamics total queue size queue size due to flow f the packets of each flow are assumed uniformly distributed in the queue   in-queue rates out-queue rates … drop rates Queue dynamics:

Queue dynamics queue not empty/full queue full queue empty same in and out- queue rates out-queue rates proportional to fraction of packets in the queue no drops drops proportional to fraction in-queue rates   in-queue rates out-queue rates … drop rates

Hybrid queue model -queue-not-full -queue-full transition enabling condition exported discrete event discrete modes disclaimer: see paper for model considering drop bursts…

Hybrid queue model Random Early Drop active queuing stochastic counter -queue-not-full -queue-full discrete modes disclaimer: see paper for model considering drop bursts…

Network dynamic & Congestion control routing queue dynamics sending rates drops out-queue rates in-queue rates congestion control TCP/UDP

Additive Increase/Multiplicative Decrease congestion- avoidance TCP-Reno is based on AIMD but uses other discrete modes to improve performance set of links transversed by flow f propagation delays 1.While there are no drops, increase w f by 1 on each RTT (additive increase) 2.When a drop occurs, divide w f by 2 (multiplicative decrease) (congestion controller constantly probe the network for more bandwidth) imported discrete event

Slow start 3.Until a drop occurs (or a threshold ssth f is reached), double w f on each RTT 4.When a drop occurs, divide w f and the threshold ssth f by 2 cong.-avoid. slow-start

Fast recovery, timeouts, drop-detection delay… 5.During retransmission, data is sent at a rate consistent with a window size of w f /2 6.When a drop is detected through timeout: a.the slow-start threshold ssth f is set equal to half the window size, b.the window size is reduced to one, c.the controller transitions to slow-start

Network dynamic & Congestion control routing queue dynamics sending rates drops out-queue rates in-queue rates congestion control RTTs see paper for on/off UDP model

Validation methodology Compared simulation results from ns-2 packet-level simulator hybrid models implemented in Modelica Plots in the following slides refer to two test topologies 10ms propagation delay drop-tail queuing 5-500Mbps bottleneck throughput 0-10% UDP on/off background traffic 45,90,135,180ms propagation delays drop-tail queuing 5-500Mbps bottleneck throughput 0-10% UDP on/off background traffic Y-topology dumbbell

Simulation traces hybrid modelns-2 single TCP flow 5Mbps bottleneck throughput no background traffic

Simulation traces four competing TCP flow 5Mbps bottleneck throughput no background traffic hybrid modelns-2 the hybrid model accurately captures flow synchronization

Simulation traces hybrid model four competing TCP flow 5Mbps bottleneck throughput 10% UDP background traffic (exponentially distributed on-off times) ns-2

Average throughput and RTTs Thru. 1Thru. 2Thru. 3Thru. 4RTT1RTT2RTT3RTT4 ns hybrid model relative error2.6%7.9%1.5%.7%9.3%5.9%3.6%2.1% four competing TCP flow 5Mbps bottleneck throughput 10% UDP background traffic (exponentially distributed on-off times) the hybrid model accurately captures TCP unfairness for different propagation delays 45,90,135,180ms propagation delays drop-tail queuing 5Mbps bottleneck throughput 10% UDP on/off background traffic

Empirical distributions hybrid modelns-2 the hybrid model captures the whole distribution of congestion windows and queue size L-1 differencecwnd1cwnd2cwnd3cwnd4bottleneck queue dumbbell.71%.67%.71%.66%1.1% Y-shape.34%.44%.25%.33%.54%

Execution time ns-2 hybrid model 1 flow 3 flows ns-2 complexity approximately scales with hybrid simulator complexity approximately scales with number of flows per-flow throughput (# packets) 5Mbps 50Mbps 500Mbps hybrid models are particularly suitable for large, high- bandwidth simulations (satellite, fiber optics, backbone)

Conclusions Hybrid systems provide a promising approach to model network traffic: retain the low-dimensionality of continuous approximations to traffic flow are sufficiently expressive to represent event-based control mechanisms with high accuracy, even at small time-scales the complexity scales inversely with throughput and RTT, making them especially useful to simulate for high-bandwidth networks they are also amenable to formal analysis… Areas of future work: 1.Construct models for other forms of congestion control, queuing policies, drop models (e.g., wireless), etc. 2.Development of a freeware simulator 3.Further validation using more complex topologies 4.Extension of these techniques to other levels of abstraction to scale up to very large networks (e.g., abstract drops but keep discrete event such as changes in routing)

END

Drops events t0t0 t2t2 t1t1 total in-queue rate packet size total out-queue rate (link bandwidth)   in-queue rates out-queue rates … drop rates

Drops events   in-queue rates out-queue rates drop rates … Which flows? t0t0 t2t2 t1t1 flow that suffers drop at time t k the packets of each flow are assumed uniformly distributed in the queue When?