解析eMule上传下载中的速度问题

来源: 作者:bRCdwWy Blog 2007-12-11 出处:pcdog.com

防火墙  
上一页 1 2 3 下一页 
二、来源的查找方式

  上面说到的只是理论过程,对于一个用户来说,获得来源的过程是多样的。由于获得来源是一个主动的过程,我们只能拿主动下载为例说明了。

  1、本服务器查询

  对于任何性质的用户,当你开始下载一个文件的时候,首先是向你所登陆的服务器提出源查找请求,服务器会根据你的请求查找登陆用户中是否有你需要的源,如果有,就会替你牵线搭桥,同时,你还会向所有服务器列表中的服务器发出源查找请求,同样的,其他服务器也会替你找到需要的源。

  通过这种方式找到的源,在你的EM里显示为:ED2K Server。

  2、通过用户来查询

  当你找到一批用户以后,另一种查找源的机制开始运作了,那就是“来源交换”。你刚开始下载,不可能找到非常多的来源,而你找到的这些来源,有的已经下载了很久,在他的来源列表中,会有许多来源是你没有的,EM会向这个用户发出交换来源的请求,这个用户会把自己的“客户”介绍给你。通过这种方式找到的来源,在你的EM里显示为:来源交换(或Souce Exchange)。

  如果你列表中的用户数量比较少,EM默认向所有用户发出请求,如果比较多,EM只是随机的抽取部分用户发出请求。现在,打开用户列表,你会发现这种方式找到的用户数量已经占了大多数,这样应该可以减少不少服务器的负担。

  3、被动方式

  首先,这并不是一种新的源查找方式,只是在特定方式下的一种工作方式,而这种方式只发生在HighID与LowID之间,而且,二者同时在下载一个文件,且都没有全档。

  从前面可以看到,在主动下载的时候,位于S1服务器的HighID(A)不能连接到位于S2服务器的LowID(B),而B却可以连接到A,这样就产生了一个矛盾,二者之间的通讯变成了单向的,只能通过B来发出请求,向A索取资源,而A只能“被动”的知道B那里有没有自己需要的东西,从而进行下载。被动方式由此得来。

  这种方式一旦形成,在双方的EM里显示的,都是:被动方式(或Passive)。

  但是,我也同时发现,位于同一个服务器的两个用户也出现过这样的工作方式,这种情况的出现,很有可能是因为二者都在同时下载一个文件,而且没有全档,为了节省资源,而默认由LowID一方控制上传与下载,HighID一方被动参与造成的。
更多内容请看PCdog.com--电骡eMule专题
上一页 1 2 3 下一页 
上一篇:不装软件邮箱也能变网络硬盘
下一篇:用SuperBot把网站搬回家