Commit Graph

150 Commits

Author SHA1 Message Date
parazyd
55ee919906 net: Perform full p2p code cleanup and improve certain pieces.
Notable changes:

* Rewritten transport protocols into Dialer and Listener (Nym is TODO)

  This simplifies using the transports a lot, as can be seen for example
  in src/rpc, and generally around the p2p library. It also defines features
  for each transport (all of which are enabled by default). We drop the
  socks client for Tor and Nym and use first-class support with the Arti Tor
  library, and nym-sphinx/nym-websockets (to be used with nym-client).

* Outbound session healing

  The outbound session will now poll and try to fill all the requested
  slots more efficiently, and if needed, will activate peer discovery to
  find more peers if we can't connect to any known ones. Also if we're
  unable to connect to any, we shall drop them from our set.

  Additionally, transport mixing is enabled by default, so when we're
  allowing transport mixing, and we use Tor, we will also be able to connect
  to other transports that Tor can connect to (e.g. tcp://).

* Unix socket transport dropped

  We haven't been using this, and it seems we're not going down this path,
  so the code has been obsoleted and removed.

* TLS session verification

  We fully verify server and client TLS certificates upon connection so
  we're able to perform TLS1.3 with forward secrecy.

* lilith pruning

  lilith now periodically prunes known peers from its sets if it's unable
  to connect to them.
2023-06-29 13:13:15 +02:00
aggstam
dd45787d8d chore: clippy 2023-06-23 16:19:25 +03:00
lunar-mining
d38e27d4f0 dnetview: deserialize log to RingBuffer
Parse the incoming log as a RingBuffer and stop dnetview from
crashing. This is a partial intergration of the /net upgrade: f3659261dc

There is a bug where message logs are showing as empty.
2023-06-23 00:57:27 +02:00
parazyd
6cddfac05f Replace num_cpus crate with stdlib alternative. 2023-05-19 09:59:55 +02:00
parazyd
71cd3064d6 Update license year. 2022-12-28 13:06:00 +01:00
aggstam
e793bf401e dnetview: support for darkfid sync and consensus p2p networks 2022-12-14 14:48:48 +02:00
parazyd
88caee7f42 Update and clean up dependencies. 2022-12-13 15:19:09 +01:00
parazyd
905586a638 cargo fix 2022-12-07 12:53:52 +01:00
parazyd
8ae84ad7f9 Add license header to source files. 2022-10-31 18:16:13 +01:00
Luther Blissett
88abda32ce make fix and cargo fmt. 2022-10-06 14:21:56 +02:00
Luther Blissett
f9d6bc3440 dnetview: Import fixes and explicit hex crate usage. 2022-09-24 16:02:19 +02:00
lunar-mining
5f7199a1a7 net/ dnetview: show list of hosts in outbound info 2022-09-10 16:14:30 +02:00
Luther Blissett
94cc40781e dnetview: Clippy lint. 2022-09-07 13:20:47 +02:00
Luther Blissett
94b0c40e4e dnetview: Support custom config file through args, and cleanup args. 2022-09-06 12:30:57 +02:00
aggstam
e4838c4335 dnetview: lilith nodes support implemented 2022-08-30 21:44:47 +03:00
ghassmo
6e6c240891 cargo clippy over all projects 2022-08-25 13:41:58 +04:00
lunar-mining
a690630e99 dnetview: display node info in the correct order 2022-08-22 18:34:32 +02:00
lunar-mining
ba7e75c75b dnetview: remove redundant id vec 2022-08-22 18:34:32 +02:00
lunar-mining
59b954fa69 dnetview/util: add human readable ID prefix for easier debugging 2022-08-22 18:34:32 +02:00
lunar-mining
1365bd9078 dnetview: cleaned up Model and deleted dead code 2022-08-11 08:22:38 +02:00
lunar-mining
4ff6a3c73d Merge branch 'master' of github.com:darkrenaissance/darkfi 2022-08-10 07:14:36 +02:00
lunar-mining
e051bcfd2d dnetview: cleaned into 'rpc' and 'parser' modules. simplified main() 2022-08-10 07:08:07 +02:00
parazyd
e7400afd57 Fix remaining compile errors and cargo fmt. 2022-08-09 19:08:24 +02:00
lunar-mining
554c17e4cb dnetview: add .2 second delay to UI redraw to reduce CPU usage 2022-08-09 07:34:39 +02:00
lunar-mining
de0681767d dnetview: fixed error which caused scroll to crash when nodes are offline 2022-08-09 06:50:17 +02:00
lunar-mining
1b25019301 book: add network tools section and fix rendering on all sections 2022-08-08 12:04:26 +02:00
lunar-mining
2a24643480 dnetview: simplified View data stuctures + fix NoIdAtIndex bug 2022-08-08 12:04:26 +02:00
ghassmo
9f819b0dba general clean up and run cargo clippy for all bins 2022-06-29 01:15:03 +03:00
lunar-mining
f92dc65e27 dnetview: implement scroll 2022-06-28 09:00:04 +02:00
lunar-mining
6ae9c3921e dnetview: general cleanup 2022-06-26 21:26:20 +02:00
lunar-mining
e15f3619cd dnetview: move msg len update function to somewhere clearer 2022-06-26 14:50:11 +02:00
lunar-mining
f07a340fdd dnetview: implement previous() and next() on msg list 2022-06-26 14:25:19 +02:00
lunar-mining
14ba10e4b5 dnetview: simplify view's handling of ids + cleanup 2022-06-26 13:19:42 +02:00
lunar-mining
a9711433e4 dnetview: make msg_log into a list 2022-06-26 07:56:27 +02:00
lunar-mining
7d3f7ecc14 dnetview: add line numbers to msg log 2022-06-26 07:56:27 +02:00
lunar-mining
249e4d46b6 dnetview: display null outbound connections as null instead of ignoring 2022-06-23 14:38:19 +02:00
lunar-mining
8e26094717 dnetview: show offline nodes if rpc can't connect 2022-06-22 17:59:23 +02:00
lunar-mining
b593498055 dnetview: get and render remote_node_id. fix bug w unnecessary async thread 2022-06-22 17:13:58 +02:00
lunar-mining
93c786093b dnetview: keep trying to connect in a loop 2022-06-22 16:29:10 +02:00
lunar-mining
89eb222c21 dnetview: display offline nodes even when we can't connect to rpc 2022-06-22 16:29:10 +02:00
lunar-mining
9495c43a2e dnetview: display p2p state w each node 2022-06-21 20:31:32 +02:00
lunar-mining
2eba9954af dnetview: display external_addr as null when it's a null value 2022-06-21 17:39:04 +02:00
ghassmo
01ac20aab4 util/cli: refactoring loading log config & add path for log file 2022-05-31 04:29:03 +03:00
Dastan-glitch
55c828cec9 bin/dnetview: fix format 2022-05-29 21:37:34 +00:00
ghassmo
75072bbb5b dnetview: cargo clippy 2022-05-27 03:44:50 +03:00
parazyd
61bee58239 rpc: Cleanup and separate namespaces into client and server. 2022-05-22 20:54:17 +02:00
parazyd
587f0b4b93 make fix and minor manual cleanups. 2022-05-22 12:29:23 +02:00
lunar-mining
c34330c32e dnetview/ view: removed some debug statements 2022-05-21 09:00:15 +02:00
lunar-mining
837292472e dnetview: final bug fix and clean up
clear active_ids before writing to it to insure offline nodes don't get
saved perpetually
2022-05-21 08:56:12 +02:00
lunar-mining
a5af09e26c dnetview: partial fix for out of bounds index error
* fix bug that make duplicate empty ids
* disable parse_manual
* standard
2022-05-21 00:25:58 +02:00