리눅스에서 레이어-7 웹 클러스터링 시스템의 구현 및 사용자 요청률 차이의 인식에 기반한 성능 개선

Implementation of a Layer-7 Web Clustering System on Linux with Performance Enhancements via Recognition of User Request Rate Variations

  • 발행 : 2005.02.01

초록

인터넷을 통해 웹이 보편화되면서 폭발적으로 증가하는 사용자의 서비스 요구를 수용하는 것은 점점 더 어려운 문제가 되고 있다. 사용자의 증가를 예측할 수 없는 상황에서 매번 고성능의 시스템을 구입하는 것은 좋은 해결책이 될 수 없다 즉, 필요할 때에 시스템을 적절히, 간단하게 확장할 수 있는 방법이 있어야 한다. 웹 클러스터링 시스템은 이러한 요구를 수용할 수 있는 기술로서 주목받고 있다. 본 논문은 웹 클러스터링 시스템 연구에서 두 가지 점에서 기여를 하고 있다. 우선, FreeBSD상에서 구현되었던 Layer-7 스위치 기법 기반의 웹 클러스터링 시스템을, 많은 사용자에 의해 선호되고 있는 Linux 운영체제에 구현하였다. 이 두 운영체제 사이에는 상당한 차이가 있으며 본 논문에서는 Linux상의 구현에 대해 상세히 언급한다. 두번째는 Zipf-like한 웹 요청의 특성을 반영하여 각 요청에 따라 자원을 클러스터 상에서 효과적으로 할당할 수 있는 DS (Dual Scheduling) 부하 분산 기법을 제안하였다. 실험을 통해 이기법이 시스템 성능을 향상시키는 사실을 보인다.

The popularity of Web service is ever increasing. As the number of services and clients continue to increase, the problem of providing a system that scales with this increase is becoming more difficult. A costly and ineffective method is to buy a new system that is more powerful every time the load becomes unbearable. h more cost effective solution is to expand the system as the need arises. This is the approach taken in Web cluster systems. However, providing effective scalability in a Web cluster system is stil1 an open issue. In this study, we implement a Web cluster system based on Layer 7 switching technique on Linux. The implementation is based on a design proposed and implemented by Aron et al., but on the FreeBSD. Though the design li the same, due to the vast difference between the FreeBSD and Linux, the implementation presented in this paper is totally new. We also propose the Dual Scheduling (DS) load distribution algorithm that distributes the requests to the system resources by observing the variations in the request rate. We show through measurement on our implementation that the DS alorithm performs considerably bettor than previous algorithms.

키워드

참고문헌

  1. M. Aron, D. Sanders, P. Druschel, and W. Zwaenepoel, 'Scalable Content-aware Request Distribution in Cluster-based Network Servers,' In Proceedings of the USENlX 2000 Annual Technical Conference, 2000
  2. V.S. Pai, M. Aron, G. Banga, M. Svendsen, P. Druschel, W. Zwaenepoel, and E. Nahum, 'Locality-aware Request Distribution in Cluster-based Network Servers,' In Proceedings of the Eighth International Conference on Architectural Support for Programming Languages and Operating Systems (ASPLOS-VIII), 1998 https://doi.org/10.1145/291069.291048
  3. T. Brisco, 'DNS support for load balancing,' RFC 1794, April, 1995
  4. T.T. Kwan, RE. McGrath, and D.A. Reed. 'NCSA's World Wide Web server: Design and performance,' IEEE Computer, Vol. 28, no. 11, pp 68-74, Nov. 1995 https://doi.org/10.1109/2.471181
  5. R. Shah, High Performance Cluster Computing Vol. 1, pp 340 363, Prentice Hall, New Jersey, 1999
  6. K. Egevang and P. Francis, 'The IP Network Address Translator (NAT),' RFC1631, May 1994
  7. W. Simpson, 'IP in IP Tunneling,' RFC 1853, October, 1995
  8. O.P. Damani, P.Y. Chung, Y. Huang, C. Kintala, and Y.M. Wang, 'ONE-IP: Techniques for Hosting a Service on a Cluster of Machines,' Journal of Computer Networks and ISDN Systems, v.29, pp. 1019-1027, Sept. 1997 https://doi.org/10.1016/S0169-7552(97)00030-5
  9. E. Anderson, D. Patterson, and E. Brewer, 'The Magicrouter, an application of fast packet interposing,' University of California, Berkeley, May, 1996
  10. Cisco's LocalDirector (http://www.cisco.com/)
  11. Linux virtual server project (http://www.Linuxvirtualserver.org/)
  12. W. Zhang, 'Linux Virtual Servers for Scalable Network Services,' Ottawa Linux Symposium, July 19-22, 2000
  13. G.D. Hunt, G.S. Goldxzmidt, R.P. King, and R. Mukherjee. 'Network Dispatcher: A Connection Router for Scalable Internet Services,' In Proceedings of the 7th International World Wide Web Conference, Brisbane, Australia, Apr. 1998 https://doi.org/10.1016/S0169-7552(98)00088-9
  14. A. Cohen, S. Rangarajan, and H. Slye, 'On the Performance of TCP splicing for URL-aware Redirection,' In Proceedings of the 2nd USENIX Symposium on Intemet& Systems, 1999
  15. C. S. Yang and M. Y. Luo, 'Efficient Support for Content-based Routing in Web Server Cluster,' In Proceedings of the 2nd USENIX Symposium on Internet Technologies & Systems, 1999
  16. C. S. Yang and M. Y. Luo, 'Design and Implementation of an Administration System for Distributed Web server,' In Proceedings of the 12nd USENIX System Administration Conference, December, 1998
  17. X. Zhang, M. Barrientos, B. Chen, and M. Seltzer, 'HACC: An Architecture for Cluster-Based Web Server,' In Proceedings of the 3rd USENIX Windows NT Symposium, 1999
  18. M. Aron, P. Druschel, and W. Zwaenepoel, 'Efficient Support for P-HTTP in Cluster-Based Web Servers,' In Proceedings of the USENIX 1999 Annual Technical Conference, Monterey, CA. June 1999
  19. Transmission Control Protocol (TCP), RFC 0793, September, 1981
  20. C. Cunha, A. Bestavros, and M. Crovella, 'Characteristics of WWW Client-based Traces,' Technical Report BUGS95-010, April 1995
  21. L. Breslau, P. Cao, L. Fan, G. Phillips, and S. Shenker, 'Web Caching and Zipf-like Distributions: Evidence and Implications,' In the Proceedings of Infocom '99, April 1999. https://doi.org/10.1109/INFCOM.1999.749260
  22. M. Arlitt and C. Williamson, 'Web server workload characteristics: The search for invariants,' In the Proceedings of the ACM SIGMETRlCS '96, May 1996 https://doi.org/10.1145/233013.233034
  23. P. Barford and M. Crovella, 'Generating Representative Web Workloads for Network and Server Performance Evaluation,' In the Proceedings of the ACM SIGMETRlCS '98, June 1998 https://doi.org/10.1145/277858.277897