针对机会网络中数据送达率较低的问题,文中根据节点历史接触信息即节点相遇次数、相遇时间长度、节点关系稳定性来计算节点转发效用值。首先选择通信范围内效用值最大的邻居节点作为初始转发节点,再根据余弦相似度选择其他转发节点,使得转发节点能够尽可能均匀地分布。在此基础上,提出一种基于节点位置余弦相似度的机会网络转发算法(Opportunistic Network forwarding algorithm based on Node Cosine Similarity,ONNCS)。该算法使得转发节点能够均匀地分布,因此数据报文能够尽快地被转发到目的节点。实验结果表明,ONNCS具有较高的转发成功率和较低的转发能耗,转发成功率高出其他算法5%~8%。
基于社会的机会网络中,节点趋向于和自己关系亲密的节点进行接触,因此可以通过评价节点之间的亲密程度来帮助预测节点之间的接触概率。由于节点亲密性的时间相关性和区域相关性,利用节点的历史接触信息构造节点亲密程度的评价模型时,考虑节点接触区域和节点接触时间对亲密程度的影响,从而得到节点在相应区域的亲密节点——区域朋友(Regional Friends,RF)。最后结合节点当前位置和区域朋友关系提出一种基于区域朋友关系的机会路由算法(Opportunistic Routing algorithm based on Regional Friendship,ORRF)。实验数据表明,在节点分布密度以及数据可容忍时延变化的网络环境下,该算法得到较高的数据送达率和较低的转发能耗。