From f8f3d29e64616cb8fadbc545990653d959179d76 Mon Sep 17 00:00:00 2001 From: thephez Date: Tue, 7 Nov 2017 16:35:34 -0500 Subject: [PATCH] MN Sync - Add MN List / payment ongoing sync info --- _includes/devdoc/guide_p2p_network.md | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/_includes/devdoc/guide_p2p_network.md b/_includes/devdoc/guide_p2p_network.md index c5e7a89e..ac0b41c4 100644 --- a/_includes/devdoc/guide_p2p_network.md +++ b/_includes/devdoc/guide_p2p_network.md @@ -666,13 +666,13 @@ treated as misbehaving and have its ban score increased. {% autocrossref %} -Dash Core performs masternode synchronization as required, but it can be started -manually by issuing the `mnsync reset` RPC command. - -There are several conditions that restart the sync process: +Dash Core performs full masternode synchronization as required. There are +several conditions that initiate a start/restart the sync process: +* Initial startup of Dash Core * More than 60 minutes have passed since the last activation * A failure occurred during the last sync attempt (after a 1 minute cooldown before sync restarts) +* Issuing a `mnsync reset` RPC command Once a masternode completes an initial full sync, continuing synchronization is maintained by the exchange of P2P messages with other nodes. Each masternode @@ -682,6 +682,21 @@ online. Masternodes that do not issue a ping for 3 hours will be put into the announce (`mnb` message). +*Masternode List* + +After the initial masternode list has been received, it is kept current by a +combination of the periodic `mnp` messages received from other masternodes and +the `mnb` messages sent by masternodes as they come online. Also, `dseg` messages +can be sent to request masternode info when messages are received containing +unrecognized masternode `vin` entries (most masternode/governance messages +include a `vin` value that can be used to verify the masternode's unspent 1000 +Dash). + +*Masternode Payment* + +After the initial masternode payment synchronization, payment information is +kept current via the `mnw` messages relayed on the network. + #### Masternode Sync Status There are several status values used to track masternode synchronization. They @@ -722,7 +737,7 @@ The following actions only run when the masternode sync is past `MASTERNODE_SYNC #### Masternode Sync Data Flow This diagram shows the order in which P2P messages are sent to perform -masternode synchronization initially after startup.

+masternode synchronization initially after startup. ![Masternode Sync (Initial)](/img/dev/en-masternode-sync-initial.svg)