Open Chewie9999 opened 5 years ago
Hi @Chewie9999 . Thank you!
Forban was a prototype I quickly design to see the ability of opportunistic file-sharing without Internet connectivity. The prototype did its job and most probably still work.
I still have some ideas to rewrite a second generation of Forban based from the findings of the original prototype:
For a second version, the following features could be added:
Defining a set of peers that you know and want to talk to. The difficult part is the pre-registration and discovery of those new peers in a secure way. For the people would don't care and love opportunistic sharing, this feature could be disabled.
The index discovery part is ok but the copy of files based on size is super weak (works for small dataset or libraries of files). So the protocol, should basically relying on existing protocol such as the rsync protocol to re-conciliate large datasets.
Let me know what you think.
Hi Alexandre, Thank you for your comprehensive reply!
I agree with most of your points. For WiFi, i think it's called "kiosk mode", but I think for most users of this software, they will be using it at hacker spaces and festivals, so usually have a fairly open network. Of course this could limit the appeal of your program, but may be one thing less to think about in the short term.
I agree about people not wanting to accept files from anyone, but unless all users are configuring their nodes to "friends" only, then some files from one node that is "open" could infiltrate the "friends" only nodes after some time anyway surely?
Another couple of projects that might be worth looking at for your syncing issue is "unison" (https://www.cis.upenn.edu/~bcpierce/unison/)- it has ssh support built in which is nice, and "syncthing" (https://syncthing.net/), which users can configure to be a relay, which could get over your wifi "kiosk mode" problem.
Hi @adulau Thank you for this great program. I heard about it at EMF and ran it, but it hasn't been updated for a while, and there could be loads of features that could be added. I am no good at coding, but what can I do to help? Thanks,