<<

READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 1

Latency and Optimization in Modern Networks: A Comprehensive Survey Amir Mirzaeinnia, Mehdi Mirzaeinia, and Abdelmounaam Rezgui

Abstract—Modern applications are highly sensitive to com- On one hand every user likes to send and receive their munication delays and throughput. This paper surveys major data as quickly as possible. On the other hand the network attempts on reducing and increasing the throughput. infrastructure that connects users has limited capacities and These methods are surveyed on different networks and surrond- ings such as wired networks, wireless networks, these are usually shared among users. There are some tech- transport control, Remote Direct Memory Access, and machine nologies that dedicate their resources to some users but they learning based transport control, are not very much commonly used. The reason is that although Index Terms—Rate and Congestion Control , Internet, Data dedicated resources are more secure they are more expensive Center, 5G, Cellular Networks, Remote Direct Memory Access, to implement. Sharing a physical channel among multiple Named Data Network, Machine Learning transmitters needs a technique to control their rate in proper time. The very first congestion network collapse was observed and reported by Van Jacobson in 1986. This caused about a I.INTRODUCTION thousand time rate reduction from 32kbps to 40bps [3] which Recent applications such as Virtual Reality (VR), au- is about a thousand times rate reduction. Since then very tonomous cars or aerial vehicles, and telehealth need high different variations of the Transport Control Protocol (TCP) throughput and low latency communication. These applica- have been designed and developed. tions have to communicate through variety of network and There are some main capabilities required to achieve. First, traffic characteristics that are evolved into massive diverse handling the congestion may cause the delay of a certain flow cases. High Bandwidth Product (HBD), Multi paths, Data which is not desired for the network users. Resource maximum Centers, and a variety of wireless networks are some of the utilization to serve more users is also desired. Therefore main domains that their traffic needs to be managed properly. increasing the number of users and their transmission rate Latency and throughput optimization (L&T) are even more is desired and this increasing makes it more challening to complex problems to achieve in such a huge environment. optimize user’s latency and throughput. Transport control is , rate control, and load balancing are an approach to improve the (L&T) of the networks. There are some of the main approaches to imrpove the latency and two main class of throughput of the different networks. We have found that, TCP is known as connection oriented transmission which thus far, different networks need customized control mech- means senders wait to receive an acknowledgement signal anism to achieve optimum performance. However Machine packet. To continue transmission the sender needs to receive Learning (ML) algorithms (specially deep learning based) are acknowledgment of the previous packet in a certain timeout a promising approach to achieve such an ambitious adaptive period. Otherwise the previous packet which is not acknowl- intelligent mechanism to optimally work in different network edged yet would be retransmitted. Packet by packet data environments and serve different traffic characteristics. In 2017 transmission and waiting for its acknowledgment wastes time arXiv:2009.03715v1 [cs.NI] 1 Sep 2020 Silver et al. [1], [2] designed a deep learning based computer and network resources. Therefore the idea of sliding windows program to play Go that was able to defeat a world champion evolved to control the transmission rate more efficiently while challenge. These results show that ML algorithms are able it can also check the acknowledgment of the transmitted to achieve beyond human capability. Games are the best packet. Additionally there are circular sequence numbers to benchmark problems to test machine learning algorithms to keep track of the transmitted packets. control a sequence of decisions. Network data rate, congestion Generally, there are different classes of approaches proposed control and load balancing as main parts contributing on to control the rate in networks. Rate based [4] ( streaming (L&T) are also a decision sequence making problem that could media protocols) and window based are the two most common be resolved through deep learning algorithms. In this paper, groups of congestion control mechanisms. Different traffic we present a comprehensive survey of the network rate and packet is another way to address the congestion congestion control problem starting from the beginning till problem in the networks which is covered in more detail in recent intelligent approaches. section II-E1. Congestion Control mechanisms could be also classified A. Mirzaeinia is with the Department of Computer Science and Engineer- by incremental modification. Only sender needs modification; ing, New Mexico Institute of mining and Technology, Socorro, NM, 87801 sender and receiver need modification; middle nodes (like USA e-mail: [email protected] A. Rezgui is with Illinois State University. switches or routers) need modification; sender, receiver and Manuscript received XXXX; revised XXXX. middle nodes need modification. Another way to classify the READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 2

CC Feedback signals packet inter-time (scheduling time). Figure1. shows the main signals to detect the network congestion. Drop/loss based. TCP flows wait for the packet to receive LOSS RTT ECN RTT Gradient acknowledgement to continue with other packets to transmit. Time out is also used to control the time each transmitter TCP Tahow TCP Vegas DCTCP [5] Timely [8] has to wait until receiving the acknowledgment. If transmitter TCP Reno Fast TCP DCCP [6] Others [9], [10] SACK Westwood XCP [7] does not receive acknowledgement by end of the timeout BIC Jersey period then it is assumed that either transmitted packet or its acknowledgment is lost (either dropped or failed). Fig. 1. feedback signals. is sensed after a time out or receiving a NAK packet. For example Additive Increase Multiplicative Decrease (AIMD) based TCP-Tahoe is slow to start when a drop happens, TCP- CC mechanisms could be based on performance metrics that NewReno and TCP-selective ACK (SACK) [35], [36] are a they tackle. High bandwidth-delay product networks, lossy more conservative slow start when a three duplicated acknowl- links, fairness, advantage to short flows, and variable-rate links edge packet is sensed, AIMD-FC [37], Binomial Mechanisms are some of the most commonly tried mechanisms. Congestion [38], HIGHSPEED-TCP (for high BDP) [39], BIC-TCP [40]. control mechanisms could be also classified by fairness criteria As another step, General AIMD Congestion Control GAIMD such as Max-min fairness and proportionally fair. Authors in is proposed to modify the window size increase/decrease rate [11] surveyed the fairness-driven queue management mecha- [41]. nisms. RTT Based. RTT based mechanisms measure the round trip When a CC protocol is about to be designed, there are some time for each packet to find the network congestion level. key points that need to be taken into account. 1- Competitive Different congestion levels cause different round trip times. flows have no information from each other. 2-The number Therefore the transmitter can react based on the measured of competitive flows are not known to flow sources. 3-Flows time to control the network congestion. TCP vegas [42], fast sources are not aware of available resources and bandwidth. TCP [43], TCP-WESTWOOD [44], TCP-JERSEY [45] are Network and traffic transmitters need to react against con- some of the known mechanisms that relys on network RTT. gestions they can sense. Almost all network devices are RTT based mechanisms usually suffer from unfairness because equipped with some input, output or input/output buffers [12]– the flows with shorter RTT are able to attain more shared [15] to manage the congestion to some extent. However net- bandwidth when they compete with flows with longer RTT. work excessive congestion causes the network devices buffer These mechanisms are hard to develop in networks where RTT to overflow. Drop tail is the first method that is performed is in the microsecond range such as Data Center networks. in routers/switches to control the incoming of excessive traf- Explicit Congestion Notification (ECN) Based. In ECN fic. Drop tail causes a situation called flow synchronization. based mechanisms traffic packets are marked by intermediary Flow synchronization reduces the lower bandwidth utilization. nodes in their way when switch buffers are build up to a certain Different have been proposed to threshold. [5], [46]. Therefore transmitters start to reduce the manage network buffering. AQM schemes are surveyed in transmission rate. ECN flag bit will be set in middle way [16]. (RED) is designed to overcome routers if they encounter a certain level of congestion. the flow synchronization issue, and Weighted RED (WRED) RTT Gradient, recently gradient of the RTTs are proposed is developed to provide fairness to responsive TCP and non- as more informative feedback from the networks [8]–[10]. responsive UDP traffic at a buffer of a communications net- Linear/non-linear combinations of above mentioned signals are work [17]. Traditional congestion control protocols work based also considered on recent approaches [47] as utility functions on additive increase and multiplicative decrease. Rate decrease that describe an objective like high throughput and low loss always happened to halve the transmission rate. Besides, rate. current congestion control protocols can be classified into two 2) Congestion Notification: Re-transmission Time Out types: 1- the global end-to-end-based congestion control [18]– (RTO) and NACK are the two main techniques for traffic [24] and 2- the local link-based congestion control [25]–[33]. transmitters to be notified. RTO is the time that transmitters Afanasyev et al. [34] published an example of end to end wait to receive the acknowledgment. Transmitters have to control mechanisms. resend its traffic after the RTO time period. A fixed RTO would Rest of this section covers the congestion detection, notifi- work in wired networks, however to improve the performance cation , control, and the performance metrics that are mostly of the wireless network, adaptive RTO is needed because used in CC mechanisms. of user mobility. In the case of the NACK mechanism, the receiver sends back a Not acknowledged packet (NACK) if it A. Latency and Throughput (L&T) receives a packet which is out of order. For example, if the 1) Congestion Detection: Congestion detection can be receiver received packet number one and three then it NACK through many different network statistics such as packet loss, back for packet number two. queue length, queue length and channel load, channel busyness 3) Congestion Control (CC): A wide variety of network ratio and throughput measurement, packet service time, packet congestion control have been proposed to adapt time and queue length, ratio of packet service time, and and traffic characteristics. In this paper we cover different READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 3

Delay / Throughput

Wired,II Wireless, III Application layer ,IV ML based,V Cellular ,4G,5G QUIC Queue Management Mobile Adhoc IoT Packet Loss classification Fixed adhoc Congestion Control Resource Allocation Admission Control Congestion Window

Internet, II-A NDN II-B HBD, II-C TCP friendly, II-D MultiPath, II-E Data Centers, II-F Single rate Fine/Coarse scheduling Distributed Multi rate Network Coding Centralize Coupling Multipath

Fig. 2. Paper Structure.

Performance Metrics at a fixed rate. Therefore TCP/UDP flows transmission in the same resources may cause unfair resource allocation. Application layer mechanisms control the congestion in UDP based flows ( sectionIV). Besides different TCP protocols may behave differently, and therefore inter-protocol unfairness occurs between different congestion control mechanisms [18]–[21], [23]. For example TCP Vegas suffers from bandwidth sharing when it is passed through the same resources with TCP Reno. The reason is that Fairness Efficiency

Smoothness TCP Vegas uses more conservative mechanisms like different Aggressiveness Responsiveness slow start and fast retransmission. Convergence speed

Flow Completion Time Furthermore unfairness may also happen due to a different Round Trip Time (RTT). This phenomenon is more obvious Fig. 3. Performance Metrics. when RTT based congestion control is applied in the Data Center network where intra-rack traffics are competing with inter-rack traffics ( section II-F). congestion controls designed for internet, data centers, and c) Smoothness: Smoothness measures the variation in wireless networks. Congestion control mechanisms are mostly the transmission rate of a connection using the protocol. designed as reactive. However some proactive mechanisms are Smoothness is important in steady state also published such as [48]. This paper proposes a control d) Responsiveness: Responsiveness is another metric mechanism that explicitly computes the optimal sessions send- used to show the speed needed to reach an equilibrium [50]. ing rates independently of congestion signals (i.e., proactive In other words it measures how fast a connection reacts to mechanisms). Then predicts the proper rate in order to avoid increased congestion by decreasing its window size. It is the congestion problems. desirable that the connection reduces its transmission rate to 4) Performance Metrics: Various metrics have been intro- its fair share promptly. duced to compare the performance of different mechanisms. e) Aggressiveness: Aggressiveness measures how fast These metrics are listed in Figure3. Some of these metrics the connection probes extra bandwidth by opening up its help to compare the that is served to the window. It is particularly desirable that the connection acquires users and some others help to observe the network resource the extra available resources quickly when available bandwidth utilization. Network resource utilization and flow completion increases suddenly. time are the two metrics that are most helpful for the network f) Convergence speed: Flow start/stop are the two preva- provider and end users respectively. lent events in networks. Therefore other flow rate adaptation a) Efficiency: According to [49] ,Efficiency is the aver- speed is one of the key factors to measure the performance of age flow throughput per step (or per RTT), when the system control protocols. Delayed or slow response would affect user is in equilibrium. Equilibrium is the state that the network flow completion time as well as network resource utilizations. is stable or competitive flows achieve a balanced and stable Convergence measures how fast competing flows converge to resources sharing point. their fair share of bandwidth. In other words, convergence b) Fairness: Best effort nature of the packet based net- speed is related to the aggressiveness and responsiveness works is one of the main reasons behind unfairness in network indices. More aggressive and responsive protocols usually traffic. Unfairness and bandwidth starvation may happen due converge faster. to having both TCP based and () UDP g) Flow Completion Time(FCT): FCT is a metric that based traffics on the same network resources. UDP based flows would be more desired for the end user rather than network are bandwidth hungry, prefer a stable data rate, and transmit service provider [51]. Network engineers have been working READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 4 on other metrics such as bandwidth improvement and effi- more than 1000X; link bandwidths are from Kbps to Gbps; ciency to improve their while end users real time vs non real time traffic transmission; multipath traf- might not even sense these improvements. fic transmission possibility. Performance-oriented Congestion In this paper we reviewed papers published on various trans- Control (PCC) [47] sends at a rate r for a short period of time, port control protocols designed to improve the performance for and observes the results SACKs indicating delivery, loss, and different network and traffic characteristics (Figure2). latency of each packet. It aggregates these packet-level events In sectionII latency and throughput optimization (L&T) into a utility function that describes an objective like high in wired networks are reviewed. Internet in section II-A, throughput and low loss rate. The result is a single numerical and Named Data Networks in section II-B, high bandwidth performance utility. It runs a micro experiment to control delay product communications in section II-C , TCP friendly the rate, and continuous multiple micro experiments help to in section II-D, Multi path transport control in section II-E achieve empirically consistent high performance. PCC only protocols, are considered as wired network control protocols. needs a sender modification and they are experimented on with In section II-F Data Center networks, traffic characteristics different network characteristics such as in the wild Internet, and (L&T) mechanisms are studied. This section also covers satellite link, unreliable lossy links, unequal RTT competing DC network topologies including switched centric (such as sender, rapidly changing networks. Fattree and Leaf/Spine) and server centric networks (such Sundaresan et al. in [52] developed an Internet path mea- as BCube and Dcell). DC traffic characteristics are also surement technique to distinguish congestion experienced discussed in this section that covers incast problems in when a flow self-induced congestion in the path from when a addition to delay sensitive mice and throughput sensitive flow is affected by an already congested path. This technique elephant flows proportion. Remote Direct Memory Access can be applied to speed tests when the user is affected by (RDMA) is also discussed as the recent advancement on DC congestion either in the last mile or in an interconnect link. networks. This difference is important because in the latter case the user is constrained by their service plan (i.e., what they are paying In section III (L&T) in wireless networks are surveyed. for), and in the former case they are constrained by forces section III-A covers cellulars (3G, 4G, 5G), section III-B outside of their control.These days CUBIC is known as a fixed ad hoc networks, section III-C Mobile Ad hoc Networks default LINUX TCP algorithm. CUBIC modifies the linear (MANET), section III-C1 Vehicular Ad hoc Networks window growth to be a cubic function in order to improve (VANET), section III-C2 Flying Ad hoc Networks (FANET) the scalability of TCP over fast and long distance networks. are covered. Window size in CUBIC slowly increases when it is close to the saturation point [53]. Authors in [29], [54], proposed other Application layer flow control mechanism to optimize control mechanisms for internet services. the (L&T) are presented in sectionIV, including CoAP Nimbus [55] introduces a method to detect elasticity of the section IV-A that is designed for Internet of Things (IoT) cross competing traffic. In this method the sender modulates its and Quic section IV-B that is designed and implemented by rate with sinusoidal pulses to create small traffic fluctuations Google to reduce the web access latency. at the bottleneck at a specific frequency (e.g., 5 Hz). Then Nimbus concurrently estimates the rate of cross traffic based In sectionV Machine Learning based approaches are on its own send and receive rates. Nimbus monitors frequency discussed to optimize (L&T) performance. ML algorithms response (FFT) of the cross traffic to determine if the cross as predictive, descriptive and controllers will be introduced traffics rate oscillates at the same frequency. If cross traffic section V-A. The rest of the section covers different ML is inelastic then the sender can control queueing delays while algorithms applied on queue management V-B, packet loss achieving high throughput. However, in case of elastic traffic, classificationV-C, congestion conrol V-D, resource allocation the sender may lose throughput if it attempts to control packet V-E, admission control V-F, congestion window control V-G. delay. As the final part of this paper, lessons learned and research Low-Latency Low-Loss Scalable-Throughput (L4S) [56] opportunities are presented in sectionVI. has been proposed as a new internet service . Nadas et al. [57] showed that L4S schedulers are not able to handle high levels II.LATENCY AND THROUGHPUT OPTIMIZATION (L&T) IN of Internet heterogeneity. They propose a virtual dual queue WIRED NETWORKS named Core Stateless Active Queue Management (CSAQM) Kunniyur. et, al. in [24] proposed Adaptive Virtual Queue concept to maintain separate queues for L4S and classic traffic. (AVQ) and investigate it’s stability in the presence of feed- Therefore a coupled packet dropping/marking mechanism in back delays, it’s ability to maintain small queue lengths and CSAQM improves the fairness among different flows. robustness in the presence of extremely short flows (the so- called mice flows). Authors in [25], [26] proposed two other approaches in network congestion control. B. Named Data Networks Named Data Networking (NDN) is an emerging internet A. Internet architecture that is evolving from push mode to pull mode Modern networks are massively diverse in terms of condi- (Figure4). NDN emphasizes content by making it directly tions. For example, RTTs of competing flows may vary by addressable and routable instead of IP addresses. Authors in READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 5

[58]–[60] surveyed the NDN networks. Compared with the need to be considered when designing new transport control traditional TCP/IP networking, the transport in NDN has its protocols. Pipeline capacity or packet on the fly are the two specific characteristics such as receiver-driven (pull based), in- terms to define the networks that have their high bandwidth path caching, hop-by-hop, one-Interest-one-data, multi-Source, and delay multiplications. The efficiency problem of these and multi-Path. Hence NDN congestion control mechanisms networks is because traffic on the fly is more than the TCP are also different from classical networks. window size. Therefore traffic senders have to stay idle for some time to receive their acknowledgements. Hence other Email/WWW/Phone ... Browser/Chat research trends started and following methods were published. SMTP/HTTP ... File stream In 2000, Floyd in [39], proposed TCP’s congestion con- TCP UDP ... Security trol mechanism to be used in TCP connections with large congestion windows . Later on Cern in [83], introduced IP Named Data Scalable TCP (STCP) to improve bulk transfer performance CSMA SONET ... Strategy in high speed wide area networks. In 2002, Ketabi et al. PPP ... UDP P2P Bcast [7] introduced eXplicit Control Protocol (XCP) which is a Radio/Fiber/Copper ... Radio/Fiber/Copper ... general form of the Explicit Congestion Notification proposal IP network NDN (ECN). They also introduce the new concept of decoupling utilization from fairness control. In 2004, Xu et al. introduced Fig. 4. Host centric vs Data centric addressing . the Binary Increase Congestion control (BIC) and considered RTT fairness in addition to bandwidth scalability. They utilized ICP [61] is an interest control protocol for content-centric two window size control policies called additive increase networking. ICP realizes a window-based Interest flow con- and binary search increase [84]. In 2008, VCP published trol and achieves high efficiency and fairness under proper [85] to optimize the XCP by utilizing two ECN bits for parameters setting. Considering the NDN as receiver-driven network congestion feedback.Ha et al. [53] modifies the linear transport control, the old implicit congestion signals would window growth function of TCP to be a cubic function. This not be helpful. Ren et al. [62] proposed a NDN congestion modification improves the scalability of TCP over fast and control algorithm based on explicit congestion feedback - long distance networks. As cubic function behaves, CUBIC ECP (Explicit Control Protocol). It monitors the length of the increases the window size aggressively when the window is outgoing interest queue at the intermediate nodes to detect the far from the saturation point, and slowly when it is close to the network congestion status proactively. Then it sends explicit saturation point. These days, CUBIC is still the default Linux feedback to the receiver to adjust the sending rate of Interests transport protocol. Another protocol is published in [43] and to control the returning rate of data correspondingly. Practical a comparative study of high-speed Linux TCP variants over congestion control (PCON) [63] scheme is also designed to high-BDP networks is presented in [86]. exploit multiple sources and multiple paths capability of the NDNs. PCON detects congestion based on the CoDel [64] D. TCP-Friendly AQM (by measuring packet queuing time). Then it explicitly marks certain packets to signals back towards consumers . Real time applications such as audio/video need minimum Therefore downstream routers can divert traffic to alternative delay in data transmission, otherwise they lose their quality paths and consumers can reduce their Interest sending rates. and the interest of their users consequently. Additionally these Lei et al. [65] explores rate control protocol (RCP), which is a types of traffic can tolerate a little bit of traffic loss. For unique hop-by-hop feature in NDN routing, and the one-to-one example losing one packet out of an image frame of a video relationship between interest requests and data packets. They does not affect the quality of that video very much. Therefore designed a rate-based, explicit and hop-by-hop congestion real time applications tend to not deploy the TCP transport control algorithm named NDN Hop-by-Hop RCP (NHBH- protocol. Instead they used to employ more aggressive data RCP). Content popularity prediction is a CC approach that transmission protocols such as User Datagram Protocol (UDP). is proposed in [66]. Authors in [67], [68] surveyed transport UDP protocol does not provide packet received acknowledge- mechanisms in NDN networks. ment and is considered a connectionless transmission protocol. In some references, NDN networks are also called Growing too many real time applications these days may Information-Centric Networking (ICN) [69] or Content Centric cause less chance of TCP based flows. This problem may Networks (CCN). Authors in [70]–[76] studied multipath cause a network collapse by itself, therefore it has been CC for ICN. Mobile ICN [77] are other research trends to the main reason to develop the TCP-Friendly rate Control enhance network flexibility and mobility management. NDN protocol (TFRC) [30], [31]. Considering the real time traffic also benefit from in-network caching [78]. Authors in [79]– that can be unicast and multicast traffic, TFRC needs to [82] studied transport protocols in these networks. be designed to cover both two types of traffic. TFRC still suffers from packet loss and delay due to long distance heavy traffic and network fluctuations. Authors in [33] introduce a C. High BDP Product Network number of key concerns like enhanced Round Trip Time (RTT) Increasing the link bandwidth (fiber optics) and delay (inter and Retransmission Time Out (RTO) calculations, enhanced continent links) introduces other network characteristics that Average Loss Interval (ALI) methods, and improved Time to READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 6

Live (TTL). These features are applied to TFRC to boost the that even under high feedback latency, TEAR flows exhibit performance of TFRC over wired networks. McQuistin et al. acceptable performance in terms of fairness, TCP-friendliness, [87] also showed how use of ECN affects the reach- ability of and rate fluctuations. UDP servers. Authors in [22] surveyed TCP friendly protocols. A key issue in the design of source-based multicast con- Jin et al. [88] propose Square-Increase/Multiplicative-Decrease gestion control schemes is how to aggregate loss indications (SIMD) that is a window-based congestion control algorithm. from multiple receivers into a single rate control decision SIMD uses history information in its control rules. It increases at the source. Bhattacharyya et al. in [93] proposed a novel in window size in proportion to the square of the time loss indication filtering called the linear proportional response elapsed since the detection of the last loss event and It uses a (LPR) approach. multiplicative decrease mechanism. Authors in [94] proposed another CC scheme as a large- 1) Unicast TCP-Friendly: TCP-friendly rate control scale reliable multicast. They incorporates several novel fea- (TFRC) uses mathematical models to mimic the TCP tures: (1) hierarchical congestion status reports that distribute equivalent. Equation1 is the simplest model proposed for the the load of processing feedback from all receivers across TFRC [30], [31]. the multicast group, (2) the relative time delay (RTD) con- c.s cept which overcomes the difficulty of estimating round- T (t , s, p) = √ (1) trip times in tree-based multicast environments, (3) window- RT T t . p RT T based control that prevents the sender from transmitting faster Where c is a constant (commonly approximated as than packets leave the bottleneck link an the multicast path p 1.5 2/3), s is the segment size, p is the packet loss rate, and through which the sender’s traffic flows, (4) a retransmission tRT T is round trip time. TFRC uses the windowing mechanism window that regulates the flow of repair packets to prevent to control the rate. According to the formula increasing local recovery from causing congestion, and (5) a selective the packet loss rate and also round trip time decreases the acknowledgment scheme that prevents independent (i.e., non- transmission rate. Note that there is no packet retransmission congestion-related) packet loss from reducing the sender’s for the lost packet in TFRC. There are more complex formulas transmission rate. to consider the retransmission timeout value, and number of Scalable and reliable multicast systems require the con- packets acknowledged by each ACK and the maximum size sideration of some problems such as feedback implosion, of the congestion window. retransmission scoping, distributed loss recovery, and CC. 2) Multicast TCP-Friendly: Multicast real time traffic is Therefore authors in [95] proposed active services at strategic another main characteristic of the real time flows. For example locations in the networks. They exploit physical hierarchy many users could watch the same Netflix video at the same for feedback aggregation and effective retransmission scoping time. Therefore congestion control for the multicast real time with minimal support. traffic is also required to be considered. Figure5. shows pgmcc is also proposed as a single rate multicast CC scheme friendly classification of single and multi rate. [96]. pgmcc achieves scalability, stability and fast response to Rate Adaptation Protocol (RAP) is an end-to-end TCP- stochastic network behaviour. The innovation of pgmcc is a friendly transport protocol. It is designed for video-on-demand fast and low-overhead procedure to select the acker. servers to provide real time applications for the large number Thus far we studied single rate TCP friendly methods. of users [89]. RAP is a rate-based congestion control mecha- Following multi rate TCP-friendly will be discussed in more nism that is suited for unicast playback of real time streams. detail. In [97] the Receiver-Driven Layered CC (RLC) is RAP adopts an AIMD algorithm for rate adaptation to be fair proposed which is receiver driven and requires no per-receiver to use with TCP flows. SCP [90] is also proposed for real time status at the sender. This helps to overcome scalability prob- streaming of continuous multimedia across the internet. SCP lems. Yano et al. in [98], proposed another approach in which fairly shares the network resources with other TCP and SCP each receiver maintains its own congestion window and indi- flows. Additionally SCP stream flows smoothly and ensures vidually runs window control modeled after TCP. Other multi low and predictable delay. rate TCP friendly algorithms have presented in [99], as Fair Like the other transport control protocols, TCP-friendly Layered Increase/Decrease with Dynamic Layering (FLID- algorithms also need to address three issues: the decision func- DL), [100] as Layered Transmission Scheme LTS, [101] as tion, the increase/decrease algorithm, and decision frequency. Multicast Loss-Delay Based Adaptation Algorithm (MLDA), Authors in [30] surveyed the TCP-Friendly Congestion Con- [102] as video multicast using hierarchical forward error trol mechanisms. correction technique. In [103], other TCP friendly algorithms loss-delay based adaptation algorithm (LDA+) uses the real- are proposed. time transport protocol (RTP) for collecting loss and delay statistics which are then used for adjusting the transmission behavior of the senders [91]. Multimedia multicast scalability E. Multipath issues of TCP led to TCP Emulation at Receivers (TEAR). The idea of multipath transport protocols has evolved since TEAR shifts most of the flow control mechanisms to receivers the beginning of various Internet connections on mobile de- [92]. TEAR results in superior fairness to TCP with signifi- vices such as wifi and 4G adapters together. Later on this idea cantly lower rate fluctuations than TCP. TEARs sensitivity to extends to other networks which have multiple connections feedback intervals is shown to be very low. It is also shown at the same time such as data center networks. Multipath READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 7

TCP Friendly CC through MP-CAPABLE handshake at initialization and MP- JOIN negotiation. Web performance could improve if it runs over MPTCP. Authors in [117] studied losses and insufficient band-width utilization of the web over MPTCP. Single Rate Multi Rate Web applications are another great usage of the multipath TCP. Object multiplexing design in HTTP/2 improves the web performance. To improve the performance even further [118] Rate Window Rate Window proposed the TM 3 multiplexing architecture. Leveraging multiple concurrent multiplexing pipes in a transparent man- ner, TM 3 eliminates various types of head-of-line blocking. RAP RLA,LPR RLC Rainbow Energy-Aware Multi-Path TCP is another key point in mobile LDA+ MRCP FLID devices to consider, therefore [119] proposed eMPTCP which TFRC NCA LTS seeks to reduce power consumption compared to standard TEAR pgmcc TFRP MPTCP. eMPTCP utilizes a combination of power-aware sub- flow management and delayed subflow establishment. Wang et MLDA al. [120] published another effort on energy efficient CC for Fig. 5. TCP Friendly [30]. multipath TCP in heterogeneous networks. Hesmans et al. in [121] proposes a multipath TCP path manager (SMAPP) that delegates the management of paths to transport provides attractive features of increased reliability, the applications. Path quality based multipath AIMD (AIMD- throughput, fault tolerance, and load balancing capabilities. PQ) is proposed in [32]. AIMD-PQ leverages a combination of As a downside multipath stability,convergence, and packet re- packet loss and path quality signals to balance the loads among ordering are the main challenges of multipath transport control. its sub-paths. The internet policy drop can be a simple way for Delay based is applied CC in multipath scenarios [104]. TCP network operators to reduce the traffic they carry. [122] studied fairness is another key feature that needs to be taken into the policy drop effect on single path and multipath TCP. account to design multipath TCP [105], [106]. Authors in While monitoring the loss rate and received throughput, end [107]–[109] surveyed different multipath TCP protocols. users can detect policy drop detection. Drop based MPTCPs As a first attempts Equal-Cost Multi-Path routing (ECMP) suffer from policy drop unless they design to work separate applied in network layer traffic engineering to achieve load and independent CC in each path. In 2013 (combining the balancing [110]. In 2009 Honda et al. published the Equally- functions of HTTP/2, TLS, and TCP directly over UDP) weighted TCP (EWTCP) [111], [112]. EWTCP applies TCP- Quick was designed and developed by Google. Quick reduces NewReno algorithm on each route independently of other the client-server session establishment. [123] proposed the routes. In receiving Ack, It adjusts the window on multiple Multipath QUIC (MPQUIC) to use different paths such as routes as wr = wr + a/wr . On each loss, it adjusts the WiFi and LTE on . Complex interdependencies window on multiple routes as wr = wr/2. between the multi path losses, packet reordering due to het- Decoupled and coupled are two ways to classify multipath erogeneous wireless channel features, errors, and congestion control mechanisms. If multipath is a simple ex- retransmissions, as well as their (joint) influence on MPTCP’s tension of a single path TCP (like the previous ones) is called control mechanism necessitate the comprehensive multipath decoupled multipath CC. However they are unfair to single CC design approach. While relying on a parallel queueing TCP flows. A coupled multipath correlates all the sub-path model, Pockrel et al. [124] designed a MPTCP algorithm to congestion windows and controls the total congestion window exploit the route heterogeneity. size. TableI. shows some of the multipath TCP mechanisms Gigabit 5G networks and their high throughput/delay sen- In 2012, Khalili et al. showed that MPTCP users could be sitive applications such as remote control of unmanned ter- excessively aggressive towards TCP users [113]. They design restrial and aerial vehicles implies the need for reliable and opportunistic linked increases algorithm (OLIA) which is a latency-constrained data flows. Chiariotti et al. [125] proposed window-based congestion-control mechanism. OLIA couples Latency-controlled End-to-End Aggregation Protocol (LEAP). the additive increases and uses unmodified TCP behavior in They forecast the stochastic of the latency-constrained capacity the case of a loss. Zhang et al. also proposed the weighted of each path to maximizing the throughput. Cross-path payload ECMP, and they develop a model to obtain the split ratios encoding is also applied to control the minimum probability such that the overall network end-to-end delay is optimized of timely data delivery within a predefined deadline. [114]. They also applied a flow-based routing model rather As discussed before, stability of the multipath CC (load than destination-based forwarding to IP networks. Le et al. balancing) is a real concern to balance the traffic fluctuation published the idea of multipath binomial CC [115]. They between multi paths. Therefore different types of schedulers extend the model of binomial algorithms for single-path to are proposed to overcome this problem. Network congestion support the concurrent transmission of packets across multiple agnostic/aware are the two groups of active traffic scheduling paths. MultiPath TCP (MPTCP) [116] adds an extra MPTCP research. Besides, fine/coarse level scheduling is another type layer which provides CC on the top of multiple TCP subflows. of scheduling research classifications. In sectionsection II-E1 MPTCP starts with one path and increases the number of paths scheduling based multipath CC will be discussed more. READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 8

Algorithm Coupling of TCP Congestion subflow Friendly Indication aware scheduling mechanism in [119] has also been designed windows condition Signals TCP- new Reno [126] No No Loss Based to schedule the subflows. Coflow is another technique that EWTCP [111] Yes Yes Loss Based is proposed as mixing more short flows. Some applications mVegas [127] Yes Yes Delay Based mReno [127] Yes Yes Loss Based deploy collections of parallel short flows (to mix as coflow) MSTCP [128] No No Loss Based to convey job-specific communication . Optimizing a coflows semi coupled [129] Yes Yes Loss Based OLIA [130] Yes Yes Loss Based completion time (CCT) decreases the completion time of cor- Coupled [131], [132] Yes Yes Loss Based ecMTCP [133] Yes Yes Loss Based responding job [143], [144]. Authors in [145]–[150] proposed Tradeoff [134] Yes Yes Loss Based other granularity scheduling. CMP-AIMD [135] Yes Yes Loss Based Weighted Vegas [136] Yes Yes Delay Based d) Other Scheduling: Reactive/Proactive and priority TABLE I based scheduling are other classes of research. Oh et al. MULTIPATH TCP METHODS [109]. [151] proposed a scheduling algorithm that performs packet scheduling according to the receiver buffer and network delay. This method estimates out-of-order packets and assigns data 1) Scheduling Based CC: Network traffic congestion could packets to sub-flows based on the estimation. Hong et al. be also controlled through multipath scheduling. Therefore [152] proposed Preemptive Distributed Quick (PDQ) flow different types of scheduling are proposed to alleviate the scheduling that is a protocol designed to complete flows network load balance problem [137]. Network congestion quickly and meet flow deadlines. PDQ is implemented in a agnostic or aware are the two classes of schedulers that have distributed way to improve the scalability of the protocol. been researched. To enable testing of different schedulers for Zhang et al. [153] proposed a Priority-based flow scheduling Multipath TCP Paasch et al. [138] designed and implemented for online social network datacenters(PFO). Their method a generic modular scheduler framework. allocates rates for different flows based on flow size and a) Congestion Agnostic/Aware Flow Scheduling: Equal deadline information. it decreases the average completion time Cost Multi Path (ECMP) as one of the congestion agnostic for bursty flows and ensures a high throughput. traffic scheduling, deploys the packet header fields hashing Network Coding (NC) is also a subset of network infor- to find the output path. Therefore, collision may happen mation theory that has led to advancements in the network because of the nature of the hashing functions. Depending on throughput optimization. NC involves performing operations traffic flow size / delay sensitivity distribution, hash collision other than mere forwarding and replication at the network could be problematic which will be more discussed in section nodes. Leveraging a given while encoding and merging the section II-F. relevant messages at the relay node is one of the operations that b) Homogeneous/Heterogeneous network flow schedul- NC is used to increase network efficiency. After considering ing: Data center networks are more homogeneous while the the merging mechanisms, multipath traffic engineering and combination of Wifi and cellular networks are heterogeneous traffic multicast (or broadcast ) are the two most applicable multipaths networks. Therefore two different types of sched- cases for NCs ulers could achieve higher load balancing/throughput. Choi et Linear NC is the most cited NC approache [154]. Linear al. [139] derived the theoretical limit of the achievable aggre- NC uses a block of data as a vector and a node applies a gate throughput in heterogeneous wireless multipath environ- linear transformation to that vector before passing it on. ments. They proposed an optimal load balancing (OLB) sched- As a tentative future trend, Software Defined Networks uler that approximately achieves the theoretical throughput (SDNs) [155]–[158] are another new research trend to make limit. Lim et al. [140] propose and implement an MPTCP path the networks more programmable. Control and forward- scheduler called ECF (Earliest Completion First), that utilizes ing planes are separated in SDNs to improve the manage- all relevant information about a path, not just RTT. It is shown ment. Sonkoly et al. [159] exploit large-scale SDN based that ECF outperforms the default MPTCP in some scenarios in testbeds that support multipath transport control protocols. which heterogeneity paths are used. Dong et al. [141] showed Programming Protocol-independent Packet Processors (P4) that a default MPTCP is generally beneficial for throughput- programmable data plane is proposed to improve the SDN sensitive large flows with large numbers of subflows, while it networks [160]. may be harmful for latency-sensitive small flows running over heterogeneous paths. They propose to dynamically adjust the subflows according to application workloads ( DMPTCP). F. Latency and Throughput Optimization (L&T) in Data Cen- c) Fine/Coarse grain scheduling: Fine coarse grain ter (DC) Networks scheduling has different advantages and disadvantages. Packet As it is discussed before, different network and traffic , subflow (fixed/variable size), and flow scheduling are dif- characteristics implies customized transport protocol design ferent types of schedulers. Packet and subflow scheduling consideration. A Data Center (DC) is a computing environ- achieve a more balanced load, but they may suffer from ment with large amounts of inter-connected resources such as packet reordering. Kandula et al. [142] show that a single computational and storage resources. A typical DC may have flow can be systematically split across multiple paths without hundreds of thousands of servers. Data center resources inter- causing packet reordering. They proposed scheduling called connect using various data communication network topologies. FLARE. It attains accuracy and responsiveness comparable DC network topologies (section ?? II-F1a) are designed to be to without reordering packets. A power resilient [161]–[163], massively scalable [164] and multi path READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 9

[165], [166]. A typical datacenter is made up of thousands Switch of servers connected with a large network located close to each other in a large hall. Millions of customers’ virtual machines should be served in DC networks [167]. Mysore et al. [168] proposed Portland as a scalable fault-tolerant Switch Switch layer 2 DC network fabric. PortLand employs a logically centralized fabric manager that maintains a soft state about network configuration information. They deploy positional Switch Switch Switch Switch pseudo MAC addresses for efficient forwarding, routing, and VM migration. Optical interconnects have also gained atten- tion recently as a promising solution offering high throughput, low latency and reduced energy consumption compared to electronic packet networks based on commodity switches. Rack of Servers Rack of Servers Rack of Servers Rack of Servers Kachris et al. [169] surveyed optical interconnects for DC. Fig. 6. Fat Tree topology, higher bandwidth links to the core switch Further, traffic flow monitoring in these scalable networks is a challenge to overcome [170]. Further, a DC traffic pattern needs to meet specified stan- Switch Switch dards (section ?? II-F1d). Traffic that is running in DC networks is a mix of user-generated interactive traffic, traffic with deadlines [171], [172], and long-running traffic. The most Switch Switch Switch Switch common DC traffic challenges include but are not limited to unpredictable traffic matrix [173], mix of flow types and sizes, and delay sensitivity. Traffic burstiness, packet reordering, performance isolation, incast problems, and outcast problems are some of the most common challenges in designing DC net- works and transport protocols. Low latency service is the main Rack of servers Rack of servers Rack of servers Rack of servers requirement of the DC characteristics. To reduce the service delay [174] surveyed the attempts into four groups of works Fig. 7. Leaf Spine including reducing queue length, accelerating retransmissions, prioritizing mice flows, and exploiting multi-path [175]. DC network traffic control can be also managed in on the network architecture design, congestion notification distributed or centralized fashion. However Distributed algorithms, TCP Incast, and power consumption. methods are more scalable and therefore more interested in b) Switch Centric: These types of networks are multi- practice. Further different types of networks and transport rooted tree topologies, interconnecting the edge, aggregate, protocols are required in different aspects of the DC networks. and core switches. Fat-Tree (Figure6) is one of the most Inter-DC [176] and intra-DC are the two main aspects of DC popular switch centric networks [189]. Leaf-Spine (Figure7) networks that have their specific characteristics and transport is another very common topology [190], [191]. requirements. Jain et al. in [177] utilized SDN networks to c) Server Centric: In Server centric networks, servers design, implement, and evaluate the B4 as a private WAN with multiple network ports act as not only end hosts, but connecting Google’s data centers across the planet. Authors also relay nodes for other servers. These networks are more in [178]–[184], surveyed DC network topologies, traffic scalable and cheaper than switch centric. However, in these characteristics and transport protocols. networks, servers have to spend some portion of their pro- cessing power on rerouting the incoming traffics. 1) Related works: BCube is one of the server centric network topologies a) Network Topologies: DC network characteristics are that is specifically designed for shipping-container based, different from other networks. DC servers are typically located modular data centers [192] . Dcell is another server centric in rows of racks of servers in a big hall near to each other. network that scales doubly exponentially as the node degree There are high speed links and very short distance between increases [193]. Jellyfish is more cost-efficient than a fat-tree, the servers. Therefore data is transferred from one server to supporting as many as 25% more servers [194]. Jellyfish also another in only a few microseconds [185]. Any delay such as allows great flexibility in building networks with different queuing in this short distance could be a significant service degrees of oversubscription. BCube is another server centric effect. Besides high speed optical links and slow increase of data center topology [195] buffer size are the reason to consider shallow buffer switches in DC network analysis [186]. Moreover scalability is a key d) DC Traffic Patterns and problems: Traffic patterns in requirement of the data center networks [187]. Researchers are DC networks consist of mice and elephant flows. Mice and ele- studying two types of network topologies as switch centric and phant flow proportion varies based on the type of applications server centric types of networks. Zhang et al. [188] compre- that the DC is serving [183]. Besides mice flows are typically hensive surveyed research activities in DCNs. They emphasis delay sensitive while elephant flows are throughput sensitive READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 10

implementation. Random TCP timeout is also one of the methods to reduce the buffer pressure and incast problems consequently. Fair Quantized Congestion Notification (FQCN) [216] is proposed to improve fairness of multiple flows sharing one bottleneck link. Incast-Avoidance TCP (IA-TCP) [217] is also proposed to avoid the TCP incast congestion problem. IA- TCP employs the rate-based algorithm at the aggregator node, which controls both the window size of workers and ACK delay. Deadline-Aware Datacenter TCP (D2TCP) [218], as a Fig. 8. Incast problem in Data Center networks. distributed and reactive approach, employs another congestion avoidance algorithm. D2TCP utilizes the ECN feedback and deadlines to modulate the congestion window via a gamma- traffic. Alizadeh et al. [196] proposed an idea to trade a little correction function. It is also shown that [219] a proper bandwidth for ultra-low latency in the DC. East-west vs south- tuning of ECN at the intermediate switches can alleviate Incast north traffic is another classification in DC network traffic. To problems. Authors in [220]–[225] proposed other approaches serve delay sensitivity, Preemptive Distributed Quick (PDQ) to ameliorate the incast problem. [152] is one of the techniques that schedule the flows to Vasudevan et al. [204] proposed a safe and effective fine- meet the flow deadlines PDQ. Chen et al. [197] proposed a grained TCP retransmissions for DC networks. RCC [226] is a scheduling algorithm that deadline flows minimally impacting receiver side Incast solution that makes effective use of a cen- the FCT of non-deadline flows. It is more challenging to have tralized scheduler and Explicit Congestion Notification (ECN) reactive CC mechanisms meet the flow deadline because of at the receiver. Wu et al. [227] designed an Incast congestion stringent latency requirements to cloud data center networks. Control for the TCP (ICTCP) scheme at the receiver side to Therefore proactive methods are also increasing exponentially adjust TCP receive window proactively. Wang et al. [228] also [198]. Authors in [199]–[201] studied traffic characteristics of proposed proactive Incast congestion control in a DC network the different DC networks. Besides, one to many, many to serving web applications. Packet pacing is also proposed as one are other types of traffic characteristics that are mostly another Incast solution. Rezaei et al. [229] proposed ICON as common in DC networks. an Incast solution using fine grained control over sending rate e) Performance Isolation: DCs are the main infrastruc- by pacing traffic in data center Networks. ture to provide cloud services. Sharing network resources Incast scalability is another issue to overcome recently. among cloud tenants is the technique to increase the resource NDP re-architects the datacenter networks and stacks for low utilization, customers, and revenue consequently. Performance latency and high performance. This method uses back pressure isolation prevents selfish tenants from controlling and not along with trimming the packet and forwarding the header overusing the resources [199]. EyeQ [202] provides tenants fields to overcome reordering problems in the receiver [230]. with bandwidth guarantees to isolate the network performance NDP can deal with massive incast events and will prioritize at the edge. traffic from different senders on RTT timescales. In NDP f) Incast problem: In DC networks Incast is the con- Incast performance is compared with other methods when sequence of the various synchronized many-to-one commu- the number of senders increases up to 432-nodes in FatTree nication patterns created by partition/aggregate applications. topology. In spite of all great advantages of NDP, it is not Some of these applications are web search, MapReduce, social backward compatible with commodity switches. Therefore it network content composition, and advertisement selection. is an expensive and time consuming solution to develop. Incast causes the queue buildup and buffer pressure in switches g) Outcast problem: Prakash et al. [231] presents that [203]–[205]. According to the reports from large data cen- outcast problems occur when two conditions are met. First ter operators such as Facebook [200], Google [206], and switch uses taildrop queue discipline, and second a large set Microsoft [207], incast problems mostly occur close to the of flows and a small set of flows arriving at two different receiver (Top of Rack switches). Figure8. shows the Incast input ports compete for a bottleneck output port at a switch. it problem. happens in DCs because of their many to one traffic pattern. Researchers have published various attempts to overcome h) Related studies: Network programmable data planes the incast problem. Alipio et al. [208] reviewed the incast prob- increase flexibility and efficiency of the network. In-Band lem solutions that are provided. They classified the solutions Network Telemetry is a recent advanced feature of the pro- as TCP based and non-TCP based techniques. They classified grammable networks [232]. Probabilistic In-band Network non-TCP approaches further as link [209]–[212], application Telemetry (PINT) [233] is an in-band network telemetry [213] and cross layer [214] techniques. Additionally the TCP with less overhead cost. HPCC [234] leverages in-network based approaches are also classified into active queue manage- telemetry (INT) to obtain precise link load information and ment [152], [172], delay based, and multipath TCP (section controls traffic precisely. ?? II-F2c) group of works. Data Plane Development Kit (DPDK) [235] is an open Alizadeh et al. [209], [215] described and analysed the source software project that is managed by the Linux Foun- Quantized Congestion Notification (QCN) as an attempt to dation. DPDK provides a set of data plane libraries and develop an ethernet congestion control algorithm for hardware network interface controller polling-mode drivers. It offloads READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 11

TCP packet processing from the kernel to entities to stop/resume sending traffic on that link. A drawback processes running in user space. This improves the computing of PFC is that it is congestion spreading. efficiency and higher packet throughput than is possible using As it is discussed in DC network topologies and their traffic the interrupt-driven processing provided in the kernel. This characteristics, minimizing the switch buffers as a shallow technology is mostly applied in software switches. To reduce buffer boosts the performance of DC networks. Therefore the delay of short flow processing, mTCP [236], a high- pFabric is proposed as a near-optimal datacenter transport performance TCP stack is designed for multicore systems [238], [251]. pFabric provides near theoretically optimal flow implemented in user- space. mTCP is designed to 1- translate completion times even at the 99th percentile for short flows, multiple expensive system calls into a single shared memory while still minimizing average flow completion time for long reference, 2- allow efficient flow- level event aggregation, and flows. As pFabric requires specialized hardware, thus pHost 3- perform batched packet I/O for high I/O efficiency. [252] proposed to decouple the network fabric from scheduling 2) Data Center Approaches: DC traffics are very high decisions. pHost introduces a new distributed protocol that speed and are volatile; therefore centralized schemes are not allows end-hosts to directly make scheduling decisions. easy to scale and typically suffer from delays and distributed While leveraging underlying complementary strategies of mechanisms seem more desirable . pFabric and PDQ [152], PASE is proposed as a transport a) Centralized: Centralize CC is one group of studies framework that synthesizes the PDQ and pFabric. PASE adjust to control the network traffics and congestion. A central the endpoints in network prioritization (used in pFabric), and scheduler in Hedera [175] aims to assign flows to non- arbitration (used in PDQ). conflicting paths. Flowtune [150] is another centralized c) Multipath: approach that utilizes an allocator to control the flowlets in Considering the most popular DC network DC Networks. topologies as switch centric networks, multipath transport protocol is a common approach. Thus far different granularity scheduling have been applied in multipath DC research. As b) Distributed: Distributed control is the most popular different granularity multipath approaches packet based load control system in any scalable systems. Thus far many dis- balancing [253], flow level adaptive routing [254], [255], tributed mechanisms have been proposed in DC networks. fixed size flowlet called flow cell [256],and variable size Some of these mechanisms are relatively cheap to develop flowlet granularity [257] have been published. Random Packet through modifying the end host [46], [237]. However some Spraying (RPS) is another approach that is proposed in [258]. others need hardware change on middle switches, which They argue that symmetrical DC network topologies provide makes them more expensive [230], [238]. Hardware processing the multiple equal-cost paths between two hosts. These paths can also reduce the processing time in the end host NIC are composed of links that exhibit similar queuing properties. [239]. Data Center TCP (DCTCP) [5], [46], Leveraging ECN, Therefore, TCP is able to tolerate the induced packet reorder- DCTCP is able to gauge the extent of congestion and therefore ing and maintain a single estimate of RTT. DCTCP achieves adaptive rate reduction rather than halving Cao et al. [259] proposed Explicit Multipath (XMP) Con- the transmission rate in response to network congestion. gestion Control through Buffer Occupancy Suppression (BOS) As it is discussed in transport protocols of the previous algorithm, and Traffic Shifting (TraSH). BOS helps as control- networks, DCs can also rely on delay or ECN to control lable link buffer occupancy to meet the low latency require- their network congestion [240]. However the problem with ment of small flows. TRaSh shifts the multipath traffic, thus delay based is that a very fine grain clock is required in the improving the throughput of large flows. end host to keep track of the packet delays. High speed and TinyFlow [260] breaking elephants flows down into mice low distance traffic paths take about microsecond delay to and applies ECMP. CONGA [261] is also a distributed transfer the traffics. Therefore it is more challenging to achieve congestion-aware load balancing mechanism. CONGA splits high performance in DC networks with delay based transport the TCP flows into flowlets, estimates real-time congestion protocols. Authors in [8], [241]–[245] proposed different delay on fabric paths, and allocates flowlets to paths based on based flow control in DC networks. feedback from remote switches. DC networks serving cloud ECN based transport protocols are another group of DC tenants could apply transport protocols on server hypervisors. transport protocols. ECN is utilized in different ways such Authors in [256], [262] present virtualized congestion control as dynamic ECN marking threshold [246], enabling ECN in and Presto as edge-based load balancing. Chen et al. [263] multi-service multi-queue [247], adaptive marking threshold present that loss is not uncommon in DC networks. They method for delay-sensitive [248] traffics, Time-based Conges- propose a loss recovery approach FUSO that exploits multi- tion Notification (TCN) [249] path diversity in DCN for transport loss recovery. EMAN [264] Back pressure is another technique that is also tried in DC distributes outbound traffic from a sending end host depending networks. Priority-based Flow Control (PFC) uses a back pres- on the bandwidth of each path. EMAN uses feedback from sure mechanism to provide loss less transmission. However the receiver to update each paths available bandwidth. Then PFC is a coarse grain mechanism because it works based on it reacts to network asymmetries caused by failure and flow ports and is not flow based. Therefore it consequently causes competition. congestion spreading and poor performance [250]. In PFC the PASE [265] is also designed as a transport framework that congested switch sends PAUSE/RESUME messages to uplink synthesizes transport strategies such as self-adjusting end- READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 12 points (used in TCP style protocols), in network prioritization NICs have fully programmable and energy-efficient multi- (used in pFabric), and arbitration (used in PDQ). PASE is core processors [279], [280] to increase their flexibility and backward compatible, and it does not require any changes to efficiency. the network fabric. PIAS [266] is a DCN flow scheduling b) RDMA, Kernel Bypass: Over the recent years mechanism that tries to minimize FCT by mimicking Shortest 40/100/400 Gbps links have been growing rapidly [281], Job First (SJF). PIAS is one of the flow size-agnostic schedul- [282]. Besides the classic disk I/O bottleneck is migrating ing for commodity data centers. PIAS emulate SJF without to solid-state disk or in-memory computing [283]. Therefore knowing flow sizes in advance. PIAS implements a Multiple CPU consumption and packet processing latency of traditional Level Feedback Queue (MLFQ) based on multiple priority TCP/IP stack become significant. As it was discussed before, queues that is available in existing commodity switches. PIAS delay sensitive applications can’t tolerate this much delay uses the MLFQ to gradually downgrade a flow from higher- on DC massive networks. Remote Direct Memory Access priority queues to lower-priority queues. Downgrading method (RDMA) is developed as a direct memory access from the is based on the number of bytes it has sent. Therefore short memory of one computer into that of another without involving flows are likely to be finished in the first few high-priority either one’s operating system (Figure9). This enhances high- queues and thus be prioritized over long flows in general. throughput and low-latency networking, which is especially d) TCP Adaptive Initial Rate : TCP initial adaptive rate beneficial in enormous parallel computer clusters. RDMA may improves the performance of applications in which there are a soon replace TCP in data centers [284]–[286]. Initial RDMA myriad of short flows. Short flows may finish before reaching could be applied on lossless links like infiniband networks. the maximum rate and exploring the available resources. Pad- InfiniBand (IB) is a communications standard used in high- manabhan et al. proposed [267] that the sender caches network performance computing that features very high throughput and parameters to avoid paying the slow start penalty for each web very low latency. InfiniBand has been applied in either a direct page download. Paced Start [268] uses the difference between or switched interconnect between servers and storage systems, data packet spacing and the acknowledgement spacing to as well as an interconnect between storage systems. InfiniBand improve TCP startup. Hoe et al. [269] shows another initial provides RDMA capabilities for low CPU overhead. As an rate improvement. interconnect IB competes with Ethernet. Gusat et al. [287] In [270], [271] authors study the initial window configura- present the infiniband CC mechanism that consists of con- tions of major Content Delivery Networks(CDN). They also gestion detection/marking, congestion signaling, injection rate found a high amount of initial window customization that reduction, and injection rate recovery. Hutchison et al. [288], is beyond current Internet standards. Studies in [272] show [289] presents RDMA performance on InfiniBand clusters and that increasing the window size from four to ten segments WAN. Jiang et al. [290] surveyed the link layer congestion improves the HTTP response up to ten percent. Radhakrishnan management of lossless switching fabric. et al. [273] published the TCP fast open mechanism that RDMA is applied to improve the performance of various data exchange during TCPs initial handshake. They applied distributed applications. Ouyang et al. [291] proposed the a token that verifies IP ownership to address the security Pipelined Migration with RDMA(PPMR) to overcome issue. Kodama et al. [274] proposed the Initial Window inefficient I/O overhead. They achieve a 10.7X speedup to adaptation through Rate-Based Pacing (RBP) start method. complete a process migration over the conventional approach. RBP algorithm is applied here for only one RTT after the Ren et al. [292] designed a middleware to transfer data over connection establishment. the RDMA. Their design includes resource abstraction, task Considering the sequence of start up rate adaptation, rein- synchronization, and scheduling. Their results outperforms the forcement learning is another technique to apply in startup classical approach while maintaining very low CPU consump- rate adaptation. In [275] group-based reinforcement learning tion. Kalia et al. [286] designed and implemented the HERD (RL) is developed to enable a web server, through trial-and- which is a key-value system over the RDMA networks. Their error, and to adaptively set a proper IW for a web flow. Initial design uses a single round trip for all requests and supports Congestion Window adaptation is also tried for 5G Mobile up to 26 million key-value operations per second with 5µs Edge Computing through Deep Reinforcement Learning [276]. average latency. Binnig et al. [293] design a distributed in- Despite the previous studies to find the maximum possible memory Database Management Systems (DBMS) over the startup rate, there are studies tried to reduce the startup rate. RDMA networks. Paxos helps State Machine Replication Gentle slow start [277] is a method that tries to alleviate the (SMR) to tolerate various types of failures. APUS [294] is an incast problem in DC networks. RDMA-based Paxos protocol that aims to be fast and scalable. 3) Future Trends: Chiller: Contention-centric Transaction Execution and Data a) Advanced Network Interface Cards (NICs): Offload- Partitioning for Fast Networks [295]. ing the packet processing tasks from general-purpose CPUs is Latency reduction has also been tried in different aspects one of the main purposes to develop the advanced Network of the networks. Sriraman et al. [296] observe extreme tails Interface Cards. These cards are designed to support both latency that happens in UDP/TCP-IP, but not in RDMA packet network virtualization and application-specific tasks. Grant et exchanges. A zero copy transport [297] is another approach al. [278] introduced FairNIC, a system to provide performance that is designed for distributing dataflow frameworks. Zero isolation between tenants utilizing the full capabilities of a copy unifies application and networking buffer management commodity system-on-a-chip (SoC) SmartNIC. Modern smart and completely eliminates unnecessary memory copies. READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 13

RDMA congestion control is also a growing research chal- lenge over the recent years. RDMA provides hop flow control and rate based end to end congestion control [298]. Guo et al. [299] describes the challenges of applying RDMA over commodity Ethernet (RoCEv2). They designed a priority flow- control (PFC) mechanism to ensure large-scale deployment. They addressed the safety challenges brought by PFC-induced deadlock, RDMA transport livelock, and the NIC PFC pause frame storm problem. Tagger [300] is also proposed to prevent the deadlock problem in RDMA. Tagger uses a tagging scheme that can be developed to ensure that no deadlock will occur under any failure conditions. FaSST is also a RDMA-based system [301] that provides distributed in-memory transactions with serializability and durability. FaSST has scalable and simple distributed transac- tions with two-sided (RDMA) datagram RPCs. RoCEv2 relies on Priority-based Flow Control (PFC) to enable a drop-free network. However, head of Line blocking and unfairness are the challenges of PFC. DCQCN is introduced [250] as an end-to-end congestion control scheme for RoCEv2. Escudero et al. [302] proposed Flow2SL-ITh is a congestion control mechanism for infiniband networks. Flow2SL-ITh is a tech- Fig. 9. RDMA [305] nique that combines a static queuing scheme (SQS) with the closed-loop congestion control mechanism included in IBA- based hardware (a.k.a. injection throttling, ITh). Flow2SL-ITh in-order memory update whenever needed. separates traffic flows in different virtual lanes (VLs) in order Mushtaq et al. [308] studied the bulk of research on to reduce HoL blocking, while the injection rate of congested DC congestion control and found that the switch scheduling flows is throttled. ACCurate [303] is a congestion control algorithm as the most essential feature. They present that protocol for RDMA Transfers that assigns max-min fair rates if the rate-setting algorithm at the host is reasonable then to flows. ACCurate is a scheme suitable for efficient hardware congestion control mechanisms that use Shortest-Remaining- implementation Processing-Time (SRPT) achieve superior performance. They RoCE provides low latency and low CPU usage but it suffers reach the point that SRPTs performance is more robust to from network stability. The reason is that RoCE utilizes the host behaviors. They observe that approximate and deployable PFC which is a backpressure mechanism to provide lossless SRPT (ADS) designs exist. ADS leverage the small number of networking to RDMA. priority queues supported in almost all commodity switches. RoGUE [304] is a congestion control and recovery mecha- Their result is close to SRPT and better than FIFO. nism for RDMA over Ethernet that does not rely on PFC. This allows the use of RDMA for high performance, supporting III.LATENCY AND THROUGHPUT OPTIMIZATION (L&T) both the Reliable Connection (RC), and Unreliable Connection IN WIRELESS NETWORKS (UC) RDMA transports. Data loss in wired networks happens mostly because of the Incast resolution and multipath transport are two interesting network congestions packet drop. Therefore data loss is the recent RDMA based DC network research. Dart [306] is main signal of congestion and controls the transmission rate proposed as a divide-and-specialize approach, which separates in wired networks. However, although congestion is one of the receiver congestion and remaining in-network conges- the reasons to lose the packet in wireless networks, interfer- tion. For receiver congestion Dart uses direct apportioning ence and signal level may also cause data loss. Hence other of sending rates (DASR) and directs each n senders (that techniques are required to adapt wireless networks. Moreover, it is receiving from) to cut their rate by a factor of n. For due to user mobility and channel fadings, network bandwidth the spatially-localized case Dart provides fast response by and round trip time fluctuations are more common in wireless adding novel switch hardware for in-order flow deflection networks. Then, considering special characteristics of them, (IOFD) because RDMA disallows packet reordering. Multi- they need customized CC techniques to handle their special path RDMA (MPRDMA) efficiently utilizes the rich network environments. With regards to network classifications, some paths in data centers. MP-RDMA proposed in [307] employs of the wireless networks have fixed infrastructure like cellular three techniques to address the challenge of limited RDMA and wifi, while there are also wireless ad hoc networks where NICs on-chip memory size: 1) a multi-path ACK-clocking there are no fixed infra structures. Ad hoc networks are also mechanism to distribute traffic in a congestion-aware manner classified into class of mobile ad-hoc network and fixed ad- without incurring per-path states, 2) an out-of order aware hoc networks (Figure 10). In 2001 TCP Westwood [309] was path selection mechanism to control the level of out-of-order published as a sender-side-only modification to TCP New delivered packets, and 3) a synchronise mechanism to ensure Reno. READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 14

Wireless networks, III over cellular networks. Verus [312] is an end-to- end CC protocol that uses delay measurements to adapt the window size. In continuation with older techniques, some packet marking Cellular, Fixed adhoc Mobile Adhoc and rate based TCP algorithms have been proposed to alleviate 3G/4G/5G, III-A networks, III-B Network, III-C the buffer bloating problem in cellular networks. Accelerate- Brake Control (ABC) [318] is a mechanism developed to mark each packet with an accelerate or brake notification as signaling in the base station. This causes the sender to either VANET, III-C1 FANET, III-C2 slightly increase or slightly reduce its congestion window. PropRate [319] is a rate-based TCP algorithm that directly Fig. 10. Wireless Section. regulates the packets in a bottleneck buffer. This helps to achieve a trade-off in terms of delay and throughput. As it is discussed before, users’ mobility in cellular net- TCP westwood intended to better handle large bandwidth- works makes highly variable network behaviour. Therefore delay (HBD) product paths, with potential packet loss which is there is a lot of research on prediction, estimation, forecast, more common in wireless than wired networks. HBD network and adaptivity to control the flow in cellular networks [320], was discussed before, but a combination of HBD and wireless [321]. In Sprout [311] the receiver makes a short-term forecast network is a challenge of heterogeneous networks. Wang et of the bottleneck link rate using probabilistic inference. Sprout al. [310] published the TCP-FIT that performs well over is a transport protocol for real-time interactive applications heterogeneous networks that contain both wireless and large over cellular networks. As the primary signal Sprout deploys BDP links. the receivers observed packet arrival times to determine the In this section we survey different wireless networks and quality of the radio link channel at different moments. Then their traffic characteristics, in addition to their challenge in the Sprout receiver sends the forecast to the sender by pig- designing efficient transport protocols. In section section III-A gybacking it onto its own outgoing packets. Huang et al. we review the cellular networks, section section III-B covers [314] developed a lightweight passive bandwidth estimation fixed ad hoc networks such as sensor networks. Section technique for LTE. They show that LTE has lower RTTs section III-C discuss Mobile Adhoc Networks (MANET) such than those of 3G networks. ExLL [322] infers the cellular as Vehicle Ad Hoc (VANET section III-C1)and Flying Ad Hoc bandwidth through the downlink packet reception pattern. Exll (FANET section III-C2) network. is a low-latency CC that can adapt to dynamic cellular channels without overloading the network, which is mostly popular in probing the dynamics of radio channels. Exll also calibrates A. CC in Cellular (3G, 4G, 5G) Networks the minimum RTT from the inference on uplink scheduling Fixed bandwidth physical channel is one of the main char- intervals. acteristics of the wired networks. However radio links capacity In addition to forecasting the network and user behaviour, is very volatile. Radio link speed fluctuates for many reasons cross layer CC is also another approach that researchers have such as weather conditions, user to antenna line of sight (which been trying to explore. Consistent congestion and contention change based on user mobility), and multipath radio fading cooperation control mechanisms improves the global end-to- [311], [312]. Besides in wireless network user handset power end connection and the local wireless link. Therefore authors is a limiting constraint that needs to be considered to design in [323] propose a Cross-layer-based Adaptive CC (CACC) any new functionality. Additionally high-resolution live video for the connection-based and the link-based and Augmented Reality/Virtual Reality are very much growing media access layer. CQIC [324] is another cross layer CC applications in cellular networks which require high bandwidth mechanism that is proposed in 4G cellular networks. CIQC and low delay traffic paths. Furthermore cellular networks keep leverages the information exchanged between large buffers at base stations to smooth out the bursty data 4G base stations and mobile phones to predict the capacity of traffic over the time-varying channels and hence bufferbloat an underlying cellular link, and is more possible to occur. Studies in [313]–[315] confirmed 5G networks provide very high and volatile bandwidth that the bufferbloat problem is becoming a severe challenge to the users. CC researchers are also studying 5G networks in cellular networks. Therefore these networks and their traffic performance and improvement scenarios. Zhang et al. [325] characteristics make them more complex to design an efficient presents a performance evaluation of TCP CC in 5G mmWave CC mechanism. Multi-gigabit-per-second data rates for fifth cellular. Ford et al. [326] surveys some of the challenges generation cellular networks impose even more challenge in and possible solutions for delivering end-to-end reliable ultra- designing efficient transport protocol [316]. low-latency services in mmWave cellular systems in terms of To alleviate this issue, vendors put an upper the MAC layer, CC, and core network architecture. Network bound on the senders congestion window by advertising a Slicing has been applied as an essential feature of future 5G static receive window smaller than the actual receive buffer mobile communication networks. Han et al. [327] proposes size. Jiang et al. [315], [317] propose the Dynamic Receive a novel approach of inter-slice admission and CC. Nasimi et Window Adjustment (DRWA) to improve TCP performance al. [328] proposed a CC mechanism that functions within the READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 15 framework of Multi-Access Edge Computing (MEC). They diagnostics, and maintenance. VANET CC protocol design introduced a dedicated function called CC Engine (CCE). needs to know the network characteristics. VANET CCE captures the Radio Access Network (RAN) condition characteristics are variable in network density in urban then utilizes this knowledge to make real time decisions for and rural, predictable mobility because of the road maps, no selectively offloading traffic. power constraints, rapid changes in network topology, large 1) D2D or M2M : Device to Device (D2D) or Machine to scale network in dense areas,and high computational ability Machine (M2M) (also known as Internet of Things (IoT)) is [355]. VANET mobility is more predictable not only because another growing application of cellular networks [329]–[331]. of the road maps but also because of users’ daily behaviour. M2M communication CC is a key performance challenge to For example every morning x number of users drive to work improve. in specific repeated paths and the same behavior takes place in the evening. Therefore network traffic density and hourly B. CC in Fixed ad hoc networks (Sensor Networks) congestion could be predicted in most cases. Challenges in cellular networks CC would be more com- plicated when there is no infrastructure like base stations.

These days a myriad number of sensor network applications Warning: emergency message! are proposed and developed in environmental/earth sensing and industrial monitoring. Air pollution and water quality monitoring, as well as forest fire and landslide detection are Warning: emergency message! some of the environmental sensing applications of the sensor networks. Machine health monitoring, Water/wastewater, and structural health monitoring are also known as some of the Fig. 11. Accident warning message broadcast back to approaching vehicles in VANET. frequent industrial application of the sensor networks. Sensor network topologies vary based on their applications. Safety message scheduling and distributed CC are the two It may be very random when a UAV randomly distributes types of studies that are growing in VANETs (Figure 11). sensors in an inaccessible location. Their topologies may also DRCV [356] monitors and estimates channel load and controls be neatly designed in advance like industrial applications. the packet rate of outgoing periodic when event-driven safety Traffic volume in this type of network may not be huge and packets are detected, and the rate of periodic packets has their applications are very delay sensitive. The constraints in to be dropped promptly therefore Fast drop mechanism is sensor networks are memory, and computational power. In developed to manage this part. MOTabu [357] is a dynamic addition to specific network and traffic characteristics, there and distributed mechanism. It consists of two components: are performance metrics defined for them specifically. congestion detection and CC. Channel usage level is used to As it is discussed in [332], congestion in sensor networks detect and it is controlled by MOTabu algorithm that is used can be detected through buffer occupancy, wireless channel to tune transmission range and rate for both safety and non- load, and a combination of buffer occupancy. Additionally safety massages by minimizing delay and . Gatekeeper congestion in sensor networks could be notified explicit im- controls the packet rate as a function of the channel load plicitly. A wide variety of the sensor networks CC are surveyed in European standardization. Kuhlmorgen et al. [358] studied in [332]–[336]. the performance of the gatekeeper with packet prioritization and an adaptive linear control algorithm. This is designed C. CC in Mobile Ad hoc Networks (MANET) to make sure that high vehicle density and channel load Vehicular and Flying ad hoc networks are the two recent conditions do not impact the efficiency and safety of the mobile adhoc systems that are growing rapidly. Smart cities, applications. DySch and TaSch [359] are strategies to assign Internet of Things (IoT), and autonomous driving and flying priorities to the safety and service messages. These priorities vehicles are the main reasons for growing MANETs. There are defined based on the content of messages as a static factor, are applications running in these networks that generate delay state of network as a dynamic factor and size of messages. sensitive data traffics. In general CC in MANET can be This technique helps to increase reliability and safety by classified in three classes. 1- packet loss based transport giving higher priority to the safety messages. Kuhlmorgen mechanisms [337]–[344], 2-cross-layer based CC [345]–[349], et al. [360] evaluate the performance of contention-based 3-other CC approaches [350]–[352]. Dimitris Kanellopoulos forwarding (CBF) under congestion-free and saturated channel surveyed these mechanisms in more detail [353]. conditions for several protocol variants. Their results show 1) Vehicular Ad-hoc NETworks(VANET): These days that the standard distributed CC (DCC)-gatekeeper hinders the vehicles are being equipped with embedded sensors with functionality of CBF even for small node densities. They also processing and wireless communication capabilities [354]. proposed an enhanced DCC-gatekeeper-based approach. The VANETs can provide a wide variety of services Reliability of the safety applications is one of the main such as Intelligent Transportation System (ITS) e.g. safety concerns on designing VANET. Network congestion is one of applications. Some applications of VANETs are published the main reasons behind unreliable communication. Therefore such as intersection collision avoidance, information CC for reliable safety communication is a research topic that communication with other vehicles, sign extension, vehicle researchers are trying to improve. Beacon and event-driven READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 16 warning are two important messages that have been utilized IoT application protocols which use the TCP as a transport to improve road safety and traffic efficiency in VANET. layer protocol to offer data transmission. However Constrained Beacons are periodically broadcasted by vehicles to inform Application Protocol CoAP is another IoT application protocol their neighbors of their information. Le et al. [361] considered designed to provide a fast connection between devices. CoAP three beacon CC algorithms that control the beacon load runs over the User Datagram Protocol (UDP) [376]. CoAP below a certain threshold by adjusting the transmit rate and/or is a lightweight RESTful application layer protocol that is transmit power for the beacon messages. Darus et al. [362] developed for the IoT. CoAP must handle congestion control developed a CC algorithm to provide reliable event- driven by itself since CoAP operates on top of UDP. CoAP utilizes safety messages. Bouassida et al. [363] presented the concept the confirmable or non-confirmable messages to communicate. of dynamic priorities-based scheduling, to ensure a reliable Default CoAP applies random initial retransmission time outl and safe communications architecture. Messages priorities are (RTO), doubling the RTO value of the retransmitted packet if dynamically evaluated according to their types, the network the ACK is not received (loss). In response to detecting packet context and the neighborhood. Qureshi et al. [364] surveyed loss, doubling the RTO also called Binary Exponential Backoff the CC of VANET and they proposed a Dynamic CC Scheme (BEB) is applied to overcome the congested communication (DCCS) as a means of reliable and timely data delivery, in CoAP [377], [378]. in safety applications. An adaptive beacon generation rate RTO and backoff estimation are the topics that researchers (ABGR) CC mechanism is also proposed [365] to reduce chan- try to improve. [379] is proposed to find RTO based on the nel congestion and contention. A survey of CC mechanisms on ratio between current sample of the round-trip time (RTT) VANET is published in [366]. Named data networking is a data and the RTO value. Later on a 4-state estimator for variable oriented communication model that is also applied on VANET. backoffs is proposed in CoCoA [380] to a balance between Author’s in [367], [368] surveyed named data networking in maximizing throughput and minimizing packet loss. CoCoA+ VANET. [381] improves the performance of CoCoA mechanism in 2) Flying Ad hoc Network (FANET): Applications of three stages. 1- initial RTT estimator is modified. 2- BEB swarming Unmanned Aerial Vehicle (UAV) are growing in is replaced for retransmissions by a Variable Backoff Factor smart cities. UAVs communication is one of the key factors (VBF). 3- aging approach for large RTO. Bolettieri et al. [382] to improve their flight performance and security. Therefore proposed a RTO estimation modification as precise Congestion Flying Ad Hoc Networks and their transport protocols are Control Algorithm (pCoCoA). Different congestion control a new research area. Authors in [369]–[371] reviewed the mechanisms are surveyed in [383]. FANET communication, architecture and routing protocols. CoRE is an alternative to CoAP congestion control approach that is a topic of interest in the IETF Working Group. Betzler IV. LATENCY AND THROUGHPUT OPTIMIZATION (L&T) et al. [384] evaluate and show how the default and alternative IN APPLICATION LAYER congestion control mechanisms compare to each other. Application layer transport control is another method that is used in some technologies. Constrained Application Protocol (CoAP) used for Internet of Things (IoT) devices. IoT will B. QUIC be more discussed in section IV-A. Quic is also another HTTP/2 is developed by Google to run over TCP to mul- application layer transport protocol developed by Google. Quic tiplexe multiple connection stream. It fixes the head-of-line is covered in section IV-B. (HoL) blocking problem. QUIC establishes a number of mul- tiplexed connections over User Datagram Protocol (UDP) to A. Internet of Things (IoT), CoAP resolve the HoL problem. QUIC is also designed to reduce the The Internet of Things is also a recent technology that connection and transport latency, and bandwidth estimation in is growing very fast. Many devices such as sensors and each direction to avoid congestion [385]–[387]. Additionally actuators communicate together to form an IoT system. [372] QUIC moves the congestion control algorithms into the user extensively discuss the IoT, vision, architectural elements, and space at both endpoints, rather than the kernel space. future directions. IoT Applications, investments, and chal- Research studies are focused on comparing the performance lenges for enterprises are discussed in [373], and Farooq et of QUIC and other alternatives while they are running on dif- al. reviews the IoT in [374]. It is different from the previous ferent networks. Megyesi et al. [388] studied the performance networks because there is less control over the middle way of QUIC, SPDY (precedent of QUIC) and HTTP. They found nodes to control the congestion. Besides, the traffic pattern of that their performance depends on actual network conditions. this system is different from previous networks. IoT devices Carlucci et al. [389] ran the same evaluation. They have found are also power constrained devices, hence CC protocol should that QUIC reduces the overall page retrieval time with respect be designed in a way to consume the minimum possible to HTTP in case of a channel without induced random losses power. Buffer overflow happens frequently in this technology and outperforms SPDY in the case of a lossy channel. Kakhki since IoT devices utilize shallow buffers and they have lossy et al. [390] identified performance issues related to window transmissions mostly because of the wireless network. sizes, reordered packets, and multiplexing large numbers of The Extensible Messaging and Presence Protocol (XMPP), small objects. Further they identify that QUICs performance Message Queuing Telemetry Transport (MQTT), and Ad- diminishes on mobile devices and over cellular networks. vanced Message Queuing Protocol (AMQP) [375], [376] are Biswal et al. [391] found that QUIC performs better under READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 17 poor network conditions such as low bandwidth, high latency, (kNN) and Support Vector Machine (SVM) are the other two and high loss. Manzoor et al. [392] showed that QUIC achieves non-parameteric supervised ML algorithms that are applied on sub-optimal throughput in WiFi networks. They tuned QUIC to various of problems. produce bursty traffic called Bursty QUIC (BQUIC) . BQUIC b) Descriptive: descriptive machine learning algorithms achieves better performance in WiFi. In addition to the delay, are also known as clustering or unsupervised learning. These security of the QUIC is a key factor to consider. Saverimoutou algorithms try to cluster a set of objects in such a way that et al. [393] studied the security aspects of the TLS/TCP objects in the same group are more similar (in some sense) to and QUIC/UDP. They identify some vulnerabilities of two each other than to those in other groups. Density based [397] protocols and evaluate their impacts on HTTP/2-based web and hierarchical clustering [398] are the two lagorithm that services. are used in network traffic clustering. In current congestion control mechanism, data paths are c) Reinforcement Learning, Controller: RL algorithms becoming diverse such as Linux kernel TCP, UDP-based are a subset of ML that interact with environment to train and QUIC, or kernel-bypass transports like mTCP-on-DPDK then deploy as controller. Focus of the RL algorithms is on [236]. Therefore separating the congestion control agent out- finding a balance between exploration (of uncharted territory) side of the datapath is another interesting research topic and exploitation (of current knowledge. RL agents learn to [394], [395] called Congestion Control Plane (CCP). CCP choose actions that maximize the cumulative rewards based on improves both the pace of development and improve the the environment state. RL uses the Markov Decision Process maintenance of congestion control algorithms. Kaufmann et al. (MDP) to represent the environment. Dynamic programming in [396] presents TAS, which is an implementation of moving [399]–[401] is the most common technique used to solve congestion control out of the datapath to a dedicated CPU. MDPs. Q-learning [402] is another approach for a model- free reinforcement learning algorithm that is developed to V. LATENCY AND THROUGHPUT OPTIMIZATION (L&T) solve the MDP problems with stochastic state transitions and THROUGH MACHINE LEARNING/NEURALBASED rewards. Figure 12. represents the RL diagram. Network flow ALGORITHMS rate control can be also seen as a sequence of decisions to Machine Leanrning (ML) algorithms have been growing increase or decrease the transmission rate. This flow rate exponentially over the last decade. They improved the per- decision helps transmitters to adapt the network load and formance of different complex problems of various fields behavior. Environment states and rewarded feedback are the significatly. ML algorithms are evolved in three main groups two main components that RL algorithms need as input to of prediction, description and control problems. work. Then RL agents train to generate actions according to the environment state. A. ML introduction There are three main groups of machine learning algorithms Agent that are growing exponentially. Predictive, descriptive and

Reinforcement Learning controllers. New state st Reward rt Action at a) Predictive: Prediction algorithms try to forcast the fu- ture events based on previuous labeled information as training Environment datasets. These algorithms are also called supervised learning or in some other references, they are called generalization and function estimation. Regression and classifications are the two Fig. 12. Reinforcement learning, Agent and Environment interaction diagram. most common works on prediction problems. ML algorithms could be also classified as parametric and non parametric. In 2015 authors in [403] inspired from psychological and Paramettric algorithms work as function estimation and neuroscientific perspectives of animals integrate the deep optimizing the parameters of assumed functions. Linear and learning [404], [405] and RL to develop the idea of Deep logistic regression work as function estimation and binary Reinforcement Learning (DRL) (Figure 13). A few months classifier respectively. Linear regression is a linear function later, leveraging the DRL, Alphago and other atari games of the input predictors y = β0 + β1x1 + ... + βnxn, where [1], [2], [406] were the computer program to defeat world n is number of predictors. Minimizing the error between champion challenge. This shows that DRL are able to achieve input data and estimator helps to find the function parameters. beyond human capability. This game is known to be googol ex Logistic regression assumes a sigmoid function (y = 1+ex ) times more complex than chess. Humanoid is another substan- as relation between predictors and the output. Different error tial presentation of the DRL capabilities. DRL is also applied (cost) optimization such as gradient descent can be applied to on other games to investigate a variety of decision sequences find the function parameters. and DRL performance [407]. These days Deep Reinforcement Non-parameteric algorithms do not make strong assumption Learning is significantly popular because of its glorious result about the form of mapping functions, therefore they are more on different control and decision making problems. flexible to fit training data. Decision tree and it’s derivatives Integrating deep learning in RL agents, facilitates the in- such as random forest, gboost, and xgboost are a group of creasing size of environment states dimensions. Some of the well-knwon non-parameteric predictors. k- Nearest Neighbors most popular recent continuous states DRL algorithms are READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 18 deep reinforcement learning with double Q-learning [408], could have been expected since utility objective function is Deep Deterministic Policy Gradient (DDPG) [409], Luong tracking the throughput fluctuation in cellular networks. In the et al. surveyed deep reinforcement learning applications in case of data centers, there is no improvement in their results communications and networking [410]. since throughput in data centers are not much fluctuating like Some DRL applications on networks are limited to discrete cellular networks. and finite actions and states. Mao et al. [411] proposed a Performance-oriented Congestion Control (PCC) [47] is network resource management that is developed based on another attempt at designing a utility model. They defined the finite actions DRL algorithms. TCP-Drinc [412] is a deep utility function as U(x) = T.Sigmoidα(L − 0.05) − x.L. reinforcement learning based congestion control that uses where x is the sending rate, L is the observed data loss rate, T 1 a finite set of actions to resize the TCP window in five = x(1 - L) is sender’s throughput, and Sigmoidα(y) = 1+eαy 1 different ways : A = {w = w ± 1; w = w ± w ; no change}. for some α > 0. PCC Vivace [416] is designed within the PCC Experience-driven networking [413] is another DRL based framework to leverage machine learning based optimization. approach for traffic engineering problems. DRL-TE uses a Mobile Oriented Rate Control (MORC) [417] builds based on finite set of throughput and delay as discrete state space as the PCC protocol design framework to achieve high through- well as a finite set of actions. It’s reward is defined as the put and low latency. MORC uses the achieved , packet total utility of all the communication sessions. loss rate, and average latency to build utility functions and then uses an online learning optimization algorithm to select the best rate. Agent Input Layer Hidden Layer Output Layer Verus [312] is another attempt to extract a network delay profil to apply on TCP window size. The key idea of Verus is to continuously learn a delay profile that captures the relationship between end-to-end packet delay and maximum Policy window size over a short monitoring interval, and uses this Π(θ, a) a State t relationship to increment or decrement the window size . based on the observed short-term packet delay variations. At . . . each time instance,Verus either: increments or decrements . . W, using the delay profile as W(t + 1) = f(d(t) + δ(t)) , where W (t + 1) is the next sending window, f is the delay Estimated parameter θ profile function with d(t) being the network delay, and δ(t) is a delay increment or decrement value. Copa [418] is st, rt a method that presents a target rate equals a function of Environment (Network) throughput and delay ( 1 ) under a Markovian packet arrival δ.dq model (steady state). δ is a weighting for delay and throughput. Fig. 13. Deep Reinforcement Learning model. Machine learning algorithms are applied in different data Utility function extraction is also a technique that is tried in networks’ problems. Authors in [419]–[423] surveyed var- different studies. In this method researchers try to find out the ious machine learning approaches to resolve a variety of network utility as a function of feedback signals and trans- the network problems. In terms of delay and throughput mission rate. Utility function later extends to reinforcement improvmenet, Predictive and RL controller ML algorithms learning algorithms to control the network flows. A utility- have been applied on problems such as queue management, based congestion control scheme for Internet-style networks packet loss classification, congestion window update, conges- with delay is presented in [414]. In [415] the state of the tion inference, and admission control, resource allocation. network is defined in three variables as: 1- An exponentially- weighted moving average (EWMA) of the interarrival time between new acknowledgments received (ack ewma), 2- An B. Queue Management exponentially-weighted moving average of the time between Managing the buffer queues in intermediate nodes TCP sender timestamps reflected in those acknowledg- ments (switches/router) have been one of the complicated prob- (send ewma), and 3- The ratio between the most recent RTT lems.Conventional queue management have problem to utilize and the minimum RTT seen during the current connection links efficiently, queue delays and unfairness. Advanced Active (rtt ratio). By learning the dynamics of the network envi- Queue Management (AQM) schemes also suffer from poor ronment the DQL agent aims to maximize the total utility responsiveness, queue length stabiliity problem, and its per- of all the communication sessions, which is defined based formance (utilization and drop) highly depends on parameter on end-to-end throughput and delay. They use two utility tuning. Many different approches have been published either as objective functions as U = log(throughput) − δ.log(delay) predictors or controllers. Gao et al. [424] designed predictive 1 and U = − throughput . Increasing throughput or decreasing AQM as a generalized version of RED with traffic prediction. delay increases the first utility function while only increasing Their approach stabilize the queue length at a desirable level the throughput can increase the second utility function. They and enables the link capacity to be fully utilized, while achieve better results in cellular network situations, which not incurring excessive packet loss. DEEP BLUE [425] is READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 19 proposed as DRL based AQM scheme. Kim et al. [426] the current congestion window size, 3) avgRTT: the average investigate the Q-learning DRL algorithm to manage the IoT RTT during a time step, 4) queue-delay (dq): the queuing network queues. delay during a time step, measured as the difference between the avgRTT in the same time step and the estimated RTprop C. Packet Loss classification (minimum RTT) in the time window of 10 s, 5) loss-count: the number of lost packets during a time step,and 6) rsrp: Packet loss classification is a key feature in wireless network the reference signal receives power, the signal power between because loss due to radio link fading problem could be UE and base station, measured from the LTE physical layer distinguished from congestion based loss. Authors in [427]– information perceived by the UE. Actions and rewards in Hd- [430] proposed different algorithms to classify the packet TCP are defined as TableII and Equation2. Actions are losses. discrete and finite in this study.

D. Congestion Control Actions Change size(Byte) Rapid Increase 520 Network state predictions are widely applied in different Increase 50 networks to proactively control the data flow. Sprout [311] is Rapid Dencrease -520 Decrease -50 a transport protocol for real-time interactive applications over No Change 0 paths that traverse the cellular wireless networks. Sprout uses TABLE II packet arrival times as a congestion signal. Probabilistic infer- ACTIONS OF HD-TCP, [441] ence is also used to forecast the packet deliveries. Sender uses this forecast to pace its transmissions. Random forest [431] is another machine learning technique that is used to forecast the ( log(throughput) − log(dq), if dq ≤  volatile bandwidth in LTE cellular networks. Other ML algo- reward = rithms are also tried in network link congestion prediction. Wu log(throughput) − 4 ∗ log(dq), if dq >  et al. in [432] presented the Support Vector Machine (SVM) (2) [433], Multi-Layer Perceptron (MLP) [434], Onedimensional More recent DRL training algorithms are more efficient, Convolutional Neural Network [435], [436](1DCNN) and K- therefore continuous action and state space are possible to Nearest Neighbor (KNN) [437], to predict the network link process. This continuity improves the fine control problem. congestion for Software-Defined-Network Data Plane. Asynchronous Advantage Actor-Critic (A3C) [440], Trust Iroko [438] is designed as a framework to prototype rein- Region Policy Optimization (TRPO) [442], and proximal forcement learning for data center traffic control. Iroko uses policy optimization (PPO) [443] are recent approaches the DDPG and PPO algorithm to train the DRL agent. Iroko that enable the DRL continuous actions. Multiple agent uses the switch buffer occupancy, interface utilization, and DRL is also another approach to control multiple related active flows as the network (environment) states. Actions are problems. DRL-CC [444] is proposed to dynamically and defined as bwi ← bwmax ∗ ai∀i ∈ hosts and reward function jointly perform congestion control for all active MPTCP is : flows on an end host. DRL-CC utilizes a single agent instead of multiple independent agents. The objective of trained agents is to maximize the overall utility. They applied the X bwi qi 2 R ← − ifaces ∗ ( ) − std LSTM-based representation network into an actor-critic bwmax | {z } qmax |{z} i∈hosts | {z } weight | {z } devpenalty framework for continuous (congestion) control. In this paper bandwidth reward queue penalty state is represented as an array of sending rate, goodput, DRL is also applied to control the congestion in cellular average RTT, the mean deviation of RTTs, and the congestion networks [439]. In this study DQN [406] and A3C [440] are window size. These variables are considered for each subflows used to train the agent. Observation state space defined as the separately. Action is defined as an output array that each EWMA of 1- the time interval between two sent packets, 2- the element corresponding to change needs to be made to the time interval between two consecutive ACKs, and 3- the RTT congestion window of that subflow. Reward is the sum of the (round trip time). The action space is a set of three possible utility of all subflows that is defined as different functions of decisions to be enforced over the TCP congestion window throughput, delay, α-fairness [445]. (cwnd): 1- cwnd incremented (50 bytes), 2- cwnd decremented (-10 bytes) and, 3- cwnd not changed. The reward function was DRL is also applied on NDN [446] as emerging future net- defined based on the throughput per flow, being calculated as: work architecture. Network state and actions are represented throughput = (bits/latency(s)) by Table III andIV consecutively. Reward function is also Cui et al. [441] proposes Hd-TCP as a DRL based Con- defined as Equation3: gestion Control for mobile networks in High-Speed Railway (HSR). Hd-TCP is designed to deal with frequent handover Utilityi(t) = αi.log(throughputi(t)) − βi.RT Ti(t)− on HSR from the transport layer perspective. Hd-TCP uses (3) γ .loss (t) − δ .reordering (t) state vector is 1) goodput: an Exponentially-Weighted Moving i i i i Average (EWMA) of the receiving rate, defined as the number Where i ∈ 1, 2, ..., N and t > 0 represent different types of of ACKed bytes during an RTT, divided by the RTT, 2) cwnd: contents and different monitor intervals. αi, βi, γi and δi are READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 20 the parameters which control the relative weight or importance network and flow control. Q-learning based RL controller is of throughput, average RTT, loss rate and packet reordering applied to design a TCP algorithm for memory constrained in the current monitor interval. They applied Deep Q-learning IoTs [453]. QTCP [454] is another approach to control the (DQN) to train the agent. They use seven hidden layers in TCP flow through Q-learning reinforcement learning. As the their agent’s neural network. Their neural network consists of network status, QTCP uses its statistics such as: 1-avg send: ten inputs, seven outputs and 128 nodes per each hidden layer. the average interval between sending two packets., 2- avg ack: the average interval between receiving two consecutive ACKs, Variable Definition i prefix The prefix of requesting content and 3- avg rtt: the average RTT. Three actions are designed in i priority The priority of parameter of requesting content QTCP as Increase (10byte), decrease (-1byte) and no change. i cwnd The immediate window of sending interest packets i count Total number of interest packets sent during the monitor interval They tend to encourage the agent to quickly increase. In d count Total number of Data packets received during the monitor interval l count Total number of packets retransmitted during the monitor interval addition, QTCP uses the difference between consecutive utility d size Average size of Data packets received during the monitor interval values as a reward function (Equation4). QTCP uses the Q- d rtt Average RTT of Data packets received during the monitor interval m time The time of monitor interval learning algorithm to train the agent. d time The time of decision intervals TABLE III NDNSTATE [446]. Utility = α × log(throughput) − δ × log(RTT ) (4) where α and δ are two adjustable weights for throughput and RTT. Kong et al. designed and implemented RL-TCP [27]. Way of change Extend of changes (condo) They take the network state as an array of EWMA of the ACK Increase +1, * 1.25, *1.5 interarrival time, EWMA of the packet inter-sending time, the Decrease -1, * 0.75, *0.5 Maintain 0 ratio of current RTT and the minimum RTT, the slow start TABLE IV threshold, and cwnd size. They design reward function as the NDNACTIONS [446]. changes of utility U (Equation5). The utility U is a function of throughput tp, delay d = RTT − RTTmin, and packet loss rate p. Besides, discreet action is chosen as cwnd = cwnd + x, where x = -1, 0, +1, +3. They applied SARSA [455] as RL E. Resource Allocation algorithms. Predicting demand variability and future resource utilization tp is the main reason to consider predictive ML algorithms U = log( ) − δ1.log(d) + δ2.log(1 − p) (5) [447]. Network Functions Virtualisation (NFV) is growing B to enable service providers to offer more flexible software- where δ1 and δ2 are two adjustable weights for delay and defined network functions. Mijumbi et al. [448] proposed a packet loss rate. Authors in [456], [457] proposed other Neural Network algorithm to predict future required resources different reinforcement learning approaches to control the on NFV. Shi et al. [449] applied MDP to dynamically allocate congestion of high-speed multimedia networks. cloud resources for NFV components. Testolin et al. [450] Jay et al. [458] applied DRL in Internet congestion control propose a machine learning approach to support QoE-based problem to distinguish non-congestion loss from congestion Video Admission Control (VAC) and Resource Management induced loss. Network state is defined as an array of three (RM) algorithms. network statistics and their k step history : 1- latency gradient [416], the derivative of latency with respect to time; 2- latency F. Admission Control ratio [415], the ratio of the current MIs mean latency to minimum observed mean latency of any MI in the connections Cellular wireless networks suffer from radio link resource history; and 3- sending ratio, the ratio of packets sent to limitation more than the other networks. Besides, users mo- packets acknowledged by the receiver. In this study, reward is bility and handover make this problem even worse. Therefore defined as 10 × throughput − 1000 × latency − 2000 × loss. admission control is one of the key points to achieve highest Action is selected as a real continuous value to fine control performance and resource utilization. Bojovi et al. [451] the rate and PPO [443] is used to train the agent. propose a multilayer feed-forward Neural Network (NN) radio TCP initial rate control is also a problem that DRL re- admission control for LTE networks. Their radio admission searchers are working to improve. Nie et al. propose [275] dy- control learns from the past experience how the admission of a namic TCP initial windows and congestion control through re- new session would affect the QoS of all sessions in the future. inforcement learning. They utilize A3C for the congestion con- Wang et al. [452] introduce a call admission control (CAC) for trol and input states are st = (T hroughputt,RTTt, Losst), LTE femtocell network. This the multi-service CAC strategy action is continuous space and reward is defined as rt = composes of two parts: subscriber authentication and queuing log( T hroughputt ) admission control. RT Tt VI.LESSONS LEARNEDAND RESEARCH OPPORTUNITIES G. Congestion Window Although network traffic management and control have been Reinforcement learning controllers have been applied to substantially evolved to improved the latency and throughput many different decision sequence control problems such as of different networks, , our studies and many others in the READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 21

literature indicate that there is no existing single mechanism [20] D. Miras, M. Bateman, and S. Bhatti, “Fairness of high-speed tcp that optimally works in all situations. Besides, the set of stacks,” in 22nd International Conference on Advanced Information Networking and Applications (aina 2008). IEEE, 2008, pp. 84–92. situations are rapidly increasing. Therefore maybe machine [21] G. Hasegawa and M. Murata, “Survey on fairness issues in tcp con- learning based mechanisms would increase to cover different gestion control mechanisms,” IEICE Transactions on Communications, situations. Recent DRL algorithms such as imitation learning vol. 84, no. 6, pp. 1461–1472, 2001. and meta learning would have more chance to develop in [22] E. C. Head, “A Survey on Congestion Control,” Tech. Rep. 5, 2010. [Online]. Available: ://pdfs.semanticscholar.org/b8b8/ network flow, congestion control and traffic management. e8de6a500f3db4b02bd3cb27f00ff8105dd7.pdf Additionally, more flexible and high speed programmable [23] P. Goyal, A. Narayan, F. Cangialosi, D. Raghavan, S. Narayana, networks would be growing. M. Alizadeh, and H. Balakrishnan, “Elasticity Detection: A Building Block for Internet Congestion Control,” Tech. Rep. [Online]. Available: https://arxiv.org/pdf/1802.08730.pdf REFERENCES [24] S. Kunniyur and R. Srikant, “Analysis and Design of an Adaptive Virtual Queue (AVQ) Algorithm for Active Queue [1] D. Silver, A. Huang, C. J. Maddison, A. Guez, L. Sifre, G. Van Management *,” Tech. Rep., 2001. [Online]. Available: Den Driessche, J. Schrittwieser, I. Antonoglou, V. Panneershelvam, http://delivery.acm.org/10.1145/390000/383069/p123-kunniyur. M. Lanctot et al., “Mastering the game of go with deep neural networks pdf?ip=129.138.8.130{&}id=383069{&}acc=PUBLIC{&}key= and tree search,” nature, vol. 529, no. 7587, pp. 484–489, 2016. F82E6B88364EF649.F6C3C7FECC185049.4D4702B0C3E38B35. [2] D. Silver, J. Schrittwieser, K. Simonyan, I. Antonoglou, A. Huang, 4D4702B0C3E38B35{&}{ }{ }acm{ }{ }=1547413485{ } A. Guez, T. Hubert, L. Baker, M. Lai, A. Bolton et al., “Mastering the 8ee1619dce6c9b85668f1b645675c151 game of go without human knowledge,” nature, vol. 550, no. 7676, pp. [25] A. Sivaraman, K. Winstein, P. Thaker, and H. Balakrishnan, “An 354–359, 2017. Experimental Study of the Learnability of Congestion Control.” [3] V. Jacobson, “Congestion Avoidance and Control,” Tech. Rep., 1988. [Online]. Available: http://dx.doi.org/10.1145/2619239.2626324. [4] K. Xu, N. Ansari, and S. Member, “Stability and Fairness of Rate Estimation-Based AIAD Congestion Control in TCP,” IEEE [26] R. Mittal, J. Sherry, S. Ratnasamy, S. Shenker, and U. Berkeley, COMMUNICATIONS LETTERS, vol. 9, no. 4, 2005. [Online]. Recursively Cautious Congestion Control. Proceedings of the Available: https://web.njit.edu/{∼}ansari/papers/05COMM{ }Let{ } 11th USENIX Symposium on Networked Systems Design and Xu.pdf Implementation (NSDI ’14). [Online]. Available: https://www.usenix. [5] M. Alizadeh, A. Javanmard, and B. Prabhakar, Analysis of org/conference/nsdi14/technical-sessions/presentation/mittal DCTCP: Stability, Convergence, and Fairness, 2011. [On- [27] Y. Kong, H. Zang, and X. Ma, “Improving TCP congestion control line]. Available: https://people.csail.mit.edu/alizadeh/papers/dctcp{ with machine intelligence,” in Proceedings of the 2018 Workshop on }analysis-sigmetrics11.pdf Network Meets AI & ML - NetAI’18. ACM Press, pp. 60–66. [Online]. [6] E. Kohler, M. Handley, S. Floyd, and J. Padhye, “Datagram congestion Available: http://dl.acm.org/citation.cfm?doid=3229543.3229550 control protocol (dccp),” 2006. [28] S. Liu, T. Bas¸ar, and R. Srikant, “Tcp-illinois: A loss-and delay-based [7] D. Katabi, M. Handley, and C. Rohrs, “Congestion Control for High congestion control algorithm for high-speed networks,” Performance Bandwidth-Delay Product Networks General Terms,” Tech. Rep., Evaluation, vol. 65, no. 6-7, pp. 417–440, 2008. 2002. [Online]. Available: http://conferences.sigcomm.org/sigcomm/ [29] “BBR: Congestion Based Congestion Control,” Tech. Rep., 2016. 2002/papers/xcp.pdf [Online]. Available: http://delivery.acm.org/10.1145/3030000/3022184/ [8] R. Mittal, V. T. Lam, N. Dukkipati, E. Blem, H. Wassel, M. Ghobadi, p50-vanjacobson.pdf?ip=129.138.252.29{&}id=3022184{&} A. Vahdat, Y. Wang, D. Wetherall, and D. Zats, “Timely: Rtt-based acc=OPEN{&}key=F82E6B88364EF649.F6C3C7FECC185049. congestion control for the datacenter,” ACM SIGCOMM Computer 4D4702B0C3E38B35.6D218144511F3437{&}{ }{ }acm{ }{ } Communication Review, vol. 45, no. 4, pp. 537–550, 2015. =1548048552{ }42cca56691b3406181de0e1374633e93 [9] D. A. Hayes and G. Armitage, “Revisiting [30] J. Widmer, R. Denda, and M. Mauve, “A Survey on TCP- using delay gradients,” in International Conference on Research in Friendly Congestion Control,” Tech. Rep., 2001. [Online]. Available: Networking. Springer, 2011, pp. 328–341. http://icapeople.epfl.ch/widmer/files/Widmer2001a.pdf [10] G. Armitage and N. Khademi, “Using delay-gradient tcp for [31] S. Amherst, J. Padhye, S. Floyd, M. Handley, and J. Widmer, multimedia-friendly backgroundtransport in home networks,” in 38th “Equation-Based Congestion Control for Unicast Applications,” Tech. Annual IEEE Conference on Local Computer Networks. IEEE, 2013, Rep., 2000. [Online]. Available: https://scholarworks.umass.edu/cs{ } pp. 509–515. faculty{ }pubs [11] G. Abbas, Z. Halim, and Z. H. Abbas, “Fairness-Driven Queue [32] Jia Zhao, Changqiao Xu, Jianfeng Guan, and Hongke Zhang, Management: A Survey and Taxonomy,” IEEE Communications “AIMD-PQ: A path quality based TCP-friendly AIMD algorithm for Surveys & Tutorials, vol. 18, no. 1, pp. 324–367, 2016. [Online]. multipath congestion control in heterogeneous wireless networks,” Available: http://ieeexplore.ieee.org/document/7173004/ in 2015 IEEE Wireless Communications and Networking Conference [12] A. Firoozshahian, V. Manshadi, A. Goel, and B. Prabhakar, “Efficient, (WCNC). IEEE, mar 2015, pp. 1678–1683. [Online]. Available: fully local algorithms for cioq switches,” in INFOCOM 2007. 26th http://ieeexplore.ieee.org/document/7127720/ IEEE International Conference on Computer Communications. IEEE. [33] N. Reddy, P. Reddy, and M. Padmavathamma, “Efficient Traffic En- IEEE, 2007, pp. 2491–2495. gineering Strategies for Improving the Performance of TCP Friendly [13] G. Appenzeller, I. Keslassy, and N. McKeown, “Sizing router buffers,” Rate Control Protocol,” Future Internet, vol. 9, no. 4, p. 74, 2017. ACM SIGCOMM Computer Communication Review, vol. 34, no. 4, pp. [34] A. Afanasyev, N. Tilley, P. Reiher, and L. Kleinrock, “Host-to-Host 281–292, 2004. Congestion Control for TCP,” IEEE Communications Surveys & [14] M. Lin and N. McKeown, “The throughput of a buffered crossbar Tutorials, vol. 12, no. 3, pp. 304–342, 2010. [Online]. Available: switch,” IEEE communications Letters, vol. 9, no. 5, pp. 465–467, http://ieeexplore.ieee.org/document/5462976/ 2005. [15] N. McKeown, A. Mekkittikul, V. Anantharam, and J. Walrand, “Achiev- [35] M. Mathis, J. Mahdavi, S. Floyd, and A. Romanow, “Tcp selective ing 100% throughput in an input-queued switch,” IEEE Transactions acknowledgment options,” RFC 2018, Tech. Rep., 1996. on Communications, vol. 47, no. 8, pp. 1260–1267, 1999. [36] B. Sikdar, S. Kalyanaraman, and K. S. Vastola, “Analytic models for [16] R. Adams, “Active queue management: A survey,” IEEE communica- the latency and steady-state throughput of tcp tahoe, reno, and sack,” tions surveys & tutorials, vol. 15, no. 3, pp. 1425–1476, 2012. IEEE/ACM Transactions On Networking, vol. 11, no. 6, pp. 959–971, [17] W. Olesinski and S. Driediger, “Fair wred for tcp udp traffic mix,” 2003. Nov. 10 2009, uS Patent 7,616,573. [37] A. Lahanas and V. Tsaoussidis, “Additive increase multiplicative [18] S. Bhatti, M. Bateman, and D. Miras, “Revisiting inter-flow fairness,” decrease-fast convergence (aimd-fc),” in Networks. World Scientific, in 2008 5th International Conference on Broadband Communications, 2002, pp. 511–522. Networks and Systems. IEEE, 2008, pp. 585–592. [38] D. Bansal and H. Balakrishnan, “Binomial Congestion Control [19] C.-Y. Ho, Y.-C. Chan, and Y.-C. Chen, “Ward: a transmission control Algorithms,” Tech. Rep., 2001. [Online]. Available: http://nms.lcs.mit. protocol-friendly stateless active queue management scheme,” IET edu/papers/binomial-infocom01.pdf communications, vol. 1, no. 6, pp. 1179–1186, 2007. [39] S. Floyd et al., “Highspeed tcp for large congestion windows,” 2003. READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 22

[40] Y.-T. Li, D. Leith, and R. N. Shorten, “Experimental evaluation of [62] Y. Ren, J. Li, S. Shi, L. Li, and G. Wang, “An explicit congestion tcp protocols for high-speed networks,” IEEE/ACM Transactions on control algorithm for Named Data Networking,” in Proceedings - IEEE networking, vol. 15, no. 5, pp. 1109–1122, 2007. INFOCOM, vol. 2016-Septe, 2016, pp. 294–299. [41] Y. R. Yang and S. S. Lam, “General AIMD Congestion Control [63] K. Schneider, C. Yi, B. Zhang, and L. Zhang, “A Practical Congestion £,” Tech. Rep., 2000. [Online]. Available: https://pdfs.semanticscholar. Control Scheme for Named Data Networking,” in Proceedings of org/4de5/d893fa2d2648e29daed0ded7748ac7cb6e30.pdf the 2016 conference on 3rd ACM Conference on Information-Centric [42] L. S. Brakmo, S. W. O’Malley, and L. L. Peterson, “Tcp vegas: New Networking - ACM-ICN ’16, 2016, pp. 21–30. [Online]. Available: techniques for congestion detection and avoidance,” in Proceedings http://dl.acm.org/citation.cfm?doid=2984356.2984369 of the conference on Communications architectures, protocols and [64] K. Nichols and V. Jacobson, “Controlling queue delay,” applications, 1994, pp. 24–35. Communications of the ACM, vol. 55, no. 7, p. 42, may 2012. [Online]. [43] C. X. Jin David Wei Steven H, “FAST TCP: Motivation, Architecture, Available: http://dl.acm.org/citation.cfm?doid=2209249.2209264 Algorithms, Performance,” Tech. Rep., 2004. [Online]. Available: [65] K. Lei, C. Hou, L. Li, and K. Xu, “A RCP-Based Congestion http://netlab.caltech.edu Control Protocol in Named Data Networking,” in Proceedings - 2015 [44] S. Mascolo, C. Casetti, M. Gerla, M. Y. Sanadidi, and R. Wang, “Tcp International Conference on Cyber-Enabled Distributed Computing westwood: Bandwidth estimation for enhanced transport over wireless and Knowledge Discovery, CyberC 2015, 2015, pp. 538–541. links,” in Proceedings of the 7th annual international conference on [66] H. Park, H. Jang, and T. Kwon, “Popularity-based congestion control Mobile computing and networking, 2001, pp. 287–297. in named data networking,” in International Conference on Ubiquitous [45] K. Xu, Y. Tian, and N. Ansari, “Tcp-jersey for wireless ip communi- and Future Networks, ICUFN, 2014, pp. 166–171. cations,” IEEE Journal on selected areas in communications, vol. 22, [67] Y. Ren, J. Li, S. Shi, L. Li, G. Wang, and B. Zhang, no. 4, pp. 747–756, 2004. “Congestion control in named data networking - A survey,” Computer [46] M. Alizadeh, A. Greenberg, D. A. Maltz, J. Padhye, P. Patel, Communications, vol. 86, pp. 1–11, 2016. [Online]. Available: B. Prabhakar, S. Sengupta, and M. Sridharan, Data Center TCP www.elsevier.com/locate/comcom (DCTCP), 2010. [Online]. Available: https://www.microsoft.com/ [68] Q. Chen, R. Xie, F. R. Yu, J. Liu, T. Huang, and Y. Liu, “Transport en-us/research/wp-content/uploads/2017/01/dctcp-sigcomm2010.pdf control strategies in named data networking: A survey,” pp. 2052–2083, [47] M. Dong, Q. Li, M. Schapira, D. Zarchy, and P. Brighten 2016. Godfrey, PCC: Re-architecting Congestion Control for Consistent [69] G. Xylomenos, C. N. Ververidis, V. A. Siris, N. Fotiou, C. Tsilopou- High Performance, 2015. [Online]. Available: https://www.usenix.org/ los, X. Vasilakos, K. V. Katsaros, and G. C. Polyzos, “A survey conference/nsdi15/technical-sessions/presentation/dong of information-centric networking research,” IEEE communications [48] A. Mozo, J. L. Lopez-Presa,´ and A. Fernandez´ Anta, “A distributed surveys & tutorials, vol. 16, no. 2, pp. 1024–1049, 2013. and quiescent max-min fair algorithm for network congestion [70] G. Carofiglio, M. Gallo, L. Muscariello, and M. Papali, “Multipath control,” Expert Systems with Applications, vol. 91, pp. 492–512, jan congestion control in content-centric networks,” in 2013 IEEE confer- 2018. [Online]. Available: https://linkinghub.elsevier.com/retrieve/pii/ ence on computer communications workshops (INFOCOM WKSHPS). S0957417417306218 IEEE, 2013, pp. 363–368. [49] L. Mamatas, T. Harks, and V. Tsaoussidis, “Approaches to congestion [71] T. Janaszka, D. Bursztynowski, and M. Dzida, “On popularity-based control in packet networks,” Journal of Internet engineering, vol. 1, load balancing in content networks,” in 2012 24th International Tele- no. 1, 2007. traffic Congress (ITC 24). IEEE, 2012, pp. 1–8. [50] C. Zhang and V. Tsaoussidis, “The interrelation of tcp responsiveness [72] G. Carofiglio, M. Gallo, and L. Muscariello, “Optimal multipath con- and smoothness in heterogeneous networks,” in Proceedings ISCC 2002 gestion control and request forwarding in information-centric networks: Seventh International Symposium on Computers and Communications. Protocol design and experimentation,” Computer Networks, vol. 110, IEEE, 2002, pp. 291–297. pp. 104–117, 2016. [51] N. Dukkipati and N. McKeown, “Why flow-completion time is the [73] M. Conti, A. Gangwal, M. Hassan, C. Lal, and E. Losiouk, “The road right metric for congestion control,” ACM SIGCOMM Computer Com- ahead for networking: A survey on icn-ip coexistence solutions,” IEEE munication Review, vol. 36, no. 1, pp. 59–62, 2006. Communications Surveys & Tutorials, 2020. [52] S. Sundaresan, A. Dhamdhere, and C. . Ucsd, “TCP Congestion [74] G. Carofiglio, L. Muscariello, J. Auge,´ M. Papalini, M. Sardara, and Signatures,” London, United Kingdom ACM Reference Format: A. Compagno, “Enabling icn in the : analysis and Srikanth Sundaresan, 2017. [Online]. Available: https://conferences. evaluation of the hybrid-icn architecture,” in Proceedings of the 6th sigcomm.org/imc/2017/papers/imc17-final99.pdf ACM Conference on Information-Centric Networking, 2019, pp. 55– [53] S. Ha, I. Rhee, and L. Xu, “CUBIC: A New TCP-Friendly High-Speed 66. TCP Variant *,” Tech. Rep., 2008. [Online]. Available: https://www. [75] M. Wang, C. Xu, X. Chen, H. Hao, L. Zhong, and D. O. Wu, “Design cs.princeton.edu/courses/archive/fall16/cos561/papers/Cubic08.pdf of multipath transmission control for information-centric internet of [54] S. Sundaresan, D. Lee, X. Deng, and Y. Feng, “Challenges in Inferring things: A distributed stochastic optimization framework,” IEEE Internet Internet Congestion Using Through-put Measurements,” vol. 14, 2017. of Things Journal, vol. 6, no. 6, pp. 9475–9488, 2019. [Online]. Available: https://doi.org/10.1145/3131365.3131382 [76] Y. Zhang, X. An, M. Yuan, X. Bu, and J. An, “Concurrent multipath [55] P. Goyal, A. Narayan, F. Cangialosi, D. Raghavan, S. Narayana, routing optimization in named data networks,” IEEE Internet of Things M. Alizadeh, and H. Balakrishnan, “Elasticity detection: A building Journal, vol. 7, no. 2, pp. 1451–1463, 2019. block for delay-sensitive congestion control.” in ANRW, 2018, p. 75. [77] C. Fang, H. Yao, Z. Wang, W. Wu, X. Jin, and F. R. Yu, “A [56] M. B. Bob Briscoe, Koen De Schepper and G. White. (2019) survey of mobile information-centric networking: Research issues and Low latency, low loss, scalable throughput (l4s) internet service: challenges,” IEEE Communications Surveys & Tutorials, vol. 20, no. 3, Architecture. [Online]. Available: https://datatracker.ietf.org/doc/html/ pp. 2353–2371, 2018. draft-ietf-tsvwg-l4s-arch-04 [78] V. Jacobson, D. K. Smetters, J. D. Thornton, M. F. Plass, N. H. Briggs, [57]S.N adas,´ G. Gombos, F. Fejes, and S. Laki, “A congestion control and R. L. Braynard, “Networking named content,” in Proceedings of independent l4s scheduler,” in Proceedings of the Applied Networking the 5th international conference on Emerging networking experiments Research Workshop, 2020, pp. 45–51. and technologies, 2009, pp. 1–12. [58] M. M. S. Soniya and K. Kumar, “A survey on named data networking,” [79] F. Zhang, Y. Zhang, A. Reznik, H. Liu, C. Qian, and C. Xu, “A in 2nd International Conference on Electronics and Communication transport protocol for content-centric networking with explicit con- Systems, ICECS 2015, 2015, pp. 1515–1519. gestion control,” in 2014 23rd international conference on computer [59] D. Saxena, V. Raychoudhury, N. Suri, C. Becker, and J. Cao, “Named communication and networks (ICCCN). IEEE, 2014, pp. 1–8. Data Networking: A survey,” pp. 15–55, 2016. [80] A. Tariq, R. A. Rehman, and B.-S. Kim, “Forwarding strategies in ndn- [60] A. Mathematics, P. Jinesh, K. Lakshmipriya, A. Kumar, and K. Suresh based wireless networks: A survey,” IEEE Communications Surveys & Joseph, “NAMED DATA NETWORKING EMPIRICAL SURVEY,” Tutorials, vol. 22, no. 1, pp. 68–95, 2019. International Journal of Pure and Applied Mathematics, vol. 115, no. 6, [81] T. Liu, M. Zhang, J. Zhu, R. Zheng, R. Liu, and Q. Wu, “Accp: pp. 351–357, 2017. adaptive congestion control protocol in named data networking based [61] G. Carofiglio, M. Gallo, and L. Muscariello, “Icp: Design and eval- on deep learning,” Neural Computing and Applications, vol. 31, no. 9, uation of an interest control protocol for content-centric networking,” pp. 4675–4683, 2019. in 2012 Proceedings IEEE INFOCOM Workshops, March 2012, pp. [82] K. Schneider, “Multipath data transport in named data networking,” 304–309. 2019. READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 23

[83] T. K. Cern, “Scalable TCP: Improving Performance in Highspeed [104] Y. Cao, M. Xu, and X. Fu, “Delay-based congestion control for Wide Area Networks,” Tech. Rep., 2002. [Online]. Available: multipath TCP,” in Proceedings - International Conference on Network http://www.cs.unc.edu/{%}7B{∼}{%}7Djasleen/Courses/Fall09/ Protocols, ICNP, 2012. papers/pfldnet2003-ctk.pdfhttp://www.cs.unc.edu/{∼}jasleen/Courses/ [105] M. Becke, T. Dreibholz, H. Adhari, and E. P. Rathgeb, “On the fairness Fall09/papers/pfldnet2003-ctk.pdf of transport protocols in a multi-path environment,” in 2012 IEEE [84] L. Xu, K. Harfoush, and I. Rhee, “Binary increase congestion control International Conference on Communications (ICC). IEEE, 2012, (BIC) for fast long-distance networks,” in INFOCOM 2004. Twenty- pp. 2666–2672. third AnnualJoint Conference of the IEEE Computer and Communica- [106] D. Wischik and C. Raiciu, “Design, implementation and evaluation tions Societies, vol. 4. IEEE, 2004, pp. 2514–2524. of congestion control for multipath TCP,” NSDI’11 Proceedings [85] Yong Xia, L. Subramanian, I. Stoica, and S. Kalyanaraman, “One of the 8th USENIX conference on Networked systems design More Bit is Enough,” IEEE/ACM Transactions on Networking, and implementation, pp. pp. 99–112, 2011. [Online]. Available: vol. 16, no. 6, pp. 1281–1294, dec 2008. [Online]. Available: http://static.usenix.org/event/nsdi11/tech/full{ }papers/Wischik.pdf http://ieeexplore.ieee.org/document/4460574/ [107] B. Chihani -Denis Collange, “A Survey on Multipath Transport [86] M. A. Alrshah, M. Othman, B. Ali, and Z. Mohd Hanapi, Protocols,” Tech. Rep., 2011. [Online]. Available: https://arxiv.org/pdf/ “Comparative study of high-speed Linux TCP variants over high-BDP 1112.4742.pdf networks,” Journal of Network and Computer Applications, vol. 43, [108] S. Habib, J. Qadir, A. Ali, D. Habib, M. Li, and A. Sathiaseelan, pp. 66–75, aug 2014. [Online]. Available: https://linkinghub.elsevier. “The past, present, and future of transport-layer multipath,” 2016. com/retrieve/pii/S1084804514000903 [Online]. Available: http://dx.doi.org/10.1016/j.jnca.2016.09.005 [87] S. Mcquistin and C. Perkins, “Is Explicit Congestion Notification [109] C. Xu, J. Zhao, and G. Muntean, “Congestion Control Design for usable with UDP?” 2015. [Online]. Available: http://dx.doi.org/10. Multipath Transport Protocols: A Survey,” IEEE Communications 1145/10.1145/2815675.2815716. Surveys Tutorials, vol. 18, no. 4, pp. 2948–2969, 2016. [88] B. Jin, “TCP-friendly SIMD Congestion Control and Its Convergence,” [110] D. Thaler and C. Hopps, “Rfc2991: Multipath issues in unicast and Tech. Rep., 2001. [Online]. Available: http://open.bu.edu multicast next-hop selection,” 2000. [89] R. Rejaie, M. Handley, and D. Estrin, “RAP: An End-to-end Rate- [111] M. Honda, Y. Nishida, L. Eggert, P. Sarolahti, and H. Tokuda, “Mul- based Congestion Control Mechanism for Realtime Streams in the tipath congestion control for shared bottleneck,” in Proc. PFLDNeT Internet,” Tech. Rep., 1998. [Online]. Available: http://citeseerx.ist.psu. workshop, vol. 357. Citeseer, 2009, p. 378. edu/viewdoc/download?doi=10.1.1.45.5369{&}rep=rep1{&}type=pdf [112] Q. Peng, A. Walid, J. Hwang, and S. H. Low, “Multipath tcp: Analysis, [90] S. Cen, C. Pu, J. Walpole, S. Cena, and J. Walpoleb, “Flow design, and implementation,” IEEE/ACM Transactions on networking, and congestion control for Internet media streaming applications,” vol. 24, no. 1, pp. 596–609, 2014. vol. 250, 1998. [Online]. Available: https://pdxscholar.library.pdx.edu/ [113] R. Khalili, N. Gast, M. Popovic, U. Upadhyay, and J.-Y. Le Boudec, compsci{ }fac MPTCP is not Pareto-Optimal: Performance Issues and a Possible [91] D. Sisalem and A. Wolisz, “LDA+ TCP-Friendly Adaptation: A Solution, 2012. [Online]. Available: http://conferences.sigcomm.org/ Measurement and Comparison Study,” Tech. Rep., 2000. [Online]. co-next/2012/eproceedings/conext/p1.pdf Available: http://nossdav.org/2000/papers/23.pdf [114] J. Zhang, K. Xi, L. Zhang, and H. J. Chao, “Optimizing [92] I. Rhee, V. Ozdemir, and Y. Yi, “TEAR: TCP emulation at Network Performance Using Weighted Multipath Routing,” in 2012 receivers-flow control for multimedia streaming,” Tech. Rep., 21st International Conference on Computer Communications and 2000. [Online]. Available: https://pdfs.semanticscholar.org/0b4b/ Networks (ICCCN). IEEE, jul 2012, pp. 1–7. [Online]. Available: 9ec615368b2e8346a21049d0a79e0749f82e.pdf http://ieeexplore.ieee.org/document/6289274/ [93] S. Bhattacharyya, D. Towsley, and J. Kurose, “A novel loss indication [115] T. A. Le, C. S. Hong, and S. Lee, “Multipath binomial congestion filtering approach for multicast congestion control,” Computer Com- control algorithms,” IEICE Transactions on Communications, vol. E95- munications, vol. 24, no. 5-6, pp. 512–524, 2001. B, no. 6, pp. 1934–1943, 2012. [94] I. Rhee, N. Balaguru, and G. N. Rouskas, “MTCP: Scalable TCP-like [116] A. Ford, C. Raiciu, M. Handley, O. Bonaventure et al., “Tcp extensions Congestion Control for Reliable Multicast,” Tech. Rep., 2002. for multipath operation with multiple addresses,” RFC 6824, Tech. [95] S. K. Kasera, S. Bhattacharyya, M. Keaton, D. Kiwior, Rep., 2013. J. Kurose, D. Towsley, and S. Zabele, “Scalable Fair [117] B. Han, F. Qian, S. Hao, and L. Ji, “An Anatomy of Reliable Multicast Using Active Services,” Tech. Rep., Mobile Web Performance over Multipath TCP,” 2015. [Online]. 2000. [Online]. Available: https://pdfs.semanticscholar.org/cad4/ Available: http://conferences2.sigcomm.org/co-next/2015/img/papers/ 28e800d0aea54fae0c706066cff61d47d8d4.pdf conext15-final42.pdf [96] L. Rizzo, “pgmcc: a TCP-friendly single-rate multicast congestion [118] F. Qian, V. Gopalakrishnan, E. Halepovic, S. Sen, and O. Spatscheck, control scheme £,” Tech. Rep., 2000. [Online]. Available: http: “TM 3 : Flexible Transport-layer Multi-pipe Multiplexing Middlebox //www.iet.unipi.it/luigi/ Without Head-of-line Blocking,” 2015. [Online]. Available: http: [97] L. Vicisano, J. Crowcroft, and L. Rizzo, “TCP-like Congestion //dx.doi.org/10.1145/2716281.2836088 Control for Layered Multicast Data Transfer,” Tech. Rep., 1998. [119] Y.-S. Lim, Y.-C. Chen, E. M. Nahum, D. Towsley, R. J. [Online]. Available: http://citeseerx.ist.psu.edu/viewdoc/download? Gibbens, and E. Cecchet, “Design, Implementation, and Evaluation doi=10.1.1.440.3681{&}rep=rep1{&}type=pdf of Energy-Aware Multi-Path TCP,” 2015. [Online]. Available: [98] K. Yano and S. Mccanne, “A Window-based Congestion Control for http://dx.doi.org/10.1145/2716281.2836115 Reliable Multicast based on TCP Dynamics,” Tech. Rep., 2000. [120] W. Wang, X. Wang, and D. Wang, “Energy Efficient Congestion [99] J. W. Byers, G. Horn, M. Luby, M. Mitzenmacher, and W. Shaver, Control for Multipath TCP in Heterogeneous Networks,” IEEE “FLID-DL: Congestion Control for Layered Multicast,” IEEE Access, vol. 6, pp. 2889–2898, 2018. [Online]. Available: http: JOURNAL ON SELECTED AREAS IN COMMUNICATIONS, //ieeexplore.ieee.org/document/8240900/ vol. 20, no. 8, 2002. [Online]. Available: https://www.eecs.harvard. [121] B. Hesmans, G. Detal, S. Barre, R. Bauduin, and O. Bonaventure, edu/{%}7B{∼}{%}7Dmichaelm/postscripts/jsac2002b.pdfhttps: “SMAPP : Towards Smart Multipath TCP-enabled APPlications,” //www.eecs.harvard.edu/{∼}michaelm/postscripts/jsac2002b.pdf 2015. [Online]. Available: http://conferences2.sigcomm.org/co-next/ [100] T. Turletti, S. F. Parisis, and J.-C. Bolot, “Experiments with a Layered 2015/img/papers/conext15-final169.pdf Transmission Scheme over the Internet,” Tech. Rep., 2006. [Online]. [122] M. Popovici and C. Raiciu, “Exploiting multipath congestion control Available: https://hal.inria.fr/inria-00073392 for fun and profit,” in Proceedings of the 15th ACM Workshop on Hot [101] D. Sisalem and A. Wolisz, “MLDA: A TCP-friendly Congestion Topics in Networks - HotNets ’16. ACM Press, pp. 141–147. [Online]. Control Framework for Heterogeneous Multicast Environments,” Tech. Available: http://dl.acm.org/citation.cfm?doid=3005745.3005769 Rep., 2000. [Online]. Available: http://www.tkn.tu-berlin.de/fileadmin/ [123] Q. De Coninck and O. Bonaventure, “Multipath QUIC: De-sign fg112/Papers/Sisa0002{ }MLDA.pdf and Evaluation,” ACM Reference, vol. 7, 2017. [Online]. Available: [102] A. Z. Wai Tian, “Error control for video multicast using hierarchical https://doi.org/10.1145/3143361.3143370 fec,” IEEE, p. 5, 1999. [Online]. Available: https://www.vtvt.ece.vt. [124] S. R. Pokhrel and M. Mandjes, “Improving Multipath TCP edu/research/references/video/Transmission{ }Noise/Tan99a.pdf Performance over WiFi and Cellular Networks: an Analytical [103] R. Pan, B. Prabhakar, and K. Psounis, “CHOKe A stateless Approach,” IEEE Transactions on Mobile Computing, pp. 1–1, 2018. active queue management scheme for approximating fair bandwidth [Online]. Available: https://ieeexplore.ieee.org/document/8493300/ allocation,” Tech. Rep., 2000. [Online]. Available: https://web.stanford. [125] F. Chiariotti, S. Kucera, A. Zanella, and H. Claussen, “LEAP: edu/{∼}balaji/papers/00chokea.pdf A latency control protocol for multi-path data delivery with READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 24

pre-defined QoS guarantees,” in IEEE INFOCOM 2018 - IEEE Mobile Computing and Networking, ser. MobiCom ’17. New Conference on Computer Communications Workshops (INFOCOM York, NY, USA: ACM, 2017, pp. 141–153. [Online]. Available: WKSHPS). IEEE, apr 2018, pp. 166–171. [Online]. Available: http://doi.acm.org/10.1145/3117811.3117829 https://ieeexplore.ieee.org/document/8406904/ [146] L. P. Verma and M. Kumar, “An adaptive data chunk scheduling [126] S. Floyd, T. Henderson, and A. Gurtov, “Rfc3782: The newreno for concurrent multipath transfer,” Computer Standards & Interfaces, modification to tcp’s fast recovery algorithm,” 2004. vol. 52, pp. 97–104, may 2017. [Online]. Available: https: [127] P. L. Vo, T. A. Le, S. Lee, C. S. Hong, B. Kim, and H. Song, //linkinghub.elsevier.com/retrieve/pii/S0920548916300915 “Multi-path utility maximization and multi-path tcp design,” Journal [147] B. Tian, C. Tian, H. Dai, and B. Wang, “Scheduling coflows of multi- of Parallel and Distributed Computing, vol. 74, no. 1, pp. 1848–1857, stage jobs to minimize the total weighted job completion time,” in IEEE 2014. INFOCOM 2018 - IEEE Conference on Computer Communications, [128] R. Kokku, A. Bohra, S. Ganguly, and A. Venkataramani, “A multipath April 2018, pp. 864–872. background network architecture,” in IEEE INFOCOM 2007-26th [148] S. Sinha, S. Kandula, and D. Katabi, “Harnessing TCP’s IEEE International Conference on Computer Communications. IEEE, Burstiness with Flowlet Switching,” Tech. Rep. [Online]. 2007, pp. 1352–1360. Available: https://groups.csail.mit.edu/netmit/wordpress/wp-content/ [129] D. Wischik, C. Raiciu, A. Greenhalgh, and M. Handley, “Design, themes/netmit/papers/texcp-hotnets04.pdf implementation and evaluation of congestion control for multipath tcp.” [149] E. Vanini, R. Pan, P. Taheri, T. Edsall, and M. Alizadeh, in NSDI, vol. 11, 2011, pp. 8–8. Let it Flow: Resilient Asymmetric Load Balancing with Flowlet [130] R. Khalili, N. Gast, M. Popovic et al., “Opportunistic linked-increases Switching. Proceedings of the 14th USENIX Symposium congestion control algorithm for mptcp,” 2013. on Networked Systems Design and Implementation (NSDI [131] H. Han, S. Shakkottai, C. V. Hollot, R. Srikant, and D. Towsley, “Multi- ’17). [Online]. Available: https://www.usenix.org/conference/nsdi17/ path tcp: a joint congestion control and routing scheme to exploit technical-sessions/presentation/vanini path diversity in the internet,” IEEE/ACM Transactions on networking, [150] J. Perry, H. Balakrishnan, and D. Shah, “Flowtune: Flowlet control for vol. 14, no. 6, pp. 1260–1271, 2006. datacenter networks.” in NSDI, 2017, pp. 421–435. [132] F. Kelly and T. Voice, “Stability of end-to-end algorithms for joint [151] B.-H. Oh and J. Lee, “Constraint-based proactive scheduling for routing and rate control,” ACM SIGCOMM Computer Communication MPTCP in wireless networks,” Computer Networks, vol. 91, pp. 548– Review, vol. 35, no. 2, pp. 5–12, 2005. 563, 2015. [Online]. Available: http://dx.doi.org/10.1016/j.comnet. [133] T. A. Le, C. S. Hong, M. A. Razzaque, S. Lee, and H. Jung, “ecmtcp: 2015.09.002 An energy-aware congestion control algorithm for multipath tcp,” IEEE [152] C.-Y. Hong, M. Caesar, and P. B. Godfrey, “Finishing flows quickly communications letters, vol. 16, no. 2, pp. 275–277, 2011. with preemptive scheduling,” ACM SIGCOMM Computer Communi- [134] Q. Peng, A. Walid, and S. H. Low, “Multipath tcp algorithms: theory cation Review, vol. 42, no. 4, pp. 127–138, 2012. and design,” ACM SIGMETRICS Performance Evaluation Review, [153] X. Zhang, M. Ding, and R. Wan, “Pfo: Priority-based flow scheduling vol. 41, no. 1, pp. 305–316, 2013. for online social network datacenter,” in 2016 IEEE 11th Conference [135] D. Zhou, W. Song, and Y. Cheng, “A study of fair bandwidth sharing on Industrial Electronics and Applications (ICIEA), June 2016, pp. with aimd-based multipath congestion control,” IEEE Wireless Com- 500–505. munications Letters, vol. 2, no. 3, pp. 299–302, 2013. [154] S.-Y. Li, R. W. Yeung, and N. Cai, “Linear network coding,” IEEE [136] Y. Cao, M. Xu, and X. Fu, “Delay-based congestion control for mul- transactions on information theory, vol. 49, no. 2, pp. 371–381, 2003. tipath tcp,” in 2012 20th IEEE International Conference on Network [155] M. Casado, M. J. Freedman, J. Pettit, J. Luo, N. McKeown, and Protocols (ICNP). IEEE, 2012, pp. 1–10. S. Shenker, “Ethane: Taking control of the enterprise,” in ACM SIG- [137] J. Cegarra and W. van Wezel, “Revisiting decision support systems COMM Computer Communication Review, vol. 37, no. 4. ACM, 2007, for cognitive readiness: A contribution to unstructured and complex pp. 1–12. scheduling situations,” Journal of Cognitive Engineering and Decision Making, vol. 6, no. 3, pp. 299–324, 2012. [Online]. Available: [156] D. Kreutz, F. M. V. Ramos, P. E. Verissimo, C. E. Rothenberg, http://journals.sagepub.com/doi/10.1177/1555343412448385 S. Azodolmolky, and S. Uhlig, “Software-defined networking: A com- [138] C. Paasch, S. Ferlin, O. Alay, and O. Bonaventure, “Experimental prehensive survey,” Proceedings of the IEEE, vol. 103, no. 1, pp. 14–76, evaluation of multipath tcp schedulers,” in Proceedings of the 2014 2015. ACM SIGCOMM workshop on Capacity sharing workshop, 2014, pp. [157] B. A. A. Nunes, M. Mendonca, X.-N. Nguyen, K. Obraczka, and 27–32. T. Turletti, “A survey of software-defined networking: Past, present, [139] K. W. Choi, Y. S. Cho, Aneta, J. W. Lee, S. M. Cho, and J. Choi, and future of programmable networks,” IEEE Communications Surveys “Optimal load balancing scheduler for MPTCP-based bandwidth & Tutorials, vol. 16, no. 3, pp. 1617–1634, 2014. aggregation in heterogeneous wireless environments,” Computer [158] V. Patel and D. Vashi, “A Survey of Software-Defined Networking,” Communications, vol. 112, pp. 116–130, nov 2017. [Online]. Available: 2017. https://linkinghub.elsevier.com/retrieve/pii/S0140366417302426 [159] B. Sonkoly, F. Nemeth,´ L. Csikor, L. Gulyas,´ and A. Gulyas,´ “Sdn [140] Y.-S. Lim, E. M. Nahum, D. Towsley, and R. J. Gibbens, “ECF: based testbeds for evaluating and promoting multipath tcp,” in 2014 An MPTCP Path Scheduler to Manage Heterogeneous Paths,” 2017. IEEE International Conference on Communications (ICC). IEEE, [Online]. Available: https://doi.org/10.1145/3143361.3143376 2014, pp. 3044–3050. [141] P. Dong, W. Yang, W. Tang, J. Huang, H. Wang, Y. Pan, and J. Wang, [160] P. Bosshart, D. Daly, G. Gibb, M. Izzard, N. McKeown, J. Rexford, “Reducing transport latency for short flows with multipath TCP,” C. Schlesinger, D. Talayco, A. Vahdat, G. Varghese, and Others, Journal of Network and Computer Applications, vol. 108, pp. 20–36, “P4: Programming protocol-independent packet processors,” ACM SIG- apr 2018. [Online]. Available: https://linkinghub.elsevier.com/retrieve/ COMM Computer Communication Review, vol. 44, no. 3, pp. 87–95, pii/S1084804518300420 2014. [142] S. Kandula, D. Katabi, S. Sinha, and A. Berger, [161] P. Gill, N. Jain, and N. Nagappan, “Understanding network “Dynamic Load Balancing Without Packet Reordering,” failures in data centers,” in Proceedings of the ACM SIGCOMM Tech. Rep., 2007. [Online]. Available: http: 2011 conference on SIGCOMM - SIGCOMM ’11. New York, //delivery.acm.org/10.1145/1240000/1232925/p51-kandula.pdf?ip= New York, USA: ACM Press, 2011, p. 350. [Online]. Available: 129.138.8.130{&}id=1232925{&}acc=ACTIVESERVICE{&}key= http://dl.acm.org/citation.cfm?doid=2018436.2018477 F82E6B88364EF649.F6C3C7FECC185049.4D4702B0C3E38B35. [162] H. Zhang, J. Zhang, W. Bai, K. Chen, and M. Chowdhury, “Resilient 4D4702B0C3E38B35{&}{ }{ }acm{ }{ }=1547401017{ } Datacenter Load Balancing in the Wild,” 2017. [Online]. Available: 9b0a91c9b225bcaa52fc12d2e9a3fd41 http://sing.cse.ust.hk/{∼}hong/papers/Hermes.pdf [143] M. Chowdhury and I. Stoica, “Coflow: A networking abstraction for [163] D. Zhuo, M. Ghobadi, R. Mahajan, K.-T. Frster, A. Krishnamurthy, cluster applications,” in Proceedings of the 11th ACM Workshop on and T. Anderson, “Understanding and mitigating packet corruption Hot Topics in Networks, 2012, pp. 31–36. in data center networks,” in Proceedings of the Conference of [144] M. Chowdhury, Y. Zhong, and I. Stoica, “Efficient coflow scheduling the ACM Special Interest Group on Data Communication - with varys,” in Proceedings of the 2014 ACM conference on SIG- SIGCOMM ’17. ACM Press, pp. 362–375. [Online]. Available: COMM, 2014, pp. 443–454. http://dl.acm.org/citation.cfm?doid=3098822.3098849 [145] Y. E. Guo, A. Nikravesh, Z. M. Mao, F. Qian, and S. Sen, “Accelerating [164] A. Greenberg, J. R. Hamilton, N. Jain, S. Kandula, C. Kim, multipath transport through balanced subflow completion,” in P. Lahiri, D. A. Maltz, P. Patel, and S. Sengupta, “VL2: a Proceedings of the 23rd Annual International Conference on scalable and flexible data center network,” Communications of READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 25

the ACM, vol. 54, no. 3, p. 95, mar 2011. [Online]. Available: Communications Surveys & Tutorials, vol. 20, no. 2, pp. 1492– http://portal.acm.org/citation.cfm?doid=1897852.1897877 1525, 2018. [Online]. Available: https://ieeexplore.ieee.org/document/ [165] C. Raiciu, C. Pluntke, S. Barre, A. Greenhalgh, D. Wischik, 8207422/ and M. Handley, “Data center networking with multipath TCP,” [184] W. Xia, P. Zhao, Y. Wen, and H. Xie, “A survey on data center net- in Proceedings of the Ninth ACM SIGCOMM Workshop on Hot working (dcn): Infrastructure and operations,” IEEE communications Topics in Networks - Hotnets ’10. New York, New York, surveys & tutorials, vol. 19, no. 1, pp. 640–656, 2016. USA: ACM Press, 2010, pp. 1–6. [Online]. Available: http: [185] “SDN helps Big Data to become fault tolerant,” in Big Data //portal.acm.org/citation.cfm?doid=1868447.1868457 and Software Defined Networks. Institution of Engineering and [166] J. Zhou, M. Tewari, M. Zhu, A. Kabbani, L. Poutievski, A. Singh, and Technology, pp. 319–336. [Online]. Available: https://digital-library. A. Vahdat, “WCMP: Weighted cost multipathing for improved fairness theiet.org/content/books/10.1049/pbpc015e{ }ch15 in data centers,” in Proceedings of the Ninth European Conference on [186] W. Bai, K. Chen, S. Hu, K. Tan, and Y. Xiong, “Congestion control Computer Systems. ACM, 2014, p. 5. for high-speed extremely shallow-buffered datacenter networks,” in [167] K. He, E. Rozner, K. Agarwal, Y. J. Gu, W. Felter, J. Carter, and Proceedings of the First Asia-Pacific Workshop on Networking A. Akella, “Ac/dc tcp: Virtual congestion control enforcement for - APNet’17. ACM Press, pp. 29–35. [Online]. Available: http: datacenter networks,” in Proceedings of the 2016 ACM SIGCOMM //dl.acm.org/citation.cfm?doid=3106989.3107003 Conference, ser. SIGCOMM ’16. New York, NY, USA: ACM, 2016, [187] A. Vahdat, M. Al-Fares, N. Farrington, R. N. Mysore, G. Porter, pp. 244–257. [Online]. Available: http://doi.acm.org/10.1145/2934872. and S. Radhakrishnan, “Scale-out networking in the data center,” Ieee 2934903 Micro, vol. 30, no. 4, pp. 29–41, 2010. [168] R. Niranjan Mysore, A. Pamboris, N. Farrington, N. Huang, P. Miri, [188] Y. Zhang and N. Ansari, “On architecture design, congestion noti- S. Radhakrishnan, V. Subramanya, and A. Vahdat, “Portland: A fication, tcp incast and power consumption in data centers,” IEEE scalable fault-tolerant layer 2 data center network fabric,” in Communications Surveys & Tutorials, vol. 15, no. 1, pp. 39–64, 2012. Proceedings of the ACM SIGCOMM 2009 Conference on Data [189] M. Al-Fares, A. Loukissas, and A. Vahdat, “A scalable, commodity data Communication, ser. SIGCOMM 09. New York, NY, USA: center network architecture,” in Proceedings of the ACM SIGCOMM Association for Computing Machinery, 2009, p. 3950. [Online]. 2008 Conference on Data Communication, ser. SIGCOMM 08. New Available: https://doi.org/10.1145/1592568.1592575 York, NY, USA: Association for Computing Machinery, 2008, p. [169] C. Kachris and I. Tomkos, “A Survey on Optical Interconnects 6374. [Online]. Available: https://doi.org/10.1145/1402958.1402967 for Data Centers,” IEEE Communications Surveys & Tutorials, [190] M. Alizadeh and T. Edsall, “On the data path performance of leaf- vol. 14, no. 4, pp. 1021–1036, 2012. [Online]. Available: http: spine datacenter fabrics,” in 2013 IEEE 21st Annual Symposium on //ieeexplore.ieee.org/document/6129370/ High-Performance Interconnects, 2013, pp. 71–74. [170] Y. Li, R. Miao, C. Kim, and M. Yu, “FlowRadar: A Better [191] M. Alizadeh and T. Edsall, “On the data path performance of leaf-spine NetFlow for Data Centers,” in 13th {USENIX} Symposium on datacenter fabrics,” in High-Performance Interconnects (HOTI), 2013 Networked Systems Design and Implementation ({NSDI} 16). IEEE 21st Annual Symposium on. IEEE, 2013, pp. 71–74. Santa Clara, CA: {USENIX} Association, 2016, pp. 311– [192] C. Guo, G. Lu, D. Li, H. Wu, X. Zhang, Y. Shi, C. Tian, Y. Zhang, 324. [Online]. Available: https://www.usenix.org/conference/nsdi16/ and S. Lu, “BCube: a high performance, server-centric network technical-sessions/presentation/li-yuliang architecture for modular data centers,” in Proceedings of the ACM [171] B. Vamanan, J. Hasan, and T. N. Vijaykumar, “Deadline-aware datacen- SIGCOMM 2009 conference on Data communication - SIGCOMM ter tcp (d2tcp),” ACM SIGCOMM Computer Communication Review, ’09. New York, New York, USA: ACM Press, 2009, p. 63. [Online]. vol. 42, no. 4, pp. 115–126, 2012. Available: http://portal.acm.org/citation.cfm?doid=1592568.1592577 [172] C. Wilson, H. Ballani, T. Karagiannis, and A. Rowtron, “Better [193] C. Guo, H. Wu, K. Tan, L. Shi, Y. Zhang, and S. Lu, never than late: Meeting deadlines in datacenter networks,” in ACM “Dcell: a scalable and fault-tolerant network structure for data SIGCOMM Computer Communication Review, vol. 41, no. 4. ACM, centers,” in Proceedings of the ACM SIGCOMM 2008 conference 2011, pp. 50–61. on Data communication - SIGCOMM ’08. New York, New [173] G. Judd, “Attaining the promise and avoiding the pitfalls of {TCP} in York, USA: ACM Press, 2008, p. 75. [Online]. Available: http: the datacenter,” in 12th {USENIX} Symposium on Networked Systems //portal.acm.org/citation.cfm?doid=1402958.1402968 Design and Implementation ({NSDI} 15), 2015, pp. 145–157. [194] A. Singla, C.-Y. Hong, L. Popa, and B. Godfrey, “Jellyfish: Networking [174] S. Liu, H. Xu, and Z. Cai, “Low latency datacenter networking: A Data Centers Randomly,” undefined, 2011. short survey,” arXiv preprint arXiv:1312.3455, 2013. [195] L. Huang, Q. Jia, X. Wang, S. Yang, and B. Li, “PCube: Improving [175] M. Al-Fares, S. Radhakrishnan, B. Raghavan, N. Huang, and A. Vahdat, Power Efficiency in Data Center Networks,” in 2011 IEEE 4th “Hedera: Dynamic Flow Scheduling for Data Center Networks.” in International Conference on Cloud Computing. IEEE, jul 2011, NSDI, vol. 10, 2010, p. 19. pp. 65–72. [Online]. Available: http://ieeexplore.ieee.org/document/ [176] X. Tao, K. Ota, M. Dong, W. Borjigin, H. Qi, and K. Li, “Congestion- 6008694/ aware traffic allocation for geo-distributed data centers,” IEEE Trans- [196] M. Alizadeh, A. Kabbani, T. Edsall, B. Prabhakar, A. Vahdat, actions on Cloud Computing, 2020. and M. Yasuda, “Less is More: Trading a little Bandwidth [177] S. Jain, A. Kumar, S. Mandal, J. Ong, L. Poutievski, A. Singh, for Ultra-Low Latency in the Data Center,” Tech. Rep., 2012. S. Venkata, J. Wanderer, J. Zhou, M. Zhu et al., “B4: Experience with a [Online]. Available: https://www.usenix.org/system/files/conference/ globally-deployed software defined wan,” ACM SIGCOMM Computer nsdi12/nsdi12-final187.pdf Communication Review, vol. 43, no. 4, pp. 3–14, 2013. [197] L. Chen, K. Chen, W. Bai, and M. Alizadeh, “Scheduling mix-flows in [178] S. Huang, D. Dong, and W. Bai, “Congestion control in high-speed commodity datacenters with karuna,” in Proceedings of the 2016 ACM lossless data center networks: A survey,” Future Generation Computer SIGCOMM Conference, 2016, pp. 174–187. Systems, vol. 89, pp. 360–374, 2018. [198] S. Hu, W. Bai, B. Qiao, K. Chen, and K. Tan, “Augmenting [179] S. Wang, J. Zhang, T. Huang, J. Liu, T. Pan, and Y. Liu, “A Survey proactive congestion control with aeolus,” in Proceedings of the 2nd of Coflow Scheduling Schemes for Data Center Networks,” IEEE Asia-Pacific Workshop on Networking - APNet ’18. ACM Press, Communications Magazine, vol. 56, no. June, pp. 179–185, 2018. pp. 22–28. [Online]. Available: http://dl.acm.org/citation.cfm?doid= [180] P. Sreekumari and J.-I. Jung, “Transport protocols for data 3232565.3232567 center networks: a survey of issues, solutions and challenges,” [199] W. Cheng, F. Ren, W. Jiang, K. Qian, T. Zhang, and R. Shu, “Isolating Photonic Network Communications, vol. 31, pp. 112–128, 2016. mice and elephant in data centers,” CoRR, vol. abs/1605.07732, 2016. [Online]. Available: https://link.springer.com/content/pdf/10.1007{%} [Online]. Available: http://arxiv.org/abs/1605.07732 2Fs11107-015-0550-y.pdf [200] A. Roy, H. Zeng, J. Bagga, G. Porter, and A. C. Snoeren, “Inside the [181] Jiao Zhang, Fengyuan Ren, and Chuang Lin, “Survey on transport social network’s (datacenter) network,” in ACM SIGCOMM Computer control in data center networks,” IEEE Network, vol. 27, no. 4, pp. Communication Review, vol. 45, no. 4. ACM, 2015, pp. 123–137. 22–26, 2013. [Online]. Available: http://ieeexplore.ieee.org/document/ [201] T. Benson, A. Akella, and D. A. Maltz, “Network traffic characteristics 6574661/ of data centers in the wild,” in Proceedings of the 10th ACM SIGCOMM [182] S. U. Khan and A. Y. Zomaya, Handbook on Data Centers. Springer, conference on Internet measurement. ACM, 2010, pp. 267–280. 2015. [202] V. Jeyakumar, M. Alizadeh, D. Maz`ı Eres, B. Prabhakar, C. Kim, and [183] M. Noormohammadpour and C. S. Raghavendra, “Datacenter A. Greenberg, “EyeQ: Practical Network Performance Isolation at the Traffic Control: Understanding Techniques and Tradeoffs,” IEEE Edge,” Tech. Rep., 2013. [Online]. Available: http://jvimal.github. READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 26

[203] B. Thiruvenkatam and M. B. M. Krishnan, “Survey [220] Jun Zhang, Jiangtao Wen, Jingyuan Wang, and Wenlai Zhao, on TCP Incast Problem in Datacenter Networks,” In- “TCP-FITDC: An adaptive approach to TCP incast avoidance for data ternational Journal of Control Theory and Applications, center applications,” in 2013 International Conference on Computing, 2016. [Online]. Available: https://pdfs.semanticscholar.org/0beb/ Networking and Communications (ICNC). IEEE, jan 2013, pp. f2e5e4e1e5d9d620cd04a4d0d892a8b402ab.pdf 1048–1052. [Online]. Available: http://ieeexplore.ieee.org/document/ [204] V. Vasudevan, A. Phanishayee, H. Shah, E. Krevat, D. G. Andersen, 6504236/ G. R. Ganger, G. A. Gibson, and B. Mueller, Safe and Effective [221] T. Das and K. M. Sivalingam, “TCP improvements for data center Fine-grained TCP Retransmissions for Datacenter Communication, networks,” in 2013 Fifth International Conference on Communication 2009. [Online]. Available: https://www.cs.cmu.edu/afs/cs.cmu.edu/ Systems and Networks (COMSNETS). IEEE, jan 2013, pp. 1–10. Web/People/ekrevat/docs/SIGCOMMIncast.pdf [Online]. Available: http://ieeexplore.ieee.org/document/6465539/ [205] R. P. Tahiliani, M. P. Tahiliani, and K. C. Sekaran, “TCP Congestion [222] Jiao Zhang, Fengyuan Ren, Li Tang, and Chuang Lin, “Taming Control in Data Center Networks,” in Handbook on Data Centers. TCP incast throughput collapse in data center networks,” in New York, NY: Springer New York, 2015, pp. 485–505. [Online]. 2013 21st IEEE International Conference on Network Protocols Available: http://link.springer.com/10.1007/978-1-4939-2092-1{ }15 (ICNP). IEEE, oct 2013, pp. 1–10. [Online]. Available: http: [206] A. Singh, J. Ong, A. Agarwal, G. Anderson, A. Armistead, R. Bannon, //ieeexplore.ieee.org/document/6733609/ S. Boving, G. Desai, B. Felderman, P. Germano et al., “Jupiter rising: A [223] L. Cheng, C.-L. Wang, and F. C. M. Lau, “PVTCP: Towards decade of clos topologies and centralized control in google’s datacenter practical and effective congestion control in virtualized datacenters,” network,” ACM SIGCOMM computer communication review, vol. 45, in 2013 21st IEEE International Conference on Network Protocols no. 4, pp. 183–197, 2015. (ICNP). IEEE, oct 2013, pp. 1–10. [Online]. Available: http: [207] S. Kandula, S. Sengupta, A. Greenberg, P. Patel, and R. Chaiken, “The //ieeexplore.ieee.org/document/6733580/ nature of data center traffic: measurements & analysis,” in Proceedings [224] J. Huang, Y. Huang, J. Wang, and T. He, “Packet slicing for highly of the 9th ACM SIGCOMM conference on Internet measurement, 2009, concurrent tcps in data center networks with cots switches,” in Net- pp. 202–208. work Protocols (ICNP), 2015 IEEE 23rd International Conference on. [208] M. Alipio, N. M. Tiglao, F. Bokhari, and S. Khalid, “Tcp incast IEEE, 2015, pp. 22–31. solutions in data center networks: A classification and survey,” Journal [225] J. Hwang, J. Yoo, and N. Choi, “Deadline and Incast Aware TCP for of Network and Computer Applications, vol. 146, p. 102421, 2019. cloud data center networks,” Computer Networks, vol. 68, pp. 20–34, [209] M. Alizadeh, A. Kabbani, R. Pan, B. S. Prabhakar, B. Atikoglu, 2014. [Online]. Available: http://dx.doi.org/10.1016/j.comnet.2013.12. A. Lakshmikantha, B. Prabhakar, and M. Seaman, “Data Center 002 Transport Mechanisms: Congestion Control Theory and IEEE [226] L. Xu, K. Xu, Y. Jiang, F. Ren, and H. Wang, “Throughput optimization Standardization,” 2008. [Online]. Available: https://www.researchgate. of TCP incast congestion control in large-scale datacenter networks,” net/publication/224393025 Computer Networks, vol. 124, pp. 46–60, sep 2017. [Online]. Available: [210] P. Devkota and A. N. Reddy, “Performance of quantized congestion https://linkinghub.elsevier.com/retrieve/pii/S1389128617302475 notification in tcp incast scenarios of data centers,” in 2010 IEEE [227] H. Wu, Z. Feng, C. Guo, and Y. Zhang, “ICTCP: Incast International Symposium on Modeling, Analysis and Simulation of Congestion Control for TCP in Data Center Networks,” Tech. Rep., Computer and Systems. IEEE, 2010, pp. 235– 2010. [Online]. Available: http://conferences.sigcomm.org/co-next/ 243. 2010/CoNEXT{ }papers/13-Wu.pdf [211] A. Kabbani, M. Alizadeh, M. Yasuda, R. Pan, and B. Prabhakar, “AF- [228] H. Wang and H. Shen, “Proactive incast congestion control in a QCN: Approximate Fairness with Quantized Congestion Notification datacenter serving web applications,” in IEEE INFOCOM 2018 - IEEE for Multi-tenanted Data Centers,” Tech. Rep., 2010. [Online]. Conference on Computer Communications, April 2018, pp. 19–27. Available: https://people.csail.mit.edu/alizadeh/papers/afqcn-hoti10.pdf [229] H. Rezaei, M. U. Chaudhry, H. Almasi, and B. Vamanan, “Icon: Incast [212] C. Ruan, J. Wang, W. Jiang, J. Huang, G. Min, and Y. Pan, “FSQCN: congestion control using packet pacing in datacenter networks,” in 2019 Fast and simple quantized congestion notification in data center 11th International Conference on Communication Systems Networks ethernet,” Journal of Network and Computer Applications, vol. 83, (COMSNETS), 2019, pp. 125–132. pp. 53–62, apr 2017. [Online]. Available: https://linkinghub.elsevier. com/retrieve/pii/S1084804517300450 [230] M. Handley, A. W. Moore, G. Antichi, C. Raiciu, A. Agache, ´ [213] M. Podlesny and C. Williamson, “An application-level solution for the A. Voinescu, and M. Wojcik, “Re-architecting datacenter networks tcp-incast problem in data center networks,” in 2011 IEEE Nineteenth and stacks for low latency and high performance,” 2017. [Online]. IEEE International Workshop on Quality of Service. IEEE, 2011, pp. Available: https://doi.org/10.1145/3098822.3098825 1–3. [231] P. Prakash, A. Dixit, Y. C. Hu, and R. Kompella, “The {TCP} outcast [214] H.-W. Tseng, W.-C. Chang, I.-H. Peng, and P.-S. Chen, “A cross-layer problem: Exposing unfairness in data center networks,” in Presented as flow schedule with dynamical grouping for mitigating larger-scale part of the 9th {USENIX} Symposium on Networked Systems Design tcp incast,” SIGAPP Appl. Comput. Rev., vol. 17, no. 1, pp. 15–25, and Implementation ({NSDI} 12), 2012, pp. 413–426. May 2017. [Online]. Available: http://doi.acm.org/10.1145/3090058. [232] R. Mari. (2018) In-band network telemetry - a powerful analytics 3090061 framework for future data center. [215] C. Ruan, T. Zhang, H. Li, and Y. Xi, “Nonlinear control analysis [233] R. B. Basat, S. Ramanathan, Y. Li, G. Antichi, M. Yu, and M. Mitzen- of quantized congestion notification in data center networks,” IEEE macher, “Pint: Probabilistic in-band network telemetry,” arXiv preprint Access, 2020. arXiv:2007.03731, 2020. [216] Y. Zhang and N. Ansari, “On mitigating TCP Incast in Data Center [234] Y. Li, R. Miao, H. H. Liu, Y. Zhuang, F. Feng, L. Tang, Z. Cao, Networks,” in 2011 Proceedings IEEE INFOCOM. IEEE, apr 2011, M. Zhang, F. Kelly, M. Alizadeh et al., “Hpcc: High precision pp. 51–55. [Online]. Available: http://ieeexplore.ieee.org/document/ congestion control,” in Proceedings of the ACM Special Interest Group 5935217/ on Data Communication, 2019, pp. 44–58. [217] J. Hwang, J. Yoo, and N. Choi, “IA-TCP: A rate based incast- [235] Intel dpdk: Data plane development kit. [Online]. Available: avoidance algorithm for TCP in data center networks,” in 2012 http://dpdk.org/ IEEE International Conference on Communications (ICC). IEEE, [236] E. Jeong, S. Wood, M. Jamshed, H. Jeong, S. Ihm, D. Han, and jun 2012, pp. 1292–1296. [Online]. Available: http://ieeexplore.ieee. K. Park, “mtcp: a highly scalable user-level {TCP} stack for multicore org/document/6364079/ systems,” in 11th {USENIX} Symposium on Networked Systems Design [218] B. Vamanan, J. Hasan, and T. N. Vijaykumar, Deadline-Aware and Implementation ({NSDI} 14), 2014, pp. 489–502. Datacenter TCP (D 2 TCP), 2012. [Online]. Available: [237] N. Jiang, L. Dennison, and W. J. Dally, “Network endpoint http://delivery.acm.org/10.1145/2350000/2342388/p115-vamanan. congestion control for fine-grained communication,” in Proceedings pdf?ip=129.138.252.29{&}id=2342388{&}acc=PUBLIC{&}key= of the International Conference for High Performance Computing, F82E6B88364EF649.F6C3C7FECC185049.4D4702B0C3E38B35. Networking, Storage and Analysis on - SC ’15. ACM Press, pp. 1– 4D4702B0C3E38B35{&}{ }{ }acm{ }{ }=1547501299{ } 12. [Online]. Available: http://dl.acm.org/citation.cfm?doid=2807591. a1fe86371d55c071ff3e53652d333519 2807600 [219] H. Wu, J. J. , G. Lu, C. Guo, Y. Xiong, [238] M. Alizadeh, S. Yang, M. Sharif, S. Katti, N. Mckeown, and Y. Zhang, Tuning ECN for Data Center Networks, B. Prabhakar, and S. Shenker, “pFabric: Minimal Near-Optimal 2012. [Online]. Available: https://www.microsoft.com/en-us/research/ Datacenter Transport,” Tech. Rep., 2013. [Online]. Available: wp-content/uploads/2016/02/conext20-wu.pdf https://www.ndsl.kaist.edu/{∼}kyoungsoo/ee817/papers/pfabric.pdf READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 27

[239] M. T. Arashloo, M. Ghobadi, J. Rexford, and D. Walker, [258] A. Dixit, P. Prakash, Y. C. Hu, and R. R. Kompella, “On the impact of “HotCocoa: Hardware congestion control abstractions,” in Proceedings packet spraying in data center networks,” in 2013 Proceedings IEEE of the 16th ACM Workshop on Hot Topics in Networks - INFOCOM. IEEE, 2013, pp. 2130–2138. HotNets-XVI. ACM Press, pp. 108–114. [Online]. Available: [259] Y. Cao, M. Xu, X. Fu, and E. Dong, “Explicit Multipath Congestion http://dl.acm.org/citation.cfm?doid=3152434.3152457 Control for Data Center Networks,” 2013. [Online]. Available: [240] Y. Zhu, M. Ghobadi, V. Misra, and J. Padhye, “ECN or Delay: http://dx.doi.org/10.1145/2535372.2535384. Lessons Learnt from Analysis of DCQCN and TIMELY,” 2016. [260] H. Xu and B. Li, “Tinyflow: Breaking elephants down into mice in [Online]. Available: http://dx.doi.org/10.1145/2999572.2999593 data center networks,” in 2014 IEEE 20th International Workshop on [241] J. Wang, J. Wen, C. Li, Z. Xiong, and Y. Han, “DC-Vegas: A delay- Local & Metropolitan Area Networks (LANMAN). IEEE, 2014, pp. based TCP congestion control algorithm for datacenter applications,” 1–6. Journal of Network and Computer Applications, vol. 53, pp. 103–114, [261] M. Alizadeh, T. Edsall, S. Dharmapurikar, R. Vaidyanathan, K. Chu, 2015. [Online]. Available: http://dx.doi.org/10.1016/j.jnca.2015.03.010 A. Fingerhut, V. T. Lam, F. Matus, R. Pan, N. Yadav et al., “Conga: [242] S. Ghorbani, Z. Yang, P. B. Godfrey, Y. Ganjali, A. Firoozshahian Distributed congestion-aware load balancing for datacenters,” in Pro- Intel, and A. Firoozshahian, “DRILL: Micro Load Balancing for Low- ceedings of the 2014 ACM conference on SIGCOMM, 2014, pp. 503– latency Data Center Networks,” vol. 14, 2017. [Online]. Available: 514. https://doi.org/http://dx.doi.org/10.1145/3098822.3098839 [262] B. Cronkite-Ratcliff, A. Bergman, S. Vargaftik, M. Ravi, N. Mckeown, [243] Q. Zhang, V. Liu, H. Zeng, and A. Krishnamurthy, “High-Resolution I. Abraham, and I. Keslassy, “Virtualized Congestion Control,” Measurement of Data Center Microbursts,” vol. 8, 2017. [Online]. Proceedings of the 2016 ACM SIGCOMM Conference, pp. 230—-243, Available: https://doi.org/10.1145/3131365.3131375 2016. [Online]. Available: http://dx.doi.org/10.1145/2934872.2934889 [244] I. Cho, K. Jang, and D. Han, “Credit-Scheduled Delay-Bounded [263] G. Chen, Y. Lu, Y. Meng, B. Li, K. Tan, D. Pei, P. Cheng, L. L. Luo, Congestion Control for Datacenters,” vol. 14, 2017. [Online]. Y. Xiong, X. Wang et al., “Fast and cautious: Leveraging multi-path Available: https://doi.org/10.1145/3098822.3098840 diversity for transport loss recovery in data centers,” in 2016 {USENIX} [245] B. Montazeri, Y. Li, M. Alizadeh, and J. Ousterhout, “Homa: Annual Technical Conference ({USENIX}{ATC} 16), 2016, pp. 29–42. A Receiver-Driven Low-Latency Transport Protocol Using Network [264] W. Zhangy, D. Lingy, Y. Zhangy, P. Liy, and G. Cheny, “Achieving Priorities (Complete Version),” Tech. Rep., 2018. [Online]. Available: optimal edge-based congestion-aware load balancing in data center https://arxiv.org/pdf/1803.09615.pdf networks,” in 2020 IFIP Networking Conference (Networking). IEEE, [246] Y. Lu, X. Fan, and L. Qian, “Dynamic ECN marking threshold algo- 2020, pp. 109–117. rithm for TCP congestion control in data center networks,” Computer [265] A. Munir, G. Baig, S. M. Irteza, I. A. Qazi, A. X. Liu, and F. R. Dogar, Communications, vol. 129, pp. 197–208, sep 2018. [Online]. Available: “Friends, not foes: synthesizing existing transport strategies for data https://linkinghub.elsevier.com/retrieve/pii/S014036641731263X center networks,” ACM SIGCOMM Computer Communication Review, [247] W. Bai, L. Chen, K. Chen, and H. Wu, “Enabling ecn in multi-service vol. 44, no. 4, pp. 491–502, 2015. multi-queue data centers.” in NSDI, 2016, pp. 537–549. [266] W. Bai, L. Chen, K. Chen, D. Han, C. Tian, and H. Wang, [248] T. Zhang, J. Wang, J. Huang, Y. Huang, J. Chen, and Y. Pan, “Information-agnostic flow scheduling for commodity data centers,” “Adaptive marking threshold method for delay-sensitive TCP in data in 12th {USENIX} Symposium on Networked Systems Design and center network,” 2016. [Online]. Available: http://dx.doi.org/10.1016/ Implementation ({NSDI} 15), 2015, pp. 455–468. j.jnca.2015.10.012 [267] V. N. Padmanabhan and R. H. Katz, “Tcp fast start: A technique for [249] W. Bai, K. Chen, L. Chen, C. Kim, and H. Wu, “Enabling speeding up web transfers,” 1998. ECN over Generic Packet Scheduling,” 2016. [Online]. Available: [268] N. Hu and P. Steenkiste, “Improving tcp startup performance using http://dx.doi.org/10.1145/2999572.2999575 active measurements: algorithm and evaluation,” in 11th IEEE Inter- [250] Y. Zhu, H. Eran, D. Firestone, C. Guo, M. Lipshteyn, Y. Liron, national Conference on Network Protocols, 2003. Proceedings. IEEE, J. Padhye, S. Raindel, M. H. Yahia, M. Zhang, M. . Mellanox, and 2003, pp. 107–118. U. C. Santa Barbara, “Congestion Control for Large-Scale RDMA [269] J. C. Hoe, “Improving the start-up behavior of a congestion control Deployments,” ACM SIGCOMM Computer Communication Review, scheme for tcp,” ACM SIGCOMM Computer Communication Review, pp. 523—-536, 2015. [Online]. Available: http://dx.doi.org/10.1145/ vol. 26, no. 4, pp. 270–280, 1996. 2785956.2787484 [270]J.R uth¨ and O. Hohlfeld, “Demystifying tcp initial window config- [251] M. Alizadeh, S. Yang, S. Katti, N. Mckeown, B. Prabhakar, and urations of content distribution networks,” in 2018 Network Traffic S. Shenker, Deconstructing Datacenter Packet Transport, 2012. Measurement and Analysis Conference (TMA). IEEE, 2018, pp. 1–8. [Online]. Available: http://citeseerx.ist.psu.edu/viewdoc/download? [271]J.R uth,¨ I. Kunze, and O. Hohlfeld, “Tcps initial windowdeployment doi=10.1.1.676.1878{&}rep=rep1{&}type=pdf in the wild and its impact on performance,” IEEE Transactions on [252] P. X. Gao, A. Narayan, G. Kumar, R. Agarwal, S. Ratnasamy, and Network and Service Management, vol. 16, no. 2, pp. 389–402, 2019. S. Shenker, “phost: Distributed near-optimal datacenter transport over [272] N. Dukkipati, T. Refice, Y. Cheng, J. Chu, T. Herbert, A. Agarwal, commodity network fabric,” in Proceedings of the 11th ACM Confer- A. Jain, and N. Sutin, “An argument for increasing tcp’s initial con- ence on Emerging Networking Experiments and Technologies, 2015, gestion window,” ACM SIGCOMM Computer Communication Review, pp. 1–12. vol. 40, no. 3, pp. 26–33, 2010. [253] J. Cao, R. Xia, P. Yang, C. Guo, G. Lu, L. Yuan, Y. Zheng, [273] S. Radhakrishnan, Y. Cheng, J. Chu, A. Jain, and B. Raghavan, “Tcp H. Wu, Y. Xiong, and D. Maltz, “Per-packet Load-balanced, fast open,” in Proceedings of the Seventh COnference on emerging Low-Latency Routing for Clos-based Data Center Networks,” Networking EXperiments and Technologies, 2011, pp. 1–12. Proceedings of the ninth ACM conference on Emerging networking [274] S. Kodama, M. Shimamura, and K. Iida, “Initial cwnd determination experiments and technologies, pp. 49—-60, 2013. [Online]. Available: method for fast startup tcp algorithms,” in 2011 IEEE Nineteenth IEEE http://dx.doi.org/10.1145/2535372.2535375. International Workshop on Quality of Service. IEEE, 2011, pp. 1–3. [254] A. Kabbani, B. Vamanan, J. Hasan, and F. Duchene, “FlowBender: [275] X. Nie, Y. Zhao, Z. Li, G. Chen, K. Sui, J. Zhang, Z. Ye, and Flow-level Adaptive Routing for Improved Latency and Throughput D. Pei, “Dynamic tcp initial windows and congestion control schemes in Datacenter Networks General Terms,” Proceedings of the through reinforcement learning,” IEEE Journal on Selected Areas in 10th ACM International on Conference on emerging Networking Communications, vol. 37, no. 6, pp. 1231–1247, 2019. Experiments and Technologies, pp. 149—-160, 2014. [Online]. [276] R. Xie, X. Jia, and K. Wu, “Adaptive online decision method for initial Available: http://dx.doi.org/10.1145/2674005.2674985. congestion window in 5g mobile edge computing using deep reinforce- [255] T. Yang, J. Li, Y. Zhao, K. Yang, H. Wang, J. Jiang, Y. Zhang, and ment learning,” IEEE Journal on Selected Areas in Communications, N. Zhang, “Qcluster: Clustering packets for flowscheduling,” arXiv 2019. preprint arXiv:2006.14884, 2020. [277] S. Memon, J. Huang, and H. Saajid, “Gentle slow start to alleviate tcp [256] K. He, E. Rozner, K. Agarwal, W. Felter, J. Carter, and A. Akella, incast in data center networks,” Symmetry, vol. 11, no. 2, p. 138, 2019. “Presto: Edge-based load balancing for fast datacenter networks,” ACM [278] S. Grant, A. Yelam, M. Bland, and A. C. Snoeren, “Smartnic perfor- SIGCOMM Computer Communication Review, vol. 45, no. 4, pp. 465– mance isolation with fairnic: Programmable networking for the cloud.” 478, 2015. [279] D. Firestone, “Smartnic: Fpga innovation in ocs servers for microsoft [257] “Load balancing with flowlet granularity,” 2016. [On- azure,” OCP US Summit, 2016. line]. Available: https://patentimages.storage.googleapis.com/ef/23/f0/ [280] Y. Le, H. Chang, S. Mukherjee, L. Wang, A. Akella, M. M. Swift, and 2322927e9d1be1/US9923828.pdf T. Lakshman, “Uno: uniflying host and smart nic offload for flexible READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 28

packet processing,” in Proceedings of the 2017 Symposium on Cloud emerging Networking EXperiments and Technologies, p. 13, 2017. Computing, 2017, pp. 506–519. [Online]. Available: https://doi.org/10.1145/3143361.3143382 [281] Z. Yuanwang, “100g ethernet technology and applications,” ZTE Com- [301] A. Kalia, M. Kaminsky, and D. G. Andersen, “Fasst: Fast, scalable and munications, vol. 7, no. 4, pp. 54–57, 2020. simple distributed transactions with two-sided ({RDMA}) datagram [282] E. Maniloff, S. Gareau, and M. Moyer, “400g and beyond: Coherent rpcs,” in 12th {USENIX} Symposium on Operating Systems Design evolution to high-capacity inter data center links,” in 2019 Optical and Implementation ({OSDI} 16), 2016, pp. 185–201. Fiber Communications Conference and Exhibition (OFC). IEEE, [302] J. Escudero-Sahuquillo, P. J. Garcia, F. J. Quiles, G. Maglione- 2019, pp. 1–3. Mathey, and J. Duato, “Feasible enhancements to congestion control [283] J. Ousterhout, P. Agrawal, D. Erickson, C. Kozyrakis, J. Leverich, in InfiniBand-based networks,” Journal of Parallel and Distributed D. Mazieres,` S. Mitra, A. Narayanan, G. Parulkar, M. Rosenblum et al., Computing, vol. 112, pp. 35–52, feb 2018. [Online]. Available: “The case for ramclouds: scalable high-performance storage entirely in https://linkinghub.elsevier.com/retrieve/pii/S0743731517302629 dram,” ACM SIGOPS Operating Systems Review, vol. 43, no. 4, pp. [303] D. Giannopoulos, N. Chrysos, E. Mageiropoulos, G. Vardas, 92–105, 2010. L. Tzanakis, and M. Katevenis, “Accurate Congestion Control [284] C. Mitchell, Y. Geng, and J. Li, “Using one-sided {RDMA} reads to for RDMA Transfers,” in 2018 Twelfth IEEE/ACM International build a fast, cpu-efficient key-value store,” in 2013 {USENIX} Annual Symposium on Networks-on-Chip (NOCS). IEEE, oct 2018, pp. 1–8. Technical Conference ({USENIX}{ATC} 13), 2013, pp. 103–114. [Online]. Available: https://ieeexplore.ieee.org/document/8512155/ [285] A. Dragojevic,´ D. Narayanan, M. Castro, and O. Hodson, “Farm: Fast [304] Y. Le, B. Stephens, A. Singhvi, A. Akella, and M. M. Swift, remote memory,” in 11th {USENIX} Symposium on Networked Systems “RoGUE: RDMA over Generic Unconverged Ethernet,” Proceedings Design and Implementation ({NSDI} 14), 2014, pp. 401–414. of the ACM Symposium on Cloud Computing, pp. 225—-236, 2018. [286] A. Kalia, M. Kaminsky, and D. G. Andersen, “Using RDMA efficiently [Online]. Available: https://doi.org/10.1145/3267809.3267826 for key-value services,” in Proceedings of the 2014 ACM conference [305] VMware. (2020) Rdma (remote direct memory access). [Online]. Avail- on SIGCOMM - SIGCOMM ’14, 2014, pp. 295–306. [Online]. able: https://storagehub.vmware.com/t/vsphere-6-7-core-storage-1/ Available: http://dl.acm.org/citation.cfm?doid=2619239.2626299 rdma-support-in-vsphere/ [287] M. Gusat, D. Craddock, W. Denzel, T. Engbersen, N. Ni, G. Pfister, [306] J. Xue, M. U. Chaudhry, B. Vamanan, T. N. Vijaykumar, and W. Rooney, and J. Duato, “Congestion control in InfiniBand networks,” M. Thottethodi, “Dart: Divide and specialize for fast response to in 13th Symposium on High Performance Interconnects (HOTI’05). congestion in RDMA-based datacenter networks.” [Online]. Available: IEEE, pp. 158–159. [Online]. Available: http://ieeexplore.ieee.org/ http://arxiv.org/abs/1805.11158 lpdocs/epic03/wrapper.htm?arnumber=1544592 [307] Y. Lu, G. Chen, B. Li, K. Tan, Y. Xiong, P. Cheng, J. Zhang, E. Chen, [288] S. Sur, U. K. R. Bondhugula, A. Mamidala, H. W. Jin, and and T. Moscibroda, “Multi-path transport for {RDMA} in datacenters,” D. K. Panda, “High performance RDMA based all-to-all broadcast in 15th {USENIX} Symposium on Networked Systems Design and for InfiniBand clusters,” in High Performance Computing HiPC Implementation ({NSDI} 18), 2018, pp. 357–371. 2005, D. A. Bader, M. Parashar, V. Sridhar, and V. K. Prasanna, [308] A. Mushtaq, R. Mittal, J. McCauley, M. Alizadeh, S. Ratnasamy, Eds. Springer Berlin Heidelberg, vol. 3769, pp. 148–157. [Online]. and S. Shenker, “Datacenter congestion control: Identifying what is Available: http://link.springer.com/10.1007/11602569 19 essential and making it practical,” ACM SIGCOMM Computer Com- [289] W. Yu, N. S. Rao, P. Wyckoff, and J. S. Vetter, “Performance of RDMA- munication Review, vol. 49, no. 3, pp. 32–38, 2019. capable storage protocols on wide-area network,” in Proceedings of the [309] P. Di, B. Claudio, C. Politecnico, D. Torino, M. Gerla, M. Y. 2008 3rd Petascale Data Storage Workshop, PDSW 2008, 2008. Sanadidi, and R. Wang, “TCP Westwood: Bandwidth Estimation [290] W. Jiang, F. Ren, and J. Wang, “Survey on link layer congestion for Enhanced Transport over Wireless Links Saverio Mascolo,” management of lossless switching fabric,” Computer Standards & Tech. Rep., 2001. [Online]. Available: http://cs-pub.bu.edu/groups/nrg/ Interfaces, vol. 57, pp. 31–35, mar 2018. [Online]. Available: readinglist/mascolo-mobicom01.pdf https://linkinghub.elsevier.com/retrieve/pii/S0920548917301873 [310] J. Wang, J. Wen, J. Zhang, Z. Xiong, and Y. Han, “TCP-FIT: An [291] X. Ouyang, R. Rajachandrasekar, X. Besseron, and D. K. Panda, improved TCP algorithm for heterogeneous networks,” 2016. [Online]. “High performance pipelined process migration with RDMA,” in Available: http://dx.doi.org/10.1016/j.jnca.2016.03.020 2011 11th IEEE/ACM International Symposium on Cluster, Cloud [311] K. Winstein, A. Sivaraman, and H. Balakrishnan, “Stochastic Forecasts and Grid Computing. IEEE, pp. 314–323. [Online]. Available: Achieve High Throughput and Low Delay over Cellular Networks,” http://ieeexplore.ieee.org/document/5948622/ undefined, 2013. [292] Y. Ren, T. Li, D. Yu, S. Jin, and T. Robertazzi, “Middleware support [312] Y. Zaki, T. Potsch,¨ J. Chen, L. Subramanian, and C. Gorg,¨ for RDMA-based data transfer in cloud computing,” in Proceedings of “Adaptive Congestion Control for Unpredictable Cellular Networks,” the 2012 IEEE 26th International Parallel and Distributed Processing in Proceedings of the 2015 ACM Conference on Special Interest Symposium Workshops, IPDPSW 2012, 2012, pp. 1095–1103. Group on Data Communication - SIGCOMM ’15. New York, New [293] C. Binnig, A. Crotty, A. Galakatos, T. Kraska, and E. Zamanian, York, USA: ACM Press, 2015, pp. 509–522. [Online]. Available: “The end of slow networks: It’s time for a redesign,” arXiv preprint http://dl.acm.org/citation.cfm?doid=2785956.2787498 arXiv:1504.01048, 2015. [313] Y. Guo, F. Qian, Q. A. Chen, Z. M. Mao, and S. Sen, “Understanding [294] C. Wang, J. Jiang, X. Chen, N. Yi, and H. Cui, “APUS: fast and on-device bufferbloat for cellular upload,” in Proceedings of the 2016 scalable paxos on RDMA,” in Proceedings of the 2017 Symposium on Internet Measurement Conference, 2016, pp. 303–317. Cloud Computing - SoCC ’17. ACM Press, pp. 94–107. [Online]. [314] J. Huang, F. Qian, Y. Guo, Y. Zhou, Q. Xu, Z. Morley Mao, Available: http://dl.acm.org/citation.cfm?doid=3127479.3128609 S. Sen, and O. Spatscheck, An In-depth Study of LTE: Effect of [295] E. Zamanian, J. Shun, C. Binnig, and T. Kraska, “Chiller: Contention- Network Protocol and Application Behavior on Performance, 2013. centric transaction execution and data partitioning for fast networks.” [Online]. Available: https://conferences.sigcomm.org/sigcomm/2013/ [Online]. Available: http://arxiv.org/abs/1811.12204 papers/sigcomm/p363.pdf [296] A. Sriraman, S. Liu, S. Gunbay, S. Su, and T. F. Wenisch, [315] H. Jiang, Y. Wang, K. Lee, and I. Rhee, Tackling “Deconstructing the tail at scale effect across network protocols.” Bufferbloat in 3G/4G Networks, 2012. [Online]. Available: [Online]. Available: http://arxiv.org/abs/1701.03100 http://delivery.acm.org/10.1145/2400000/2398810/p329-jiang.pdf?ip= [297] B. Yi, J. Xia, L. Chen, and K. Chen, “Towards zero copy dataflows 129.138.252.29{&}id=2398810{&}acc=ACTIVESERVICE{&}key= using RDMA,” in Proceedings of the SIGCOMM Posters and Demos on F82E6B88364EF649.F6C3C7FECC185049.4D4702B0C3E38B35. - SIGCOMM Posters and Demos ’17. ACM Press, pp. 28–30. [Online]. 4D4702B0C3E38B35{&}{ }{ }acm{ }{ }=1548049210{ } Available: http://dl.acm.org/citation.cfm?doid=3123878.3131975 566677d16971708eea7c4ba1cab09945 [298] E. G. Gran, M. Eimot, S.-A. Reinemo, T. Skeie, O. Lysne, L. P. Huse, [316] M. Zhang, M. Polese, M. Mezzavilla, J. Zhu, S. Rangan, S. Panwar, and and G. Shainer, “First experiences with congestion control in infiniband M. Zorzi, “Will TCP work in mmWave 5G Cellular Networks?” Tech. hardware,” in 2010 IEEE International Symposium on Parallel & Rep., 2018. [Online]. Available: https://arxiv.org/pdf/1806.05783.pdf Distributed Processing (IPDPS). IEEE, 2010, pp. 1–12. [317] H. Jiang, Y. Wang, K. Lee, and I. Rhee, “DRWA: A Receiver-Centric [299] C. Guo, H. Wu, Z. Deng, G. Soni, J. Ye, J. Padhye, and M. L. Solution to Bufferbloat in Cellular Networks,” IEEE Transactions Microsoft, “RDMA over Commodity Ethernet at Scale,” 2016. on Mobile Computing, vol. 15, no. 11, pp. 2719–2734, nov 2016. [Online]. Available: http://dx.doi.org/10.1145/2934872.2934908 [Online]. Available: http://ieeexplore.ieee.org/document/7368189/ [300] S. Hu, Y. Zhu, P. Cheng, C. Guo, K. Tan, J. Padhye, and [318] P. Goyal, M. Alizadeh, and H. Balakrishnan, “Rethinking Congestion K. Chen, “Tagger: Practical PFC Deadlock Prevention in Data Center Control for Cellular Networks,” 2017. [Online]. Available: https: Networks,” Proceedings of the 13th International Conference on //doi.org/10.1145/3152434.3152437 READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 29

[319] W. K. Leong, Z. Wang, and B. Leong, “TCP Congestion Control [339] S. Kopparty, S. V. Krishnamurthy, M. Faloutsos, and S. K. Tripathi, Beyond Bandwidth-Delay Product for Mobile Cellular Networks,” “Split tcp for mobile ad hoc networks,” in Global 2017. [Online]. Available: https://doi.org/10.1145/3143361.3143378 Conference, 2002. GLOBECOM’02. IEEE, vol. 1. IEEE, 2002, pp. [320] W. L. Tan, F. Lam, and W. C. Lau, “An empirical study on 3g 138–142. network capacity and performance,” in IEEE INFOCOM 2007-26th [340] J. Liu and S. Singh, “Atcp: Tcp for mobile ad hoc networks,” IEEE IEEE International Conference on Computer Communications. IEEE, Journal on selected areas in communications, vol. 19, no. 7, pp. 1300– 2007, pp. 1514–1522. 1315, 2001. [321] T. Ekman, “Prediction of mobile radio channels: modeling and design,” [341] D. Kim, C.-K. Toh, and Y. Choi, “Tcp-bus: Improving tcp performance Ph.D. dissertation, Institutionen for¨ materialvetenskap, 2002. in wireless ad hoc networks,” Journal of Communications and Net- [322] S. Park, J. Lee, J. Kim, J. Lee, S. Ha, K. Lee, and K.-H. Lee, “ExLL: works, vol. 3, no. 2, pp. 1–12, 2001. An Extremely Low-latency Congestion Control for Mobile Cellular [342] K. Sundaresan, V. Anantharaman, H.-Y. Hsieh, and A. Sivakumar, “Atp: Networks,” Proceedings of the 14th International Conference on A reliable transport protocol for ad hoc networks,” IEEE transactions emerging Networking EXperiments and Technologies, vol. 13, no. 18, on mobile computing, vol. 4, no. 6, pp. 588–603, 2005. 2018. [Online]. Available: https://doi.org/10.1145/3281411.3281430 [343] H. K. Molia and A. D. Kothari, “Tcp variants for mobile adhoc net- [323] B.-J. Chang and S.-P. Chen, “Cross-layer-based adaptive congestion works: Challenges and solutions,” Wireless Personal Communications, and contention controls for accessing cloud services in 5G IEEE vol. 100, no. 4, pp. 1791–1836, 2018. 802.11 family wireless networks,” Computer Communications, vol. [344] J. Govindarajan, N. Vibhurani, and G. Kousalya, “Enhanced tcp nce: A 106, pp. 33–45, jul 2017. [Online]. Available: https://linkinghub. modified non-congestion events detection, differentiation and reaction elsevier.com/retrieve/pii/S0140366417302517 to improve the end-to-end performance over manet,” in Progress in [324] F. Lu, H. Du, A. Jain, G. M. Voelker, A. C. Snoeren, and A. Terzis, Intelligent Computing Techniques: Theory, Practice, and Applications. “CQIC: Revisiting Cross-Layer Congestion Control for Cellular Springer, 2018, pp. 443–454. Networks,” in Proceedings of the 16th International Workshop on [345] Y.-C. Hu and D. B. Johnson, “Exploiting congestion information Mobile Computing Systems and Applications - HotMobile ’15. New in network and higher layer protocols in multihop wireless ad hoc York, New York, USA: ACM Press, 2015, pp. 45–50. [Online]. networks,” in 24th International Conference on Distributed Computing Available: http://dl.acm.org/citation.cfm?doid=2699343.2699345 Systems, 2004. Proceedings. IEEE, 2004, pp. 301–310. [325] M. Zhang, M. Mezzavilla, R. Ford, S. Rangan, S. Panwar, E. Mellios, [346] V. K. Sharma and M. Kumar, “Adaptive congestion control scheme in D. Kong, A. Nix, and M. Zorzi, “Transport layer performance in 5g mobile ad-hoc networks,” Peer-to-Peer Networking and Applications, mmwave cellular,” in 2016 IEEE Conference on Computer Communi- vol. 10, no. 3, pp. 633–657, 2017. cations Workshops (INFOCOM WKSHPS). IEEE, 2016, pp. 730–735. [347] M. Gowtham and K. Subramaniam, “Congestion control and packet [326] R. Ford, M. Zhang, M. Mezzavilla, S. Dutta, S. Rangan, and M. Zorzi, recovery for cross layer approach in manet,” Cluster Computing, “Achieving ultra-low latency in 5g millimeter wave cellular networks,” vol. 22, no. 5, pp. 12 029–12 036, 2019. IEEE Communications Magazine, vol. 55, no. 3, pp. 196–203, 2017. [348] M. Anuradha and G. A. Mala, “Cross-layer based congestion detection [327] B. Han, A. DeDomenico, G. Dandachi, A. Drosou, D. Tzovaras, and routing protocol using fuzzy logic for manet,” Wireless Networks, R. Querio, F. Moggio, O. Bulakci, and H. D. Schotten, “Admission and vol. 23, no. 5, pp. 1373–1385, 2017. congestion control for 5g network slicing,” in 2018 IEEE Conference [349] M. Y. Suraki, A. T. Haghighat, and M. Gholipour, “Fclcc: Fuzzy cross- on Standards for Communications and Networking (CSCN). IEEE, layer congestion control in mobile ad hoc networks,” IJCSNS, vol. 18, 2018, pp. 1–6. no. 1, p. 155, 2018. [328] M. Nasimi, M. A. Habibi, B. Han, and H. D. Schotten, “Edge- [350] M. Rajesh and J. Gnanasekar, “Congestion control scheme for het- assisted congestion control mechanism for 5g network using software- erogeneous wireless ad hoc networks using self-adjust hybrid model,” defined networking,” in 2018 15th International Symposium on Wireless International Journal of Pure and Applied Mathematics, vol. 116, Communication Systems (ISWCS). IEEE, 2018, pp. 1–5. no. 21, pp. 519–536, 2017. [329] D. Feng, L. Lu, Y. Yuan-Wu, G. Y. Li, S. Li, and G. Feng, “Device-to- [351] R. Vadivel and V. M. Bhaskaran, “Adaptive reliable and congestion device communications in cellular networks,” IEEE Communications control routing protocol for manet,” Wireless Networks, vol. 23, no. 3, Magazine, vol. 52, no. 4, pp. 49–55, 2014. pp. 819–829, 2017. [330] F. Ghavimi and H.-H. Chen, “M2m communications in 3gpp /lte-a [352] W. Chen, Q. Guan, S. Jiang, Q. Guan, and T. Huang, “Joint qos networks: Architectures, service requirements, challenges, and applica- provisioning and congestion control for multi-hop wireless networks,” tions,” IEEE Communications Surveys & Tutorials, vol. 17, no. 2, pp. EURASIP Journal on Wireless Communications and Networking, vol. 525–549, 2014. 2016, no. 1, pp. 1–11, 2016. [331] E. Soltanmohammadi, K. Ghavami, and M. Naraghi-Pour, “A survey of [353] D. Kanellopoulos, “Congestion control for MANETs: An overview,” traffic issues in machine-to-machine communications over lte,” IEEE ICT Express, jun 2018. [Online]. Available: https://linkinghub.elsevier. Internet of Things Journal, vol. 3, no. 6, pp. 865–884, 2016. com/retrieve/pii/S2405959518302285 [332] C. Sergiou, P. Antoniou, and V. Vassiliou, “A Comprehensive Survey [354] F. Cunha, L. Villas, A. Boukerche, G. Maia, A. Viana, R. A. F. of Congestion Control Protocols in Wireless Sensor Networks,” IEEE Mini, and A. A. F. Loureiro, “Survey Paper Data communication Communications Surveys & Tutorials, vol. 16, no. 4, pp. 1839–1859, in VANETs: Protocols, applications and challenges,” Ad Hoc 2014. [Online]. Available: http://ieeexplore.ieee.org/lpdocs/epic03/ Networks, vol. 44, pp. 90–103, 2016. [Online]. Available: http: wrapper.htm?arnumber=6805145 //dx.doi.org/10.1016/j.adhoc.2016.02.017 [333] C. Wang, K. Sohraby, B. Li, M. Daneshmand, and Y. Hu, “A survey [355] S. Al-Sultan, M. M. Al-Doori, A. H. Al-Bayatti, and H. Zedan, “A of transport protocols for wireless sensor networks,” IEEE network, comprehensive survey on vehicular Ad Hoc network,” Journal of vol. 20, no. 3, pp. 34–40, 2006. Network and Computer Applications, vol. 37, no. 1, pp. 380–392, [334] M. A. Kafi, D. Djenouri, J. Ben-Othman, and N. Badache, “Conges- 2014. [Online]. Available: http://dx.doi.org/10.1016/j.jnca.2013.02.036 tion control protocols in wireless sensor networks: A survey,” IEEE [356] M. Drigo, W. Zhang, R. Baldessari, L. Le, A. Festag, and M. Zorzi, Communications Surveys and Tutorials, vol. 16, no. 3, pp. 1369–1390, “Distributed rate control algorithm for vanets (drcv),” in Proceedings of 2014. the sixth ACM international workshop on VehiculAr InterNETworking, [335] S. A. Shah, B. Nazir, and I. A. Khan, “Congestion control 2009, pp. 119–120. algorithms in wireless sensor networks: Trends and opportunities,” [357] N. Taherkhani and S. Pierre, “Improving dynamic and distributed Journal of King Saud University - Computer and Information congestion control in vehicular ad hoc networks,” Ad Hoc Sciences, vol. 29, no. 3, pp. 236–245, jul 2017. [Online]. Available: Networks, vol. 33, pp. 112–125, 2015. [Online]. Available: http: https://www.sciencedirect.com/science/article/pii/S1319157816300131 //dx.doi.org/10.1016/j.adhoc.2015.04.008 [336] C. Lim, “A survey on congestion control for rpl-based wireless sensor [358] S. Kuhlmorgen, A. Festag, and G. Fettweis, “Evaluation of multi-hop networks,” Sensors, vol. 19, no. 11, p. 2567, 2019. packet prioritization for decentralized congestion control in vanets,” [337] G. Holland and N. Vaidya, “Analysis of tcp performance over mobile in 2017 IEEE Wireless Communications and Networking Conference ad hoc networks,” Wireless Networks, vol. 8, no. 2-3, pp. 275–288, (WCNC). IEEE, 2017, pp. 1–6. 2002. [359] N. Taherkhani and S. Pierre, “Prioritizing and scheduling messages for [338] K. Chandran, S. Raghunathan, S. Venkatesan, and R. Prakash, “A congestion control in vehicular ad hoc networks,” Computer Networks, feedback-based scheme for improving tcp performance in ad hoc vol. 108, pp. 15–28, 2016. wireless networks,” IEEE Personal communications, vol. 8, no. 1, pp. [360]S.K uhlmorgen,¨ A. Festag, and G. Fettweis, “Impact of decentralized 34–39, 2001. congestion control on contention-based forwarding in vanets,” in 2016 READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 30

IEEE 17th International Symposium on A World of Wireless, Mobile [383] A. Maheshwari and R. K. Yadav, “Analysis of congestion control and Multimedia Networks (WoWMoM). IEEE, 2016, pp. 1–7. mechanism for iot,” in 2020 10th International Conference on Cloud [361] L. Le, R. Baldessari, P. Salvador, A. Festag, and W. Zhang, “Perfor- Computing, Data Science & Engineering (Confluence). IEEE, 2020, mance evaluation of beacon congestion control algorithms for vanets,” pp. 288–293. in 2011 IEEE Global Telecommunications Conference-GLOBECOM [384] A. Betzler, C. Gomez, I. Demirkol, and J. Paradells, “Congestion 2011. IEEE, 2011, pp. 1–6. control in reliable coap communication,” in Proceedings of the 16th [362] M. Y. Darus and K. A. Bakar, “Congestion control algorithm in vanets,” ACM international conference on Modeling, analysis & simulation of World Applied Sciences Journal, vol. 21, no. 7, pp. 1057–1061, 2013. wireless and mobile systems, 2013, pp. 365–372. [363] M. S. Bouassida and M. Shawky, “On the congestion control within [385] F. Gratzer et al., “Quic-quick udp internet connections,” Future Internet vanet,” in 2008 1st IFIP Wireless Days. IEEE, 2008, pp. 1–5. and Innovative Internet Technologies and Mobile Communications, [364] K. N. Qureshi, A. H. Abdullah, O. Kaiwartya, S. Iqbal, R. A. Butt, and 2016. F. Bashir, “A dynamic congestion control scheme for safety applications [386] A. Langley, A. Riddoch, A. Wilk, A. Vicente, C. Krasic, D. Zhang, in vehicular ad hoc networks,” Computers & Electrical Engineering, F. Yang, F. Kouranov, I. Swett, J. Iyengar, J. Bailey, J. Dorfman, vol. 72, pp. 774–788, 2018. J. Roskind, J. Kulik, P. Westin, R. Tenneti, R. Shade, R. Hamilton, [365] W. Li, W. Song, Q. Lu, and C. Yue, “Reliable congestion control V. Vasiliev, W.-T. Chang, and Z. Shi, “The QUIC Transport Protocol: mechanism for safety applications in urban vanets,” Ad Hoc Networks, Design and Internet-Scale Deployment,” vol. 14, 2017. [Online]. vol. 98, p. 102033, 2020. Available: https://doi.org/10.1145/3098822.3098842 [366] M. Y. Taleb, S. Merniz, and S. Harous, “Congestion control [387] Y. Cui, T. Li, C. Liu, X. Wang, and M. Kuhlewind, “Innovating techniques in VANETs: A survey,” in 2017 13th International Wireless Transport with QUIC: Design Approaches and Research Challenges,” Communications and Mobile Computing Conference (IWCMC). IEEE, IEEE Internet Computing, vol. 21, no. 2, pp. 72–76, mar 2017. jun 2017, pp. 484–488. [Online]. Available: http://ieeexplore.ieee.org/ [Online]. Available: http://ieeexplore.ieee.org/document/7867726/ document/7986333/ [388] P. Megyesi, Z. Kramer, and S. Molnar, “How quick is QUIC?” [367] I. Shemsi and P. Kadam, “Named Data Networking in VANET: in 2016 IEEE International Conference on Communications (ICC). A survey,” International Journal of Scientific Engineering and IEEE, may 2016, pp. 1–6. [Online]. Available: http://ieeexplore.ieee. Science, vol. 1, no. 11, pp. 45–49, 2017. [Online]. Available: org/document/7510788/ http://ijses.com/wp-content/uploads/2017/11/57-IJSES-V1N11.pdf [389] G. Carlucci, L. De Cicco, and S. Mascolo, “HTTP over UDP: [368] H. Khelifi, S. Luo, B. Nour, H. Moungla, Y. Faheem, R. Hussain, and an Experimental Investigation of QUIC,” 2015. [Online]. Available: A. Ksentini, “Named data networking in vehicular ad hoc networks: http://dx.doi.org/10.1145/2695664.2695706 State-of-the-art and challenges,” IEEE Communications Surveys & [390] A. M. Kakhki, S. Jero, D. Choffnes, C. Nita-Rotaru, and A. Mislove, Tutorials, vol. 22, no. 1, pp. 320–351, 2019. “Taking a Long Look at QUIC,” Proceedings of the 2017 [369] I. Bekmezci, O. K. Sahingoz, and S¸. Temel, “Flying ad-hoc networks Internet Measurement Conference, vol. 17, 2017. [Online]. Available: (fanets): A survey,” Ad Hoc Networks, vol. 11, no. 3, pp. 1254–1270, https://doi.org/10.1145/3131365.3131368 2013. [391] P. Biswal and O. Gnawali, “Does QUIC Make the Web Faster?” [370] M. A. Khan, A. Safi, I. M. Qureshi, and I. U. Khan, “Flying ad-hoc in 2016 IEEE Global Communications Conference (GLOBECOM). networks (fanets): A review of communication architectures, and rout- IEEE, dec 2016, pp. 1–6. [Online]. Available: http://ieeexplore.ieee. ing protocols,” in 2017 First International Conference on Latest trends org/document/7841749/ in Electrical Engineering and Computing Technologies (INTELLECT). [392] J. Manzoor, L. Cerda-Alabern,` R. Sadre, and I. Drago, “Improving IEEE, 2017, pp. 1–9. performance of in wifi,” in 2019 IEEE Wireless Communications [371] O. Aruna and A. Sharma, “An adaptive and opportunistic based routing and Networking Conference (WCNC). IEEE, 2019, pp. 1–6. protocol in flying ad hoc networks (fanets): A survey,” in International [393] A. Saverimoutou, B. Mathieu, and S. Vaton, “Which secure transport conference on Computer Networks, Big data and IoT. Springer, 2019, protocol for a reliable HTTP/2-based web service: TLS or QUIC?” pp. 119–127. in 2017 IEEE Symposium on Computers and Communications [372] J. Gubbi, R. Buyya, S. Marusic, and M. Palaniswami, “Internet of (ISCC). IEEE, jul 2017, pp. 879–884. [Online]. Available: things (iot): A vision, architectural elements, and future directions,” http://ieeexplore.ieee.org/document/8024637/ Future generation computer systems, vol. 29, no. 7, pp. 1645–1660, [394] A. Narayan, F. Cangialosi, P. Goyal, S. Narayana, M. Alizadeh, and 2013. H. Balakrishnan, “The Case for Moving Congestion Control Out [373] I. Lee and K. Lee, “The internet of things (iot): Applications, invest- of the Datapath,” 2017. [Online]. Available: https://doi.org/10.1145/ ments, and challenges for enterprises,” Business Horizons, vol. 58, 3152434.3152438 no. 4, pp. 431–440, 2015. [395] A. Narayan, F. Cangialosi, D. Raghavan, P. Goyal, S. Narayana, [374] M. U. Farooq, M. Waseem, S. Mazhar, A. Khairi, and T. Kamal, “A R. Mittal, M. Alizadeh, and H. Balakrishnan, “Restructuring endpoint review on internet of things (iot),” International Journal of Computer congestion control,” in Proceedings of the 2018 Conference of the ACM Applications, vol. 113, no. 1, pp. 1–7, 2015. Special Interest Group on Data Communication, 2018, pp. 30–43. [375] P. Saint-Andre et al., “Extensible messaging and presence protocol [396] A. Kaufmann, T. Stamler, S. Peter, N. K. Sharma, A. Krishnamurthy, (): Core,” 2004. and T. Anderson, “Tas: Tcp acceleration as an os service,” in Proceed- [376] L. P. Verma and M. Kumar, “An iot based congestion control algo- ings of the Fourteenth EuroSys Conference 2019, 2019, pp. 1–16. rithm,” Internet of Things, vol. 9, p. 100157, 2020. [397] J. Erman, M. Arlitt, and A. Mahanti, “Traffic classification using clus- [377] C. Bormann, A. Betzler, C. Gomez, and I. Demirkol, “Coap simple tering algorithms,” in Proceedings of the 2006 SIGCOMM workshop congestion control/advanced,” ID: draft-bormann-core-cocoa-02, 2014. on Mining network data, 2006, pp. 281–286. [378] A. Betzler, C. Gomez, I. Demirkol, and J. Paradells, “Coap congestion [398] J. Ma, K. Levchenko, C. Kreibich, S. Savage, and G. M. Voelker, control for the internet of things,” IEEE Communications Magazine, “Unexpected means of protocol inference,” in Proceedings of the 6th vol. 54, no. 7, pp. 154–160, 2016. ACM SIGCOMM conference on Internet measurement, 2006, pp. 313– [379] E. Balandina, Y. Koucheryavy, and A. Gurtov, “Computing the retrans- 326. mission timeout in coap,” in Internet of Things, smart spaces, and next [399] R. Bellman, “Dynamic programming,” Science, vol. 153, no. 3731, pp. generation networking. Springer, 2013, pp. 352–362. 34–37, 1966. [380] R. Bhalerao, S. S. Subramanian, and J. Pasquale, “An analysis and [400] D. P. Bertsekas, D. P. Bertsekas, D. P. Bertsekas, and D. P. Bertsekas, improvement of congestion control in the CoAP Internet-of-Things Dynamic programming and optimal control. Athena scientific Bel- protocol,” in 2016 13th IEEE Annual Consumer Communications mont, MA, 1995, vol. 1, no. 2. & Networking Conference (CCNC). IEEE, jan 2016, pp. 889–894. [401] M. L. Puterman, Markov decision processes: discrete stochastic dy- [Online]. Available: http://ieeexplore.ieee.org/document/7444906/ namic programming. John Wiley & Sons, 2014. [381] A. Betzler, C. Gomez, I. Demirkol, and J. Paradells, “CoCoA+: [402] C. J. Watkins and P. Dayan, “Q-learning,” Machine learning, vol. 8, An advanced congestion control mechanism for CoAP,” Ad Hoc no. 3-4, pp. 279–292, 1992. Networks, vol. 33, pp. 126–139, 2015. [Online]. Available: http: [403] V. Mnih, K. Kavukcuoglu, D. Silver, A. A. Rusu, J. Veness, M. G. //dx.doi.org/10.1016/j.adhoc.2015.04.007 Bellemare, A. Graves, M. Riedmiller, A. K. Fidjeland, G. Ostrovski [382] S. Bolettieri, G. Tanganelli, C. Vallati, and E. Mingozzi, “pCoCoA: et al., “Human-level control through deep reinforcement learning,” A precise congestion control algorithm for CoAP,” Ad Hoc nature, vol. 518, no. 7540, pp. 529–533, 2015. Networks, vol. 80, pp. 116–129, nov 2018. [Online]. Available: [404] Y. LeCun, Y. Bengio, and G. Hinton, “Deep learning,” nature, vol. 521, https://linkinghub.elsevier.com/retrieve/pii/S1570870518303834 no. 7553, pp. 436–444, 2015. READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 31

[405] I. Goodfellow, Y. Bengio, and A. Courville, Deep learning. MIT [427] J. Liu, I. Matta, and M. Crovella, “End-to-end inference of loss nature press, 2016. in a hybrid wired/wireless environment,” 2003. [406] V. Mnih, K. Kavukcuoglu, D. Silver, A. Graves, I. Antonoglou, [428] D. Barman and I. Matta, “Model-based loss inference by tcp over D. Wierstra, and M. Riedmiller, “Playing atari with deep reinforcement heterogeneous networks,” in Proceedings of WiOpt, 2004, pp. 364–73. learning,” arXiv preprint arXiv:1312.5602, 2013. [429] I. El Khayat, P. Geurts, and G. Leduc, “Improving tcp in wireless net- [407] K. Shao, Z. Tang, Y. Zhu, N. Li, and D. Zhao, “A survey of deep rein- works with an adaptive machine-learnt classifier of packet loss causes,” forcement learning in video games,” arXiv preprint arXiv:1912.10944, in International Conference on Research in Networking. Springer, 2019. 2005, pp. 549–560. [408] H. Van Hasselt, A. Guez, and D. Silver, “Deep reinforcement learning [430] ——, “Enhancement of tcp over wired/wireless networks with packet with double q-learning,” in Thirtieth AAAI conference on artificial loss classifiers inferred by supervised learning,” Wireless Networks, intelligence, 2016. vol. 16, no. 2, pp. 273–290, 2010. [409] T. P. Lillicrap, J. J. Hunt, A. Pritzel, N. Heess, T. Erez, Y. Tassa, [431] C. Yue, R. Jin, K. Suh, Y. Qin, B. Wang, and W. Wei, “Linkforecast: D. Silver, and D. Wierstra, “Continuous control with deep reinforce- cellular link bandwidth prediction in lte networks,” IEEE Transactions ment learning,” arXiv preprint arXiv:1509.02971, 2015. on Mobile Computing, vol. 17, no. 7, pp. 1582–1594, 2017. [410] N. C. Luong, D. T. Hoang, S. Gong, D. Niyato, P. Wang, Y.-C. [432] J. Wu, Y. Peng, M. Song, M. Cui, and L. Zhang, “Link congestion Liang, and D. I. Kim, “Applications of deep reinforcement learning prediction using machine learning for software-defined-network data in communications and networking: A survey,” IEEE Communications plane,” in 2019 International Conference on Computer, Information Surveys & Tutorials, vol. 21, no. 4, pp. 3133–3174, 2019. and Telecommunication Systems (CITS). IEEE, 2019, pp. 1–5. [411] H. Mao, M. Alizadeh, I. Menache, and S. Kandula, “Resource man- [433] Y. Tian, Y. Shi, and X. Liu, “Recent advances on support vector agement with deep reinforcement learning,” in Proceedings of the 15th machines research,” Technological and Economic Development of ACM Workshop on Hot Topics in Networks, 2016, pp. 50–56. Economy, vol. 18, no. 1, pp. 5–33, 2012. [412] K. Xiao, S. Mao, and J. K. Tugnait, “Tcp-drinc: Smart congestion [434] A. Y. Nikravesh, S. A. Ajila, C.-H. Lung, and W. Ding, “Mobile control based on deep reinforcement learning,” IEEE Access, vol. 7, network traffic prediction using mlp, mlpwd, and svm,” in 2016 IEEE pp. 11 892–11 904, 2019. International Congress on Big Data (BigData Congress). IEEE, 2016, [413] Z. Xu, J. Tang, J. Meng, W. Zhang, Y. Wang, C. H. Liu, and D. Yang, pp. 402–409. “Experience-driven networking: A deep reinforcement learning based [435] Y. Kim, “Convolutional neural networks for sentence classification,” approach,” in IEEE INFOCOM 2018-IEEE Conference on Computer arXiv preprint arXiv:1408.5882, 2014. Communications. IEEE, 2018, pp. 1871–1879. [436] A. Krizhevsky, I. Sutskever, and G. E. Hinton, “Imagenet classification [414] T. Alpcan and T. Basar, “A utility-based congestion control scheme with deep convolutional neural networks,” in Advances in neural for internet-style networks with delay,” in IEEE INFOCOM 2003. information processing systems, 2012, pp. 1097–1105. Twenty-second Annual Joint Conference of the IEEE Computer and [437] T. Cover and P. Hart, “Nearest neighbor pattern classification,” IEEE Communications Societies (IEEE Cat. No. 03CH37428), vol. 3. IEEE, transactions on information theory, vol. 13, no. 1, pp. 21–27, 1967. 2003, pp. 2039–2048. [438] F. Ruffy, M. Przystupa, and I. Beschastnikh, “Iroko: A framework to [415] K. Winstein and H. Balakrishnan, TCP ex Machina: Computer- prototype reinforcement learning for data center traffic control,” arXiv Generated Congestion Control, 2013. [Online]. Available: http: preprint arXiv:1812.09975, 2018. //web.mit.edu/remy. [439] I. Nascimento, R. Souza, S. Lins, A. Silva, and A. Klautau, “Deep [416] M. Dong, T. Meng, D. Zarchy, E. Arslan, Y. Gilad, B. Godfrey, reinforcement learning applied to congestion control in fronthaul net- and M. Schapira, “{PCC} vivace: Online-learning congestion control,” works,” in 2019 IEEE Latin-American Conference on Communications in 15th {USENIX} Symposium on Networked Systems Design and (LATINCOM). IEEE, 2019, pp. 1–6. Implementation ({NSDI} 18), 2018, pp. 343–356. [440] V. Mnih, A. P. Badia, M. Mirza, A. Graves, T. Lillicrap, T. Harley, [417] S. Mangiante, M. Schapira, A. Navon, M. Dias Silva, B. Godfrey, D. Silver, and K. Kavukcuoglu, “Asynchronous methods for deep rein- W. Wang, K. Smith, and I. Pechtalt, “Congestion Control for forcement learning,” in International conference on machine learning, Future Mobile Networks,” Proceedings of the 13th Workshop on 2016, pp. 1928–1937. Challenged Networks, vol. 18, pp. 55–61, 2018. [Online]. Available: [441] L. Cui, Z. Yuan, Z. Ming, and S. Yang, “Improving the congestion con- https://doi.org/10.1145/3264844.3264850 trol performance for mobile networks in high-speed railway via deep [418] V. Arun and H. Balakrishnan, “Copa: Practical delay-based congestion reinforcement learning,” IEEE Transactions on Vehicular Technology, control for the internet,” in 15th {USENIX} Symposium on Networked 2020. Systems Design and Implementation ({NSDI} 18), 2018, pp. 329–342. [442] J. Schulman, S. Levine, P. Abbeel, M. Jordan, and P. Moritz, “Trust [419] M. Wang, Y. Cui, X. Wang, S. Xiao, and J. Jiang, “Machine learning region policy optimization,” in International conference on machine for networking: Workflow, advances and opportunities,” IEEE Network, learning, 2015, pp. 1889–1897. vol. 32, no. 2, pp. 92–99, 2017. [443] J. Schulman, F. Wolski, P. Dhariwal, A. Radford, and O. Klimov, “Prox- [420] R. Boutaba, M. A. Salahuddin, N. Limam, S. Ayoubi, N. Shahriar, imal policy optimization algorithms,” arXiv preprint arXiv:1707.06347, F. Estrada-Solano, and O. M. Caicedo, “A comprehensive survey on 2017. machine learning for networking: evolution, applications and research [444] Z. Xu, J. Tang, C. Yin, Y. Wang, and G. Xue, “Experience-driven opportunities,” Journal of Internet Services and Applications, vol. 9, congestion control: When multi-path tcp meets deep reinforcement no. 1, p. 16, 2018. learning,” IEEE Journal on Selected Areas in Communications, vol. 37, [421] M. Polese, F. Chiariotti, E. Bonetto, F. Rigotto, A. Zanella, and no. 6, pp. 1325–1336, 2019. M. Zorzi, “A survey on recent advances in transport layer protocols,” [445] R. Srikant, The mathematics of Internet congestion control. Springer IEEE Communications Surveys & Tutorials, vol. 21, no. 4, pp. 3584– Science & Business Media, 2004. 3608, 2019. [446] D. Lan, X. Tan, J. Lv, Y. Jin, and J. Yang, “A deep reinforcement learn- [422] Y. Cheng, J. Geng, Y. Wang, J. Li, D. Li, and J. Wu, “Bridging machine ing based congestion control mechanism for ndn,” in ICC 2019-2019 learning and research: a survey,” CCF Transactions IEEE International Conference on Communications (ICC). IEEE, on Networking, vol. 1, no. 1-4, pp. 1–15, 2019. 2019, pp. 1–7. [423] Y. Sun, M. Peng, Y. Zhou, Y. Huang, and S. Mao, “Application [447] R. Mijumbi, J.-L. Gorricho, J. Serrat, M. Claeys, F. De Turck, and of machine learning in wireless networks: Key techniques and open S. Latre,´ “Design and evaluation of learning algorithms for dynamic issues,” IEEE Communications Surveys & Tutorials, vol. 21, no. 4, pp. resource management in virtual networks,” in 2014 IEEE network 3072–3108, 2019. operations and management symposium (NOMS). IEEE, 2014, pp. [424] Y. Gao, G. He, and J. C. Hou, “On exploiting traffic predictability 1–9. in active queue management,” in Proceedings. Twenty-First Annual [448] R. Mijumbi, S. Hasija, S. Davy, A. Davy, B. Jennings, and R. Boutaba, Joint Conference of the IEEE Computer and Communications Societies, “A connectionist approach to dynamic resource management for vir- vol. 3. IEEE, 2002, pp. 1630–1639. tualised network functions,” in 2016 12th International Conference on [425] S. Masoumzadeh, G. Taghizadeh, K. Meshgi, and S. Shiry, “Deep blue: Network and Service Management (CNSM). IEEE, 2016, pp. 1–9. A fuzzy q-learning enhanced active queue management scheme,” in [449] R. Shi, J. Zhang, W. Chu, Q. Bao, X. Jin, C. Gong, Q. Zhu, C. Yu, 2009 International Conference on Adaptive and Intelligent Systems. and S. Rosenberg, “Mdp and machine learning-based cost-optimization IEEE, 2009, pp. 43–48. of dynamic resource allocation for network function virtualization,” in [426] M. Kim and B. Eng, “Deep reinforcement learning based active queue 2015 IEEE International Conference on Services Computing. IEEE, management for iot networks,” 2019. 2015, pp. 65–73. READY TO SUBMIT TO IEEE COMMUNICATIONS SURVEYS & TUTORIALS JOURNAL 32

[450] A. Testolin, M. Zanforlin, M. D. F. De Grazia, D. Munaretto, A. Zanella, M. Zorzi, and M. Zorzi, “A machine learning approach to qoe-based video admission control and resource allocation in wireless systems,” in 2014 13th Annual Mediterranean Ad Hoc Networking Workshop (MED-HOC-NET). IEEE, 2014, pp. 31–38. [451] B. Bojovic, N. Baldo, and P. Dini, “A cognitive scheme for radio admission control in lte systems,” in 2012 3rd International Workshop on Cognitive Information Processing (CIP). IEEE, 2012, pp. 1–3. [452] J. Wang and Y. Qiu, “A new call admission control strategyfor lte femtocell networks,” in 2nd International Conference on Advances in Computer Science and Engineering (CSE 2013). Atlantis Press, 2013. [453] W. Li, F. Zhou, W. Meleis, and K. Chowdhury, “Learning-based and data-driven tcp design for memory-constrained ,” in 2016 International Conference on Distributed Computing in Sensor Systems (DCOSS). IEEE, 2016, pp. 199–205. [454] W. Li, F. Zhou, K. R. Chowdhury, and W. Meleis, “Qtcp: Adaptive congestion control with reinforcement learning,” IEEE Transactions on Network Science and Engineering, vol. 6, no. 3, pp. 445–458, 2018. [455] R. S. Sutton and A. G. Barto, Reinforcement learning: An introduction. MIT press, 2018. [456] K.-S. Hwang, C.-S. Wu, and H.-K. Su, “Reinforcement learning cooperative congestion control for multimedia networks,” in 2005 IEEE International Conference on Information Acquisition. IEEE, 2005, pp. 6–pp. [457] M.-C. Shaio, S.-W. Tan, K.-S. Hwang, and C.-S. Wu, “A reinforcement learning approach to congestion control of high-speed multimedia networks,” Cybernetics and Systems: An International Journal, vol. 36, no. 2, pp. 181–202, 2005. [458] N. Jay, N. Rotman, B. Godfrey, M. Schapira, and A. Tamar, “A deep reinforcement learning perspective on internet congestion control,” in International Conference on Machine Learning, 2019, pp. 3050–3059.

Amir Mirzaeinia Received his Masters degree in Telecommunications from Isfahan University of Technology. Amir Mirzaeinia is currently a Com- puter Science PhD candidate in New Mexico insti- tute of Mining and Technology. Amir Mirzaeinia had been working with Mobile Commmunication Company as access network design and otimization senior engineer from June 2006 to August 2015.

Mehdi Mirzaeinia Biography text here.

Abdelmounaam Rezgui Biography text here.