什么是 Block Size?
Block Size 是区块链上单个区块能承载的数据上限。它决定在区块产生前能容纳多少笔交易。可以把它想像成车厢:车厢越大,可载人数越多,但进站和传播可能需要更久。
更大的 Block Size 就意味着交易立刻又便宜又快。这不完全正确。更大的区块在网络中传播可能更慢,这会增加孤块发生的风险,并可能让小型节点更难参与。
Block Size 如何运作
下面是区块生成时实际发生情况的简要说明,以及为什么 Block Size 是其中一部分。
- 步骤 1:人们发送交易。交易会堆积在一个叫做 mempool 的公共等待区。
- 步骤 2:矿工或验证者挑选交易并打包,直到达到协议限制。该限制决定了每个区块的 交易容量。
- 步骤 3:候选区块被广播。其他节点进行验证,如果所有检查通过,它就成为链的一部分。
- 步骤 4:如果 Block Size 与需求相比显得紧张,一些交易会排队等待,这就会出现 网络拥堵。
- 步骤 5:如果 Block Size 非常大,区块通过互联网传播可能需要更久,因为每个节点的 网络带宽有限。更长的传播时间可能导致更多链分叉和资源浪费。
这就是循环。提交、验证、重复。
为什么 Block Size 很重要
作为用户或开发者,你应该关心哪些方面?
- 好处:更大的 Block Size 可以让每个区块包含更多交易,这有助于在高峰时段控制手续费。
- 视角:如果设得太大,会提高节点对硬件和存储的要求,从而限制谁能参与。这与 网络资源和谁运行全节点直接相关。
- 关联性:在讨论吞吐量、手续费和去中心化时,关于 Block Size 的话题经常会出现在比特币、以太坊以及有繁忙应用的其他链上。
将 Block Size 与区块时间、典型手续费以及该链是否使用汇总方案或支付通道进行比较。单看大小并不能说明全部情况。
Block Size 的关键特性
使其运行的细节:
- 上限:协议规则限定了一个区块可包含的数据量上限。
- 实际值:实际填充的大小通常低于上限,取决于需求和手续费。
- 传播:更大的区块在网络中传播可能更慢,這会影响安全性和确认感受。
- 手续费:当需求增长超过 Block Size 时,手续费通常会上升。
- 升级:改变 Block Size 通常需要广泛共识和谨慎测试。
变体
不同链对该概念的衡量或执行方式有所不同:
- 最大值:每个区块按字节直接设定上限,比如经典的一兆字节类限制。
- 权重:一种加权系统,对某些数据计重更高,如 SegWit 式的计量方式。
- Gas:按区块设定的 gas 限制,将大小与计算成本关联,这在智能合约链上常见。
- 自适应:有些网络会根据近期使用情况缓慢调整限制,以平滑波动。
Block Size 是一条共识规则。你不能在本地更改它然后期望整个网络跟随你的改动。
示例
在繁忙的周末,如果 Block Size 与需求相比偏小,许多交易会等待并推动手续费上升,直到 mempool 清空。
趣闻
2017 年著名的区块大小争论将比特币社区分裂并催生了比特币现金,那一刻像是论坛讨论与协议工程在公开场合的交汇。
结语
简短总结:Block Size 是区块可容纳内容的上限,选择这个上限是在速度、手续费和谁能运行节点之间的权衡。
