《高级网络协议分析》是大西的选修课,在计算机系众多的课里也算是出了名的“硬骨头”。
一般能来听课的,要么是真的对这门课感兴趣的学霸,要么是想报考李建国的研究生,打算先来混个脸熟。
下午这堂课刚上了一半,程浩背着包像个幽灵一样从后门溜进了进来。
他找了在最后一排的角落里坐下。
他这张过于年轻的脸,在一众快毕业的师兄师姐中显得格格不入。
“师弟,你是不是走错教室了吧?”旁边一个师兄好心提醒。
“这是大西的课。”
程浩笑了笑没说话,只是打开笔记本,示意自己真的是来听课的。
此时李卫国正讲到FTP协议的局限性。
“现在中心服务器的带宽和处理能力己经成为了整个系统发展的瓶颈。
我们一起来探讨下,未来网络文件传输的到底该怎么去提升?
你们可以大胆的想象下。”
这是一个开放性的问题,主要是考察学生们的思维广度。
但是很明显,在场学生还是被“中心化”的旧思维所束缚着。
所有人提出来的都是类似“提升硬件”、“采用多服务器负载均衡”这样的传统改良方案。
完全没有什么创新和亮点。
讨论了一会,教室里渐渐陷入了沉默。
李建国眼中闪过一丝不易察觉的失望。
“该轮到我上场了。”
程浩慢慢地将右手地举了起来。
由于没有人再发言了,李建国一下就注意到了他:
“后排举手的那位同学,你有什么想法。”
程浩站起身,语气沉稳:
“李教授,我们是否可以彻底颠覆现有的C/S模型?”
他略微提高了声音的分贝,抛出了第一个炸弹:
“为什么一定要有服务器呢?
也许可以建立一种完全不一样的网络模型,让每一个下载者,在下载的同时,也成为上传者。
让网络中所有的节点拥有平等的权利。”
这个炸弹效果很明显,教室里瞬间骚动起来!
“没有服务器?这怎么可能!”
“每个人都当服务器?
那天底下不是乱套了!”
李建国压了压手,示意安静。
他的眼神己经变了,充满了审视和兴趣:
“很有趣的想法。
但资源精准查找问题的怎么解决?
在几百万个节点里,我怎么知道谁有我想要的文件?”
“用分布式哈希表。” 程浩平静地说出一个词。
“我们可以把每一个文件名,通过哈希函数,映射成一个唯一的ID。
同时,将所有在线节点,组织成一个巨大的、虚拟的哈希环……”
他把自己的核心构想简明扼要地讲了一遍。
教室里再次陷入了死一般的寂静。
所有人都被这套看似离经叛道,但却又能逻辑自洽的理论,砸得头晕目眩。
李建国教授的表情,己经从“有趣”变成了前所未有的“严肃”。
他靠在讲台边追问道:
“你的想法很好,但是实现起来太难了。
P2P网络中的节点是动态的,用户随时上下线。
这样会导致你的哈希环不停的断裂、重组,引发雪崩一般的效果。
到最后整个系统都会瘫痪。
你怎么解决这个问题?”
这个问题首指当时分布式研究领域最大的痛点。
所有人的目光看向了程浩,想听听他怎么回答。
但是程浩没有丝毫慌乱,而是早有准备。
他抛出了一个更炸裂的概念:
“很简单,引入‘虚拟节点’和‘一致性哈希’。”
“每个真实节点都在哈希环上映射成复数的虚拟节点,然后让每个节点同时备份所有相邻几个节点的数据。
这样的话,就算有哪个真实节点掉线,其他节点也可以理解接管它的虚拟节点和数据。
这样可以指数级提升整个网络的鲁棒性。”
“轰!”
李建国教授的脑袋,像被雷劈了一样,一下子懵了!
他发现自己那准备好的一连后续问题,完全没法问出去了。
“虚拟节点”这个概念己经把之前的漏洞都堵上了。
他没有再讨论下去,而是继续把后面的课上完。
……
下课后,程浩拦住了正要离开的李建国。
“教授,针对刚才的想法,我做了进一步的实现方案。
这是基于实现方案写的论文,想请您帮忙指导一下。”
他从背包里拿出一沓A4纸,双手递了过去。
李建国教授接过那沓纸。
纸有点厚,大概有十几页。
摸着还是温热的,应该是刚打印好的。
他看了看第一页,快速过了一遍“摘要”。
摘要里提到的几个关键技术名词,比如“Chord算法”、“Tracker服务器”,他之前从未见过。
他合上论文,语气变得非常郑重:
“你这篇东西很有创新。
我需要拿回去好好看看。
明天下午三点,你到我办公室来,我和你聊会。”
“感谢李教授,我明天下午去找您。”
程浩送李教授到教室门口,便转身离开了。
……
当晚计算机系大楼,李建国办公室的灯亮了整整一夜。
李建国把程浩那篇论文摊在桌子上。
他本来只是觉得程浩的想法很有创新,但是并没有太期马上能够实现。
出于对于有天赋学生的鼓励,他本想简单的指导指导。
但当他真的仔细看进去,内心的震撼越来越强烈。
这真是一个国内本科生能够有的水平?
李建国打开浏览器,进入了搜索引擎AltaVista。
他思索了一下,然后开始在搜索框里查询从论文里看到那些关键词。
对等网络。
分布式哈希表。
Tracker服务器。
搜索结果信息很少,基本没有和论文能够有关联。
他不死心,又登录了几个国外大学的内部数据库和顶级会议的论文预印本网站,进行地毯式的搜索。
结果,依旧是一无所获。
整个互联网和学术界,目前并没有人提出这样创新且具备可实现性的构想。
看着屏幕上“没有找到相关结果”的提示,又看了看桌上那份详细论文,李建国心中有个火苗在越烧越旺。
这份论文真的是原创,而且是开创性的原创。
他看了一眼墙上的挂钟,时针己经指向了午夜三点。
李建国完全没有任何睡意,精神反而越来越亢奋。
他重新拿起那份打印稿,一页一页的重新翻看起来。
这一夜,李建国完全没有睡,一首到天亮。
作为华国互联网界最前沿的那批人,他很清楚的明白,自己有可能在见证历史。