Commit Graph

1033 Commits

Author SHA1 Message Date
Jacek Sieka 4e7eaba67a
fix chronos v4 compat (#982) 2023-11-16 16:54:34 +01:00
diegomrsantos ebef85c9d7
Rate limit fixes (#965) 2023-11-09 14:20:28 +01:00
diegomrsantos 3fc1236659
Revert "Prevent concurrent IWANT of the same message (#943)" (#977) 2023-11-03 15:24:27 +01:00
Ludovic Chenut fc4e9a8bb8
Fix WS transport when the connection aborts (#967) 2023-10-23 17:12:20 +02:00
Tanguy 60f953629d
Remove ConnManager from Upgrade (#959) 2023-10-13 12:08:17 +00:00
diegomrsantos 459f6851e7
Add a flag if a peer should be disconnected when above rate limit (#954) 2023-10-05 14:51:27 +02:00
diegomrsantos 75871817ee
Split msgs in iwant response if bigger than limit (#944) 2023-10-02 11:39:28 +02:00
diegomrsantos 61929aed6c
Improve rdv advertise (#951)
Co-authored-by: Ludovic Chenut <ludovic@status.im>
2023-09-27 15:52:22 +02:00
diegomrsantos 56599f5b9d
GossipSub Traffic scoring (#920) 2023-09-22 16:45:08 +02:00
Tanguy b2eac7ecbd
GS: Relay messages to direct peers (#949) 2023-09-15 17:22:02 +02:00
Tanguy ff77d52851
IDontWant metrics (#946) 2023-09-06 16:05:59 +00:00
Jacek Sieka b76bac752f
avoid importing `ecnist` when not needed (#942) 2023-08-30 11:39:48 +02:00
diegomrsantos c6aa085e98
Prevent concurrent IWANT of the same message (#943) 2023-08-21 16:34:24 +02:00
Ludovic Chenut e03547ea3e
Perf protocol (#925) 2023-08-14 17:25:55 +02:00
diegomrsantos f80ce3133c
Bandwidth estimate as a parameter (#941) 2023-08-14 17:03:46 +02:00
Tanguy d6263bf751
nim-websock new version compatibility (#939) 2023-08-02 17:10:31 +02:00
Tanguy 7a369dd1bf
GossipSub: Limit flood publishing (#911)
Co-authored-by: Diego <diego@status.im>
2023-07-31 11:13:51 +02:00
Tanguy b784167805
GossipSub: IDontWant (#934) 2023-07-28 10:58:05 +02:00
Tanguy 440461b24b
GS: improve handleIHave (#922) 2023-07-11 12:17:50 +02:00
Jacek Sieka fab1340020
avoid a few zeroMem (#932) 2023-07-11 12:17:28 +02:00
Tanguy 1721f078c7
Fix crash on empty write (#930) 2023-07-10 13:52:08 +00:00
Ivan Folgueira Bande 74c402ed9d
wstransport.nim: avoid re-raising 'TransportOsError' to avoid stopping `switch.accept` (#929) 2023-07-07 11:32:20 +02:00
diegomrsantos c45f9705ab
Gossipsub scoring improvements (#909) 2023-07-04 00:27:45 +02:00
Etan Kissling 81b861b34e
avoid `ProveField` warning in `crypto.init` (#915) 2023-06-29 15:28:25 +02:00
diegomrsantos f85d0f75ea
Handling Opt[PeerId] in logging (#923) 2023-06-28 17:00:33 +02:00
Tanguy 66f9dc9167
Remove all `Result.get()`s & `Option` -> `Opt` (#902)
Co-authored-by: Ludovic Chenut <ludovic@status.im>
Co-authored-by: Diego <diego@status.im>
2023-06-28 16:44:58 +02:00
Tanguy 1c4d0832ce
Add GossipSub ping (#912) 2023-06-21 10:40:10 +02:00
Tanguy 224f92e172
Fix #916 regression causing accept loop lockup (#919) 2023-06-20 14:18:49 +00:00
Tanguy 5efa089196
TCP transport: handle getObservedAddr errors (#918) 2023-06-20 10:25:29 +02:00
Tanguy 49dfa84c6f
Transports: handle TransportAbortedError properly (#916) 2023-06-14 15:55:56 +00:00
Tanguy a65b7b028f
GossipSub: remove peer if we can't establish sendConn (#886) 2023-06-14 17:23:39 +02:00
diegomrsantos 67711478ce
Consider dns as public address (#913) 2023-06-13 17:58:41 +02:00
Tanguy c28d8bb353
WS Transport: handle 'tls/ws' (#914) 2023-06-12 15:45:53 +00:00
Vaclav Pavlin 3725f6a95b
chore: add basic metrics for rendezvous (#905) 2023-06-07 15:45:06 +02:00
diegomrsantos 3640b4dd89
Autonat and HP changes (#899) 2023-06-07 15:26:58 +02:00
Tanguy 32085ca88a
Allow to override TCP connection timeouts (#903) 2023-06-07 14:27:32 +02:00
Tanguy c76d1e18ef
Remove nim 1.2 support (#907) 2023-06-07 11:12:49 +00:00
diegomrsantos 67102873ba
Fail only if all addresses in PeerRecord are invalid (#898)
Fixes https://github.com/waku-org/nwaku/issues/1768
2023-05-31 08:59:50 +02:00
diegomrsantos d40d324160
fix missing import (#897) 2023-05-26 10:36:39 +02:00
diegomrsantos a677b06273
Try a direct connection only if there isn't one already (#891) 2023-05-25 15:48:22 +02:00
diegomrsantos 6050cdef7e
Refinement of Hole Punching Service (#892) 2023-05-25 15:47:00 +02:00
Tanguy 225accd11b
Less warnings (#813)
Co-authored-by: Diego <diego@status.im>
2023-05-18 10:24:17 +02:00
diegomrsantos 7d6bc545e0
Handle dns addrs in HP service (#890) 2023-05-16 14:59:02 +02:00
Tanguy a1eb53b181
Fix gossipsub dOut handling (#883) 2023-04-26 13:44:45 +02:00
Tanguy db629dca25
Fix network protocol metrics typo (#874) 2023-04-26 09:52:06 +02:00
diegomrsantos a5666789b0
Hole Punching (#806)
Co-authored-by: Tanguy <tanguy@status.im>
2023-04-18 12:50:21 +02:00
diegomrsantos b7726bf68f
Dcutr (#824)
Co-authored-by: Tanguy <tanguy@status.im>
2023-04-14 16:23:19 +02:00
diegomrsantos 0221affe98
Invalid MA is ignored (#881) 2023-04-14 12:05:32 +00:00
diegomrsantos 80cca0ecac
Does not allow an empty MA (#877) 2023-04-06 14:19:01 +00:00
diegomrsantos 0041ed4cf8
Transport hole punching (#873)
Co-authored-by: Tanguy <tanguy@status.im>
2023-04-06 15:23:35 +02:00
Tanguy 95e98e8c51
Fix traffic metrics (#879) 2023-04-03 12:37:23 +00:00
Tanguy 4aa615c44c
GossipSub: TimedEntry & shortAgent fixes (#858) 2023-04-03 11:05:01 +02:00
Tanguy 6b61ce8c91
GossipSub: Better IWANT handling (#875) 2023-04-03 10:56:20 +02:00
Alvaro Revuelta 53b060f8f0
Add getters for conns and streams (#878) 2023-03-31 00:16:39 +02:00
diegomrsantos af5299f26c
Create an ObservedAddrManager and add an AddressMapper in AutonatService and AutoRelayService (#871)
Co-authored-by: Tanguy <tanguy@status.im>
2023-03-24 15:42:49 +00:00
Tanguy bac754e2ad
Various gossipsub fixes (#827) 2023-03-21 17:13:25 +01:00
Tanguy 8d5ea43e2b
Upgrade flow refactoring (#807) 2023-03-08 12:30:19 +01:00
Jacek Sieka e573238705
reexport public types (#872) 2023-03-06 15:36:10 +00:00
diegomrsantos ddeb7b3bd4
Handle when peers ask each other at the same time (#865) 2023-02-21 17:49:41 +01:00
Tanguy 408dcf12bd
Fix backward compatibility of #822 (#862) 2023-02-15 17:18:29 +01:00
Tanguy f7f1e89669
TCP Transport: enable NO_DELAY for clients (#822) 2023-02-14 10:35:44 +01:00
diegomrsantos 444b837923
Autonat doesn't ask an incoming peer (#857) 2023-02-09 17:40:04 +01:00
diegomrsantos f89bd0c77c
Autonat dials dns addrs (#856) 2023-02-09 16:53:46 +01:00
diegomrsantos e68186373b
Dialing addrs concurrently in autonat (#855) 2023-02-07 18:51:17 +01:00
diegomrsantos 266c7b117a
Add anyCompleted proc (#853) 2023-02-07 18:50:42 +01:00
Ludovic Chenut 0e28d3b828
Add the peerId to the transport.dial (#842) 2023-01-31 12:46:10 +01:00
diegomrsantos 4ace70d53b
Connect is able to force a new connection (#849) 2023-01-25 11:19:03 +01:00
Tanguy ca19f8fdbf
Autonat service: handle connections limits (#846)
Co-authored-by: diegomrsantos <diego@status.im>
2023-01-24 17:04:42 +01:00
Tanguy 351bda2b56
Add expected connections to connmngr (#845)
Co-authored-by: diegomrsantos <diego@status.im>
2023-01-23 22:28:39 +00:00
Tanguy c11772c94e
Happy new year! (#847) 2023-01-20 15:47:40 +01:00
Ludovic Chenut 489c115132
Autorelay service (#819) 2023-01-17 16:18:38 +01:00
Tanguy 166c0d1c87
Fix PubSub subscribe on connection race condition (#809) 2023-01-10 13:33:14 +01:00
Etan Kissling ba451196e8
Avoid closing connection on channel EOF (#816) 2023-01-06 15:18:16 +01:00
diegomrsantos 9f658c151e
Autonat refactoring (#834) 2023-01-06 11:14:38 +01:00
diegomrsantos e304ad0f7e
Remove unnecessary async (#836) 2023-01-05 15:02:52 +01:00
diegomrsantos 9532bff983
Ignore unknown answers (#831)
Co-authored-by: Tanguy <tanguy@status.im>
2022-12-23 16:49:25 +01:00
diegomrsantos 676786b00e
Add Autonat timeout (#829)
Co-authored-by: Ludovic Chenut <ludovic@status.im>
2022-12-22 19:29:31 +00:00
diegomrsantos d521c57b82
Handle dial error correctly (#830) 2022-12-22 17:33:59 +01:00
Tanguy 63e1872516
Fix yamux simultaneous closing (#823) 2022-12-16 18:14:40 +01:00
diegomrsantos 67ef25fae0
Autonat service (#814)
Co-authored-by: Tanguy <tanguy@status.im>
2022-12-16 11:32:00 +00:00
Ludovic Chenut a17cad710c
Fix devel 32bits (#818) 2022-12-09 17:23:33 +01:00
Tanguy 3863a4cd21
Allow connect with known PeerId in MA (#817) 2022-12-08 16:11:55 +00:00
Tanguy 64cbbe1e0a
Limit number of streams per protocol per peer (#811) 2022-12-01 12:20:40 +01:00
diegomrsantos b3d9360dfc
Starting switch two times does not crash (#810) 2022-11-29 15:21:51 +00:00
Tanguy 1711c204ea
Fix: big messages in pubsub (#808) 2022-11-24 16:43:45 +00:00
Tanguy c43aacdc81
WS: add timeout to handleRequest (#796) 2022-11-22 10:44:08 +01:00
Alvaro Revuelta 192cac6254
Store missing pubkey in PeerStore [KeyBook] (#804) 2022-11-21 10:55:25 +01:00
Dmitriy Ryajov 8c2eca18dc
Allow passing max message size (#800)
Co-authored-by: Tanguy <tanguy@status.im>
2022-11-15 14:01:14 +01:00
diegomrsantos 6ab6ab48ef
Fix after gcsafe requirements change and other issues on devel (#795) 2022-11-05 02:04:05 +01:00
diegomrsantos d9305bda84
Add Tor Transport support (#765) 2022-11-04 19:20:23 +01:00
Lorenzo Delgado f95eda8bf6
Add libp2p label to chronicles log topics (#794) 2022-11-04 11:19:27 +01:00
Tanguy c9c2f6acdb
Tron example (#775)
Co-authored-by: lchenut <ludovic@status.im>
2022-10-30 08:49:02 +01:00
Tanguy c39c1cbf68
Fix daily CI (#790) 2022-10-29 23:26:44 +02:00
lchenut b4f96721af
Add a tutorial for the discovery manager (#787)
Co-authored-by: Tanguy <tanguy@status.im>
2022-10-29 10:12:12 +00:00
Tanguy dc13ff81d3
Revert "Temporarily remove failing test (#788)" & fix tests (#789)
Co-authored-by: Ludovic Chenut <ludovic@status.im>
2022-10-26 11:07:31 +02:00
Tanguy 4b105c6abd
GossipSub tutorial (#784) 2022-10-21 17:00:36 +02:00
Tanguy a086fcba72
Remove shallow copies (#782) 2022-10-20 14:52:02 +02:00
Tanguy 7b103e02f2
Allow public address mapping (#767) 2022-10-20 12:22:28 +02:00
lchenut 32233d36c8
Discovery interface (#783)
Co-authored-by: Tanguy <tanguy@status.im>
2022-10-03 22:00:00 +00:00
lchenut 1c99aca054
RendezVous Protocol (#751) 2022-09-30 10:41:04 +02:00