Praise for Web Protocols and Practice
“This is the most comprehensive, well-researched coverage of the basic Web protocols that I have seen. The authors have done especially well at uncovering the history and rationale of the protocol design process.”—Jeffrey Mogul, coauthor of the HTTP/1.1 standard
“This book will help demystify how the Internet and the Web work. Despite the current Web’s size and importance, it can be broken down into a small number of components that can be understood and controlled. This encyclopedic tome can be read straight through or used as a reference by those trying to understand or build sophisticated Internet applications.”—Brewster Kahle, President, Alexa Internet; Inventor of WAIS
“Web Protocols and Practice covers the most important Internet application—the Web—with unprecedented breadth, depth, and motivation. An important reference book for anyone who wants to understand the Web architecture inside and out.”—Steve McCanne, Chief Technology Officer, Inktomi
“The authors have gathered and explained a great deal of material not found elsewhere and created an encyclopedia of the how and why of the Web.”—Larry Masinter, Principal Scientist, Adobe Systems Inc.; past chair of HTTP and URI IETF working groups
“I learned a lot about the reasons for Web performance—from microscopic detail about specific interactions of layers to macroscopic traffic related issues. Everyone will want this book.”—Jon Crowcroft, Professor, Networks Systems, University College London
“This book is likely to be an invaluable resource for anyone interested in understanding the protocols and infrastructure behind the Web. I especially like the attention to the evolution and historical development of the Web protocols and to the sometimes unanticipated interactions between the various protocols.”—Sally Floyd, Senior Scientist, AT&T Center for Internet Research at the International Computer Science Institute
“This is a book that could very well have been entitled ‘Everything You Ever Wanted to Know About the Web But Did Not Know Who to Ask’.”—Roch Guerin, Alfred Fitler Moore Professor of Telecommunication Networks, University of Pennsylvania
“The book is especially useful for Web site developers who can improve the user experience at their sites through a better understanding of the protocol performance issues discussed throughout the book. The material on the evolution from HTTP 1.0 to 1.1 is difficult to find outside of scattered research papers and standards documents. Overall, this book is a valuable resource for Web professionals and anyone interested in learning what makes the Web tick.”—Ramón Cáceres, Chief Scientist, Vindigo
“The authors have done a superb job in explaining the complex interactions of the Web protocols. The book is a unique resource for anyone who wants to learn how the Web really works.”—Jorg Liebeherr, Professor, University of Virginia
“It’s a great book for anyone interested in deep knowledge of Web-based techniques and is a must for Web architects and administrators.”—Eduardo Krell, Chief Technology Officer and Web Architect, Adexus, Santiago, Chile
“Good book! Describes things I have not seen before in print. Perfect for people who have a need to understand how HTTP works.”—Patrik Faltstrom, Applications Area Director, IETF
Web Protocols and Practice: HTTP/1.1, Networking Protocols, Caching, and Traffic Measurement is an all-in-one reference to the core technologies underlying the World Wide Web. The book provides an authoritative and in-depth look at the systems and protocols responsible for the transfer of content across the Web. The HyperText Transfer Protocol (HTTP) is responsible for nearly three-quarters of the traffic on today¿s Internet. This book¿s extensive treatment of HTTP/1.1 and its interaction with other network protocols make it an indispensable resource for both practitioners and students.
Providing both the evolution and complete details of the basic building blocks of the Web, Web Protocols and Practice begins with an overview of Web software components and follows up with a description of the suite of protocols that form the semantic core of how content is delivered on the Web. The book later examines Web measurement and workload characterization and presents a cutting-edge report on Web caching and multimedia streaming. It concludes with a discussion on research perspectives that highlight topics that may affect the future evolution of the Web.
Numerous examples and case studies throughout the book detail key developments in Web technology, including the following:
Timely and in-depth, Web Protocols and Practice: HTTP/1.1, Networking Protocols, Caching, and Traffic Measurement is the first book to document the Web¿s technical backbone in a comprehensive manner.
I. GETTING STARTED.1. Introduction.
Origin and Growth of the World Wide Web.
Historical Evolution of the Web.
The State of the Web.
Semantic Components of the Web.
Uniform Resource Identifer (URI).
HyperText Markup Language (HTML).
HyperText Transfer Protocol (HTTP).
Terms and Concepts.
Content on the Web.
Topics Not Covered.
Tour Through the Book.
II. WEB SOFTWARE COMPONENTS.2. Web Clients.
Client as a program.
Evolution of the browser.
Web-related browser functions.
Canonical Web transfer example.
Issuing a request from a browser.
Request message headers.
Configuring browser for non-protocol functions.
Browser security issues.
Motivations for cookies.
User's control over cookies.
Privacy problems with cookies.
Searching on the Web.
Use of spiders in search engines.
Intelligent agents and special-purpose browsers.
Summary.3. Web Proxies.
History and evolution of intermediaries.
High-level classification of proxies.
Sharing access to the Web.
Transforming requests and responses.
Gateway to non-HTTP systems.
Filtering requests and responses.
HTTP-related proxy roles.
Steps in request-response exchange with a proxy.
Handling HTTP requests and responses.
Proxy as Web server.
Proxy as Web client.
Example use of a proxy.
Proxy chaining and hierarchies.
Proxy privacy issues.
Other kinds of proxies.
Reverse proxies or surrogates.
Summary.4. Web Servers.
Web Site Versus Web Server.
Handling a Client Request.
Steps in Handling a Client Request.
Dynamically Generated Responses.
Creating and Using Cookies.
Sharing Information Across Requests.
Sharing HTTP Responses Across Requests.
Sharing Metadata Across Requests.
Event-Driven Server Architecture.
Process-Driven Server Architecture.
Hybrid Server Architecture.
Multiple Web Sites on a Single Machine.
Multiple Machines for a Single Web Site.
Case Study: Apache Web Server.
HTTP Request Processing.
III. WEB PROTOCOLS.5. Protocols Underlying HTTP.
Evolution of the Internet Architecture.
IP Design Goals.
IP Header Details.
Transmission Control Protocol 0.
Socket Abstraction 1.
Ordered Reliable Byte Stream.
Opening and Closing a TCP Connection.
Sliding-Window Flow Control.
Retransmission of Lost Packets.
TCP Congestion Control.
TCP Header Details.
Domain Name System.
DNS Queries and the Web.
DNS-Based Web Server Load Balancing.
File Transfer Protocol.
Simple Mail Transfer Protocol.
The Network News Transfer Protocol.
Properties of Application-Layer Protocols.
Summary.6. HTTP Protocol Design and Description.
Overview of HTTP.
HTTP language elements.
HTTP/1.0 Request Methods.
HTTP/1.0 Response classes.
SSL and Security.
HTTPS: Using SSL in Web exchanges.
Security in HTTP/1.0.
Protocol compliance and interoperability.
Version number and interoperability.
MUST, SHOULD, MAY requirement levels.
Summary.7. HTTP/1.1 221.
The evolution of HTTP/1.1 protocol.
History of evolution.
Problems with HTTP/1.0 25.
New concepts in HTTP/1.1.
Methods, headers, response codes in 1.0 and 1.1.
Old and new request methods.
Old and new headers.
Old and new response codes.
Caching related terms.
Caching in HTTP/1.0.
Caching in HTTP/1.1.
The Range request.
The Expect/Continue mechanism.
The Connection: Keep-Alive mechanism of HTTP/1.0.
Evolution of HTTP/1.1 persistent connection mechanism.
The Connection header.
Pipelining on persistent connections.
Closing persistent connections.
Learning about the server.
Learning about intermediate servers.
Upgrading to other protocols.
Internet address conservation.
Security, authentication, and integrity.
Security and authentication.
The role of proxies in HTTP/1.1.
Types of proxies.
Syntactic requirements on an HTTP/1.1 proxy.
Semantic requirements on an HTTP/1.1 proxy.
Other miscellaneous changes.
Method-related miscellaneous changes.
Header-related miscellaneous changes.
Response-code-related miscellaneous changes.
Summary.8. HTTP/TCP Interaction.
The TIME WAIT State.
Aborted HTTP Transfers.
Multiplexing TCP Connections.
Motivation for Parallel Connections.
Problems with Parallel Connections.
Combining System Calls.
Managing Multiple Connections.
IV. MEASURING AND CHARACTERIZING WEB TRAFFIC.9. Web Traffic Measurement.
Motivation for Web Measurement.
Motivation for Content Creators.
Motivation for Web Hosting Companies.
Motivation for Network Operators.
Motivation for Web/Networking Researchers.
Common Log Format (CLF).
Extended Common Log Format (ECLF).
Preprocessing Measurement Data for Analysis.
Parsing Measurement Data.
Filtering Measurement Data.
Transforming Measurement Data.
Drawing Inferences From Measurement Data.
Limitations of HTTP Header Information.
Ambiguous Client/Server Identity.
Inferring User Actions.
Detecting Resource Modifications.
Saskatchewan Server Log Study.
British Columbia Proxy Log Study.
Boston University Client Log Study.
AT&T Packet-Trace Study.
Summary.10. Web Workload Characterization.
Applications of Workload Models.
Selecting Workload Parameters.
Statistics and Probability Distributions.
Mean, Median, and Variance.
HTTP Message Characteristics.
HTTP Request Methods.
HTTP Response Codes.
Web Resource Characteristics.
Number of Embedded Resources.
User Behavior Characteristics.
Session and Request Arrivals.
Clicks per Session.
Request Interarrival Time.
Applying Workload Models.
Combining Workload Parameters.
Validating the Workload Model.
Generating Synthetic Traffic.
Access to User-Level Data.
Information Available to Software Components.
Application of User-Level Data.
V. WEB APPLICATIONS.11. Web Caching.
The origins and goals of Web Caching.
What is cacheable?
Where is caching done?
How is caching done?
Deciding whether a message is cacheable.
Cache replacement and storing response in cache.
Returning a cached response.
Maintaining a cache.
Rate of change of resources.
Internet Cache Protocol (ICP).
Cache Array Resolution Protocol (CARP).
Cache Digest Protocol.
Web Cache Coordination Protocol (WCCP).
Cache software and hardware.
Cache software: The Squid cache.
Impediments to caching.
Privacy issues in caching.
Caching versus replication.
Summary.12. Delivering Multimedia Streams.
Audio and Video Data.
Multimedia Streaming Applications.
Properties of Multimedia Applications.
Delivering Multimedia Content.
Limitations of IP Networks.
Multimedia-on-Demand Over HTTP.
Protocols for Multimedia Streaming.
Real Time Streaming Protocol.
Similarities and Differences.
RTSP Request Methods.
RTSP Status Codes.
VI. Research Perspectives.13. Research Perspectives in Caching.
Cache revalidation and invalidation.
Costs associated with revalidation.
The Piggybacking approach.
End-to-end information exchange.
Volumes and Filters: Practical details.
Volume Construction Algorithms.
Evaluation of volume construction algorithms.
End-to-end information exchange summary.
Trade-offs in Prefetching.
Summary.14. Research Perspectives in Measurement.
Packet Monitoring of HTTP Traffic.
Tapping a Link.
Reconstructing the Ordered Stream.
Extracting HTTP Messages.
Generating HTTP Traces.
Analyzing Web Server Logs.
Parsing and Filtering.
Publicly-Available Logs and Traces.
Measuring Multimedia Streams.
Static Analysis of Multimedia Resources.
Multimedia Server Logs.
Packet Monitoring of Multimedia Streams.
Multi-Layer Packet Monitoring.
Summary.15. Research Perspectives in Protocol Issues.
Multiplexing HTTP Transfers.
WebMux: An experimental multiplexing Protocol.
TCP Control Block Interdependence.
Integrated Congestion Management.
Adding a Differencing Mechanism to HTTP/1.1.
Motivations for a differencing mechanism for HTTP messages.
Evaluation of delta algorithms.
Deployment issues of delta mechanism in HTTP/1.1.
Status of adding delta mechanism to HTTP/1.1.
HTTP/1.1 Protocol compliance.
Motivation for protocol compliance study.
Testing compliance of clients and proxies.
Methodology of testing compliance.
PROCOW: A large scale compliance study.
Summary of protocol compliance.
End-to-end measurements to study Web performance.
Identifying the factors in end-to-end performance.
Report on an end-to-end performance study.
Summary of end-to-end performance study.
Other extensions to HTTP.
Transparent Content Negotiation.
WebDAV|Web Distributed Authoring and Versioning.
An HTTP Extension Framework.
This book describes the technical underpinnings of the World Wide Web. We discuss the technology for transferring, caching, and measuring the messages that carry the content between Web sites and end users. The messages are exchanged between clients, proxies, and servers|the three main software components of the Web. The format and transfer of these messages are dictated by communication protocols codified in standards documents over a period of years. Evaluating and improving Web performance relies on having effective techniques for collecting and analyzing measurements of the message traffic. By moving Web content closer to the end users, caching reduces user-perceived latency, as well as load on the Web servers and the underlying network. Web traffic is moving from delivery of text and image content to include audio and video streaming. Multimedia streaming has its own suite of communication protocols. These topics, constituting the technical core of the Web, are discussed in detail in this book.
This book provides a comprehensive treatment of the systems and protocols responsible for the transfer of Web content. The audience for this book includes Web technologists, Web site administrators, developers who rely on the Web infrastructure, students in networking and the Web, and the Web research community. The book focuses on the mature and stable aspects of the Web. In contrast to the rapidly changing techniques for creating and displaying Web content, the standardized communication protocols discussed in the book change relatively slowly. A variety of examples, state-of-the-art reports, and case studies are used to illustrate the operation of the Web and the interplay among the various components. The book includes detailed examples of the HTTP protocol, a state-of-the-art overview of Web caching and multimedia streaming, and case studies of the Apache Web server, the Squid proxy, and traffic measurement techniques. The book is a valuable resource for understanding the technology and current practices of the Web.
The first section of the book consists of an opening chapter that provides a broad overview of the evolution of the World Wide Web and discusses the Web's naming infrastructure, document language, and message exchange protocol. The remainder of the book is divided into five sections consisting of 14 chapters:
The book is self-contained and does not assume any prior knowledge of Web or networking technology. An extensive bibliography points readers to additional information on specific topics. The book has several audience segments, including:
The book can be used as a reference, a self-study guide, or part of a one- or two-semester course on Web technology or networking. Readers may follow a variety of paths through the book, depending on their backgrounds and interests. Some readers may skip the elementary chapters, whereas other readers may skip the research perspectives material.
Click below for Bibliography related to this title: