1 EE 122: Networks Performance & Modeling Ion Stoica TAs: Junda Liu, DK Moon, David Zats (Materials with thanks.

Slides:



Advertisements
Similar presentations
EE:450 – Computer Networks
Advertisements

EE384Y: Packet Switch Architectures
EE384y: Packet Switch Architectures
1 UNIT I (Contd..) High-Speed LANs. 2 Introduction Fast Ethernet and Gigabit Ethernet Fast Ethernet and Gigabit Ethernet Fibre Channel Fibre Channel High-speed.
Technische Universität München + Hewlett Packard Laboratories Dynamic Workload Management for Very Large Data Warehouses Juggling Feathers and Bowling.
© 2008 Pearson Addison Wesley. All rights reserved Chapter Seven Costs.
Copyright © 2003 Pearson Education, Inc. Slide 1 Computer Systems Organization & Architecture Chapters 8-12 John D. Carpinelli.
Part 3 Probabilistic Decision Models
McGraw-Hill©The McGraw-Hill Companies, Inc., 2003 Chapter 11 Ethernet Evolution: Fast and Gigabit Ethernet.
Cognitive Radio Communications and Networks: Principles and Practice By A. M. Wyglinski, M. Nekovee, Y. T. Hou (Elsevier, December 2009) 1 Chapter 12 Cross-Layer.
1 Copyright © 2013 Elsevier Inc. All rights reserved. Chapter 1 Embedded Computing.
Copyright © 2011, Elsevier Inc. All rights reserved. Chapter 6 Author: Julia Richards and R. Scott Hawley.
Author: Julia Richards and R. Scott Hawley
Properties Use, share, or modify this drill on mathematic properties. There is too much material for a single class, so you’ll have to select for your.
Helping TCP Work at Gbps Cheng Jin the FAST project at Caltech
Doc.: IEEE /037r1 Submission March 2001 Khaled Turki et. al,Texas InstrumentsSlide 1 Simulation Results for p-DCF, v-DCF and Legacy DCF Khaled.
UNITED NATIONS Shipment Details Report – January 2006.
RXQ Customer Enrollment Using a Registration Agent (RA) Process Flow Diagram (Move-In) Customer Supplier Customer authorizes Enrollment ( )
New Packet Sampling Technique for Robust Flow Measurements Shigeo Shioda Department of Architecture and Urban Science Graduate School of Engineering, Chiba.
Properties of Real Numbers CommutativeAssociativeDistributive Identity + × Inverse + ×
FACTORING ax2 + bx + c Think “unfoil” Work down, Show all steps.
Year 6 mental test 10 second questions
1 Discreteness and the Welfare Cost of Labour Supply Tax Distortions Keshab Bhattarai University of Hull and John Whalley Universities of Warwick and Western.
Evaluating Window Joins over Unbounded Streams Author: Jaewoo Kang, Jeffrey F. Naughton, Stratis D. Viglas University of Wisconsin-Madison CS Dept. Presenter:
Streaming Video over the Internet
Solve Multi-step Equations
REVIEW: Arthropod ID. 1. Name the subphylum. 2. Name the subphylum. 3. Name the order.
(Data and Signals - cont)
PERFORMANCE One important issue in networking is the performance of the networkhow good is it? We discuss quality of service, an overall measurement.
Factoring Quadratics — ax² + bx + c Topic
Dimitri DeFigueiredo Earl Barr S. (Felix) Wu Adobe Systems Inc. UC Davis UC Davis International Conference on Privacy, Security, Risk and Trust
EU market situation for eggs and poultry Management Committee 20 October 2011.
Discrete Event (time) Simulation Kenneth.
IP Multicast Information management 2 Groep T Leuven – Information department 2/14 Agenda •Why IP Multicast ? •Multicast fundamentals •Intradomain.
Chapter 20 Network Layer: Internet Protocol
1 EE 122:TCP Congestion Control Ion Stoica TAs: Junda Liu, DK Moon, David Zats (Materials with thanks to Vern Paxson,
Factor P 16 8(8-5ab) 4(d² + 4) 3rs(2r – s) 15cd(1 + 2cd) 8(4a² + 3b²)
Basel-ICU-Journal Challenge18/20/ Basel-ICU-Journal Challenge8/20/2014.
1..
CONTROL VISION Set-up. Step 1 Step 2 Step 3 Step 5 Step 4.
© 2012 National Heart Foundation of Australia. Slide 2.
1 Introduction to Network Layer Lesson 09 NETS2150/2850 School of Information Technologies.
1 © 2004, Cisco Systems, Inc. All rights reserved. CCNA 1 v3.1 Module 7 Ethernet Technologies.
RED-PD: RED with Preferential Dropping Ratul Mahajan Sally Floyd David Wetherall.
Model and Relationships 6 M 1 M M M M M M M M M M M M M M M M
Equal or Not. Equal or Not
One More Bit Is Enough Yong Xia, RPI Lakshmi Subramanian, UCB Ion Stoica, UCB Shiv Kalyanaraman, RPI SIGCOMM’ 05, Philadelphia, PA 08 / 23 / 2005.
Analyzing Genes and Genomes
1 Let’s Recapitulate. 2 Regular Languages DFAs NFAs Regular Expressions Regular Grammars.
©Brooks/Cole, 2001 Chapter 12 Derived Types-- Enumerated, Structure and Union.
Intracellular Compartments and Transport
Network Operations & administration CS 4592 Lecture 15 Instructor: Ibrahim Tariq.
PSSA Preparation.
Essential Cell Biology
Energy Generation in Mitochondria and Chlorplasts
Probability Review.
ECE358: Computer Networks Fall 2014
Computer Networks Performance Metrics Computer Networks Term B10.
Fundamentals of Computer Networks ECE 478/578
EECS122 – Lecture 5 Department of Electrical Engineering and Computer Sciences University of California Berkeley.
Katz, Stoica F04 EECS 122: Introduction to Computer Networks Performance Modeling Computer Science Division Department of Electrical Engineering and Computer.
1 Emulating AQM from End Hosts Presenters: Syed Zaidi Ivor Rodrigues.
EE 122: Network Performance Modeling Kevin Lai September 4, 2002.
Ch. 28 Q and A IS 333 Spring Q1 Q: What is network latency? 1.Changes in delay and duration of the changes 2.time required to transfer data across.
Lecture 2 Performance Metrics. Bandwidth Delay Bandwidth-delay product Latency Throughput.
Computer Networks Performance Metrics. Performance Metrics Outline Generic Performance Metrics Network performance Measures Components of Hop and End-to-End.
LECTURE 12 NET301 11/19/2015Lect NETWORK PERFORMANCE measures of service quality of a telecommunications product as seen by the customer Can.
Net301 LECTURE 10 11/19/2015 Lect
EE 122: Network Performance, Queueing Theory, Evaluation
Presentation transcript:

1 EE 122: Networks Performance & Modeling Ion Stoica TAs: Junda Liu, DK Moon, David Zats (Materials with thanks to Vern Paxson, Jennifer Rexford, and colleagues at UC Berkeley)

2 Outline Motivations Timing diagrams Metrics Littles Theorem Evaluation techniques

3 Motivations Understanding network behavior Improving protocols Verifying correctness of implementation Detecting faults Monitor service level agreements Choosing providers Billing

4 Outline Motivations Timing diagrams Metrics Littles theorem Evaluation techniques

5 Timing Diagrams Sending one packet Queueing Switching Store and forward Cut-through

6 Definitions Link bandwidth (capacity): maximum rate (in bps) at which the sender can send data along the link Propagation delay: time it takes the signal to travel from source to destination Packet transmission time: time it takes the sender to transmit all bits of the packet Queuing delay: time the packet need to wait before being transmitted because the queue was not empty when it arrived Processing Time: time it takes a router/switch to process the packet header, manage memory, etc

7 Sending One Packet R bits per second (bps) T seconds P bits Bandwidth: R bps Propagation delay: T sec time Transmission time = P/R T Propagation delay =T = Length/speed 1m/speed = 3.3 usec in free space 4 usec in copper 5 usec in fiber

8 Sending one Packet: Examples P = 1 Kbyte R = 1 Gbps 100 Km, fiber => T = 500 usec P/R = 8 usec T P/R time T P/R P = 1 Kbyte R = 100 Mbps 1 Km, fiber => T = 5 usec P/R = 80 usec T >> P/R T << P/R

9 Queueing The queue has Q bits when packet arrives packet has to wait for the queue to drain before being transmitted P bits time P/R T Q bits Queueing delay = Q/R Capacity = R bps Propagation delay = T sec

10 Queueing Example P = 1 Kbit; R = 1 Mbps P/R = 1 ms Packet arrival Time (ms) Delay for packet that arrives at time t, d(t) = Q(t)/R + P/R 0 packet 1, d(0) = 1ms Time Q(t) 1 Kb 0.5 Kb 1.5 Kb 2 Kb 0.5 packet 2, d(0.5) = 1.5ms 1 packet 3, d(1) = 2ms 77.5

11 Switching: Store and Forward A packet is stored (enqueued) before being forwarded (sent) Sender Receiver 10 Mbps 5 Mbps100 Mbps10 Mbps time

12 Store and Forward: Multiple Packet Example Sender Receiver 10 Mbps 5 Mbps100 Mbps10 Mbps time

13 Switching: Cut-Through A packet starts being forwarded (sent) as soon as its header is received Sender Receiver R1 = 10 Mbps R2 = 10 Mbps time Header What happens if R2 > R1 ?

14 Outline Motivations Timing diagrams Metrics Throughput Delay Littles Theorem Evaluation techniques

15 Throughput Throughput of a connection or link = total number of bits successfully transmitted during some period [t, t + T) divided by T Link utilization = (throughput of the link)/(link rate) Bit rate units: 1Kbps = 10 3 bps, 1Mbps = 10 6 bps, 1 Gbps = 10 9 bps [For memory: 1 Kbyte = 2 10 bytes = 1024 bytes] Some rates are expressed in packets per second (pps) relevant for routers/switches where the bottleneck is the header processing

16 Example: Windows Based Flow Control Connection: Send W bits (window size) Wait for ACKs Repeat Assume the round-trip-time is RTT seconds Throughput = W/RTT bps Numerical example: W = 64 Kbytes RTT = 200 ms Throughput = W/RTT = 64,000*8/0.2s = 2.6 Mbps time Source Destination RTT

17 Throughput: Fluctuations Throughput may vary over time max min mean Throughput Time

18 Delay Related Metrics Delay (Latency) of bit (packet, file) from A to B The time required for bit (packet, file) to go from A to B Jitter Variability in delay Round-Trip Time (RTT) Two-way delay from sender to receiver and back Bandwidth-Delay product Product of bandwidth and delay storage capacity of network

19 Delay Illustration SenderReceiver 12 Delay at point 2 at point 1 Latest bit seen by time t time

20 Outline Motivations Timing diagrams Metrics Littles Theorem Evaluation techniques

21 Littles Theorem Assume a system at which packets arrive at rate λ Let d be mean delay of packet, i.e., mean time a packet spends in the system Q: What is the mean (average) number of packets in the system (N) ? system λ – mean arrival rate d = mean delay

22 Example λ = 1 d = time packets d = 5 N = 5 packets A: N = λ x d E.g., N = λ x d = 5

23 Littles Theorem: Proof Sketch Latest bit seen by time t SenderReceiver 12 time x(t) d(i) = delay of packet i x(t) = number of packets in transit (in the system) at time t T What is the system occupancy, i.e., average number of packets in transit between 1 and 2 ?

24 Littles Theorem: Proof Sketch Latest bit seen by time t SenderReceiver 12 time x(t) T Average occupancy = S/T d(i) = delay of packet i x(t) = number of packets in transit (in the system) at time t P = packet size S= area

25 Littles Theorem: Proof Sketch Latest bit seen by time t SenderReceiver 12 time x(t) S(N) P d(N-1) S(N-1) T S = S(1) + S(2) + … + S(N) = P*(d(1) + d(2) + … + d(N)) d(i) = delay of packet i x(t) = number of packets in transit (in the system) at time t P = packet size S= area

26 Average occupancy Average arrival rate Average delay Littles Theorem: Proof Sketch Latest bit seen by time t SenderReceiver 12 time x(t) S(N) P d(N-1) S(N-1) T S/T = (P*(d(1) + d(2) + … + d(N)))/T = ((P*N)/T) * ((d(1) + d(2) + … + d(N))/N) S= area d(i) = delay of packet i x(t) = number of packets in transit (in the system) at time t P = packet size

27 Littles Theorem: Proof Sketch Latest bit seen by time t SenderReceiver 12 time x(t) S(N) Average occupancy = (average arrival rate) x (average delay) S= area P d(N-1) S(N-1) T d(i) = delay of packet i x(t) = number of packets in transit (in the system) at time t P = packet size

28 Outline Motivations Timing diagrams Metrics Littles Theorem Evaluation techniques

29 Evaluation Techniques Measurements gather data from a real network e.g., ping realistic, specific Simulations: run a program that pretends to be a real network e.g., NS network simulator, Nachos OS simulator Models, analysis write some equations from which we can derive conclusions general, may not be realistic Usually use combination of methods

30 Simulation Model of traffic Model of routers, links Simulation: Time driven: X(t) = state at time t X(t+1) = f(X(t), event at time t) Event driven: E(n) = n-th event Y(n) = state after event n T(n) = time when even n occurs [Y(n+1), T(n+1)] = g(Y(n), T(n), E(n)) Output analysis: estimates, confidence intervals

31 Simulation Example Use trivial time-driven simulation to illustrate statistical multiplexing Probabilistically generate the bandwidth of a flow, e.g., With probability 0.2, bandwidth is 6 With probability 0.8, bandwidth is 1 Average bandwidth, avg=0.2* *1 = 2 peak/avg = 6/2 = 3

32 One Flow peak=6 avg=2 peak / avg = 3

33 Two Flows agg_peak=7 agg_avg=3.75 agg_peak / agg_avg = 7/3.75 = 1.86 (agg_avg = average of aggregate bandwidth) (agg_peak=maximum value of aggregate bandwidth)

34 50 Flows agg_peak=135 agg_avg= agg_peak / agg_avg = 7/3.75 = 135/ = 1.28

35 Statistical Multiplexing As number of flows increases, agg_peak/agg_avg decreases For 1000 flows, peak/avg = 2125/2009=1.057 Q: What does this mean? A: Multiplexing a large enough number of flows eliminates burstiness Use average bandwidth to provision capacity, instead of peak bandwidth E.g., For 1000 flows Average of aggregate bandwidth = 2,000 Sum of bandwidth peaks = 6,000

36 Evaluation: Putting Everything Together Usually favor plausibility, tractability over realism Better to have a few realistic conclusions than none (could not derive) or many conclusions that no one believes (not plausible) RealityModel HypothesisConclusion Abstraction Plausibility DerivationTractability Realism Prediction

37 Next Lecture Architecture, Layering, and the End-to-End Principle Read 1.4 & 1.5 of Kurose/Ross Pick up class computer account forms, if you havent done it already Project 1 (tiny world or warcrafts)out today First part (client) due Oct 11:59:59pm Second part (server) due Oct 11:59:59pm