Replies: 2 comments 10 replies
-
Only starting with iroh so might very well be suggesting silly things. In my usecase users will not be on the same network to start with in many situations. A secure low bandwidth p2p connection over ble could still be of great value. Specially when wifi / 4g / 5g isn't reliable for any reason ( network congestion, remote location, construction site, underground, ... ). also apple restricts any api access to eg. hotspots on ios as far as I know. Maybe alternatives like objc2_multipeer_connectivity would be a more suitable approach at least for apple systems. eg. in the case of ditto they seem to maintain a number of ble connections as fallbacks even when higher throughput connections are available. That mechanism can also be switched off depending on mesh size / requirements. https://docs.ditto.live/sdk/latest/sync/managing-redundant-bluetooth-le-connections. Not sure on what native apis they rely and how they manage interoperability between different platforms. Also not sure if there is any concept of modeling "transport" priority / QOS in iroh but that is what I would expect from a p2p system. protocols / routers and api clients should be able to detect and react to such degradation events. In my case only sending essential data and buffering the rest would be very valulable. My interpretation is that "p2p that works" would definitely be more enabled by a low bandwidth local connection compared to fallback relay over the cloud. Or at the very least the endusers should have the choice. Specially in cases where the quality of that cloud connection is compromised for any reason. What are your thoughts on such "fallback" transports? Regarding ble I'm using btleplug crate to interface with sensors; it has multiplatform support for central role that works quite well so far. Currently looking for solutions to the peripheral role, did some poc with a unmaintained crate bluster but so far didn't have any luck with adversising services on osx. The code "works" but nothing happens. |
Beta Was this translation helpful? Give feedback.
-
I'm dipping my toes into the serverside "whale nodes" aspect of things. And how to approach the scenario of plenty availability in terms of connectivity. Being able to adjust the behaviour of a node at runtime based on external factors / events resp. a hard and concious user choice would be an interesting extension of the current "tuned for mobile" behaviour. As far as I understand the main criteria would be:
Potential node classes:
|
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
We haven't looked into BTLE (bluetooth low energy) much. Our friends at https://github.com/berty/berty spent a lot of time trying to get BTLE to behave, and to be honest I don't think it was worth the amount of effort they had to put in to getting things into a workable state. I'd make a point of checking back in with the Berty team before revisiting in earnest.
The other issue with BTLE is the constricted bandwidth. Iroh is supposed to be "p2p that works", and if we were to auto-switch to a BTLE connection the max throughput of the connection drops considerably. Might be fine for some use cases, but certianly not for all.
That said, we're always interested in chat use cases & future possibilities!
Beta Was this translation helpful? Give feedback.
All reactions