当前位置: 首页 > news >正文

区块链技术5--BTC网络

1BTC网络的工作过程:

用户将交易发布到BTC网络上,节点收到交易后打包到区块,然后将区块发布到BTC网络上。


2BTC网络的工作原理:

比特币工作于网络应用层,其底层(网络层)是一个P2P Overlay network(P2P覆盖网络)。比特币系统中所有节点完全平等,不像一些其他网络存在超级节点(super node)。要加入网络,至少需要知道一个种子节点,通过种子节点告知自己它所知道的节点。节点之间的通信采用了TCP协议,便于穿透防火墙。当节点离开时,只需要自行退出即可,其他节点在一定时间后仍然没有收到该节点消息,便会将其删掉

比特币网络设计原则:简单、鲁棒(最坏情况下能达到最优状况,即健壮性)而非高效。 每个节点维护一个邻居节点集合,消息传播在网络中采用flooding,某个节点在收到一条消息会将其发送给所有邻居节点并标记,下次再收到便不会再发送该消息。邻居节点选取随机,未考虑网络底层拓扑结构(一个在加利福尼亚的节点的邻居节点可能在阿根廷),也与现实世界物理地址无关。该网络具有极强鲁棒性,但牺牲了网络效率。

比特币系统中,每个节点要维护一个等待上链的交易集合。第一次听到交易,若是合法交易,则将其加入该交易集合并转发给邻居节点,以后再收到该交易就不再转发(避免网络上交易无线传输)。假如网络中存在两个冲突交易,如交易1:A->B,交易2:A->C(假设花费的同一笔钱)。具体接收哪个取决于节点先接收到哪个交易,之后收到另一个交易会将其放弃。

假如某个节点先听到A->B,但又听到A->C已经上链,则此时A->B为非法交易,所以要在等待上链交易集合中删除A->B

新发布区块在网络中传播方式与新发布交易传播方式类似,每个节点除检查该区块内容是否合法,还要检查是否位于最长合法链上。区块越大,则网络上传输越慢。BTC协议对于区块大小限制为不大于1M大小。

区块大小越大,网络上传播时延越长;区块大小越小,则可以包含的交易数目就会越少。

此外,比特币网络传播属于 Best effffort(尽力而为) ,不能保证一定传输成功。以一个交易发布到网络上,未必所有节点都能收到,也未必所有节点收到交易顺序都一致。

相关文章:

  • wordpress按分类搜索/网站开发建设步骤
  • 学校网站建设总结报告/网页优化方法
  • css3做的牛逼网站/如何制作网页链接
  • 网站建设知识网/google本地搜索
  • 赣州那里有做网站的公司/湖南网站推广公司
  • 大型网站 空间/自己创建个人免费网站
  • 系分 - 案例分析 - 架构设计(基本)
  • RK3568工业级核心板高温运行测试
  • SLAM本质剖析番外-李群李代数的微分和导数
  • 看门狗是什么?
  • day3 203移除链表元素 707设计链表 206反转链表
  • 熟悉Spring框架?Spring容器使用流程,注解 你真的会吗?(让你一下通透~)
  • 【数据结构】图的案例引入及类型定义
  • 项目管理:项目控制的三个基本原则
  • 【Nginx 基础】
  • HuggingFace (transformers) 自定义图像数据集、使用 DeiT 模型、Trainer 进行训练回归任务
  • 华为OD在线编程题准备
  • XMind导入Markdown(利用Typora导出opml)