Summary: | 博士 === 國立臺灣大學 === 電機工程學研究所 === 94 === The advancement of communication technologies and optical components has led to a data rate beyond tens of gigabits per second in current computer and communication networks. As there are numerous network packets traversing the Internet at any time instant, modern network systems failing to process incoming packets in a high speed are likely to become the performance bottleneck of their respective networking environment. Even at network edges, network systems are expected to finish the processing of each packet in few microseconds or less. On the other hand, the emergence of new communication protocols and network applications keeps increasing the complexity of various packet-processing functions employed by a wide range of network systems. These two driving factors together stimulate the demands for high-performance network systems.
Clustering is one of the approaches proposed to satisfy such demands, and it can be viewed as an architectural improvement to network-system designs. When used appropriately, clustering schemes offer scalable and cost-effective solutions for building high-performance network systems. In addition, the loosely coupled nature and the inherent redundancy of the clustered network devices grant clustering schemes the potentials to incorporate advanced features such as dynamic expansion and fault tolerance, making clustering an even more promising approach to the construction of future network systems.
In this dissertation, we investigate the theoretical aspects of the underlying traffic-distribution problem behind clustering and propose an adaptive clustering scheme for building high-performance network systems. The proposed scheme makes use of a fully decentralized system architecture and is able to deal with the dynamic nature of network traffic by redistributing workload over the clustered network devices on a periodic basis. The basic version of the proposed adaptive clustering scheme achieves the goal of load balancing with a heuristic-based technique, and is further enhanced with the support for both run-time cluster expansion and fault tolerance. Another load-balancing technique based on the key findings of the theoretical analysis is also developed as an alternative. It takes advantage of global workload information and may be used to replace the heuristic-based one for reducing time to reach the balanced state.
The proposed adaptive clustering scheme is initially designed for clusters of edge devices and then extended to support clusters of in-line devices. To verify the applicability and practicability of the proposed scheme, we create a high-performance and reconfigurable security-gateway cluster and a high-performance and reconfigurable bandwidth-controller cluster as two real-world examples. The implementations are based on our custom Linux distribution and take care of not only general considerations for building network systems but also issues specific to virtual private networks and bandwidth management, respectively. We further conduct a series of tests to explore the behavioral characteristics of these clusters with a world-recognized test equipment. The results of performance evaluation confirm that the proposed adaptive clustering scheme is highly scalable and provides a practical solution for building high-performance and reconfigurable network systems with little clustering overhead.
|