Aggressiveness Protective Fair Queuing for Bursty Applications Nir
Aggressiveness Protective Fair Queuing for Bursty Applications Nir Halachmi (IDC) Joint work with Dr. Anat Bremler Barr (IDC) and Prof. Hanoch Levy (TAU) APFQ - Nir Halachmi (IDC)
Background: Network planning • Network Designers use the traffic properties to plan the capacity of the network. Link Capacity APFQ - Nir Halachmi (IDC)
Background: Exploiters • Exploiters – Malicious: Denial of Service (DDOS) – Innocent: pre-fetching, massive users Drop Link Capacity Exploiter APFQ - Nir Halachmi (IDC)
Background: Solution- Fair Scheduling protection against Exploiters • Weighted Fair Queuing (WFQ) mechanisms provides that the resource is fairly (typically equally) divided among all Drop 1 Link Capacity 1 Exploiter Drop APFQ - Nir Halachmi (IDC)
Our main contribution • The user traffic is bursty. • WFQ cannot provide fair service to bursty applications in the presence of aggressive users • We propose WFQ-like mechanism called Aggressiveness Protective Fair Queuing (APFQ) that solves this problem. APFQ - Nir Halachmi (IDC)
Bursty Application • Many application are bursty (model on/off ~ active/idle) – Http on off Time APFQ - Nir Halachmi (IDC)
Bursty Traffic • Network Designers use the traffic burstiness property to plan the capacity of the network. Drop Link Capacity Drop APFQ - Nir Halachmi (IDC)
Aggressive Users • Aggressive user use the idle time to get more BW Drop Link Capacity Drop APFQ - Nir Halachmi (IDC)
WFQ defensives • WFQ cannot provide good fairness in the presence of such aggressive users. Drop Link Capacity Drop APFQ - Nir Halachmi (IDC)
The effect of aggressive user on (polite users (WFQ APFQ - Nir Halachmi (IDC)
Aggressiveness Protective Fair (Queuing (APFQ We propose a new WFQ-like mechanism called Aggressiveness Protective Fair Queuing (APFQ) that solves this problem by dynamically decreasing the weight of the aggressive users. APFQ - Nir Halachmi (IDC)
Agenda • • • Related Work. Solution Requirements. APFQ algorithm. APFQ analysis Simulation. APFQ - Nir Halachmi (IDC)
Related Work • Dynamic WFQ was proposed to handle the fact that it is hard to assign static weight accurately [Shin and el. 2001][Makrakis and el. 2001]. – Fix the weight according to arrival rate or the queue length. – Does not address bursty traffic problem. • Dynamic WFQ was proposed as part of a mechanism to handle DDOS [Thomas and el. 2003] – Penalty mechanism to flows – Does not deal with traffic burstiness and does not suggest or analyze the weight function mechanism APFQ - Nir Halachmi (IDC)
Solution Requirements • Provide fairness to polite users. • The limitation imposed on the users is a function of the system load. – Protect innocent users by negatively discriminating aggressive users on an overloaded Network. Drop Link Capacity Drop APFQ - Nir Halachmi (IDC)
APFQ • Dynamic weight function that reduces the weight assigned to aggressive users • For every flow (user) the mechanism counts the amount of traffic that a source has generated in the near history • It uses this amount to affect the weight given to the user. APFQ - Nir Halachmi (IDC)
Weight function • BS – the assigned quota. • SM(t) – offered traffic during the last sliding. window in time t. • wo original fix weight. • α – punishment factor – configure by the system. APFQ - Nir Halachmi (IDC)
APFQ Illustrated • Polite user transmit data: Time • Aggressive User Transmitted data under WFQ • Aggressive User Transmitted data under APFQ - Nir Halachmi (IDC)
APFQ algorithm KBytes 1 7 Time W(0) Weight Time APFQ - Nir Halachmi (IDC)
Analysis pre conditions • • • Polite user transmits at rate R for Ton and idle for Toff. Aggressive user transmits at constant peak rate R. N concurrently active users. K aggressive users , N-K polite users. For each user original fix weight wo = 1 Packets that are not transmitted within a period of ∆ from their arrival time are dropped. • B is the output link capacity. • ∆ = Ton + Toff = sliding window size. • ƒ = burst factor = APFQ - Nir Halachmi (IDC)
Polite User • Offered Data • Transmitted Data WFQ • Transmitted Data APFQ - Nir Halachmi (IDC)
Naive Aggressive User • Offered Data • Total offered Data • Transmitted Data WFQ APFQ - Nir Halachmi (IDC)
Naive Aggressive User • Transmitted Data APFQ • For α =1 • For α=2 APFQ - Nir Halachmi (IDC)
Continuous Naive Aggressive • Continuous Naive Aggressive - an aggressive user that was active in the previous window size. • I. e. , offered traffic during the last sliding • Hence the assigned weight is fixed APFQ - Nir Halachmi (IDC)
Continuous Naive Aggressive • Transmitted Data APFQ • For α =1 Exactly as polite use under APFQ • For α=2 Exactly as polite use under APFQ - Nir Halachmi (IDC)
t s o f f e • Sophisticated Aggressive ruser is assumed to know the function used by APFQe and optimizes its offered d traffic in order to maximizet the traffic APFQ will transmit for him. r a f f • An approach for the sophisticated aggressive user is to offer the same amount ofi traffic as the mechanism c allow her to transmit. i APFQ - Nir Halachmi (IDC) n Sophisticated Aggressive
Sophisticated User Upper Bound • Lemma: Under APFQ a sophisticated aggressive user cannot transmit in a period of duration ∆ more than (m+2)·BS traffic where m is derived from equation APFQ - Nir Halachmi (IDC)
Sketch of proof APFQ - Nir Halachmi (IDC)
Sophisticated User Lower Bound • Lemma: There is a strategy where the sophisticated aggressive user can transmit during an interval of length ∆ under APFQ with α at least (m+1)·BS traffic where m is derived from equation. APFQ - Nir Halachmi (IDC)
Optimal Strategy for sophisticated aggressive APFQ - Nir Halachmi (IDC)
Analysis Summery User Type WFQ transmitted traffic APFQ transmitted (α=1) traffic (α=2) Polite user 1 1 1 Naïve aggressive user ƒ 1 + log ƒ 2 Continuous naïve aggressive user ƒ 1 Sophisticated user ƒ APFQ - Nir Halachmi (IDC)
Simulation • Simulated APFQ on NS 2 • NS 2 code implementing WFQ contributed by Paulo Losi • APFQ was implemented as a software wrapper around WFQ. APFQ - Nir Halachmi (IDC)
Tests Set-up APFQ - Nir Halachmi (IDC)
Experiment 1 • Examine the percentage of packets transmitted per flow as a function of the link capacity. • Scenario 1: 12 polite users • Scenario 2: 10 polite users and 2 aggressive users. APFQ - Nir Halachmi (IDC)
Experiment 1 Results APFQ - Nir Halachmi (IDC)
Experiment 2 • Examine how many aggressive users a given network can handle without negatively affecting the polite users. • Test APFQ robustness to large networks. APFQ - Nir Halachmi (IDC)
Experiment 2 • 300 users with a variable number of aggressive users out of them. • The number of aggressive users was increased in each round. • The Link-capacity was set to 9000 Kb/sec. APFQ - Nir Halachmi (IDC)
Experiment 2 Results APFQ - Nir Halachmi (IDC)
Implementation consideration • APFQ can use a regular WFQ. • Experiments revealed that Dynamic WFQ, in some scenarios, can causes disorder. • The cause of the problem is that the WFQ implementation implicitly assumed the weight of the queues is constant (i. e. static weight). APFQ - Nir Halachmi (IDC)
Conclusion • Aggressive users use the idle time to get more bandwidth. • WFQ has a fairness problems in the presence of aggressive users. • APFQ is a mechanism that provide fairness in such cases, using a dynamic weight function. APFQ - Nir Halachmi (IDC)
? Questions Thank You APFQ - Nir Halachmi (IDC)
Problem demonstration V_t =0 6 5 4 3 2 1 0 Time 1 P 4 F=4 P 3 F=3 P 2 F=2 P 1 F=1 1 V_t =1 6 6 5 4 3 2 1 Time P 1 F=1 1 P 5 F=5 P 4 F=4 P 3 F=3 P 2 F=2 1 V_t =2 8 7 6 5 4 3 2 Time P 2 F=2 1 P 6 F=9 P 5 F=5 P 4 F=4 P 3 F=3 0. 25 APFQ - Nir Halachmi (IDC) P 1 F=1
Problem demonstration V_t =8. 4 8 7 6 5 4 3 2 Time P 7 F=6 P 5 F=5 P 4 F=4 P 3 F=3 P 2 F=2 P 1 F=1 p 6 F=9 P 7 F=6 P 5 F=5 P 4 F=4 P 3 F=3 1 P 8 F=13 p 6 F=9 0. 25 V_t =9. 2 8 7 6 5 4 3 2 Time 1 P 8 F=13 0. 25 V_t =10 8 7 6 5 4 3 2 Time 1 0. 25 P 8 F=13 P 2 F=2 APFQ - Nir Halachmi (IDC) P 1 F=1
Problem demonstration V_t =6 Time P 7 F=6 P 8 F=13 p 6 F=9 P 5 F=5 The new flow arrive and it’s finish time is set by the virtual time and not by the real round time (it finish time should have been 3) 1 P 4 F=4 P 3 F=3 P 2 F=2 P 1 F=1 0. 25 V_t =6. 8 8 7 6 5 4 3 2 Time P 7 F=6 P 8 F=13 p 6 F=9 P 4 F=4 1 P 5 F=5 0. 25 The new flow packet should have been transmitted by now V_t =7. 6 8 7 6 5 4 3 2 Time P 7 F=6 P 8 F=13 p 6 F=9 1 0. 25 P 5 F=5 P 4 F=4 P 3 F=3 P 2 F=2 APFQ - Nir Halachmi (IDC) P 1 F=1
Sketch of proof APFQ - Nir Halachmi (IDC)
- Slides: 44