搭建自己的BT下载平台服务器
【原理基础】
BT(Bit Torren比特流)是由国外的一名叫Bram Cohen的程序员开发的下载软件,可以说它是目前网络是非常流行的一个多点下载的P2P软件,它最显著的特点就是:下载的人越多,速度就越快。
对于一般下载来讲,是采用C/S模式,即将文件放在服务器上,客户端全部从服务下载,随着用户的不断增多,对带宽的要求也随之增多,用户过多就会造成瓶颈效应,有可能造成超负荷运转,从而造成带宽资源被占尽或服务器出现死机的现象,所以很多服务器都会限制下载速度,但同时给客户下载带来许多不便。
但对于BT而言就不同,下载的人越多,速度就越快。BT首先会在上传者端把一个文件分成N个部分,甲在服务器上随机下载了第A个部分,乙在服务器上随机下载了第B个部分,这样甲的BT就会根据情况到乙的电脑上去拿乙已经下载的B部分,这要就减轻了服务端的负荷,也加快了用户(甲、乙)下载速度,效率也提高了,同样减少了地域之間的限制。而且客户端在下载时,它也在上传(就是其它用户正在你的计算机里下栽所需要的某个部分),所以在享受别人提供下载的同时,你也在做贡献。正常下载与BT下载拓扑如图:
图1-1 普通下载
图1-2 BT下载
【实验环境】
工作平台:VMware workstation虚拟机
服务平台:Windows 2003操作系统(MyBT服务器)
BT服务器IP: 192.168.1.10 gateway:192.168.1.1 dns:192.168.1.1
【跟我操作】
1、 安装与配置BT服务器
双击运行MyBT安装程序,在MyBT服务器安装向导中直接单击下一步,直至完成。如图1-3所示
图1-3 安装MyBT程序
完成安装后,运行MyBT程序,查看服务器管理窗口,它包括管理服务、目录设置、选项设置、系统设置4个标签。如图1-4所示
图1-4 MyBT服务器管理窗口
管理服务。如果单击“安装后台服务”按钮,就可以在后台自动运行MyBT服务,而无须每次启动系统后手工运行程序。要安装服务器,只需要单击“一键安装服务器”(如图1-4所示),系统就会首先清除旧的数据库文件,然后自动启动后台服务。初次使用时需要创建管理员账号和密码。如图1-5、1-6所示
图1-5 创建管理员
图1-6 成功创建管理员
目录设置。MyBT服务默认安装在C盘根目录下,在MyBT根目录下Upload文件夹作为BT发布主目录和上传种子目录,为了系统安全建议更改目录或路径。在MyBT服务程序对话框中单击“目录设置”标签,可以在此标签设置上传种子目录、服务端口、下载分类等。如图1-7所示
图1-7 目录设置
选项设置。这里可以设置WEB页面和用户连接的一些选项."!!"为建议不设置的项目;“链表”是指*.torrent文件。如果设置为非零值,即代表允许。如图1-8所示
图1-8 选项设置
Torrent文件为BT种文件,它包含了BT下载所必需的信息,客户端有了这个文件才能下载,它通常很小,只有几十KB。
系统设置。在此选项设置中只可以为注册用户和游客用户设置不同的权限,如上传、下载、编辑、管理等权限。如图1-9所示
图1-9 系统设置
客户端测试。完成以上设置后,在浏览器中输入BT服务器的地址http://192.168.1.10:6969便可访问到BT服务器。默认有两个测试文件,单击“下载”便 可下载此测试文件。如图1-10所示
如图1-10 下载测试文件
2、 制作BT种子
BT服务器搭建好,我们可以自己制作BT种子,在这里用比特彗星制作。双击运行比特彗星安装程序,在安装向导,直接单击下一步至安装完成。如图1-11所示
图1-11 比特彗星安装向导
完成比特彗星安装后,运行此程序,单击“文件”菜单,选择“制作Torrent文件”.如图1-12所示
图1-12 制作BT种子
选择源文件。在制作Torrent文件对话框中,选择需要制作BT种的源文件,然后在分块大小中为此源文件选择合适大小分块,默认选择自动调整即可。如图1-13所示
图1-13 选择源文件
下在制作BT种子文件。如图1-14所示
图1-14 制作种子文件
注册新用户。完成种子制作后,浏览BT站点,单击注册菜单,注册一个新用户。如图1-15所示
图1-15 注册新用户
上传种子。成功注册账号后,在首页选择上传菜单,上传刚制作的BT种子。如图1-16所示
图1-16 上传种子
下载种子文件。成功上传种子后,用另一个客户端浏览BT站点,单击刚上传的种了选择下载,此时迅雷成功下载此种子。如图1-17所示
图1-17 下载种子
成功下载源文件视频。下载种子文件后,迅雷成功连接到目标地址,下载源文件视频。如图1-18所示
图1-18 成功解析到源文件
这样,我们的BT下载平台服务就搭建完成了。我们主要是为了熟悉BT下载之所以能够在“下载的人越多速度越快”的状态下工作的原理。
搭建自己的BT下载平台服务器的更多相关文章
- 【自己的下载平台】搭建aria2网站
前言 本文章将带你搭建一个自己的服务器下载平台:aria2,它的用途是什么? 下载用途 百度网盘 普通文件 迅雷种子 等等 准备工具 服务器连接软件xshell或者putty 一台服务器 安装宝塔面板 ...
- 常用下载方式的区别-BT下载、磁力链接、电驴
出处:https://www.jianshu.com/p/72b7a64e5be1 打开 115 离线下载的窗口,看到支持这么多种链接,你都清楚他们是什么原理嘛?接下来我们一个一个说. 一.HTTP( ...
- centos6.4搭建knowlededgeroot-1.0.4知识库平台
知识库平台选择 http://www.oschina.net/project/tag/320/pkm 最近接到一个任务,要求搭建一个用于部门内部业务知识规范管理和共享的平台,目的是把部门内的FAQ知识 ...
- 3.微信公众号开发:配置与微信公众平台服务器交互的URL接口地址
微信开发基本原理: 1.首先有3个对象 分别是微信用户端 微信公众平台服务器 开发者服务器(也就是放自己代码的服务器) 三者间互相交互 2.微信公众平台服务器 充当中间者角色 (以被动回复消息为例) ...
- BT下载的原理 和疑问
我心中有几个疑问,同时也搜索了点素材,肯能对理解问题有帮助. BT下载,即P2P下载,是一种不需要中心化服务器的下载,实现原理是,每个客户端在下载的时候也作为服务器. 我的疑问是,P2P各个节点是如何 ...
- 开源知识库管理系统选型 centos6.4 搭建knowlededgeroot-1.0.4知识库平台
开源知识库管理系统选型,除了使用wiki外,还有下面可选: http://www.knowledgebase-script.com/ https://github.com/lordlamer/know ...
- Appium 从 0 到 1 搭建移动 App 功能自动化测试平台 (1):模拟器中运行 iOS 应用
转载:https://testerhome.com/topics/4960 在上一篇文章中,我对本系列教程的项目背景进行了介绍,并对自动化测试平台的建设进行了规划. 在本文中,我将在已准备就绪的iOS ...
- 手把手教你用SonarQube+Jenkins搭建--前端项目--代码质量管理平台 (Window系统)
前言 网上教程大多介绍的是Linux系统下SonarQube+Jenkins如何使用,这是因为这两款软件一般都是部署在服务器上,而大多数服务器,采用的都是Linux系统.大多数服务器用Linux的原因 ...
- 干货 | 手把手教你搭建一套OpenStack云平台
1 前言 今天我们为一位朋友搭建一套OpenStack云平台. 我们使用Kolla部署stein版本的OpenStack云平台. kolla是用于自动化部署OpenStack的一个项目,它基于dock ...
随机推荐
- stock 当天盘势
看盘 (一)怎样看大盘当天的指数收阴.收阳 投资者每天都看大盘,但多数人看不准大盘.大盘到底当天是收阴,还是收阳?我通过很长时间的记录.验证,发现大盘在正常时间内,收阴.收阳是有规律的.我判断的准确率 ...
- 1.3 selenium IDE录制脚本转换为其他代码格式
1.在seleniumIDE录制框中点击Options->options... 在Enable experimental features前打对勾,点击确定.
- 页面新宠图片格式WebP
WebP格式,谷歌(google)开发的一种旨在加快图片加载速度的图片格式.图片压缩体积大约只有JPEG的2/3,并能节省大量的服务器带宽资源和数据空间.Facebook Ebay等知名网站已经开始测 ...
- 【转】SSL/TLS/WTLS协议原理
1 SSL(Secure Socket Layer)是netscape公司设计的主要用于web的安全传输协议.这种协议在WEB上获得了广泛的应用.2 IETF(www.ietf.org )将SSL作了 ...
- eclipse的插件
jode_1.0.6(Java Optimize and Decompile Environment ) 非常好用的Eeclipse的反编译插件,随时点击,随时查看源代码,但他的官方下载的都是核心源码 ...
- c#获取新浪微博登录cookie
用新浪微博api收集数据有诸多限制,每小时只能调用官方api函数150次,认证也很麻烦.因此想通过爬网页的方式来收集数据.访问新浪微博用户网页首先需要登录,登录获取cookie后可直接获取网页数据,无 ...
- stm32 RAM分配及占有(转)
源:http://blog.chinaunix.net/uid-26921272-id-4550126.html 一个小的项目,在测试时间和产品量稍微大一些之后,出现了一些莫名其妙的非逻辑错误的Bug ...
- php new self 详解(转)
self points to the class in which it is written. So, if your getInstance method is in a class name M ...
- CCS设计手段——相对定位
1.认识相对定位 相对定位就是让元素相对自己原来的位置进行位置调整. 2.相对定位的本质特性 不脱标,老家留坑,形影分离. 3.用途 ①微调位置 ②做绝对定位的参考,子绝父相 4.相对定位的定位置 相 ...
- openstack controller ha测试环境搭建记录(七)——配置glance
在所有集群安装glance软件:yum install -y openstack-glance python-glanceclient 在任一节点创建glance用户:mysql -u root -p ...