A Cross Layer Design for Large Data Transfers
Alali, Fatemah, Computer Engineering - School of Engineering and Applied Science, University of Virginia
Veeraraghavan, Malathi, Department of Electrical and Computer Engineering, University of Virginia
Software Defined Network (SDN) technologies have enabled the introduction of new services such as dynamic Layer-1 (L1) circuits and Layer-2 (L2) virtual circuits (VCs). Our objective is to fully realize high-rate circuits/VCs with almost zero packet loss for large dataset transfers. A multi- domain SDN dynamic Layer-2 (L2) VC was used to conduct experiments to achieve this objective. The results showed that a combination of (i) Circuit TCP (CTCP), in which the sending rate is held fixed, and (ii) Token Bucket Filter (TBF) rate shaper at the sending host, is best to achieve, high-throughput transfers. However, packet losses were still observed on these L2 VCs. Therefore, a new study was presented using more controlled environments.
A new experimental study was undertaken in a single-rack testbed in which packet losses and delays could be deliberately controlled. Three cases were emulated: (i) single circuit/rate- guaranteed VC for a single large transfer from a server, (ii) multiple simultaneous large trans- fers from a server, and (iii) semi-rate-guaranteed VC. CTCP and the TBF queueing discipline of the Linux traffic control (tc) utility are recommended for the first case, and parameter selection methods are provided. For the second case, the tc Hierarchical Token Bucket (HTB) discipline is required to support multiple transfers, each on a distinct VC with its own rate and Round-Trip Time (RTT). Our experiments showed that dynamic additions and deletions of classes are possible without impact on ongoing large-transfer flows. For the third case, CTCP is recommended if the throughput of the large transfer is of primary concern, while HTCP is recommended if higher consideration should be given to the other flows.
The thesis also provides insight and lessons learned about the Linux TCP/IP stack. Three layers were considered: (i) Application layer, (ii) Transport layer, and (iii) Data-link layer. New findings, which are beneficial to networking researchers are presented. We also provide insights into how to monitor flows using tools such as tcpdump, tshark, and tcptrace.
MS (Master of Science)
rate-guaranteed paths, large transfers, Networking, TCP parameters, VC, SDN
All rights reserved (no additional license for public reuse)