Crates.io | atm0s-sdn-node-alias |
lib.rs | atm0s-sdn-node-alias |
version | 0.1.3 |
source | src |
created_at | 2024-01-09 10:07:22.797272 |
updated_at | 2024-01-31 17:56:55.875715 |
description | Node alias service in atm0s-sdn |
homepage | |
repository | |
max_upload_size | |
id | 1093720 |
size | 36,621 |
This service implements a DNS-style mechanism where each node registers itself along with a number of aliases. These aliases are typically used on proxy or tunnel servers.
The mechanism used here helps avoid the need for strong synchronization data between nodes. Any node can disconnect and rejoin at any time. The process is quite straightforward, as explained below:
Every time a node registers or unregisters an alias, it broadcasts this change to all other nodes.
When a node receives a registration, it stores the sender as the location hint.
When a node needs to find a location for an alias, it first checks its local storage for the location hint.
This mechanism proves particularly useful when dealing with a large number of aliases that rarely change. This can be observed in systems like DNS, Tunnels, and Proxies. However, this service should not be used if you have aliases that frequently change and are queried often.