覃秋玉,刘丹丹,张 健
QIN Qiuyu1,LIU Dandan2,ZHANG Jian2
1.武汉大学 计算机学院,武汉 430072
2.武汉大学 计算机学院 软件工程国家重点实验室,武汉 430072
1.Computer School,Wuhan University,Wuhan 430072,China
2.State Key Lab of Software Engineering,Computer School,Wuhan University,Wuhan 430072,China
延迟容忍网络[1-2](Delay Tolerant Network,DTN)是一种自组织网络,用于解决无线应用中无法提供稳定连接的问题。DTN技术能用于特殊的网络应用场景,一些典型的应用有野生动物追踪、手持设备组网、车载网络服务和网络接入服务等[3-4]。在DTN中,网络节点之间的连接经常断开,网络拓扑结构动态变化,端到端传输路径难以维持。为克服网络的中断性,DTN中采用“存储-携带-转发”的路由模式,利用节点移动带来的相遇机会进行通信[5]。由于长延时和中断特性,以及节点的资源受限性,在DTN中很容易出现拥塞。此外,很多现有路由协议采用多副本的传输方式[6-7],冗余的副本可以显著地提高交付率,但是另一方面,其也会带来额外的开销,从而加剧拥塞。如果不采取有效的拥塞控制策略,网络性能可能会迅速地恶化,严重影响网络的服务质量(Quality of Service,QoS)。
传统的网络中拥塞控制方法是基于端到端反馈机制。传统Internet中TCP传输层的拥塞控制包括慢启动、拥塞避免、快速重传、快速恢复策略,是基于可靠的延时短的端到端反馈机制。然而在DTN中网络之间的连接经常断开,无法维持可靠的端到端的路径,且消息传输延时长,无法使用基于反馈的控制策略,传统网络中控制拥塞的方法对DTN并不适用。作为一种受限网络,DTN中的拥塞控制是一个更加重要的问题。
近年来,DTN中的拥塞控制策略[8-9]得到了广泛的关注。在DTN中全局网络信息是难以获取和维持的,因此拥塞控制策略中节点要能够仅仅利用局部信息来判断当前拥塞程度并做出相应的措施。为避免冗余的副本消耗过多的资源带来过多的开销,多副本路由方式中必须对副本的数量加以控制。传染路由[10](Epidemic Routing)没有限制消息副本的数量,会迅速耗尽节点的存储空间。散发等待协议[11](Spray and Wait)限定了消息的最大副本数,但是难以确定一个合适的副本数量,且固定的副本数量难以适应动态变化的网络环境。简单计数协议[12](Simple Counting)是一种基于计数的副本控制方案,这是一种动态的副本控制方式。节点对于每个消息维持两个计数,分别表示该节点连续遇到的携带或不携带该消息的其他节点的次数,如果计数超过阈值,就分别复制或丢弃消息副本。
网络中流量分布是不均匀的,因此在产生局部拥塞的时候可以转移部分负载到状态比较好的区域。Seligman在文献[13]中提出了一种节点间的数据转移方案,通过将储存的数据转移到邻居节点来解决DTN中的存储拥塞问题。类似的,文献[14]提出了一种存储路由,其使用局部范围的分布式算法来确定将哪些消息转移到哪些邻居节点。这些基于存储转移的调度方法能够充分利用其他节点的空闲缓存空间,提高网络存储利用率,但是转移算法会增加路由的复杂性,过多的消息转移加重了网络的通信开销。
消息丢弃可以分为主动丢弃和被动丢弃。被动丢弃是指节点缓存空间满时为了接收新的消息必须丢弃部分消息,关键在于确定重要性度量丢弃对网络传输影响最小的消息副本。主动丢弃与存储状态无关,只要消息满足设定的要求就删除副本。Small等人在文献[15]中介绍了几种副本清除方法,包括JUST_TTL、FULL_ERASE和VACCINE等。其中最简单的方法是JUST_TTL,节点删除那些超过生存时间的失效消息。VACCINE方法引入了anti-packet这一标识,对成功交付的消息保持一个标识,代表该标识对应的消息已经传输成功。节点间通过共享这一信息可以删除已有的无用消息,并拒绝再次接收同样的消息,类似于免疫。在这种情况下,即使接收节点没有存储的分组的副本,节点也可以从另一节点接收反分组。
本文提出了一种基于节点状态的自适应的拥塞控制策略(Adaptive Congestion Control mechanism based on Node State,ACC-NS),节点仅利用本地信息来自主决策消息的接收行为,从而动态地调整副本的数量。本文的主要贡献如下:(1)将消息进行了分类。消息分为普通消息和特殊消息,在拥塞控制的同时针对消息类别做了些QoS控制。(2)提出了自适应的消息接收策略,节点可以根据自己的拥塞状态动态地调整消息的接收概率,使得消息数据较为均匀地分布到网络中。(3)针对冗余副本的清除,结合了VACCINE方法和基于消息相遇计数的方法,可以较为快速地清除消息副本同时保证较高的可靠性。
为更好地反映现实组网的不同服务需求情况,本文对消息类别做出了一些差异化设定。将消息分为普通消息和特殊消息,根据消息的重要性进行归类。例如兴趣推送可以归为普通消息,email可以归为特殊消息,一般人们希望email能正确收到。因此特殊消息会要求更高的交付率,在传输过程中不会将其随意丢弃。
根据节点的缓存空间使用率划分节点的拥塞程度,将节点分为未拥塞(No Congestion,NC)、轻拥塞(Low Congestion,LC)和重拥塞(High Congestion,HC)三种状态。定义r为缓冲空间使用率,其中r∈[0 ,1]。定义Rl为轻拥塞的缓存空间使用率临界值,Rh为重拥塞的临界值,其中0<R1<Rh<1。未拥塞的节点的状态为NC,其中其缓冲空间使用率满足r∈[0 ,Rl];轻拥塞的节点状态为LC,r∈[Rl,Rh];重拥塞的节点状态为HC,r∈[Rh,1]。节点状态描述图如图1所示。
图1 节点状态描述图
随着网络不断运行,节点可能在三种状态间反复转换。刚开始时节点处于NC状态,随着新消息的转入和不能及时转发出去的消息在缓存空间累积,节点逐渐进入LC状态。随着进一步的消息累积,可利用的空闲缓存空间越来越少,节点逐渐进入HC状态。而处于HC状态的节点可以通过一定的策略丢弃或转移部分消息以释放缓存空间,拥塞程度得到改善转换为LC状态,可能还进一步退回到NC状态。
网络的拥塞度会不断处于动态变化中,每一时刻网络中可能会存在三种状态的节点,不同的是各种状态节点所占比例。节点各自的拥塞状态可以反映出网络总体的拥塞状况,如果网络中处于NC状态的节点占很大比例,那么网络整体拥塞状态较好。反过来如果网络中处于HC状态的节点占比例高,那么网络整体拥塞情况较重。节点对于网络整体的拥塞状况并不知情,它们只是根据自己的拥塞状况做出不同的反应策略。
NC状态没有产生拥塞,同时也意味着节点中缓存的消息较少,如果很多节点都处于NC状态,就表明网络总体较为空闲,负载较小,网络使用率不高,没有充分利用资源。HC状态的节点处于重度拥塞,节点缓存中已经存在很多消息占用了大量存储空间,如果网络中很多节点处于HC状态,表明网络整体上已经出现较严重的拥塞,如果不采取措施会使得拥塞程度进一步恶化,节点的服务能力大幅下降,最终使得整个网络性能恶化。因此比较理想的状态是LC,网络有着较高的使用率,同时又不至于过于拥塞降低网络效用,在网络利用率和资源消耗之间取得平衡。将节点状态进行划分,可以让节点针对不同的拥塞程度做出不同的反映,实现动态控制。
自适应的接收策略,就是节点根据自身所处的不同拥塞状态和消息的类别动态调整消息的接收概率。使得节点既能够充分使用资源提高网络性能,又不至于让资源过度消耗使网络性能迅速恶化。总的来说,自适应的接收策略是一种动态调节策略,其目的是在网络收益和资源消耗之间取得平衡,从而提高网络性能。以下将根据不同的节点状态分别进行讨论。
2.2.1 未拥塞的节点
节点处于NC状态时,缓冲空间充足,可以为所有其他节点的所有消息提供中继服务,可以接收其他节点转发的任何消息,存到缓冲区中携带。这样可以迅速将存储空间使用率提高到一个较高的水平,避免存储空间长时间空闲,有利于提高消息的交付率和减小消息的传输延时。这个状态下节点间的通信行为方式非常类似于传染路由,只要有机会就相互交换彼此没有的消息。因为此状态下节点存储空间尚且足够,就尽可能的多携带多转发消息,不对消息的接收作任何限定,充分使用较为空闲的网络资源。
2.2.2 轻拥塞的节点
当节点处于LC状态时,缓存空间使用率已经较高了,如果还按照之前的方式接收消息,节点的缓存空间会迅速占满。为抑制缓存使用量的增长速度,同时保证特殊消息的服务,这个状态下的节点以概率1接收特殊消息,以变化的概率接收普通消息。
定义该状态下普通消息的接收概率为P,这一概率应该随着缓存空间使用率的增加而减小,同时为了在进入这个状态后达到较明显的缓存增长抑制效果,接收概率减小的程度应该先迅速后逐渐趋于平缓。为此将P关于r的函数设计为一个递减的凹函数,其中r∈[Rl,Rh],在Rl处取得最大值,在Rh处取得最小值。考虑最简单的二次函数 f(x),端点Rl处 f(Rl)=1,顶点Rh处 f(Rh)=0,由此确定一个二次函数,如式(1)所示。
x从Rl到Rh的变化过程中,当x与Rl差值较小时,函数值接近于1,即这时候的接收概率太高,需要适度修正。于是在原 f(r)值的基础上再乘以可用缓存的百分比1-r,最终得到P与r之间的函数对应关系,如式(2)所示。
2.2.3 重拥塞的节点
当节点处于HC状态时,可用的存储空间已经很小了。这时候节点不再作为中继者接收普通消息,促使普通消息选择状态更好的下一跳节点。为避免频繁的消息丢弃,只以一定的小概率接收普通消息,简单将接收概率取为1-r。
值得注意的是,以上的接收概率都是指节点作为中间节点接收消息的概率,消息的目的节点总是以概率1接收发给自己的消息。节点在复制转发每个消息前都要向接收节点发送一个包含该消息摘要信息的发送请求,则接收节点判断是否接收该消息并返回应答,应答的类型决定了发送节点的下一步具体操作。
综合以上不同节点状态和消息类别下的消息接收概率如表1所示。节点根据自身不同的拥塞程度选择不同的消息接收概率,拥塞情况越严重,其接收消息的概率越小。DTN中可能在某个相遇时刻,节点周围有几个邻居节点,或者在后面移动过程中遇到多个不同节点。拥塞比较严重的节点有更高的概率拒绝接收消息,状态好的节点却可以更轻易接收消息,使得消息更有可能被传递到状态较好的节点。这种控制方法可以有效指引消息选择状态好的下一跳节点并复制消息,使网络流量较为均衡地分布到所有节点,起到负载均衡的效果。针对普通消息和特殊消息采用不同的接收策略,给特殊消息更多的接收机会,尽量满足其传输率要求,又不至于让特殊消息过多剥夺普通消息的资源,取得一个较好的平衡。
表1 不同节点状态和消息类别下的消息接收概率
为清除冗余的消息副本,将VACCINE方法和基于相遇计数的方法[12]进行结合。VACCINE方法中每个节点维持一个已交付的消息标识列表,列表的基本元素是消息ID,代表对应的消息已经成功交付了。节点在相遇期间交换和更新彼此的标识列表,删除并拒绝接收对应于列表中的消息。
VACCINE方法是在消息成功交付之后再扩散该消息的交付信息,在网络中扩散这一信息让所有节点都知道,可能要经历很长时间。为此还采用基于消息相遇计数的副本清除方法。该方法中节点对每个消息维持一个相遇计数值,计数表示节点遇到携带有同样消息的其他节点的次数。当遇到携有相同消息的其他节点时对消息的相遇计数值加1,如果某一消息的计数值超过阈值,就将其从存储空间中删除,同时将消息的计数值设置为-1,并不再更新。与VACCINE相比这是一种不可靠的副本删除方式,但是计数值超过阈值可以反映出网络中已经产生较多该消息的副本了,删除这类消息对消息传输影响较小。这两种方式结合可以更有效清除多余副本,同时保证较高的可靠性。
为确定缓冲区中消息的发送和丢弃顺序,将消息组织成一个优先级队列。由于特殊消息要求较高的交付率,应该给予其较高的优先级。此外,每个消息都有一个相遇计数,计数的大小可以反映网络中产生的该消息副本数的多少。应该给副本数较少的消息更多的发送机会,因此相遇计数较小的消息优先级更高。计数相同的消息,剩余生存时间较长的享有更高的优先级。按照以上规则,相遇期间优先发送队首的消息,当存储空间不足而必须接收新消息时优先删除队尾的消息。
综合以上内容,给出完整的基于节点状态(Node State,NS)的自适应拥塞控制(Adaptive Congestion Control,ACC)路由策略,简称为ACC-NS。以节点 M和节点N相遇时它们之间的一次消息传输为例来说明,假设消息由M复制转发给N,ACC-NS策略的流程图如图2和图3所示。流程图分别从节点N和节点M的角度阐述策略执行过程,其中图2是描述节点N决策是否能接收消息m的过程,图3是描述节点M尝试给节点N发送消息的过程。节点具体的操作步骤如下所述:
(1)节点M和N之间相遇建立连接,执行VACCINE方法,两节点相互交换彼此的已交付消息标识列表,更新各自交付列表并删除相应消息。
(2)节点M从消息队列中取出下一个消息m(初始的时候为队首消息),如果已经位于队尾没有下一个消息,则停止发送过程。否则,节点M向节点N发出发送请求,请求中有消息m的关键信息。
图2 节点N决策是否能接收消息m
图3 节点M尝试给节点N发送消息
(3)节点N检查m相关信息,如果节点N是消息m的目的节点,则返回“接收”应答。跳转到第(6)步。
(4)如果节点N的消息相遇计数列表中有m的记录,则返回拒收应答。拒收的类型是“已有”,代表对方节点已经有该消息不必重复发送。如果计数不为-1,则对计数加1。如果加1后超过计数阈值,节点N就从消息队列中删除消息m,同时将其计数置为-1。跳转到第(6)步。
(5)节点N计算自己的缓存使用率r,根据所处的拥塞等级和消息m的类别,按照自适应的接收策略,以表1中的概率,决定是否接收消息,分别向节点M返回接收或拒收的应答。拒收的类型是“拥塞”,表示对方节点为避免拥塞而拒绝此次发送尝试。
(6)节点M 检查应答的类型,如果是“接收”,则正式开始复制转发消息m。否则重新返回到第(2)步,进行下一次尝试。另外,如果拒收类型是“已有”,则对消息m的计数加1,超过阈值则删除消息m并将计数置为-1。
(7)节点N开始接收消息m。如果可用缓存空间不足,就依次丢弃消息队列的队尾消息释放空间。假设消息成功传输了,如果N是消息m的目的节点,则分别在M和N的交付消息标识列表中添加一条消息m的记录;否则将消息m插入节点N中消息队列的合适位置,在相遇计数列表中添加一条m的记录并将计数初始化为0。
这种动态策略与静态策略相比大大提高了控制的灵活性,可以根据网络的状态变化不断调整,从而保证网络的整体性能。且拥塞状态划分不依赖于全局的变量,每个节点仅仅根据自己的缓存利用状态做出自主决策,空闲存储空间较充足时作为中继者多接收些消息,空闲空间不足时少接收消息,有必要时则采用消息丢弃策略舍弃部分消息。受限于DTN的网络特殊性,全局网络状态变量很难获得,这种不依赖于全局信息的节点自主局部决策是更符合实际需求的。
本文实验所用的仿真工具是ONE模拟器[16](Opportunistic Network Environment simulator),是专门设计用来评估DTN路由和应用协议的工具。实验场景中,仿真世界大小为2 500 m×2 500 m,共有60个节点,采用RandomWaypoint移动模型。该模型中,节点以恒定的速度运动到目的位置后,在该位置停留一个随机的时间,再以随机生成的速度匀速运动到区域中另一个随机产生的位置,以此往复。本文主要研究的是拥塞控制策略,需要获得存储空间条件下本文提出的策略的表现,为此改变缓冲空间大小多次重复实验,其中存储大小变化范围为4~14 MB。实验重要参数设置如表2所示。
ACC-NS策略中有三个重要的参数,包括两个拥塞度临界值Rl和Rh以及消息相遇计数阈值n。为了便于将ACC-NS策略与传染路由(Epidemic)和散发等待路由(SNW)协议进行对比。固定ACC-NS策略中参数的取值,令Rl=0.6,Rh=0.9,n=4,将会在后面给出关于不同参数取值的结果与讨论。
为了将ACC-NS协议与另外的两种协议对比,Epidemic、SNW的相关设置与上面的设置保持一致。针对每个变化的存储空间,调整最大副本数进行重复实验,找出对应于每个缓冲空间大小的最合适的最大副本数值,以这种最好的路由状态参与对比。
表2 仿真参数设置
实验分别从消息交付率(delivery ratio)、消息传输开销比(delivery overhead ratio)、消息平均延时(average delivery latency)和平均缓存使用率(average buffer usage ratio)四方面进行对比和分析,实验结果和分析如下。
由图4可知,ACC-NS策略可以保证特殊消息有较高的交付率,同时整体消息交付率也较另两种协议有所提高。消息传输开销比按式(3)计算,其中relayed为总的消息转发次数,delivered为成功交付的消息数量。图5表明,ACC-NS策略可以显著减小消息传输开销比。这是因为ACC-NS策略限制了消息的接收行为,避免盲目的消息接收带来频繁的消息丢弃。
图4 消息交付率随缓冲空间大小变化图
图5 消息传输开销随缓冲空间大小变化图
由于限制了节点间消息的流通,ACC-NS策略的消息平均延时和另两种协议相比有略微的增加,如图6所示。最后对比了三种协议中平均缓存使用率随时间的变化情况,如图7所示。其中Epidemic算法和SNW算法的曲线变化趋势图有很多相似,平均缓存使用率会迅速增长达到高峰并趋于稳定。因为Epidemic路由对消息的发送和接收没有限制,SNW路由喷射副本数对消息发送的限制作用也很小,故两者的曲线变化很相似。随着时间的变化消息迅速累积,平均缓存使用率迅速增长,直到缓冲空间几乎被占满,此后一直保持缓存占满的状态。而ACC-NS策略的使用率增长较为平和,且趋于稳定后的平均缓存使用率较另两种协议低很多。ACC-NS则限制了节点接收新消息,当发生拥塞时拥塞程度越大则节点接收消息的概率越小,从而减缓了消息进入缓冲空间的速率。当网络运行时间足够长时,三种协议的平均缓存使用率随着时间的变化趋于稳定,仅仅只有小幅度的波动。这表明ACC-NS策略可以较好地控制缓存空间的增长速度,将数据流量较为均匀地分布到网络中的节点。
图6 消息平均延时随缓冲空间大小变化图
图7 平均缓存使用率随运行时间变化图
在固定Rl和缓冲大小的情况下,Rh由0.65每次递增0.1直到0.95,传输率、开销比等随着变化的结果如表3所示。总消息传输率和消息平均延时波动很小,而特殊消息传输率和传输开销比随着Rh的增加递增很明显。Rh设置得越小,节点越容易进入重拥塞状态,网络中进入重拥塞的节点占比越大,消息的传递方式越趋近于直接交付,而直接交付是开销比最小的一种路由方式,使得网络整体传输开销比越小。节点在进入重拥塞之前是以概率1接收特殊消息,之后接收特殊消息的几率大大减小,Rh设置越大意味着特殊消息有更多的机会和更久的时间享受特殊的接收待遇,导致明显的特殊消息传输率的提升。特殊消息传输率更高的同时,也带来了更大的传输开销比,因此实际网络中需要权衡选择一个更恰当的值。
表3 重拥塞临界值对仿真结果的影响
轻拥塞临界值Rl对仿真结果的影响如表4所示。在固定缓冲空间大小和Rh的情况下,随着Rl的变化,传输开销比和消息平均延时波动很小,变化不是很明显,总消息传输率随着Rl增大而增大,特殊消息传输率随着Rl增大而减小,这种趋势是符合预期的。Rl是节点进入轻拥塞的临界值,当缓存使用率低于Rl的时候所有消息都是以概率1被节点所接收,Rl越大会给普通消息更多的接收机会,从而提高总体的消息传输率;同时Rl增大会让Rl到Rh的区段越小,当节点进入轻拥塞后特殊消息享有的特殊接收待遇区间也变小了,导致特殊消息传出率会下降。可以看到特殊消息传输率和总的消息传输率是难以同时提高的,因为网络中的资源是限定的。这两种传输率是部分与整体的关系,依特殊消息的服务质量需求可以相应调整Rl的大小,在局部需求和总体需求之间取得最合适的平衡。
表4 轻拥塞临界值对仿真结果的影响
固定Rl、Rh和缓冲空间大小,依次将计数阈值加1,最大相遇计数阈值对仿真结果的影响如表5所示。从表中可以看出,当计数阈值为2的时候,网络各方面性能表现很差,此时相遇丢弃率更是达到了80%以上。消息副本的两种丢弃方式中,VACCINE是一种可靠的消息丢弃,而基于计数阈值的消息副本丢弃是一种不可靠的估计丢弃。当计数阈值设置得太小,消息来不及生成很多副本就被清除了,表现为很高的相遇丢弃率。当计数阈值进一步增大,情况会好得多,表中阈值设置为3的时候总消息传输率和消息平均延时都是最好的,但是特殊消息传输率偏小。相遇计数阈值设置为4和5时显著提高了特殊消息传输率。
表5 最大相遇计数阈值对仿真结果的影响
实际上,ACC-NS中的控制参数是可以根据实际网络需求来调整的。在其他条件不变的情况下,增大Rh会提高特殊消息的传输率,但会造成更大的消息传输开销比。增大Rl会提高总的消息传输率,但会降低特殊消息的传输率。在消息相遇计数很小的时候,因相遇计数超过阈值而丢弃的消息数量占丢弃总数的比例很高,而计数丢弃方式是一种不稳定的清除方式,不稳定因素占主导使得网络各方面性能表现较差。增大相遇计数会提高消息的交付率,但是过大的计数阈值不会带来性能的进一步提升,因计数超过阈值而清除的消息占比已经很小了。当节点缓冲空间较大时,相应的Rh和n的取值可以适当增大些。总之可以根据实际网络环境和服务需求,调整参数使得网络的性能达到较好的平衡。
本文提出了ACC-NS路由策略,这是一种动态的拥塞控制策略,节点根据自己的状态和消息的类别动态调整消息的接收概率,使得数据流量可以较为均匀地分布到网络中。针对网络中的冗余副本,结合了两种方法,可以更为有效地清除多余副本。除此之外,本文在拥塞控制的同时做了一些QoS方面的控制,可以满足特殊消息的较高传输率要求,同时总体的消息传输率也有所提高。仿真结果表明,本文提出的策略可以提高网络性能和减小传输开销。
参考文献:
[1]Li Y,Hui P,Jin D,et al.Delay-tolerant network protocol testing and evaluation[J].IEEE Communications Magazine,2015,53(1):258-266.
[2]Chen I R,Bao F,Chang M J,et al.Dynamic trust management for delay tolerant networks and its application to secure routing[J].IEEE Transactionson Parallel&Distributed Systems,2014,25(5):1200-1210.
[3]Tornell S M,Calafate C T,Cano J C,et al.DTN protocols for vehicular networks:An application oriented overview[J].IEEE Communications Surveys&Tutorials,2015,17(2).
[4]Elshafee A,El Menshawi M,Saeed M.Integrating social network services with vehicle tracking technologies[J].International Journal of Advanced Computer Science&Applications,2013,72:22-30.
[5]Conan V,Friedman T,Leguay J.DTN routing in a mobility pattern space[J].Computer Science,2012:276-283.
[6]Xiao M,Wu J,Huang L.Home-based zero-knowledge multi-copy routing in mobile social networks[J].IEEE Transactions on Parallel&Distributed Systems,2015,26(5):1238-1250.
[7]Wei K,Guo S,Zeng D,et al.Exploiting small world properties for message forwarding in delay tolerant networks[J].IEEE Transactions on Computers,2015,64(10).
[8]Kafi M A,Djenouri D,Ben-Othman J,et al.Congestion control protocols in wireless sensor networks:A survey[J].IEEE Communications Surveys&Tutorials,2014,16(3):1369-1390.
[9]Silva A P,Burleigh S,Hirata C M,et al.A survey on congestion control for delay and disruption tolerant networks[J].Ad Hoc Networks,2015,25:480-494.
[10]Vahdat A,Becker D.Epidemic routing for partially connected ad hoc networks,CS-200006[R].Duke University,2000.
[11]Spyropoulos T,Psounis K,Raghavendra C S.Spray and wait:an efficient routing scheme for intermittently connectedmobilenetworks[C]//ACM SIGCOMM Workshop on Delay-Tolerant Networking,2005:252-259.
[12]Walker B D,Glenn J K,Clancy T C.Analysis of simple counting protocols for delay-tolerant networks[C]//The Workshop on Challenged Networks,2007:19-26.
[13]Seligman M,Fall K,Mundur P.Alternative custodians for congestion control in delay tolerant networks[C]//SIGCOMM Workshop on Challenged Networks,2006:229-236.
[14]Seligman M,Fall K,Mundur P.Storage routing for DTN congestion control:Research articles[J].Wireless Communications&Mobile Computing,2007,7(10):1183-1196.
[15]Small T,Haas Z J.Resource and performance tradeoffs in delay-tolerant wireless networks[C]//ACM Workshop on Delay Tolerant Networking,2005:260-267.
[16]Ker,Nen A,Ott J,et al.The ONE simulator for DTN protocol evaluation[C]//International Conference on Simulation TOOLS and Techniques for Communications,Networks and Systems,Simutools 2009,Rome,Italy,2009.