Network Protocol Design and Evaluation

Similar documents
LANs. Local Area Networks. via the Media Access Control (MAC) SubLayer. Networks: Local Area Networks

ECE 333: Introduction to Communication Networks Fall 2002

TCP in Wireless Mobile Networks

EECS 122: Introduction to Computer Networks Multiaccess Protocols. ISO OSI Reference Model for Layers

Answer: that dprop equals dtrans. seconds. a) d prop. b) d trans

Lecture 15: Congestion Control. CSE 123: Computer Networks Stefan Savage

Random Access Protocols

TCOM 370 NOTES LOCAL AREA NETWORKS AND THE ALOHA PROTOCOL

Lecture Objectives. Lecture 07 Mobile Networks: TCP in Wireless Networks. Agenda. TCP Flow Control. Flow Control Can Limit Throughput (1)

Congestions and Control Mechanisms n Wired and Wireless Networks

The Problem with TCP. Overcoming TCP s Drawbacks

Improving the Performance of TCP Using Window Adjustment Procedure and Bandwidth Estimation

Note! The problem set consists of two parts: Part I: The problem specifications pages Part II: The answer pages

Data Networks Summer 2007 Homework #3

Real-Time (Paradigms) (51)

Outline. TCP connection setup/data transfer Computer Networking. TCP Reliability. Congestion sources and collapse. Congestion control basics

TCP over Multi-hop Wireless Networks * Overview of Transmission Control Protocol / Internet Protocol (TCP/IP) Internet Protocol (IP)

TCP, Active Queue Management and QoS

Application Level Congestion Control Enhancements in High BDP Networks. Anupama Sundaresan

Introduction to LAN/WAN. Network Layer

Protagonist International Journal of Management And Technology (PIJMT) Online ISSN Vol 2 No 3 (May-2015) Active Queue Management

Final for ECE374 05/06/13 Solution!!

Chapter 6 Congestion Control and Resource Allocation

A Survey on Congestion Control Mechanisms for Performance Improvement of TCP

Random access protocols for channel access. Markov chains and their stability. Laurent Massoulié.

15-441: Computer Networks Homework 2 Solution

a. CSMA/CD is a random-access protocol. b. Polling is a controlled-access protocol. c. TDMA is a channelization protocol.

Optimization of Communication Systems Lecture 6: Internet TCP Congestion Control

Congestion Control Review Computer Networking. Resource Management Approaches. Traffic and Resource Management. What is congestion control?

APPENDIX 1 USER LEVEL IMPLEMENTATION OF PPATPAN IN LINUX SYSTEM

Quality of Service Analysis of site to site for IPSec VPNs for realtime multimedia traffic.

CSE 123: Computer Networks

CS263: Wireless Communications and Sensor Networks

Low-rate TCP-targeted Denial of Service Attack Defense

1. The subnet must prevent additional packets from entering the congested region until those already present can be processed.

TCP over Wireless Networks

Local Area Networks transmission system private speedy and secure kilometres shared transmission medium hardware & software

Per-Flow Queuing Allot's Approach to Bandwidth Management

Data Link Layer(1) Principal service: Transferring data from the network layer of the source machine to the one of the destination machine

Referring to the above question, the end-to-end delay (transmission delay plus propagation delay) is

Lecture 8 Performance Measurements and Metrics. Performance Metrics. Outline. Performance Metrics. Performance Metrics Performance Measurements

Ethernet. Ethernet Frame Structure. Ethernet Frame Structure (more) Ethernet: uses CSMA/CD

Based on Computer Networking, 4 th Edition by Kurose and Ross

Performance Analysis of AQM Schemes in Wired and Wireless Networks based on TCP flow

How To Make A Multi-User Communication Efficient

Transport Layer Protocols

Rate adaptation, Congestion Control and Fairness: A Tutorial. JEAN-YVES LE BOUDEC Ecole Polytechnique Fédérale de Lausanne (EPFL)

Routing in packet-switching networks

CROSS LAYER BASED MULTIPATH ROUTING FOR LOAD BALANCING

TCP and Wireless Networks Classical Approaches Optimizations TCP for 2.5G/3G Systems. Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme

College 5, Routing, Internet. Host A. Host B. The Network Layer: functions

Research of TCP ssthresh Dynamical Adjustment Algorithm Based on Available Bandwidth in Mixed Networks

First Midterm for ECE374 03/24/11 Solution!!

Behavior Analysis of TCP Traffic in Mobile Ad Hoc Network using Reactive Routing Protocols

An enhanced TCP mechanism Fast-TCP in IP networks with wireless links

VPN over Satellite A comparison of approaches by Richard McKinney and Russell Lambert

Functional Optimization Models for Active Queue Management

A Survey: High Speed TCP Variants in Wireless Networks

EINDHOVEN UNIVERSITY OF TECHNOLOGY Department of Mathematics and Computer Science

A Binary Feedback Scheme for Congestion Avoidance in Computer Networks

Collision of wireless signals. The MAC layer in wireless networks. Wireless MAC protocols classification. Evolutionary perspective of distributed MAC

Optimal Bandwidth Monitoring. Y.Yu, I.Cheng and A.Basu Department of Computing Science U. of Alberta

STANDPOINT FOR QUALITY-OF-SERVICE MEASUREMENT

Announcements. Midterms. Mt #1 Tuesday March 6 Mt #2 Tuesday April 15 Final project design due April 11. Chapters 1 & 2 Chapter 5 (to 5.

TCP for Wireless Networks

Oscillations of the Sending Window in Compound TCP

Controlled Random Access Methods

PERFORMANCE STUDY AND SIMULATION OF AN ANYCAST PROTOCOL FOR WIRELESS MOBILE AD HOC NETWORKS

La couche transport dans l'internet (la suite TCP/IP)

SJBIT, Bangalore, KARNATAKA

Simulation-Based Comparisons of Solutions for TCP Packet Reordering in Wireless Network

TCP Westwood for Wireless

Assignment #3 Routing and Network Analysis. CIS3210 Computer Networks. University of Guelph

CS 5480/6480: Computer Networks Spring 2012 Homework 4 Solutions Due by 1:25 PM on April 11 th 2012

Burst Testing. New mobility standards and cloud-computing network. This application note will describe how TCP creates bursty

Packet Queueing Delay in Wireless Networks with Multiple Base Stations and Cellular Frequency Reuse

Computer Networks - CS132/EECS148 - Spring

technology standards and protocol for ip telephony solutions

Overview of Network Hardware and Software. CS158a Chris Pollett Jan 29, 2007.

QoS issues in Voice over IP

Performance Evaluation of Wired and Wireless Local Area Networks

What is CSG150 about? Fundamentals of Computer Networking. Course Outline. Lecture 1 Outline. Guevara Noubir noubir@ccs.neu.

Frequently Asked Questions

TCP in Wireless Networks

Mobile Communications Chapter 9: Mobile Transport Layer

Master s Thesis. A Study on Active Queue Management Mechanisms for. Internet Routers: Design, Performance Analysis, and.

Comparative Analysis of Congestion Control Algorithms Using ns-2

AN IMPROVED SNOOP FOR TCP RENO AND TCP SACK IN WIRED-CUM- WIRELESS NETWORKS

Clearing the Way for VoIP

Using Fuzzy Logic Control to Provide Intelligent Traffic Management Service for High-Speed Networks ABSTRACT:

Dynamic Source Routing in Ad Hoc Wireless Networks

A TCP-like Adaptive Contention Window Scheme for WLAN

Computer Networks. Chapter 5 Transport Protocols

Packet Queueing Delay

Passive Queue Management

Active Queue Management (AQM) based Internet Congestion Control

Transcription:

Network Protocol Design and Evaluation 08 - Analytical Evaluation Stefan Rührup Summer 2009

Overview In the last chapter: Simulation In this part: Analytical Evaluation: case studies 2

Analytical Evaluation Analytical validation Proof of correctness, deadlock-freedom etc. (cf. Chapter 5 on Validation) Analytical performance evaluation Requires model abstraction Methods of distributed system analysis, esp. Queuing theory 3

Queuing models (1) System description by processes with focus on task arrival, queuing, processing Load generation and service times described by stochastic processes (e.g. Poisson process) Analytical performance measures can be determined S S S Example of a queuing network 4

Queuing Models (2) Little s Law: The long-term average number of tasks in a system E[X] equals the product of long-term average arrival rate λ and average waiting time E[T]: E[X] = λ E[T] arrival rate λ System waiting time E[T] Arrival and service times are described by stochastic processes (cf. Renewal processes in Chapter 7) 5

Case Study 1: Analysis of ALOHA ALOHANET: Wireless packet radio network with star/ broadcast topology 2 channels: Messages are sent by hosts to the hub station using the inbound channel. The hub brodcasts the message to all stations using the outbound channel (message delivery and feedback to the sender). The ALOHA Protocol Whenever you have data, send it If there is a collision, try to retransmit 6

ALOHAnet Wireless packet radio network with star/broadcast topology 2 channels: Messages are sent by hosts to the hub station using the inbound channel. The hub brodcasts the message to all stations using the outbound channel (message delivery and feedback to the sender). The ALOHA Protocol Whenever you have data, send it If there is a collision, try to retransmit 7

ALOHA! Transmission and Re-Broadcast Collision 8

Throughput Analysis (1) Assumptions Number of stations: N Packet transmission time: T Each station transmits with probability p per time interval T Packet injection follows a Poisson process with arrival rate λ = Np (arrivals at the hub station within T). Metric: Throughput = number of successfully delivered packets per time interval. 9

Throughput Analysis (2) Collisions: Packets can collide with others within a time interval of 2T (vulnerable period) p q t0 t0+t t0+2t vulnerable period 10

Throughput Analysis (3) We calculate the probabilities according to the Poisson distribution: Pr[Success] = Pr[no other transmissions within 2T] = P(0,2) = e -2λ = e -2Np Throughput = Mean number of arrivals * Pr[Success] = λe -2λ = Np e -2Np Maximum: e 2λ 2λ e 2λ = 0 when λ = 1 2 Optimal throughput = 1/2 e -1 0.18 Poisson distribution: P(k, t) =Pr λ,t [X = k] = λk k! e λt 11

Throughput Analysis (4) Slotted ALOHA: Transmissions are synchronized and begin at time slots of length T. Thus, the vulnerable period is reduced to T. Analysis: Pr[Success] = P(0,2) = e -λ = e -Np Throughput = λe -λ = Np e -Np Maximum is reached at λ=1 with a throughput of 1/e 0.3679 12

Throughput Analysis (5) 0,5 Throughput 0,25 pure ALOHA slotted ALOHA 0 1 2 3 4 5 6 7 Packet arrival rate 13

Backlogged Packets (1) What we did not consider so far: There are backlogged packets after a collision, which will be retransmitted with probability r. Assume that there are M (out of N) stations with backlogged packets. Then the expected number of transmission attempts is λ(m) = (N - M)a + Mr where a = 1-e -λ/n is the arrival probability per station. P[Success] = P[one new packet and no backlogged packet or no new packet and one backlogged packet] = (N-M) a (1-a) N-M-1 (1-r) M + (1-a) N-M M(1-r) M-1 r. [Barbeau, Kranakis: Principles of Ad-hoc Networking, Wiley, 2008] 14

Backlogged Packets (2) P[Success] = (N-M) a (1-a) N-M-1 (1-r) M + (1-a) N-M M(1-r) M-1 r. We use x/(1-x) x and write (N-M) a (1-a) N-M-1 (1-r) M = (N-M) a (1-a) N-M (1-r) M / (1-a) (N-M) a (1-a) N-M (1-r) M (1-a) N-M M (1-r) M-1 r = (1-a) N-M M(1-r) M r / (1-r) (1-a) N-M M(1-r) M r P[Success] = (N-M) a (1-a) N-M (1-r) M + (1-a) N-M M (1-r) M r = ( (1-a) N-M (1-r) M )( (N-M) a + M r ) We use (1-x) y e -xy and get (1-a) N-M (1-r) M e -a(n-m) e -Mr P[Success] e -(a(n-m)+mr) ( (N-M) a + M r ) = e -λ(m) λ(m) [Barbeau, Kranakis: Principles of Ad-hoc Networking, Wiley, 2008] 15

Backlogged Packets (3) P[Success] e -(a(n-m)+mr) ( (N-M) a + M r ) = e -λ(m) λ(m) Thus we can approximate the additional arrival of backlogged packets by a Poisson process with mean λ(m) The throughput is maximal if λ(m) = (N - M)a + Mr = 1 Then the retransmission probability is r = 1/M - a(n-m)/m = 1/M - (1-e -λ/n )(N-M)/M = (1-M-N)/M + (1-e -λ/n )(N-M)/M [Barbeau, Kranakis: Principles of Ad-hoc Networking, Wiley, 2008] 16

On the Stability Slotted ALOHA 0,5 what happens at this point? Throughput 0,25 more arrivals (backlog!) throughput decreases 0 0,8 1,6 2,4 3,2 4 Arrival rate 17

System state and Drift System state: number of stations with backlogged packets Drift: Change of backlogged stations per slot time DM = (N-M) a - P[Success] (Difference between newly arriving packets and probably a sent packet) The drift indicates the direction in which the system state changes 18

Drift Drift = (N-M)a - P[Success] P[Success] 0,25 (N-M)a 0 2,5 5 7,5 10 12,5 M 19

Arrival rate and stability Equilibria (Drift=0) of Slotted ALOHA stable equilibrium Throughput unstable equilibrium stable equilibrium λ(m)=na λ(m)=(n-m)a + Mr λ(m)=mr Arrival rate 20

Parameter settings Increasing the retransmission probability r: Backlogged packets are reduced, but the unstable equilibrium can be exceeded quickly Reducing r increases the delay. There are algorithms to ensure stability Practically, we should keep the arrival rate below the maxium 21

Case Study 2: Analysis of TCP s Congestion Control TCP provides an acknowledged end-to-end datagram delivery service It uses IP (unacknowledged, connectionless) and shares the bandwidth with other traffic In congestion situations, routers drop packets TCP reacts by adapting the injection rate. Recall: the only available information to detect congestion situations are acknowledgements. 22

Congestion revisited IP Routers drop packets (Random Early Discard) TCP has to react, e.g. lower the packet injection rate TCP 2 Mbps DSL Link Gigabit Ethernet Source B TCP Destination X X X Packet deletion Gigabit Ethernet Source A 23

Congestion control of TCP Tahoe increase of the data rate packet loss detected decrease of the data rate slow start [A.S. Tanenbaum, Computer Networks, 4/e, Prentice Hall] 24

The Analysis TCP s congestion control mechanism is used by multiple participants sharing the bandwidth. If one user reduces the data rate, bandwidth will be available for others Questions: Can this algorithm provide an efficient use of the bandwidth? Are all participants treated fair? 25

An Analytical Model First, we need an abstract model for the algorithm and the environment The algorithmic principle behind TCP s congestion control: Increase the data rate additively, if possible Reduce the data rate by 1/2 in case of packet loss Abstractions: We do not consider the slow start phase We assume a round-based model (round = RTT) We assume a binary feedback (packet loss yes/no) The communication channel is shared and can be used up to a certain bandwidth 26

The AIMD Principle TCP uses basically the following mechanism to adapt the data rate x (#packets sent per RTT): Initialization x = 1 If the acknowledgement for a segment arrives, perform additive increase (AI) x = x+1 On packet loss: multiplicative decrease (MD) x = x/2 [C. Schindelhauer, Algorithmische Grundlagen des Internets, Uni Paderborn, 2003] 27

AIMD additive increase multiplicative decrease [A.S. Tanenbaum, Computer Networks, 4/e, Prentice Hall] 28

Available Bandwidth Knee load: critical bandwidth when latency increases significantly. It is desired to keep the load around the knee. We assume that the timeout mechanism provides the feedback about reaching the knee load throughput (packets delivered) B knee cliff 0 0 K B load (packets sent) 29

The Data Rate Model (1) Time: round based, t = 0... Participants and data rate: n participants (here called players) participant i has a data rate of xi(t) in round t overall data rate: Feedback: X(t) = n i=1 x i(t) feedback function y(t) (the same for all players) y(t) = { 0, if X(t) K 1, if X(t) > K where K is the knee load. [C. Schindelhauer, Algorithmische Grundlagen des Internets, Uni Paderborn, 2003] 30

The Data Rate Model (2) Data rate adaption: New data rate (round t+1) is given by a function of the data rate in the past round (t) and the feedback y(t): xi(t+1) = f( xi(t), y(t) ) We consider linear functions with increase and decrease parameters: f(x, y) = { ai + b I x, if y(t) =0 a D + b D x, if y(t) =1 in case of AIMD: f(x, y) = { ai + x, if y(t) =0 b D x, if y(t) =1 is this the best choice? [C. Schindelhauer, Algorithmische Grundlagen des Internets, Uni Paderborn, 2003] 31

Objective Functions What is fair, what is efficient? Efficiency: The closer to the knee load, the more efficient E(x) = X(t) - K desired: E(x) 0 Fairness: Scale-independent function with F(x)=1 for absolute fair situation. F(x) = ( n i=1 x i) 2 n n i=1 (x i) 2 [C. Schindelhauer, Algorithmische Grundlagen des Internets, Uni Paderborn, 2003] 32

How to show Efficiency? Problem: Players use discrete increments/decrements when reacting to the feedback. Thus the load oscillates and does not converge. initial transient amplitude load time [C. Schindelhauer, Algorithmische Grundlagen des Internets, Uni Paderborn, 2003] 33

Efficiency Analysis (1) An efficient situation is reached, if the load oscillates within a bounded interval around E(x)=0 If the load is below the knee (X(t) < K), then the overall load has to increase in the next round: X(t+1) > X(t) If the knee load is exceeded (X(t) >K), then the overall load has to decrease in the next round: X(t+1) < X(t) [C. Schindelhauer, Algorithmische Grundlagen des Internets, Uni Paderborn, 2003] 34

Efficiency Analysis (2) For higher load X(t) > K: X(t + 1) < X(t) ad 0 bd < 1 n x i (t + 1) < i=1 ad > 0 bd has to be negative - not possible n x i (t) i=1 n a D + b D x i (t) < X(t) i=1 na D + b D X(t) < X(t) b D < 1 na D X(t) [C. Schindelhauer, Algorithmische Grundlagen des Internets, Uni Paderborn, 2003] 35

Efficiency Analysis (3) For lower load X(t) < K: X(t + 1) > X(t) ai 0 bi 1 n x i (t + 1) > i=1 n x i (t) i=1 n a I + b I x i (t) > X(t) i=1 na I + b I X(t) > X(t) b D > 1 na I X(t) ai < 0: if a=-1 then bi > 1 + n/x(t), i.e. bd depends on n (this is not desired) [C. Schindelhauer, Algorithmische Grundlagen des Internets, Uni Paderborn, 2003] 36

Fairness Analysis (1) Fairness should converge towards 1, i.e. Convergence criterion: F(x) is bounded above by 1 F(x(t+1)) - F(x(t)) is growing for an appropriate choice of a and b F(x(t)) = ( n i=1 x i(t) ) 2 n n i=1 (x i(t)) 2 1 F(x(t + 1)) = = = lim F(x(t)) = 1 t ( n i=1 x i(t + 1) ) 2 n n i=1 (x i(t + 1)) 2 ( n i=1 a + bx 2 i) n n i=1 (a + bx i) 2 ( n i=1 a b + x 2 i) n n i=1 ( a b + x i) 2 37

Fairness Analysis (2) F(x(t + 1)) F(x(t) = ( n i=1 a b + x i) 2 n n i=1 ( a b + x i) 2 ( n i=1 x i) 2 n n i=1 (x i) 2 0 common denominator is positive and can be omitted ( n i=1 a b + x 2 n i) i=1 (x i) 2 n ( a i=1 b + x 2 i) X 2 0 ( n a b + X) 2 n i=1 (x i) 2 n ( a i=1 b + x 2 i) X 2 0 ) X 2 0 ( n a b + X) 2 n i=1 (x i) 2 n i=1 expand and remove ( ( a b )2 + 2 a b x i + x 2 i X 2 x 2 i x 2 i X 2 ( 2 a b X + n( a b )2)( n n i=1 x2 i X 2) 0 a/b has to be 0 0 if a/b = 0 then no fairness increase 0 38

Parameter selection From efficiency and fairness analysis: ai 0 and bi 1 ad 0 and ad 0, thus ad = 0 0 < bd < 1 ad = 0 means: fairness remains at the same level in the decrease step. Fairness can only be reached through the increase step, i.e. ai > 0 Summary: Fairness and efficiency can be reached by an additive increase and { a multiplicative decrease ai + x, if y(t) =0 f(x, y) = b D x, if y(t) =1 39

Vector diagram for 2 participants K data rate of x1 fairness optimal data rate efficiency 0 data rate of x2 K [C. Schindelhauer, Algorithmische Grundlagen des Internets, Uni Paderborn, 2003] 40

AIAD - Additive Increase/ Additive Decrease data rate of x1 AD AI fairness efficiency data rate of x2 [C. Schindelhauer, Algorithmische Grundlagen des Internets, Uni Paderborn, 2003] 41

MIMD - Multiplicative Increase/ Multiplicative Decrease MI data rate of x1 MD fairness efficiency data rate of x2 [C. Schindelhauer, Algorithmische Grundlagen des Internets, Uni Paderborn, 2003] 42

AIMD - Additive Increase/ Multiplicatively Decrease data rate of x1 MD AI fairness efficiency data rate of x2 [C. Schindelhauer, Algorithmische Grundlagen des Internets, Uni Paderborn, 2003] 43

Conclusion Analytical peformance evaluation is based on abstract models It requires in-depth knowledge of the system (can be performed along with experiments/simulations to check whether model abstractions are valid) Side-effects should not be neglected due to abstraction 44