Hi all, I’m interested in building p2p digital spaces, and have enjoyed following Spritely’s progress over the past couple years towards this goal. One aspect of p2p networking that I feel is important, is the ability to support more “human centered” networks e.g. networks where devices are not expected to have 100% uptime, and fail gracefully in disconnected scenarios.
Towards this, I have been investing time to projects like Briar and LXMF. In the context of OCapN, and Goblins, I was wondering if anyone would like to share thoughts on how to approach delay tolerant networking with Goblins?
I’m still trying to wrap my head around this project, but at a high level I feel like there are two different approaches:
-
Netlayer level: one way to support DTN capabilities could be to add netlayers that have these properties. I am a bit confused if DTN routing layers like NNCP can be implemented as OCapN netlayers, the example “pigeon netlayer” mentions that it would need some sort of capability to check if the pigeon got lost, which I am unsure is a property NNCP can provide.
-
Actor level: the other way I could think of, would be to have “Proxy Actors” which could implement some sort of store-and-forward, or mesh routing system in the event that a reference to the actual actor object could not be reached. I think that in this solution, there would still need to be some message passing to tell the sender that the message has only been sent to an initial proxy instead of the intended target. But to me this approach seems like it could work? Would love to hear some more thoughts on this.
Btw, I saw mention of a “Relay netlayer” in the IRC logs, if anyone has any additional insight into this project, I would love to hear more about it!
Cheers,
Avon