kad网络原理(电驴kad网络连接不上的步骤)

kad网络原理(电驴kad网络连接不上的步骤)

注:泰奥多尔.居丹《肯特海滩》该画描绘的是在狂风暴雨的海浪中即将倾覆的帆船,人们纷纷逃离帆船,乘上救生船逃命,狂涛汹涌,人们在挣扎。在黑白两色的对比中,表达的是生命与意志的不可战胜。

今天谈点轻松的话题,之直代码的东西比较多,可能读起来比较枯燥。

一、下载方式:FTP、HTTP、HTTPS、BT、Magnet

1、FTP/FTPS(FileTransferProtocol,文件传输协议)

FTP 的独特的优势同时也是与其它客户服务器程序最大的不同点就在于它在两台通信的主机之间使用了两条 TCP 连接,一条是数据连接,用于数据传送;另一条是控制连接,用于传送控制信息(命令和响应),这种将命令和数据分开传送的思想大大提高了 FTP 的效率。

FTPS是FTP标准的扩展,添加了安全套接层(SSL)以及其继任者传输层安全性协议(TLS)的支持。

2、HTTP/HTTPS

同FTP一样,工作在网络协议的最高层。这个大家天天在使用,只要开网页其实就是一个下载过程。

HTTPS是在HTTP的基础之上添加了安全特性。

4、磁力链Magnet协议,也就是哈希分布。BT下载服务是需要一个tracker服务器来储存BT种子文件,但是Magnet URI协议是不一定需要tracker服务器的,原理类似于电驴,但不再像电驴那样依赖tracker,之前受限于运营商封杀电驴,导致无法下载。

magnet:?xt=urn:btih:758D3F954EA37A471138E08FB89D94A8A4785702

5、SSH文件传输协议

SSH文件传输协议(缩写:SFTP)可用于传输文件并具有类似的用户命令集,但使用Secure Shell协议(SSH)传输文件。与FTP不同,它对命令和数据进行加密,防止密码和敏感信息通过网络公开传输。它无法与FTP兼容。在Linux下一般用scp这个命令来通过ssh传输文件。

scp username@servername:/path/filename /var/www/local_dir

二、下载工具

1、蚂蚁下载(NetAnts)

2、网际快车(FlashGet)

3、迅雷(Thunder)

4、BT(BitTorrent)

BT 是由美国的程序员布莱姆·科亨于2001年4月时发布,并于2001年7月2日时首次正式应用。BitTorrent 是用于对等文件共享(P2P)的通信协议,其用于通过因特网分发数据和电子文件。很多网友戏称为“变态下载”。

利用BitTorrent 可以将全世界所有的计算机和服务器整合成一个巨大的资源分享网络。用户既可以在这个网络中搜索到海量的优秀资源,又可以从网络中的多点同时下载需要的文件,以达到最佳的下载速度。

BitTorrent有以下特点:

(1)它是无中心服务器的对等网络系统。

(2)对等网络的每个用户端既是一个节点,也有服务器的功能。所以用户即可以下载文件也可以上传文件给别人。

(3)所以它叫用户群对用户群( peer-to-peer )模式。用户越多,下载同一文件的人越多,下载该文件的速度就越快。

5、eDonkey、eMule(电驴、电骡)曾经BT的挑战者

2000年,MetaMachine公司开发了一款名为“eDonkey”的软件,翻译过来就是“电驴”的意思——这才是真正意义上的电驴。

2002年,有个德国开发者不满足于eDonkey电驴的功能,开发出了支持eD2k协议的第三方开源客户端——eMule,也就是大家所说的电骡。电骡加入了大量eDonkey电驴不支持的新功能,特别是支持KAD网络,这可以说是让eMule彻底有别于eDonkey电驴的根本原因。

eDonkey电驴所使用的eDonkey网络,虽然也是基于P2P共享,但是仍然离不开中央服务器。一群人使用eDonkey电驴进行文件共享,必须要有中央服务器来作为通讯中心,为用户提供查找文件等服务。而KAD则是更彻底的P2P,只需要用户作为节点,用户之间能够直接连接,完全脱离了中央服务器。

KAD网络对于eD2k协议的意义非凡。在2004年,eDonkey电驴由于版权方面的控诉停止开发,eDonkey网络中的中央服务器成为了eDonkey电驴涉及盗版的证据。而开源的eMule电骡,一方面没有涉及商业活动,另一方面支持KAD网络,用户之间共享盗版可以推给是用户的自发行为,因此得以经受住版权商的压力巍然不动。

eDonkey电驴:电驴原版,商业软件,可通过eDonkey网络共享文件。

eDonkey网络:利用P2P技术构建的共享网络,但需要中央服务器建立连接。

eD2k:eDonkey网络所使用的协议,eDonkey网络所共享的文件会生成eD2k开头的链接。

eMule电骡:eDonkey电驴的第三方客户端,开源软件,除了支持eDonkey网络,还支持KAD网络。

KAD网络:更彻底的P2P共享网络,不需要中央服务器,和eDonkey网络互联,协议也是eD2k。

这里提一下中国的VeryCD电驴,已经被转型。 基本上是电驴的阉割版本外加一些人性的算计,没有更多的文字给到它。已经不运营维护。

6、磁力链(Magnet URI scheme)

随着 BT 下载在全世界的风靡,也诞生了海盗湾这样的巨头,它是一个由瑞典的民间反版权组织海盗署成立于 2003 年的网站,号称拥有世界最大的 BT 种子服务器,提供海量的资源下载,而这些资源大多都是盗版的。这引起了版权拥有方们的强烈不满,从此双方官司不断。俗话说,“打蛇打七寸”,于是 Tracker 服务器成为了版权组织打击的重点,他们的想法很明确,只要除掉了 Tracker,BT 下载就完了。于是从 2009 年开始,很多 BT 服务器被关,不仅很多种子无法找到, Tracker 服务器也断开解析工作,使得 BT 下载成为很大难题。BT技术升级到DHT 网络技术,可以在无 Tracker 服务器的情况下下载。

DHT技术有如下特点:

(1)磁力链接是基于文件内容的,属于统一资源名称,理论上每个文件都对应不同的 URI ,且不会重复。

(2)任何人都可以通过一个磁力链接来确保该链接指向的资源就是他想要的,而和得到该资源的方式无关,所以整个下载网络的可靠性提高了,因为每一个节点都是可以被替代的。

(3)Magnet URI 只是一个字符串,天然具有跨平台性,天然容易传播。

7、curl 和wget

cURL是一个多功能工具。它不仅可以下载网络内容,同时它也能做更多别的事情。技术支持库是:libcurl。这就意味着你可以基于 cURL 编写整个程序,允许你基于 libcurl 库中编写图形环境的下载程序,访问它所有的功能。cURL 想象成一个精简的命令行网页浏览器。它支持几乎你能想到的所有协议,可以交互访问几乎所有在线内容。唯一和浏览器不同的是,cURL 不会渲染接收到的相应信息。

wget

wget 是一个独立的程序,无需额外的资源库,更不会做其范畴之外的事情。

wget 是专业的直接下载程序,支持递归下载。同时,它也允许你下载网页中或是 FTP 目录中的任何内容。

wget 拥有智能的默认设置。它规定了很多在常规浏览器里的事物处理方式,比如 cookies 和重定向,这都不需要额外的配置。

wget有断点续传( -c )

由于这两者都是命令行工具,它们都被设计成可脚本化。wget 和 cURL 都可以写进你的 Bash 脚本 ,自动与新内容交互,下载所需内容。

三、看未来

从单线程到多线程;从持续下载到断点续传;从文件切割多路下载、边看边下再到文件分布式存储。随着5G的到来,这里面一定有新的机会出现。基于用户的隐私保护,完全可以形成一个去中心化的存储与下载网络。

1、Resilio Sync最大的优势在于其不需要第三方服务器,几乎不受存储空间和流量限制。由于Resilio Sync是一款采用 BitTorrent 协议的P2P同步工具,传输速度基本上只受用户网络带宽的制约,它可以支持多人同时同步,而且,越多人对文件夹进行同步,则同步速度越快。它支持多平台,可以通过密钥进行文件分享。虽然Resilio Sync在国内不能使用,便是类似的软件也有着自己的市场,毕竟需求在那里。

2、Syncthing是一个开源的文件同步客户端与服务器软件,采用Go语言编写。它可以在本地网络上的设备之间或通过Internet在远程设备之间同步文件,使用了其独有的对等自由块交换协议。源代码托管在GitHub上。(https://github.com/syncthing/syncthing)在发文之前7小时还有代码提交。

3、IPFS(InterPlanetary File System,星际文件系统)是一个旨在创建持久且分布式存储和共享文件的网络传输协议。它是一种内容可寻址的对等超媒体分发协议。在IPFS网络中的节点将构成一个分布式文件系统。它是一个开放源代码项目,自2014年开始由Protocol Labs在开源社区的帮助下发展。其最初由Juan Benet设计。

发表评论

登录后才能评论