DOI QR코드

DOI QR Code

Development of a High Performance Web Server Using A Real-Time Compression Architecture

실시간 압축 전송 아키텍쳐를 이용한 고성능 웹서버 구현

  • 민병조 (연세대학교 대학원 전기전자공학과) ;
  • 황준 (연세대학교 대학원 전기전자공학과) ;
  • 김학배 (연세대학교 전기전자공학과)
  • Published : 2004.12.01

Abstract

In these days, such services are popularized as E-commerce, E- government, multimedia services, and home networking applications. Most web traffics generated contemporarily basically use the Hyper Text Transfer Protocol(HTTP). Unfortunately, the HTTP is improper for these applications that comprise significant components of the web traffics. In this paper, we introduce a real-time contents compression architecture that maximizes the web service performance as well as reduces the response time. This architecture is built into the linux kernel-based web accelerating module. It guarantees not only the freshness of compressed contents but also the minimum time delay using an server-state adaptive algorithm, which can determine whether the server sends the compressed message considering the consumption of sewer resources when heavy requests reach the web server. Also, We minimize the CPU overhead of the web server by exclusively implementing the compression kernel-thread. The testing results validates that this architecture saves the bandwidth of the web server and that elapsed time improvement is dramatic.

현재 인터넷은 HTTP 프로토콜을 중심으로 구성되어 있다. 전자상거래, 전자정부, 인터넷 멀티미디어, 홈 네트워킹 등 현재 인터넷으로 가능한 서비스는 점점 증가하고 있지만, 비교적 단순한 메시지의 전송에 기반해 설계된 HTTP가 현재의 이러한 복잡한 서비스와는 적합하지 않는 경우도 있다. 즉, 점점 더 다양해지는 서비스고 인해, 서버 쪽에서는 클라이언트당 점점 더 많은 양의 데이터를 전송하게 되는 것이다. 이러한 웹 서버측의 메시지 전송 부담과 전송 시간, 대역폭의 절감을 위해서, HTTP 프로토콜의 압축전송헤더를 이용한 실시간 압축 전송 아키텍쳐를 개발하였다. 이를 이용하여, 정적 페이지를 실시간으로 압축/전송함으로써, 웹서버측의 대역폭을 절감하였고, 전송속도를 증가시켰다. 또한, 상대적으로 CPU 집중적인 압축연산을 커널 영역에서 수행하여, 압축연산으로 인한 서버측의 CPU 자원사용을 최소화하였다.

Keywords

References

  1. R. Fielding, J. Gettys, J. Mogul, H. Frystyk and T. Berners Lee, 'Hypertext transfer protocol-HTTP/1.1,' IETF RFC 2068, January, 1997
  2. http://www.rankserv.com
  3. J. L. Gailly. Gzip program and documentation, 1993. Source code available from ftp://prep.ai.mit.edu/pub/gnu/gzip-*.tar
  4. H. Nielsen, J. Gettys, A. Baird-Smith, E. Prud'hommeaux, H. Lie, C. Lilley, 'Network performance effects of HTTP/1.1, CSS1 and PNG' ACM SIGCOMM Computer Comm. Review, Proc. of the ACM SIGCOMM'97 conf. on Applications, technologies, architectures and protocols for computer communication, Vol.27, pp.155-166, 1997
  5. http://www.apache.org
  6. http://www.microsoft.com/iis
  7. E. Levy, A. Iyengar, J. Song and D. Dias, 'Design and Performance of a Web Server Accelerator,' IEEE INFO COM'99, March, 1999 https://doi.org/10.1109/INFCOM.1999.749261
  8. J. Song, E. Levy, A Iyengar and D. Dias, 'Design Alternatives for Scalable Web Server Accelerators,' IEEE ISPASS, pp.184-192, 2000 https://doi.org/10.1109/ISPASS.2000.842299
  9. 박종규,민병조,임한나,박장훈,장휘,김학배, '커널 쓰레드 웹가속기(SCALA-AX) 개발', 정보처리학회논문지A, 제9-A권 제3호, pp.327-332, 2002 https://doi.org/10.3745/KIPSTA.2002.9A.3.327
  10. A. Lempel, J. Ziv, 'A Universal Algorithm for Sequential Data Compression,' IEEE Trans. Information Theory, pp. 337-343, 1977
  11. zdnet, Inc. Webbench Benchmark Information. http://www.zdnet.com/etestinglabs/sto-ries/benchmarks/0,8829,2326243,00.html 1998
  12. http://httpd.apache.org/docs/programs/ab.html