Congestion Control in Software Define Data Center Network Speaker : Cheng-Yu Chang Advisor : Dr. Kai-Wei Ke Date : Dec. 3 2015
Outline Software Define Network (SDN) TCP/IP Congestion Control Data Center Network (DCN) Methodology Implementation Future Directions References
Software Define Network (SDN) Traditional Architecture SDN Architecture
TCP/IP Congestion Control
TCP/IP Congestion Control Explicit Congestion Notification (ECN) in TCP/IP Notify congestion to end nodes Sender reduce sending rate Operation of ECN with IP TCP
Operation of ECN with IP 00 – Non ECN-Capable Transport, Non-ECT 10 – ECN Capable Transport, ECT(0) 01 – ECN Capable Transport, ECT(1) 11 – Congestion Encountered, CE.
Operation of ECN with TCP ECE: TCP receiver echoes back this congestion indication CWR: reduces its congestion window as for a packet drop
Example of ECN ECN=11, Congestion Encountered ECE, ECN-Echo CWR, Congestion Windows Reduced
Data Center Network (DCN) Topology Elephant/Mice Flow TCP Incast
Data Center Network - Topology K-ary fat tree topology Advantages: Low Cost, Full Bisection BW K=4
Elephant vs Mice Flow Link Utilization Elephants (long-lived): Large amount of data Less concerned about latency Can fill up network buffers Mice (short-lived): To be bursty Latency-sensitve Link Utilization
TCP Incast Many to One communication pattern Throughput collapse
Congestion Control Methodology Detection Method Control Method
Methodology Detection Method Control Method Congestion Packet in Action Low latency Low packet loss High throughput
Detection Method Purpose: Detect the network congestion Method (per table/per flow/per port): Queue size Packet drop rate Bandwidth Link captaincy (Link load)
Control Method Purpose: Action to reduce congestion Method 1: Modify the host TCP Stack Modify - RWIN, ACK interval Admission Control - Bandwidth allocation Method 2: host no modify Reroute - chose less congestion path, with DLBMP Switch ECN setting modify
Implementation
Implementation Under TCP Congestion/Incast in Data Center Network Architecture: Congestion Detection Target flow identification Congestion Control modification
Congestion Detection TCP Incast in the DCN case throughput collapse Detection Method: The queue size more than threshold Available bandwidth less than threshold Port/Flow load more than link capacity threshold
Target flow identification Use the DSCP for identification Detect the Elephant/Mice use rate and time large segments Elephant flow: more sensitive and commonly affected (Target)
Congestion Control modification - part 1 Method: use different queues/paths/congestion control Example of different queues: Elephant flow: queue 1 Mice flow: queue 2 Congestion Different queues No congestion Same queue
Result of different queues
Result of different queues
Result of different queues
Congestion Control modification - part 2 Example of different congestion control: Elephant flow: discard the CE code point (without CC) Mice flow: TCP/IP congestion control Elephant and Mice use same queue
Result - Mean Throughput Proposed = Different ECN Queue = Different Queue 50 mice flows 100 mice flows
Result - Goodput Goodput = application-level throughput 50 mice flows
* FCT = flow completion time Result - Mice Flows Traffic: 9 Elephant flows 50 Mice flows Mice Flows Different ECN Queue ECN ECN off Min FCT 0.003 s 0.014 s 0.002 s 0.013 s Mean FCT 0.545 s 0.627 s 1.011 s 0.178 s Max FCT 1.015 s 3.230 s 3.016 s 0.623 s Avg. Throughput 7652 Mbps 1243 Mbps 8343 Mbps 3609 Mbps * FCT = flow completion time
Result (Cont.) Elephant flow Throughput: Different ECN > Queue > ECN > ECN off Mice flow Mean of FCT: ECN off > Different ECN > Queue > ECN Average throughput: ECN > Different ECN > ECN off > Queue
Future Directions With QoS mechanism Congestion Control and QoS use rerouting first. If path load is full than: Elephant flow with QoS without Congestion control Mice flow with congestion control
References Lee, Chunghan, et al. "Flow-Aware Congestion Control to Improve Throughput under TCP Incast in Datacenter Networks,“ in Computer Software and Applications Conference (COMPSAC), 2015, pp.155-162. Gholami, M., & Akbari, B. “Congestion Control in Software Defined Data Center Networks Through Flow Rerouting,” in 2015 23rd Iranian Conference on Electrical Engineering (ICEE), 2015, pp.654-657. S.Fang, Y.Yu, C. H.Foh and K. M. M.Aung. “A loss-free multipathing solution for data center network using software-defined networking approach,” IEEE Trans. Magn., vol. 49, no. 6, pp. 2723-2730, Jun., 2013. M. F. Bari, S. R. Chowdhury, R. Ahmed, and R. Boutaba, “PolicyCop:An autonomic QoS policy enforcement framework for software defined networks,” in Proc. IEEE SDN Future Netw. Serv. (SDN4FNS), Nov. 2013, pp. 1–7
References Open vSwitch and the Intelligent Edge, http://openvswitch.org/pipermail/announce/2014-May/000066.html.