Presentation is loading. Please wait.

Presentation is loading. Please wait.

Katz, Stoica F04 EECS 122: Introduction to Computer Networks Performance Modeling Computer Science Division Department of Electrical Engineering and Computer.

Similar presentations


Presentation on theme: "Katz, Stoica F04 EECS 122: Introduction to Computer Networks Performance Modeling Computer Science Division Department of Electrical Engineering and Computer."— Presentation transcript:

1 Katz, Stoica F04 EECS 122: Introduction to Computer Networks Performance Modeling Computer Science Division Department of Electrical Engineering and Computer Sciences University of California, Berkeley Berkeley, CA 94720-1776

2 Katz, Stoica F04 2 Outline  Motivations  Timing diagrams  Metrics  Evaluation techniques

3 Katz, Stoica F04 3 Motivations  Understanding network behavior  Improving protocols  Verifying correctness of implementation  Detecting faults  Monitor service level agreements  Choosing provides  Billing

4 Katz, Stoica F04 4 Outline  Motivations  Timing diagrams  Metrics  Evaluation techniques

5 Katz, Stoica F04 5 Timing Diagrams  Sending one packet  Queueing  Switching -Store and forward -Cut-through  Fluid view

6 Katz, Stoica F04 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 Katz, Stoica F04 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 1/speed = 3.3 usec in free space 4 usec in copper 5 usec in fiber

8 Katz, Stoica F04 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 Katz, Stoica F04 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 Katz, Stoica F04 10 Queueing Example P = 1 Kbit; R = 1 Mbps  P/R = 1 ms Packet arrival Time (ms) Time Delay for packet that arrives at time t, d(t) = Q(t)/R + P/R Q(t) 1 Kb P bitsQ bits 0 0.5 1 77.5 0.5 Kb 1.5 Kb 2 Kb packet 1, d(0) = 1ms packet 2, d(0.5) = 1.5ms packet 3, d(1) = 2ms

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

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

13 Katz, Stoica F04 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 Katz, Stoica F04 14 Fluid Flow System  Packets are serviced bit-by-bit as they arrive a(t) e(t) Q(t) t Rate or Queue size Q(t) a(t) – arrival ratee(t) – departure rate Q(t) = queueing size at time t

15 Katz, Stoica F04 15 Outline  Motivations  Timing diagrams  Metrics Throughput Delay  Evaluation techniques

16 Katz, Stoica F04 16 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

17 Katz, Stoica F04 17 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/T = 2.6 Mbps time Source Destination RTT

18 Katz, Stoica F04 18 Throughput: Fluctuations  Throughput may vary over time max min mean Throughput Time

19 Katz, Stoica F04 19 Delay  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

20 Katz, Stoica F04 20 Delay: Illustration 1 at point 2 at point 1 Latest bit seen by time t Delay SenderReceiver 12 time

21 Katz, Stoica F04 21 Delay: Illustration 2 SenderReceiver 12 2 1 Packet arrival times at 1 Packet arrival times at 2 Delay

22 Katz, Stoica F04 22 Little’s Theorem  Assume a system (e.g., a queue) at which packets arrive at rate a(t)  Let d(i) be the delay of packet i, i.e., time packet i spends in the system  What is the average number of packets in the system? system a(t) – arrival rate d(i) = delay of packet i  Intuition: -Assume arrival rate is a = 1 packet per second and the delay of each packet is s = 5 seconds -What is the average number of packets in the system?

23 Katz, Stoica F04 23 Little’s Theorem 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 Katz, Stoica F04 24 Little’s Theorem 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 S= area

25 Katz, Stoica F04 25 Little’s Theorem 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 S= area

26 Katz, Stoica F04 26 Average occupancy Average arrival time Average delay Little’s Theorem 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) d(i) = delay of packet i x(t) = number of packets in transit (in the system) at time t S= area

27 Katz, Stoica F04 27 Little’s Theorem Latest bit seen by time t SenderReceiver 12 time x(t) S(N) Average occupancy = (average arrival rate) x (average delay) S= area a(i) 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

28 Katz, Stoica F04 28 Outline  Motivations  Timing diagrams  Metrics  Evaluation techniques

29 Katz, Stoica F04 29 Evaluation Techniques  Measurements -gather data from a real network -e.g., ping www.berkeley.edu -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 Katz, Stoica F04 30 Analysis  Example: M/M/1 Queue  Arrivals are Poisson with rate a  Service times are exponentially distributed with mean 1/s -s - rate at which packets depart from a full queue  Average delay per packet: T = 1/(s – a) = (1/a)/(1 – u), where u = a/s = utilization Numerical example, 1/a = 1ms; u = 80%  Q = 5ms a s

31 Katz, Stoica F04 31 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

32 Katz, Stoica F04 32 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


Download ppt "Katz, Stoica F04 EECS 122: Introduction to Computer Networks Performance Modeling Computer Science Division Department of Electrical Engineering and Computer."

Similar presentations


Ads by Google