BitTorrent的影像流式传输模型研究
文章快速检索  
  高级检索
BitTorrent的影像流式传输模型研究
夏辉宇,孟令奎,娄书荣     
武汉大学 遥感信息工程学院,湖北 武汉 430079
摘要:从BitTorrent协议算法在遥感影像流式传输中的局限性入手,研究BitTorrent结构中影像流式传输的实现机制,并提出一种基于BitTorrent的影像流式传输模型。模型在利用追踪服务器进行资源定位的基础上,使用适合影像流传输的影像瓦片动态下载队列机制,并对瓦片块选择下载算法进行改进。通过模拟试验测试表明,模型在影像瓦片块选择算法参数K取0.8时性能最佳,在大量用户并发访问场景中具有良好的稳定性。此外,模型在控制网络平衡性方面也较同类方式有所改进。
关键词BitTorrent     流式传输     影像     对等网络    
Research on Spatial Image Streaming Model Based on BitTorrent
XIA Huiyu,MENG Lingkui,LOU Shurong     
College of Remote Sensing and Information Engineering,Wuhan University,Wuhan 430079,China
First author: XIA Huiyu(1985—),male,PhD candidate,majors in spatial information processing in distributed systems.E-mail: xiahuiyu@whu.edu.cn
Abstract:The limitations of the traditional BitTorrent protocol in providing spatial image streaming services are identified. The mechanism which support spatial image streaming in BitTorrent is described. A spatial image streaming model based on BitTorrent is also proposed. The model makes use of tracker in locating resources. Further,dynamic image tiles downloading queue which optimize image transmission is adopted in our model. Considering that the piece selection algorithms of the traditional BitTorrent protocol have many limitations in supporting image streaming,our approach gives image tiles different priorities firstly before they're requested. Then a parameter K to strike the balance between high priority tiles and low priority image tiles is used. Experimental results show that the model has the best performance when parameter K equals to 0.8 and maintains stable in the scenario of flash crowd. Also,the model gets improvement in controlling the workload balance of the network.
Key words: BitTorrent     streaming     spatial image     peer-to-peer    

1 引 言

影像数据的网络传输是实现数字地球、影像共享平台等应用的基础。目前,影像数据传输主要针对两类应用模式,一类应用是针对专业用户对影像进行存储及加工处理的模式,在这种模式中主要采用的是静态文件块方式传输影像;另一类应用则是为公共用户提供影像浏览及其他简单操作,这种模式主要采用交互式的基于多级影像金字塔的流式传输技术。Google Earth、World Wind等主流数字地球平台采用的都是影像流式传输技术将影像数据按条件实时、连续地传输至用户,大大提高了传输效率。然而,由于这些影像服务平台采用的都是集中式架构,需要不断扩充服务器集群规模以应对遥感数据量的快速增加以及用户规模的迅速增长,投资成本过高,能源耗费极大,同时带来了环境问题[1]。对等网络(P2P)技术的应用可以解决集中式架构所面临的瓶颈问题,充分利用客户端带宽资源进行传输,降低系统对服务器端性能需求。

P2P技术目前已成功应用于文件共享、流媒体传输等领域,并出现了一些成熟的P2P协议如BitTorrent[2]。此外,基于P2P技术的空间影像数据传输也引起了诸多学者关注。文献[3, 4]从遥感影像流与传统线性媒体流的不同入手,研究并设计了一种P2P环境下基于影像网格索引和节点分组的资源定位及选择策略。文献[5]在其设计的对等网络环境下地形数据传输机制中,提出了稀缺瓦片优先以及考虑带宽和可用时间的节点优选原则。文献[6]设计了基于P2P的三维场景漫游系统,以场景更新为依据研究P2P覆盖网中邻近节点的选择策略。然而从总体上来看,现有研究多是利用P2P技术原理,在理想环境中进行资源定位、节点选择算法的优化工作,而对现实网络中的flash crowd[7, 8]及free riding[9, 10]等情况考虑得不够充分,因此应用局限性较大。

作为第二代P2P网络协议的代表,BitTorrent协议采用激励机制、tit-for-tat等算法有效地解决了P2P网络中flash crowd和free riding等问题,实现了数据高效稳定的传输。而BitTorrent协议在视频传输[11, 12, 13]、分布式文件系统构建[14, 15]等领域的交叉应用研究也得到了蓬勃的发展。

2 BitTorrent协议在影像流式传输中的局限性 2.1 影像流式传输

影像流式传输技术在影像文件分级分块的基础上,实现数据的显示和下载同步进行。在用户下载其他影像块的同时,对已获取的部分影像块进行显示,用户不必等待全部影像文件下载完毕,即可浏览感兴趣区域内的遥感图像,缩短等待时间。在影像流式传输中,基本的传输单位被称为影像瓦片(tile),它是影像分级分块的最小单位,具有唯一的空间索引编码。在BitTorrent中,一个完整文件也是被分为大小相等的若干块进行传输,且每个分块都具有唯一的SHA1哈希编码。因此从数据角度来说,遥感影像流可在BitTorrent框架中实现传输。

用户根据需要请求不同层级范围的遥感影像进行浏览及其他操作,空间数据引擎通过计算用户浏览区域内的经纬度信息和影像瓦片空间索引间的对应关系,返回用户浏览区域内的瓦片集合。因此,伴随用户每一次视点的更新,会有不同的影像瓦片连续、实时的传输至客户端。在这种类型遥感影像的流式传输中,由于用户浏览平移(pan)、缩放(zoom)等行为的频繁性,会产生大量的数据请求,对用户而言,这些请求中往往只有部分是对其有价值的,图 1图 2分别从不同角度展示了用户行为产生的影像瓦片相对其实际需求的有用性。

图 1 平移操作产生的影像瓦片请求 Fig. 1 Tile requests created by Pan

图 2 缩放操作产生的影像瓦片请求 Fig. 2 Tile requests created by Zoom in

图 1中,背景网格表示经过了切片并建立索引后的影像数据,每个网格单元代表一块影像瓦片。Vi(i=1~7)表示用户以方向D平移过程中产生的视点矩形区域,每个区域所覆盖的网格即产生的影像瓦片数据。对用户来说,V7是本次操作的目标兴趣区域,而V2V6则是在操作过程中临时产生的区域(假设V1为用户上次操作的目标兴趣区域),因此V2V6对应的瓦片具有较低的请求优先级(LowPriority),而V7对应的瓦片具有较高的请求优先级(HighPriority)。定义Vi对应影像瓦片的集合为P[Vi],则P[V7]∈HighPriority,P[V2] ~ P[V6]∈LowPriority。

用户浏览遥感影像时习惯于先查看图像的整体信息,确定大的感兴趣区域之后再逐级放大以获取更多细节信息。如图 2所示,Vj(j=1~4)为影像逐级放大过程中产生的矩形视点区域,用户最终需要的影像细节信息包含在V4所在的影像金字塔层级中,V2V3则是在操作过程中临时产生的区域。定义Vj对应的影像瓦片集合为P[Vj],P[V4]∈HighPriority,P[V2]~P[V3]∈LowPriority。

定义影像瓦片的请求优先级在影像流式传输中具有重要的作用。由于优先级为HighPriority的影像瓦片处于用户当前视域内,为了使用户及时获取该区域内的信息,应当被优先下载;而LowPriority的瓦片处于用户当前视域之外,因此需要在HighPriority的瓦片传输完成之后下载。

2.2 BitTorrent在影像流式传输中的局限性

在BitTorrent协议中,文件被分为大小相等的数据块在对等节点(peer)中进行传输,下载相同文件的节点在追踪服务器的协助下自组织成一个独立的P2P覆盖网络,并在阻塞机制和分块选择算法的控制下实现数据块的协作下载。因此从数据分块角度来看,可以直接以影像瓦片作为基本传输单位在BitTorrent系统中进行传输,然而在实际应用中仍存在较大的局限性。首先,在BitTorrent中,当某个节点拥有共享文件的所有分块之后,该节点就成为种子节点(seed),为其他节点提供数据传输而自己不再请求下载数据。种子节点是BitTorrent系统的基本组件之一,在数据传输中具有重要的作用,而在遥感影像流式传输中,单个节点显然无法获取海量遥感影像全部分块,因此在BitTorrent中进行影像流传输,普通浏览下载节点无法成为种子节点。

其次,BitTorrent系统中节点端下载任务以文件所有分块全部传输完成作为结束条件,节点在下载初始化阶段会生成一个静态的下载任务队列,记录文件所有分块以及每个分块的完成状态。然而在遥感影像流式传输中,影像瓦片的下载任务队列是以用户行为为驱动进行动态变化的,队列中瓦片块加入的随机性较高,且重复出现的可能性较大。因此,原有BitTorrent协议中的静态任务队列机制无法满足流式传输任务的动态性要求。

最后,BitTorrent协议采用LRF算法选择数据块进行下载以防止热门资源冗余及冷门资源的缺失,同时保证节点间数据块的内容吸引度。但这种分块选择策略在遥感影像流式传输中存在很大的局限性:影像流式传输中高优先级的影像瓦片总是要比低优先级影像瓦片先行获取,然而在BitTorrent中数据块选择算法完全是基于其稀缺性而未考虑数据块的优先级,如果在遥感影像流式传输中沿用此算法,会造成用户无法及时获取当前感兴趣区内的影像,严重破坏系统服务质量。因此,实现二者的结合需要对BitTorrent协议数据块选择算法进行改造。

3 BTI-Stream系统 3.1 BTI-Stream模型概述

针对影像流式传输特点以及BitTorrent协议在影像流式传输中的局限性,本文设计了BTI-Stream(BitTorrent based image stream)模型实现基于BitTorrent的遥感影像流式传输,图 3描述了BTI-Stream的系统架构。

图 3 BTI-Stream系统架构 Fig. 3 System architecture of BTI-Stream

与BitTorrent系统结构类似,BTI-Stream也包括了3类组件:追踪服务器BTI-Tracker、种子节点BTI-Seed(图中S1S2)以及影像浏览下载节点BTI-Peer(图中P0P1P2Pn)。

BTI-Tracker负责系统中每个BTI-Peer的资源定位并维护各BTI-Peer的下载/上传状态。在接收BTI-Peer的请求后,BTI-Tracker返回包含一定数量其他BTI-Peer信息的列表。BTI-Tracker是BTI-Stream系统中唯一的集中式组件。

BTI-Peer是用户获取影像流的客户端节点,是BTI-Stream中最基本的单元,包括影像数据下载和显示以及为其他BTI-Peer提供资源服务两种功能。当一个新的BTI-Peer加入系统,首先向BTI-Tracker提交请求,得到授权并获得其他节点列表后,BTI-Peer便主动连接这些节点并逐个进行数据交换,从而开始其生命周期。

遥感影像流式传输的特点决定了在BTI-Stream中,BTI-Peer始终无法成为一个拥有全部影像资源的BTI-Seed。因此,在BTI-Stream中预先部署了多个BTI-Seed提供数据传输服务,通常它们是拥有全部遥感影像资源的数据服务器。

3.2 资源定位策略

BTI-Stream的资源定位策略采用BitTorrent协议中基于追踪服务器的全局节点记录以及随机节点返回机制。在已有的一些P2P环境下空间数据传输研究中,采用了将节点分组的方式定位资源[16]。资源节点分组是非结构化P2P网络中采用较多的资源定位策略,它根据P2P网络中节点兴趣或已下载的数据内容对其进行分组,以管理节点和资源间的对应关系信息[17 ,18],然而这种方式在空间数据资源定位中并非有效。由于空间影像请求是以用户的视点变化为驱动产生的,而用户需求的差异性决定了其视点变化具有随机性。即使处于同一地理区域的节点,缓存的影像瓦片也几乎不会呈现任何的地理位置相关性,用户属性与其请求影像区域之间无法建立清晰的对应关系,所以无法以此进行分组。而以单块影像瓦片或一定范围内瓦片集合为单位进行分组则会导致产生的分组太多且变动性较大,维护代价过高。

在BTI-Stream中,BTI-Tracker记录管理全局节点信息。BTI-Tracker为每个新加入的节点返回一个邻居节点列表,列表中所有元素是从全局节点中随机选择出来的,新加入节点接收列表后主动与其中的节点建立连接。需要注意的是,列表中元素除了随机选择的BTI-Peer节点以外,还应包括系统中的BTI-Seed节点,这是由于在随机选择的BTI-Peer节点所缓存的影像资源中,不一定涵盖所有的影像数据,因此需要加入BTI-Seed节点,以保证影像资源的完整性。BTI-Peer在整个生存期内不断与邻居节点交换have消息,每个have消息包括自己拥有了某块影像瓦片的信息,这样BTI-Peer就可以获取它所在的节点网络中所有瓦片资源的分布情况,进而根据需要请求数据。这种由随机节点连接形成的网络具有良好的健壮性,适合在大规模网络中应用。而已有的一些研究中基于节点性能设计的节点优选算法[19, 20]多从本节点数据获取效率角度出发,未顾及对等节点数据传输的相互性以及系统总体的稳定性,同时以单块影像瓦片为驱动进行节点优选后的连接下载过程本身就消耗了较多时间,不适合影像浏览这类对传输延迟有较高要求的应用。

3.3 BTI-Stream数据传输机制

3.3.1 BTI-Peer下载策略

BitTorrent中的节点在初始化传输时会以下载文件大小为在磁盘上开辟空间,再以“填入”的方式写数据。而遥感影像流式传输中并不存在单个文件的概念。因此,BTI-Peer在初始化影像流传输任务前所开辟的磁盘缓存空间需要预先定义,BTI-Peer利用缓存于该空间内的影像瓦片与其他BTI-Peers进行数据交换。

2.2节中讨论了在BitTorrent系统中节点的静态文件下载队列并不适用于影像流式传输,因此在BTI-Peer中采用动态影像瓦片下载任务队列机制。如图 4所示,ViewRequestQueue表示用户浏览行为所产生的视点区域请求队列,TileQueue表示ViewRequestQueue中各个区域请求所对应的影像瓦片下载队列。根据2.1节定义将TileQueue中影像瓦片分为HighPriority和LowPriority两个级别。随着用户当前视点的变化,产生了新的视点区域请求V4,它所对应的瓦片集合P[V4]随之加入TileQueue头部。这时TileQueue中优先级为HighPriority的瓦片更新为P[V4],而剩下的瓦片优先级降为LowPriority。

图 4 BTI-Peer动态下载任务队列 Fig. 4 Dynamic downloading queue in BTI-Peer

TileQueue是BTI-Peer获取影像流的关键,它包含BTI-Peer当前希望获取的所有影像瓦片。BTI-Peer监测TileQueue的变化,动态更新感兴趣的数据块,并在得到对方节点Unchoke时提交瓦片下载请求。然而用户行为驱动下的传输队列动态性较高,需要对TileQueue进行多条件约束。首先,对于队列内的影像瓦片存在重复或此前已经下载完成的情况,BTI-Peer在每次TileQueue更新时都会判断并移除重复和已下载的瓦片。其次,随着TileQueue长度的不断增加,越接近队列尾部的瓦片时效性越低。所以BTI-Peer将下载队列长度控制为N,若当前队列长度mN,就从TileQueue尾部移除(m-N)块瓦片。此外,针对动态更新的队列会出现HighPriority或LowPriority的瓦片为空的情况,BTI-Peer采用将当前TileQueue头部 [N*20%]块影像瓦片优先级置为HighPriority,将剩下的置为LowPriority的方式处理。

3.3.2 影像瓦片块选择算法

在BitTorrent中实现影像流式传输最关键的是解决BitTorrent协议中数据块选择算法LRF与影像瓦片优先级的结合问题。如果仅使用LRF算法选择影像瓦片,会造成当前感兴趣区内的影像无法及时到达,严重影响服务质量。因此,为了兼顾系统QoS以及BitTorrent的稳定性与高效性,需要设计一种新的影像瓦片块选择下载算法实现二者的有效结合。

在BTI-Stream中,采用感兴趣/阻塞机制来控制节点间的数据传输。当BTI-Peer A对BTI-Peer B中缓存的瓦片内容感兴趣,且BTI-Peer B对BTI-Peer A的状态为非阻塞时,BTI-Peer A执行块选择算法,从BTI-Peer B中选择影像瓦片进行下载。根据BTI-Peer A的动态下载队列TileQueue中已确定的瓦片优先级,对BTI-Peer B所有可下载的瓦片集合进行优先级映射。如图 5所示,ATS(available tiles set)表示对方节点可提供下载的影像瓦片集合,根据TileQueue中定义瓦片的优先级将ATS中瓦片也相应地分为HighPriority和LowPriority两类。设置一个(0,1]区间内的概率值K,当BTI-Peer A从BTI-Peer B中下载数据时,以概率K在ATS中优先级为HighPriority的瓦片部分采用最少优先原则进行瓦片选取并请求传输;以概率(1-K)在LowPriority的瓦片部分采用最少优先原则进行选择下载。此处最少优先选择算法指的是在所有与BTI-Peer A连接的节点中,优先选择拥有量最少的影像瓦片。值得注意的是,瓦片的稀缺性常常会存在相同的情况,但由于在使用LRF算法选块前已经限定其选择范围,因此,对于具有相同稀缺性的影像瓦片,算法会从中随机选取一块进行下载。

图 5 影像瓦片块选择算法 Fig. 5 Piece selection algorithm of image tiles

使用一个二元组集合结构List<KeyValue>来表示和存储影像瓦片的稀缺性,其中,Key为每块瓦片在全局的唯一标识,Value表示拥有该瓦片的节点数量,在BTI-Peer中瓦片块选择算法过程描述如下:

第1步,节点刷新总传输队列TileQueue,获取当前的瓦片优先级关系,并映射至ATS,产生HighPriority及LowPriority区间。

第2步,设置一个参数rN,若HighPriority区间为空,则置rN为1;若LowPriority区间为空,则置rN为0;若HighPriority和LowPriority区间皆不为空,则产生一个(0,1)区间内的随机数赋予rN

第3步,如果rN值落在[0,K)区间内,则根据当前所有邻居节点的资源拥有情况,利用List<Key,Value>记录ATS中HighPriority瓦片的稀缺值;如果rN值落入[K,1]区间内,则利用List<Key,Value>记录所有LowPriority瓦片的稀缺值。

第4步,对List<KeyValue>中的所有元素排序并选出Value值最小的瓦片标识Key。若存在多个具有相同最小值Value的情况,则从中随机选出一个瓦片标识Key。

本算法实现的关键是概率值K的选取,K值取得越大,用户当前浏览兴趣区域内的影像会更早到达;但另一方面,由于未考虑BTI-Peer连接网络中影像瓦片的全局稀缺性,该BTI-Peer将无法获得其他节点感兴趣的数据块,很容易被其他节点阻塞,造成传输速率降低。

4 试验模拟及分析 4.1 模拟环境设定

为了验证BTI-Stream模型的有效性,本文开发了模拟系统BTI-StreamSim。BTI-StreamSim在原有BitTorrent协议功能的基础上,加入了客户端动态下载队列机制,并对本文设计的影像瓦片块选择算法进行集成。从空间数据角度对试验所用的影像文件进行分级分块,并采用四叉树索引结构对各瓦片块标记全局唯一的索引编码。初始化的BTI-StreamSim系统中包括追踪服务器以及拥有所有影像资源的种子节点。浏览下载节点加入系统之后,为其设定上传、下载带宽,并根据需要赋予初始影像瓦片块。试验各参数设定如表 1所示。

表 1 试验参数设定 Tab. 1 Parameters setting of the experiment
参 数
上传带宽(共享平分)100 KB/s
下载带宽(共享平分)500 KB/s
浏览下载节点缓存数据大小1 GB
影像瓦片分块大小128 KB
动态下载队列长度N300
4.2 试验与结果分析

遥感影像流的传输效率和影像浏览端的服务质量是考察本模型性能的两个重要方面。本文提出瓦片到达指数TAI(tiles arrival index)来综合反映这两类重要的性能参数,TAI可表达为下式

式中,L为节点获取的所有影像瓦片中感兴趣区域内的瓦片数量;t表示瓦片传输完成所需时间;SDpeer为该节点启动迟延。在式(1)中,L值越高,表示感兴趣区域内影像瓦片到达数越高,用户可以及时获取对其重要的信息;而(t - SDpeer)值越低,说明瓦片传输完成时间越短,系统传输速率越高。由此可见,TAI值越高表示系统性能越好。

4.2.1 K值选取对系统性能的影响

影像瓦片块选择算法是决定模型性能的关键,而该算法实现的关键又在于K值的选取,所以试验首先考察K值的选取对TAI值的影响。设浏览节点按照泊松过程加入BTI-StreamSim,记录单个节点每传输20块瓦片对应的TAI值,结果取50次记录的平均值。

图 6所示的是节点规模分别为500和1000时,TAI随着K值增加的变化情况。自变量为K,以步长0.1在(0,1]区间内取值。当节点规模达到500时,可以看出TAI值随着K值变大不断增大;当K值为0.8时,TAI达到峰值;之后随着K增加,TAI值有所下降。在节点规模扩大至1000时,TAI值变化情况与规模为500时基本一致。

图 6 TAI值在不同参数K下的变化情况 Fig. 6 Variation of TAI under different parameter K

TAI的变化趋势可由系统采用的瓦片选择算法原理得到解释。当K值较低时,意味着用户感兴趣区域内的影像到达率较低,在这种情况下,尽管算法考虑了低优先级瓦片的稀缺性,数据传输效率未受到较大影响,但由于到达的影像瓦片不在用户当前视点范围内,严重影响了系统服务质量,所以TAI值仍然较低。随着K值的增大,用户感兴趣区域内的影像瓦片到达率逐渐增加,TAI值因此增加,当K值增大至0.8时,系统性能达到最优;而当K值大于0.8时,尽管感兴趣区域内影像瓦片到达率更高,但由于LRF算法在低优先级影像瓦片中执行频率过低,破坏了整体稀缺性原则,所以传输速率受到影响,TAI值开始降低。同时可以看到,在节点规模扩大至1000时,BitTorrent协议的激励机制保证了TAI值的稳定性,系统未因节点数增多而出现较大的性能起伏。

4.2.2 flash crowd对系统性能的影响

flash crowd指的是大量用户并发访问系统时的场景,在flash crowd发生时,系统服务质量差异越小,说明系统越稳定。试验记录不同规模节点在短时间内加入系统后TAI值的变化情况。图 7K取0.8时,flash crowd规模分别为100、500、1000的场景中TAI随时间变化的情况。可以看出,随着系统运行时间的增加,不同节点规模下TAI值呈现出较为一致的变化规律。在flash crowd初始阶段,大量新加入节点对影像的并发请求造成TAI值较低;随着系统运行时间的增加,TAI值不断提升,并逐渐保持稳定,这是由于节点在更换视点过程中不断积累可用与其他对等节点交换的影像瓦片,节点之间的数据交换逐渐频繁,传输效率提高。由此可见,BTI-Stream模型在应对不同节点规模的flash crowd情况中性能保持稳定,能够满足大量用户并发访问的需求。

图 7 不同节点规模下TAI值变化情况 Fig. 7 Variation of TAI in different node scale
4.2.3 资源定位算法试验与性能比较

本节采用算法模拟试验,对BTI-Stream系统以及现有的其他P2P空间数据传输系统中资源定位算法进行性能分析与比较。资源定位算法是P2P数据传输系统的关键技术,低适用性的定位策略会给对等网络的平衡性稳定性造成严重的危害。现有的几种P2P空间数据传输系统中采用的资源定位算法可归结为两类模式。

模式1:节点在获取下载数据块对应的节点集合后,以传输速度作为指标从集合中选择性能最优的节点请求数据;

模式2:节点在获取下载数据块对应的节点集合后,以传输速度和节点动态性作为综合指标,从集合中选择性能最优的节点请求数据。

以下将本文3.2节描述的资源定位与选择算法称为模式3,结合模拟试验分别对这3种模式进行分析比较。

初始化系统中5000个节点,对每个节点设置上传/下载带宽值以及动态性值等基本属性。为拟合实际的网络环境,此处笔者设定节点的动态性值在一定范围内可变。试验安排50个节点分别以模式1、2、3进行节点选择与数据块下载,每次试验中这些节点产生相同数量的瓦片请求,图 8为节点规模分别为1000、2000、3000、4000、5000时,系统中从未被选择作为提供下载服务的节点数量对比图。

图 8 不同节点规模下从未被选中节点数量对比 Fig. 8 Number of peers that never be choosed in different node scale

图 8可以看到,由于模式1将节点上传速度作为唯一的选择指标,因此下载节点选择的总是系统中少量上传能力最优的节点,大量节点从未被选中;模式2由于综合考虑了节点的传输速度以及动态性等指标,被选中的节点范围较模式1有所扩展,但仍有75%左右的节点从未被选中;模式3采用了随机方式选取节点,设BTI-Tracker每次随机分配m个节点返回给下载节点,Stotal表示BTI-Tracker管理的系统中节点总量,则某节点在N次节点选择中从未被选中的概率为(1-m/Stotal)N×100%。由于(1-m/Stotal)∈(0,1),所以随着下载节点请求数的不断增加,节点从未被选中的概率逐渐趋于0,即表明系统中将几乎不存在从未被选中下载的节点。本试验采用模式3进行了50次节点选择,结果显示从未被选中的节点数量已远远少于模式1和模式2,仅占总节点数的21%左右。

在P2P网络中仅获取数据而从不提供数据服务的节点被称为free rider,它们的存在严重影响了对等网络的公平性,试验所记录的从未被选中的节点即属于free rider的一类。为了进一步考察不同选择算法对系统造成的影响,根据每个节点的平均上传能力将节点排序,并将其分类为5个等级,试验以接受瓦片请求数作为衡量标准统计每一级节点的工作量分配情况。

图 9为不同等级节点的工作量负载对比。可以看出,在模式1中,85%左右的数据传输工作量都被分配至第1级节点上,模式2中也有66%的任务被分配至第1级节点中,第3、4、5级节点几乎没有分配任何传输任务,系统中节点工作负载极不平衡。而模式3由于采用了随机节点选择策略,下载任务被随机分配至系统各级节点中,由测试结果可以看到其工作量分布较为平均,整个系统将处于良好的工作状态。

图 9 不同等级节点工作量负载 Fig. 9 Workload in different grade of peers
5 结 论

本文研究并设计了BitTorrent类型网络中遥感影像流式传输模型BTI-Stream,对BTI-Stream模型的结构、下载策略及影像瓦片块选择算法进行阐述,并构建了模拟系统对模型的性能进行试验验证。结果表明,当影像瓦片块选择算法中参数K取0.8时模型性能达到最佳,且模型在大量节点并发访问情况下性能保持稳定。此外,模型在控制P2P网络平衡性方面也较同类算法有了较大改进。然而,关注到BitTorrent网络的开放性将会给系统中存储的遥感影像带来安全隐患,如何保障影像数据的安全性将是下一步的工作重点。

参考文献
[1] GREENPEACE. New Greenpeace Study Reveals Dirty Energy Behind Internet’s Growth[EB/OL].[2011-04-21].http://www.greenpeace.org/international/en/press/releases/New-green-peace-study-reveals-dirty-energy-behind-internets-grogro--/.

[2] COHEN B. The Bittorrent Protocol Specification[EB/OL]. [2006-09-12]. http://wiki.theory.org/bittorrentspecification.
[3] LIU Yi, GONG Jianya, WU Huayi. P2P Based Efficient Online Spatial Images Delivery[C] //Proceedings of the 15th International Conference on Geoinformatics.[S.l.]: SPIE, 2007:1-9.

[4] LIU Yi, GONG Jianya, GUO Wei. Resource Locating and Selection for Spatial Image Streaming on P2P Network[J]. Acta Geodaetica et Cartographica Sinica, 2010, 39(4):383-389.(刘异,龚健雅,呙维. P2P环境下影像数据流传输的资源定位及选择研究[J]. 测绘学报,2010, 39(4):383-389.)
[5] YU Zhanwu, ZHENG Sheng, LI Zhongmin. A Large-scale Terrain Transmission Mechanism Based on Hybrid P2P[J]. Acta Geodaetica et Cartographica Sinica, 2008, 37(2):243-249.(喻占武,郑胜,李忠民. 一种混合式P2P下的大规模地形数据传输机制[J]. 测绘学报,2008, 37(2):243-249.)
[6] WANG Wei, JIA Jinyuan, ZHANG Chenxi, et al. Progressive 3D Scenes Replacement Mechanism for P2P Overlay[J]. Journal of Computer Applications, 2010, 30(9):2422-2430.(王伟,贾金原,张晨曦,等. 面向P2P网络的渐进式三维场景更新策略[J]. 计算机应用,2010, 30(9):2422-2430.)
[7] COHEN B. Incentives Build Robustness in BitTorrent[C]// Proceedings of the 1st Workshop on Economics of Peer-to-Peer Systems. Berkley:[s.n.] , 2003.

[8] ANDROUTSELLIS-THEOTOKIS S, STEPHANOS D, et al. A Survey of Peer-to-peer Content Distribution Technologies[J]. ACM Computing Surveys (CSUR), 2004, 36(4): 335-371.
[9] JUN S, M. AHAMAD. Incentives in BitTorrent Induce Free Riding[C]//Proceedings of the 2005 SIGCOMM Workshop on Economics of Peer-to-peer Systems. Philadelphia:[s.n.],2005.

[10] PIATEK M, ISDAL T, ANDERSON T, et al. Do Incentives Build Robustness in Bittorrent[C]// Proceedings of the 4th USENIX Conference on Networked Systems Design & Implementation. Cambridge: [s.n.] , 2007:1.

[11] DANA C, LI D, HARRISON D, et al. BASS: Bittorrent Assisted Streaming System for Video-on-demand[C]// Proceedings of IEEE 7th Workshop on Multimedia Signal Processing. USA : IEEE ,2005:1-4.

[12] CHOE, YUNG RYN, et al. Improving VoD Server Efficiency with Bittorrent[C] //Proceedings of the 15th International Conference on Multimedia, Augsburg, Germany. [S.l.]: ACM, 2007:117-126.

[13] VLAVIANOS A, ILIOFOTOU M, FALOUTSOS M. BiToS: Enhancing BitTorrent for Supporting Streaming Applications[C]//Proceedings of IEEE 9th Global Internet Symposium. Barcelona: IEEE , 2006:1-6.

[14] WANG Xuzong, LIAO Jianjin, ZHU Xiaomin. BitTorrent File-sharing System Architecture Based on IMS[J]. Computer Engineering, 2008,34(1):273-275.(王续宗,廖建靳,朱晓民. 一种基于IMS的BitTorrent文件分布系统架构[J]. 计算机工程,2008, 34(1):273-275.)
[15] XUE Guangtao, YU Jiadi, YOU Jinyuan. Building Hierarchical BitTorrent-like Peer-to-Peer File Sharing Systems Based on Proximity-Aware Peer Clustering[J]. Acta Electronica Sinica, 2008, 36(2):291-297.(薛广涛,俞嘉地,尤晋元. 基于临近结点聚类构建层次化BitTorrent文件共享系统[J].电子学报, 2008, 36(2): 291-297.)
[16] LIU Dan, XIE Wenjun. Spatial Region Query Based on Grouping P2P Network[J]. Computer Engineering, 2009, 35(17):49-51.(刘丹,谢文君. 基于分组式P2P网络的空间区域查询[J]. 计算机工程,2009,35(17):49-51.)
[17] SAHOTA V, LI M Z, BAKER M, et al. A Grouped P2P Network for Scalable Grid Information Services[J]. Peer-to-Peer Networking and Applications, 2009, 2:3-12.
[18] SRIPANIDKULCHAI K, MAGGS B, ZHANG H. Efficient Content Location Using Interest-based Locality in Peer-to-Peer Systems[C]//Proceedings of IEEE INFOCOM 03. San Francisco: IEEE , 2003:2166-2176.

[19] PAN Shaoming, YU Zhanwu, WANG Hao. Massive Terrain Data Sharing in Pyramid Hierarchical Peer-to-Peer Networks[J]. Geomatics and Information Science of Wuhan University, 2009,34(6):650-653. (潘少明,喻占武,王浩. 基于节点分组的P2P海量地形数据共享机制[J].武汉大学学报:信息科学版, 2009,34(6):650-653.)
[20] MENG Lingkui, XIA Huiyu, CHEN Zidan, et al. Optimization Strategy of Massive Hydrographic Image Transmission Based on P2P[J]. Application Research of Computers, 2011,28(4):1382-1391.(孟令奎,夏辉宇,陈子丹,等. 基于P2P的海量水利遥感影像优化传输策略[J]. 计算机应用研究, 2011,28(4):1382-1391.)

中国科学技术协会主管、中国测绘地理信息学会主办。
0

文章信息

夏辉宇,孟令奎,娄书荣.
XIA Huiyu,MENG Lingkui,LOU Shurong.
BitTorrent的影像流式传输模型研究
Research on Spatial Image Streaming Model Based on BitTorrent
测绘学报,2013,42(2):225-232.
Acta Geodaetica et Cartographica Sinica,2013,42(2):225-232.

文章历史

收稿日期: 2011-07-29
修回日期: 2011-12-18

相关文章

工作空间