Summary: | 碩士 === 國立臺灣大學 === 電信工程學研究所 === 93 === In this thesis,we propose a novel architecture of the Class-Based ACK Spacer and implement it on Linux platforms. This ACK spacer could be installed on the server side, client side, or on the router to provide different priorities and bandwidth allocations of each TCP class and session over ACK packet control. Since ACK is relatively small compared to TCP data packet, we hypothesize that ACK is better for buffering or in CPU load.
We use static priority algorithm and token bucket to solve multi-class scheduling problem. To control the sessions in the same priority class, we propose two session scheduling algorithms, Token Round Robin and Frequency-Based Rotation Priority Queue, to achieve fairness between sessions.
Finally, we construct experiment environment to verify our implementations. The TCP throughput could be stabilized and improved with proper parameters set. Bandwidth fair-share could be achieved. At last, we also analyze CPU load using different scheduling algorithms.
|