performance issues in www servers
Download
Skip this Video
Download Presentation
Performance Issues in WWW Servers

Loading in 2 Seconds...

play fullscreen
1 / 26

Performance Issues in WWW Servers - PowerPoint PPT Presentation


  • 88 Views
  • Uploaded on

Performance Issues in WWW Servers. Erich Nahum, Tsipora Barzilai, Dilip D. Kandlur IEEE/ACM Transactions on Networking, Vol. 10, No.1, Feb, 2002. Presented By Kunhao Zhou. Motivation. Problems of WWW Overloaded server Congestion in network Poorly-behaved client

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about ' Performance Issues in WWW Servers' - chava


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.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
performance issues in www servers

Performance Issues in WWW Servers

Erich Nahum,

Tsipora Barzilai,

Dilip D. Kandlur

IEEE/ACM Transactions on Networking,

Vol. 10, No.1, Feb, 2002

Presented By Kunhao Zhou

motivation
Motivation
  • Problems of WWW
    • Overloaded server
    • Congestion in network
    • Poorly-behaved client
  • Why we need improvement?
    • Customer satisfaction
    • Save money$$$
outline
Outline
  • Overview
  • WWW transactions
  • WWW optimizations
  • Tests
  • Conclusion
overview
Overview
  • New socket functions
    • acceptex(), transmitfile() in NT, send_file() in HPUX
  • Per-byte optimizations
    • Zero-copy(eliminating copies), eliminating checksums
  • Per-connection optimizations
    • Piggybacking FIN’s
    • Delaying ACK
outline1
Outline
  • Overview
  • WWW transactions
  • WWW optimizations
  • Tests
  • Conclusion
www transactions
WWW Transactions

Each transaction in WWW server include:

1. accept() new connection

2. getsockname() get peer name

3. read() the HTTP request

4. setsockopt() disable the Nagle algorithm

5. gettimeofday() determine the time

6. Parse the request

7. stat() obtain file status

www transactions cont
WWW Transactions (cont.)

8. open() the requested file

9. read() file descriptor

10. write() socket to send HTTP

header

11. write() socket to send file

12. close() file

13. close() socket

14. write() log file

outline2
Outline
  • Overview
  • WWW transactions
  • WWW optimizations
  • Tests
  • Conclusion
outline3
Outline
  • Overview
  • WWW transactions
  • WWW optimizations
  • Tests
    • Test-bed
    • Proposed socket function
    • Per-byte optimizations
    • Per-connection optimizations
  • Conclusion
experiment test bed
Experiment Test-bed
  • Hardware
    • IBM 43P RS/6000 with 128MB RAM, 200-MHz PowerPC 604e processor, 4-100mb Ethernet network cards. 1 Server, 3 clients.
  • OS
    • AIX 4.3.1
  • Web Server
    • Flash-Poll
proposed socket functions
Proposed Socket Functions
  • acceptex()

Minor improvement!

proposed socket functions1
Proposed Socket Functions
  • send_file() (single_copy)

Performance degraded!

per byte optimizations
Per-Byte Optimizations
  • Zero-copy send_file()
    • Cache mbuf
    • If files are in cache, send the cache
    • Separate buffer management from VM
  • Eliminate checksum.
    • AIX feature
per byte optimizations1
Per-Byte Optimizations
  • Zero-copy

Improved a lot!

per byte optimizations2
Per-Byte Optimizations
  • Eliminate checksum

Improved!

per connection optimizations
Per-Connection Optimizations

FIN can be sent earlier

per connection optimizations1
Per-Connection Optimizations
  • Combine the FIN With data.
    • send_file() offers a close option
    • Add option PRU_SEND_DISCONNECT to pru_usrreq(), allowing TCP layer send and close in one function call
    • Save one packet transfer
per connection optimizations2
Per-Connection Optimizations
  • Combine the FIN with data

Throughput HTTP ops/sec

Small transfer improved!

per connection optimizations4
Per-Connection Optimizations
  • TCP cumulative ACK
  • Change tcp_input()
per connection optimizations5
Per-Connection Optimizations
  • Delay ACK

Small transfer improved!

total performance increase
Total Performance Increase

Considerable improvement!

outline4
Outline
  • Overview
  • WWW transactions
  • WWW optimizations
  • Experiments
  • Conclusion
conclusion
Conclusion
  • New socket functions
    • Little increase
  • Per-byte optimizations
    • Big improvement
  • Per-connection optimizations
    • Big improvement
  • These features were implemented in AIX 4.3.2
ad