- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
BT原理分析
BT原理分析BT全名为BitTorrent,是一个p2p软件,你在下载download的同时,也在为其他用户提供上传upload,因为大家是“互相帮助”,所以不会随着用户数的增加而降低下载速度。 下面是一般用ftp,http等分享流程:
下面是用BitTorrent分享的流程:
其实跟ED也十分相似,ED跟BT不同的地方有: ED--要连上一个固定server BT--没有固定server,只要分享者制作出该分享档案的.torrent档公布出来便可 ED--分享的人越多速度越快? BT--种子seed越多速度越快 ED--世界性的分享 BT--团体性的分享(可做到速度保证) ED--知道在分享者的user name 速度 BT--没显示使用者/分享者名字 比起其它的P2P软件,BT有个独特的地方,它存在一个中间的WEB服务器,就是我们在发布的时所填写的announce。 该服务器提供了发布的统一管理,不像其它P2P软件那样到处去找哪些非常不稳定的个人服务器,相对起来让人安心的多。 该WEB服务器更大的作用是内网用户可以做 Send(下面会说明原理),这是其它软件无法做到的,但不好的地方是announce当机的时候就无法下载了。要知道P2P下载关键是要人气要高,announce停一下就搞到人气全没有了。 .torrent 的作用 大家都知道我们要用BT下载 ,就要先下载一个.torrent文件,这个文件到底有甚么呢: 首先是 announce 纪录了发布服务器的位置,让BT知道是那个WEB服务器发布的,然后是一些文件信息,文件名,目录名,长度等等,最后是片段长度,和片段的 Sha1 校验码,(BT为了事现续传和文件校验,就把文件分成若干个片段),大家可以用写字板打看torrent文件看看,就是知道个大概,后面的乱码是片段 Sha1 校验码。 开始-续传的实现 sha校验 BT 打开一个 torrent文件后,先要你选择文件保存那里。然后判断文件不存在的话就建立新文件,存在的话就用 Sha1 校验码去校验文件---错误的就是还没下载的,这样就可以实现续传了,但128位校验,想不慢都不行 得到 peer 现在知道要下载甚么了,到那里下载呢?这就要寻找有谁提供上传了,这里BT是通过WEB服务器来实现的,首先BT会通过分析 torrent 来得到下面一串网址 :6969/announce?info_hash=%CDg%D4%19%AD%96%9D%93%03%DB%E4%FFXA%C6%5D%043%17Opeer_id=%00%00%00%00%00%00%00%00%00%00%00%00%A3E%E0%9BeB%90dport=6882uploadED=0downloadED=0leftvent=startEDhttp://BT:6969/announce 是发布服务器的地址 info_hash 是torrent文件中的 info 部分的Sha校验码,WEB通过它在发布列表找到对应的纪录peer_id 是自身的标识,它是12个0和当前时间+全球的唯一标识码(GUID)的Sha校验的前八位,共20位 port 你提供上传的 port IP 你的ip地址,没有的话服务器会自己找到 uploadED downloadED 你上传和下载了多少,服务器可以用它来做流量分析 left 你还要下载多少个字节 event 状态,告诉服务器你是准备开始下载,还是停止,还是下载完成了 以上这个操作默认 5 分钟做一次,或由服务器设定 服务器会做甚么 服务器中有个一个 track 程序来管理这些请求,得到这一串代码后就会用 info_hash 来查找列表,找到你就可以下载,找不到就对不起啦。接着它会反连(NatCheck)你的 IP 和 Port这样就可以知道你是内网用户还是共网用户(如果你是内网用户,它是连不通的,因为它会连到你的服务器上,你的服务器当然没有这个端口啦),然后服务器返回现在正在下载这个文件的所有公网用户的IP和port,就像是:d8:intervali1800e5eersld2:ip14:xxx.xxx.xx.xxx7eerid20:00180531904b7e3abdd74orti6881eeee interval 1800 是告诉 BT 隔多少秒来查询一次这里是 30 分钟 (有点过分了),最后如果你是公网用户它会把你提交的 IP 和 Port 放到info_hash 对应的列表中,这样其它人就可以找到你 下载 得到这些 peer IP后,BT就可以找到对应的IP下载了,BT
您可能关注的文档
- 2014届高考地理一轮复习方案第9章工业地域的形成与发展课件新人教版.ppt
- 2014年北京理工大学行政管理考研考研如何复习、状元复.pdf
- 2014届高考地理一轮复习方案第6章人口的变化课件新人教版.ppt
- 2014年教育学考研复习资料和辅导班选择的注意事项.doc
- 2014年高考生物真题分类解析汇编.doc
- A utoL ISP 语言在模具CAD 中的二次开发.pdf
- a8e3c西安建筑科技大学2012年硕士招生简章及专业目录.doc
- ABB i—BUS系统在智能住宅照明中的应用.pdf
- ABO血型不合引起胎儿流产22例夫妇的检测结果分析.doc
- ABB现场总线技术在攀成钢公司340连轧管机组中的应用.pdf
最近下载
- 4.1中国特色社会主义进入新时代课件(共46张PPT)高中思想政治统编版必修1(内嵌音频+视频).pptx VIP
- 抖音短视频创业合伙协议(二人合伙 一方运营 一方出镜)避坑版.docx
- 低压配电设计规范GB50054—2011.pptx VIP
- 2025国家消防安全知识竞赛题库及参考答案(通用版).docx VIP
- 卢崇汉第二届扶阳论坛讲稿.doc VIP
- BG-V3-D37-2012-0003 电气拆车报告.pdf VIP
- BG-V3-D36-2011-0001 按钮操作力测量报告-V2.docx VIP
- 大中型企业安全生产标准化管理体系要求.docx VIP
- BG-V3-D37-2012-0002 动作电流测量报告.doc VIP
- 高中思想政治统编版(部编版)必修1 中国特色社会主义4.1中国特色社会主义进入新时代 课件(19张ppt+1视频)(含音频+视频).pptx VIP
文档评论(0)