Stochastic Fair Traffic Management for Efficient and Robust IP Networking Jae Chung Airvana Inc. Chelmsford, MA Mark Claypool, Robert Kinicki WPI Computer Science Department Worcester, MA th IEEE International Performance Computing and Communications Conference (IPCCC) New Orleans, Louisiana, April 11, 2007
IPCCC April 11, Outline Introduction SFG Design Configuration Evaluation Summary
IPCCC April 11, Internet Congestion Control Current Architecture –TCP : Congestion responsive traffic sources using Additive Increase Multiplicative Decrease (AIMD) –Drop-Tail IP Router : Implicit congestion feedback controller (packet drop congestion signal) Improve Congestion Feedback Control for TCP –Active Queue Management (AQM) at IP Router Low queuing delay Explicit congestion notification (ECN) Fairness and Network Protection from non-TCP –Class-based Bandwidth Usage Control –Per-flow Bandwidth Usage Control
IPCCC April 11, ComplexLight-weightScalable Preferential-based Packet Dropping FQ, SFQ Pseudo Per-flow Management Per-flow Management FREDCSFQ, RFQRED-PD, SFB Statistical Flow Monitor Statistical Packet Filter CHOKe Edge-Core Architecture Scheduling-based Approaches Per-Flow Bandwidth Control SFG
IPCCC April 11, Stochastic Fairness Guardian SFG In Filtered Congestion Control Network Protection IP Router Queue Drop-Tail / AQM Drop-Tail / AQM Out drop TCP UDP TCP UDP TCP drop TCP UDP
IPCCC April 11, Outline Introduction SFG Design Configuration Evaluation Summary
IPCCC April 11, SFG Design Overview ……… … p = 0.05 p (flow3) = 0.00 Level 1 Level 2 Level L Bin 1 Bin 2 Bin N-1 Bin N p (flow2) = 0.02 p (flow1) = 0.03 … … … p = 0.04 p = 0.02p = 0.00 p = 0.02 p = 0.03 p = 0.00 … Level L-1 p = 0.06
IPCCC April 11, Multi-Level Hash Bins (1/2) Use multiple hash functions ( L ) Each function hashes flows into N bins Each bin is assigned an equal share ( 1/N ) of the outbound link capacity ( C ). Every epoch ( d s ), update the forced packet drop probability for each bin ( prob[i][j] ): for i = 0 to L − 1 do for j = 0 to N − 1 do prob[i][j] = (bytes[i][j] − d s C/N) / bytes[i][j]; bytes[i][j] = 0; /* update drop p for all bins */ end for
IPCCC April 11, Multi-Level Hash Bins (2/2) Each packet arrival, compute the per-flow forced drop probability ( p ) for the packet, and update bytes received for each hashed bins: p = 1; for i = 0 to L − 1 do j = hash(i, packet); p = min(p, prob[i][j]); /* min drop p seen so far */ bytes[i][j] = bytes[i][j] + sizeof(packet); end for Drop the packet with the computed per-flow drop probability ( p )
IPCCC April 11, Outline Introduction SFG Design Configuration Evaluation Summary
IPCCC April 11, The Number of Hash Bins Configure maximum and minimum Congestion Notification Probability ( CNP ) thresholds ( m h, m l ) to turn On/Off SFG if CNP m h then Turn On SFG if CNP m l then Turn Off SFG Find the number of bins ( N ) such that the capacity of each hash bin is equal to TCP-Friendly Rate ( T TCP ) at CNP = m l N = C / T TCP (m l, RTT sys ) where, RTT sys : Estimated average system Round Trip Time
IPCCC April 11, The Number of Hash Levels False Positive Probability (FPP) Analysis –Given the number of hash bins ( N ), the number of hash levels ( L ) and the estimated number of TCP-Unfriendly flows ( B ) –The false positive probability ( P fp ) that a TCP- Friendly flow shares all the bins with TCP- Unfriendly flows: Use FPP to determine the number of levels.
IPCCC April 11, SFG Configuration Example Link Bandwidth = 10 Mbps, RTT sys = 300 ms CNP Thresholds: m h = 0.02, m l = 0.01 N = 20, B = 1~10, L = ?
IPCCC April 11, Unlucky TCP-Friendly Flows? Problem : When hashed, an unlucky TCP- Friendly flow can always share all the bins with TCP-Unfriendly flows. Solution : Use different hashing seed (increment by one) in the next measurement epoch. Note : This solution also relaxes the low False Positive Probability (FPP) requirement for long- lived flows (i.e. large file transfer).
IPCCC April 11, Measurement Epoch Length The epoch length should be –Large enough to avoid control error due to insufficient control data acquisition –Larger than the effective congestion feedback control system response time to minimize congestion control interference. We recommend two seconds for SFG epoch –Approximately twice the upper-bound average RTT seen on the Internet (1 second) [Choi, INFOCOM 2004] –The large epoch length, hence slow response time, is acceptable considering the long flow lifetimes of potentially misbehaving flows.
IPCCC April 11, Outline Introduction SFG Design Configuration Evaluation Summary
IPCCC April 11, Evaluation Overview Evaluation Subjects –Drop-Tail Queue (Baseline) –PI Controller (Hollot+, INFOCOM 2001) –RED-PD (Mahajan+, ICNP 2001), –SFB (Feng+, INFOCOM 2001) –CHOKe (Mitra+, INFOCOM 2000) –SFG, SFG-PI Evaluation Objectives –TCP performance –Protection performance –Queuing delay and jitter –Web performance
IPCCC April 11, Network Topology and Scenario C = 10 Mbps Q = 500 Kbytes RTLD = [60, 1000] ms N web = 300 (Load offered = 0.25) –Web session setting (H-Campos+, MASCOTS 2003) Size avg = 5KB, Shape = 1.2, T avg_think = 7sec (expo distribution) N ftp_bw = 50 N ftp_fw = 10 50 100 200 400 (every 200 sec) 400 200 100 50 10 (every 200 sec) N cbr = 5 –2 Mbps CBR (1.2 Mbps VBR) from 100 to 1700 sec Simulation time = 2000 sec r1 r1 r2 r2 s s s s d d d d Q = 500 pkts C = 10 Mbps
IPCCC April 11, Queue Configurations (1/2) RED-PD –RED : q min = 50, q max = 300, p max = 0.15, w q = –PD : RTT target = 100 ms, Window flow_monitor_history = 5, T flow_unmonitor = 15 sec, Rate drop_threshold = 0.005, p max_inc_step = 0.05 CHOKe –RED : Same as above –Packet Filter : Divide RED’s queue threshold range (q max - q min ) into 5 even sub-regions and apply 2i+1 drop comparisons for an incoming packet, where i = {0, 1, 2,3, 4} is the sub-region ID.
IPCCC April 11, Queue Configurations (2/2) SFB –BLUE (inside each SFB bin) : p inc_step = 0.005, p dec_step = 0.001, T freeze = 100 ms –Flow Monitor : L = 3, N = 20, p unresp_detect = 0.98, T penalty_box = 15 ms, T hash_switch = 20 sec SFG-PI –PI : K P = 0.71× 10 −5, K I = × 10 −5 –SFG : L = 3, N = 20, m h = 0.02, m l = 0.01, d s = 2 sec
IPCCC April 11, System Throughput Offered Load # of FTP
IPCCC April 11, Unresponsive CBR Throughput Offered Load # of FTP
IPCCC April 11, Queuing Delay and Jitter Offered Load # of FTP
IPCCC April 11, Web Object Service Time Offered Load # of FTP
IPCCC April 11, Outline Introduction SFG Design Configuration Evaluation Summary
IPCCC April 11, Summary IP Router Queue Management Taxonomy Stochastic Fairness Guardian (SFG) –A lightweight Statistical Packet Filter –Flexible deployment with Drop-Tail or AQM –Practical configuration guidelines –Performs comparable to or better than complex flow monitoring mechanisms (RED-PD, SFB).
IPCCC April 11, Additional Contribution Confirms [Le+, SIGCOMM 2003] result that ECN degrades Web service time at a high offered load ( 1.2 ). This is because the congestion notification probability (CNP) is significantly higher than that of packet drop congestion notification system, causing more TCP SYN packet drops.
Stochastic Fair Traffic Management for Efficient and Robust IP Networking Jae Chung Airvana Inc. Chelmsford, MA Mark Claypool, Robert Kinicki WPI Computer Science Department Worcester, MA th IEEE International Performance Computing and Communications Conference (IPCCC) New Orleans, Louisiana, April 11, 2007