New feature: Handling Dynamic IP addresses (DHCP)

Started by fred, May 26, 2010, 07:49:12 AM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

fred

I am planning this feature to be gradually included in the next versions.

Most "small" networks have some sort of simple  dynamic IP address allocation.
But this doesn't work well with BOINC as it is difficult to determine the computer on the other side.
On most the computers the name <-> IP address conversion will not work.

I want to add a feature to do this automatically.

Setup requirements:

1) IP range like 192.168.10.1 to 192.168.10.255 and a port to use.
2) Password: A BOINC password for all computers in the net, MUST be the same.
3) BOINC on all remote computers must allow computers from the net to access it. (allow IP and use the same password)

The computer list only holds the local machine and computers that are not on the net.

A) BoincTasks will check the entire net, this will take from 1 - 10 seconds to get all the connected computers.
B) BoincTasks will get the host name of all the connected computers and will add them, temporarily to the computer list.
C) BoincTasks will show all these computers.
D) At a specified interval BT will check if there are new computers with BOINC on the net and add them to the list.
E) Computers that are no longer in the net / unconnected, will be removed from the list.

borsti67

Very nice idea, but I'd suggest that "E" should be a question to the user (I have some which are running for 1-3 weeks and then they're off for some days). May be it would be somewhat confusing if they disappear "in-between".
Or did I misunderstand, if I give it a name, it will be on the "fixed" list of computers?
cu/2
Borsti :D

Corsair

I'm agreed with the feature, because one of my computers, by means of need
could not have static IP because it use to connect to other networks (home, work, etc.),
is on DHCP and because of my network, is connected one phone, plus printer plus etc.
sometimes doesn't keep the same dynamic IP and again to search every time I connect it,
that is not so frequent, this is the reason because is not kept the IP.
Roses don't bloom on the sailor's grave

Corsair.

jjwhalen

Fred,

DHCP is a good idea, although moot in my case.  Because BT didn't have it, I already provided all my hosts with static IP addresses on my intranet router.

I agree with borsti67:
QuoteE) Computers that are no longer in the net / unconnected, will be removed from the list.
Whether to retain or drop inactive hosts from the list needs to be a user decision ;)

Best wishes.


fred

This will be experimental for some time, before I have figured everything out.

First I want some input.

Disconnect the computer from the network, by removing the cable.

Go to: Computers tab, menu Computers->Find computers.

Connect the cable again, and only the local host should be in the list.

Address: Start at the first address of the net and end at the last. NOT the local host address, as start please.

Press "Scan address range". Check how long it takes for the last computer to appear in the list. Should be not more that a second or 2, probably even less.
The total scan time will be somewhat longer, but that is for the wait, for IP addresses that are not there.

JStateson

#5
I ran three tests, the first two with the cable off.  The last one with the cable on.
The first two were identical and about 30 ip's were processed each minute. The scan stopped about 192.168.0.150 which was right at 5 minutes and never got to .255



The second test was with the cable on and at each 1 minute interval,  I made a note of the last "dot" as the ip's were scanned.
Minutes:  1 2 3 4 5 6 7 8
Last IP:   10 11 12 15 16 17 19 20
after 8 minutes I canceled out.  Somewhere after .112 I have a printer and a wireless repeater and I didnt want to wait that long.



I ran this on BT .56 which scans for ip_addr, not domain_name.
 I assume <get_host_info/> will be used to obtain domain_name eventually?

fred

Quote from: BeemerBiker on May 29, 2010, 01:59:27 PM
I ran three tests, the first two with the cable off.  The last one with the cable on.
The first two were identical and about 30 ip's were processed each minute. The scan stopped about 192.168.0.150 which was right at 5 minutes and never got to .255

I ran this on BT .56 which scans for ip_addr, not domain_name.
 I assume <get_host_info/> will be used to obtain domain_name eventually?

Forgot to tell that I wanted the latest BT 0.58, as I have (almost) completely rewritten that part of the program.
And I something else going unexpected. Maybe I have to change that. The target is intended for the last part of the address, that's why it's so short.
Like 128 or 255, that gives 192.168.0.128 and 192.168.0.255 as end address.

And .58 is no longer counting up, it processes everything at once.

And the host info will be used eventually, but for the find it can't be used, because you need the password.

JStateson

#7
Ok - got time to downloadand run.  Before downloading, I already knew that one of my linux system was not reporting temps back to BT as it has rebooted on its on and my mod to the gnome sensor-applet runs from the desktop (not a daemon) and requires a login.  Previously, it showed up as "blank" for 192.168.0.7 (before installing .58)

After installing, I pulled the enet cable and the version went from "blank" to 1.74 and the phrase connected/not-connected showed up for 192.168.0.7 which was confusing.  At this point the cable was actually disconnected but BT hand not done a refresh of the panel.



I waited about 2 - 3 minutes and may have selected "tasks" then gone back to "computer" and BT finally spotted that the cable was disconnected.



I selected "tasks" again, then went back, to "computer" and about a minute or two later BT started recognizeing the systems that had been last displayed.  The new install of BT does not delete the old computers.xml. I had to wait a few minutes before the old systems were displayed as the "scan" button was grayed out.  When I did click on scan it quickly found all the systems.  I apecified 192.168.0.1 to 192.168.0.21 as I knew that was the range of the boinc systems.  The scan took less than 1 minute to find all the systems.  The blue progress bar was exercised about 5 times I think.

The reason I select "tasks" and go back to "compters" is because that seems to trigger BT to go off and see what is there and update the "computer" panel.  I think there should be a button there to quickly test all connections.  Currently, both on 58 and 56, I see a red circle with an X indicating a system is off line, but when I select that system the warning disappears   ie: the system was not really off line after all.




HTH.

fred

Quote from: BeemerBiker on May 29, 2010, 09:24:31 PM
Currently, both on 58 and 56, I see a red circle with an X indicating a system is off line, but when I select that system the warning disappears   ie: the system was not really off line after all.
It will take some time before BT reports the connection as lost, it will retry on the same connection until it gives up. And displays a lost connection.
The TThrottle connection is a lot simpler and may report a disconnect faster.

The circle with the x indicates a lost connection. Depending on what you have set in the expert tab. It the value in 0 for reconnect, a reconnect is not attempted.
Unless you click on all computers or on the computer itself.

And at he moment clicking on another tab, will apply the changes in the Computers tab.

JStateson

I went to that expert page and set the retry to 30 seconds.  It did not seem to do anything.  Maybe I need to reboot.

I clicked on the "X" to close BT.  This puts it into the tray.  About an hour or so later I brought it back up and noticed the circled red X again, on the same win7 system I had seen previously.  I clicked on that X and it went away.  I am going to reboot and next time I will wait at least 30 seconds before clicking on the red X after resuming BT.

I assume BT no longer polls when closed to the tray.    It would be helpfull if it continues to get temp's and can flash its icon if any temps exceed a threshold.  It appears that traffic to port 31417 stops when BT iconizes.

I just had 3 collatz tasks freeze up, for the 3rd time in the last couple of weeks.  I complained to admin about this last week, but was told to downgrade to a lower driver.  I suspended then resumed collatz and that fixed it.  If BT could flash a warning when temps are too low or too high it would be nice.  One gpu held that collatz task for over 24 hours.  The task should have finished in about 35 minutes.  The only indication that something is wrong is the temperature down to 50c - 55c instead of the high 70's.  Otherwise I check the wall clock time to see if too much time elapsed. It is a lot easier to spot temps that are out of bounds.  I think this is on your todo list but I thought I would mention it again.


fred

Quote from: BeemerBiker on May 31, 2010, 03:08:13 AM
I went to that expert page and set the retry to 30 seconds.  It did not seem to do anything.  Maybe I need to reboot.

I clicked on the "X" to close BT.  This puts it into the tray.  About an hour or so later I brought it back up and noticed the circled red X again, on the same win7 system I had seen previously.  I clicked on that X and it went away.  I am going to reboot and next time I will wait at least 30 seconds before clicking on the red X after resuming BT.

I assume BT no longer polls when closed to the tray.    It would be helpfull if it continues to get temp's and can flash its icon if any temps exceed a threshold.  It appears that traffic to port 31417 stops when BT iconizes.

I just had 3 collatz tasks freeze up, for the 3rd time in the last couple of weeks.  I complained to admin about this last week, but was told to downgrade to a lower driver.  I suspended then resumed collatz and that fixed it.  If BT could flash a warning when temps are too low or too high it would be nice.  One gpu held that collatz task for over 24 hours.  The task should have finished in about 35 minutes.  The only indication that something is wrong is the temperature down to 50c - 55c instead of the high 70's.  Otherwise I check the wall clock time to see if too much time elapsed. It is a lot easier to spot temps that are out of bounds.  I think this is on your todo list but I thought I would mention it again.
It doesn't poll that frequently, every 10 minutes. But the history is updated at a 10 seconds interval.
When the connection is lost it should try to reconnect when the reconnect value in the expert tab isn't 0 and within the time window.
But there is an additional retry (3 times) before a connection is considered really lost.
It's on the list but it requires a lot of changes in the rules etc.

JStateson

I rebooted and re-ran that scan and it seem to be working very nicely.  I saw a red circle X but it disappeared before I could click on it.  On another occasion the red X appeared and I noticed that even a ping to that address failed.  Since it is the same address this is happening at, I suspect an intermittant connection problem does exist.

Please check your private messages as I sent you a suggestion.