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

Possible enhancement: Implementation of CJDNS #240

Closed
pierrebeaucamp opened this issue Dec 10, 2014 · 2 comments
Closed

Possible enhancement: Implementation of CJDNS #240

pierrebeaucamp opened this issue Dec 10, 2014 · 2 comments

Comments

@pierrebeaucamp
Copy link

CJDNS is a network protocol specifically designed for meshnets. It's used around the world in various meshnet communities (see Hyperboria, Project Meshnet or the Reddit Community).

As Freifunk is a very well functioning and mature project, I understand that there is no need to look for an alternative to batman-adv. But the idea of a meshnet spreads globally and I think the various projects could benefit from each other by working together for the greater good.

I just want to raise awareness of CJDNS, so the idea of a possible implementation (side-by-side with batman-adv or replacing batman-adv) could get around the freifunk and gluon communities.

Thank you.

@neocturne
Copy link
Member

Oh, we're desperately trying to get away from batman-adv, as it doesn't scale to our network sizes very well (Elektra, the creator of the BATMAN protocol, once told us she though of networks of 20~30 nodes when she designed it). We have some (not-so-well documented) plans on designing a new protocol to replace batman-adv as the basis of Gluon in the long term.

That being said, CJDNS isn't really suited for the kind of mesh network Freifunk is, it has a very different design goal (as far as I can judge based on my limited knowledge of CJDNS). Important features of current batman-adv-based firmwares are:

  • No special support needed on the clients systems (the Freifunk node is a simple WLAN AP, the client doesn't need to know anything about meshing)
  • Transparent roaming of clients between nodes (without connections being broken)

(It would be possible though to create CJDNS peerings over Freifunk, but that doesn't need any support on the nodes.)

Nevertheless, Gluon is just a framework for creating OpenWrt-based mesh firmwares, so it should be entirely possible to implement CJDNS support in Gluon, which can be enabled when building the firmware as an alternative to batman-adv. The resulting firmware just wouldn't have to do much with the way Freifunk networks currently work.

So if you want to provide patches to support CJDNS, we'll happily take them as long as they don't interfere with the batman-adv stuff, but I guess you can't get much support for this from us Freifunk people.

@tcatm
Copy link

tcatm commented Mar 3, 2015

I'm closing this as it's unclear how this could proceed. If someone's interested to try it out using Gluon and documented his findings we might be able to judge whether it is worth implementing.

@tcatm tcatm added the 2. status: wontfix The issue raised is out of scope for this project label Mar 3, 2015
@tcatm tcatm closed this as completed Mar 3, 2015
@tcatm tcatm removed the 2. status: wontfix The issue raised is out of scope for this project label Mar 3, 2015
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

3 participants