Operators
Performance Measurement

Performance Monitoring & Testing

Nym Mixnet has been running on mainnet for quite some time. There is still work to be done in order for the network to meet its full potential - mass adoption of privacy through distributed Mixnet.

As Nym developers constantly improve the software, operators have as much important role, keep their nodes up to date, monitor their performance and share feedback with the rest of the community and Nym team. Therefore monitoring node performance is an essential pillar of our common work.

Nym Network is routed either through the Mixnet (5-hop) or through Wireguard (2-hop). In all cases Nym node operators always employ only one binary called nym-node. Through provided arguments (or changes in the config file), nym-node can be utilised for different functionalities. However, once it's registered to Nym Network it's by default available for Nym Mixnet not for Wireguard routing. Only nodes with Wireguard enabled, are also available for Wireguard routing. This creates a situation where every Wireguard enabled nym-node is required to have a solid performance score in Mixnet to begin with, but not every Mixnet routing nym-node must have Wireguard enabled.

Given this complexity, we divided the part below about perfromance calculation logic and node selection into two parallel tabs: Mixnet and Wireguard.

Functionality & Performance Check

If you want to check your nodes performance, connectivity and much more, see some of the dashobards:

For more information about available endpoints and their status, you can refer to nymvpn.com/api/public/v1/directory/gateways (opens in a new tab) or see directly self described endpoints of your node:

# sustitude <IPv4_ADDRESS> or <HOSTNAME> with the one corresponding to your node
# for http
http://<IPv4_ADDRESS>:8080/api/v1/swagger/#/
# or
http://<IPv4_ADDRESS>/api/v1/swagger/#/
 
# for reversed proxy/WSS
https://<HOSTNAME>/api/v1/swagger/#/

For example to determine which mode your node is running, you can check the :8080/api/v1/roles endpoint:

# sustitude <IPv4_ADDRESS> or <HOSTNAME> with the one corresponding to your node
# for http
http://<IPv4_ADDRESS>:8080/api/v1/roles
# or
http://<IPv4_ADDRESS>/api/v1/roles
 
# for reversed proxy/WSS
https://<HOSTNAME>/api/v1/roles

Monitoring

There are multiple ways to monitor performance of nodes and the machines on which they run. For the purpose of maximal privacy and decentralisation of the data - preventing Nym Mixnet from any global adversary takeover - we created these pages as a source of mutual empowerment, a place where operators can share and learn new skills to setup metrics monitors on their own infrastructure.

Guides to Setup Own Metrics

A list of different scripts, templates and guides for easier navigation:

Collecting Testing Metrics

For the purpose of the performance testing Nym core developers plan to run instances of Prometheus and Grafana connected to Node explorer in the house. The network overall key insights we seek from these tests are primarily internal. We're focused on pinpointing bottlenecks, capacity loads, and monitoring cpu usage on the nodes' machines.