Bram Cohen 与 BitTorrent
从谜题出发的少年
Bram Cohen 在纽约长大,5 岁就开始在家用的 Timex Sinclair 电脑上自学 BASIC 语言——这个年纪的大多数孩子还在学认字和数数。他后来被认定处于自闭症谱系(autism spectrum)之上,直白、极度专注、对社交游戏兴趣寡淡,却痴迷于解谜与设计谜题。这些特质贯穿了他的整个职业生涯,也塑造了他解决问题的方式。
2000 年前后,Napster 等早期点对点(peer-to-peer, P2P)服务改变了音乐在互联网上流动的方式,却依赖中心化索引和直连机制,一旦访问量激增就容易失效或被彻底关停。对 Cohen 而言,这不是一场关于盗版或反抗唱片工业的战斗,而是一道纯粹的工程谜题:如何让海量用户高速获取同一份文件,又不压垮任何一台服务器。答案是去中心化(decentralization)——让每个下载者同时成为上传者,借助群体本身的带宽来分担压力。
协议本身:把带宽瓶颈变成优势
2001 年,Cohen 设计了 Bencoding,一种为 BitTorrent 量身定制的数据序列化(data serialization)格式,思路与同期出现的 JSON 类似,但原生支持任意二进制数据,足以承载文件校验所需的哈希值。BitTorrent 协议把一份文件切割成大小固定的片段(piece),用一份 Bencoded 的 .torrent 文件记录文件名、片段长度以及每个片段的 SHA-1 哈希,用于校验数据完整性;文件中还包含追踪器(tracker)的地址——追踪器相当于一份实时更新的"电话簿",记录着当前正在共享该文件的所有节点(peer)。
后续的 BitTorrent v2(BEP 52)引入了基于 SHA-256 的梅克尔树(Merkle tree)校验,并配合分布式哈希表(Distributed Hash Table, DHT)和磁力链接(Magnet Link),使客户端可以直接从 DHT 网络中检索文件元信息,不再必须依赖单独分发 .torrent 文件。协议还内置了一套动态调度机制:优先下载稀缺片段以防其从网络中彻底消失,并通过"一报还一报"(tit-for-tat)算法奖励上传速度快的节点、淘汰响应慢的节点,同时每隔 30 秒随机试探新节点寻找更优连接。这套机制让下载可以同时从数十甚至上百个节点分摊流量,充分吃满可用带宽,速度远超传统的单点下载。
2002 年年中,Cohen 在他参与创办的小型极客会议 CodeCon 上演示了可用的 Python 客户端。真正让早期用户印象深刻的,是这个免费开源的协议把互联网最大的短板——带宽——直接转成了优势。
从盗版温床到"打不死"的协议
为了推广测试版客户端,Cohen 一开始用成人内容作为种子文件吸引用户——历史上多次媒介技术的普及都借助过这条路径,BitTorrent 也不例外。此后,BitTorrent 迅速被用来传播盗版电影、剧集、音乐和软件,Suprnova、LokiTorrent 以及后来最知名的 The Pirate Bay 相继成为流量枢纽。唱片和电影行业将其称为"新一代 Napster",通过诉讼施压,但由于 BitTorrent 只是一套开放协议而非某家公司的产品,任何人都可以自由实现和使用,这让它在法律层面几乎"打不死"——起诉一个具体的追踪站点容易,起诉协议本身却无从下手。
公司成立,商业化却始终没有着落
2004 年,Cohen 与弟弟 Ross Cohen、企业家 Ashwin Navin 共同创立 BitTorrent 公司,并获得投资。次年,公司与美国电影协会(MPAA)达成协议,从官方网站和搜索入口移除指向盗版内容的链接——即便如此,如何为一个已经被公众等同于"盗版工具"的协议找到盈利模式,始终是悬而未决的难题。
此后 14 年间,公司几乎尝试了能想到的所有方向:面向独立创作者的大文件销售平台、对标 iTunes 的正版影音商店(2007 年上线,不到一年即关停)、给 µTorrent 客户端插入广告、推出付费高级版、文件同步产品 BitTorrent Sync,以及面向企业的大规模数据分发方案。每一步都顺应了当时的市场趋势,却始终没能沉淀为一门可持续的生意。2018 年,区块链公司 TRON 收购 BitTorrent 公司,试图借助 µTorrent 过亿用户推广其加密代币,这标志着 BitTorrent 作为独立公司历史的终结,Cohen 也在此后不久离开。
一个有趣的旁支是 BitTorrent 与 Spotify 的交集:2006 年 BitTorrent 收购了当时最主流的客户端 µTorrent,而 µTorrent 此前曾短暂被 Spotify 收购——目的并非软件本身,而是为了引入其开发者 Ludvig Strigeus 加入 Spotify 担任核心工程师。虽然 Strigeus 本人并未直接采用 BitTorrent 协议,但 Spotify 早期采用的正是一套原理相近的混合流媒体架构:结合类似追踪器的机制与本地缓存、节点间传输,把一部分播放流量分摊到用户之间,由此实现了当时颇为领先的低延迟播放效果。Spotify 早期相当比例的流量并非直接来自其服务器,而是来自缓存与点对点网络,直到 2014 年随着存储和数据中心成本下降才彻底转向中心化架构。
2007 至 2008 年间,九寸钉乐队(Nine Inch Nails)主唱 Trent Reznor 在脱离原唱片公司后,选择通过 BitTorrent 和 The Pirate Bay 以知识共享(Creative Commons)协议免费发布专辑《Ghosts I–IV》和《The Slip》,并附上分轨文件供乐迷重新混音。乐队公开表示,这是主动拥抱新技术而非与之对抗的选择,这次发布也一度成为 The Pirate Bay 上下载量最高的内容之一。
协议悄悄渗透进基础设施
即便公司层面始终没能盈利,协议本身却成为了互联网基础设施的一部分。暴雪娱乐(Blizzard Entertainment)在《魔兽世界》等游戏的下载器中集成了定制版 BitTorrent 客户端,让数百万玩家能同时获取补丁而不压垮官方服务器;Facebook 用它在全球数据中心之间分发软件构建包,Twitter 采用了类似做法管理生产环境更新;亚马逊云服务(AWS)也曾长期支持用户通过 BitTorrent 下载公开的 S3 存储文件以节省带宽。协议的开放性成就了它的普及,却也让 BitTorrent 公司自身无法从中收取任何费用——别人可以免费使用同一套开源技术,公司却难以为此定价。
除商业与娱乐场景外,大量开源项目和 Linux 发行版至今仍提供官方种子文件供下载,互联网档案馆(Internet Archive)也仍在通过 BitTorrent 分发其庞大的媒体馆藏;伯克利大学的 BOINC 分布式计算平台、佛罗里达州立大学的科研数据集共享,乃至英国政府发布大型公开支出数据时,都曾借助该协议减轻服务器压力。2008 年,加拿大广播公司(CBC)甚至成为北美首批发布官方种子文件的主流广播机构之一。
公司为何没能成功
原文作者认为,BitTorrent 公司的问题不在于缺乏眼光,而在于缺乏坚持:创始团队在创作者平台、正版商店、企业服务、加密货币之间反复切换,从未在一个方向上投入足够久的时间。相比之下,建立在相近技术原理之上的 Spotify 之所以成功,恰恰是因为保持了战略上的专注。领导层的动荡也起到了推波助澜的作用——据 Cohen 事后回忆,新一任联席 CEO 在短期内大举支出,消耗的资金远超公司实际创收能力,他将此归结为"投资人问题",而非技术或业务本身的问题。
作者进一步指出,Cohen 本人直接、字面化的沟通风格,在工程语境下是优势,却与依赖游说、姿态和话语权博弈的投资与管理文化格格不入。这种性格与文化之间的错位,或许是这家公司持续存在却始终不易被外界察觉的深层症结。
协议留下的遗产
尽管 BitTorrent 公司最终被并入加密货币生态、未能独立存续,协议本身并未随之消失。它至今仍是获取绝对本地化、不依赖任何平台的文件的实用方式:流媒体平台可能随时因版权或商业原因下架内容,数字商店也曾发生过用户已购内容被远程撤回的情况,而种子文件一旦下载完成,便脱离了任何单一公司的控制。也正因如此,BitTorrent 逐渐演变成一套非正式的数字保存(digital preservation)体系,持续保存着那些在版权环境或平台变迁中随时可能消失的音乐、影像与数据——协议本身的生命力,最终超过了那家以它命名的公司。
本文核心事实与观点整理自 Benjamin Zeman 发表于 XDA Developers 的文章 The story of Bram Cohen and the BitTorrent protocol。