目前,机会网络算法中,绝大部分都采取"数据包增殖"策略,即通过数据包的复制,来提高数据包在网络系统中的传递成功率。无论是以Epidemic算法还是以Spray and Wait算法为原型的改进型算法,其核心思想都是增殖。因此对传输过程进行了某种时段上的划分,提出了阶段性非增殖型传递算法NPST(Non Proliferation Stage Transfer Algorithm)。该算法的核心思想是:在系统运行的初期,系统按照其他经典算法运行;当节点中缓存的数据包达到某种条件时,系统改用非增殖型策略,节点间数据包的转发不再产生新的副本,而是以"交换"的方式进行;在系统运行的中期及后期,该算法能有效降低系统整体的路由开销及能量消耗,提高网络性能。
提出了基于消息重要性的能量均衡路由算法——MIEBR(message importance based energy balanced routing algorithm)。MIEBR对消息重要性进行度量,并根据消息转发收益确定消息的转发顺序和路由。在节点缓存空间不足时,MIEBR依据消息缓存价值进行缓存替换。实验结果表明,在缓存空间和能量受限的机会网络中,MIEBR均衡节点的能量消耗,降低了重要消息的传输延时,在投递成功率和延时等方面优于其他算法。
医疗过程中会产生大量的数据信息,但是海量的医疗数据与有限的网络资源存在矛盾,因此需要压缩传输信息,从而降低传输过程中的能量消耗。对机会网络中的信息发送、接收过程进行分析,建立了减少能耗有效性数据传输路由算法(reduce energy effective data transmission algorithm,REEDT)。该算法通过对发送数据进行有效筛选,建立了优化的信息发送和接收机制。经过仿真实验,并与Spray and Wait和Binary Spray and Wait算法比较,该算法降低了网络传输的能量消耗。
选择合适的邻居节点进行信息传递是机会网络实现高效转发的关键因素.由于节点的移动性带来的邻居节点选择困难、传输过程不稳定以及网络拓扑结构变化等因素,使得机会网络的传输成功率比较低.针对这一问题,利用节点之间的社会属性进行邻居节点的选择,提出一种基于节点相似度的路由算法(Opportunistic Network Routing Algorithm Based on Node Similarity)(ONNS).首先计算节点之间数据分组的编辑距离,再计算出两个节点的相似度,并按照一定的约束规则对节点间的相似度进行筛选,最终可以得到一条或多条相对比较可靠的传输路径.与传统的路由算法比较,仿真实验表明,相似度算法能够有效地提高传输成功率,降低传输延迟以及路由开销.
机会网络中主流的路由算法多数未考虑节点的社区性质。针对该问题,提出一种基于社区和社会性的机会网络路由算法。根据节点间的社会关系强度动态自适应地将节点分割为多个社区,并利用社会性高的节点带动消息的发送,逐步把消息发送至目标社区节点或社会性高的节点。仿真结果表明,与Spray and Wait和PRoPHET算法相比,该算法具有较高的传输成功率和较低的传输延迟。