jhass / nodeinfo

NodeInfo defines a standardized way to expose metadata about an installation of a distributed social network

Home Page:http://nodeinfo.diaspora.software

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Advertising known nodes

agateblue opened this issue · comments

commented

I don't know if it's supported by the protocol (or another one?), but I think having some way to advertise in the nodeinfo payload which nodes you are federating with could make discovery / federation easier.

Embedding this list directly in the nodeinfo payload may not be a good pick if we have hundreds or thousands of connections, but maybe providing a link to another URL?

{
  knownNodes: 'https://myinstance/known-nodes'
}

And requesting https://myinstance/known-nodes would return something like:

{
  lastUpdated: 'date',
  nodes: [
    {domain: 'node1.network', firstSeen: 'date'},
  ]
}

(this API/payload is completely imaginary and can be adapted of course).

Do you have any real world example & use case of any federated SNs already doing this? I'd be willing to standardize any homegrown solutions to this here, but let's just not add features out of a "uh, could be nice I guess" :)

commented

I can think of two use cases. Having the connections being advertised explicitely can:

  1. Make it easier for bots (such as https://fediverse.network/) to crawl the network and discover new nodes (maybe with an additonal property to opt-in in the discovery process)
  2. Make it easier for users to know which nodes an instance is talking to (especially in a whitelist context)

IMHO, improving discovery is a good thing in federated networks. I'll probably implement something like that for Funkwhale anyway, and it's perfectly fine to close this issue in the meantime? I can reopen it with more data / real world examples :)

Yes, let's reopen once there's existing solutions this could replace :)