Web-Server Load Balancing, a process that distributes the load of various incoming requests to several servers (e.g. using a gateway that functions as a dispatcher), in an effort to balance the load among these servers in an optimal way. This thesis inspects the various methods and strategies of server load balancing, clearly identifying the advantages and disadvantages of each strategy. We present a working, high performance implementation of the content-aware traffic redirection strategy, using the most well known scheduling algorithms. We also present the results of testing the effectiveness of the implementation and the scheduling algorithms in several scenarios. Finally, based on our work, we concluded that what seem to be the best scheduling algorithms in the case of identical requests are the least CPU usage and the weighted random scheduling algorithms which have the best response time and the best throughput. While in the case of non-identical requests the weighted round robin and the least CPU usage have the least response time and the greatest throughput. By: Abdul-Lateef Haji-Ali, Yael Jari, Bashar Shehadeh, Mhd. Mamdouh Tarabishi Wael Tayara Supervised by: Dr. Ghassan Saba