Linked by diegocg on Sun 13th May 2012 23:48 UTC
Thread beginning with comment 517994
To view parent comment, click here.
To read all comments associated with this story, please click here.
To view parent comment, click here.
To read all comments associated with this story, please click here.
Features
Linked by Thom Holwerda on 06/13/13 14:35 UTC
Linked by Thom Holwerda on 06/11/13 17:07 UTC
Linked by Thom Holwerda on 06/10/13 23:13 UTC
Linked by Thom Holwerda on 06/08/13 14:57 UTC
Linked by Thom Holwerda on 06/07/13 11:40 UTC
Linked by Thom Holwerda on 06/04/13 12:45 UTC
Linked by nfeske on 05/31/13 10:12 UTC
Linked by Thom Holwerda on 05/29/13 16:59 UTC
Linked by Thom Holwerda on 05/24/13 17:26 UTC
Linked by Thom Holwerda on 05/21/13 21:38 UTC
More Features »
Sponsored Links



Member since:
2011-01-28
ssokolow,
Yea exactly.
The system will become idle while waiting for the network to come up, and then when it does it gets busy loading again. Ideally the loading would never stop/block until everything is fully loaded, even if the network isn't ready.
The problem can be more complex than meets the eye, since many daemons will fail when they call bind & listen if the network isn't up yet. Existing standards lack a way to have these processes load all their resources prior to the network becoming available. They'd probably need to poll for the network, which would only make the problem worse.
I did the following tests:
Terminal A
ifconfig br0:1 down
socat TCP-LISTEN:5555,bind=192.168.100.52 -
// above fails because network IP not yet available
ifconfig br0:1 192.168.100.52
socat TCP-LISTEN:5555,bind=192.168.100.52 -
// above succeeds
Terminal B
ifconfig br0:1 down
socat TCP-CONNECT:192.168.100.52:5555 -
// connection fails
ifconfig br0:1 192.168.100.52
socat TCP-CONNECT:192.168.100.52:5555 -
// connection succeeds!!
The last connection reveals an interesting fact. It is possible for a linux process (the second socat in Terminal A) to hold an open listen socket on an interface that is not yet enabled. If we could somehow get into this state on bootup, then it would solve our delima perfectly. Unfortunately though I'm not aware of a direct way to enter this state. Somehow we'd need the Linux API to permit the first command on Terminal A to succeed.
Edited 2012-05-14 05:01 UTC