Commit Graph

86 Commits

Author SHA1 Message Date
Matthias Seitz
10b97b29af chore: downgrade error and warn traces to debug (#2541) 2023-05-03 15:53:05 +02:00
Roman Krasiuk
7f764028d2 feat(cli): consensus engine events (#2473) 2023-05-01 17:46:03 +02:00
Matthias Seitz
433ecdcaec chore: track client version in tx peer (#2452) 2023-04-28 11:53:42 -07:00
mempirate
93d3bd9dcd feat(net): fix peer backoffs to not interfere with reputation (#2422) 2023-04-27 15:53:12 +02:00
Matthias Seitz
addd8d473c chore: improve incoming connection traces (#2393) 2023-04-25 16:51:41 +02:00
mempirate
21ebfee461 feat(p2p): add reputation management features (#2389) 2023-04-25 14:18:53 +02:00
mempirate
c6e7ea513f feat(net): add client_version to session established events (#2379) 2023-04-25 10:45:02 +02:00
mempirate
667af585e7 feat(net): add remote_addr to session established event (#2373) 2023-04-24 13:16:47 -04:00
Aditya Pandey
6f15f844a5 Removing reth network api dependency from rpc types (#2281)
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de>
2023-04-17 14:03:06 +02:00
Matthias Seitz
3779a225fb fix: remove peers after incoming connection closed (#2245) 2023-04-14 11:42:49 -04:00
jawilk
643ee5226c chore(net): improve network service launch error diagnostic (#2068) 2023-04-01 08:20:27 +02:00
Dan Cline
790541a710 feat: add peer disconnect metrics (#1956) 2023-03-23 21:46:55 -07:00
Dan Cline
7ac06cd29f feat: use chain specific bootnodes (#1826) 2023-03-17 19:28:00 -04:00
Matthias Seitz
4e66cc7ea7 chore(net): add negotiated eth version to events (#1478) 2023-02-21 13:26:17 +01:00
Matthias Seitz
7c9b212b4a chore: relax Arc requirement for provider (#1429) 2023-02-17 14:40:20 +01:00
Matthias Seitz
760f76ab86 fix(net): set tracked peers metric by value (#1420) 2023-02-16 13:27:40 -08:00
Matthias Seitz
cd1afccf52 revert: "Revert "cli: integrate TaskExecutor" (#1329)" (#1336) 2023-02-14 15:50:19 +01:00
Georgios Konstantopoulos
48d121dc54 Revert "cli: integrate TaskExecutor" (#1329) 2023-02-13 19:28:19 -08:00
Matthias Seitz
5997103078 cli: integrate TaskExecutor (#1314) 2023-02-13 14:24:18 -08:00
Bjerg
02a6aec3fb feat: support time-based forking (#1128) 2023-02-06 12:55:41 -08:00
Matthias Seitz
75692bc5f3 perf(net): add manual yield point (#1155) 2023-02-04 12:56:25 -08:00
Mariano A. Nicolini
dab1f4f497 feat(net): add shutdown network signal (#1011)
Co-authored-by: lambdaclass-user <github@lambdaclass.com>
2023-02-04 12:28:13 -08:00
Matthias Seitz
ae771d291d perf(net): add protocol breach request timeout (#1099) 2023-01-31 15:20:44 -08:00
Bjerg
87306f2892 ci: ensure docs build (#1073)
Co-authored-by: xqft <estefano.bargas@fing.edu.uy>
Co-authored-by: lambdaclass-user <github@lambdaclass.com>
2023-01-27 18:49:22 +01:00
Aurélien
0666e29427 feat: move ReputationChangeKind to network-api (#1035) 2023-01-25 13:17:26 +01:00
Aurélien
e493720f64 feat: integrate chain_id and protocol_version in NetworkInfo (#1029) 2023-01-25 13:08:40 +01:00
Tomás
2ae88b01df test: fix failing doctests (#1024)
Co-authored-by: lambdaclass-user <github@lambdaclass.com>
2023-01-25 04:04:48 +01:00
Aurélien
1c93b2c528 feat: refactoring get_status() to return NetworkStatus (#997) 2023-01-24 14:38:21 +01:00
Matthias Seitz
e4bf94c3cb chore(net): reduce log level for outgoing conn errors (#941) 2023-01-20 11:24:06 -05:00
Enrique Ortiz
cfef666886 Network: Extend NetworkInfo trait with NetworkStatus (#923) 2023-01-19 14:43:51 -05: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
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
Matthias Seitz
7767b216bc feat: integrate DNS discovery service (#832) 2023-01-13 10:34:13 +01:00
Matthias Seitz
55bc2591e6 fix(net): handle outgoing connection error correctly (#798) 2023-01-10 21:30:17 +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
Bjerg
ee8b0efed6 fix: apply correct reputation dmg on bad msg (#739) 2023-01-05 23:20:34 +01: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
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
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
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
Andrew Kirillov
d4d8a8c882 Moves code walkthrough book chapters to docs (#629)
* replaced template blocks with code blocks in stages chapter

* replaced template blocks with code blocks in network chapter

* moved book sections to docs

* fix indentation in recover_signer codeblock

* remove unnecessary TODO comment in network.md
2022-12-28 10:24:39 +01:00
Andrew Kirillov
a51fa4fd63 docs(book): start book chapter for network crate (#445)
* WIP FOR DRAFT PR

* WIP draft, walking through usage in pipeline

* diving deeper into instantiation of NetworkHandle & FetchClient

* WIP network management task & eth requests task done (ish)

* address pr comments: networkmanager as standalone task, networkconfig as main entrypoint for setup

* complete draft of the  crate docs

* restructured, starts w/ expl of

* added more snippets/anchors

* using ignore flag on code blocks, brief explanation of  struct

* typos addressed
2022-12-27 14:53:15 -08:00
Sanket Shanbhag
73e12341c4 feat(net): Make PeerManager emit peerevents for admin rpc (#602)
* Make PeerManager emit peerevents for admin rpc

* Fix tests to include new peer events
2022-12-25 10:00:10 +01:00
Matthias Seitz
5affa67805 refactor(net): unify closed incoming session handling (#600) 2022-12-24 12:38:21 +01:00
Sanket Shanbhag
43008b7b07 feat: Add PeerEvent to NetworkEvent enum (#574)
* Add peerAdded and peerRemoved events to NetworkEvent enum

* Remove unnecessary todo macros
2022-12-24 10:25:09 +01:00
Matthias Seitz
4e677b5993 refactor(net): unify dropped connection handling (#595) 2022-12-23 21:46:44 +01:00
Matthias Seitz
f5c9064b44 test(net): add e2e test for already connected (#538) 2022-12-20 18:02:16 +01:00
Matthias Seitz
7a13cf6688 feat(net): add ForkTransition type (#542) 2022-12-20 18:01:54 +01:00
Matthias Seitz
3db7455eca fix(net): fix disconnect edge case on remove from discovery (#479)
* fix(net): fix disconnect edge case on remove from discovery

* test: add disconnect test
2022-12-19 22:27:01 +01:00