Models Motivation Timing Diagrams Metrics Evaluation Techniques TOC Models
Motivation Understanding Network Behavior Improving Protocols Verifying Correctness of Implementation Detecting Faults Choosing Provider Feasibility of Applications Monitoring Service Level Agreements Billing TOC Models Motivation
Timing Sending one packet Illustration Examples Queuing Queuing example Store and forward S&F:Multiple packets Cut-Through Fluid View TOC Models Timing
One Packet P bits R bps T seconds T Time P/R P/R = Transmission time T = Propagation time = L/speed = L(km)x(time/km) Time/km = 3.3µs in free space 4 µs in copper 5 µs in fiber TOC Models Timing One Packet
Illustration Transmission Line Transmitter Receiver Signal One bit Each bit takes 1/R seconds to be transmitted The bits take T seconds to propagate TOC Models Timing Illustration
Examples T >> P/R T P = 1KByte R = 1Gbps 100km, fiber T = 500µs P/R = 8µs T << P/R T P/R P/R P = 1KByte R = 100Mbps 1km, fiber T = 5µs P/R = 80µs TOC Models Timing Examples
Queuing Link: P bits Q R bps T seconds Q/R Q/R = queuing delay (load-dependent) T P/R Time TOC Models Timing Queuing
Queuing Example R bps Link: P bits Q 1-kbit packets; R = 1Mbps 1ms Time T(t) = Q/R + P/R for a packet that arrives at t 1ms Time t Let Tn = Q/R +P/R for packet n T1 = 1ms T2 = 1.5ms T3 = 2ms T4 = 1ms T5 = 1.5ms T6 = 1ms TOC Models Timing Queuing Example
Store and Forward System: 10Mbps 5Mbps 100Mbps 10Mbps TOC Models Timing Store and Forward
S&F - Multiple System: 10Mbps 5Mbps 100Mbps 10Mbps TOC Models Timing S&F Multiple
Cut-Through System: R1 = 10Mbps R2 = 10Mbps Header Start forwarding as soon as the header is received Note: What if R2 > R1? TOC Models Timing Cut-Through
A Fluid View System: Rate R A(t); rate a(t) X(t) D(t); rate d(t) # bits in [0, t] # bits in [0, t] a(t) d(t) X(t) TOC Models Timing Fluid View
Metrics Throughput Delay TOC Models Metrics
Throughput Definitions Example 1: Connection Example 2: Link Fluctuations Measurements TOC Models Metrics Throughput
Definitions Roughly: throughput = bit rate (e.g., 120Kbits/second) More precisely: Throughput of a connection or of a link: total number of bits during some period [t, t + T] divided by T Bandwidth* of a link = link rate = bit rate of the transmitter *Note: misnomer, but common usage Utilization of a link = throughput of the link / link rate Bit rate units: 1Kbps = 10 3 bps, 1Mbps = 10 6 bps, 1Gbps = 10 9 bps [For memory: 1Kbytes = 2 10 bytes = 1,024 bytes; 1MBytes = 2 20 bytes] Some rates are expressed in packet per second (pps) relevant when the bottleneck is the header processing TOC Models Metrics Throughput Definitions
Connection Connection: Send W bits (window size) Wait for ACKs Repeat Assume that the round-trip time is RTT seconds Throughput = W/RTT bps Source RTT K Destination Numerical Example: W = 64KBytes = 512 kbits = 512x1,024 = 524,288 bits RTT = 200ms Throughput = W/T = 2.6Mbps RTT Time K TOC Models Metrics Throughput Connection
Link 1Mbps link sends 1,000-bit packets Mbps Rate every µs 1 Rate every 40 ms 0.5 Utilization = 50% TOC Models Metrics Throughput Link Time t
Fluctuations Rate varies over time Throughput over last T seconds mean max min Time t TOC Models Metrics Throughput Fluctuations
Measurements TCP: Keep track of number of bytes received Let R(t) = number of bits in [0, t] Throughput over last T seconds = [R(t) R(t T)]/T Link: Device has counter with number of bytes received; calculate as above TOC Models Metrics Throughput Measurements
Delay Definitions Illustration 1 Illustration 2 Little s Result Measurements: Example 1 Measurements: Example 2 TOC Models Metrics Delay
Definitions Delay/Latency of bit (packet, file) from A to B Jitter: The time required for bit (packet, file) to go from A to B Variability in delay Round-Trip Time (RTT) Two-way delay from sender to receiver and back Bandwidth-Delay Product Product of bw and delay, indicates storage capacity of network TOC Models Metrics Delay Definitions
Illustration 1 S 1 2 D Latest bit seen by time t n at point 1 at point 2 Delay of bit n TOC Models Metrics Delay Illustration 1
Illustration 2 S 1 2 D 1 Packet arrival times at 1 20 ms 2 Packet arrival times at 2 Max delay = 100 ms Min delay = 40 ms Jitter = 60 ms TOC Models Metrics Delay Illustration 2
N S Little s Result 1 2 D X(t) T(N) T(N - 1) S = area S = T(1) + + T(N) = integral of X(t) 1 T(1) + + T(N) N X(t)dt = S =. T T N T T Average occupancy = (average delay)x(average arrival rate) TOC Models Metrics Delay Little s Result
Measurements 1 A Good Epoch TOC Models Metrics Delay Measurements 1
Measurements 2 A Worse Epoch TOC Models Metrics Delay Measurements 2
Evaluation Techniques Models + Analysis Models + Simulations Measurements TOC Models Evaluation
Analysis Example: M/M/1 Queue λ µ Arrivals are Poisson with rate λ Service times are exponentially distributed with mean 1/µ Average delay per packet T = 1/(µ λ) = (1/µ)/(1 ρ) where ρ = λ/µ = utilization For instance, 1/µ = 1ms and ρ = 80% => Q = 5ms TOC Models Evaluation Analysis
Simulation Model of traffic Model of routers, links,. Simulation: Time Driven: X(n) = state at time nε X(n+1) = f(x(n), event at time nε) Event Driven: Y(n) = state after event n E(n) = n-th event T(n) = time when event n occurs [Y(n+1), T(n+1)] = g(y(n), T(n), E(n)] Key Step: Output analysis (estimates, confidence intervals.) TOC Models Evaluation Simulation
Measurements Design Experiment Representative? Output Analysis TOC Models Evaluation Measurements