Linux Archive

Linux Archive (http://www.linux-archive.org/)
-   Ubuntu Desktop (http://www.linux-archive.org/ubuntu-desktop/)
-   -   Enabling Connectivity Checking in NetworkManager (http://www.linux-archive.org/ubuntu-desktop/682146-enabling-connectivity-checking-networkmanager.html)

Mathieu Trudel-Lapierre 07-10-2012 07:39 PM

Enabling Connectivity Checking in NetworkManager
 
On Tue, Jul 10, 2012 at 3:21 PM, Andrea Corbellini
<corbellini.andrea@gmail.com> wrote:
> On 10/07/12 20:41, Mathieu Trudel-Lapierre wrote:
>>
>> I'd like to enable connectivity checking in NetworkManager. We'd use
>> http://start.ubuntu.com/connectivity-check.html, running the check
>> every 5 minutes starting from the connection being established.
>> start.ubuntu.com has already been in use for a while to verify
>> connectivity from the installer, IIRC.
>
>
> Isn't a check every 5 minutes a frequency a bit too high? I mean, if a
> computer is connected to a "captive portal which catches and redirects
> requests", then the chances that the connectivity will change during time
> are very low. In my opinion, having a high frequency will just cause
> unnecessary wakeups and will show boring data in tools used for network
> debugging.
>
> Also, what should happen if the connection to start.ubuntu.com times out
> because of a network congestion? Has this case been discussed? (I wasn't at
> UDS)

Great point. I've been considering the implications of that particular
frequency. It's the default in NM, and it seems like a reasonable one,
but I agree such amount of regular traffic might be an issue for
start.ubuntu.com ;)

As for whetehr the connection might change during that delay, it's far
more about being able to properly catch the change from "captive" to
internet access reliably and without delay than the other way around,
so perhaps there's something to be fixed there, and stop the check
once it's been successful, or at least delay it further.

Mathieu Trudel-Lapierre <mathieu-tl@ubuntu.com>
Freenode: cyphermox, Jabber: mathieu.tl@gmail.com
4096R/EE018C93 1967 8F7D 03A1 8F38 732E FF82 C126 33E1 EE01 8C93

--
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop

Jeremy Bicha 07-10-2012 07:56 PM

Enabling Connectivity Checking in NetworkManager
 
On 10 July 2012 14:41, Mathieu Trudel-Lapierre <mathieu-tl@ubuntu.com> wrote:
> Connectivity checking would be a big benefit in helping with properly
> recognizing the cases where you're connected to wireless, but actually
> behind a captive portal which catches and redirects requests --
> sometimes not all that gracefully. The most frequent impact of this is
> a corrupted apt cache when the files don't fail to be downloaded, but
> instead contain http data from the captive portal.

The corrupted apt caches are a hugely annoying bug. I have this
problem at work which sadly uses captive portals. Worse, there's not a
user-friendly way of fixing apt once this bug is triggered; it breaks
really bad.

I was thinking that it could be fixed by making apt smart enough to
not accept invalid data. But if NM can fix it, then I for one for
would be pretty happy.

It sounds though like apt still needs to be smarter or NM needs to be
smarter because there is still an up-to-5-minute window for things to
break.

Jeremy

--
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop

Martin Pitt 07-11-2012 04:08 AM

Enabling Connectivity Checking in NetworkManager
 
Mathieu Trudel-Lapierre [2012-07-10 14:41 -0400]:
> I'd like to enable connectivity checking in NetworkManager. We'd use
> http://start.ubuntu.com/connectivity-check.html, running the check
> every 5 minutes starting from the connection being established.
> start.ubuntu.com has already been in use for a while to verify
> connectivity from the installer, IIRC.

That seems rather overzealous to me. Why does it need to re-check so
often, even after it knows that it is connected to the "real" world
out there? It could stop polling until the connection state changes
then. Several million users pinging the same site every 5 minutes has
both privacy issues as well as significantly increasing the traffic to
start.u.c. as well.

At the same time, 5 minutes is much too long when you use it for some
desktop application. After registering in the portal etc. you do not
want to twiddle your thumbs for 5 minutes until your application is
finally convinced that it can go on using the interweb now.

It seems to me that this check would be more appropriate as a D-BUS
method. It sure needs to be handled async by the application and can
take a few seconds, but it avoids the 5 minute delay, the constant
hammering as well as the user count issues?

Thanks,

Martin
--
Martin Pitt | http://www.piware.de
Ubuntu Developer (www.ubuntu.com) | Debian Developer (www.debian.org)

--
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop

Thomas Bechtold 07-11-2012 07:05 PM

Enabling Connectivity Checking in NetworkManager
 
On Tue, 2012-07-10 at 14:41 -0400, Mathieu Trudel-Lapierre wrote:
> I'd like to enable connectivity checking in NetworkManager. We'd use
> http://start.ubuntu.com/connectivity-check.html, running the check
> every 5 minutes starting from the connection being established.
> start.ubuntu.com has already been in use for a while to verify
> connectivity from the installer, IIRC.

http://start.ubuntu.com/connectivity-check.html should set the header
"X-NetworkManager-Status". That's what NM checks first [1]. Then you
don't need "response=Lorem ipsum" in the [connectivity] section.


Cheers,

Tom

[1]
http://cgit.freedesktop.org/NetworkManager/NetworkManager/tree/src/nm-connectivity.c#n104




--
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop

Thomas Bechtold 07-11-2012 07:17 PM

Enabling Connectivity Checking in NetworkManager
 
On Wed, 2012-07-11 at 06:08 +0200, Martin Pitt wrote:
> Mathieu Trudel-Lapierre [2012-07-10 14:41 -0400]:
> > I'd like to enable connectivity checking in NetworkManager. We'd use
> > http://start.ubuntu.com/connectivity-check.html, running the check
> > every 5 minutes starting from the connection being established.
> > start.ubuntu.com has already been in use for a while to verify
> > connectivity from the installer, IIRC.
>
> That seems rather overzealous to me. Why does it need to re-check so
> often, even after it knows that it is connected to the "real" world
> out there?

because the connection can die. e.g. you use you smartphone as wlan
hotspot and the internet connection of the smartphone dies.

> It could stop polling until the connection state changes
> then.

if you don't poll, you never know if the connection state changed.

> Several million users pinging the same site every 5 minutes has
> both privacy issues as well as significantly increasing the traffic to
> start.u.c. as well.

maybe we should increase the period when a connection is available (20
minutes?) and decrease the period (10 seconds?) when the connection is
unavailable.

> At the same time, 5 minutes is much too long when you use it for some
> desktop application. After registering in the portal etc. you do not
> want to twiddle your thumbs for 5 minutes until your application is
> finally convinced that it can go on using the interweb now.
>
> It seems to me that this check would be more appropriate as a D-BUS
> method. It sure needs to be handled async by the application and can
> take a few seconds, but it avoids the 5 minute delay, the constant
> hammering as well as the user count issues?

imho we need both - a dbus method and the possibility for a periodic
check.

Cheers,

Tom



--
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop

Chase Douglas 07-11-2012 07:48 PM

Enabling Connectivity Checking in NetworkManager
 
On 07/11/2012 12:17 PM, Thomas Bechtold wrote:

On Wed, 2012-07-11 at 06:08 +0200, Martin Pitt wrote:

Mathieu Trudel-Lapierre [2012-07-10 14:41 -0400]:
It could stop polling until the connection state changes
then.


if you don't poll, you never know if the connection state changed.


My devious self is wondering if each computer can have an active TCP
connection to a specific address, like connected.ubuntu.com, with TCP
keepalives at a high interval (maybe 10 seconds). You don't have the
overhead of constantly opening and closing connections, but you do have
the overhead of actually keeping millions of connections open on the server.


This addresses none of the privacy concerns, of course, but it does give
near immediate notification when the network has died, no matter how you
get your connection.


-- Chase

--
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop

Mikko Ohtamaa 07-11-2012 08:19 PM

Enabling Connectivity Checking in NetworkManager
 
Hi,



My devious self is wondering if each computer can have an active TCP connection to a specific address, like connected.ubuntu.com, with TCP keepalives at a high interval (maybe 10 seconds). You don't have the overhead of constantly opening and closing connections, but you do have the overhead of actually keeping millions of connections open on the server.




This addresses none of the privacy concerns, of course, but it does give near immediate notification when the network has died, no matter how you get your connection.


I am not very involved in this discussion or its goals. However, here is what Chrome does when it checks whether it is really connected to a network or* not. You might find it useful to see what evil things ISPs and such may try to do with your connection:


https://mikewest.org/2012/02/chrome-connects-to-three-random-domains-at-startup

--
Mikko Ohtamaa

http://opensourcehacker.com

--
ubuntu-desktop mailing list
ubuntu-desktop@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-desktop


All times are GMT. The time now is 07:49 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.