eMule协议的翻译

 

<script type="text/javascript"></script> <script></script>
飞鸟博客 首页 新随笔 联系 聚合 登录
  15 Posts :: 0 Stories :: 13315 Comments :: 8 Trackbacks
公告
deliver计划得到了越来越多朋友的关注!光靠email和blog很难让每个人真正参与进来,所以专门搭建了一个deliver社区,地址是 deliver.feelor.com,新社区的功能比较齐备,每个人有独立的bbs账号、博客和相册功能,请原来参与这个blog的团队人员把自己发布的网志转移到新社区。

访问量 <script type="text/javascript"></script> 11,099
随笔档案
文章档案
阅读排行
评论排行榜
最近更新 聚合
Deliver定位于一个性能优先的通用p2p分发引擎。一份完善的p2p分发协议是整个系统的基础。我们的出发点是首先研究现有的p2p分发引擎的协议。
这一段是我们会翻译eMule的协议,由于时间关系,协议会分块翻译,然后贴出来。
eMule协议,版本1.0
目录
 
1         简介
1.1    目的和范围
eMule是一个在eDonkey协议基础上建立起来的文件共享系统。这篇文档描述了eMule的网络行为,对基本的术语进行了解释,有助于大家理解协议。这篇文档也提供了eMule网络协议的完整的规格书,在附录中包含了所有消息的格式。文档中的信息来源于开放源代码的eMule客户端[2]。以下介绍文档的目的是为读者提供一个整体的背景以便读者阅读和理解这篇文档。有关eMule的更深入信息可以在这里找到[3]。
 
1.2    概览
eMule网络由上百个eMule服务器和数以百万计的eMule客户端组成[1]。客户端为了得到网络服务必须连接到一个服务器,只要客户端在系统内,它到服务器的连接就一直打开。服务器提供一个集中的目录服务(类似于Napster),并且服务器不与其他服务器通讯。
 
每个eMule客户端都预先配置了一张服务器列表,和一个本地文件系统上的共享文件的列表。客户端用一条TCP连接连到eMule服务器,进行网络注册,获取请求的文件和可用的客户端的信息。eMule客户端还会使用上百条TCP连接与其他的客户端来上传和下载文件。
eMule客户端会为他每个共享文件的维护一个上传队列。需要下载的客户端加入到这个队列的底部,然后逐渐向顶部移动,直到他到达队列顶部,然后开始下载文件。一个客户端可以从多个其它客户端获取不同的数据片来下载同一个文件。客户端也可以上传多一个文件的多个数据块,即使这个文件还没有下载完成。最终,eMule拓展了eDonkey的能力,eMule允许客户端之间交换服务器,其他客户端和共享文件的信息。注意客户端以及服务器的通信都是基于TCP的。服务器用一个内部的数据库储存客户端和共享文件的信息。eMule服务器不存储任何文件,它只充当一个集中的索引来存储文件的位置。服务器还有一个附加的功能,桥接那些在防火墙之后不能接 受连接的客户端,不过这个功能正被逐渐地淘汰掉,因为桥接工给服务器增加了相当多的负载。eMule用UDP增强了客户端对服务器和其他客户端的连接能力。客户端发送和接收UDP消息的能力对它正确的完成日常操作并不是必需的,它应该能够正确的工作即使防火墙阻止UDP消息的发送和接收。
 
待续.......

 

翻译可能有不妥的地方,大家可以一起来讨论和修改。
posted on 2005-11-10 15:08 p2p分发引擎 阅读(10653)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值