1.一种基于车辆节点检测和惩罚机制的路由协议算法,其特征在于,包括以下步骤:步骤1,基于分布式的无线传感网络,建立无线传播模型,具体为公式(1):公式(1)中,Pr(A→B)为节点B接收到节点A信号的强度,G为与节点无线收发器及工作频段相关的常数,Pt为节点A的发射功率,d为节点A与节点B之间的距离,λ是与传播环境相关的常数;
只有当节点接收的信噪比γ大于某个值时,节点才能正确接收到消息,节点A接收节点B发送的消息时,其信噪比γ(B→A)可表示为公式(2),公式(2)中,N0为环境噪声;
步骤2,建立自私节点检测模型;
统计网络中所有节点在接收数据过程中每个临近节点的信号强度,同时基于步骤1的无线传播模型,根据公式(1)-(2)计算处节点B接收节点A的信噪比γ(A→B)以及信噪比γ(B→C)、信噪比γ(B→G)、信噪比γ(B→A);
在非对称链路假设下γ(B→A)≠γ(A→B),在γ(B→A)≥γ(B→C)的情况下,节点A通过侦听节点B转发数据的方法进行自私节点的检测;在γ(B→A)<γ(B→C)情况下,节点A在临近节点中寻找满足条件γ(B→G)≥γ(B→C)的节点G作为监测节点,进行判断和检测自私节点;
步骤3,基于步骤2的自私节点检测结果,设定F为信誉度,根据节点初始信誉度f、中间节点帮助转发消息后信誉度Faward、自私节点信誉度Fpunish,进行信誉度的评估,得到最终的综合信誉值;
步骤4,基于步骤3的综合信誉值并对其进行评估,进行节点的分类惩罚,促使节点能够积极加入到无线传感网络中,与其他节点进行合作。
2.根据权利要求1所述的一种基于车辆节点检测和惩罚机制的路由协议算法,其特征在于,所述步骤2的具体步骤为:步骤2.1,接收节点C将自身得到的B→C构造网络层数据包MSINR向检测发起节点A发送;
步骤2.2,当节点A接收到步骤2.1中的MSINR信息,得到γ(B→C),进行以下计算:Ifγ(B→C)<γ(B→A)then
节点A自身为检测节点;
节点A直接判定节点B是否为自私节点;
Else if γ(B→C)>γ(B→A)then转至步骤2.3;
Endif
步骤2.3,节点A在MAC层广播请求消息Mreq,其中包含γ(B→C),只有节点A的临近节点接收到Mreq消息,当临近节点G接收到Mreq消息,进行以下计算:If γ(B→G)>γ(B→C)then
节点G被选择为检测代理;
发送响应消息Mreq响应检测发起节点;
Endif
步骤2.4,设检测发起节点收到x个Mres消息,则进行以下计算:If x>0 then
检测发起节点得到合适的检测代理;
Else节点A自身为检测节点;
节点A根据多个检测代理的汇报信息,判断节点B是否为自私节点;
Endif
步骤2.5,每隔固定时间,节点G向节点A发送汇报消息Mres,汇报此段时间内的检测统计值,包括被检测节点B向节点C转发节点A的数据包个数,完成自私点检测。
3.根据权利要求2所述的一种基于车辆节点检测和惩罚机制的路由协议算法,其特征在于,所述步骤3的具体步骤为:步骤3.1,由步骤2可知,确认节点B为自私节点,设信誉值的初始值为:f=M,其中M代表节点初始化时的信誉初始值;
当中间节点帮助转发消息以后,对节点的奖励体现在节点的信誉值上,此时节点的信誉值为:Faward=P*e,其中e则代表节点帮助节点A进行数据包转发的次数;
当中间节点没有帮助转发消息时,判断节点为自私行为,会对节点采取一定的惩罚措施,此时节点的信誉值为:Fpunish=Q*d',其中d'代表节点B被认定采用了自私行为的次数;
其中P和Q为可调参数,满足0
步骤3.2,由步骤3.1可得到节点的综合信誉值为:Fb(e,d')=Faward-Fpunish+f (3)其中,b表示节点B。
4.根据权利要求1所述的一种基于车辆节点检测和惩罚机制的路由协议算法,其特征在于,所述步骤4的具体步骤为,对信誉值设定初始值,通过不断地相互通信并且更新信誉值,对节点类别划分为四类:当综合信誉值高于H时,节点为信誉值良好节点;
当综合信誉值在[0,H]时,节点为正常节点;
当综合信誉值在[-H,0]时,限制节点在网络中的活动,节点为信誉值较低节点,此时节点只能作为中间节点为其他节点传递信息,节点本身不能作为源节点对外发送信息;
当综合信誉值低于-H时,节点为自私节点,此时会将该节点隔离网络,对其惩罚,设定惩罚时间,并记录惩罚次数;
其中H为阀值。