3

I understand that a node can request synchronization from the network. But who is fulfilling those requests?

  1. How are these requests sent out? Are they sent to the entire network or 1 specific node?
  2. Who answers these requests? Full nodes?
  3. If one full node is providing the download, how do the other full nodes know that this request has been "served"?
  4. Does whoever providing the download get paid? How do they get paid?

Thanks!

1 Answer 1

1

When a node connects to the network, it actually connects to some other nodes, called peers. If those peers have a longer chain, your node requests the missing nodes from them. Every time a node mines a new block, it shares it with it's peers, and them with them's, and so on. The same goes for transactions, when a node publishes one, it broadcast it to it's peers, etc. There is no payment for this, it is just how the nework shares the information.

Usually both full and fast nodes can answer to fast nodes, but only full, archive nodes can answer to full nodes.

7
  • Thanks for your response, but I am asking about a new node coming into the network or a light node that's disconnected from the network periodically to get synchronized.
    – reedvoid
    Nov 6, 2018 at 22:17
  • A node coming into the network behaves as i described first. When you start syncing you have a chain of 1 block (genesis), so every peer synced is usefull. Light nodes don't behave differently, it just stores and verify less information. Nov 6, 2018 at 22:37
  • [1] So how does the syncing node know it's getting the right blocks? Say the right genesis block? Does it ask multiple peers and compare what they tell him? How would it know that the peers haven't colluded to trick him into believing a false genesis block? [2] If this is all free, then couldn't I attack the network by constantly inserting new nodes and requesting almost a terabyte of download from every node I know? Seems like this is pretty "expensive" to be free.
    – reedvoid
    Nov 6, 2018 at 22:47
  • "The right blocks" is a harder question to answer, check ethereum.stackexchange.com/questions/14/… , as a reduction, it chooses the chain with the most work behind Nov 6, 2018 at 22:49
  • As for "the right genesis", yes, and since every block has a hash, it can check if block nr 1 inherits from it and so on Nov 6, 2018 at 22:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.