Commit Graph

4709 Commits

Author SHA1 Message Date
Rostislav 1ed908fd85 Add Introducer node type, use it to find full nodes
introducer: New node types which only answers RequestPeers messages.
Returns a configurable number of peers randomly chosen from peers known
to it.

full_node: Connect to introducer periodically, update peer list
and try to connect to known peers.

connection: Add Peers class to manage the list of known peers.
2019-11-15 18:19:35 -05:00
Rostislav 1ec317bf54 Add support for 'str' type in Streamable 2019-11-15 18:19:35 -05:00
Rostislav 99c612d25d Change port number type in PeerInfo to uint16
Port numbers in TCP are 16-bit unsigned integers.
2019-11-15 18:19:35 -05:00
Rostislav 20e6be5e88 Send server port in handshake message
Store peer's server port in the corresponding Connection object.
2019-11-15 18:19:35 -05:00
Mariano Sorgente 638c2cffff Update farmers and timelords on connect, and after sync 2019-11-14 17:26:18 -05:00
Mariano Sorgente c6e8096f67 Revert "Start removing global connections"
This reverts commit 15bd64e954425ff6ae05601bb9a525308ac1e117.
2019-11-14 17:26:18 -05:00
Mariano Sorgente 9010911177 Start removing global connections 2019-11-14 17:26:18 -05:00
Mariano Sorgente 1ff2667a56 More protocol changes 2019-11-14 17:26:18 -05:00
Mariano Sorgente fc99e4c39f New protocol changes from bram 2019-11-14 17:26:18 -05:00
Mariano Sorgente 91f2f6788f Set socket timeout to None (blocking mode) 2019-11-13 12:14:55 -05:00
Bill Blanke 336b24fa20 updated chiapos submodule 2019-11-12 21:42:42 -08:00
Mariano Sorgente 502871a618 Merge pull request #13 from Chia-Network/push_pot
New Timelord algorithm.
2019-11-12 11:32:09 -05:00
Florin Chirica b682e3fe5c Timelord typo 2019-11-12 02:23:18 +02:00
fchirica 1cbd687b1e Merge 2019-11-12 02:10:30 +02:00
fchirica b1dec9f6df Refactor 2019-11-12 01:43:19 +02:00
fchirica d519c151bb One infinite loop to handle process assignments 2019-11-11 18:53:57 +02:00
Mariano Sorgente b9ff119e1e Fix UI connection issues, remove unnecessary locks, add farming fix for first few hundred blocks 2019-11-08 23:13:03 -05:00
fchirica 8d0df5e070 Refactor 2019-11-09 00:33:29 +02:00
Mariano Sorgente db3eac9fb9 Allow specifying an alternate plot directoey 2019-11-08 16:53:29 -05:00
Mariano Sorgente a479a506f9 Scripts (#14)
* Start block UI stuff

* Start with block search

* Create connections from the UI

* Add plot directory

* Add scripts for key generation, and plotting

* Remove keys and plot config

* Add scripts for key generation, and plotting

* Readme, comments
2019-11-08 16:51:01 -05:00
Rostislav 0c20092303 Do not run on_connect callback twice for outbound connections
The callback passed to .start_server() is run for all inbound and
outbound connections. Specifying the same callback function again in
.start_client() call causes it to be run twice for that outbound
connection.

Farmer and full node were affected by this problem.
2019-11-07 22:00:51 -05:00
Rostislav f37f79a758 Generate node_id randomly at server startup
Previously node_id was derived from node type, local IP address and
port. With this method unrelated nodes with the same local IP address
(e.g. behind different NATs) end up with the same node_id, which is not
desired.

"node_id"s are now used to avoid duplicate connections and must be
globally unique.
2019-11-07 22:00:51 -05:00
Rostislav c0105c4963 Remove unnecessary "node_id"s from config files 2019-11-07 22:00:51 -05:00
Rostislav ea7a836906 Do not use node_id to identify outbound connections
Previously the target node's node_id had to be known before connecting
to it. This is inconvenient and not scalable.

Remove node_id from PeerInfo, use PeerInfo as a whole instead of node_id
to identify outbound connections in server.py.
2019-11-07 22:00:51 -05:00
fchirica 11c5ce6373 Push new algorithm 2019-11-07 23:45:36 +02:00
Mariano Sorgente 8297aae3ad Merge pull request #11 from Chia-Network/reconnect
Reconnect
2019-11-04 10:26:22 -08:00
Mariano Sorgente e14933eeca Better error handling in handshake 2019-11-04 10:23:54 -08:00
Mariano Sorgente 1038194e3b Fix bug with reconnect 2019-11-03 20:13:22 -08:00
Mariano Sorgente 93628d3232 Allow restarting and reconnecting by any of the servers 2019-11-03 19:34:17 -08:00
Mariano Sorgente ff2f4a30d5 Merge branch 'challenge_hash' into networking 2019-11-03 16:42:05 -08:00
Mariano Sorgente 08ae4327d0 Merge pull request #10 from Chia-Network/networking
Networking
2019-11-03 08:26:00 -08:00
Mariano Sorgente c480a1c914 Clean up scripts for linux 2019-11-03 08:24:49 -08:00
Mariano Sorgente c3fb20819c Merge branch 'master' of github.com:Chia-Network/chia-blockchain into networking 2019-11-02 21:02:01 -07:00
Bill Blanke 7427d9797e use preincrement instead of postincrement. fixed issue with float precision by using akashnil equation 2019-11-02 12:39:47 -07:00
Mariano Sorgente 38d8038b01 Added challenge hash 2019-11-01 17:57:30 -07:00
Richard Kiss c828ef343b Get rid of "bits" class variable. 2019-11-01 15:34:16 -07:00
Richard Kiss d82936f1a0 Get ints working in ledger-sim. 2019-11-01 14:54:41 -07:00
Mariano Sorgente e65d9bad71 __bytes__, cbor, etc 2019-11-01 14:53:48 -07:00
Mariano Sorgente 85b1b04173 Remove CBOR tags 2019-10-31 18:33:03 -07:00
Mariano Sorgente 3ec5064873 Merge branch 'master' of github.com:Chia-Network/chia-blockchain into prompt 2019-10-31 10:34:25 -07:00
Mariano Sorgente 5869538416 Start with block page, and remove global connections lock 2019-10-31 10:34:16 -07:00
Florin Chirica 2b3236e101 Remove pulmark for now in VDF 2019-10-31 17:40:29 +02:00
Richard Kiss fae863af37 Improve installation a bit. 2019-10-30 15:25:19 -07:00
Richard Kiss b03ce1c783 Update aiter version. 2019-10-30 15:10:09 -07:00
Richard Kiss 0ed21a4991 Use map_aiter instead of parallel_map_aiter. 2019-10-30 14:59:27 -07:00
Richard Kiss 8b400d73fd Use lib version of prompt-toolkit. 2019-10-30 14:46:37 -07:00
Mariano Sorgente cab772bcf6 Merge pull request #9 from Chia-Network/prompt
Prompt
2019-10-30 14:42:18 -07:00
Mariano Sorgente 3d82ffb00a Fix linting 2019-10-30 14:41:37 -07:00
Mariano Sorgente 6c16b3769c Merge branch 'master' of github.com:Chia-Network/chia-blockchain into prompt 2019-10-30 14:41:05 -07:00
Mariano Sorgente 32c7e0de40 SSH instructions 2019-10-30 14:38:16 -07:00