我一直在考虑一个真正的100%无服务器系统如何工作。具体而言,我对同行发现很感兴趣。看起来这是将当前分散系统实际分散的唯一部分。
据我所知,没有100%无服务器系统。例如,甚至种子也需要连接到跟踪器或DHT路由器(router.bittorrent.com)等集中式网络来发现其同行。
我首先想到的是互联网广播。简单地说,
但是,这可能非常inefficient(255 * 255 * 255 * 255 * 64字节= 270GB /信标)和not supported。就目前而言,这是我能想到的唯一解决方案。在搜索了几个小时后,唯一的解决方案是“只使用部分集中的服务器”。
100%无服务器对等点发现是否有任何解决方案(甚至是理论上的)?
答案 0 :(得分:2)
2008年,XMPP开发了一个支持无服务器对等服务发现的标准
http://www.xmpp.org/extensions/xep-0174.html
不幸的是,我只找到了一个实现此功能的实例。
https://igniterealtime.org/issues/browse/SMACK-262
它没有提交给代码库,因为它被依赖项阻止了。 已尝试使用较新版本重新编译它。 https://github.com/jadahl/smack-linklocal 这可能是一个,但无法验证它是否有效。
有关更多详细信息,请阅读XEP-0174有关其工作原理的规范。