邬 迎 高 静
(郑州经贸学院 河南 郑州 451191)
时延容忍网络(Delay Tolerant Network,DTN)能够处理无线网络中间歇性连接和长时延问题。DTN不同于传统网络,其主要采用存储-转发策略来克服缺乏端到端路径问题[1]。DTN由资源受限的节点(比如缓存空间、节点功率等受限)组成,并且通过节点移动,缩短了节点的连通时间。DTN广泛应用于水下网络、车联网、军事应用和灾难救援等多个领域[2-3],这些应用均要求DTN能有效地传递数据。虽然国内外研究人员对DTN路由有着广泛关注[4-5],但是对DTN路由的不正当行为关注度较低。例如,自私或恶意节点故意将需要转发的数据包进行丢弃,这些自私或恶意行为诱导了路由的不正当行为。虽然针对移动自组织网络和无线传感网络内的路由不正当行为有多种不同方案,但这方案并不适合DTN[6]。针对DTN路由不正当行为的研究表明,恶意节点降低了消息传递成功率。但已有一些检测恶意行为方案是基于节点转发事实,不能有效地滤出恶意节点不诚实的推荐。例如,文献[7]虽然通过自信因子计算间接信任产生了较高的推荐信任值,但该方案不能防御共谋攻击,而且仅依据转发行为评估节点信任值,有可能产生不准确的信任估计。DTN也采用基于相遇路由(Encounter-Based Routing,EBR)的数据转发方案,但EBR不能防御共谋攻击[8]。文献[9]采用信任管理机制解决自私行为和共谋攻击,但该方案不能有效解决路由的不正当行为。因此,本文提出一种基于分布式信任管理的时延容忍网络数据转发方案(Distributed Trust Management-based Data Forwarding scheme in delay tolerant network,DTMDF)。本文方案采用分布式信任管理估计节点的直接信任和间接信任,并依据节点信任值选择数据转发节点。仿真结果表明,本文方案能够提高数据包传递率并降低传输时延。
DTMDF方案的主要目的是在紧急通信网络中,确认消息能够有效地传输至目的节点。假定节点a与节点b相遇,且节点a需向目的节点b传输消息。首先,节点a需要先获取邻居节点的信任值,并计算邻居节点b的信任值,然后再从邻居节点中选择信任值最高的节点作为转发节点。DTMDF方案用相遇记录(Encounter Record,ER)来估计节点信任值。假设节点a与节点b相遇,则节点a对节点b的ER可表示为:
(1)
DTMDF方案中,节点的信任值由总体直接信任和来自ER的推荐信任两部分组成,并且用统计模型Beta分布来表述信任关系。其中:总体直接信任值包括直接信任(节点之间通过直接接触观察所得信任值)和能量信任(直接接触的节点之间通过能耗来评估节点的信任值);推荐信任包括间接信任(通过与两个节点均有接触的单个邻居节点对于目标节点的推荐来获取目标节点的信任值)和推荐信誉值(通过与两个节点均有接触的多个共同邻居节点的信誉推荐来计算目标节点的信任值以避免共谋攻击)。在Beta分布模型中引入两个参数α和β表示期望概率,利用伽马函数Γ表示Beta分布。当某一节点与其邻居节点接触后,则可依据ER计算Beta分布。其中Beta分布及其期望概率值如下:
(2)
式中:0≤p≤1;α≥0;β≥0。
(1) 直接信任。利用节点a和节点b的ERab来表述它们之间的直接信任关系。其中:令αab表示节点a对节点b的积极观察;βab表示节点a对节点b的消极观察。如果节点a对节点b没有接触历史,则将节点a对节点b的初始信任值设为0.5。令s和f分别表示节点a与节点b间接触的积极接触和消极接触的累加证据,则αab和βab可表示为:
(3)
节点a和节点b来自ERab的直接信任关系为:
(4)
由于节点移动需要动态更新ER表,因此所给DTMDF方案引入因子λ来减少历史观察对节点a和节点b的影响,λ的主要作用是使时间越早的接触对于直接信任的影响越小。如果节点a在ERab内观察到一个额外事件,那么就对s和f进行更新:
(5)
式中:0≤λ≤1;sold表示节点a对节点b的历史积极观察;fold表示节点a对节点b的历史消极观察;snew表示节点a对节点b新的积极观察;fnew表示节点a对节点b新的消极观察。
如果节点a与节点b无新的接触,则根据式(6)更新:
(6)
(2) 能量信任。现有的信任管理并没有考虑能量信任,能量消耗是网络资源受限的关键因子。恶意节点可以资源耗尽攻击向邻居节点泛洪消息,达到消耗相遇节点能量的目的。而自私节点由于不转发数据包则会降低能量消耗,因此,DTMDF方案将能量作为一个因子来评估节点的行为,通过能量预测模型来评估节点的可靠性。DTMDF方案采用文献[10]给出的DTN能量消耗模型。节点剩余能量ER等于初始能量EI减去消耗的能量EC,如下:
(7)
式中:Es表示扫描(监听)数据消耗的能量;Et表示传输数据消耗的能量;Er表示接收数据消耗的能量。通过归一化处理使EC满足EC∈[0,1],则可得能量信任值TE如下:
TE=1-EC
(8)
(9)
稀疏连接是DTN的重要特性,由于缺乏端到端的连接,DTN采用存储-转发消息的方式,即将一条消息通过中间节点转发到达目的节点。节点可通过其邻居节点获取推荐信任,进而评估相遇节点的信任值。
(1) 间接信任。假定节点a和节点c有过历史接触,即节点a具有ERac。而节点a没有与节点b接触过,但是节点c与节点b有过接触,如图1所示。
图1 直接和间接信任
(10)
(2) 推荐信誉值。由于来自单个邻居节点的推荐信任可能存在与恶意节点或自私节点形成共谋攻击,所以在计算间接信任时引入推荐信誉值,其目的是消除错误推荐,主要通过评估节点和被评估节点的共同邻居来计算推荐信誉值[11],如图2所示。
图2 推荐信任示意图
假设节点a和节点b有共同邻居节点c1,c2,…,cn。通过对所有邻居节点的推荐进行滤除,对于没有推荐历史的推荐节点,其初始推荐信任值为0.5。对于有推荐历史的推荐节点,首先计算该推荐节点对被推荐节点的推荐信誉值,然后根据推荐节点对被推荐节点的推荐值和推荐信誉值,即可求得该推荐节点的最新推荐值。假设推荐节点c2有过推荐历史,其余节点均无推荐历史,则推荐节点c2对节点b的推荐信誉值为:
(11)
最后,可计算对节点b的推荐信任值:
(12)
(13)
由于DTN网络连接频繁中断,需周期性地更新节点的信任值,但是如果更新太过频繁,将会导致过高的能量消耗。可以采用信任记录窗口来更新节点总体的信任值,但同时应注意,如果信任记录窗口太长,容易形成共谋攻击。信任记录窗口由多个时隙组成,ts表示时隙个数。节点a在时隙i评估节点b的信任值可表示为Tab(i),其中i=1,2,…,ts。在下一个信任记录窗口更新信任值如下:
Tab(i+1)new=Tab(i)ωab(i)+Tab(i+1)ωab(i+1)
(14)
式中:ωab(i)+ωab(i+1)=1,ωab(i)表示之前信任值的权重因子,ωab(i+1)表示当前信任值的权重因子。
为更好地分析DTMDF方案性能,选择机会网络环境仿真软件(Opportunistic Network Environment,ONE)[11]和PDM灾后移动模型[12]。其中机会网络环境仿真软件ONE主要是针对DTN网络环境(不需要源节点与目的节点之间存在完整链路,主要利用节点移动带来的相遇机会实现网络通信)设计的仿真软件。相对于针对传统移动自组织网络MANET(需要预先建立完整的端到端通信链路,节点对之间存在至少一条完整的通信链路)设计的NS2和OMNET++仿真软件。ONE不只是关注路由模拟,其在单个框架内具有模拟分析多种DTN协议的能力,通过将移动模型、DTN路由、可视化图形界面整合为一体,使之容易扩展且能提供大量结果报告和分析模型。移动模型是指节点在仿真过程中的移动方式,ONE最初提供了RWP、MBM、ShortestPath-MBM、MapRouteMovement和ExternaMovement五种移动模型。PDM灾后移动模型是由ShortestPath-MBM移动模型扩展而来,该移动模型中只有一名救援人员在一个社区中心和其邻近节点之间巡逻,警察巡逻车从其基地出发巡逻,并在返回基地前随机拜访一个邻近节点。
仿真场景设置主要有:5个邻居节点、4个中心、10个救援-疏散营、100个救援工作人员、10辆供给车、10辆紧急车辆、10艘公安巡逻艇,仿真时间48 h,仿真场景大小4 500 m×3 400 m。场景中行人移动速度为0.5~1.5 km/h,车辆移动速度为2.7~13.9 km/h。在场景中有100位行人,50辆车,每隔10分钟产生一条消息。消息大小为50~5 MB。下面给出DTMDF方案与RBTM[13]、CWS[14]和SPRAY[15]在数据包传递率、开销、时延的性能比较。其中:RBTM方案采用贝叶斯滤波摒除不真实的推荐值;CWS方案采用信誉模型并依据转发行为对节点分类;SPRAY方案通过发送大量副本然后直到其中一个节点到达目的地。
图3为DTMDF方案与RBTM、CWS和SPRAY的数据包传递率随恶意节点百分比的变化情况,其中数据包传递率等于已成功传输的消息数与总传输消息数之比。可以看出,4种方案的数据包传递率均随恶意节点百分比的增加而降低。这是由于恶意节点丢弃数据包导致数据包传递率降低,而恶意节点的百分比越高,所丢弃的数据包数也越多。相比于DTMDF方案和CWS方案,SPRAY方案和RBTM方案随恶意节点数的增加而下降得更快。这是由于SPRAY方案未能采用机制消除恶意节点,RBTM方案通过Beta分布和自信因子估计直接信任和间接信任,但RBTM方案是针对MANET设计的,与CWS方案和DTMDF方案相比,RBTM方案的数据包传递率随恶意节点的百分比增加而下降得更快。与CWS方案相比,即使存在50%的恶意节点,DTMDF方案仍然具有更高的数据包传递率。这是由于DTMDF方案通过推荐信任检测恶意节点,并利用推荐信誉对推荐信任进行评估,而RBTM方案和CWS方案仅通过转发证据检测恶意节点。
图3 数据包传递率
图4为DTMDF方案与RBTM、CWS和SPRAY的开销随恶意节点百分比的变化情况,其中开销反映了传输消息成本。可以看出,4种方案的开销均随恶意节点数的增加而下降,这主要是由于随着恶意节点数量的增多导致丢失的消息数量也越多,而开销率是依据已成功传输至目的节点的消息数进行计算,传送的消息中随着恶意节点数量增多,只有很少一部分到达目的地。与RBTM方案、CWS方案和SPRAY方案相比,所给DTMDF方案具有更低的开销,这主要是由于CWS方案和SPRAY方案没有解决信任更新问题,而RBTM方案花费了太多时间计算信任值。
图4 开销分析
图5为DTMDF方案与RBTM、CWS和SPRAY的时延随恶意节点百分比的变化情况,其中时延是指一条消息从源节点传输至目的节点的平均时间。可以看出,4种方案的时延均随恶意节点的增加而下降。这主要是由于网络内恶意节点越多,将消息传输至目的节点的时间就越长,而且需长时延传输的消息很可能被丢弃,但被丢弃的消息并不在计算消息时延的范围内。与RBTM方案、CWS方案和SPRAY方案相比,DTMDF方案的时延非常小,说明DTMDF方案能有效控制时延,其时延主要来自于重传和消息队列。这主要是由于CWS方案和SPRAY方案没有解决信任更新问题,出现新的恶意节点时将会导致原转发路径无法到达目的地,需要重新选择路径导致时延有较大增加,而RBTM方案每次转发消息都需要重新计算信任值,导致时延大幅增加。
图5 时延分析
在时延容忍网络中,恶意或自私节点丢弃或不转发消息的行为将严重影响网络性能,其中信任模型是消除时延容忍网络路由不正当行为的重要手段。大多数恶意或自私节点是通过丢弃数据或不转发数据,表现出路由的不正当行为,而通过有效的检测机制能够消除时延容忍网络路由的不正当行为。本文提出一种基于分布式信任管理的时延容忍网络数据转发方案。首先融合节点的转发行为以及它们的能量消耗信息计算出直接信任,再通过邻居节点推荐的信息融合间接信任和推荐信誉计算出推荐信任,然后融合直接信任和推荐信任得到节点总体信任,最后根据所计算的信任值转发数据。仿真结果表明:本文方案能有效消除时延容忍网络路由的不正当行为,在数据包传递率、开销和时延等性能方面均优于RBTM、CWS和SPRAY方案。下一步的主要研究方向是利用时延容忍网络网关减少直接信任和间接信任计算阶段的能量消耗。