Skip to content

[Networking] Add hello message #1531

@mcdee

Description

@mcdee

At current when two peers first connect they exchange some information about the current state of their chains with the status message, but there is some information that can be useful to help peers know how to interact with each other. This should not be added to the status message, as the information is static per connection and sending it with every status update would be wasteful. Instead, a new handshake message hello is proposed.

An initial stab at the contents of a hello message might be:

  • genesis state root (32 bytes)
  • genesis fork version (4 bytes)
  • client name/semver e.g. prysm/1.2.3 (bytes)
  • supported version(s) of the networking spec (repeated uint32)

This provides a basis for understanding if the two peers could talk to each other, even if either or both of them have no state information beyond genesis. It also allows for peers to tweak their behaviour depending on known idiosyncrasies in particular client/spec versions.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions