Csaba Kiraly
a92fdcd050
simulation: log simTime
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:54:04 +02:00
Csaba Kiraly
b5c0ae3c27
simulation: increase MaxNodesPerMessage to 6
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:54:04 +02:00
Csaba Kiraly
b0b741429f
simulation: allow replacing bootstrap node
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:54:04 +02:00
Csaba Kiraly
fc2e2a031d
trace log packet on receive
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:53:00 +02:00
Csaba Kiraly
0f802e3b23
just a comment
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:53:00 +02:00
Csaba Kiraly
622164ccf8
more trace and debug messages
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:53:00 +02:00
Csaba Kiraly
84ffef9787
remove unused sendRequest call
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:53:00 +02:00
Csaba Kiraly
ee8540d6fb
queue messages during handshake and send later
...
If a handshake was already in progress, messages were dropped.
Instead of this, it is better to queue these and send as soon
as the handshake is finished and thus the encryption key is known.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:52:59 +02:00
Csaba Kiraly
a8670ebbe8
encodeMessagePacket: expose haskey
...
encodeMessagePacket checks for session and behaves differently
based on that. Exposing this difference in behavior.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:52:59 +02:00
Csaba Kiraly
5af9a06258
introduce ProtocolBehavior property
...
Start implementing non-honest strategies.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:52:59 +02:00
Csaba Kiraly
5ae5295f26
secure transport: allow more sessions
...
Sessions were limited to 256 for some reason.
For large scale operation it makes sense to allow more
open sessions (symmetric key sessions).
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:52:59 +02:00
Csaba Kiraly
60f079e8b6
trace log: do not log binary encoding
...
Even at trace level this feels too much.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:52:59 +02:00
Csaba Kiraly
0d20e371b1
use 127.0.0.1 for these tests
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:52:59 +02:00
Csaba Kiraly
589a878985
remove lookupWorkerFast duplicate code
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:52:58 +02:00
Csaba Kiraly
a540568e77
introduce FindNodeFastResultLimit
...
We do not need that many responses with FindNodeFast, since the
reposes can be ordered by distance
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:52:58 +02:00
Csaba Kiraly
742d0ea0ce
reduce default response timeout
...
We really don't need this to be 4 seconds.
Later we should tune it better based on measurements
or estimates,
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:52:58 +02:00
Csaba Kiraly
e5512754f8
fix returning too many nodes when FindNodeResultLimit!=BUCKET_SIZE
...
Code assumed these two values to be the same, resulting in
reception errors.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:46:32 +02:00
Csaba Kiraly
106ae65e32
add debug on Handshake timeour
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:46:32 +02:00
Csaba Kiraly
a4cea57165
add logging helper for Protocol
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:46:32 +02:00
Csaba Kiraly
0d9118404e
addValue: use fast lookup
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:45:57 +02:00
Csaba Kiraly
5bc4bbffdf
fix ValueReplication counter
...
Number of replicas was ValueReplication+1 before.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:45:31 +02:00
Csaba Kiraly
d7de86060c
implement findValue
...
retrieve a value from the DHT
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:45:20 +02:00
Csaba Kiraly
bca26eb059
add ValueGetFrom count for naive getValue
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:43:37 +02:00
Csaba Kiraly
7c7cd29df1
add ValueReplication cound for addValue
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:43:30 +02:00
Csaba Kiraly
cef43612ea
logging: GetValue error should be debug
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-09-05 08:43:18 +02:00
Csaba Kiraly
fc7d04e3bb
add DHT storage (addValue/getValue) functionality
...
this is a minimal implementation, with lots of
work still needed.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-07-11 10:52:03 +02:00
Csaba Kiraly
13e48b8836
encoding: introducing type cipher=aes128
...
Introducing the cipher type to ease changing cipher.
No functional change
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-07-11 00:36:46 +02:00
Csaba Kiraly
5c62d100e4
dht: waitMessage: expose timeout as parameter, keeping default
...
defults to ResponseTimeout as before
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-07-11 00:36:46 +02:00
Csaba Kiraly
9f4cec415c
remove some debug output
2023-07-11 00:36:46 +02:00
Csaba Kiraly
52530b7569
fixup: move sendRequest forward
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-07-11 00:36:46 +02:00
Csaba Kiraly
94a7d01d7b
introduce waitResponse wrapper
...
initialize wait for response before sending request.
This is needed in cases where the response arrives before
moving to the next instruction, such as a directly connected
test.
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-07-11 00:36:46 +02:00
Csaba Kiraly
9cd6af5afd
change revalidateLoop to use [RevalidateMax/2, RevalidateMax]
...
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-07-11 00:36:46 +02:00
Csaba Kiraly
c1f39a89c9
improve tracing of message exchange
...
run e.g. as
```
nim c -r -d:debug -d:chronicles_enabled=on -d:chronicles_log_level=TRACE -d:chronicles_sinks=textlines[nocolors,stdout] tests/dht/test_providers.nim >err
```
Signed-off-by: Csaba Kiraly <csaba.kiraly@gmail.com>
2023-07-11 00:36:45 +02:00
Csaba Kiraly
f8523ae629
log routing table size periodically
2023-07-11 00:36:45 +02:00
Dmitriy Ryajov
4375b92298
use datastore has ( #56 )
2022-12-02 16:47:16 -06:00
Dmitriy Ryajov
e4e7a3e11f
track nim-libp2p's unstable branch and nim-bearssl's master branch ( #51 )
...
* track nim-libp2p's unstable branch and nim-bearssl's master branch
refactor accordingly: mainly switching from `import bearssl` to
`import bearssl/rand`, `BrHmacDrbgContext` to `HmacDrbgContext`, and related
changes
* fix ambiguous identifier
* nim 1.4 is deprecated
Co-authored-by: Michael Bradley, Jr <michaelsbradleyjr@gmail.com>
2022-11-02 10:21:05 -06:00
Dmitriy Ryajov
d6d255b4b5
Cleanups ( #55 )
...
* limit query to batchSize
* allow initializing node from ip and port
* misc cleanups
2022-10-31 22:41:33 -06:00
Dmitriy Ryajov
08928e57d8
Remove local providers ( #53 )
...
* refactor to use batch deletes
* add ability to remove local providers
2022-10-03 15:14:47 -06:00
Dmitriy Ryajov
4b9fa0356e
Adding maintenance routines to cleanup expired and orphaned records ( #52 )
...
* add maintenance routines and split out cache
* start provider manager
* export provider manager
* add maintenance tests
* start is now async
2022-10-01 10:05:03 -06:00
Dmitriy Ryajov
69ae7c2012
Persist providers ( #49 )
...
* initial providers manager implementation
* misc license update
* spelling
* rename provider tests
* add provider tests
* reexport provider manager
* only update provider record if it changed
* small bug in getProvByKey
* pass providers to both constructors
* fix records retrieval
* disable cache during tests
* avoid redefining data
* adding back tests with cache
* use `.errorOption`
* proper err msg unpacking
2022-09-29 17:49:55 -06:00
Dmitriy Ryajov
9dfa86767d
Revert "track nim-libp2p's unstable branch and nim-bearssl's master branch"
...
This reverts commit c480fb573242ab13fab57446aeece90eaabbe104.
2022-09-23 15:59:31 -06:00
Michael Bradley, Jr
c480fb5732
track nim-libp2p's unstable branch and nim-bearssl's master branch
...
refactor accordingly: mainly switching from `import bearssl` to
`import bearssl/rand`, `BrHmacDrbgContext` to `HmacDrbgContext`, and related
changes
2022-09-19 20:05:34 -05:00
Dmitriy Ryajov
7c259731a4
add formating for SignedPeerRecord
...
needs to move to libp2
2022-09-13 12:01:36 -06:00
Dmitriy Ryajov
f5afe784c5
prevent npe when table is 0
2022-09-12 21:08:55 -06:00
Dmitriy Ryajov
f84bc647ce
don't touch the cache when checking for id
2022-09-12 21:08:26 -06:00
Dmitriy Ryajov
23e20a2f1c
bad merge
2022-09-12 18:41:44 -06:00
Dmitriy Ryajov
fca255b2f7
use pure enums
2022-09-12 18:06:48 -06:00
Dmitriy Ryajov
c646b9c2b9
providers LRU - avoid unchecked growth
2022-09-12 18:06:46 -06:00
Dmitriy Ryajov
2d93fa9e69
fix updateRecord
...
- support incrementing seqNo
- support updating with new record
2022-09-12 17:13:34 -06:00
Tanguy
d90f0a03b9
Fixes for json logs
2022-09-12 17:13:33 -06:00