1 / 26

Web Server Performance in a WAN Environment

Web Server Performance in a WAN Environment. Vincent W. Freeh Computer Science North Carolina State Vsevolod V. Panteleenko Computer Science & Engineering University of Notre Dame. Complex design and interaction Multiple tiers Appliance Web, app, & DB servers

parvani
Download Presentation

Web Server Performance in a WAN Environment

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Web Server Performance in aWAN Environment Vincent W. Freeh Computer Science North Carolina State Vsevolod V. Panteleenko Computer Science & Engineering University of Notre Dame

  2. Complex design and interaction Multiple tiers Appliance Web, app, & DB servers Study performance of web server Cached pages Most testing Simulated load LAN environment Our evaluation adds Simulated WAN environment Small MTU, BW limits, latency Shows some optimization aren’t Large web site

  3. Evaluating a web server • Three parts • Measuring the server • Loading the server • Supporting the server Server demand Net Tiers 2&3 Server load

  4. Net Two ways to load server • Synthetic load • Controlled • Reproducible • Flexible • Only as good as assumptions, mechanisms • Hard to replicate real world • Real-world load • Uncontrolled • Not reproducible (can use traces) • Accurate model of system • Hard to produce extreme or rare conditions • Discussion • Need both • Validate simulations with real-world tests

  5. Net Loading the server • Our tests use synthetic load • Three load-generating tools • Micro-benchmarking tool • Requests a single object at a constant rate • Tests delivery of static, cached documents • Establishes base line

  6. Net Modified SURGE • SURGE • Scalable URL reference generator • Barford & Crovella, U Boston • Emulates statistical distribution • Object & request size • Object popularity • Embedded object references • Temporal locality • Use idle periods • Modifications • Converted from process based to event based To increase number of clients • Server-throttling problem eliminated

  7. Net Delays and limits • Emulate WAN parameters in a LAN • Network delays • Bandwidth limits • Modified kernel and protocol stack • Separate delay queue per TCP connection • Necessary for accurate emulation • More accurate than Dummynet & NISTnet (per interface)

  8. Measuring a web server HTTP Apache, TUX Network TCP/IP OS drivers request reply

  9. Measuring a web server Measure utilization using HW performance counters HTTP Network OS request reply

  10. Test environment Client NIC • OS: Linux 2.4.8 • Node: (server & clients) • Pentium III, 650MHz • 512MB main memory • NIC: • 3COM 3C590 • 100 Mbps ethernet • Direct connect • Software: • Client: microbenchmarking, SURGE, delay/limits • Server: Apache, Tux • Warmed client • No cache misses Server NIC NIC Client NIC

  11. Cost breakdown – file size, Apache • MTU = 536 bytes • Delay = 200 ms • BW = 56 Kbps • Data send rate = 3MB/s Majority of time in interrupt (recv’g) But most data is sent.

  12. Cost breakdown - file size, TUX • MTU = 536 bytes • Delay = 200 ms • BW = 56 Kbps • Data send rate = 6 MB/s • Twice data send rate as Apache. • Essentially all cost in interrupts.

  13. Apache TUX Server send rate 3.0 MB/s 6.0 MB/s Packets rec’d / s 5738 11,991 Packets sent / s 6156 11,878 Interrupts / s 7482 13,974 Concurrent connections 784 1451 Apache versus TUX

  14. Cost breakdown vs. MTU • Surge parameters • Size = 10 KB • Delay = 200 ms • BW = 56 Kbps • Data send rate = 6 MB/s

  15. Effects of network delay • Surge parameters • MTU = 536 bytes • Size = 10 KB • BW = 56 Kbps • Data send rate = 6 MB/s

  16. Effects of bandwidth limits • Surge parameters • MTU = 536 bytes • Size = 10 KB • Delay = 200 ms • Data send rate = 6 MB/s 20% decrease in overhead from 28kbps to infinity

  17. Persistent connections 10% decrease going from 1 to 16 requests per connection • Surge parameters • MTU = 536 bytes • Size = 10 KB • Delay = 200 ms • Size = 10 KB • Data send rate = 6 MB/s

  18. Copy and checksumming • Surge parameters • MTU = 536 bytes • Size = 10 KB • Delay = 200 ms • Size = 10 KB • Data send rate = 6 MB/s

  19. Re-assess value of some optimizations • Copy & checksumming avoidance • LAN: 25-111% copy or 21-33% copy & 10-15% checksum • WAN: 10% combined • Select optimization • LAN: 28% • WAN: < 10% • Connection open/close avoidance (HTTP 1.1) • LAN: “greatly”, “significantly” • WAN: < 10%

  20. Conclusion • Most processing in protocol stack and drivers • Small MTU size increases processing cost • Little effect from • Network delay • Bandwidth limitations • Persistent connections • End-user request latency depends • Primarily on connection bandwidth • Secondarily on network delay • Future • Dynamic & uncached pages • Add packet loss Work supported by IBM UPP & NSF CCR9876073 www.csc.ncsu.edu/faculty/freeh/

  21. End

  22. Persistent connections - packets/s

  23. Number of Packets vs. MTU

  24. Apache Largest install base User space Process-based model TUX Niche server Kernel space Event-based model Aggressive optimizations Copy/checksum avoidance Object, name caching Web (HTTP) servers

  25. Measuring a web server HTTP Network OS request reply

  26. Interrupt coalescing • Decreases interrupt scheduling overhead • Interrupt every 2 ms

More Related