天天看點

比特币網絡簡析

比特币系統分為應用層和網絡層,應用層為比特币區塊鍊系統,網絡層為P2P覆寫網絡,如下圖所示:

比特币網絡簡析
  • 網絡中所有節點平等,隻要知道一個種子節點(seed node),即可加入比特币網絡,種子節點會告訴你他所知道的所有節點;
  • 節點間通過tcp通信,這有利于穿透防火牆;
  • 節點退出應用程式後,别的節點将聽不到你的消息,過一段時間會将你删除。

Flooding傳播

比特币網絡采用flooding傳播的方式,第一次聽到某交易,則加入到集合中等待上鍊,并且轉發這個交易,後面再收到就不轉發了,避免無限傳播。

如果集合中已經有一個交易來源A轉給B的交易,就不能再将交易來源A轉給C的交易加入集合,因為該筆交易為重複花費,如下圖所示:

比特币網絡簡析

區塊大小限制

由于P2P網絡帶寬的限制,需要将區塊大小限制在1M位元組以内,否則區塊無法在短時間内覆寫到全網,導緻全網無法達成共識。

總結

比特币的P2P網絡足夠簡單、健壯,但是不高效。(simple, robust, but not efficient)

繼續閱讀