Abstract
Video streaming applications have become increasingly widespread in today’s Internet. The high-definition (HD) video technology has also been applied for the speech and ball game live broadcasting. For reducing the heavy bandwidth requirement, Peer-to-Peer (P2P) transmission technology is widely applied to video streaming services. The most advantage of P2P transmission is the ability to conserve bandwidth and reduce server load. Nevertheless, it is difficult to correctly and efficiently maintain the P2P network topology when a large number of users join to the group. Moreover, the streaming server’s loading is heavy in order to keep the quality of services (QoS) with a large number of users. Although streaming providers can solve this problem easily by renting more hardware servers or virtual devices, the streaming broadcast cost is also increased by using more streaming servers. In this thesis, a novel central control system is proposed to efficiently manage the P2P streaming servers to provide scalable and stable streaming service for a large number of users. First, a managing device called “manager server” is proposed to monitor the condition of each streaming server. Next, a loading condition evaluation method is implemented on the manager server to analyze each P2P server’s resources utilization. Moreover, two load balancing operations are offered to dynamically partition the peers into P2P servers to keep the whole system and service as stable as possible. Various experiments are conducted to evaluate the performance and scalability of the proposed system. Experimental results indicate that the proposed system architecture and the load balancing mechanisms work well for 2Mbps video streaming source with different number of joining peers.