eth软件测评
① ETH测试网的那些事:新手被交智商税 竟有人买测试币
随着一年多的加密的出现牛市,大量的新参与者被添加到块,潮流链同时有很多的机会,但也使圆出现大量新的低水平计划,这是奇怪,最近有人在网上销售ethereum测试货币,而且真的有很多小白饵,买了很多。进入了解后,很多新手主要不知道区块链,同时相关科普也很少,所以一些信息造成了错误的认识,所以我们开展了小白科普,主要介绍了以太坊测试网。
顾名思义,测试网络是正式产品或程序推出前的功能和性能测试过程。不同的公链都有自己的测试网络,如比特币、莱特币、以太坊等。测试网络一般分为专用测试网和公用测试网。专用测试网络是由我们的局域网或本地机器构建的测试环境。公开测试网络是指所有人都可以访问的测试网络环境。一般来说,在以太坊Metamask钱包中我们可以看到以太坊公共测试网络主要分为以下几种类型:
Ropsten:一个POW的区块链,非常类似于目前以太坊主网
Kovan:一个POA的区块链
Rinkeby:一个POA的区块链
Goerli:一个POS的区块链,对标ETH2.0
不同的测试网络除了在区块模型和共识机制方面有所不同,在软件客户端支持的类型和垃圾处理交易机制也有所不同,其他的都是支持使用EVM的虚拟机入口,即如果不是以太通道和底层功能测试或DApp某些性能参数,对于生态项目方面,其他一切都是相同的。
在牛市之前,大多数以太坊DApp开发者实际上使用的是Ropsten测试网络。因为Ropsten测试网络使用POW挖掘,这与我们看到的主要网络挖掘是一样的,需要特定的图形卡和其他设备。这部分测试网络的最大特点是网络计算能力低,所以采集成本很低。此外,有了以太坊基金会的资助,公众其实很容易通过公开渠道免费获得相应的测试币。开采方式和其他测试,所以测试的成本,更便宜,无论如何获得成本,当然,在行业测试网络没有多少商业价值,同时测试硬币就没有价值,是可以免费得到的,人们可以通过测试网络水龙头免费网站。
进入以太坊2.0时代后,主网的主要流程是信标链正式上线,节点对ETH质押进行验证,节点软件运行,再将POW链转化为POS链。智能合同部署在最初的战俘网络仍然有效,但采矿方法发生了变化,这个过程使得有必要用不同的机制运行多个测试网络功能上线之前,为了确保正式启动可以尽可能顺利进行。
在主网上,目前进展是以太坊信标链上线,POW链继续运行,其他分片链尚未运行。目前主流的2.0客户端测试网络是由Prysmatic Labs发起的Goerli测试网络,该网络自2019年开始运行。用于以太坊2.0的测试网络tapoz自2021年以来一直在运行。其他开放测试碎片链仍然没有公开运行。在以太坊2.0合并后,Goerli测试网现在被称为以太坊2.0测试网。
由于它是以太坊2.0测试网络,作为区块链技术未来几年发展的重点,Goerli测试网络实际上相当受欢迎。首先,需要参与测试网络验证节点的块生成和运行,所以必须需要32个高尔里测试网络测试币。Prysmatic Labs之前在其官网提供了32枚Goerli测试币给有意参与验证测试节点的运营商领取,完全符合测试节点的要求。
验证人在获得32枚测试币后,需要像当前主网络一样,将高尔里测试币调用合同在高尔里测试网络上进行质押,以获得测试节点运行的资格。然后在服务器上运行测试网络客户端软件,完成后续的测试网络参与过程。测试网络验证器在完成测试网络验证节点的建立后,可以尝试在测试网络验证器上部署各种智能合约或进行其他测试。
主网络上相应的过程是POW主网络过渡到POS过程,我们稍后将看到。换句话说,如果一个项目想在未来几年内部署在以太坊上,最接近的测试网络就是Goerli测试网络。当然,由于EVM虚拟机用于合同部署,很多项目仍然会选择Rinkeby测试网络进行测试。Rinkeby测试网络采用POA共识机制(权威认证),使用验证器统一账本状态。这有效地防止了双重支出。正因为如此,Rinkeby测试网实际上为开发人员提供了良好的测试网络体验,也吸引了很多开发人员。
高尔利测试网目前运行的是POS模式,每天也有大量的测试币产生。然而,由于目前的短缺,一些测试币水龙头提供给公众的测试币相对较少。从上面可以看出,高尔利测试币的主要目的是为32个测试币部署相应的2.0验证者测试节点。当然,测试节点不会产生实际收入。
此外,高尔里测试币的主要用户是DApp生态项目方。随着以太坊计划进入2.0阶段,一些项目将在Goerli的网络上部署他们的测试dapp,所以实际上在Goerli的测试网络上部署的智能合约并不多。自牛市以来,高尔利测试网也迎来了较为活跃的时期,这部分是由于DApp项目的测试网活动吸引了大量羊毛派对。
简而言之,在项目正式启动主网络,DApp开发团队通常部署在公共测试网络合同,然后让它公开,以便用户和一些DApp赏金猎人可以测试,以发现一些错误,没有发现在内部测试,确保项目的安全。
生态项目测试活动一般都有相应的奖金,一些方面的项目在同一时间为了访问流的应用程序进行压力测试DApp,公开发表了一些测试活动,比如关注官方 社会 账户,然后体验测试网络,当项目建立正式提供将得到项目删除令牌。
几乎零成本,因为这种测试活动,并获得宝贵的令牌,它吸引了许多普通用户,同时,使用大量的占“拔毛”,并将使用测试网络将有一个测试的前提eth气体时,也正因为如此,许多试币在牛市接受龙头的情况下大多是干的(试币是带出来的,拿不到试币),所以存在交易试币的情况。
对于大多数的货币圈很长一段时间对于投资者来说,自然知道测试硬币都是没有价值的,所以购买测试硬币主要是一些黑心商人用小白和新手在以太和以太方方2.0 - 2.0测试这部分细节不了解,加上一些文章测试网络表达不清楚,给新手造成一些误解。测试货币的目的始终是为了测试网络。主要网络启动后,测试网络仍然存在和发挥测试的作用在随后的关键功能,而不是虚假陈述”测试网络和主要网络合并,并测试货币成为主要网络货币”说,这些黑色的商人。
② ethtool原理介绍和解决网卡丢包排查思路
之前记录过处理因为LVS网卡流量负载过高导致软中断发生丢包的问题, RPS和RFS网卡多队列性能调优实践 ,对一般人来说压力不大的情况下其实碰见的概率并不高。这次想分享的话题是比较常见服务器网卡丢包现象排查思路,如果你是想了解点对点的丢包解决思路涉及面可能就比较广,不妨先参考之前的文章 如何使用MTR诊断网络问题 ,对于Linux常用的网卡丢包分析工具自然是ethtool。
2020年06月22日 - 初稿
阅读原文 - https://wsgzao.github.io/post/ethtool/
ethtool - utility for controlling network drivers and hardware
ethtool is the standard Linux utility for controlling network drivers and hardware, particularly for wired Ethernet devices. It can be used to:
Most features are dependent on support in the specific driver. See the manual page for full information.
ethtool 用于查看和修改网络设备(尤其是有线以太网设备)的驱动参数和硬件设置。你可以根据需要更改以太网卡的参数,包括自动协商、速度、双工和局域网唤醒等参数。通过对以太网卡的配置,你的计算机可以通过网络有效地进行通信。该工具提供了许多关于接驳到你的 Linux 系统的以太网设备的信息。
接收数据包是一个复杂的过程,涉及很多底层的技术细节,但大致需要以下几个步骤:
NIC 在接收到数据包之后,首先需要将数据同步到内核中,这中间的桥梁是 rx ring buffer 。它是由 NIC 和驱动程序共享的一片区域,事实上, rx ring buffer 存储的并不是实际的 packet 数据,而是一个描述符,这个描述符指向了它真正的存储地址,具体流程如下:
当驱动处理速度跟不上网卡收包速度时,驱动来不及分配缓冲区,NIC 接收到的数据包无法及时写到 sk_buffer ,就会产生堆积,当 NIC 内部缓冲区写满后,就会丢弃部分数据,引起丢包。这部分丢包为 rx_fifo_errors ,在 /proc/net/dev 中体现为 fifo 字段增长,在 ifconfig 中体现为 overruns 指标增长。
这个时候,数据包已经被转移到了 sk_buffer 中。前文提到,这是驱动程序在内存中分配的一片缓冲区,并且是通过 DMA 写入的,这种方式不依赖 CPU 直接将数据写到了内存中,意味着对内核来说,其实并不知道已经有新数据到了内存中。那么如何让内核知道有新数据进来了呢?答案就是中断,通过中断告诉内核有新数据进来了,并需要进行后续处理。
提到中断,就涉及到硬中断和软中断,首先需要简单了解一下它们的区别:
当 NIC 把数据包通过 DMA 复制到内核缓冲区 sk_buffer 后,NIC 立即发起一个硬件中断。CPU 接收后,首先进入上半部分,网卡中断对应的中断处理程序是网卡驱动程序的一部分,之后由它发起软中断,进入下半部分,开始消费 sk_buffer 中的数据,交给内核协议栈处理。
通过中断,能够快速及时地响应网卡数据请求,但如果数据量大,那么会产生大量中断请求,CPU 大部分时间都忙于处理中断,效率很低。为了解决这个问题,现在的内核及驱动都采用一种叫 NAPI(new API)的方式进行数据处理,其原理可以简单理解为 中断 + 轮询,在数据量大时,一次中断后通过轮询接收一定数量包再返回,避免产生多次中断。
(1) RX errors
表示总的收包的错误数量,这包括 too-long-frames 错误,Ring Buffer 溢出错误,crc 校验错误,帧同步错误,fifo overruns 以及 missed pkg 等等。
(2) RX dropped
表示数据包已经进入了 Ring Buffer,但是由于内存不够等系统原因,导致在拷贝到内存的过程中被丢弃。
(3) RX overruns
表示了 fifo 的 overruns,这是由于 Ring Buffer(aka Driver Queue) 传输的 IO 大于 kernel 能够处理的 IO 导致的,而 Ring Buffer 则是指在发起 IRQ 请求之前的那块 buffer。很明显,overruns 的增大意味着数据包没到 Ring Buffer 就被网卡物理层给丢弃了,而 CPU 无法即使的处理中断是造成 Ring Buffer 满的原因之一,上面那台有问题的机器就是因为 interruprs 分布的不均匀(都压在 core0),没有做 affinity 而造成的丢包。
(4) RX frame
表示 misaligned 的 frames。
网线上的packet首先被网卡获取,网卡会检查packet的CRC校验,保证完整性,然后将packet头去掉,得到frame。网卡会检查MAC包内的目的MAC地址,如果和本网卡的MAC地址不一样则丢弃(混杂模式除外)。
网卡将frame拷贝到网卡内部的FIFO缓冲区,触发硬件中断。(如有ring buffer的网卡,好像frame可以先存在ring buffer里再触发软件中断(下篇文章将详细解释Linux中frame的走向),ring buffer是网卡和驱动程序共享,是设备里的内存,但是对操作系统是可见的,因为看到linux内核源码里网卡驱动程序是使用kcalloc来分配的空间,所以ring buffer一般都有上限,另外这个ring buffer size,表示的应该是能存储的frame的个数,而不是字节大小。另外有些系统的 ethtool 命令 并不能改变ring parameters来设置ring buffer的大小,暂时不知道为什么,可能是驱动不支持。)
网卡驱动程序通过硬中断处理函数,构建sk_buff,把frame从网卡FIFO拷贝到内存skb中,接下来交给内核处理。(支持napi的网卡应该是直接放在ring buffer,不触发硬中断,直接使用软中断,拷贝ring buffer里的数据,直接输送给上层处理,每个网卡在一次软中断处理过程能处理weight个frame)
过程中,网卡芯片对frame进行了MAC过滤,以减小系统负荷。(除了混杂模式)
网卡驱动程序将IP包添加14字节的MAC头,构成frame(暂无CRC)。Frame(暂无CRC)中含有发送端和接收端的MAC地址,由于是驱动程序创建MAC头,所以可以随便输入地址,也可以进行主机伪装。
驱动程序将frame(暂无CRC)拷贝到网卡芯片内部的缓冲区,由网卡处理。
网卡芯片将未完全完成的frame(缺CRC)再次封装为可以发送的packet,也就是添加头部同步信息和CRC校验,然后丢到网线上,就完成一个IP报的发送了,所有接到网线上的网卡都可以看到该packet。
产生中断的每个设备都有一个相应的中断处理程序,是设备驱动程序的一部分。每个网卡都有一个中断处理程序,用于通知网卡该中断已经被接收了,以及把网卡缓冲区的数据包拷贝到内存中。
当网卡接收来自网络的数据包时,需要通知内核数据包到了。网卡立即发出中断。内核通过执行网卡已注册的中断处理函数来做出应答。中断处理程序开始执行,通知硬件,拷贝最新的网络数据包到内存,然后读取网卡更多的数据包。
这些都是重要、紧迫而又与硬件相关的工作。内核通常需要快速的拷贝网络数据包到系统内存,因为网卡上接收网络数据包的缓存大小固定,而且相比系统内存也要小得多。所以上述拷贝动作一旦被延迟,必然造成网卡FIFO缓存溢出 - 进入的数据包占满了网卡的缓存,后续的包只能被丢弃,这也应该就是ifconfig里的overrun的来源。
当网络数据包被拷贝到系统内存后,中断的任务算是完成了,这时它把控制权交还给被系统中断前运行的程序。
网卡的内核缓冲区,是在PC内存中,由内核控制,而网卡会有FIFO缓冲区,或者ring buffer,这应该将两者区分开。FIFO比较小,里面有数据便会尽量将数据存在内核缓冲中。
网卡中的缓冲区既不属于内核空间,也不属于用户空间。它属于硬件缓冲,允许网卡与操作系统之间有个缓冲;
内核缓冲区在内核空间,在内存中,用于内核程序,做为读自或写往硬件的数据缓冲区;
用户缓冲区在用户空间,在内存中,用于用户程序,做为读自或写往硬件的数据缓冲区;
另外,为了加快数据的交互,可以将内核缓冲区映射到用户空间,这样,内核程序和用户程序就可以同时访问这一区间了。
对于有ring buffer的网卡,ring buffer是由驱动与网卡共享的,所以内核可以直接访问ring buffer,一般拷贝frames的副本到自己的内核空间进行处理(deliver到上层协议,之后的一个个skb就是按skb的指针传递方式传递,直到用户获得数据,所以,对于ring buffer网卡,大量拷贝发生在frame从ring buffer传递到内核控制的计算机内存里)。
网卡工作在数据链路层,数据量链路层,会做一些校验,封装成帧。我们可以查看校验是否出错,确定传输是否存在问题。然后从软件层面,是否因为缓冲区太小丢包。
一台机器经常收到丢包的报警,先看看最底层的有没有问题:
(1) 查看工作模式是否正常
(2) 查看检验是否正常
Speed,Duplex,CRC 之类的都没问题,基本可以排除物理层面的干扰。
Why rx_crc_errors incrementing in the receive counter of ethtool -S output?
Check ethtool -S output and find where are the drops and errors.
Check the numbers corresponding to rx_crc_errors .
显示了p1p1 的接口类型,连接模式,速率等等信息,以及当前是否连接了网线(如果是网线Supported ports 就是TP,如果是光纤则显示Fiber),这里例举下3个重要关键词
Supported ports: [ FIBRE ]
Speed: 10000Mb/s
Link detected: yes
ethtool
Counters Troubleshooting for Linux Driver
Why do I see rx_crc_errors in ethtool output?
ping请求错误分析
ifconfig 命令详解
ethtool 命令详解
ethtool 解决网卡丢包严重和网卡原理
③ ETH稳吗比EOS怎么样
我最早回答这个问题时是在EoS众筹期第70个认筹天(EoS一个认筹天为23小时),当时这个回答下面已经一片哀鸿,因为从初始认筹的3美元高点,已经跌到接近0.5美元。当我开始侃侃而谈时,几乎无人关注。在此之后的2个月,EoS的认筹价一直徘徊在这个位置左右,如果跟进认筹,1个ETH可以换得大概500个EoS,则这个收益应该超过绝大部分参与者。
回顾EoS的融资,不仅创下了ICO的多项纪录,在整个公开市场融资历史上,也是一个重大里程碑式的事件。长达350天的认筹周期,20万人次参与ICO,累计筹得720万个以太币,按当天市价折算,总额达到43亿美元,这个融资额度接近谷歌(27亿美元)和Twitter(21亿美元)的IPO总和,是有史以来到目前为止最大的一宗ICO。这很值得进行全面的总结,我很期望所写的内容,能够穿透事实表面,抓到背后所隐藏的本质,成为历史记载的一部分。
EoS的ICO是采用以太坊的智能合约完成自动认筹和派筹,无任何中间人,不存在传统证券上市的投行和发行人承销人角色,这是一级市场。EoS币总数10亿,其中9亿派发给认筹者,1亿为Block.one公司保留。认筹所得资金全部归属于Block.one公司,同时按认筹协议,这些资金直接成为该公司利润,并不存在与认筹者的任何其他责任和义务关系,也不存在维护和开发EoS软件及网络的责任和义务,EoS主网将由松散化组织的技术论坛社区启动,网络运行资金由代码规则自动生成发行新的EoS代币支付给区块生产者节点。
ICO过程中二级市场(交易所)同步全面开放,一般的融资在一级市场认筹完成后,有一段时间才会进入二级市场流通,而这次融资周期长达350天,认筹所得以太坊EoS令牌,当天就可以进入二级市场流通,产生大量的换手交易,两个市场的价格随之同步波动。
EoS在ICO结束后总市值110亿美元,位列数字货币排行榜第5位,较为逼近第4位的BCH(170亿美元),与第3位的Ripple(240亿美元)则差距超过一倍。相较认筹资金总额43亿美元而言,按照ICO的流行说法,其实不过区区一个3倍
④ 比特币以太坊行情分析软件哪个好用
推荐CellETF去中心化交易平台,CellETF是一个DeFi综合应用平台(celletf.io),依托于以太坊公链部署,包括多款智能合约/协议,被动报价机制以及ETF一二级双市场架构等特性,仅需一个站点,即可拥抱DeFi的无限可能。
⑤ 以太坊linux系统挖eth和用ethminer挖eth,哪个效率更高
ifconfig 查看你是否开启网卡 /etc/init.d/network restart 启动网卡 查看 cd /etc/sysconfig/network-scripts/ 是否有ifcfg-eth0这个文件 没有的话配置一个 内容 DEVICE=eth0 (哪张网卡) ONBOOT=yes BOOTPROTO=static (静态ip状态设置) BOOTP...
⑥ 手机挖以太坊用什么软件
E池、开源矿池 、鱼池、星火矿池、开源矿工
1.Ethpool(Ethermine)是第一个官方的以太坊矿池。此前由于工作量超负荷,该矿池不接受新用户,只接受老客户。因此,许多新矿工被迫转向单独挖矿,因为那时还没有其他可替代的矿池。 在Ethpool上挖矿,必须安装以太坊的C++ETH版本。 市场占有率:23% 当前矿池算力:399.1GH / s 挖矿奖励结算模式:PPLNS 费率:1.0%
2. ntminerpool (开源矿池)虽然是新矿池,但已经是目前最稳定的矿池之一。份额的复杂性是静态的,相当于50亿。在该矿池上进行挖矿的最低哈希率仅为5 Mhesh / s。此外,此矿池根据PPLNS方案计算挖矿奖励,其中N是最近10分钟内所有接受的份额。 ntminerpool的服务器遍及全球,官网页面简洁直观。 市场占有率:8% 当前矿池算力:16,176.3GH / s 挖矿奖励结算模式:PPLNS 费用:1.0% 网络搜:开源矿工、开源矿池
3. F2Pool(鱼池) F2Pool是2019年最受欢迎的矿池之一。F2pool的服务器主要位于中国、其他亚洲国家和美国。F2pool.com因其开放性,可访问性和易用性而备受矿工喜爱。矿工在F2Pool上注册后才可以挖矿。 以太坊挖矿需要一个显卡矿机。 市场占有率:10% 当前矿池算力:19.38TH / s 挖矿奖励结算模式:PPS+ 费率:2.5%
4. Sparkpool(星火矿池) 在ETH,GRIN和BEAM生态系统中,最强大的中国资源库是Sparkpool,它是与全球矿工合作的开放资源。 在挖矿之前,你需要配置矿机。基于AMD GPU处理器的以太坊挖矿收益更高。它需要闪存改进的BIOS并调整MSI Afterburner或AMD驱动程序设置中的超频选项。 市场占有率:29% 当前矿池算力:56.96TH / s 挖矿奖励结算模式:PPS + 费用:1.0%
5. Dwarfpool 在DwarfPool,矿工的信用等级分为RBPPS或HBPPS。使用RBPPS,只要有A值,你就可以获得对应奖励。HBPPS计提算法是基于时间的股份支付。每小时计算一次所有推广和发现的区块。 该矿池具有经过优化的最佳挖矿引擎,拒绝率较低,透明且详细的统计信息。每小时进行一次支付结算,服务器遍布世界各地。 市场占有率:6% 当前矿池算力:2377109 MH / s 挖矿奖励结算模式:HBPPS 费用:1.0%
⑦ 2020年ETH升级2.0超级版本,会带来什么影响
原因:
Linux distribution使用udev动态管理设备文件,并根据设备的信息对其进行持久化命名。udev会在系统引导的过程中识别网卡,将mac地址和网卡名称对应起来记录在udev的规则脚本中。而对于新的虚拟机,VMware会自动为虚拟机的网卡生成MAC地址,当克隆或者重装虚拟机软件时,由于使用的是以前系统虚拟硬盘的信息,而该系统中已经有eth0的信息,对于这个新的网卡,udev会自动将其命名为eth1(累加的原则),所以在系统启动后,使用ifconfig看到的网卡名为eth1。
解决方法:
在fedora中,udev记录网络规则的脚本为:/etc/udev/rules.d/70-persistent-net.rules
[user@localhost ~]$ vi /etc/udev/rules.d/70-persistent-net.rules
# This file was automatically generated by the /lib/udev/write_net_rules
# program run by the persistent-net-generator.rules rules file.
#
# You can modify it, as long as you keep each rule on a single line.
# PCI device 0x1022:0x2000 (pcnet32)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:5a:6c:73", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0c:29:a9:22:9d", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
打开该文件,这时会发现,里面有eth0,eth1两个网卡的信息,但实际上ifconfig时只能发现eth1一个网卡的信息,这时因为eth0根本就不存在。
将其中eth0的信息删掉,并将eth1信息中的设备名改为eth0,重启系统,看到的网卡就是eth0了,或者删掉其中所有的信息重启系统udev会帮发现新的设备的。
⑧ 显卡挖ETH同时双挖SC ,会影响挖ETH的收益吗
有影响,可以帮助节省资金并赚取更多收益。以太坊挖矿神器-ETH超级矿工软件就是支持ETH同时ETC+SC双挖的,它功能是将Claymore Miner开发商收取的费用,重定向返还到你的钱包,并以你的矿工名显示在你的矿池,从而提升最高算力。
⑨ 挖ETH用什么软件好
KKOS挖矿软件。KKOS是一个基于linux系统的挖矿深度定制系统。由于系统相对于windows来说,体积非常的小巧,因此可以直接刻录于U盘,省下了一块硬盘的钱。并且系统占用资源少,对于相同的配置来说,比windows系统更加稳定。KKOS挖矿软件,是由国内技术团队花费大半年呕心沥血打造出的专业矿机管理系统,现已支持无盘及大客户定制返抽水。