Author :
Ayesta, U. ; Bertaux, L. ; Carvin, D.
Abstract :
We investigate how to build a non-intrusive scheduled TCP. For the flows of a given origin-destination pair, the objective is to schedule their TCP segments (according to some desired criteria) without modifying the network bandwidth-share used by these flows, which in turn ensures friendliness with respect to the rest of the network. We show that in order for a scheduling algorithm to be strictly non-intrusive, a sufficient and necessary condition is that the sender´s and receiver´s buffers are infinite. We then show that, under the additional condition that segments are neither lost or reordered, the number of active TCP flows can be minimized by size-based schedulers, and we propose a new scheduler FAIR, which guarantees that the transfer time of every TCP flow for the origin-destination pair is reduced. We develop SCHED_TCP, a user space implementation of our scheme in order to evaluate its performance on the Internet. Our experiments illustrate the non-intrusive property of SCHED_TCP, and also illustrate that the performance gain with SCHED_TCP can be considerable. Our scheme is scalable, and it could be incrementally deployed on the Internet improving the user experience on every origin-destination pair. The main application domain of our approach correspond to situations in which there are many concurrent TCP connections within the same origin-destination pair, this might happen as a consequence of HTTP 1.1, Web 2.0 applications using AJAX (Google Maps etc.), Split TCP, Parallel Sockets, and also with the use of ChromeBook´s where the user accesses to all services through the same back-end server infrastructure.
Keywords :
Internet; computer network security; scheduling; transport protocols; HTTP 1.1; Internet; TCP flows; TCP segments; Web 2.0 applications; back infrastructure; network bandwidth share; nonintrusive scheduling; receiver buffers; scheduling algorithm; sender buffer; server infrastructure; user space implementation; Bandwidth; Internet; Receivers; Schedules; Scheduling; Servers; Standards;