Skip to content

Heartbeat Message #595

Open
Open
@utkarshg6

Description

@utkarshg6

Why We Need This?

  • Consider this situation: an exit node is unaware that a node, which is a member of the route back, has died. As a result, the exit node will continue to charge the originating node for services. Not only that, but all the relay nodes will also accrue debt against the originating node.
  • For an average user who wants to stream a video, they might notice that they have been banned and did not receive their content either.
  • This shouldn't be the case, as it keeps the network in an ignorant state.

What's the Solution?

  • We can create a heartbeat message that every node will send to its neighbors (directly connected) to check whether they are alive or not.
  • We want to send this message at a high frequency, perhaps every second. If we don't do this regularly and remain unaware of the fact that a node is down, it could lead to excessive debt accrued against the originating node.
  • Once a node discovers that a particular node is dead, it must create updates in its database and then relay that information to the other nodes, which will also cause database changes in those nodes.
  • As soon as a node creates these database updates, it should consider all the routes that included that particular node and stop any further traffic on that route.
  • I honestly think that the latter part of this section should be split into a new card.

What Change Will It Bring for the User?

  • This change will prevent certain cases where a node might get delinquency ban.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    • Status

      🔖 Ready

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions