status-im / nimbus-eth2

Nim implementation of the Ethereum Beacon Chain
https://nimbus.guide
Other
550 stars 239 forks source link

Add experimental Yamux support #6008

Closed zah closed 1 month ago

zah commented 9 months ago

The latest LibP2P now includes Yamux support. It can be enabled by using the following code when constructing the switch:

  .withYamux(inTimeout, outTimeout)
  .withMplex(inTimeout, outTimeout)

The muxer that gets added first is treated as first choice, the second is a fallback.

We should add a hidden command line option for enabling Yamux and then we should deploy it on a subset of our testnet fleet hosts.

tersec commented 9 months ago

We should add a hidden command line option for enabling Yamux and then we should deploy it on a subset of our testnet fleet hosts.

So long as it's a --debug-foo option so that per https://nimbus.guide/options.html#available-options

Any debug-prefixed flags are considered ephemeral and subject to removal without notice.

arnetheduck commented 9 months ago

https://github.com/status-im/nimbus-eth2/blob/unstable/beacon_chain/conf.nim#L334

tersec commented 9 months ago

https://github.com/status-im/nimbus-eth2/blob/unstable/beacon_chain/conf.nim#L334

https://github.com/status-im/nimbus-eth2/pull/6010

tersec commented 1 month ago

https://github.com/ethereum/consensus-specs/pull/3866#issuecomment-2276195113