Matthias Seitz
9dbf280bfb
docs(net): add bird's eye view docs ( #456 )
2022-12-15 11:36:58 +02:00
Roman Krasiuk
22dc50e5f6
feat(sync): download peer penalization ( #427 )
...
* feat(sync): download peer penalization
* peer penalization
* add tracing on penalization
* add trace on request
* rename consensus back
* clippy
* fix tests
* nit: download result
* nit: fix comment
* rename penalize() to report_bad_message() and move DownloadError
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com >
2022-12-15 10:42:18 +02:00
Matthias Seitz
f2707d32b5
fix(net): kick useless peers ( #451 )
2022-12-15 10:04:22 +02:00
mempirate
c23c65fc3b
feat(net): draft for sending status updates through NetworkHandle ( #436 )
...
* feat(net): draft for sending status updates through `NetworkHandle`
* feat(net): draft for sending status updates through `NetworkHandle`
* fix(net): remove unused import
* feat(net): implement getters for status update sender half
* docs(net): document methods
* chore: cargo fmt
* feat(net): move status updating logic to NetworkManager and NetworkHandle
* feat(net): move status updating logic to NetworkManager and NetworkHandle
* fix(net): fix headers stage testing
* fix: derive default
* fix: remove StatusUpdate struct
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de >
2022-12-15 08:59:28 +01:00
Matthias Seitz
43f6bb9127
feat(net): integrate discovery banlist ( #442 )
...
* feat(net): integrate discovery banlist
* fix typos
2022-12-14 19:47:11 +02:00
Georgios Konstantopoulos
83c89a85e9
Add additional logs for P2P debugging ( #434 )
...
* feat: make logs on network manager more granular
* feat: log error on session disconnect
* temp: manual peer
* temp: manual peer
* feat(linear-dl): make BadResponse error more descriptive
* feat(linear-dl): log retries on future
* chore: add target
* chore: add target
* chore: remove unused var
* chore: remove manual peer override
Co-authored-by: Oliver Nordbjerg <hi@notbjerg.me >
2022-12-14 13:53:49 +02:00
Matthias Seitz
9946f232a7
chore(net): improve session error traces ( #435 )
2022-12-14 13:48:28 +02:00
Bjerg
601bdc5022
feat: wire components together in reth node ( #416 )
...
* feat: naively wire up components
* chore: clippy lints
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com >
2022-12-14 12:51:56 +02:00
Matthias Seitz
12e7f0acbc
feat(net): make Status and Hello configurable ( #431 )
...
* feat(net): make Status and Hello configurable
* set port
2022-12-14 11:39:09 +01:00
Matthias Seitz
500f98c9a3
fix(net): use adjust correct counters ( #429 )
2022-12-14 10:55:26 +02:00
Matthias Seitz
24bc633bbd
feat(net): add NetworkBuilder type ( #421 )
2022-12-13 21:38:12 +01:00
Dan Cline
2537f14567
feat(network): add geth connection test ( #352 )
...
* wip: geth connection test
* set port until disabling discovery sets port
* ignore test until it is complete
* check that first geth event is SessionEstablished
* fix endpoint string for the geth instance
* force an incoming connection
* we should also test establishing a session on an outgoing connections
* use NetworkEventStream helper in connect test
* create outgoing test
* make geth tests use different ports and datadirs
* update geth options
* cargo fmt
* s/geth_socket/reth_socket
* cargo fmt
* fix disc port collisions and re-add incoming test
* should add test utilities for getting unused disc/p2p ports
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de >
2022-12-13 14:29:44 -05:00
Matthias Seitz
02be8121e0
fix(disc): also emit discovered node when buckets are full ( #414 )
2022-12-13 19:53:53 +02:00
Matthias Seitz
8e5e7ff5b6
fix(net): improve dropped connection handling ( #412 )
2022-12-13 19:26:48 +02:00
Roman Krasiuk
5057e8ec0a
feat(p2p): refactor downloaders and add peer id to the result ( #410 )
...
* feat(p2p): refactor downloaders and add peer id to the result
* rm unused import
* fix tests
* clean up deps
* Update crates/interfaces/src/p2p/error.rs
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de >
* add split fn
Co-authored-by: Matthias Seitz <matthias.seitz@outlook.de >
2022-12-13 17:14:45 +01:00
Will Smith
6aa2daee0f
fix(net): outgoing requsts ( #398 )
...
* remove inpossible case
* fix(net): outgoing requests stopping
2022-12-13 08:25:41 +01:00
mempirate
452a81e0d3
feat(net): expose message module ( #390 )
...
* feat(net): expose message module
* feat(net): expose `PeerRequest`, allow missing docs
2022-12-12 18:34:54 +02:00
Will Smith
db7608e3b5
feat(net): expose config settings ( #386 )
...
* expose transaction origin
* feat(net): fill peer config builder
2022-12-12 18:29:20 +02:00
Will Smith
fecdc3f0f2
feat(net): add peer_id/ip blacklist ( #366 )
2022-12-11 02:05:07 -08:00
Matthias Seitz
c117d4b44f
docs(net): add example docs and fix links ( #375 )
2022-12-10 09:19:25 -08:00
Matthias Seitz
9eebd141b7
chore(txpool): update TransactionPool trait bounds ( #376 )
2022-12-10 09:16:26 -08:00
rakita
e014eaad33
feat(db): Refactor storage libraries ( #371 )
2022-12-09 23:14:07 -08:00
Matthias Seitz
4318a54f59
feat(net): integrate TaskExecutor ( #369 )
2022-12-09 09:47:18 -08:00
Matthias Seitz
b0149f0b9f
fix(net): prevent bad loop if no peers available ( #359 )
...
* fix(net): prevent bad loop if no peers available
* test: add poll fetcher test
2022-12-09 12:39:08 +01:00
Matthias Seitz
2f73345696
misc(net): unify naming ( #358 )
2022-12-08 09:12:58 -08:00
Georgios Konstantopoulos
4d718bbf33
s/foundry-rs/paradigmxyz
2022-12-07 00:00:45 -08:00
Matthias Seitz
f65969e90f
perf(net): exclude bootnodes from update stream ( #319 )
2022-12-06 18:02:04 -08:00
Matthias Seitz
5300c83a50
feat(net): send full transactions to fraction of all peers ( #272 )
...
* refactor(net): use shared objects on a per peer basis
* feat(net): send full transactions to fraction of all peers
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com >
2022-12-02 04:21:23 -08:00
Matthias Seitz
04105ec82b
test: add mainnet connection test ( #306 )
2022-12-01 17:59:52 +01:00
Matthias Seitz
a0c35f1f48
refactor: replace reverse with HeadersDirection ( #305 )
2022-12-01 17:59:33 +01:00
Matthias Seitz
3355b0c605
test(net): add e2e request body test ( #304 )
...
* test(net): add e2e request body test
* test(net): add e2e request header test
2022-12-01 15:35:14 +01:00
Matthias Seitz
480097a7ca
feat(net): add eth request handler ( #293 )
...
* feat(net): add block request manager
* refactor: change ommers type to Header
* feat: impl handlers
* rename to EthRequestHandler
* impl checks
* fix: skip as step
* chore: rustfmt
2022-11-30 21:19:50 +01:00
Matthias Seitz
7879389059
chore(net): deny unused and cleanup ( #289 )
2022-11-29 20:57:40 +01:00
Matthias Seitz
97ea20e9d5
feat(net): add swarm mermaid diagram ( #288 )
2022-11-29 20:15:17 +01:00
Matthias Seitz
e53ed8ffc2
refactor(net): use shared objects on a per peer basis ( #270 )
2022-11-29 11:43:45 +01:00
Matthias Seitz
b5300aafec
feat(net): add request timeout ( #273 )
2022-11-28 14:41:39 -08:00
Matthias Seitz
0e436ae543
feat(net): add missing report on bad response ( #271 )
2022-11-27 23:33:04 -08:00
Matthias Seitz
b02a5c4bbf
perf(net): import loop order in transactions manager ( #269 )
2022-11-26 10:44:30 -08:00
Matthias Seitz
7db61eeadb
misc(net): discovery docs and renames ( #268 )
2022-11-26 14:46:57 +01:00
Matthias Seitz
a744676302
misc(net): add peers commands ( #267 )
2022-11-26 14:46:49 +01:00
Matthias Seitz
fd840e1c66
refactor: bodies client API ( #257 )
...
* refactor: bodies client API
* chore: fix errors
2022-11-26 10:04:42 +01:00
Matthias Seitz
6232505b94
fix(net): substract from correct var ( #262 )
2022-11-26 00:35:51 +01:00
Matthias Seitz
b6d9fe87b9
feat(net): propagate new transactions ( #256 )
2022-11-25 22:13:20 +01:00
Matthias Seitz
37809ce774
feat(net): add session limits ( #253 )
2022-11-25 18:56:49 +01:00
Matthias Seitz
fb2861f112
feat(net): integrate HeadersClient ( #251 )
...
* refactor: headers client
* chore: rustfmt
* chore(clippy): make clippy happy
* feat(net): integrate HeadersClient
* fix: parse td as U256 with from_little_endian
* conflicts
Co-authored-by: Georgios Konstantopoulos <me@gakonst.com >
2022-11-25 14:26:43 +01:00
Matthias Seitz
2e3c220104
fix: fix flaky test ( #250 )
2022-11-24 13:26:22 -08:00
Matthias Seitz
f4dbeddc97
refactor: rename FetchClient and move to submodule ( #245 )
...
* refactor: rename FetchClient and move to submodule
* chore(clippy): make clippy happy
2022-11-24 11:43:05 +01:00
Matthias Seitz
8966daad9d
feat(net): reputation system and peer reporting ( #239 )
...
* refactor: move to module
* feat(net): reputation system and peer reporting
* be specific in test
* use saturating sub
2022-11-24 10:14:50 +01:00
Matthias Seitz
0f45f16455
test(net): add Testnet implementation for testing ( #232 )
...
* test(net): add Testnet implementation for testing
* test(net): add testnet type and test
2022-11-22 19:33:01 -05:00
Matthias Seitz
46e4ad9744
test(net): add active session tests ( #230 )
...
* test(net): add active session tests
* more tests
2022-11-22 00:22:43 -05:00