I Introduction
Inter-datacenter networks that are managed by one organization connect dozens of geographically dispersed datacenters offering dedicated bandwidth and high visibility into network status. Traffic over these networks can generally be classified as interactive user flows which are highly sensitive to latency and internal flows generated due to internal business operations. Internal flows are less sensitive to initial routing latency, can be significantly larger than user flows, can vary by several orders of magnitude in demand (size)
[1], and constitute the majority of total traffic volume [2]. Using rate-limiting and bandwidth allocation over inter-datacenter networks, theoretically zero and practically minimal packet loss due to congestion can be achieved [3].We focus on single path routing while aiming at minimizing completion times and bandwidth usage of internal flows. Adaptive flow routing can be used to improve performance and efficiency by assigning paths to new flows according to network status and flow properties. Although path selection can be formulated as an online optimization problem, such problems cannot be solved optimally due to limited knowledge about future flow arrivals. Alternatively, heuristic schemes can be used by considering a cost (distance) metric and selecting the minimum cost (shortest) path.
A cost metric which has been extensively used by prior work is bandwidth utilization [4, 5, 3]. We argue that while assigning paths to new flows, instead of focusing on current bandwidth utilization, one should consider utilization temporally and into the future, i.e., by counting total outstanding bytes to be sent per link according to paths assigned to flows and total outstanding bytes per flow. We refer to this total number of remaining bytes per link as its load and propose using it as the cost metric. Compared to utilization, load offers more information about future usage of a link’s bandwidth which can help us perform more effective load balancing. Every time a flow is assigned to a path, load variables associated with all edges of that path increase by its demand. Also, a link’s load variable decreases continuously as flows on that link make progress.
In addition, we evaluate two heuristics of selecting the path with minimum value of maximum link cost and minimum value of sum of link costs which we refer to as MINMAX() and MINSUM(), respectively. Although the former is frequently used in the literature [4, 5, 3], we find that the latter offers considerably better performance for the majority of traffic patterns and scheduling policies.
MFCT |
TFCT |
Total Bandwidth Used |
||||||||||||||||
Light-tailed | Heavy-tailed | Light-tailed | Heavy-tailed | Light-tailed | Heavy-tailed | |||||||||||||
MINSUM(load) | ||||||||||||||||||
MINMAX(load) | ||||||||||||||||||
MINSUM(load+demand) | ||||||||||||||||||
MINMAX(load+demand) | ||||||||||||||||||
MINSUM(utilization) | ||||||||||||||||||
MINMAX(utilization) | ||||||||||||||||||
MinHop |
MFCT |
TFCT |
Total Bandwidth Used |
||||||||||||||||
Cache-Follower | Hadoop | Cache-Follower | Hadoop | Cache-Follower | Hadoop | |||||||||||||
MINSUM(load) | ||||||||||||||||||
MINMAX(load) | ||||||||||||||||||
MINSUM(load+demand) | ||||||||||||||||||
MINMAX(load+demand) | ||||||||||||||||||
MINSUM(utilization) | ||||||||||||||||||
MINMAX(utilization) | ||||||||||||||||||
MinHop |
from min | from min | from min | from min | from min | from min |
Ii Evaluation of Different Cost Metrics
We considered a large WAN called Cogent [6] with nodes and
links, four flow demand distributions of light-tailed (Exponential distribution), heavy-tailed (Pareto distribution), Cache-Follower
[1] and Hadoop [1] (the last two happen across Facebook datacenters), and a uniform capacity offor all links. A Poisson distribution with rate
was used for flow arrivals. For all flow demand distributions, we assumed an average of units and a maximum of units. For heavy-tailed, we used a minimum demand of units. We considered scheduling policies of First Come First Serve (FCFS), Shortest Remaining Processing Time (SRPT) and Fair Sharing using Max-Min Fairness (MMF). We considered three different cost metrics of “utilization”, “load”, and “load+demand” per link where demand represents the new flow’s size in bytes. To measure a path’s cost, we considered two cost functions of maximum which assigns any path the cost of its highest cost link (used by MINMAX() heuristic), and sum which computes a path’s cost by summing up costs of its links (used by MINSUM() heuristic). Combining these path cost functions with the three link cost metrics mentioned above, we obtain six different path selection schemes that select the path with minimum cost for a newly arriving flow. We also considered MinHop which selects a path with minimum hops per flow to compute lower bound of bandwidth usage. For minimum cost path selection, we used Dijkstra’s algorithm in JGraphT library. We measured Mean and Tail Flow Completion Times (MFCT/TFCT) and total bandwidth as shown in Figure 1.Flow Completion Times (FCT): MINSUM(load) and MINSUM(load+demand) perform almost identically in completion times. The rest of schemes offer highly varying performance dictated by scheduling policy or traffic pattern. Schemes based on utilization are at least above the minimum for the majority of scenarios. Also, MINMAX(load) and MINMAX(load+demand) are more than above the minimum in mean completion times for multiple scenarios. Overall, it can be seen that schemes based on “load” as link cost offer much better tail completion times (less than away from minimum for majority of cases). Also, MINSUM(load+demand) offers the best mean completion times considering all scenarios.
Total Bandwidth Usage: MINSUM(load+demand) offers the minimum extra bandwidth usage compared to MinHop which is below at all times. Schemes based on MINMAX() consume at least extra bandwidth. MINSUM(load) and MINSUM(utilization) use at least more bandwidth at all times compared to MINSUM(load+demand) and at least more bandwidth for the majority of scenarios.
Iii Conclusions and Future Work
We see that MINSUM(load+demand) stays within of minimum for all completion times and within of minimum in the majority of cases. It offers the minimum bandwidth usage across all adaptive approaches (MinHop is static). With this cost metric, larger flows are most likely assigned shorter paths which allows for higher bandwidth savings (due to presence of “demand” as part of link cost) while shorter flows are assigned to paths with smaller total load which reduces completion times via load balancing. We believe MINSUM(load+demand) performs better than techniques based on MINMAX() since it considers total number of bytes that will eventually be scheduled on a path taking into account all edges and not just the highest loaded/utilized link. Our experiments have shown that MINSUM(load+demand) is also an effective metric for selection of multicast forwarding trees that reduce completion times via load balancing [7, 8]. It is also interesting to note that MINMAX(utilization), which is frequently used in traffic engineering research, is far from the best solution for the majority of evaluated scenarios.
Centralized frameworks, such as SDN [9]
, are good candidates for realization of this scheme since they offer access to global view of network status and flow demands. To properly update load variables associated with links, one needs knowledge of flow demands. In case exact flow size is unknown, an estimate can be used. Further research is needed on how flow demand estimation accuracy can affect quality of selected paths. In addition, we plan to extend and evaluate our proposed adaptive approach for multipath traffic engineering.
References
- [1] A. Roy, H. Zeng, J. Bagga, G. Porter, and A. C. Snoeren, “Inside the Social Network’s (Datacenter) Network,” SIGCOMM, pp. 123–137, 2015.
- [2] Building express backbone: Facebook’s new long-haul network. [Online]. Available: https://code.facebook.com/posts/1782709872057497/building-express-backbone-facebook-s-new-long-haul-network/
- [3] S. Kandula, I. Menache, R. Schwartz, and S. R. Babbula, “Calendaring for wide area networks,” SIGCOMM, vol. 44, no. 4, pp. 515–526, 2015.
- [4] B. Fortz and M. Thorup, “Optimizing OSPF/IS-IS weights in a changing world,” IEEE Journal on Selected Areas in Communications, vol. 20, no. 4, pp. 756–767, 2002.
- [5] S. Kandula et al., “Walking the Tightrope: Responsive Yet Stable Traffic Engineering,” SIGCOMM, vol. 35, no. 4, pp. 253–264, 2005.
- [6] The internet topology zoo (cogent). [Online]. Available: http://www.topology-zoo.org/files/Cogentco.gml
- [7] M. Noormohammadpour, C. S. Raghavendra, S. Rao, and S. Kandula, “Dccast: Efficient point to multipoint transfers across datacenters,” in HotCloud. USENIX Association, 2017.
- [8] M. Noormohammadpour, C. S. Raghavendra, S. Kandula, and S. Rao, “QuickCast: Fast and Efficient Inter-Datacenter Transfers using Forwarding Tree Cohorts,” arXiv preprint arXiv:1801.00837, 2018.
- [9] N. McKeown, “Software-defined networking,” INFOCOM keynote talk, vol. 17, no. 2, pp. 30–32, 2009.
Comments
There are no comments yet.