Load Balancing Algorithms for nternet Vhdeo and Audio Server Dusit Niyato Chutim.et Srinilta s2061036@kmitl.ac.th chutimet@ce.kmitl.ac. th Department of Computer Engineering, Engineering Faculty, King Mongkut 's nstitute of Technology Ladkrabang, Chalongkrung Road, Ladkrabang Bangkok THALAND 10520. Tel:(+66 2) 326-9969, 739-2401 Fax. (+662) 739-2400 Abstract This paper reports the application of load balancing algorithms on internet video and audio media server. We took into account two server architectures: Centralized and Distributed Load Balancing; and jive load balancing algorithms: Random, Round-Robin, Adaptive Bidding, Diffusion, and State Change Broadcast The startup time and system distance were measured in the experiments. The results show that response time of Distributed Load Balancing less than Centralized Load Balancing architecture. And algorithms that use more load information can balance load on video and audio media server better, but produce more response time. 1. ntroduction Multimedia information service is playing more important role today. These services are not limited to one type of information, text, but comprise of text, picture, audio and video. Text and picture are services of file transfer while audio and video are served as continuous media in which time constraint is involved. Server that serves multimedia data, both audio and video, must be able to serve continuous service. The difference between general server and continuous media server is continuous media server must read, process, and transfer information to client in time constraint. n the past, audio and video services were not as popular because low speed network and slow processing unit, both server and client. Now, the popularity has increased rapidly due to the better processors and network. The popularity causes the overloading of the servers. One solution to solve this problem is to upgrade server. Another is to increase the number of servers and distribute the load among them. Researches of load balancing algorithm for video and audio server are represented.[ 13 represents static load balancing: considering the location of media on the server [2] represents dynamic load balancing: considering the capacity of server [3] represents load balancing of video server with file transfer [4] represents the development of Microsoft's commercial multimedia server. This paper analyzes load balancing architectures and algorithms of video and audio service. n order to choose which architecture and algorithm is appropriate for different circumstances, we had to manipulate general computer sysiem architectures and algorithms. 2. System Architecture This system comprises 3 main parts: video and audio server, which its role is to listen for the requests from clients and check for availability, network system, which acts as medium for transferring data between server and client and server to server, and client to send request receive data from server to display to user. n this paper, the architecture has 2 models. The first model has Centralized Load Balancer and second model is Distributed Load Balancer. Centralized Load Balancer El Video and Audio Server Figure 1. Centralizedxoad Balancing Architecture. n the first model, requests from client will be sent to load balancer for assign to video and audio server and to determine if the system is available to provide service, if 1531-2216101 $10.00 0 2001 EEE 76
so, which server will provide the service. n the second model request from client go to any video and audio server. Received server will determine, is server available to provide service, if not, request must redirect to other server. Video and Audio Sever with Distributed Load Balancer message to all other nodes while Limited Broadcast sends message to limited number of nodes. n addition to Limited Broadcast, Limited Broadcast with Time Window will not distribute load to the node it already distributed load to within time limit. n Diffusion algorithm, overloaded processor will distribute load to the next processor until the load is distributed to the node with least load or to the node that reduces the load difference most. n State Change Broadcast algorithm, processor will send load information to other processors with in the time interval. Once the processor gets overloaded, the processor will use this load information to determine which node should receive the load. 4. System Structure Figure 2. Distributed Load Balancing Architecture 3. Algorithms Load balancing algorithms responsible in distributing load from processing unit, or node, with heavy load to unit with less load. Algorithms can be categorized into 3 types. Firstly, Static Load Balancing: this algorithm distributes load by assigning load to all nodes before starting the system. Secondly, Dynamic Load Balancing: this algorithm can allocate load to nodes based on information after the system had started. Thirdly, Adaptive Load Balancing Algorithm, this algorithm can adjust to the system status. Load balancing algorithm consists of 4 parts; nformation Policy, Transfer Policy, Selection Policy and Location Policy. Different algorithm will result in difference of these parts. Load balancing algorithms we use are popular algorithms: Adaptive Bidding [5], Diffusion [6], and State Change Broadcast. n addition to those algorithms, we analyze and compare Round-Robin and Random algorithm. Adaptive Bidding algorithm is the extension of Bidding algorithm. n Bidding algorithm, when one processor becomes overloaded, it will send message to other nodes. Every nodes will respond with its load information to overloaded node. Once the messages arrived, it will distribute load to the node with least load. There are 3 modes of Adaptive Bidding which are Broadcast, Limited Broadcast and Limited Broadcast with Time Window. n Broadcast Mode, node will send Continuous media server must be able to provide service continuously within time constraints and quality. Continuous media server consists of Network Manager, Disk Manager, Media Manager, Cache Manager and Request Manager. And for Distributed Load Balancer architecture, continuous media server also contains Distributed Load Balancer component for manage load and make decision for load transfer when server is overload. 5. Experiment 5.1. Experiment Environment The purpose of these experiments is to evaluate architectures and load balancing algorithms for video and audio servers. Experimental environment including continuous media server ranging from to 7 servers with more than 5 clients. For service mechanism in this experiment, we use server push mechanism to send continuous media to client. We assumed that network lacks quality of service but provides enough bandwidth (network may have delay and jitter for data transfer). Continuous media servers have only playback service. For services, media is a video clip that has duration between 3 to 5 minute and number of media fix at 100 media. Each media requires different bandwidth from 30 to 300 Kbps. We model arrival rate with Poisson Distribution and requested media index with Zipf Distribution [7]. 77
Client Centralized Load Balancer Video and Audio Server Client Video and Audio Server with Distributed Load Balancer 5.3. Network Figure 4. Servers monitoring program. Network is a medium for carry video and audio from servers to clients. Network in our testing system is not require QoS but we assume network have enough bandwidth to service client. So it can have delay and jitters. n our experiment we use Ethernet 10Base-T to evaluate architectures and load balancing algorithms. 5.3. Client Figure 3. Experimental environment (a) for Centralized Load Balancer architecture (b) for Distributed Load Balancer architecture. n this experiment, we measure (1) startup time for service request from client. Startup time is standard metric for performance measuring in multimedia system. A good multimedia system must posess acceptable startup time. (2) we measure reject rate from client request, and (3) we measure load balancing equality or system distance ( ). System distance will tell load balancing capability for each algorithms. n testing environment clients have normal web browser (E 5.0 or Netscape 4).and multimedia plug-ins (QuickTime for Apple s QuickTime media or Windows Media Player for MPEG media). These clients have buffer for remove delay and jitter from network. 5.2. Server Our video and audio servers service over port 80 of TCPDP protocol. We choose this service port and protocol because we can use popular web browser and multimedia plug-ins to play video and audio. Our server develops for Microsoft Windows platform and can service Apple s QuickTime media and MPEG video file format. And we have remote monitoring program for monitor servers status such as CPU utilization, service rate, number of session, and memory usage 6. Experiment Result Figure 5. Client display 78
Figure 6. Graph that shows startup time to service client requests followed by architecture. From graph in figure 6 shows the difference in startup time for service client requests in continuous media service between Centralized Load Balancer and Distributed Load Balancer architecture. The advantage of Centralized Load Balancer architecture is system can control load balancing mechanism easier. But disadvantage of architecture is when number of requests increase, system's startup time also increase. Because request client must be manipulated at Centralized Load Balancer before it can be sent to continuous media server for service. 40 35 8 30-2 25 4 20 5 E l5 5 O v1 04 2 3 4 5 6 1 Number of Servers 400 350 300 250 200 50 100 50 t- - 04 2 3 4 5 6 1 Number of Servers -*- Round-Robin +Random + Round-Robin (b) Figure 7. Graph shows load balancing equality by Centralized Load Balancer architecture (a) CPU Utilization (b) Service Rate From our experiment, the results(figure 7) show the difference in load balancing equality for each algorithm. Random and Round-Robin algorithm do not need load information from each continuous media servers, so they can process and make decision about client requests faster and do not need extra network bandwidth. But for Broadcast algorithm, Centralized Load Balancer needs load information from all continuous media servers in system. So Broadcast algorithm can balance load better. Although this algorithm needs communication between Centralized Load Balancer and all continuous media servers in system, but network bandwidth that this algorithm require is not much when compare with bandwidth require for service client's requests, and it degrade server performance not much. 2 @TP- 35 30 25 20 -.- -t Round-Rcbm 15 +Lmuled Bxldlng 10 4 Lmiled Bxldmg wiul Tun, 5 Dlffurim 0 E?SO B 3 Number 4 of Servers 5 6 7 +Round-Robin 200 BOddCasl Y g 150 Blddng 3 + Llrmled Bidding 8 100 5 -CLtrmled Bldding uilh Tin 2 50 Wandow + Diffusion (b) Figure 8. Graph show load balancing equality for each algorithms with Distributed Load Balancer architecture. From our experiment, the results(figure 8) show the difference in load balancing equality for each algorithm. The algorithms suit for Distributed Load Balancer architecture system are Broadcast and Bidding algorithm, if the system have more network bandwidth. f network bandwidth is essential, Limited Bidding and Limited Bidding with time window algorithm are appropriate. And if network bandwidth in the system is critical resource, Diffusion, Random and Round-Robin algorithm are appropriate. But Diffusion algorithm is better than Random and Round-Robin. 79
7. Conclusion From all our experiments,the results show that Centralized Load Balancing architecture have limitation when system have more client requests. We can solve this problem by using Distributed Load Balancing architecture. Because in Distributed Load Balancer client requests will be distributed to each server. For algorithm, algorithm that uses load information in the server will balance load better than algorithms that do not. But algorithm that use load information consumes network bandwidth in system. So system must evaluate appropriate algorithm in many related factors. 12. References [] Serpanos D.N., Georgiadis L., Bouloutas T., MMPacking: A Load and Storage Balancing Algorithm for Distributed Multimedia Servers, Circuits and Systems for Video Technology, EEE Transactions on Volume: 81, Feb. 1998, Page(s): 13-17 [2] Yen-Jen Lee, Du D.H.C., Adaptive Load Sharing and Scheduling Schemes for Distributed Continuous Media Delivery, Multimedia Computing and Systems, 1998. EEE nternational Conference on Volume: 2, 1999, Page(s): 506-51 1 vol. 2 [3] N. Venkatasubramanian and S. Ramanathan. Load Management in Distributed Video Servers, n Proceedings of the EEE 17th nternational Conference on Distributed Computing Systems(1CDCS 97), pages 528-535, Baltimore, MD, May 1997. [4] W. J. Bolosky, R. P. Fitzgerald, and J. R. Douceur. Distributed Schedule Management in the Tiger Video Fileserver, n Proceedings of the 16th ACM Symposium on Operating Systems Principles (SOSP 97), pages 21 2-223, Saint-Malo, France, October 1997. [5] Zhang, Y.; Kameda, H.; Shimizu, K., Adaptive bidding load balancing algorithms in heterogeneous distributed systems, Modeling, Analysis, and Simulation of Computer and Telecommunication Systems, 1994., MASCOTS 94., Proceedings of the Second nternational Workshop on, 1994, Page(s): 250-254. [6] Luque, E.; Ripoll, A.; Cortes, A.; Margalef, T. ; A distributed diffusion method for dynamic load balancing on parallel computers, Parallel and Distributed Processing, 1995. Proceedings. Euromicro Workshop on, 1995, Page(s): 43-50. [7] A. Dan, D. Sitaram, and P. Shahabuddin. Dynamic batching policies for an on-demaind video server, Multimedia Systems, 4 (3): 112-121, June 1996. 80