bittorrent协议数据包分析与适宜路由器选型

关于bittorrent协议是大包应用还是小包应用,网上许多人都凭自身的经验有不同的看法,事实上,对于数据包的判断只需要简单的wireshark抓包就会得出结果。
在一个bittorrent上传的场合,上行速度约300m,使用软件qbittorrent4.5.2 进行了简短的抓包,得到结果如下:
小包 <512 byte 15133个
大包 24202 个
可见bittorrent是以大包为主,同时也有大量小包的一项协议,这一结论也是符合常识判断的。
在bt协议下,有两种p2p互联的方法,分别为tcp与μtp,后者基于udp,无论如何,bt是一种下载协议,为了最优化下载速率,下载协议所传输的数据包必然是大包,这也是上述抓包中大量大包的由来,而由于bt客户端会频繁地与不同peer及tracker进行握手连接,又会产生大量的小包,所以便产生了上述抓包结果。
谈完了数据包类型接下来是在使用过程中的路由器选型,由数据库的类型可以看到,bt协议因大包为主并不追求pps包转发率,因为其会与大量不同的peer相连接,要想其运行顺利在路由器中最重要的是并发连接数这一参数。
在cpu性能大量过剩的现今(以时兴的mt798x系列处理其为例,其内置hwnat最多加速65535个nat并发,在家用场景已经是一个极大的量了),影响并发连接数的主要因素为内容容量及系统优化。
路由器的内存容量为最大连接数的硬件限制,一般而言,在恰当的优化下,每128mb的内存容量可以容纳6w的并发连接数。主流品牌的企业级产品系统都能达到这一连接数水平。
另一至关重要的影响即为路由器系统的配置及优化,这个问题较为复杂。如一个j4125软路由,直接装个原版openwrt,不做其余配置,其可能在5000并发时cpu就满载耗尽,而中兴ac1200,不到百元却可以跑到3w并发数。
家庭级的硬路由能跑多少并发连接纯看运气,不论如何,主流的品牌哪怕是最便宜的产品一般不会低于3k的并发,软路由选用企业级的免费系统如panabit及ikuai似乎是个好选择,但其免费版产品也会默认限制可以达到的最大连接数。
另一个需要注意的点是运营商对并发连接数的限制,部分地区的运营商进行了该限制,这一限制是极其随机的,主要取决于所在地市的后台机房配置。

上一篇