Skip to main content
Log in

Mitigating incast-TCP congestion in data centers with SDN

  • Published:
Annals of Telecommunications Aims and scope Submit manuscript

Abstract

In data center networks (DCNs), the presence of long-lived TCP flows tends to bloat the switch buffers. As a consequence, short-lived TCP-incast traffic suffers repeated losses that often lead to loss recovery via timeout. Because the minimum retransmission timeout (minRTO) in most TCP implementations is fixed to around 200 ms, interactive applications that often generate short-lived incast traffic tend to suffer unnecessarily long delays waiting for the timeout to elapse. The best and most direct solution to such problem would be to customize the minRTO to match DCNs delays; however, this is not always possible; in particular in public data centers where multiple tenants, with various versions of TCP, co-exist. In this paper, we propose to achieve the same result by using techniques and technologies that are already available in most commodity switches and data centers and that do not interfere with the tenant’s virtual machines or TCP protocol. In this approach, we rely on the programmable nature of SDN switches and design a SDN-based incast congestion control (SICC) framework, that uses a SDN network application in the controller and a shim-layer in the host hypervisor, to mitigate incast congestion. We demonstrate the performance gains of the proposed scheme via real deployment in a small-scale testbed as well as ns2 simulation experiments in networks of various sizes and settings.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14

Similar content being viewed by others

Notes

  1. We define the traffic inertia of a flow as the worst case amount of traffic that the flow can inject in the network before congestion can be detected. This is typically the maximum amount of traffic that could be lost before the loss is detected and recovery invoked.

  2. Typically, the throughput of internal networking stack is 50–100 Gb/s. This is fast enough to handle tens of concurrent VMs sharing a single or several physical links. Hence, the window update function added to the vswitch would not hog the CPU nor affect the achievable throughput.

  3. The hardware switch was not used because its OF-DPA implementation does not follow OF1.5 specifications [22] which allows for matching on TCP flags. The support for OF1.5 is introduced into OvS starting from version 2.3.

References

  1. Abdelmoniem AM, Bensaou B (2015) Efficient switch-assisted congestion control for data centers: an implementation and evaluation. In: Proceedings of the IEEE international performance computing and communications conference (IPCCC)

  2. Abdelmoniem AM, Bensaou B (2015) Incast-aware switch-assisted TCP congestion control for data centers. In: Proceedings of the IEEE global communications conference (GlobeCom)

  3. Abdelmoniem AM, Bensaou B (2015) Reconciling mice and elephants in data center networks. In: Proceedings of the IEEE CloudNet conference

  4. Abdelmoniem AM, Bensaou B, Abu AJ (2017) SICC: SDN-based incast congestion control for data centers. In: Proceedings of the IEEE international conference on communications (ICC)

  5. Akyildiz IF, Lee A, Wang P, Luo M, Chou W (2014) A roadmap for traffic engineering in SDN-OpenFlow networks. Comput Netw 71:1–30

    Article  Google Scholar 

  6. Alizadeh M Data Center TCP (DCTCP). http://simula.stanford.edu/alizade/Site/DCTCP.html

  7. Alizadeh M, Greenberg A, Maltz DA, Padhye J, Patel P, Prabhakar B, Sengupta S, Sridharan M (2010) Data center TCP (DCTCP). ACM SIGCOMM CCR 40:63–74

    Article  Google Scholar 

  8. Alizadeh M, Javanmard A, Prabhakar B (2011) Analysis of DCTCP: stability, convergence, and fairness. In: Proceedings of the ACM SIGMETRICS

  9. Apache.org: Apache HTTP server benchmarking tool. http://httpd.apache.org/docs/2.2/programs/ab.html

  10. Benson T, Akella A, Maltz DA (2010) Network traffic characteristics of data centers in the wild. In: Proceedings of the ACM SIGCOMM

  11. Chen W, Ren F, Xie J, Lin C, Yin K, Baker F (2015) Comprehensive understanding of TCP Incast problem. In: Proceedings of the IEEE INFOCOM

  12. Chowdhury M, Zhong Y, Stoica I (2014) Efficient coflow scheduling with varys. In: Proceedings of the ACM SIGCOMM, pp 443–454

  13. Feamster N, Rexford J, Zegura E (2013) The road to SDN. Queue 11:20–40

    Article  Google Scholar 

  14. iperf: The TCP/UDP bandwidth measurement tool. https://iperf.fr/

  15. Jouet S, Perkins C, Pezaros D (2016) OTCP: SDN-managed congestion control for data center networks. In: Proceedings of IEEE/IFIP network operations and management symposium (NOMS)

  16. Kandula S, Sengupta S, Greenberg A, Patel P, Chaiken R (2009) The nature of data center traffic. In: Proceedings of the ACM IMC

  17. Karakus M, Durresi A (2017) A survey: control plane scalability issues and approaches in software-defined networking (SDN). Comput Netw 112:279–293

    Article  Google Scholar 

  18. Lu Y, Zhu S (2015) SDN-based TCP congestion control in data center networks. In: Proceedings of IEEE IPCCC

  19. Mckeown N, Anderson T, Peterson L, Rexford J, Shenker S, Louis S (2008) OpenFlow: enabling innovation in campus networks. ACM SIGCOMM CCR 38:69–74

    Article  Google Scholar 

  20. NS2: the network simulator ns-2 project. http://www.isi.edu/nsnam/ns

  21. Open Networking Foundation (2013) SDN architecture overview. Tech. rep., Open Networking Foundation

  22. opennetworking.org: OpenFlow v1.5 Specification. https://www.opennetworking.org/sdn-resources/openflow

  23. openvswitch.org: Open virtual switch project. http://openvswitch.org/

  24. Panda A, Scott C, Ghodsi A, Koponen T, Shenker S (2013) CAP for networks. In: Proceedings of the ACM HotSDN workshop

  25. Rijsinghani A (1994) RFC 1624—computation of the internet checksum via incremental update. https://tools.ietf.org/html/rfc1624

  26. Ryu Framework Community: Ryu: a component-based software defined networking controller. http://osrg.github.io/ryu/

  27. Vasudevan V, Phanishayee A, Shah H, Krevat E, Andersen DG, Ganger GR, Gibson GA, Mueller B (2009) Safe and effective fine-grained TCP retransmissions for datacenter communication. ACM SIGCOMM CCR 39:303–314

    Article  Google Scholar 

  28. Wu H, Feng Z, Guo C, Zhang Y (2013) ICTCP: Incast congestion control for TCP in data-center networks. IEEE/ACM Trans Netw 21:345–358

    Article  Google Scholar 

  29. Zhang J, Ren F, Tang L, Lin C (2015) Modeling and solving TCP incast problem in data center networks. IEEE Trans Parallel Distrib Syst 26(2):478–491

    Article  Google Scholar 

Download references

Acknowledgements

This work is supported in part under Grants: HKPFS PF12-16707, FSGRF13EG14, REC14EG03, and FSGRF14EG24.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ahmed M. Abdelmoniem.

Additional information

The source code, simulation, and experiments is available at https://ahmedcs.github.io/SICC/

This paper is an extended version of [4].

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Abdelmoniem, A.M., Bensaou, B. & Abu, A. Mitigating incast-TCP congestion in data centers with SDN. Ann. Telecommun. 73, 263–277 (2018). https://doi.org/10.1007/s12243-017-0608-1

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s12243-017-0608-1

Keywords

Navigation