To be fair, it's getting much better at a rapid pace - yay deep learning.
* Aggregation across countries does make little sense, as every single user uses a single carrier
* There is no explanation about how averages are build. At least I'd expect a weighted average with user count being the weight, so that larger networks get more weight.
* Third, and probably most problematic is the measurement by an app. This does skew things in two ways:
** Self selecting by people who are interested in measuring speeds
** People already self selected the network they are on based on their needs (coverage in the areas they need it, speed, price, ...)
All these factors make the report statistically very suspect. Still makes great headlines ;-)
I see a lot of questions on the mailing list, in my course, and during the meetups about the different states and flow of a peer connection. I thought I should share a slide that shows an overview of what you should expect, as it proved helpful for some as a reference.
- italic bold blue items are not mandatory, and should regarded as work arounds. However their use is so widespread that I thought I should place them in the right place in the flow, so people know when to modify the sdp, filter the candidates and so on.
- How to set up the signaling and the GUM part are left out. There are way too many variants.
- Not all the ICE states are currently implemented in the browsers (failed and completed are missing).
- This drawing is for trickle ICE.
- This drawing is for one peer connection only, multiparty, and topologies of connection are left out. For each connection in your app, you have all those states and items repeated.
Any feedback is welcome.
- Developer Advocate, 2012 - present
- Engineering Manager, Google Analytics, 2011 - 2012
- PostRank Inc.CTO / Founder, 2007 - 2011
- University of WaterlooComputer Science, 2002 - 2007
Measuring network performance with Resource Timing API
By Ilya Grigorik, Developer Advocate and Web Performance Engineer Network performance is a critical factor in delivering a fast and responsi
Configuring & Optimizing WebSocket Compression
Crash course on optimizing WebSocket compression: a look under the hood of Deflate compression and how to configure it for best performance.
Chromium Blog: Making the web faster with SPDY and HTTP/2
accessibility (1); benchmarks (1); beta (1); blink (1); chrome apps (3); Chrome Frame (1); chrome web store (26); chromeframe (3); chromeos
Optimizing TLS Record Size & Buffering Latency
TLS record size can have significant impact on the page load time performance of your application: keep record size small!
Retrospective: High Performance Browser Networking
A (quantified self) retrospective on what it took to write High Performance Browser Networking, and lessons learned along the way.
Chromium Blog: Building efficient apps and extensions with push messaging
Event pages keep apps and extensions efficient by allowing them to respond to a variety of events such as timers or navigation to a particul
Speed up your sites with PageSpeed for Nginx - Google Developers Blog
News and insights on Google platforms, tools and events