有人认为,云下载是一种故弄玄虚,因为在云计算这个概念被提出来前它就已经存在了,只是当时不这么提而已,我完全同意这种说法。那么,现在有了云计算的概念,我们还是从这个角度出发来定义一下:从提供服务的厂商来说,是通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的一个系统;而对普通用户来说,则是利用云端资源储存和下载文件的一种新方式,对自己上载的文件可以设定不同的权限与所有人或者朋友共享。相信这个技术普及后,大家完全可以抛弃硬盘、光盘和U盘等储存设备了,需要的时候随时随地高速下载。这里我们谈到了储存和下载,因为二者总是难于分开的,所以总是放在一起讨论。需要说明的是,本系列的前面几个专题,我是故意避免谈某个具体的软件的,而本专题比较特殊,离开具体软件谈技术,就无法说清楚。
因为写这篇博文,在网上偶然找到了自己1999年为《中国电脑教育报》写的一篇文章“文件下载工具大比拼”——我都忘记了自己还写过这么一篇文章的。开篇我是这样论述的:“坐在电脑跟前,玩什么?玩的就是软件。现在有了因特网,电脑玩家们获取软件变得异常容易!作者昨天才发布的软件,今天可能你就能得到并开始使用了,这在以前几乎是想都没有想过的事儿。因而对一个电脑玩家来说,上网的时候选用一个适合于自己的文件下载工具是非常自然的事儿。相信稍微有一点冲浪经验的人都不会在浏览器中直接点击文件链接进行下载,现在文件下载工具非常多,到底选用哪一个合适呢?”
试图找一些好的下载软件来应对当时的慢速网络,的确是不得已而为之。大家有没有经历过一个单位一百多号人,公用一个9600bps的猫的网络?其实在这种网络条件下,浏览网页是极其困难的。由于工作的需要必须浏览网络,只得屏蔽掉图片。有联网条件总比没有网络好,至少通往外海的电子邮件总是可以见缝插针地发送成功,这已经是一个革命性的变化了,因此即使算起来近10元一封的电子邮件,也还是有很多人愿意采用。记得当时为了下载IE4,用了3天3夜才下载完成——主要原因还在于,微软的服务器当时不支持断点续传。
其实,现在各位非常熟悉的万维网(World Wide Web)出现之前,网络上的信息分享和文件传输是另外一番景象。最开始的网络也就是为了满足共享文件的需要。因此,文件传输协议(FTP)于1985年10月应运而生,主要用于用户与服务器之间的文件双向传输。如果网上只有FTP,除非那个用户知道文件在FTP服务器中所在的详细路径,否则是很难找到什么信息的。1990年,加拿大麦吉尔大学计算机学院的师生开发出Archie。Archie能定期搜集并分析FTP服务器上的文件名信息,提供查找分布在各FTP服务器中的文件。虽然Archie搜集的信息资源不是目前的HTML文件,但和搜索引擎的基本工作方式是一样的:自动搜集信息资源、建立索引、提供检索服务。所以,Archie被公认为现代搜索引擎的鼻祖。1991年,明尼苏达大学的两名学生发明的了Gopher。在Gopher中所有信息都以层级形式存储,这在当时被认为是存储大量信息的最好方式之一。即使在HTTP协议诞生后很快受到了挑战,但就是因为这个原因,一直苦苦支撑到2002年6月,微软在其浏览器中彻底禁用了Gopher,才将之剔除历史舞台。万维网的真正发展是在微软与网景公司的浏览器之争之后才逐步强大起来的,几乎能替代历史上这些曾经显赫一时的所有网络协议。不过,FTP一直保留至今,许多专业网站提供的软件和数据文档还是通过这个协议来下载的。因此,通过浏览器的HTTP协议和FTP协议下载文件,一直伴随着互联网发展到现在。但可以预见的是,FTP很快也将过时了,因为它一直就是一个既不安全,也不友好,而且效率低下的协议。
不知道大家注意没有,如果不用专门的下载工具,仅通过浏览器的下载功能下载,如果一个文件没有下载完成而有超时了,再次下载的时候又是从头开始,这是一件非常耗时,而且令人讨厌的工作。于是,支持断点续传的软件相继诞生,比如Go!Zilla、GetRight和Net Vampire,其中Net Vampire以其极强的抗干扰性而倍受用户喜爱而风靡一时。但是,不管是Web,还是FTP,都是客户机/服务器模式,下载总会受到服务器的带宽限制,也就是说,下载的用户越多,每个用户下载的速度越慢,这是无法突破的物理限制。
1997年,一个俄国人编写的mass downloader出现,彻底改变了这一状况。我在1998年给《软件报》投了一篇小文章介绍这款软件的特色——多线程下载。具体来说,对于支持断点续传的服务器,将一个文件分成不同的块分别下载,下载完成后,在用户自己的机器上拼成一个完整的文件。这种方式增加下载速度是非常容易理解的,比如当前有100个用户同时连接服务器,服务器给每个连接分配的带宽应该是大致相等的,如果用户用10个线程去下载,那么其下载速度就提高了10倍,这种增速的方式是非常明显的。这里有一个小插曲:也不知道作者是如何查询到我的文章的,也许是看到了mass downloader这个关键词吧。他给我写了一封邮件,问我能否将这个内容翻译成英语。我照办了,没有想到他居然将我写的这个内容作为软件介绍放到他的软件下载主页中了。后来,效仿这种想法的软件很多,比如1998年上海交大的一名学生开发的网络蚂蚁(NetAnts)利用这个思想,有整合了其他许多有用的功能,将软件做得很实用,于是曾经成了中国人的下载最爱。看到网上评价“网络蚂蚁”是中国最具有原创性的软件,说是世界上第一款多点下载功能软件,我觉得有些可笑。当类似的软件开始繁荣而且大家都用这类软件下载的时候,给服务器增加了很大的负担,因此许多文件下载服务器禁用多线程下载的功能,设定只允许一个IP地址同时只有一个连接。道高一尺,魔高一丈。后来,伴随视频和音乐文件等流媒体下载的需要,出现了一款软件叫做影音传送带(曾经称网络传输带),不仅支持多线程下载,而且还支持MMS和RTSP(PNA)等协议。更厉害的是,该软件还支持多线程中设定不同的代理服务器,来绕过文件下载服务器对基于IP地址的线程限制,这款软件似乎是一个伟大的创举。
用户端与服务器端的文件下载博弈就此展开,但这并没有真正突破网络的物理限制,只是会用下载工具的人得到更多的益处而已。在不知不觉中,一场新的文件分享与下载革命开始了,那就是P2P下载模式。譬如BT、eDonkey及其衍生产品,下载原理是大同小异的:数据的传输不再通过服务器,而是网络用户之间直接传递数据的分布式下载模式。P2P服务器不再担任提供文件下载的角色,只负责将文件的基本信息(文件是如何分块的,各客户缺哪一块,哪一块已经下载完成了)在客户端之间中转。P2P下载客户软件也是相应通过获取服务器信息将文件被分成若干块,然后从已经得到那块信息的用户那里拷贝过来的,下载没有先后顺序,只要最后文件的所有块都被“填满”了,整个下载任务完成,也成了一个种子。这样,在下载的过程中,每个用户从别人那里得到信息,也将信息分享给别人,是否体现了一些“云”的理念呢?而且,还有一个好处是充分利用了各网络用户的上载带宽,因为大多数情况下,各用户网络的上载带宽都是富余的。这样导致的一个直接效果就是,下载的用户越多,下载速度反而越快,因为用户获取缺失块的概率更大了。有一些提供实时流媒体播放的公司,也相继加入了这一行列,比如PPS和PPTV等。这里,我们看到,技术发展到这一步,似乎离下载云越来越近了。但是,这还没有将云运用得淋漓尽致。
迅雷软件的发展,可能将云下载彻底往前推进了一大步,其中最大的特殊就是下载可混合包括HTTP、FTP、BT及eDonkey等多重网络协议。迅雷有自己的内容分发网络,对于某一个文件,迅雷通过其他用户下载时获取的数据,或者搜索引擎蜘蛛等方式,搜集到各协议的数据,保存在服务器端。在用户请求下载这个文件时,以类似Magnet链接的形式,从服务器直接获知多个协议的来源,有时也包括自己的迅雷客户端来源,从而提高下载速度。这同时也要求客户端在后台上传给其他迅雷客户端。不过由于数据上传未明显显示在界面上,一般用户也发现不了。虽在设置中用户可进行一定限制,但仍受到了用户的指责;而一般仅向迅雷客户端上传的行为,也受到其他P2P协议用户的“吸血”指责和屏蔽,称有违相互分享的P2P精神和公平原则,甚至出现了“反迅雷”的服务器端插件。但是,无论如何,迅雷软件让我们看到了云下载、云分享的曙光,也尝到了下载的快乐。
由于这些争端和潜在的安全性问题,有加上全球数据量的猛增,使得存储日益成为一个更独立的专业问题。越来越多的企业开始将存储作为单独的项目进行管理,带动了整个存储市场的快速发展。于是,许多重要的网络公司都相机宣布推出了自己的云储存服务,有时候也称网络硬盘。用户刚注册就能得到好几个G的存储空间,而且随着用户的使用,还会不断奖励更多的空间。云状存储系统中的所有设备对使用者来讲都是完全透明的,任何地方的任何一个经过授权的使用者都可以通过一根接入线缆与云存储连接,对云存储进行数据访问。使用者使用云存储,并不是使用某一个存储设备,而是使用整个云存储系统带来的一种数据访问服务。所以严格来讲,云存储不是存储,而是一种服务。我们必须明确的是,这些技术的产生,完全归功于网络速度的高速发展。这一切,如果没有快速的网络速度支撑,全部都是过往烟云。
如此快的网络下载速度,如此大的网络储存空间。相信有朝一日,作为普通用户,我们都不需要用自己掏钱去购买专门的存储设备了。我们曾经那么热切地下载,是为了预防在需要的时候我们却无法顺利地得到它。云时代,我们甚至不需要下载了,因为我们想要的资源都在云端,想要的时候随时可取。这就是云下载的逻辑。
如果觉得这个有趣,请关注我的下一篇:云时代,人云亦云(5):畅想云货币
转载本文请联系原作者获取授权,同时请注明本文来自赵斌科学网博客。
链接地址:https://wap.sciencenet.cn/blog-502444-741297.html?mobile=1
收藏