I am wondering how to build a simulator to simulate P2P network for blockchain such as Bitcoin or Ethereum. Specifcally, how to simulate transaction processing and propogation. Also, the same thing for blocks, Network topology and nodes distributions.
Is better to put these info as time delay and assumption (e.g., a transaction with size x requires Time = x*distance of node) or one needs to implement the network infrastructure? if it is based on delay and assumption, how to get such parameters for the simulator? If the network has to be implemented, is there any tool that helps to impement p2p network easily and accurately?
Any advice is welecom! Thanks