Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Network Aware NodeGraph and NodeConnectionManager #783

Open
amydevs opened this issue Jul 29, 2024 · 1 comment
Open

Network Aware NodeGraph and NodeConnectionManager #783

amydevs opened this issue Jul 29, 2024 · 1 comment
Labels
development Standard development

Comments

@amydevs
Copy link
Member

amydevs commented Jul 29, 2024

Specification

With network segregation we will potentially have separate networks to keep track of. So when finding a node within a specific network, it will actively work against us to search through nodes that are not a part of that network. This will affect us when asking a node what nodes it's connected to and what nodes it has connected to during to nodes find process.

To streamline and optimise things, when responding to these requests we must filter for only the nodes in the requested network. There are two RPC calls affected by this, nodesClosestActiveConnectionsGet and nodesClosestLocalNodesGet. These RPC calls must take a network parameter on the input and only respond with nodes in that network as part of the output.

To achieve this we need to update the NodeConnectionManager to be aware of what networks each connections have access to as well as updating the NodeGraph to track the network each entry connected on. On top of that they need to filter for specific networks on request when getting lists of nodes.

All of this will be very important for the find node logic in the NodeManager.

We also may have to account for the security by checking if the connection requesting has access to said network. We could potentially make selection of network seamless by extracting that data from the connection and using it implicitly when filtering the responses.

Additional context

Related: #770

Tasks

  1. Update the NodeConnectionManager to be aware of the networks each connection has access to.
  2. Update the NodeGraph to be aware of the networks each entry is a part of.
  3. Update the RPC calls for requesting closest nodes and active connections to filter for a specific network.
  4. Review and conciser the security aspect of checking what network the requester has access to.
@amydevs amydevs added the development Standard development label Jul 29, 2024
Copy link

linear bot commented Jul 29, 2024

@tegefaulkes tegefaulkes mentioned this issue Jul 30, 2024
5 tasks
@tegefaulkes tegefaulkes changed the title Network Awareness of NodeGraph Network Aware NodeGraph and NodeConnectionManager Jul 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
development Standard development
Development

No branches or pull requests

1 participant