We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent f5998d7 commit 1122227Copy full SHA for 1122227
1 file changed
tnt11003.md
@@ -15,6 +15,24 @@ timezone: UTC+8
15
## Notes
16
17
<!-- Content_START -->
18
+# 2025-08-17
19
+
20
+## 比特币网络的工作原理
21
22
+ 比特币工作于网络应用层,底层(网络层)是一个P2P Overlay network(P2P覆盖网络)。比特币系统中所有节点完全平等,不存在超级节点(super node)。
23
24
+ 要加入网络,至少需要知道一个种子节点,通过种子节点告知自己它所知道的节点。节点之间的通信采用了**TCP**协议,便于穿透防火墙。当节点离开时,只需要自行退出即可,其他节点在一定时间后仍然没有收到该节点消息,便会将其删掉。
25
26
+ 比特币网络设计原则:**简单、鲁棒(最坏情况下能达到最优状况,即健壮性)而非高效**。
27
28
+每个节点维护一个邻居节点集合,消息传播在网络中采用洪泛法,某个节点在收到一条消息会将其发送给所有邻居节点并标记,下次再收到便不会再发送该消息。邻居节点选取随机,未考虑网络底层拓扑结构,也与现实世界物理地址无关。该网络具有极强鲁棒性,但牺牲了网络效率。
29
30
+ 比特币系统中,每个节点要维护一个等待上链的交易集合。第一次听到交易,若是合法交易,则将其加入该交易集合并转发给邻居节点,以后再收到该交易就不再转发(避免网络上交易无线传输)。
31
32
+> 区块大小越大,网络上传播时延越长;区块大小越小,则可以包含的交易数目越少。
33
34
+ 比特币网络传播属于**Best effort(尽力而为)**,不能保证一定传输成功。以一个交易发布到网络上,未必所有节点都能收到,也未必所有节点收到交易顺序都一致。
35
36
# 2025-08-16
37
38
区块链应用学习
0 commit comments