Towards a SPDY'ier Mobile Web?

Total Page:16

File Type:pdf, Size:1020Kb

Towards a SPDY'ier Mobile Web? Towards a SPDY’ier Mobile Web? Jeffrey Erman, Vijay Gopalakrishnan, Rittwik Jana, K.K. Ramakrishnan AT&T Labs – Research One AT&T Way, Bedminster, NJ, 07921 {erman,gvijay,rjana,kkrama}@research.att.com ABSTRACT spite the plethora of `apps', web access remains one of the Despite its widespread adoption and popularity, the Hyper- most important uses of the mobile internet. It is therefore text Transfer Protocol (HTTP) suffers from fundamental critical that the performance of the cellular data network be performance limitations. SPDY, a recently proposed alter- tuned optimally for mobile web access. native to HTTP, tries to address many of the limitations The Hypertext Transfer Protocol (HTTP) is the key build- of HTTP (e.g., multiple connections, setup latency). With ing block of the web. Its simplicity and widespread support cellular networks fast becoming the communication chan- has catapulted it into being adopted as the nearly `univer- nel of choice, we perform a detailed measurement study to sal' application protocol, such that it is being considered understand the benefits of using SPDY over cellular net- the narrow waist of the future internet [11]. Yet, despite its works. Through careful measurements conducted over four success, HTTP suffers from fundamental limitations, many months, we provide a detailed analysis of the performance of which arise from the use of TCP as its transport layer of HTTP and SPDY, how they interact with the various protocol. It is well-established that TCP works best if a layers, and their implications on web design. Our results session is long lived and/or exchanges a lot of data. This is show that unlike in wired and 802.11 networks, SPDY does because TCP gradually ramps up the load and takes time not clearly outperform HTTP over cellular networks. We to adjust to the available network capacity. Since HTTP identify, as the underlying cause, a lack of harmony between connections are typically short and exchange small objects, how TCP and cellular networks interact. In particular, the TCP does not have sufficient time to utilize the full net- performance of most TCP implementations is impacted by work capacity. This is particularly exacerbated in cellular their implicit assumption that the network round-trip la- networks where high latencies (hundreds of milliseconds are tency does not change after an idle period, which is typi- not unheard off [18]) and packet loss in the radio access net- cally not the case in cellular networks. This causes spurious work is common. These are widely known to be factors that retransmissions and degraded throughput for both HTTP impair TCP's performance. and SPDY. We conclude that a viable solution has to ac- SPDY [7] is a recently proposed protocol aimed at ad- count for these unique cross-layer dependencies to achieve dressing many of the inefficiencies with HTTP. SPDY uses improved performance over cellular networks. fewer TCP connections by opening one connection per do- main. Multiple data streams are multiplexed over this single TCP connection for efficiency. SPDY supports multiple out- Categories and Subject Descriptors standing requests from the client over a single connection. C.2.2 [Computer-Communication Networks]: Network SDPY servers transfer higher priority resources faster than Protocols|Applications; C.4 [Performance of Systems]: low priority resources. Finally, by using header compression, Measurement techniques SPDY reduces the amount of redundant header information each time a new page is requested. Experiments show that Keywords SPDY reduces page load time by as much as 64% on wired networks and estimate as much as 23% improvement on cel- SPDY, Cellular Networks, Mobile Web lular networks (based on an emulation using Dummynet) [7]. In this paper, we perform a detailed and systematic mea- 1. INTRODUCTION surement study on real-world production cellular networks As the speed and availability of cellular networks grows, to understand the benefits of using SPDY. Since most web- they are rapidly becoming the access network of choice. De- sites do not support SPDY { only about 0.9% of all web- sites use SPDY [15] { we deployed a SPDY proxy that func- tions as an intermediary between the mobile devices and web Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed servers. We ran detailed field measurements using 20 pop- for profit or commercial advantage and that copies bear this notice and the full cita- ular web pages. These were performed across a four month tion on the first page. Copyrights for components of this work owned by others than span to account for the variability in the production cellular ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or re- network. Each of the measurements was instrumented and publish, to post on servers or to redistribute to lists, requires prior specific permission set up to account for and minimize factors that can bias the and/or a fee. Request permissions from [email protected]. results (e.g., cellular handoffs). CoNEXT’13, December 9–12, 2013, Santa Barbara, California, USA. Copyright 2013 ACM 978-1-4503-2101-3/13/12 ...$15.00. http://dx.doi.org/10.1145/2535372.2535399. 303 Our main observation from the experiments is that, unlike With the original versions of HTTP, a single object was in wired and 802.11 WiFi networks, SPDY does not outper- downloaded per connection. HTTP version 1.1 introduced form HTTP. Most importantly, we see that the interaction the notion of persistent connections that have the ability to between TCP and the cellular network has the most impact reuse established TCP connections for subsequent requests on performance. We uncover a fundamental flaw in TCP and the concept of pipelining. With persistence, objects are implementations where they do not account for the high requested sequentially over a connection as shown in Fig- variability in the latency when the radio transitions from ure 1(b). Objects are not requested until the previous re- idle to active. Such latency variability is common in cellular sponse has completed. However, this introduces the problem networks due to the use of a radio resource state machine. of head-of-line (HOL) blocking where subsequent requests The TCP Round-Trip Time (RTT) estimate and thus the get significantly delayed in waiting for the current response time out value is incorrect (significantly under-estimated) to come back. Browsers attempt to minimize the impact of after an idle period, triggering spurious retransmissions and HOL blocking by opening multiple concurrent connections thus lower throughput. to each domain | most browsers today use six parallel con- The TCP connection and the cellular radio connection for nections | with an upper limit on the number of active the end-device becomes idle because of users' web brows- connections across all domains. ing patterns (with a \think time" between pages [9]) and With pipelining, multiple HTTP requests can be sent to how websites exchange data. Since SPDY uses a single long a server together without waiting for the corresponding re- lived connection, the TCP parameter settings at the end of sponses as shown in Figure 1(c). The client then waits for a download from one web site is carried over to the next site the responses to arrive in the order in which they were re- accessed by the user. HTTP is less affected by this because quested. Pipelining can improve page load times dramati- of its use of parallel connections (isolates impact to a subset cally. However, since the server is required to send its re- of active connections) and because the connections are short sponses in the same order that the requests were received, lived (isolates impact going across web sites). We make the HOL blocking can still occur with pipelining. Some mobile case that a viable solution has to account for these unique browsers have only recently started supporting pipelining. cross-layer dependencies to achieve improved performance of both HTTP and SPDY over a cellular network. 2.2 The SPDY Protocol The main contributions of this paper include: Even though HTTP is widely adopted and used today, it suffers from several shortcomings (e.g., sequential requests, • We conduct a systematic and detailed study over more HOL blocking, short-lived connections, lack of server ini- than four months on the performance of HTTP and tiated data exchange, etc.) that impact web performance, SPDY. We show that SPDY and HTTP perform sim- especially on the cellular network. ilarly over cellular networks. SPDY [7] is a recently proposed application-layer protocol for transporting content over the web with the objective • We show that the interaction between the cellular net- of minimizing latency. The protocol works by opening one work and TCP needs further optimization. In partic- TCP connection per domain (or just one connection if going ular, we show that the RTT estimate, and thus the via a proxy). SPDY then allows for unlimited concurrent retransmission time-out computation in TCP is incon- streams over this single TCP connection. Because requests gruous with how the cellular network radio state ma- are interleaved on a single connection, the efficiency of TCP chine functions. is much higher: fewer network connections need to be made, and fewer, but more densely packed, packets are issued. • We also show that the design of web sites, where data SPDY implements request priorities to get around one ob- is requested periodically, also triggers TCP timeouts. ject request choking up the connection. This is described in We also show that there exist dependencies in web Figure 1(d). After downloading the main page, and iden- pages today that prevent the browser from fully utiliz- tifying the objects on the page, the client requests all four ing SPDY's capabilities.
Recommended publications
  • HTTP Cookie - Wikipedia, the Free Encyclopedia 14/05/2014
    HTTP cookie - Wikipedia, the free encyclopedia 14/05/2014 Create account Log in Article Talk Read Edit View history Search HTTP cookie From Wikipedia, the free encyclopedia Navigation A cookie, also known as an HTTP cookie, web cookie, or browser HTTP Main page cookie, is a small piece of data sent from a website and stored in a Persistence · Compression · HTTPS · Contents user's web browser while the user is browsing that website. Every time Request methods Featured content the user loads the website, the browser sends the cookie back to the OPTIONS · GET · HEAD · POST · PUT · Current events server to notify the website of the user's previous activity.[1] Cookies DELETE · TRACE · CONNECT · PATCH · Random article Donate to Wikipedia were designed to be a reliable mechanism for websites to remember Header fields Wikimedia Shop stateful information (such as items in a shopping cart) or to record the Cookie · ETag · Location · HTTP referer · DNT user's browsing activity (including clicking particular buttons, logging in, · X-Forwarded-For · Interaction or recording which pages were visited by the user as far back as months Status codes or years ago). 301 Moved Permanently · 302 Found · Help 303 See Other · 403 Forbidden · About Wikipedia Although cookies cannot carry viruses, and cannot install malware on 404 Not Found · [2] Community portal the host computer, tracking cookies and especially third-party v · t · e · Recent changes tracking cookies are commonly used as ways to compile long-term Contact page records of individuals' browsing histories—a potential privacy concern that prompted European[3] and U.S.
    [Show full text]
  • Torward: DISCOVERY, BLOCKING, and TRACEBACK of MALICIOUS TRAFFIC OVER Tor 2517
    IEEE TRANSACTIONS ON INFORMATION FORENSICS AND SECURITY, VOL. 10, NO. 12, DECEMBER 2015 2515 TorWard: Discovery, Blocking, and Traceback of Malicious Traffic Over Tor Zhen Ling, Junzhou Luo, Member, IEEE,KuiWu,Senior Member, IEEE, Wei Yu, and Xinwen Fu Abstract— Tor is a popular low-latency anonymous communi- I. INTRODUCTION cation system. It is, however, currently abused in various ways. OR IS a popular overlay network that provides Tor exit routers are frequently troubled by administrative and legal complaints. To gain an insight into such abuse, we designed Tanonymous communication over the Internet for and implemented a novel system, TorWard, for the discovery and TCP applications and helps fight against various Internet the systematic study of malicious traffic over Tor. The system censorship [1]. It serves hundreds of thousands of users and can avoid legal and administrative complaints, and allows the carries terabyte of traffic daily. Unfortunately, Tor has been investigation to be performed in a sensitive environment such abused in various ways. Copyrighted materials are shared as a university campus. An intrusion detection system (IDS) is used to discover and classify malicious traffic. We performed through Tor. The black markets (e.g., Silk Road [2], an comprehensive analysis and extensive real-world experiments to online market selling goods such as pornography, narcotics validate the feasibility and the effectiveness of TorWard. Our or weapons1) can be deployed through Tor hidden service. results show that around 10% Tor traffic can trigger IDS alerts. Attackers also run botnet Command and Control (C&C) Malicious traffic includes P2P traffic, malware traffic (e.g., botnet servers and send spam over Tor.
    [Show full text]
  • Designing a Better Browser for Tor with BLAST
    Designing a Better Browser for Tor with BLAST Tao Wang Department of Computer Science and Engineering Hong Kong University of Science and Technology [email protected] Abstract—Tor is an anonymity network that allows clients unwilling to trade off utility for its better privacy. Having to browse web pages privately, but loading web pages with more users improves the anonymity of Tor Browser by creating Tor is slow. To analyze how the browser loads web pages, we larger anonymity sets, reducing the chance that eavesdroppers examine their resource trees using our new browser logging and could deanonymize a Tor user using side information. simulation tool, BLAST. We find that the time it takes to load a web page with Tor is almost entirely determined by the number Anonymity network optimization is a well-studied privacy of round trips incurred, not its bandwidth, and Tor Browser problem with a decade of research, generally focused on incurs unnecessary round trips. Resources sit in the browser Tor [4], [5], [12], [14], [18]. Researchers have proposed various queue excessively waiting for the TCP and TLS handshakes, each solutions to optimize Tor’s performance on the network level of which takes a separate round trip. We show that increasing so as to improve user experience. On the other hand, the resource loading capacity with larger pipelines and even HTTP/2 problem of browser design for anonymity networks remains do not decrease load time because they do not save round trips. academically untouched, with many open problems that are We set out to minimize round trips with a number of protocol just as significant for user experience as network design and browser improvements, including TCP Fast Open, optimistic problems.
    [Show full text]
  • Warptcptm SPDY
    What Warp TCP TM does for SPDY WHITE PAPER Turbcharge Web Performance BADU networks - Improving the way the world connects - WarpTCP TM & SPDY Web performance is increasingly becoming a key focal point One among them is SPDY – a companion protocol to HTTP for many web properties. There are several approaches to that is aimed at reducing web page load latency and improv- help deliver rich, dynamic content with significantly lower ing web security among other things. latencies and improved user experience. Google’s “Make the Web Faster” initiative has proposed several techniques to This document describes how SPDY and Badu technology can improve web performance. These techniques are currently be combined to boost web performance. The approaches are being evaluated for inclusion in future standards. different but complementary to each other and can be implemented individually or together for maximum benefit. * The following diagram illustrates where SPDY and WarpTCP™ sit in the network protocol stack. Application Layer Web Cloud Computing Video File Transfer Amazon AWS HTML JS CSS H.264 MP4 Flash - EC2, S3 HTTP HTTP/REST/SOAP RTSP RTMP HLS FTP SCP SPDY Presentation Layer SSL Transport Layer WarpTCPTM SPDY SPDY operates at the Application/Session Layer. SPDY does not replace HTTP; it modifies the way HTTP requests and responses are sent over the Internet. This means that all the existing server-side applications can be used without modification if a SPDY-compatible translation layer is put in place. SPDY is similar to HTTP, with particular goals to reduce web page load latency and improve web security. SPDY achieves reduced latency through compression, multiplexing, and prioritization.
    [Show full text]
  • How Speedy Is SPDY?
    How Speedy is SPDY? Xiao Sophia Wang, Aruna Balasubramanian, Arvind Krishnamurthy, and David Wetherall, University of Washington https://www.usenix.org/conference/nsdi14/technical-sessions/wang This paper is included in the Proceedings of the 11th USENIX Symposium on Networked Systems Design and Implementation (NSDI ’14). April 2–4, 2014 • Seattle, WA, USA ISBN 978-1-931971-09-6 Open access to the Proceedings of the 11th USENIX Symposium on Networked Systems Design and Implementation (NSDI ’14) is sponsored by USENIX How speedy is SPDY? Xiao Sophia Wang, Aruna Balasubramanian, Arvind Krishnamurthy, and David Wetherall University of Washington Abstract provides only a modest improvement [13, 19]. In our SPDY is increasingly being used as an enhancement own study [25] of page load time (PLT) for the top 200 to HTTP/1.1. To understand its impact on performance, Web pages from Alexa [1], we found either SPDY or we conduct a systematic study of Web page load time HTTP could provide better performance by a significant (PLT) under SPDY and compare it to HTTP. To identify margin, with SPDY performing only slightly better than the factors that affect PLT, we proceed from simple, syn- HTTP in the median case. thetic pages to complete page loads based on the top 200 As we have looked more deeply into the performance Alexa sites. We find that SPDY provides a significant im- of SPDY, we have come to appreciate why it is chal- provement over HTTP when we ignore dependencies in lenging to understand. Both SPDY and HTTP perfor- the page load process and the effects of browser compu- mance depend on many factors external to the protocols tation.
    [Show full text]
  • The Fundamentals of Http/2 the Fundamentals of Http/2
    Ali Jawad THE FUNDAMENTALS OF HTTP/2 THE FUNDAMENTALS OF HTTP/2 Ali Jawad Bachelor’s Thesis June 2016 Information Technology Oulu University of Applied Sciences ABSTRACT Oulu University of Applied Sciences Degree Programme, Option of Internet Services Author: Ali Jawad Title of the bachelor’s thesis: Fundamentals Of HTTP/2 Supervisor: Teemu Korpela Term and year of completion: June 2016 Number of pages: 31 The purpose of this Bachelor’s thesis was to research and study the new ver- sion of HTTP ”HTTP2.0”, which is considered to be the future of the web. Http/2 is drawing a great attention from the web industry. Most of the Http/2 features are inherited from SPDY. This thesis shows how HTTP/2 enables a more efficient use of network re- sources and a reduced perception of latency by introducing a header field com- pression and allowing multiple concurrent exchanges on the same connection ”multiplexing” and more other features. Also, it discusses the security of Http/2 and the new risks and dangerous at- tacks that resurfaces with the arrival of this new protocol version. The simulation results show how HTTP/2 influences the page load time compar- ing to the other previous versions of HTTP. Keywords: HTTP1, HTTP/2, SPDY, SNI, DOS, CRIME, Downgrade-attack. 3 PREFACE This thesis was written for Oulu University of Applied Sciences and done during 1 February – 23 May 2016. The role of the instructor was guiding the thesis from the requirements and bases of writing a thesis document through meet- ings. The role of the supervisor was instructing the thesis plan and its require- ments which were done by the author.
    [Show full text]
  • Privacy and Performance Trade-Offs in Anonymous Communication
    Privacy and Performance Trade-offs in Anonymous Communication Networks A DISSERTATION SUBMITTED TO THE FACULTY OF THE GRADUATE SCHOOL OF THE UNIVERSITY OF MINNESOTA BY John D. Geddes IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF Doctor of Philosophy Nicholas J. Hopper February, 2017 c John D. Geddes 2017 ALL RIGHTS RESERVED Acknowledgements There are a great many people who I owe a debt of gratitude for their support during this dissertation. First and foremost is my advisor Nick Hopper, who not only helped contribute and shape this work, but provided endless guidance and encouragement from start to finish. I would like to thank all my collaborators and co-authors { Rob Jansen, Max Schuchard, and Mike Schliep. Your input and contributions have been paramount to getting me here, and this work is undeniabley better off because of it. Additionally I want to thank everyone I have had the great pleasure to work with during my tenure in graduate school { Shuai Li, Zi Lin, Yongdae Kim, Denis Foo Kune, Aziz Mohaisen, Se Eun Oh, Micah Sherr, Paul Syverson, Chris Thompson, and Chris Wacek. I would like to thank my other committee members { Stephen McCamant, Andrew Odlyzko, and Jon Weissman { for their comments and time volunteered during this process. I would especially like to thank my parents and brother who have been there since the beginning. Never in a million years could I have accomplished this without your continous support and encouragement. And last but certainly not least, I thank my best friend and wife, Dominique. This work would not exist without you and your never ending support.
    [Show full text]
  • An Analysis of the SPDY Protocol and the SPDY Proxy
    April 2014 An Analysis of the SPDY Protocol and the SPDY Proxy Executive Summary Web-based commerce and content continues to grow, with mobile devices accounting for an increasing portion of network traffic. In a bid to enhance the speed of the web, browser and application developers are implementing new protocols to improve performance. At the same time, end-to-end encryption is increasing being used to improve user privacy and security. Google’s SPDY, described as “an experimental protocol for a faster web”, is one of the new protocols being introduced to reduce web page load times. Deployment is increasing, but as of today many web servers still do not support SPDY. To accelerate adoption of the protocol, SPDY proxy services have been deployed to offer some of the benefits of SPDY even when downloading content from web servers that have not yet implemented the SPDY protocol. However, by bundling multiple requests and encrypting all web traffic for a user inside a single connection, the SPDY proxy creates an opaque tunnel, hiding the true source of the content and breaking network management, content distribution, and many services offered by the network operators. This would be equally true for any proxy service that bundled all traffic from a given user inside an opaque tunnel, irrespective of the protocol used. The Problem Web content is becoming more complex both in size and in the number of separate connections/requests. Web pages are dominated by images and scripts, both of which are easily compressible, but are not compressed by current implementations. Mobile devices over wireless networks are constrained in terms of bandwidth and latency.
    [Show full text]
  • Improving the Performance of SPDY for Mobile Devices
    Improving the performance of SPDY for mobile devices Junaid Khalid1 Sharad Agarwal2 Aditya Akella1 Jitendra Padhye2 University of Wisconsin - Madison1, Microsoft Research2 SPDY [2] is an application layer protocol developed for reducing web latency. It is estimated that about 3.6% of all websites use SPDY today [3], but that statistics hides Server how many web transactions use SPDY. It has rapidly gained Proxy adoption across Google, Facebook, Twitter, Yahoo, Reddit, and WordPress. While only a small fraction of all web- Cellular Edge sites use SPDY today, SPDY-capable proxies are being de- Client Internet ployed to provide the benefits of SPDY over the \last mile" Figure 1: Architecture Overview while traffic between proxies and the origin webserver re- • Half-push and half-pull { recognizing the widespread mains HTTP1.x for the time-being. deployment of web proxies that already have or soon SPDY improves web performance through various mecha- will be upgraded to SPDY, we propose half-push and nisms including multiplexing multiple HTTP transfers over half-pull to explore a new dimension in the proxy de- a single connection, header compression, HTTP request pri- sign spectrum. As shown in Figure 1, we envision oritization, and server push; which sends down content be- proxies that are deployed at the edges of cellular net- fore it is requested. Push can help when the client is under- works and that provide capabilities to both servers and powered and is slowly processing Javascript or app code, or clients to cache content. The client can explicitly re- is waiting for the user to interact with the displayed content.
    [Show full text]
  • The Path Less Travelled: Overcoming Tor's Bottlenecks with Multipaths
    The Path Less Travelled: Overcoming Tor’s Bottlenecks with Multipaths Mashael AlSabah, Kevin Bauer, Tariq Elahi, Ian Goldberg Cheriton School of Computer Science, University of Waterloo {malsabah,k4bauer,mtelahi,iang}@cs.uwaterloo.ca ABSTRACT tions such as web browsing, instant messaging, and secure shell. Tor is the most popular low-latency anonymity network for enhanc- However, it is well known that Tor suffers from a variety of per- ing ordinary users’ online privacy and resisting censorship. While it formance problems [14] that are manifested as high and variable has grown in popularity, Tor has a variety of performance problems delays which result in a poor user experience. This poor experi- that result in poor quality of service, a strong disincentive to use the ence discourages Tor adoption and ultimately results in a smaller system, and weaker anonymity properties for all users. We observe user base and weaker anonymity for all users [12]. Therefore, there that one reason why Tor is slow is due to low-bandwidth volunteer- is a pressing need for Tor to improve its performance in order to operated routers. When clients use a low-bandwidth router, their attract more users, which will lead to a larger anonymity set and throughput is limited by the capacity of the slowest node. improved anonymity to all users. With the introduction of bridges—unadvertised Tor routers that Prior work has diagnosed many of the causes of Tor’s poor per- provide Tor access to users within censored regimes like China— formance, which include the following: low-bandwidth Tor routers are becoming more common and essen- − Tor handles congestion poorly [3, 41]; tial to Tor’s ability to resist censorship.
    [Show full text]
  • Evaluating Web-Latency Reducing Protocols in Mobile Environments
    Master Thesis Electrical Engineering August 2013 Evaluating Web-latency reducing Protocols in Mobile Environments Usama Shamsher Wang Xiao Jun School of Computing Blekinge Institute of Technology SE-371 79 Karlskrona Sweden This thesis is submitted to the School of Computing at Blekinge Institute of Technology in partial fulfillment of the requirements for the degree of Master of Science in Electrical Engineering. The thesis is equivalent to 20 weeks of full time studies. This Master Thesis is typeset using LATEX Contact Information: Author(1): Usama Shamsher E-mail: [email protected] Author(2): Wang Xiao Jun E-mail: [email protected] University advisor: Dr. David Erman School of Computing University Examiner: Dr. Patrik Arlos School of Computing School of Computing, Department of Telecommunication Sys- tems Blekinge Institute of Technology Internet : www.bth.se/com SE-371 79 Karlskrona Phone : +46 455 38 50 00 Sweden Fax : +46 455 38 50 57 Abstract User perceived latency is the most prominent performance issue influenc- ing the World Wide Web (www) presently. Hyper-Text Transfer Protocol (HTTP) and Transmission Control Protocol (TCP) have been the backbone of web transport for decades, thus received a lot of attention recently due to end-to-end performance degradation in mobile environments. Inefficiencies of HTTP and TCP strongly affect web response time mainly in resource- limited devices. HTTP compression reduces some of the burden imposed by TCP slow start phase. However, compression is still an underutilized fea- ture of the web today [1]. In order to fulfill the end user expectations, we can optimize HTTP to improve Page Load Time (PLT), low memory usage and better network utilization.
    [Show full text]
  • 6.7. Server Push
    Table of Contents Introduction 1.1 Background 1.2 HTTP Today 1.3 Things done to overcome latency pains 1.4 Updating HTTP 1.5 http2 concepts 1.6 The http2 protocol 1.7 Extensions 1.8 An http2 world 1.9 http2 in Firefox 1.10 http2 in Chromium 1.11 http2 in curl 1.12 After http2 1.13 Further reading 1.14 Thanks 1.15 2 Introduction http2 explained This is a detailed document describing HTTP/2 (RFC 7540), the background, concepts, protocol and something about existing implementations and what the future might hold. See http://daniel.haxx.se/http2/ for the canonical home for this project. See https://github.com/bagder/http2-explained for the source code of all book contents. CONTRIBUTING I encourage and welcome help and contributions from anyone who may have improvements to offer. We accept pull requests, but you can also just file issues or send email to [email protected] with your suggestions! / Daniel Stenberg 3 Background 1. Background This document describes http2 from a technical and protocol level. It started out as a presentation Daniel did in Stockholm in April 2014 that was subsequently converted and extended into a full-blown document with all details and proper explanations. RFC 7540 is the official name of the final http2 specification and it was published on May 15th 2015: http://www.rfc- editor.org/rfc/rfc7540.txt All and any errors in this document are my own and the results of my shortcomings. Please point them out and they will be fixed in updated versions.
    [Show full text]