山西历史上的名将:BT是什么,怎样建立自己的BT站点

来源:百度文库 编辑:高考问答 时间:2024/05/04 19:53:36

什么是BT?

  BitTorrent(中文全称比特流,简称BT,又称变态下载)是一个多点下载的P2P软件。不象FTP那样只有一个发送源,BT有多个发送点,当你在下载时,同时也在上传,使大家都处在同步传送的状态。
BT的工作原理?

  BT首先在上传者端把一个文件分成了多个部分,客户端甲在服务器随机下载了第N部分,客户端乙在服务器随机下载了第M部分。

  这样甲的BT就会根据情况到乙的电脑上去拿乙已经下载好的第M部分,乙的BT就会根据情况去到甲的电脑上去拿甲已经下载好的第N部分。
BT下载会比http、FTP快吗?
  从原理上来说,由于BT先进的下载方式减轻了服务器端的负荷,同时加快了客户端的下载速度。所以BT下载的人越多,速度越快。而传统的服务器下载方式,速度取决于你的带宽和服务器分给你的带宽。
什么叫种子?

BitTorrent适合于提供10M以上的文件下载,小的文件可集中于同一目录统一提供下载

  RMVB、AVI等类型的电影文件最适合通过BitTorrent方式共享,经一个多月的测试,对于600M以上电影,50K上传带宽(如ADSL)的服务器,同时提供下载的文件不要多于2个,100K上传带宽同时提供3、4个文件下载最合适,100K以上上传带宽可按此类推

A)
下载python(约8M)
http://www.python.org/ftp/python/2.3/Python-2.3a2.exe
安装到c:\python23

B)
安装BitTorrent服务器程序(约130k)
http://bitconjurer.org/BitTorrent/BitTorrent-3.1.zip
解压到c:\bittorrent-3.1

C)
在c:\bittorret-3.1目录建立三个批处理文件:

1.bat
c:\python23\python bttrack.py --port 6969 --dfile dstate

2.bat
c:\python23\python btmakemetafile.py c:\avi\demo.avi

http://myiporhostsname:6969/announce

3.bat
c:\python23\python btdownloadheadless.py --url

http://myiporhostsname/demo.avi.torrent --saveas c:\avi\demo.avi

D)
如果没有安装或运行WEB服务器,安装或运行WEB服务器

E)
假设本机的域名是demo.vip.com,WEB服务器目录是c:\httpd
要将c:\movies\thehours目录里的avi电影和字幕文件进行共享,执行如下步骤:

a.
执行1.bat

b.
将2.bat中的c:\avi\demo.avi改成c:\movies\thehours,将http://myiporhostsname/改成http://demo.vip.com/
执行2.bat

如果执行正常,应在c:\movies目录下生成thehours.torrent文件,将此文件拷到c:\httpd

c.
将3.bat中的http://myiporhostsname/demo.avi.tor...vi改成c:\movies
执行3.bat

如果执行正常,程序将读取文件,完成后显示percent done: 100.0的信息并不断刷新

执行完上述三步后你就可以发布你的共享文件,

http://demo.vip.com/thehours.torren...?馗粗葱?、3步

BitTorrent工作原理,BitTorrent分为tracker和client两部分。
以发布一个软件为实例:
先安装一个tracker服务器,此服务器需要相对稳定的为client提供服务。
然后将要发布的软件打包成一个,或多个文件。用<btmakemetafile>程序对该文件进行分析
btmakemetafile,会将该文件分成多个段和创建checksum信息以保证下载数据的正确性,
btmakemetafile,会创建一个包含tracker服务器信息,文件分段和checksum信息的,以.torrent
为扩展名的很小的文件,然后用<btdownloadheadless.py>程序发布第一个client, 每个client都
会和tracker建立连接,因为第一个client为起始client,所以他必须包含完整的文件。

现在你可以发布.torrent文件了,当二个人(client2)开始下载的时候,会和tracker服务器建立联系,
已取得已有client的信息(如client1),他会依照.torrent的文件划分规则开始向client1下载数据。
比如将发布的文件分为10段,这时他开始下在第一段,当client3下载的时候tracker会自动告诉他从
client2下载文件的第一段,而从client1下载文件的其他段,以次类推,每个client可以同时从其他
client那里下在他们已有的数据段,而下载的同时,也向其他client提供自己已下载的数据段,从而
不仅提高了大家的下载速度也减轻了第一个release者的带宽压力。