基于网络编码的BitTorrent内容分发系统研究

2012-04-29 00:44:03张旋
电脑知识与技术 2012年12期

张旋

摘要:分析了目前流行的BitTorrent系统的工作原理及存在的文件分块调度复杂、文件下载稳定性等问题,提出了在BitTorrent系统中采用网络编码解决这些问题的方法,证明使用网络编码技术可以增强系统的鲁棒性,降低系统调度算法的复杂性,并能有效地解决BitTorrent系统中由于“种子”退出造成的文件下载不完的问题。

关键词:随机网络编码;BitTorrent;P2P网络;内容分发系统

中图分类号:TP393文献标识码:A文章编号:1009-3044(2012)12-2737-03

Research on BitTorrent-like Content Distribution System Based on Network Coding

ZHANG Xuan

(Xian University of Technology, Xian 710048,China)

Abstract: In this paper, the operating principle and weaknesses such as complexity of scheduling blocks of the file and stability of the file downloading of the popular BitTorrent system are analyzed. A method to overcome these weaknesses with network coding is proposed. It is proved that network coding can improve the robustness of the system, decrease the complexity of scheduling algorithm of the system and is able to effectively handle extreme situations in which the seeding nodes quit the system and the file downloading is unable to complete.

Key words:random network coding; bit torrent; P2P network; content distribution system

BT的piece选择算法是基于局部结点集合做出的选择,因而可能并不是最优选择,导致同一文件的piece并不能完全均匀的分布在BT网络中,当种子结点或拥有稀缺piece的某些结点突然退出都会造成BT下载进行不下去,这就是常说的“最后一块下载不完”(last-piece)问题。下面提出的将网络编码应用于BT下载的思想可以有效地解决这个问题,同时采用网络编码的新系统还拥有BitTorrent所没有的其他众多优点。

本系统采用基于稀疏矩阵的随机线性网络编码,实现了编码、译码器,并将编、译码部分作为独立模块与现有的BitTorrent客户端进行集成,整个系统均采用C/C++实现。系统在12个结点组成的真实网络环境中运行,结点配置为CPU>=1.5GHz,内存>= 512MB,Linux操作系统。下面对实验结果进行分析。

4结束语

通过对当前流行的P2P内容分发系统BitTorrent进行分析,利用网络编码技术,实现了一种新的P2P下载系统,该系统具有更好的稳定性和可靠性,提高了结点下载的成功率;同时分析了网络编码应用于实际系统时存在的问题,降低网络编码的编译码算法复杂度,将是后续研究工作的重点。


登录APP查看全文