Simon Désaulniers
4bee62741f
data persistence for all data
2015-11-02 16:45:50 -05:00
Simon Désaulniers
c7298088d9
getNodesStats resets 0, shutdown method in Dht API
2015-11-02 16:45:50 -05:00
Adrien Béraud
184dc17aa8
value: improve serialization backward compatibility
2015-10-24 01:40:59 -04:00
Adrien Béraud
c2896afebf
dht: fix message parsing with msgpack 1.0
2015-10-17 02:56:28 -04:00
Adrien Béraud
b2689adfa7
dht: improve parsing robustness
...
Accept msgpack STR, ARRAY and BIN formats when
parsing binary data.
2015-10-16 17:18:12 -04:00
Adrien Béraud
5815fa01f7
dht: fix backward compatibility
...
Pack "token" as ARRAY, as it was with msgpack 1.0,
instead of BIN.
2015-10-16 17:18:12 -04:00
Adrien Béraud
42c32f98c8
dht: count incoming packets
2015-10-16 13:44:18 -04:00
Maitesin
08a5ce387b
Simplified a method.
2015-10-11 19:00:06 +01:00
Adrien Béraud
eea097961a
dht: add message counting
2015-10-06 11:58:26 -04:00
Adrien Béraud
80363a9343
dht: header cleanup
2015-09-30 23:05:34 -04:00
Adrien Béraud
ca8fb2b3ec
dht: revert to 15-45 minutes secret rotation
2015-09-01 22:47:25 +02:00
Adrien Béraud
461dfb29f3
dht: expire search with only candidates
2015-09-01 18:10:30 +02:00
Adrien Beraud
6e6882ca7a
dht: cleanup
2015-09-01 18:10:00 +02:00
Adrien Beraud
0ea48ed1de
dht: remove custom memmem
2015-09-01 17:42:07 +02:00
Adrien Béraud
2e38a307f9
log: unify format
2015-09-01 17:42:07 +02:00
Adrien Béraud
4096e7ff03
dht: bootstrap local id on first connection
2015-09-01 16:46:42 +02:00
Adrien Béraud
98908f7284
dht: add version to UA
2015-09-01 16:44:21 +02:00
Adrien Béraud
ac08beb582
dht: search own id
2015-08-24 16:38:40 +02:00
Adrien Béraud
fe3ded9d0f
dht: my_v cleanup
2015-08-23 17:36:24 +02:00
Adrien Béraud
564467b5b3
dht: properly parse error messages
2015-08-23 17:29:15 +02:00
Adrien Béraud
790c32048c
ValueSerializable: refactoring
2015-08-18 10:57:46 -04:00
Adrien Béraud
70dfb4bbcf
use msgpack for dht protocol and value serialization
2015-08-13 11:28:29 -04:00
Adrien Béraud
873fbd3d8e
dht: add public address reporting
2015-08-06 15:41:16 -04:00
Adrien Béraud
15f3dee293
introduce configuration structure
2015-08-05 21:55:20 -04:00
Adrien Béraud
c10494557c
dht: fix done callback sometimes called more than once
2015-07-29 16:58:15 -04:00
Adrien Béraud
f13b28fed4
dht: add connectivityChanged()
2015-07-28 16:26:35 -04:00
Adrien Béraud
3cbae5526a
dht: add bootstap mode
...
The bootstrap mode is used only for bootstrap nodes.
A bootstrap node will maintain a tree of the whole dht
up to 6 bits deep (8*2^6 = 4096 nodes).
This allows to provide better initial answers to new nodes.
Bootstrap nodes act otherwise normally.
2015-07-27 14:47:58 -04:00
Adrien Béraud
8287416164
dht: add getNodes, isExpired with no time argument
2015-07-27 14:33:47 -04:00
Adrien Béraud
ced114eba4
dht: combine counting of get and announce/listen requests
2015-07-27 14:33:39 -04:00
Adrien Béraud
433f690bed
dht: don't make new nodes candidates
2015-07-27 14:33:39 -04:00
Adrien Béraud
5323ebd6b1
dht: use a listen keep-alive of 30 seconds
2015-07-27 14:33:39 -04:00
Adrien Béraud
a2eed7e7af
dht: limit total node number per search
2015-07-24 01:02:35 -04:00
Adrien Béraud
178eeae94f
dht: log cleanup
2015-07-24 01:02:35 -04:00
Adrien Béraud
d95b11aefa
dht:use appropriate node array size
2015-07-23 11:06:16 -04:00
Adrien Béraud
a090baba08
doc update
2015-07-23 11:06:16 -04:00
Adrien Béraud
ae178c4d25
fix some compiler warnings
2015-07-23 11:06:04 -04:00
Adrien Béraud
d2ed99742e
zero-initialise sockaddr structures
2015-07-23 11:05:50 -04:00
Adrien Béraud
3d2a74be49
python: add PyNode
2015-07-13 13:24:55 -04:00
Adrien Béraud
e2004d69cb
prevent sending listen or announce to unsynched nodes
2015-07-11 18:38:11 -04:00
Adrien Béraud
7a3a95bf3e
dht: use time_point::min() as invalid time_point value
2015-07-11 18:38:11 -04:00
Adrien Béraud
5bec9f6764
log cleanup
2015-07-10 23:31:09 -04:00
Adrien Béraud
d2c57b867d
update copyright headers
2015-07-10 23:25:43 -04:00
Adrien Béraud
d0f4f57116
dht: fix typo, warnings
2015-07-04 23:56:16 -04:00
Adrien Béraud
f05ce4865d
dht: round 2 of search performance optimisations
...
This patch makes search nodes candidates when they failed to reply
to a first message. This allows the search operations to go forward,
while preserving the node opportunity to reply.
2015-07-02 02:59:28 -04:00
Adrien Béraud
f1ff9a1a87
dht: optimisations in search behavior
...
A candidate flag is added to new search nodes when a search
is already synced.
The flag is waived when a token is retreived from the node.
Candidate nodes behave normally but are not considered
to evaluate the search state (synced etc.).
The behavior of searches if also changed so GET_NODES
updates are now done the same way, no matter if the search
is currently synced. This allow candidate nodes to behave
normally and makes token update asynchronous, causing
less frequent performance hickups.
2015-07-02 02:59:28 -04:00
Adrien Béraud
04623d09f8
dht: simplify get search node selection
2015-07-02 02:59:28 -04:00
Adrien Béraud
a63fc649b6
refactoring: move Node out of Dht
2015-07-02 02:59:01 -04:00
Adrien Béraud
680186976f
dht: add node list to done callback
2015-06-25 15:56:03 -04:00
Adrien Béraud
40f0488203
dht: address family can be omited in isRunning
2015-06-17 22:34:57 -04:00
cberaud
41406833a8
add crypto::random_device
2015-05-15 19:57:04 +05:30