4个版本
0.1.3 | 2024年1月31日 |
---|---|
0.1.2 | 2024年1月24日 |
0.1.1 | 2024年1月9日 |
0.1.0 | 2024年1月9日 |
#1465 在 网络编程
每月86次下载
在 atm0s-sdn 中使用
36KB
710 代码行
atm0s-sdn节点别名服务
此服务实现了一种类似于DNS的机制,其中每个节点都会注册自己以及一些别名。这些别名通常用于代理或隧道服务器。
功能
这里使用的机制有助于避免节点之间需要强同步数据。任何节点都可以随时断开并重新加入。过程非常简单,如下所述
-
每次节点注册或注销一个别名时,它都会将此更改广播到所有其他节点。
-
当一个节点收到一个注册时,它将发送者作为位置提示存储起来。
-
当节点需要找到一个别名的位置时,它首先检查本地存储中的位置提示。
- 它向位置提示发送ping以确保它仍然持有该别名。
- 如果没有位置提示,或者ping超时或节点回复“未找到”,则节点向所有其他节点广播一个“扫描”请求。
- 如果一个节点回复“找到”,则获得结果。然而,如果在超时后没有“找到”响应,则表示别名未找到。
用例
当处理大量很少更改的别名时,此机制特别有用。这在DNS、隧道和代理等系统中可以观察到。然而,如果您有频繁更改且经常查询的别名,则不应使用此服务。
依赖项
~12–23MB
~375K SLoC