nimbus-eth2/beacon_chain/networking
Etan Kissling a6f0a7a55d
broaden `SszError` catches to `SerializationError` (#5081)
`nim-serialization` is tagged with `{.raises:[SerializationError].}` so
it is no longer sufficient to catch `SszError` in some situations.
`SszError` inherits from `SerializationError`, so broadening the caught
exception types can be done now, to enable bumping `nim-serialization`.

https://github.com/status-im/nimbus-eth2/pull/5043#issuecomment-1584227993

#5061 is also needed to bump `nim-serialization`.
2023-06-15 16:29:13 +00:00
..
README.md Reorg (5/5) (#2377) 2021-03-05 14:12:00 +01:00
eth2_discovery.nim remove Nim 1.2-compatible `push raise`s and update copyright notice years (#4528) 2023-01-20 14:14:37 +00:00
eth2_network.nim broaden `SszError` catches to `SerializationError` (#5081) 2023-06-15 16:29:13 +00:00
libp2p_json_serialization.nim remove Nim 1.2-compatible `push raise`s and update copyright notice years (#4528) 2023-01-20 14:14:37 +00:00
network_metadata.nim more flexible compile time resource path 2023-06-05 12:52:25 +07:00
network_metadata_gnosis.S more flexible compile time resource path 2023-06-05 12:52:25 +07:00
network_metadata_mainnet.S more flexible compile time resource path 2023-06-05 12:52:25 +07:00
peer_pool.nim bump chronos (#5039) 2023-06-08 13:42:19 +00:00
peer_scores.nim harden req/resp peer scoring (#4966) 2023-05-19 15:01:27 +03:00
topic_params.nim remove Nim 1.2-compatible `push raise`s and update copyright notice years (#4528) 2023-01-20 14:14:37 +00:00

README.md

Networking

This folders hold a collection of modules to:

  • configure the Eth2 P2P network
  • discover, connect, and maintain quality Eth2 peers

Data received is handed other to the ../gossip_processing modules for validation.

Security concerns

  • Collusion: part of the peer selection must be kept random. This avoids peers bringing all their friends and colluding against a beacon node.
  • Denial-of-service: The beacon node must provide ways to handle burst of data that may come:
    • from malicious nodes trying to DOS us
    • from long periods of non-finality, creating lots of forks, attestations, forks