Enrique Ortiz
cfef666886
Network: Extend NetworkInfo trait with NetworkStatus ( #923 )
2023-01-19 14:43:51 -05:00
Matthias Seitz
aadc21cf30
fix(net): reset backoff counter on graceful disconnect ( #918 )
2023-01-18 11:43:26 -05:00
Matthias Seitz
a1dfafe331
docs: additional response handling docs ( #917 )
2023-01-18 11:33:56 -05:00
Matthias Seitz
7db6791d9d
perf: tighten reputation change units ( #916 )
2023-01-18 11:27:14 -05:00
Aurélien
115e623ae6
Ability to (de)serialize NetworkConfigBuilder ( #897 )
2023-01-18 11:17:43 +01:00
Aurélien
f9de425ad8
refactor: unify all chains confs ( #747 )
...
Co-authored-by: Bjerg <onbjerg@users.noreply.github.com >
2023-01-17 07:47:34 -08:00
Dan Cline
55d1db0c1d
feat(network): move test helpers to test-utils mod ( #901 )
2023-01-17 11:18:53 +01:00
Matthias Seitz
79fad91ca0
feat(net): integrate num active peers in downloader ( #900 )
...
Co-authored-by: Roman Krasiuk <rokrassyuk@gmail.com >
2023-01-17 01:31:52 -08:00
joshieDo
d50d9bd0fe
chore(net): Add proptest roundtrip to rlp types ( #829 )
2023-01-16 09:50:58 -08:00
David Kulman
16ce828e27
feat(net) Increase the timeout for peers that are to be backed off repeatedly ( #828 )
...
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de >
2023-01-14 12:22:15 +01:00
Sanket Shanbhag
5c80bc9122
fix: validate fork_id before adding peer from discovery ( #871 )
2023-01-13 18:30:34 +01:00
Tomás
a5bdfe54dd
feat(net): prioritize requesting peers with low latency ( #835 )
...
Co-authored-by: lambdaclass-user <github@lambdaclass.com >
2023-01-13 16:01:39 +01:00
Enrique Ortiz
0603f07c6c
feat(net): add way to get the NodeRecord of the local node ( #875 )
...
Co-authored-by: Enrique Ortiz <evalir@users.noreply.github.com >
2023-01-13 15:57:29 +01:00
Matthias Seitz
18dbcd4e6a
fix: use correct boolean conversion for direction ( #870 )
2023-01-13 15:50:39 +01:00
Sanket Shanbhag
e3dbaf686e
feat: include optional ForkId in Discovery ( #863 )
2023-01-13 13:30:08 +01:00
Matthias Seitz
3f9e7a080a
feat(net): introduce PeersInfo trait ( #860 )
2023-01-13 12:04:39 +01:00
Matthias Seitz
7767b216bc
feat: integrate DNS discovery service ( #832 )
2023-01-13 10:34:13 +01:00
Matthias Seitz
ba3048ceb0
refactor: add network-api crate ( #838 )
2023-01-12 19:39:44 -08:00
LambdaClass
4460dc7b25
feat(net): adaptable request timeouts ( #789 )
2023-01-12 11:10:14 +01:00
Bjerg
20ee1bb1c9
refactor: move cli trace helpers to reth-tracing ( #820 )
2023-01-11 10:20:37 -08:00
Enrique Ortiz
dc8edcabb3
chore: double default session event buffer to 128 ( #819 )
...
Co-authored-by: Enrique Ortiz <evalir@users.noreply.github.com >
2023-01-11 17:43:19 +01:00
Bjerg
2e95ed4b6e
fix: make config serialize as toml ( #811 )
2023-01-11 13:36:41 +01:00
TurboFish
16d506d21c
add a helper function for ActiveSession on_request to safely emit_message ( #806 )
...
Co-authored-by: turbofish <junwow@amazon.com >
2023-01-11 11:04:23 +01:00
Matthias Seitz
55bc2591e6
fix(net): handle outgoing connection error correctly ( #798 )
2023-01-10 21:30:17 +01:00
Dimitris Apostolou
31cb66902e
fix: Fix typos ( #773 )
2023-01-09 01:43:51 +01:00
David Kulman
05e9c79cc5
feat(net) Add TransactionsManager Metrics ( #769 )
...
* Added TransactionsManager Metrics
* Remove tracking of peers
* Add propagated_transactions
2023-01-08 18:38:07 +01:00
Andrew Kirillov
2da828478c
feat(net): Bandwidth monitoring ( #707 )
...
* WIP for draft PR
* added basic test
* using BandwidthMeterInner type & added TcpStream test
* formatted
* formatted w/ +nightly
* using & for and
* formatted
* added default impl for BandwidthMeter
* using _bandwidth_meter bc unused
* removed redundant clone
* addressed nits, renamed file
* addressed nits, renamed file
2023-01-06 21:43:13 +01:00
Sanket Shanbhag
1b5bc5e1f7
Rotate peers when fetching ( #743 )
2023-01-06 12:21:42 +01:00
Bjerg
ade1ea4216
refactor: clean up StateFetcher::next_peer ( #738 )
...
* refactor: clean up `StateFetcher::next_peer`
The `&mut Peer` is unused, so we do not need to
return it.
* chore: idiomatic rust
2023-01-05 23:38:31 +01:00
Bjerg
ee8b0efed6
fix: apply correct reputation dmg on bad msg ( #739 )
2023-01-05 23:20:34 +01:00
Matthias Seitz
babf73612f
feat(net): add granular backoff durations ( #729 )
...
* feat(net): add granular backoff durations
* update backoff durations
2023-01-05 14:09:38 +02:00
Sanket Shanbhag
e4bd5b4fe9
feat(net): add NetworkMetrics ( #708 )
...
* Added NetworkMetrics
* update docs
* add more metrics and make naming consistent
* add active inbound and outbound connection metrics
2023-01-05 10:17:57 +01:00
Matthias Seitz
5a58554596
test: add debug test for getting headers ( #713 )
2023-01-04 16:07:23 +01:00
Matthias Seitz
42f3245a11
feat(net): penalize peers that send same transactions ( #712 )
2023-01-04 15:56:40 +02:00
Matthias Seitz
5933014fba
test(net): more txpool testing support for network ( #711 )
2023-01-04 14:36:51 +02:00
Matthias Seitz
6f3eb42d32
feat(net): ignore transactions during sync ( #705 )
2023-01-04 13:06:12 +02:00
joshieDo
6407b5087e
chore: use B160, B256 and U256 coming from revm and ruint ( #676 )
...
* use B256, B160 and U256 from revm
* fix U256 from_str
* use U256::ZERO
* use temporary commit for revm and interpreter
* more U256::ZERO
* more changes for revm/ruint types
* clippy
* change revm and revm-interpreter repo
* remove H160 wrap
* minor cleanup
* remove unused
* fix MIN_PROTOCOL_BASE_FEE
2023-01-04 11:11:48 +02:00
Matthias Seitz
db4f0befee
fix: bump request timeout ( #695 )
2023-01-03 16:12:05 +02:00
Aurélien
65bc3cb7b8
RPC Admin namespace implementation ( #685 )
...
* AdminApi first draft
* Implement add_trusted_peer and remove_trusted_peer
* Fix tests
* Refactoring NetworkHandle peer related methods
* Refactoring add_discovered_node in PeersManager
* Change record type from String to NodeRecord
* Adding NetworkHandleMessage::RemovePeer command
2023-01-03 14:02:05 +01:00
Matthias Seitz
debf21d34e
feat: add SyncState traits ( #693 )
...
* feat: add SyncState traits
* docs: clarify execution stage
2023-01-03 14:56:50 +02:00
LambdaClass
346d50ebf4
feat: test trusted peers functionality ( #687 )
...
* Add test for trusted_peer prioritization
* Add test for connect_trusted_nodes_only flag
2023-01-02 18:36:50 +01:00
LambdaClass
efac887e30
chore: add serde feature to network crate ( #653 )
...
* Add serde feature and support for PeersConfig
* Add Duration fields and Weights
* Add serde for ConnectionInfo field
2023-01-01 18:27:55 +02:00
Matthias Seitz
ed55c2bf2b
docs(net): update best_unconnected docs ( #670 )
2023-01-01 17:16:30 +02:00
LambdaClass
1f6a9436ac
feat(net): enforce trusted_nodes_only setting ( #660 )
...
* Add PeerKind and enforce trusted_only setting
* Don't remove trusted peer on graceful close
* Don't remove trusted nodes on PeerCommand::Remove
* Rename PeerKind::NonTrusted to Basic
* Move PeerKind::is_trusted to Peer impl
* Add trusted peer prioritization
2023-01-01 12:14:10 +01:00
GeemoCandama
f5ae970e63
feat(cli): add --disable-discovery ( #597 )
...
* redo add disable_discovery cli flag
* incorporate option into discovery test
* smol touch up
* rustmft
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de >
2022-12-30 10:56:59 +01:00
Matthias Seitz
3ab6c278e8
fix(net): improve error propagation ( #620 )
...
* fix(net): improve error propagation
* refactor: unify on closed session
* add noop helpers
* add noop helpers
* test setup
* test: add dropped connection test
* rename mock --> test-utils
2022-12-29 16:05:56 +01:00
Ayush
de6630a121
feat(network): get peer info ( #603 )
...
* Create struct PeerInfo
* Add GetPeerInfo command
* Minor changes
* Use oneshot::sender
* Add GetPeerInfoById
* Use async/await
* Add client_id to establish connection
* Add method calls
* Add test_get_peer
* Add test_get_peer_by_id
* fmt changes
* clippy changes
* chore: rustfmt
* smol touch ups
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de >
2022-12-29 14:20:17 +01:00
Roman Krasiuk
565a0aa90b
feat(engine): new payload execution ( #631 )
...
* feat(engine): new payload execution
* address PR comments
* rm unused dev deps
* add comment about lru
* remove par_iter
2022-12-29 02:36:56 -08:00
Tomás
76e76bb651
feat: add trusted nodes configuration ( #569 )
...
* Add preferred nodes to config
* Add preferred nodes on boot
* Add flag in config for trusted only mode
* Add preferred nodes configuration to config
* Fix comment
* Add preferred nodes to config file
* Rename preferred_nodes to trusted_nodes
* Change preferred to trusted
I renamed preferred_nodes to trusted_nodes in various places.
Seems I missed quite a bit of them.
* Pull trusted_only from config
* Rename DiscoveryConfig to PeersConfig
* Fix last commit
Now actually renamed DiscoveryConfig
* Rename trusted_only to connect_trusted_nodes_only
* Add helper function
* Use HashSet for boot_nodes and trusted_nodes
* Change trusted nodes functions in ConfigBuilder
* Move trusted peers from discv4 to network config
* Add trusted nodes to peers on Manager creation
* Use NodeRecord in trusted_nodes config
* Fix comment
* Move trusted_nodes config to PeersConfig
* Add trusted nodes directly to peers
* Move network_config to Config impl
* Move start_network to NetworkConfig impl
2022-12-28 21:48:11 +01:00
Matthias Seitz
d9d0ba14c4
docs: add outgoing request diagram ( #630 )
2022-12-28 20:36:53 +01:00