Network Performance Effects on HTTP/1.1, CSS1, and PNG

12
2/24/2000 Network Performance Effects on HTTP/1.1, CSS1, and PNG Luis Rivera Henrik Frystyk Nielsen : W3C James Gettys : DEC Anselm Baird-Smith: W3C

description

Network Performance Effects on HTTP/1.1, CSS1, and PNG. Henrik Frystyk Nielsen : W3C James Gettys : DEC Anselm Baird-Smith: W3C. Luis Rivera. Outline. Goals HTTP 1.0 vs HTTP 1.1 Specification Performance Further improvements Compression Web content: CSS, PNB and MNG Conclusions - PowerPoint PPT Presentation

Transcript of Network Performance Effects on HTTP/1.1, CSS1, and PNG

Page 1: Network Performance Effects on HTTP/1.1, CSS1, and PNG

2/24/2000

Network Performance Effects on HTTP/1.1, CSS1,

and PNG

Luis Rivera

Henrik Frystyk Nielsen : W3CJames Gettys : DECAnselm Baird-Smith: W3C

Page 2: Network Performance Effects on HTTP/1.1, CSS1, and PNG

Luis Rivera 2/24/2000

Outline

• Goals• HTTP 1.0 vs HTTP 1.1

» Specification» Performance

• Further improvements» Compression» Web content: CSS, PNB and MNG

• Conclusions• This was two years ago, was about today?

Page 3: Network Performance Effects on HTTP/1.1, CSS1, and PNG

Luis Rivera 2/24/2000

Paper Goals

• Main Goal» Present key performance differences between HTTP/1.1

and HTTP/1.0» Stress the importance of changes in Web Content

• Secondary Goals» Expose the performance advantages of a well implemented

HTTP/1.1 protocol» Show advantages of CSS, PNG and MNG

• Did I miss something?

Page 4: Network Performance Effects on HTTP/1.1, CSS1, and PNG

Luis Rivera 2/24/2000

Problem?

• HTTP/1.0» Not designed for multiple transmissions in the same request» Makes use of multiple TCP connections» Small multiple transmissions are affected by TCP slow start

mechanism» Patch: “Keep-Alive” extensions don’t work with multiple

proxies» Low support for compression

• However it is still heavily used !!!

Page 5: Network Performance Effects on HTTP/1.1, CSS1, and PNG

Luis Rivera 2/24/2000

Solution?

• HTTP/1.1» “Persistent connections”» Data compression» Ranges facilities

– Partial retrieval of objects

» Cache validation– “poor man’s multiplexing”

• Design Goals» Increase network use efficiency» Allow reliable use of caching» Improve performance perceived by end user!!!

Page 6: Network Performance Effects on HTTP/1.1, CSS1, and PNG

Luis Rivera 2/24/2000

Implementation headaches

• Testbed» LAN, WAN and PPP» Jigsaw and Apache servers (SPARC platform)» Libwww robot, Netscape and Explorer (Pentium and Alpha

platforms)» Microscape!

• Initial testing» Pipelining: Achieves better efficiency!» Persistent connections: Decreases TCP packets» BUT: Multiple connections outperforms both !!!

• What went wrong?

Page 7: Network Performance Effects on HTTP/1.1, CSS1, and PNG

Luis Rivera 2/24/2000

Pipelining

• Maintains several outstanding requests on the same connection

• Tuned to produce as few small headers as possible• Requests are buffered

» Improves network utilization» Need to be flushed (size threshold, timer)» Flushing can take advantage of the application knowledge!

• Interfere with Nagle’s algorithm

• Can you really rely on the application knowledge?

Page 8: Network Performance Effects on HTTP/1.1, CSS1, and PNG

Luis Rivera 2/24/2000

Performance Tuned Version

• Tuned HTTP/1.1 outperforms HTTP/1.0• Buffering

» Reduces the number of TCP packets required» Increases packet size

• Pipelining» Needs to be complemented with buffering

• Bigger and fewer packets increase server performance!!!

• Look at performance tables !!!

Page 9: Network Performance Effects on HTTP/1.1, CSS1, and PNG

Luis Rivera 2/24/2000

Compression• Data, images are already compressed• Could help to overcome TCP slow start effects• Increases the chances to generate a new batch of

request• Decreases elapsed time (using zip compression)• HTML tags should be lower cased for best

compression• This is good, but what is the cost of compressing web

pages?

Page 10: Network Performance Effects on HTTP/1.1, CSS1, and PNG

Luis Rivera 2/24/2000

Web Content• Fact

» HTML was not born to be used the way it is being used!» However, it has been proved flexible

• Changes represent» Potential web traffic reduction» Web page development could be easied

• Style Sheets for web page designers: CSS» Better control of page representation and layout» Saves requests by replacing images in the Unicode char set

• PNG and MNG for images and animation

Page 11: Network Performance Effects on HTTP/1.1, CSS1, and PNG

Luis Rivera 2/24/2000

Conclusions

• HTTP/1.1+pipelining outperforms HTTP/1.0• Pipelining can significantly improve performance

» Must be used with buffering and other tricks to be effective» Specially useful revalidating cached items

• HTTP/1.1 new techniques saves bandwidth and uses the network more efficiently

• Such changes could be improved further by changes in web content» For style sheets, images, animations, more?

Page 12: Network Performance Effects on HTTP/1.1, CSS1, and PNG

Luis Rivera 2/24/2000

Discussion

• What about interactions between HTTP/1.1 and a hierarchy of proxy caches

• Performance improvements are nice but,» Will developers really care if they are achieved though

heavy modification of existing technologies?» Are those performance improvements really significant to

justify the change?

• Changes to web content make sense in an ever changing web environment !!!