Commit Graph

25 Commits

Author SHA1 Message Date
Kleissner
2937154c8d Add filters for low-level packet and high-level message interception for debugging purposes. Close #4 2021-07-31 17:29:14 +02:00
Kleissner
e5d09e7086 New filter DHTSearchStatus for debug purposes.
Various minor improvements and fixes.
New high-level FindNode and AsyncSearch functions.
2021-07-28 01:33:33 +02:00
Kleissner
96ee35ebf9 Finalize filter for log messages. Close #26 2021-06-29 00:48:22 +02:00
Kleissner
1a44b9c5e7 Include both IPv4/IPv6 addresses in peer records in Response message. This makes peer list sharing more efficient and speeds up discovery. Close #24 2021-05-21 02:33:32 +02:00
Kleissner
82033e124a Finalize Traverse message implementation. Close #23
Remove createVirtualAnnouncement function, no longer needed.
2021-05-19 14:56:39 +02:00
Kleissner
d148fddd1e Simplify and streamline send code. Close #21 2021-05-19 03:40:26 +02:00
Kleissner
9eb1127b40 Alpha 2 release. Includes Traverse message according to latest Whitepaper 0.8.
Send and traverse code needs some cleanup.
2021-05-11 10:33:06 +02:00
Kleissner
f084edc316 New function record.IsBadQuality to make sure bad peers returned in the Response message are not considered.
Improved remote peer NAT detection. Placeholder for sending the Traverse message.
Fix in handling incoming FIND_PEER request. Do not return self as closest node.
Do not share peers for which the internal port is not known.
2021-05-09 00:49:34 +02:00
Kleissner
f70875a345 Use PortReportedExternal when available. 2021-05-08 17:25:20 +02:00
Kleissner
948fa2be91 Add placeholder for future code 2021-05-03 11:00:17 +02:00
Kleissner
250f60a4b6 New flag: IsRootPeer. Rearranged initialization priority (initNetwork should always be last). 2021-04-25 05:34:00 +02:00
Kleissner
f13695709f Kademlia: Initial bucket refresh implementation. This might be improved down the road. 2021-04-25 04:22:10 +02:00
Kleissner
ec809029d8 Sequences add pointer to high-level data. Proper mapping of sequences to information requests. 2021-04-21 03:27:03 +02:00
Kleissner
8269219cf0 Fix sendAllNetworks: New sequence number per packet 2021-04-20 07:18:46 +02:00
Kleissner
62c4b370fc New announcementPacket structure to report back values up the chain 2021-04-20 05:25:56 +02:00
Kleissner
b2db81143e Proper message sequence implementation for Response and Pong messages. Record round-trip time at connection level! Reply timeout. Close #13 #5
Fixes.
2021-04-19 05:18:07 +02:00
Kleissner
703e40c947 Add Sequence field #13 to packet header according to latest Whitepaper 0.7.1
The field is yet to be used.
2021-04-18 05:22:19 +02:00
Kleissner
e69589c5c8 Kademlia: Use information requests from updated DHT library. More testing & fixes upcoming. 2021-04-09 16:36:35 +02:00
Kleissner
caf3a4f11c initSeedList skip if self 2021-03-16 19:59:54 +01:00
Kleissner
81fd372b0a contactArbitraryPeer only if not already in peer list.
Remove nodes from Kademlia structure when appropriate.
2021-03-16 15:55:13 +01:00
Kleissner
3080119fc1 Initial working Kademlia network - peer list exchange is working!
Using the announcement and response messages to exchange peer lists. Fixes in encoding.
Add arbitrary Info structure to DHT Lite/Node.
2021-03-15 22:25:05 +01:00
Kleissner
323f379ee7 Message encoding of announcement and response messages.
More changes coming.
Rename of organization to Peernet s.r.o.
InformationRequest proper termination signal.
2021-03-14 04:30:57 +01:00
Kleissner
213c724016 Detect network changes, initial code. Actions to be developed. #2 2021-03-02 00:28:03 +01:00
Kleissner
ea05439262 No code changes; export some functions/struct. 2021-02-26 14:45:16 +01:00
Kleissner
fec65603f5 Initial commit. 2021-02-26 05:57:42 +01:00