RE: detecting connection speed

This is taking a very similar track to the conversation about having the UA return more details about the screen resolution. That simply does account for the many ways a user can change the meaning of the resolution. Do they have the screen zoomed? Is it a giant screen, but being looked at from across the room... it goes on with just about as many gotcha's as the connection speed conversation.

For connection speed, maybe we should think of it more like progressive encoding of a streamed movie. You assume the worst connection speed (that you are willing to optimize for). It sets up the basic UI and if that was the actual speed it would most likely stop there as the larger components wouldn't download or could be timed out and further features not loaded. If they have a better connection, then some of the middle tier experience loads, but the full experience times out and stops loading. And obviously that last stage is everything is fast enough that nothing gets cut off and they get the full experience.

I'd say that more than two experiences, a basic experience (slow connection) or full experience (high enough connection), probably exceed most shops developer resources.


From: Luke Blaney []
Sent: Wednesday, December 4, 2013 8:09 AM
To: Puneet Mohan Sangal
Cc: James Graham; Philippe Le Hegaret;
Subject: Re: detecting connection speed

When you say "connection speed", what exactly do you mean?  Are you referring to just the first hop from the client?  Or all the hops the whole way to the server?

Just looking at the first hop can be misleading as it assumes that's where the bottleneck is.  This isn't always the case, particularly on personal wifi hotspots (which use wifi for the first hop, but 3g for the second) or captive portals (which can use wifi for the first hop, but drop connections for the second)

Using the entire connection from client to server would provide a more accurate indicator (though still totally ignores the fact that conditions change over time). I guess this would be harder to implement as the User Agent would require a different value for every server it contacts.

On the whole, I think a better approach would be to not implement this API and encourage web developers to think "Offline First".

On 4 December 2013 05:05, Puneet Mohan Sangal <<>> wrote:
James, I understand it's a difficult problem to solve, however it will be a very useful dimension when conducting analysis on performance data.
May be we should start with what the possible solutions could be, and then consider the pros & cons?

Phillipe, how can we obtain more info on Network Information API status?


From: James Graham <<>>
Date: Tuesday, December 3, 2013 9:46 PM
To: "<>" <<>>
Subject: Re: detecting connection speed
Resent-From: <<>>
Resent-Date: Tuesday, December 3, 2013 9:47 PM

On 03/12/13 16:04, Philippe Le Hegaret wrote:
On Wed, 2013-11-27 at 09:38 +0000, Puneet Mohan Sangal wrote:
Is there any ongoing work in detecting connection speed, as part of
this group?
See and

The short answer is no one is working on it in the web performance
working group at the moment. I don't quickly see any visible progress on
the Network Information API for the past 12 months but you may want to
ask them if there were progress or not.

Detecting connection speed in a useful way is a very difficult problem,
not least because it's often a time varying quantity (consider a mobile
device that might switch between wifi, 3G, 3G but with high packet loss,
and no signal at all, all in the course of interacting with a single
page). I think that in general trying to expose this kind of data can
lead to worse user experiences than not exposing it (e.g. if pages
erroneously shift into some sort of "low bandwidth" mode due to some
temporary network congestion or whatever). Therefore I don't think this
should be something that we expose, unless it is clear that we can do it
in a good way that will solve actual problems.

Luke Blaney
Labs developer, FT Labs [<> | 0870 085 2038 | @ftlabs]

This email was sent by a company owned by Pearson plc, registered office at 80 Strand, London WC2R 0RL.  Registered in England and Wales with company number 53723.

Received on Wednesday, 4 December 2013 16:32:47 UTC