ipfs / local-offline-collab

Local Offline Collaboration Special Interest Group
MIT License
46 stars 13 forks source link

Local-first use case: sharing duplicate application downloads within school network #10

Open momack2 opened 5 years ago

momack2 commented 5 years ago

Hi @Jorropo - I work on the IPFS project focusing on how to make this tech work well for use cases like yours - where you want to be able to first check your local connections for content before going over a constrained outbound connection. I'd love to learn even more about your use case and debug what is missing to make this happen. Would you be interested in doing a short videochat some evening with me and @raulk to help us understand better? We'd like more information about your subnet structure, what you've tried so far, and how we can help you problem solve. Shoot me an email at locol-wg@ipfs.io and we can set up a time!

Originally posted by @Jorropo in https://github.com/zixuanzh/py-libp2p/pull/117#issuecomment-459526264 ----

I'm a student in a computer school, each week end all computers are reset and the monday everybody loss 3h of software downloading because 300 peoples downloading chrome, firefox, visual studio, film, ... on a shared 500Mbits/s connection, this is pain full. (Also the administrator limited each outbound connection to 250KBytes/s so employees of the school can go on internet with a good bandwith), Also we can't use any regular BitTorrent file sharing tool because each rooms is in a private subnet. So I'm trying to make an distributed app store accessible through web and through an desktop app with auto installation system. At start my choice was web torrent, but web torrent doesn't provide any good broadcast system for the app store. So I looked IPFS, that quite good, provide broadcast, distributed, ..., and in the next release of js-ipfs we will be able route with DHT. So for the web app choice is fast but for the desktop, hummm. I can't make WebRTC work on electron on computer's school, work good on mine but not on these computers, I only saw that on this computers so I think that a configuration in the windows10 blocking that. So for making desktop app I only know Electron and Python, so my next choice is python. But for that I need ipfs in python, but for ipfs in python I need libp2p in python, compatible with js-ipfs, that will work better :smiley: .

And for nat-pmp and upnp, that simple and this is a must.

Also WebRTC for Ethereum 2.0 could be good things, because it do less centralization. Node without port opening capabilities will be able to serve as a full node.