An Argument for Increasing TCP's Initial Congestion Window

Total Page:16

File Type:pdf, Size:1020Kb

An Argument for Increasing TCP's Initial Congestion Window An Argument for Increasing TCP's Initial Congestion Window Nandita Dukkipati Tiziana Refice Yuchung Cheng Jerry Chu Tom Herbert Amit Agarwal Arvind Jain Natalia Sutin Google Inc. {nanditad, tiziana, ycheng, hkchu, therbert, aagarwal, arvind, nsutin}@google.com ABSTRACT connection lifetime to grow the amount of data that may be TCP flows start with an initial congestion window of at most outstanding at a given time. Slow start increases the conges- four segments or approximately 4KB of data. Because most tion window by the number of data segments acknowledged Web transactions are short-lived, the initial congestion win- for each received acknowledgment. Thus the congestion win- dow is a critical TCP parameter in determining how quickly dow grows exponentially and increases in size until packet flows can finish. While the global network access speeds loss occurs, typically because of router buffer overflow, at increased dramatically on average in the past decade, the which point the maximum capacity of the connection has standard value of TCP’s initial congestion window has re- been probed and the connection exits slow start to enter mained unchanged. the congestion avoidance phase. The initial congestion win- In this paper, we propose to increase TCP’s initial conges- dow is at most four segments, but more typically is three tion window to at least ten segments (about 15KB). Through segments (approximately 4KB) [5] for standard Ethernet large-scale Internet experiments, we quantify the latency MTUs. The majority of connections on the Web are short- benefits and costs of using a larger window, as functions lived and finish before exiting the slow start phase, making of network bandwidth, round-trip time (RTT), bandwidth- TCP’s initial congestion window (init cwnd) a crucial pa- delay product (BDP), and nature of applications. We show rameter in determining flow completion time. Our premise that the average latency of HTTP responses improved by is that the initial congestion window should be increased to approximately 10% with the largest benefits being demon- speed up short Web transactions while maintaining robust- strated in high RTT and BDP networks. The latency of low ness. bandwidth networks also improved by a significant amount While the global adoption of broadband is growing, TCP’s in our experiments. The average retransmission rate in- init cwnd has remained unchanged since 2002. As per a creased by a modest 0.5%, with most of the increase com- 2009 study [4], the average connection bandwidth globally ing from applications that effectively circumvent TCP’s slow is 1.7Mbps with more than 50% of clients having bandwidth start algorithm by using multiple concurrent connections. above 2Mbps, while the usage of narrowband (<256Kbps) Based on the results from our experiments, we believe the has shrunk to about 5% of clients. At the same time, appli- initial congestion window should be at least ten segments cations devised their own mechanisms for faster download of and the same be investigated for standardization by the Web pages. Popular Web browsers, including IE8 [2], Fire- IETF. fox 3 and Google’s Chrome, open up to six TCP connections per domain, partly to increase parallelism and avoid head-of- line blocking of independent HTTP requests/responses, but Categories and Subject Descriptors mostly to boost start-up performance when downloading a C.2.2 [Computer Communication Networks]: Network Web page. Protocols—TCP, HTTP; C.2.6 [Computer Communica- In light of these trends, allowing TCP to start with a tion Networks]: Internetworking—Standards; C.4 [Perfor- higher init cwnd offers the following advantages: mance of Systems]: Measurement techniques, Performance (1) Reduce latency. Latency of a transfer completing in attributes slow start without losses [9], is: S(γ − 1) S ⌈logγ ( + 1)⌉ ∗ RTT + (1) General Terms init cwnd C Measurement, Experimentation, Performance where S is transfer size, C is bottleneck link-rate, γ is 1.5 or 2 depending on whether acknowledgments are delayed Keywords or not, and S/init cwnd ≥ 1. As link speeds scale up, TCP’s latency is dominated by the number of round-trip TCP, Congestion Control, Web Latency, Internet Measure- times (RTT) in the slow start phase. Increasing init cwnd ments enables transfers to finish in fewer RTTs. (2) Keep up with growth in Web page sizes. The Inter- 1. INTRODUCTION AND MOTIVATION net average Web page size is 384KB [14] including HTTP We propose to increase TCP’s initial congestion window headers and compressed resources. An average sized page to reduce Web latency during the slow start phase of a con- requires multiple RTTs to download when using a single nection. TCP uses the slow start algorithm early in the TCP connection with a small init cwnd. To improve page load times, Web browsers routinely open multiple concur- 1 rent TCP connections to the same server. Web sites also spread content over multiple domains so browsers can open 0.8 even more connections [8]. A study on the maximum num- 0.6 Google Web search ber of parallel connections that browsers open to load a Top 500 sites page [16] showed Firefox 2.0 opened 24 connections and IE8 0.4 All sites Gmail opened 180 connections while still not reaching its limit. 0.2 Google maps These techniques not only circumvent TCP’s congestion con- Photos blogger Top 100 sites trol mechanisms [13], but are also inefficient as each new flow 0 100 1000 10000 100000 independently probes for end-to-end bandwidth and incurs Response size (Bytes) the slow start overhead. Increasing init cwnd will not only mitigate the need for multiple connections, but also allow Figure 1: CDF of HTTP response sizes for top 100 newer protocols such as SPDY [1] to operate efficiently when sites, top 500 sites, all the Web, and for a few popu- downloading multiple Web objects over a single TCP con- lar Google services. Vertical lines highlight response nection. sizes of 3 and 10 segments. (3) Allow short transfers to compete fairly with bulk data traffic. Internet traffic measurements indicate that most 500 bytes in the network are in bulk data transfers (such as Google Web search video), while the majority of connections are short-lived and 495 transfer small amounts of data. Statistically, on start-up, 490 a short-lived connection is already competing with connec- 485 tions that have a congestion window greater than three seg- 480 ments. Because short-lived connections, such as Web trans- 475 fers, don’t last long enough to achieve their fair-share rate, TCP latency (ms) 470 a higher init cwnd gives them a better chance to compete 465 with bulk data traffic. 3 6 10 16 26 42 (4) Allow faster recovery from losses. An initial win- init_cwnd dow larger than three segments increases the likelihood that losses can be recovered through Fast Retransmit rather than Figure 2: TCP latency for Google search with dif- the longer initial retransmission timeout. Furthermore, in ferent init cwnd values. the presence of congestion, the widespread deployment of Selective Acknowledgments (SACK) enables a TCP sender to using three segments. We note that raising init cwnd to to recover multiple packet losses within a round-trip time. 16 improves latency further. However, much larger values, We propose to increase TCP’s init cwnd to at least ten such as 42, show a degradation in latency, likely due to in- segments (approximately 15KB).1 To that end, we quantify creased packet losses. Larger scale experiments described in the latency benefits and costs, as measured in large scale the rest of the paper demonstrate at length the benefits and experiments conducted via Google’s front-end infrastructure potential costs of using an initial congestion window of ten serving users a diverse set of applications. segments. Ideally, we want to pick an init cwnd satisfying each of There are numerous studies in literature on speeding up the following properties: (i) minimize average Web page short transfers over new TCP connections [10, 15]. These download time; (ii) minimize impact on tail latency due techniques range from faster start-up mechanisms using cached to increased packet loss, and (iii) maintain fairness with congestion windows such as in TCP Fast Start, to more com- competing flows. Raising the initial congestion window to plex schemes requiring router support such as Quick Start. ten segments can reasonably satisfy these properties. It im- These solutions are neither widely deployed, nor standard- proves average TCP latency, yet is sufficiently robust for ized, and do not have practical reference implementations. use on the Internet. In the following, we articulate the per- A recent measurements study [12] showed that up to 15.8% tinence of ten segments to TCP’s initial congestion window: of Internet flows have an init cwnd larger than the standard (1) Covers ≈90% of HTTP Web objects: 90% of HTTP re- specification [5]. sponses from the top 100 and 500 sites fit within 16KB [14], The rest of the paper is arranged as follows: Section 2 as shown in the response size distribution of Figure 1. The describes the experiments’ setup and datasets. Section 3 distribution also shows that about 90% of Google Web search, presents an analysis of receiver advertised windows. Sec- Maps, and Gmail responses fit in about 15KB or ten seg- tion 4 describes the experiment results with an initial con- ments; for applications with larger average size such as Pho- gestion window of ten, quantifying its benefits and cost an- tos, about 20% more responses can fit within ten segments alyzed by network properties (bandwidth, BDP, RTT), as as compared to three segments. well as traffic characteristics. Section 5 concludes the paper (2) Improves latency, while being robust: Figure 2 shows with a discussion on future work.
Recommended publications
  • On the Incoherencies in Web Browser Access Control Policies
    On the Incoherencies in Web Browser Access Control Policies Kapil Singh∗, Alexander Moshchuk†, Helen J. Wang† and Wenke Lee∗ ∗Georgia Institute of Technology, Atlanta, GA Email: {ksingh, wenke}@cc.gatech.edu †Microsoft Research, Redmond, WA Email: {alexmos, helenw}@microsoft.com Abstract—Web browsers’ access control policies have evolved Inconsistent principal labeling. Today’s browsers do piecemeal in an ad-hoc fashion with the introduction of new not have the same principal definition for all browser re- browser features. This has resulted in numerous incoherencies. sources (which include the Document Object Model (DOM), In this paper, we analyze three major access control flaws in today’s browsers: (1) principal labeling is different for different network, cookies, other persistent state, and display). For resources, raising problems when resources interplay, (2) run- example, for the DOM (memory) resource, a principal is time changes to principal identities are handled inconsistently, labeled by the origin defined in the same origin policy and (3) browsers mismanage resources belonging to the user (SOP) in the form of <protocol, domain, port> [4]; but principal. We show that such mishandling of principals leads for the cookie resource, a principal is labeled by <domain, to many access control incoherencies, presenting hurdles for > web developers to construct secure web applications. path . Different principal definitions for two resources are A unique contribution of this paper is to identify the com- benign as long as the two resources do not interplay with patibility cost of removing these unsafe browser features. To do each other. However, when they do, incoherencies arise. For this, we have built WebAnalyzer, a crawler-based framework example, when cookies became accessible through DOM’s for measuring real-world usage of browser features, and used “document” object, DOM’s access control policy, namely the it to study the top 100,000 popular web sites ranked by Alexa.
    [Show full text]
  • Volume 2014, No. 1 Law Office Computing Page Puritas Springs Software Law Office Computing
    Volume 2014, No. 1 Law Office Computing Page Puritas Springs Software Law Office Computing VOLUME 2014 NO. 1 $ 7 . 9 9 PURITAS SPRINGS SOFTWARE Best Home Pages We think the importance of the through which you accessed INSIDE THIS ISSUE: home page has been greatly the world wide web. Once 1-3 reduced due to the invention of tabbed browsers arrived on the tabbed browsers. Although scene it was possible to create 1,4,5 conceived a group of 4 earlier in 1988, home pages Digital Inklings 6,7 tabbed brows- with each page Child Support 8 ing didn’t go being able to Spousal Support 10 mainstream “specialize” in a Uniform DR Forms 12 until the re- specific area of lease of Micro- your interest. Family Law Documents 13 soft’s Windows Take the Probate Forms 14 Internet Ex- weather for Ohio Estate Tax 16 plorer 7 in example. Every U.S. Income Tax (1041) 18 2006. Until then, your Home good home page should have Ohio Fiduciary Tax 19 page was the sole portal a minimal weather information; (Continued on page 2) Ohio Adoption Forms 20 OH Guardianship Forms 21 OH Wrongful Death 22 Loan Amortizer 23 # More Law Office Tech Tips Advanced Techniques 24 Deed & Document Pro 25 Bankruptcy Forms 26 XX. Quick Launch. The patch the application that you’re Law Office Management 28 of little icons to the right of the working in is maximized. If OH Business Forms 30 Start button is called the Quick you’re interested, take a look Launch toolbar. Sure, you can at the sidebar on page XX of Business Dissolutions 31 put much-used shortcuts on this issue.
    [Show full text]
  • Ag Ex Factsheet 8
    YouTube – Set up an Account Launched in 2005, YouTube is a video-sharing website, on which users can upload, view and share videos. Unregistered users can watch videos, but if you wish to upload your won videos, or post comments on other videos, you will need to set up an account. YouTube can be found at www.youtube.com As YouTube is now owned by Google, if you have a Google account, you will be able to sign in to YouTube by entering your Google Account What is a Google Account? username and password. If you're already signed into your Google Account on a different Google service, you'll be automatically signed in Google Accounts is a when you visit YouTube as well. If you don’t have a Google account, unified sign-in system that you will need to create one, in order to sign in to YouTube. gives you access to Google products, including iGoogle, 1. To create a Google account, follow this link: Gmail, Google Groups, https://accounts.google.com/SignUp?service=youtube Picasa, Web History, 2. Choose a username and enter in your contact information YouTube, and more. 3. Click “Next Step”. If you've used any of these 4. The next step is setting up your profile. You can upload or take a products before, you photo (if you have a webcam on your computer). You can skip this already have a Google step, and do it later, or not at all. Account. 5. Click “Next Step”. Your account username is the email address you 6.
    [Show full text]
  • Preview Dart Programming Tutorial
    Dart Programming About the Tutorial Dart is an open-source general-purpose programming language. It is originally developed by Google and later approved as a standard by ECMA. Dart is a new programming language meant for the server as well as the browser. Introduced by Google, the Dart SDK ships with its compiler – the Dart VM. The SDK also includes a utility -dart2js, a transpiler that generates JavaScript equivalent of a Dart Script. This tutorial provides a basic level understanding of the Dart programming language. Audience This tutorial will be quite helpful for all those developers who want to develop single-page web applications using Dart. It is meant for programmers with a strong hold on object- oriented concepts. Prerequisites The tutorial assumes that the readers have adequate exposure to object-oriented programming concepts. If you have worked on JavaScript, then it will help you further to grasp the concepts of Dart quickly. Copyright & Disclaimer © Copyright 2017 by Tutorials Point (I) Pvt. Ltd. All the content and graphics published in this e-book are the property of Tutorials Point (I) Pvt. Ltd. The user of this e-book is prohibited to reuse, retain, copy, distribute or republish any contents or a part of contents of this e-book in any manner without written consent of the publisher. We strive to update the contents of our website and tutorials as timely and as precisely as possible, however, the contents may contain inaccuracies or errors. Tutorials Point (I) Pvt. Ltd. provides no guarantee regarding the accuracy, timeliness or completeness of our website or its contents including this tutorial.
    [Show full text]
  • What Is Dart?
    1 Dart in Action By Chris Buckett As a language on its own, Dart might be just another language, but when you take into account the whole Dart ecosystem, Dart represents an exciting prospect in the world of web development. In this green paper based on Dart in Action, author Chris Buckett explains how Dart, with its ability to either run natively or be converted to JavaScript and coupled with HTML5 is an ideal solution for building web applications that do not need external plugins to provide all the features. You may also be interested in… What is Dart? The quick answer to the question of what Dart is that it is an open-source structured programming language for creating complex browser based web applications. You can run applications created in Dart by either using a browser that directly supports Dart code, or by converting your Dart code to JavaScript (which happens seamlessly). It is class based, optionally typed, and single threaded (but supports multiple threads through a mechanism called isolates) and has a familiar syntax. In addition to running in browsers, you can also run Dart code on the server, hosted in the Dart virtual machine. The language itself is very similar to Java, C#, and JavaScript. One of the primary goals of the Dart developers is that the language seems familiar. This is a tiny dart script: main() { #A var d = “Dart”; #B String w = “World”; #C print(“Hello ${d} ${w}”); #D } #A Single entry point function main() executes when the script is fully loaded #B Optional typing (no type specified) #C Static typing (String type specified) #D Outputs “Hello Dart World” to the browser console or stdout This script can be embedded within <script type=“application/dart”> tags and run in the Dartium experimental browser, converted to JavaScript using the Frog tool and run in all modern browsers, or saved to a .dart file and run directly on the server using the dart virtual machine executable.
    [Show full text]
  • Google Security Chip H1 a Member of the Titan Family
    Google Security Chip H1 A member of the Titan family Chrome OS Use Case [email protected] Block diagram ● ARM SC300 core ● 8kB boot ROM, 64kB SRAM, 512kB Flash ● USB 1.1 slave controller (USB2.0 FS) ● I2C master and slave controllers ● SPI master and slave controllers ● 3 UART channels ● 32 GPIO ports, 28 muxed pins ● 2 Timers ● Reset and power control (RBOX) ● Crypto Engine ● HW Random Number Generator ● RD Detection Flash Memory Layout ● Bootrom not shown ● Flash space split in two halves for redundancy ● Restricted access INFO space ● Header fields control boot flow ● Code is in Chrome OS EC repo*, ○ board files in board/cr50 ○ chip files in chip/g *https://chromium.googlesource.com/chromiumos/platform/ec Image Properties Chip Properties 512 byte space Used as 128 FW Updates INFO Space Bits 128 Bits Bitmap 32 Bit words Board ID 32 Bit words Bitmap Board ID ● Updates over USB or TPM Board ID Board ID ~ Board ID ● Rollback protections Board ID mask Version Board Flags ○ Header versioning scheme Board Flags ○ Flash map bitmap ● Board ID and flags Epoch ● RO public key in ROM Major ● RW public key in RO Minor ● Both ROM and RO allow for Timestamp node locked signatures Major Functions ● Guaranteed Reset ● Battery cutoff ● Closed Case Debugging * ● Verified Boot (TPM Services) ● Support of various security features * https://www.chromium.org/chromium-os/ccd Reset and power ● Guaranteed EC reset and battery cutoff ● EC in RW latch (guaranteed recovery) ● SPI Flash write protection TPM Interface to AP ● I2C or SPI ● Bootstrap options ● TPM
    [Show full text]
  • Logging in to Google Chrome Browser
    Logging in to Google Chrome Browser This article is for faculty, staff, or students signing in to chrome browser. • Double click the Chrome icon to start the Chrome browser. • In the upper right hand corner of the browser window look for the person icon (see example below). 151 X * ••• Gma il Images ••• • This will open a drop down menu. Click “Sign in to Chrome” (see example below). Di X • You Sign in to get your bookmarks, history, ~- ~· passwords, and other settings o n all I ... your Smail Images ... 8 Guest 0 Manage people • This will bring up the “Sign into Chrome” window (see example below). Enter your email address and click “Next.” Sign in with your Google Account to get you r bookmarks, history, passwords, and other settings on all you r devices. ~ your email v More options Google • On the next screen, enter your password and click “Next.” Forgot password? • This will bring up the “Link your Chrome data to this account?” window. Click “Link data.” X Li nk your Ch rome dat a to t his account? This account is managed by sd25.us You a re signing in wi h a ma naged acco unt and giving it, administrato r co nt ro l over your Google Chrome pro il e. Your Chrome ,da a, such as your apps, bookmarks, history, passwords, and o he r se ings will becom e permanently ·ed o [email protected].. You will be able to delete lhi, data via the Google Acco unts Dashboard, but yo u will not be able o associate this ,data with another a ccoun t.
    [Show full text]
  • Gmail Read Receipt Google Chrome
    Gmail Read Receipt Google Chrome FrankyAnatollo usually pressure-cook class some this? jitterbug Davie remainsor pulverizing red: she sublimely. gleeks her muscat floodlights too scoldingly? Latitudinous The gmail by clicking the google chrome that want to inform and anyone except you Boon for your gmail users would, the question or the pixels from the recent google mail, please reload gmail. Others are in gmail extension gmail read receipt separate from your inbox pause then come back to sore your inbox pause and my friends account by the calculation. Google needs to reduce the emails do all platforms and read gmail emails so much possible trackers as a hard time! Your comment was approved. Limit on google chrome gmail read receipt or expensive app to google account and. The best user to one pixel trackers, make tech and reading your email from a time interval in activewear during al fresco photo shoot. Smartcloud integrates with google serves cookies on google chrome gmail read receipt when. So much more relevant ads and sign into gmail send an eye at. Unlimited email if i have a google workspace and google chrome. Read receipt when the attachments to know that are typically are. Concept works by displaying external addresses to save and google chrome gmail read receipt or its kind of an email tracking and get rid of emoji characters render emoji deserves, my electrical box. In worse content should be able to send the. Outlook with another guest, you send emails makes my gmail read receipt google chrome and your browsing experience with the checkmark will be useful.
    [Show full text]
  • Natickfoss Online Meetings Page 1 of 4
    NatickFOSS Online Meetings Page 1 of 4 During April and perhaps beyond, meetings at the Community/Senior Center are not possible. We are going to try to provide an online live meeting alternative. TO VIEW the meeting live at 3PM or at later date, use a browser for YouTube. It’s that simple! For April 2nd the link is: https://www.youtube.com/watch?v=C8ZTmk4uXH4 -------------------------Do not try to view and participate at the same time!--------------------- TO PARTICIPATE: We will use a service called Jitsi Meet. It is open source and runs in a browser. Use open source Chromium browser which is our choice. Or use Chrome, the commercial version from Google, also works fine. We are sad to report that Firefox performs worse. It is less stable at this time. (DO NOT USE Firefox for our Meetings, please!) We want to avoid problems. Linux users can install Chromium from their distribution’s software repositories. Windows: probably best to use Chrome unless you are adventurous. Edge does not work at this time. Macintosh: install Chrome, please. We have heard Safari does not work. Once your browser is installed, launch it and enter (copy from here, paste in browser) this link: https://meet.jit.si/natickfoss ...or just use any browser to go to the YouTube channel to just watch. The first time you use Chromium or Chrome with Jitsi Meet you will be asked if you want to install an extension. The extension is optional. We will NOT need the features for our meetings. Just close if you want.
    [Show full text]
  • Report Google Chrome's Browser
    CISC 322 Assignment 1: Report Google Chrome’s Browser: Conceptual Architecture Friday, October 19, 2018 Group: Bits...Please! Emma Ritcey [email protected] ​ Kate MacDonald [email protected] ​ Brent Lommen [email protected] ​ Bronwyn Gemmill [email protected] ​ Chantal Montgomery [email protected] ​ Samantha Katz [email protected] ​ Bits...Please! Abstract The Google Chrome browser was investigated to determine its conceptual architecture. After reading documentation online and analyzing reference web browser architectures, the high level conceptual architecture of Chrome was determined to be a layered style. Individual research was done before collaborating as a group to finalize our proposed architecture. The conceptual architecture was proposed to coincide with Chrome’s four core principles (4 S’s): simplicity, speed, security, and stability. In depth research was completed in the render and browser engine subsystems which had the architectures styles object oriented and layered, respectively. Using the proposed architecture, the process of a user logging in and Chrome saving the password, as well as Chrome rendering a web page using JavaScript were explored in more detail. To fully understand the Chrome browser, Chrome’s concurrency model was investigated and determined to be a multi-process architecture that supports multi-threading. As well, team issues within Chrome and our own team were reported to support our derivation process and proposed architecture. 1 Bits...Please! Table of Contents Abstract 1 Table of Contents 2
    [Show full text]
  • On the Disparity of Display Security in Mobile and Traditional Web Browsers
    On the Disparity of Display Security in Mobile and Traditional Web Browsers Chaitrali Amrutkar, Kapil Singh, Arunabh Verma and Patrick Traynor Converging Infrastructure Security (CISEC) Laboratory Georgia Institute of Technology Abstract elements. The difficulty in efficiently accessing large pages Mobile web browsers now provide nearly equivalent fea- on mobile devices makes an adversary capable of abusing tures when compared to their desktop counterparts. How- the rendering of display elements particularly acute from a ever, smaller screen size and optimized features for con- security perspective. strained hardware make the web experience on mobile In this paper, we characterize a number of differences in browsers significantly different. In this paper, we present the ways mobile and desktop browsers render webpages that the first comprehensive study of the display-related security potentially allow an adversary to deceive mobile users into issues in mobile browsers. We identify two new classes of performing unwanted and potentially dangerous operations. display-related security problems in mobile browsers and de- Specifically, we examine the handling of user interaction vise a range of real world attacks against them. Addition- with overlapped display elements, the ability of malicious ally, we identify an existing security policy for display on cross-origin elements to affect the placement of honest el- desktop browsers that is inappropriate on mobile browsers. ements and the ability of malicious cross-origin elements Our analysis is comprised of eight mobile and five desktop to alter the navigation of honest parent and descendant el- browsers. We compare security policies for display in the ements. We then perform the same tests against a number candidate browsers to infer that desktop browsers are signif- of desktop browsers and find that the majority of desktop icantly more compliant with the policies as compared to mo- browsers are not vulnerable to the same rendering issues.
    [Show full text]
  • The Chrome Process
    The Chrome Process Matt Spencer UI & Browser Marketing Manager 1 Overview - Blink . Blink is a web engine . Others include WebKit, Gecko, Trident, … . It powers many browsers . Chrome, Opera, … . It is Open Source . Open governance <blink> . Open discussion . Open development . HTML spec is implemented in Blink 6 Why should you be involved? Web Facing improvements Internal Architectural improvements . HTML features that drive core business . Improvements that target your SoC . WebVR . Impact battery life . Telepresence . Enhance user experience . … . You can influence the platform . Help create a better embedded web story 7 The Blink Intent Process - Enhancement http://www.chromium.org/blink#launch-process Intent to Implement Intent to Ship . Email sent to blink-dev mailing list . Email sent to blink-dev mailing list . A template for the email is provided . A template for the email is provided . Announces intent to community . Allows discussion about implementation . Allows early discussion . Requires spec (w3c, whatwg,…) published . Requires info on intent from other vendors . No formal authorization required . Formal authorization required . Implementation off-tree . Need approval from 3 API owners . No commits back to blink repos LGTM (looks good to me) sent to blink-dev 8 The Blink Intent Process - Deprecation http://www.chromium.org/blink#launch-process Intent to Deprecate Intent to Remove . Email sent to blink-dev mailing list . Email sent to blink-dev mailing list . A template for the email is provided . A template for the email is provided . If a web facing feature (css, html, js) . Formal approval required . Measure usage of the feature . Wait for 3 LGTMs from API owners . Add usage counter to blink .
    [Show full text]