Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reduce network load #16

Open
MaStr opened this issue Nov 9, 2012 · 2 comments
Open

Reduce network load #16

MaStr opened this issue Nov 9, 2012 · 2 comments

Comments

@MaStr
Copy link
Contributor

MaStr commented Nov 9, 2012

Currently, every box sends out regular broadcasts about itself.

What do you think about turning this around?
In a network with mostly "shared"-mode-Forban, you don't need a high frequent broadcast. It may suffice when a user can initiate a "probe" and every box answers with a announce package (as a callback style) - the initiating can be done automatically after x hours since last visit, or something like that.
Other boxes can "hear" this answers too and save the result in their cache.

Opportunistic-Forbans will initiate the broadcast itself every x intervall (maybe first try to get everything your found, then re-broadcast).

What do you think about that? Let this discuss :)

@adulau
Copy link
Owner

adulau commented Nov 10, 2012

I like very much the idea. We just have to take care of two things:

  • Keep the protocol simple
  • and avoid "probing" to generate flooding on the network.

Here is a possible idea. We can basically just use the announces of the other Forban as a trigger/"probe" request.

So basically, we change a bit the logic of discover.py to trigger announce.py based on the new Forban seen. And then we use a kind of "exponential backoff" on the algorithm to avoid flooding the network. The advantage here, would be to use the exact messages (so we don't change the protocol) and we could also even imagine a simple version of a script just sending a Forban announce (without a real Forban behind) to just trigger the announce from the others.

What do you think? If we can go in this direction, I'll add an experimental feature.

Thank you for your proposal.

PS: By the way, are you going to OHM2013? Might be a good opportunity to make a Forban hackathon ;-)

@MaStr
Copy link
Contributor Author

MaStr commented Nov 12, 2012

I like the idea, too. In fact, it was an idea of a PirateBox user ;)

I totally agree with those two points. We're exchanging the constant flood of announcements to a user-driven flooding.

I had the nearly same ideas about discover and the announce.py. I would integrate a few things to forban_share.py too.

PS: I'm writing you a email about OHM2013 ;)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants