將一個新創建的區塊傳播到整個比特幣網路需要多長時間,為什麼?
一旦創建了一個新塊,它就會傳播到整個網路。我想知道這“平均”需要多長時間。
傳播延遲可能有多種原因,我還想了解哪一個是最重要的:
- 據我了解,塊在被驗證和接受之前不會傳播,所以這應該有助於傳播時間。
- 無論塊大小如何,網路延遲都會增加延遲。
- 頻寬限制:大塊需要更長的時間來傳輸,並且具有許多傳對外連結接的節點將需要更長的時間來將塊傳輸到所有鄰居。
- 網路的直徑。
如果還有其他延誤的原因,我很想听聽他們。
另外,是否有人監控網路的傳播延遲,或我提到的任何其他網路測量,如果有,我在哪裡可以找到統計數據?
Decker 和 Wattenhofer 最近的一篇論文通過詳細測量回答了這個問題:
“比特幣網路中的資訊傳播”
連結:http ://www.tik.ee.ethz.ch/file/49318d3f56c1d525aabf7fda78b23fc0/P2P2013_041.pdf
在目前的塊大小下,塊的大小(通過傳輸和驗證)比通過 Internet 請求或傳播數據包的延遲更重要。
根據論文“比特幣網路中的資訊傳播”。德克爾和瓦滕霍夫。一個節點看到一個塊的平均時間是 12.6 秒,40 秒後 95% 的節點看到了那個塊。本文探討了傳播速度的一些原因。
塊大小是一個主要因素:
“對於大小大於 20kB 的塊,每 KB 需要額外的 80ms 延遲,直到大多數人知道該塊。” -“比特幣網路中的資訊傳播。”
網路直徑似乎並不那麼重要,因為比特幣中有一些非常長的最短路徑,但這些路徑僅代表覆蓋網路的一小部分。對於大多數節點來說,比特幣網路似乎連接得非常好,而且連接很長很窄。一個塊可能需要很長時間,可能需要幾分鐘才能達到最後的 0.0001%。
Bitcoin Stats 有一個很好的網站來衡量區塊傳播速度,它基於 Decker 和 Wattenhofer 的研究。它並不完全同意 Decker 和 Wattenhofer 的論文,但重要的是要了解比特幣網路正在以驚人的速度發展。像天氣或股票市場這樣的比特幣覆蓋網路具有昨天真實的東西明天可能不真實的特性。
Bitcoin Stats 表示,今天的平均值為 5.1 秒,第 90 個百分位數為 22.4 秒。