PROPHET路由算法基本思想
PROPHET通过节点间的历史相遇信息来估计传输概率。它使用一个称为传输预测值Pa,b的参数作为路由度量,表示将消息从节点a传输到上的节点b的传输概率。假设节点a要将消息m传输到目的节点d,若节点a与节点b相遇,仅当Pb,d≥Pa,d时,a才将消息转发给节点b。
Pa,b的计算包括三个部分。当两个节点相遇时,彼此都更新各自的传输预测值:
P(a,b) = P(a,b)old + (1-P(a,b)old) x Pinit,其中Pinit是初始化常量
如果一段时间内,一对节点之间并没有相遇,则各自传输预测值通过以下方式进行更新:
P(a,b) = P(a,b)old x yk,其中y为删减因子,k为上次相遇后经历的时间片数。
另外,如果节点a与节点b经常相遇,而节点b也与节点c经常相遇,则
P(a,c) = P(a,c)old + (1-P(a,c)old) x P(a,b) x P(b,c) x β,其中β为传递因子。