I actually already had a post written up proposing adapting IPFS to do exactly what they describe here, by incorporating a mesh network architecture like in MeshKit.
The question becomes “what are the nodes, cause it drains people’s batteries too fast”, to which I say one simple thing:
Fully functional Cell Phones are common E-waste.
Imagine that, when you upgrade your cellphone, you could use a one-buttonpress OS program (glorified script) on your laptop to overwrite the phone’s OS/data with a stripped-down android that would dedicate all storage space to its IPFS node, not bother with an interactive interface, and regularly check a IPNS addr to try to pull the latest “official IPFSmeshnode release”. You now could have your old phone function as a public access wifi/bluetooth-driven IPFSmesh node, you just need power.
So if you can find somewhere to plug in your old, now-wiped phone and leave it behind- whether that’s intentional in your own house or in public plugs on the outside of govt buildings or on the spare plug near the AC unit behind the recently-built Starbucks in your neighborhood- you’ve contributed to the public, distributed internet rather than contributed to piles of burning E-waste wherever your phone would have otherwise ended up.
Here’s the original post w/ more exploration of the reasons why you would want to do this, and the technical problems I’d anticipate:
Recent events such as the Turkish blocking of Wikipedia, frequent spontaneous failures of social media sites during times of critical need for oppressed populations like in the US, and newly announced conservative UK Govt plans to censor “sources of harm” underline an immediate compelling need for a decentralized internet architecture for the sourcing for data.
In addition, with the growing trend of failures of existing infrastructure to serve oppressed populations globally, the legalization of ISPs selling user data in the US, and constant threats to Net Neutrality, the need for a democratized internet infrastructure for node-to-node connectivity becomes visible.
IPFS is, of course, very well suited to decentralize the sourcing of data, but as is it is entirely dependent on existing hardware owned & operated by ISPs.
Mesh Networks like FireChat, however, provide the opportunity (when at sufficient density) to side channel around existing, possibly impaired or untrustworthy internet infrastructure. Handing off content from node to node with no expected heirarchy can even allow internet access within Temporary Autonomous Zones, creating subnetworks with intermittent contact to the grander internet yet which can be continuously used locally with no additional infrastructure necessary beyond regular cell phones.
Are there any ongoing efforts to spin up an IPFS implementation for mesh network architectures, i.e. based off OpenGarden’s MeshKit? How could I participate in such a project?
What problems would a nonheirarchical mesh network architecture pose for the IPFS algorithm? I am just a screb at IPFS, but here’s the ones I’d guess at from my out-of-date understanding.
I’m guessing the DHT table usage- with a multitude of concurrent requests going out at increasing distances, prioritizing locally- needs to change, as long-range connections do not necessarily exist. Does this result in categorical collapse of the algorithm?
In addition, I’m unsure how the inter-node market of data would interact with single nodes temporarily acquiring access to the larger internet and bringing it back to the sub-mesh? I’d expect during regular use of the closed-off local network most nodes would end up knowing the complete list of unsatisfied desired chunks across the network as a whole, and so in the temporary connection to the grander internet would greedily request all desired chunks in addition to those of regular use. This influx may be counterbalanced somewhat by the potential outflux of updates from within the sub-net.
However, upon returning that node to connect to the sub-net, it would be arriving with the chunks desired by all other nodes on that subnet. How would this sudden highly-concentrated content injection influence the network?
Such a mesh network must have sufficiently broad deployment in order to see use. What efforts exist & obstacles remain for deploying ipfs nodes on cell phones assuming the deployment could be modified to use a meshnetwork for requests?
The birth of simple, dirt-cheap, and small computers with built-in wifi present potential for the creation of “IPFS leeches”, that when plugged in to a power supply could simply on-their-own act as nodes for such a mesh network and for the IPFS network. Could an IPFS node be run on stripped-down version of Android on old phones? What about things like the 7$ computer chips w/ Wifi that are being built today?