[gPXE-devel] Sleep entropy at boot time

Erwan Velu erwanaliasr1 at gmail.com
Mon Aug 23 04:40:55 EDT 2010


[...]

Hey Eric,

That's a lot for all your incomes.

I'll try to answer all your questions.

1°) Why do we need a particular behaving
My "cluster" is in a very particular network & power industrial environment.
Those low-power nodes are yes, booted in the same time and they do have to
load some content from a central server.
The network bandwidth is really low (100mbit) and each system have to load
some content to boot as we are running diskless at that point.
The last point is our "main" server is very very light so I'd like to not
load it too much.

2°) Why I'm using a 30sec delay
While computing a random to sleep to avoid collisions, I have to insure that
few systems aren't in the same time-stamp.
Let's say a random 15s delay with 720 systems booting at the same time, if
random thing generates too close bets (let's image an average distance of
7sec between systems), we'll face the collisions problems.
So my first guess is 30sec is enough to avoid too much systems trying to
download stuff at the same time.
This value will surely be changed while increasing our experience in our
environment.

3°) Adding more randomization
Agree with you, we have some improvements to do in the random() call and I
think that's pretty efficient using part of the MAC address to generate some
seed.
What do you think about using the cmos time too ?

4°) GPXE integration
I perfectly understand my need isn't common at all and doesn't have to be
integrated as it in gPXE.
That said, this patch would have been made with a default value of
MAX_RANDOM_SLEEP_TIME set to 0 to disable this behavior.

Cheers,
Erwan
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://etherboot.org/pipermail/gpxe-devel/attachments/20100823/5313cb8f/attachment.html 


More information about the gPXE-devel mailing list