1 Updates on Backward Congestion Notification Davide Bergamasco Cisco Systems, Inc. IEEE 802 Plenary Meeting San Francisco, USA July 20, 2005
222 Agenda Previous presentation May 2005 IEEE Interim Meeting in Berlin, Germany bergamasco-backward-congestion-notification-0505.pdf bergamasco-backward-congestion-notification-0505.pdf Updates Algorithm Derivative to improve stability Solicit Bit to accelerate recovery AQM in rate limiter queues to reduce blocking Simulations
Stop Generation of BCN Messages t Q Qeq Queue Stability ISSUE: Overshoots and undershoots accumulate over time SOLUTION: Signal only when Q > Q eq && dQ/dt > 0 Q < Q eq && dQ/dt < 0 Easy to implement in hardware: just an Up/Down counter every enqueue every dequeue Reduces signaling rate by 50%!!
444 Solicit Bit t BCN0 R Random Time BCN+2 R min R solicit Force Bit On BCN+2BCN+4 Force Bit Off BCN+1 ISSUE: When the rate is very low, recovery may take too long because of sampling. SOLUTION: Solicit Bit in RL tag if R < R solicit Solicit bit is set if R >= R solicit Solicit bit is cleared If possible, CP will generate a BCN+ for every frame with Solicit bit on, regardless of sampling
555 Changes to Detection & Signaling
666 Rate Limiter Queue AQM Tail Drop Flow Control ISSUE: RL queues due to buffer exhaustion SOLUTION: add an AQM mechanism to control buffer usage
777 Rate Limiter Queue AQM Traditional AQM such as RED (mark/drop) don’t work well for RL queues: Buffer too small Very few flows Traffic statistics very different from Internet traffic A novel and very simple solution based on: Threshold on the RL queue Q AQM (e.g., 10 pkts) Fixed drop or mark probability P (e.g., 1%) Two counters: C TCP : Number of TCP packets in the RL queue C UDP : Number of UDP packets in the RL queue Drop or mark TCP packets with probability P when C TCP > Q AQM Drop UDP packets when C UDP > Q AQM TCP UDP Q AQM
888 Simulation Environment (1) Congestion TCP Bulk TCP Ref1 TCP Ref2 TCP On/Off
999 Simulation Environment (2) Short Range, High Speed DC Network Link Capacity = 10 Gbps Switch latency = 1 s Link Length = 100 m (.5 s propagation delay) Control loop delay ~ 3 s Workload 1) TCP only STb1-STb4: 3 parallel connections transferring 1 MB each continuosly STi1-STi4: 3 parallel connections transferring 1 MB then waiting 10 ms SR1: 1 connection transferring 10 KB (avg 16 s wait) SR2: 1 connection transferring 10 KB (1 s wait) 2) 80% TCP + 20% UDP STb1-STb4: same as above STi1-STi4: same as above SR1-SR2: same as above SU1-SU4: variable length bursts with average offered load of 2 Gbps
10 Simulation Goals Study the performance of BCN with various congestion management techniques at the RL No Link-level Flow Control Link-level Flow Control Link-level Flow Control + RL simple AQM (drop/mark) Metrics: Throughput and Latency of TCP bulk and on/off connections Throughput and Latency of Reference Flows Bottleneck Link Utilization Buffer Utilization
11 Bulk & On/Off Application Throughput & Latency (Workload 1: TCP Only) RL Congestion Management Mechanism Bulk TCP Throughput (Tps) Bulk TCP Latency ( s) On/Off TCP Throughput (Tps) On/Off TCP Latency ( s) Throughput on Bottleneck link (Gbps) No Flow Control , , Flow Control , , Flow Control + RL AQM (drop) , , Flow Control + RL AQM (mark) , , WorstBest
12 Reference Applications Throughput & Latency (Workload 1: TCP Only) RL Congestion Management Mechanism Ref1 TCP Throughput (Tps) Ref1 TCP Latency ( s) Ref2 TCP Throughput (Tps) Ref2 TCP Latency ( s) No Flow Control Flow Control Flow Control + AQM (drop) Flow Control + AQM (mark) WorstBest
13 Buffer Utilization: No FC
14 Buffer Utilization: FC
15 Buffer Utilization: FC + RL AQM (drop)
16 Buffer Utilization: FC + RL AQM (mark)
17 Summary & Next Steps A number of improvements have been made to BCN Derivative to improve stability Solicit Bit to speed up recovery AQM in RL queues to reduce blocking Future Steps Build a Prototype??? …
18