Internet Systems for People(对”互联网-人”系统的思考)

这篇主要从在线互联网服务和去中心化数字货币聊下"互联网系统设计及其与人的关系 "这个话题的思考。

在线系统:服务质量和人的耐心

互联网业务的终端都是人,从服务器硬件到最终用户,层层叠加起来的延迟,组成了最终的服务延迟,比如我们google点击搜索后返回结果的时间,或者抖音上滑后下一条视频开始播放的延迟。互联网公司背后的技术团队,通常会投入大量财力去优化他们系统的各个环节,来争取更快、更稳定的服务。

早在2014年,就有Yahoo Lab的学者对搜索引擎系统中,结果返回的延迟对用户的使用感受和下一步行动(比如是否点击结果)产生的影响进行研究[1]。研究结果表明,在500 ms延迟之下时,用户的感受不会有明显变化,但增加到1000 ms以上后,用户就会大概率察觉到卡顿,随后进一步点击结果的概率也会下降。

当然,也有很多人觉得,用户是被惯坏了的[2]!这也是有一定道理的,举个例子,2G时代没有手机刷过抖音的人们不可能会抱怨手机上没有短视频应用,因为他们根本不知道自己的这种需求。但如果当今的手机视频出现频繁卡顿,那用户一定会抱怨。

搜索引擎延迟研究的paper和”用户被惯坏“的观点都可以说明用户对互联网在线服务的要求可能不是极致的,但一定是有感知的,在特定的某个年代,用户可以忍受某个点之上的服务质量,更低的质量可能导致用户流失,更高的质量则可能把用户惯坏。然而,由于互联网服务的竞争通常发生在互联网公司之间,这种竞争是否有止境,值得思考,是否会陷入恶性竞争?笔者认为不是:如果将用户(人)归入到系统的一部分,对“互联网-人”系统进行整体考虑,这种服务质量的提升在某个维度可能是有止境的。以电影举例来说,新的电影可能考虑更大的屏幕、3D的效果,但不太可能把25帧提升到250帧,因为人眼的极限感受不到这10倍的差距,但提高10倍的帧率可能会带来更多倍数的成本。再以聊天软件举例,即使当前带宽足够,文字仍然是很多人的第一选择,语音次之,但还几乎没有人用视频作为即时通信的手段。

数字货币:51%攻击和人的贪婪

对于很多数字货币爱好者,区块链可以增加账本(“银行”功能)的可信度,让他们对自己的资产更有安全感,但和当今世界主流货币或金融体系类似,很多规则依然是建立在人性之上。就是说,不论法币还是数字货币、不论主流金融还是去中心化金融,都是人类社会中的个体和群体去使用的,微观经济对人的假设不会有本质改变。我们可以从“51%攻击”来理解这个道理。

比特币和以太坊等主流区块链技术都采用PoW (Proof-of-Work) [3] 共识算法,这种算法的大概思路是,需要让矿工证明他们算过了一些只能暴力破解的密码题才能获得对链的更改权。对于这种基于PoW算法的区块链来说,理论上是存在51%攻击的可能性的,因为,如果大于一半的算力都被单个个体或群体意识所控制,那么他就可以对链的历史进行修改,让人们对这条链的信任崩溃。

但是,需要注意,即使某个人通过某些方式达到了对全网51%算力的控制,这个人也很难说就希望发动攻击,因为让这条链的信任崩塌对于持算力最多的攻击者来说并没有什么经济上的好处。而更符合他利益的做法,可能是想办法让这条链被更多人所信任,他也可以因此获得更多的好处。

更”先进“的PoS (Proof-of-Stake) [4] 共识算法,让持币者把他们的币押到链中,押的越多,挖矿得到的币就会越多。这种设定容易让人乍一看觉得不公平,这不是“富者愈富”吗?但它本质和PoW是一样的,PoS是将挖矿效率和抵押币数对应起来,而PoW是将挖矿效率和算力对应起来,而购买算力也是需要钱的。因此如果觉得PoS不公平,那PoW同样不公平。虽然理论上掌握“51%”币的人依然可以对PoS链发动51%攻击,但是和上述比特币链一样,有攻击能力的人大概率不会破坏他所主导的生态,那类似于自取灭亡。

我们可以看到,PoS相对PoW,虽然没有给矿机出的密码学难题来强制将不可复制的算力与获得挖矿的奖励数量对应起来,但它更多地将人的天性作为算法设计的依赖条件,可以得到更好的系统性能。

极致优化和物理上限

上述两例中提到我们有可能将视频的帧数提升到250帧,也可能将区块链系统的挖矿证明设定为只能暴力破解的密码题。但是,这样的极致优化并非发展趋势:当今网络视频远没有达到250帧而且压缩效果可能比本地视频差很多,这可能是因为解决网络延迟在当今看来对用户体验更重要;PoS以数字货币抵押代替“耗电耗卡”的暴力“盲算”也是考虑到PoW的证明方式虽然更安全,但效率太低扩展性差,当区块链越来越普及之后,系统的运行效率比过分绝对的可靠更重要。笔者也觉得,互联网系统和人类社会是互相影响、共同发展的,互联网应用的设计和优化会或快或慢地向人类用户的使用习惯靠近,用户的习惯也会被新鲜的互联网系统所改变。

另一方面,不论是计算机、网络,还是人,都是有物理上限的:人的延迟(最低等于反应速度,上百毫秒数量级,感兴趣可以测测自己[5])可能很容易被机器超越,因此“互联网-人”系统的设计也不必大大超过此上限。机器性能的提升虽然在某些领域虽已触及物理极限(比如集成电路特征尺寸受限于物理限制不容易再成倍缩小下去),但还是在不断被优化,也有其道理,毕竟科学计算系统与常见的互联网应用中“互联网-人”系统类型不同,它的人机交互操作更不频繁。


[1] Arapakis, Ioannis, Xiao Bai, and B. Barla Cambazoglu. "Impact of response latency on user behavior in web search." Proceedings of the 37th international ACM SIGIR conference on Research & development in information retrieval. 2014.

[2] 用户真的会被惯坏吗?– 知乎 https://www.zhihu.com/question/19747575

[3] https://en.wikipedia.org/wiki/Proof_of_work

[4] https://en.wikipedia.org/wiki/Proof_of_stake

[5] https://humanbenchmark.com/tests/reactiontime

发表评论

邮箱地址不会被公开。 必填项已用*标注