CN111542052A - 一种物联网中基于群体信任度的数据转发方法及装置 - Google Patents

一种物联网中基于群体信任度的数据转发方法及装置 Download PDF

Info

Publication number
CN111542052A
CN111542052A CN202010333682.3A CN202010333682A CN111542052A CN 111542052 A CN111542052 A CN 111542052A CN 202010333682 A CN202010333682 A CN 202010333682A CN 111542052 A CN111542052 A CN 111542052A
Authority
CN
China
Prior art keywords
node
community
nodes
credibility
representing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010333682.3A
Other languages
English (en)
Other versions
CN111542052B (zh
Inventor
李继蕊
杨茗喆
宋学坤
韩敏
王一方
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Henan University of Traditional Chinese Medicine HUTCM
Original Assignee
Henan University of Traditional Chinese Medicine HUTCM
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Henan University of Traditional Chinese Medicine HUTCM filed Critical Henan University of Traditional Chinese Medicine HUTCM
Priority to CN202010333682.3A priority Critical patent/CN111542052B/zh
Publication of CN111542052A publication Critical patent/CN111542052A/zh
Application granted granted Critical
Publication of CN111542052B publication Critical patent/CN111542052B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/60Context-dependent security
    • H04W12/66Trust-dependent, e.g. using trust scores or trust relationships
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/009Security arrangements; Authentication; Protecting privacy or anonymity specially adapted for networks, e.g. wireless sensor networks, ad-hoc networks, RFID networks or cloud networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/04Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources
    • H04W40/08Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources based on transmission power
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/04Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources
    • H04W40/10Communication route or path selection, e.g. power-based or shortest path routing based on wireless node resources based on available power or energy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/02Communication route or path selection, e.g. power-based or shortest path routing
    • H04W40/22Communication route or path selection, e.g. power-based or shortest path routing using selective relaying for reaching a BTS [Base Transceiver Station] or an access point
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明实施例提供了一种物联网中基于群体信任度的数据转发方法及装置,确定携带待转发数据的起始节点,以及待转发数据的目标节点;确定与起始节点处于通信范围内的相遇节点的集合;从相遇节点的集合中筛选出剩余能量大于预设阈值的节点,组成可选节点集合;确定各个可选节点所属社区,以及目标节点所属社区;分别计算各个可选节点所属社区与目标节点所属社区的群体可信度,并基于计算结果从可选节点所属社区中确定中继社区,从中继社区中确定第一中继节点,第一中继节点是中继社区中相对于目标节点的数据投递能力最大的可选节点,将第一中继节点的标识发送至起始节点。能够降低将数据转发至恶意节点的概率。

Description

一种物联网中基于群体信任度的数据转发方法及装置
技术领域
本发明涉及物联网通信技术领域,特别是涉及一种物联网中基于群体信任度的数据转发方法及装置。
背景技术
近年来,互联网连接设备数量的急剧增加和智能手机的迅速普及,使物联网服务更加灵活和快速。
然而,由于黑客攻击等因素,物联网中也存在一些恶意节点,若将数据转发至恶意节点,会导致数据传输中断,即数据无法到达目的节点。
因此,通过算法计算可信任节点,进而以可信任节点为中继节点来转发数据在物联网数据转发过程中是至关重要的。
现有的一些研究只是利用节点间的联系概率来确定下一跳节点。然而,采用这种方式仍有较大概率将数据转发到恶意节点。
发明内容
本发明实施例的目的在于提供一种基于群体信任度的数据转发方法及装置,以降低将数据转发至恶意节点的概率。
具体技术方案如下:
本发明实施例提供了一种物联网中基于群体信任度的数据转发方法,所述方法包括:
确定携带待转发数据的起始节点,以及所述待转发数据的目标节点;
确定与所述起始节点处于通信范围内的相遇节点的集合;
当所述相遇节点的集合中不包含所述目标节点时,从所述相遇节点的集合中筛选出剩余能量大于预设阈值的节点,组成可选节点集合;
基于社区划分算法,确定各个可选节点所属社区,以及所述目标节点所属社区;
当所述可选节点集合中不存在与所述目标节点属于同一社区的节点时,分别计算各个可选节点所属社区与所述目标节点所属社区的群体可信度,并基于计算结果从所述可选节点所属社区中确定中继社区,所述中继社区是与所述目标节点所属社区的群体可信度最大的社区;其中,社区间的群体可信度包括社区间的直接可信度和社区间的间接可信度;所述社区间的间接可信度是根据所述社区间的直接可信度计算得到的,所述社区间的直接可信度是根据两个社区中具备直接交互关系的节点在各自社区中的可信度计算得到的,所述节点在各自社区的可信度是根据该节点与自身社区内的其他节点之间的直接可信度计算得到的,所述节点之间的直接可信度是根据该两个节点之间在预设时间段内的通信次数,转发数据次数以及转发数据的能耗计算得到的;
从所述中继社区中确定第一中继节点,所述第一中继节点是所述中继社区中相对于所述目标节点的数据投递能力最大的可选节点,其中,所述数据投递能力根据节点之间在预设时间段内的通信频率确定;
将所述第一中继节点的标识发送至所述起始节点,以使所述起始节点向所述第一中继节点转发数据。
可选的,当所述相遇节点的集合中包含所述目标节点时,所述方法还包括:
指示所述初始节点向所述目标节点转发数据。
可选的,当所述可选节点集合中存在与所述目标节点属于同一社区的节点时,所述方法还包括:
确定与所述目标节点属于同一社区的节点,组成候选节点集合;
从所述候选节点集合中确定第二中继节点,所述第二中继节点是所述候选节点集合中相对于所述目标节点的数据投递能力最大的节点;
将所述第二中继节点的标识发送至所述起始节点,以使所述起始节点向所述第二中继节点转发数据。
可选的,基于如下公式计算所述节点之间的直接可信度:
Figure BDA0002465848300000021
Figure BDA0002465848300000031
Figure BDA0002465848300000032
Figure BDA0002465848300000033
其中,
Figure BDA0002465848300000034
表示节点vi对节点vj的直接可信度,α,β和γ表示预设权重,
Figure BDA0002465848300000035
表示节点vi和节点vj之间的联系率,Δt表示预设时间间隔,
Figure BDA0002465848300000036
表示节点vi和vj从t-Δt到t期间的联系次数,u表示除节点vj之外的其他任意节点,
Figure BDA0002465848300000037
表示节点vi与除节点vj之外的其他节点从t-Δt到t期间联系的次数之和;
Figure BDA0002465848300000038
表示节点vi和节点vj之间的服务率,
Figure BDA0002465848300000039
表示在t-Δt到t期间节点vi为节点vj转发数据包的数量;
Figure BDA00024658483000000310
表示在t-Δt到t期间节点vi接收到的数据包总数;
Figure BDA00024658483000000311
表示节点vi的剩余能量比,
Figure BDA00024658483000000312
表示t时刻节点vi的初始能量,Δe表示vi在Δt时间内转发数据包的能耗;
基于如下公式计算所述节点在各自社区的可信度:
Figure BDA00024658483000000313
其中,T(vi,scp)表示节点vi在自身社区内的可信度,N(scp)表示节点vi所属社区中包含的所有节点;
基于如下公式计算所述社区间的直接可信度:
Figure BDA00024658483000000314
Λ=T(vi,scp)×T(vj,scq)
Figure BDA0002465848300000041
其中,DN(scp,scq)表示社区scp和社区scq中具备直接交互关系的节点对的集合,TF(scp,scq)表示社区scp和社区scq之间的可信因子;
基于如下公式计算所述社区间的间接可信度:
Figure BDA0002465848300000042
其中,CC(scp,scq)表示社区scp到scq的所有可信路径上中间社区icl的集合,l表示可信路径序号,m表示可信路径的总数;
基于如下公式计算所述社区间的群体可信度:
Figure BDA0002465848300000043
其中,
Figure BDA0002465848300000044
表示社区scp和社区scq之间的群体可信度,
Figure BDA0002465848300000045
表示社区scp中与社区scq具备合作关系的节点的数目占社区scp中总节点数目的比例,
Figure BDA0002465848300000046
表示社区scq中与社区scp具备合作关系的节点的数目占社区scq中总节点数目的比例,χ表示预设的社区间直接可信度权重,η表示预设的社区间间接可信度权重;
按照如下步骤确定节点间数据投递能力:
当节点vi与节点vj在t时刻之前预设时间段内建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure BDA0002465848300000047
其中,
Figure BDA0002465848300000048
表示节点vi与节点vj的数据投递能力,
Figure BDA0002465848300000049
表示节点vi与节点vj更新前的数据投递能力,
Figure BDA0002465848300000051
表示预设常量;
当节点vi与节点vj在t时刻之前预设时间段内没有建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure BDA0002465848300000052
其中,δ表示衰减常量,τ表示预设时间间隔;
当节点vj在与节点vi建立通信连接之前,与节点vj建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure BDA0002465848300000053
其中,
Figure BDA0002465848300000054
表示节点vi与节点vk的数据投递能力,
Figure BDA0002465848300000055
表示节点vk与节点vj的数据投递能力,ε表示预设乘积系数。
为实现上述目的,本发明实施例还提供了一种物联网中基于群体信任度的数据转发装置,所述装置包括:
第一确定模块,用于确定携带待转发数据的起始节点,以及所述待转发数据的目标节点;
第二确定模块,用于确定与所述起始节点处于通信范围内的相遇节点的集合;
筛选模块,用于当所述相遇节点的集合中不包含所述目标节点时,从所述相遇节点的集合中筛选出剩余能量大于预设阈值的节点,组成可选节点集合;
第三确定模块,用于基于社区划分算法,确定各个可选节点所属社区,以及所述目标节点所属社区;
第四确定模块,用于当所述可选节点集合中不存在与所述目标节点属于同一社区的节点时,分别计算各个可选节点所属社区与所述目标节点所属社区的群体可信度,并基于计算结果从所述可选节点所属社区中确定中继社区,所述中继社区是与所述目标节点所属社区的群体可信度最大的社区;其中,社区间的群体可信度包括社区间的直接可信度和社区间的间接可信度;所述社区间的间接可信度是根据所述社区间的直接可信度计算得到的,所述社区间的直接可信度是根据两个社区中具备直接交互关系的节点在各自社区中的可信度计算得到的,所述节点在各自社区的可信度是根据该节点与自身社区内的其他节点之间的直接可信度计算得到的,所述节点之间的直接可信度是根据该两个节点之间在预设时间段内的通信次数,转发数据次数以及转发数据的能耗计算得到的;
第五确定模块,用于从所述中继社区中确定第一中继节点,所述第一中继节点是所述中继社区中相对于所述目标节点的数据投递能力最大的可选节点,其中,所述数据投递能力根据节点之间在预设时间段内的通信频率确定;
第一发送模块,用于将所述第一中继节点的标识发送至所述起始节点,以使所述起始节点向所述第一中继节点转发数据。
可选的,当所述相遇节点的集合中包含所述目标节点时,所述装置还包括指示模块,所述指示模块用于:
指示所述初始节点向所述目标节点转发数据。
可选的,当所述可选节点集合中存在与所述目标节点属于同一社区的节点时,所述装置还包括:
第六确定模块,用于确定与所述目标节点属于同一社区的节点,组成候选节点集合;
第七确定模块,用于从所述候选节点集合中确定第二中继节点,所述第二中继节点是所述候选节点集合中相对于所述目标节点的数据投递能力最大的节点;
第二发送模块,用于将所述第二中继节点的标识发送至所述起始节点,以使所述起始节点向所述第二中继节点转发数据。
可选的,基于如下公式计算所述节点之间的直接可信度:
Figure BDA0002465848300000061
Figure BDA0002465848300000071
Figure BDA0002465848300000072
Figure BDA0002465848300000073
其中,
Figure BDA0002465848300000074
表示节点vi对节点vj的直接可信度,α,β和γ表示预设权重,
Figure BDA0002465848300000075
表示节点vi和节点vj之间的联系率,Δt表示预设时间间隔,
Figure BDA0002465848300000076
表示节点vi和vj从t-Δt到t期间的联系次数,u表示除节点vj之外的其他任意节点,
Figure BDA0002465848300000077
表示节点vi与除节点vj之外的其他节点从t-Δt到t期间联系的次数之和;
Figure BDA0002465848300000078
表示节点vi和节点vj之间的服务率,
Figure BDA0002465848300000079
表示在t-Δt到t期间节点vi为节点vj转发数据包的数量;
Figure BDA00024658483000000710
表示在t-Δt到t期间节点vi接收到的数据包总数;
Figure BDA00024658483000000711
表示节点vi的剩余能量比,
Figure BDA00024658483000000712
表示t时刻节点vi的初始能量,Δe表示vi在Δt时间内转发数据包的能耗;
基于如下公式计算所述节点在各自社区的可信度:
Figure BDA00024658483000000713
其中,T(vi,scp)表示节点vi在自身社区内的可信度,N(scp)表示节点vi所属社区中包含的所有节点;
基于如下公式计算所述社区间的直接可信度:
Figure BDA00024658483000000714
Λ=T(vi,scp)×T(vj,scq)
Figure BDA0002465848300000081
其中,DN(scp,scq)表示社区scp和社区scq中具备直接交互关系的节点对的集合,TF(scp,scq)表示社区scp和社区scq之间的可信因子;
基于如下公式计算所述社区间的间接可信度:
Figure BDA0002465848300000082
其中,CC(scp,scq)表示社区scp到scq的所有可信路径上中间社区icl的集合,l表示可信路径序号,m表示可信路径的总数;
基于如下公式计算所述社区间的群体可信度:
Figure BDA0002465848300000083
其中,
Figure BDA0002465848300000084
表示社区scp和社区scq之间的群体可信度,
Figure BDA0002465848300000085
表示社区scp中与社区scq具备合作关系的节点的数目占社区scp中总节点数目的比例,
Figure BDA0002465848300000086
表示社区scq中与社区scp具备合作关系的节点的数目占社区scq中总节点数目的比例,χ表示预设的社区间直接可信度权重,η表示预设的社区间间接可信度权重;
当节点vi与节点vj在t时刻之前预设时间段内建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure BDA0002465848300000087
其中,
Figure BDA0002465848300000088
表示节点vi与节点vj的数据投递能力,
Figure BDA0002465848300000089
表示节点vi与节点vj更新前的数据投递能力,
Figure BDA00024658483000000810
表示预设常量;
当节点vi与节点vj在t时刻之前预设时间段内没有建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure BDA0002465848300000091
其中,δ表示衰减常量,τ表示预设时间间隔;
当节点vj在与节点vi建立通信连接之前,与节点vj建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure BDA0002465848300000092
其中,
Figure BDA0002465848300000093
表示节点vi与节点vk的数据投递能力,
Figure BDA0002465848300000094
表示节点vk与节点vj的数据投递能力,ε表示预设乘积系数。
为实现上述目的,本发明实施例还提供了一种电子设备,包括处理器、通信接口、存储器和通信总线;其中,处理器、通信接口、存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一方法步骤。
为实现上述目的,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一方法步骤。
本发明实施例有益效果:
应用本发明实施例提供的物联网中基于群体信任度的数据转发方法及装置,确定携带待转发数据的起始节点,以及待转发数据的目标节点;确定与起始节点处于通信范围内的相遇节点的集合;当相遇节点的集合中不包含目标节点时,从相遇节点的集合中筛选出剩余能量大于预设阈值的节点,组成可选节点集合;基于社区划分算法,确定各个可选节点所属社区,以及目标节点所属社区;当可选节点集合中不存在与目标节点属于同一社区的节点时,分别计算各个可选节点所属社区与目标节点所属社区的群体可信度,并基于计算结果从可选节点所属社区中确定中继社区,中继社区是与目标节点所属社区的群体可信度最大的社区;其中,社区间的群体可信度包括社区间的直接可信度和社区间的间接可信度;社区间的间接可信度是根据社区间的直接可信度计算得到的,社区间的直接可信度是根据两个社区中具备直接交互关系的节点在各自社区中的可信度计算得到的,节点在各自社区的可信度是根据该节点与自身社区内的其他节点之间的直接可信度计算得到的,节点之间的直接可信度是根据该两个节点之间在预设时间段内的通信次数,转发数据次数以及转发数据的能耗计算得到的;从中继社区中确定第一中继节点,第一中继节点是中继社区中相对于目标节点的数据投递能力最大的节点,其中,数据投递能力根据节点之间在预设时间段内的通信频率确定;将第一中继节点的标识发送至起始节点,以使起始节点向第一中继节点转发数据。可见,本发明实施例提供的数据转发方法综合考虑了节点之间的数据投递能力、节点所属社区之间的群体可信度、以及节点间通信次数、数据转发次数、转发数据的能耗等因素,相比于仅利用节点间联系概率来确定下一跳节点的算法,能够显著降低将数据转发到恶意节点的概率。
当然,实施本发明的任一产品或方法并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的物联网中基于群体信任度的数据转发方法的一种流程示意图;
图2为本发明实施例提供的物联网中基于群体信任度的数据转发方法的另一种流程示意图;
图3为本发明实施例提供的物联网中基于群体信任度的数据转发方法的又一种流程示意图;
图4为本发明实施例提供的物联网中基于群体信任度的数据转发装置的一种结构示意图;
图5为本发明实施例提供的电子设备的一种结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了解决物联网领域中,有较大概率将数据转发至恶意节点的问题,本发明实施例提供了一种物联网中基于群体信任度的数据转发方法、装置、电子设备及计算机可读存储介质。
为了便于理解,下面先对物联网中数据转发过程进行简要介绍。物联网中包含数据转发控制中心以及许多设备节点,该数据转发控制中心可以实时获取物联网中设备节点的状态信息,可以包括设备节点所处位置、设备节点是否携带待转发数据、所携带的待转发数据的目标设备节点、设备节点的通信范围、设备节点的当前剩余能量等信息。本领域技术人员可以理解,设备节点可以以主动上报的方式将自身状态信息上传至数据转发控制中心,当然也可以是数据转发控制中心向设备节点索要状态信息,对此不做限定。
下文中均用节点来表示物联网中的设备节点。
本发明实施例提供的物联网中基于群体信任度的数据转发方法可以应用于物联网中的数据转发控制中心,数据转发控制中心可以为节点确定数据转发的路径,以尽可能的减少将数据转发至恶意节点的概率。具体的,参见图1,方法可以包括以下步骤:
S101:确定携带待转发数据的起始节点,以及待转发数据的目标节点。
本发明实施例中,数据转发控制中心可以根据节点的状态信息确定携带待转发数据的起始节点,以及待转发数据的目标节点。
S102:确定与起始节点处于通信范围内的相遇节点的集合。
本发明实施例中,数据转发控制中心可以根据节点所处位置,以及节点的通信范围确定与起始节点处于通信范围内的相遇节点,进而确定相遇节点的集合。
S103:当相遇节点的集合中不包含目标节点时,从相遇节点的集合中筛选出剩余能量大于预设阈值的节点,组成可选节点集合。
本发明实施例中,若相遇节点的集合中不包含目标节点,起始节点无法直接将数据转发至目标节点,因此需要从相遇节点之中选取一个节点作为中继节点。
本发明实施例中,可以从相遇节点的集合中筛选出剩余能量大于预设阈值的节点,组成可选节点集合。其中,剩余能量的阈值可以根据实际情况进行设定,例如要转发的数据量较大时,可以适当选取较大的剩余能量的阈值,以尽可能的避免节点由于剩余能量不足而无法完成数据转发的情况。
此外,当所有相遇节点的剩余能量均不大于预设阈值时,表明相遇节点均无法完成数据转发,这种情况下,可以指示起始节点保持待转发的数据,直到遇到符合能量要求的其他节点。
S104:基于社区划分算法,确定各个可选节点所属社区,以及目标节点所属社区。
本发明实施例中,社区划分算法可以是D2-TOC算法,中文名称为重叠可信社区动态检测算法,该算法针对无法事先预知网络规模的复杂网络环境,采用种子扩展和随机游走算法对网络环境中的节点进行动态划分,得到不同的可信社区。本发明实施例对社区划分算法不再赘述。具体可以参见相关技术,例如公开号为CN108600013B的动态网络的重叠社区发现方法及装置。
本发明实施例中,数据转发控制中心可以根据社区划分算法对节点进行划分,进而得到各个可选节点所属社区,以及目标节点所属社区。
S105:当可选节点集合中不存在与目标节点属于同一社区的节点时,分别计算各个可选节点所属社区与目标节点所属社区的群体可信度,并基于计算结果从可选节点所属社区中确定中继社区,中继社区是与目标节点所属社区的群体可信度最大的社区;其中,社区间的群体可信度包括社区间的直接可信度和社区间的间接可信度;社区间的间接可信度是根据社区间的直接可信度计算得到的,社区间的直接可信度是根据两个社区中具备直接交互关系的节点在各自社区中的可信度计算得到的,节点在各自社区的可信度是根据该节点与自身社区内的其他节点之间的直接可信度计算得到的,节点之间的直接可信度是根据该两个节点之间在预设时间段内的通信次数,转发数据次数以及转发数据的能耗计算得到的。
本发明实施例中,在确定各个可选节点所属社区,以及目标节点所属社区之后,可以判断可选节点集合中是否存在与目标节点属于同一社区的节点。
若判断结果为可选节点集合中不存在与目标节点属于同一社区的节点时,可以分别计算各个可选节点所属社区与目标节点所属社区的群体可信度,并基于计算结果从可选节点所属社区中确定中继社区,其中,中继社区是与目标节点所属社区的群体可信度最大的社区。
为了便于理解,下面举例说明。
设可选节点包含节点A、节点B、节点C和节点D,节点A所属社区为社区1,节点B所属社区为社区2,节点C所属社区为社区3,节点D所属社区为社区4,目标节点所属社区为社区5,则可以分别计算社区1与社区5的群体可信度、社区2与社区5的群体可信度、社区3与社区5的群体可信度、社区4与社区5的群体可信度,根据计算结果从社区1到社区4之间确定一个中继社区,该中继社区与社区5的群体可信度最大。
本发明实施例中,社区间的群体可信度包括社区间的直接可信度和社区间的间接可信度;社区间的间接可信度是根据社区间的直接可信度计算得到的,社区间的直接可信度是根据两个社区中具备直接交互关系的节点在各自社区中的可信度计算得到的,节点在各自社区的可信度是根据该节点与自身社区内的其他节点之间的直接可信度计算得到的,节点之间的直接可信度是根据该两个节点之间在预设时间段内的通信次数,转发数据次数以及转发数据的能耗计算得到的。
S106:从中继社区中确定第一中继节点,第一中继节点是中继社区中相对于目标节点的数据投递能力最大的可选节点,其中,数据投递能力根据节点之间在预设时间段内的通信频率确定。
本发明实施例中,如果中继社区中包含多个可选节点,则可以从中继社区中选取一个第一中继节点,该第一中继节点相对于目标节点具备最大的数据投递能力。其中,数据投递能力是动态变化的参数,可以根据节点之间在预设时间段内的通信频率确定。举例来讲,若一段时间内节点A与目标节点之间的通信频率较高,则该节点A与目标节点的数据投递能力也较大。
S107:将第一中继节点的标识发送至起始节点,以使起始节点向第一中继节点转发数据。
本发明实施例中,所确定的第一中继节点可以作为起始节点的下一跳节点,数据转发控制中心可以将第一中继节点的标识发送至起始节点,起始节点接收到第一中继节点的标识后,向第一中继节点转发数据。
图1所示步骤S101-S106是数据转发控制中心为起始节点确定数据转发的下一跳节点的过程。本领域技术人员可以理解,起始节点将数据转发至下一跳节点后,下一跳节点成为新的起始节点,数据转发控制中心可以继续为新的起始节点确定下一跳节点,直到数据被转发至目标节点。
应用本发明实施例提供的物联网中基于群体信任度的数据转发方法,确定携带待转发数据的起始节点,以及待转发数据的目标节点;确定与起始节点处于通信范围内的相遇节点的集合;当相遇节点的集合中不包含目标节点时,从相遇节点的集合中筛选出剩余能量大于预设阈值的节点,组成可选节点集合;基于社区划分算法,确定各个可选节点所属社区,以及目标节点所属社区;当可选节点集合中不存在与目标节点属于同一社区的节点时,分别计算各个可选节点所属社区与目标节点所属社区的群体可信度,并基于计算结果从可选节点所属社区中确定中继社区,中继社区是与目标节点所属社区的群体可信度最大的社区;其中,社区间的群体可信度包括社区间的直接可信度和社区间的间接可信度;社区间的间接可信度是根据社区间的直接可信度计算得到的,社区间的直接可信度是根据两个社区中具备直接交互关系的节点在各自社区中的可信度计算得到的,节点在各自社区的可信度是根据该节点与自身社区内的其他节点之间的直接可信度计算得到的,节点之间的直接可信度是根据该两个节点之间在预设时间段内的通信次数,转发数据次数以及转发数据的能耗计算得到的;从中继社区中确定第一中继节点,第一中继节点是中继社区中相对于目标节点的数据投递能力最大的节点,其中,数据投递能力根据节点之间在预设时间段内的通信频率确定;将第一中继节点的标识发送至起始节点,以使起始节点向第一中继节点转发数据。可见,本发明实施例提供的数据转发方法综合考虑了节点之间的数据投递能力、节点所属社区之间的群体可信度、以及节点间通信次数、数据转发次数、转发数据的能耗等因素,相比于仅利用节点间联系概率来确定下一跳节点的算法,能够显著降低将数据转发到恶意节点的概率。
进一步的,由于显著降低了将数据转发到恶意节点的概率,能够提高数据转发的性能,具体表现为降低了网络整体的数据传输延迟、减少了转发次数、提高了数据投递的成功率。
在本发明的一种实施例中,当相遇节点的集合中包含目标节点时,说明初始节点可以直接将数据转发到目标节点。因此,数据转发控制中心可以向初始节点发送转发数据的指示,初始节点收到指示后,向目标节点转发数据。
在本发明的一种实施例中,参见图2,在步骤S104之后,判断可选节点集合中是否存在与目标节点属于同一社区的节点,若判断结果为可选节点集合中存在与目标节点属于同一社区的节点时,可以转而执行如下步骤S201-S203:
S201:确定与目标节点属于同一社区的节点,组成候选节点集合。
由于可选节点集合中存在与目标节点属于同一社区的节点,因此这种情况下无需确定中继社区,可以直接从可选节点集合中确定与目标节点属于同一社区的节点,这些节点组成候选节点集合。
S202:从候选节点集合中确定第二中继节点,第二中继节点是候选节点集合中相对于目标节点的数据投递能力最大的节点。
如果候选节点集合中包含多个候选节点,则可以从中选取一个第二中继节点,作为初始节点的下一跳节点,该第二中继节点相对于目标节点具备最大的数据投递能力,其中数据投递能力可以根据节点之间在预设时间段内的通信频率确定。
S203:将第二中继节点的标识发送至起始节点,以使起始节点向第二中继节点转发数据。
在图2所示实施例中,所确定的第二中继节点可以作为起始节点的下一跳节点,数据转发控制中心可以第二中继节点的标识发送至起始节点,起始节点向第二中继节点转发数据。
为了便于理解,下面对社区间群体可信度的计算过程进行介绍。
首先,可以用有向加权图来表示物联网中节点的拓扑结构。具体的,用Gt=(Vt,Et,Wt,Ct)表示t时刻的网络状态,Vt表示t时刻的节点集合,Et表示t时刻节点间边的集合,Wt表示t时刻有向边的权重集合,Ct表示t时刻的社区集合,则Vt、Et、Wt和Ct可以分别用如下公式表示:
Figure BDA0002465848300000161
Figure BDA0002465848300000162
Figure BDA0002465848300000163
Ct={c1,c2,…,cp}。
在本发明的一种实施例中,可以基于如下公式计算节点之间的直接可信度:
Figure BDA0002465848300000164
Figure BDA0002465848300000165
Figure BDA0002465848300000166
Figure BDA0002465848300000167
其中,
Figure BDA0002465848300000168
表示节点vi对节点vj的直接可信度,α,β和γ表示预设权重,
Figure BDA0002465848300000169
表示节点vi和节点vj之间的联系率,Δt表示预设时间间隔,
Figure BDA00024658483000001610
表示节点vi和vj从t-Δt到t期间的联系次数,u表示除节点vj之外的其他任意节点,
Figure BDA00024658483000001611
表示节点vi与除节点vj之外的其他节点从t-Δt到t期间联系的次数之和;
Figure BDA0002465848300000171
表示节点vi和节点vj之间的服务率,
Figure BDA0002465848300000172
表示在t-Δt到t期间节点vi为节点vj转发数据包的数量;
Figure BDA0002465848300000173
表示在t-Δt到t期间节点vi接收到的数据包总数;
Figure BDA0002465848300000174
表示节点vi的剩余能量比,
Figure BDA0002465848300000175
表示t时刻节点vi的初始能量,Δe表示vi在Δt时间内转发数据包的能耗。
可见,节点间的直接可信度是综合节点间的通信次数、转发数据次数以及转发数据的能耗计算得到的,能够更准确的衡量节点间的可信度。
在本发明的一种实施例中,可以基于如下公式计算节点在各自社区的可信度:
Figure BDA0002465848300000176
其中,T(vi,scp)表示节点vi在自身社区内的可信度,N(scp)表示节点vi所属社区中包含的所有节点,T(vj,scp)表示节点vj在自身社区内的可信度。
在本发明的一种实施例中,可以基于如下公式计算社区间的直接可信度:
Figure BDA0002465848300000177
Λ=T(vi,scp)×T(vj,scq)
Figure BDA0002465848300000178
其中,DN(scp,scq)表示社区scp和社区scq中具备直接交互关系的节点对的集合,TF(scp,scq)表示社区scp和社区scq之间的可信因子。其中,具备直接交互关系可以理解为能够直接进行通信,举例来讲,若社区scp中的节点A和社区scq中的节点B之间可以直接进行通信,则节点A和节点B可以作为一个具备直接交互关系的节点对。
在本发明的一种实施例中,可以基于如下公式计算社区间的间接可信度:
Figure BDA0002465848300000181
其中,CC(scp,scq)表示社区scp到scq的所有可信路径上中间社区icl的集合,l表示可信路径序号,m表示可信路径的总数。
在本发明的一种实施例中,可以基于如下公式计算社区间的群体可信度:
Figure BDA0002465848300000182
其中,
Figure BDA0002465848300000183
表示社区scp和社区scq之间的群体可信度,
Figure BDA0002465848300000184
表示社区scp中与社区scq具备合作关系的节点的数目占社区scp中总节点数目的比例,
Figure BDA0002465848300000185
表示社区scq中与社区scp具备合作关系的节点的数目占社区scq中总节点数目的比例,χ表示预设的社区间直接可信度权重,η表示预设的社区间间接可信度权重。
在本发明的一种实施例中,可以按照如下步骤确定节点间数据投递能力:
下面以节点vi与节点vj为例进行说明。
当节点vi与节点vj在t时刻之前预设时间段内建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure BDA0002465848300000186
其中,
Figure BDA0002465848300000187
表示节点vi与节点vj的数据投递能力,
Figure BDA0002465848300000188
表示节点vi与节点vj更新前的数据投递能力,
Figure BDA0002465848300000191
表示预设常量。
可见,节点vi与节点vj在t时刻之前预设时间段内建立过通信连接时,数据投递能力可以相应提高。
当节点vi与节点vj在t时刻之前预设时间段内没有建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure BDA0002465848300000192
其中,δ表示衰减常量,τ表示预设时间间隔。
可见,节点vi与节点vj在t时刻之前预设时间段内没有建立过通信连接时,更新后的数据投递能力相比于更新前有所衰减。
当节点vj在与节点vi建立通信连接之前,与节点vj建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure BDA0002465848300000193
其中,
Figure BDA0002465848300000194
表示节点vi与节点vk的数据投递能力,
Figure BDA0002465848300000195
表示节点vk与节点vj的数据投递能力,ε表示预设乘积系数。
可见,当节点vj在与节点vi建立通信连接之前,与节点vj建立过通信连接时,可以结合节点vi与节点vk的数据投递能力,节点vk与节点vj的数据投递能力计算更新后的节点vi与节点vj的数据投递能力。
为了便于理解,下面结合图3对本发明实施例提供的物联网中基于群体信任度的数据转发方法进行进一步说明。
如图3所示,根据节点间通信次数、数据转发次数、转发数据的能耗确定节点间直接可信度,根据相关算法对节点进行划分,得到不同社区。计算单个节点在各自社区的可信度,进而计算社区间的直接可信度,再根据社区间的直接可信度计算社区间的间接可信度,根据社区间直接可信度和间接可信度计算社区间的群体可信度,社区间的群体可信度可以用于确定中继社区,进而从中继社区中确定中继节点作为初始节点的下一跳节点。
基于相同的发明构思,根据上述物联网中基于群体信任度的数据转发方法实施例,本发明实施例还提供了一种物联网中基于群体信任度的数据转发装置,参见图4,可以包括以下模块:
第一确定模块401,用于确定携带待转发数据的起始节点,以及待转发数据的目标节点;
第二确定模块402,用于确定与起始节点处于通信范围内的相遇节点的集合;
筛选模块403,用于当相遇节点的集合中不包含目标节点时,从相遇节点的集合中筛选出剩余能量大于预设阈值的节点,组成可选节点集合;
第三确定模块404,用于基于社区划分算法,确定各个可选节点所属社区,以及目标节点所属社区;
第四确定模块405,用于当可选节点集合中不存在与目标节点属于同一社区的节点时,分别计算各个可选节点所属社区与目标节点所属社区的群体可信度,并基于计算结果从可选节点所属社区中确定中继社区,中继社区是与目标节点所属社区的群体可信度最大的社区;其中,社区间的群体可信度包括社区间的直接可信度和社区间的间接可信度;社区间的间接可信度是根据社区间的直接可信度计算得到的,社区间的直接可信度是根据两个社区中具备直接交互关系的节点在各自社区中的可信度计算得到的,节点在各自社区的可信度是根据该节点与自身社区内的其他节点之间的直接可信度计算得到的,节点之间的直接可信度是根据该两个节点之间在预设时间段内的通信次数,转发数据次数以及转发数据的能耗计算得到的;
第五确定模块406,用于从中继社区中确定第一中继节点,第一中继节点是中继社区中相对于目标节点的数据投递能力最大的可选节点,其中,数据投递能力根据节点之间在预设时间段内的通信频率确定;
第一发送模块407,用于将第一中继节点的标识发送至起始节点,以使起始节点向第一中继节点转发数据。
在本发明的一种实施例中,当相遇节点的集合中包含目标节点时,在图4所示装置基础上,还可以包括指示模块,指示模块用于:
指示初始节点向目标节点转发数据。
在本发明的一种实施例中,当可选节点集合中存在与目标节点属于同一社区的节点时,在图4所示装置基础上,还可以包括以下模块:
第六确定模块,用于确定与目标节点属于同一社区的节点,组成候选节点集合;
第七确定模块,用于从候选节点集合中确定第二中继节点,第二中继节点是候选节点集合中相对于目标节点的数据投递能力最大的节点;
第二发送模块,用于将第二中继节点的标识发送至起始节点,以使起始节点向第二中继节点转发数据。
在本发明的一种实施例中,可以基于如下公式计算节点之间的直接可信度:
Figure BDA0002465848300000211
Figure BDA0002465848300000212
Figure BDA0002465848300000213
Figure BDA0002465848300000214
其中,
Figure BDA0002465848300000215
表示节点vi对节点vj的直接可信度,α,β和γ表示预设权重,
Figure BDA0002465848300000216
表示节点vi和节点vj之间的联系率,Δt表示预设时间间隔,
Figure BDA0002465848300000217
表示节点vi和vj从t-Δt到t期间的联系次数,u表示除节点vj之外的其他任意节点,
Figure BDA0002465848300000218
表示节点vi与除节点vj之外的其他节点从t-Δt到t期间联系的次数之和;
Figure BDA0002465848300000219
表示节点vi和节点vj之间的服务率,
Figure BDA00024658483000002110
表示在t-Δt到t期间节点vi为节点vj转发数据包的数量;
Figure BDA0002465848300000221
表示在t-Δt到t期间节点vi接收到的数据包总数;
Figure BDA0002465848300000222
表示节点vi的剩余能量比,
Figure BDA0002465848300000223
表示t时刻节点vi的初始能量,Δe表示vi在Δt时间内转发数据包的能耗;
基于如下公式计算节点在各自社区的可信度:
Figure BDA0002465848300000224
其中,T(vi,scp)表示节点vi在自身社区内的可信度,N(scp)表示节点vi所属社区中包含的所有节点;
基于如下公式计算社区间的直接可信度:
Figure BDA0002465848300000225
Λ=T(vi,scp)×T(vj,scq)
Figure BDA0002465848300000226
其中,DN(scp,scq)表示社区scp和社区scq中具备直接交互关系的节点对的集合,TF(scp,scq)表示社区scp和社区scq之间的可信因子;
基于如下公式计算社区间的间接可信度:
Figure BDA0002465848300000227
其中,CC(scp,scq)表示社区scp到scq的所有可信路径上中间社区icl的集合,l表示可信路径序号,m表示可信路径的总数;
基于如下公式计算社区间的群体可信度:
Figure BDA0002465848300000231
其中,
Figure BDA0002465848300000232
表示社区scp和社区scq之间的群体可信度,
Figure BDA0002465848300000233
表示社区scp中与社区scq具备合作关系的节点的数目占社区scp中总节点数目的比例,
Figure BDA0002465848300000234
表示社区scq中与社区scp具备合作关系的节点的数目占社区scq中总节点数目的比例,χ表示预设的社区间直接可信度权重,η表示预设的社区间间接可信度权重;
当节点vi与节点vj在t时刻之前预设时间段内建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure BDA0002465848300000235
其中,
Figure BDA0002465848300000236
表示节点vi与节点vj的数据投递能力,
Figure BDA0002465848300000237
表示节点vi与节点vj更新前的数据投递能力,
Figure BDA0002465848300000238
表示预设常量;
当节点vi与节点vj在t时刻之前预设时间段内没有建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure BDA0002465848300000239
其中,δ表示衰减常量,τ表示预设时间间隔;
当节点vj在与节点vi建立通信连接之前,与节点vj建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure BDA00024658483000002310
其中,
Figure BDA0002465848300000241
表示节点vi与节点vk的数据投递能力,
Figure BDA0002465848300000242
表示节点vk与节点vj的数据投递能力,ε表示预设乘积系数。
应用本发明实施例提供的物联网中基于群体信任度的数据转发装置,确定携带待转发数据的起始节点,以及待转发数据的目标节点;确定与起始节点处于通信范围内的相遇节点的集合;当相遇节点的集合中不包含目标节点时,从相遇节点的集合中筛选出剩余能量大于预设阈值的节点,组成可选节点集合;基于社区划分算法,确定各个可选节点所属社区,以及目标节点所属社区;当可选节点集合中不存在与目标节点属于同一社区的节点时,分别计算各个可选节点所属社区与目标节点所属社区的群体可信度,并基于计算结果从可选节点所属社区中确定中继社区,中继社区是与目标节点所属社区的群体可信度最大的社区;其中,社区间的群体可信度包括社区间的直接可信度和社区间的间接可信度;社区间的间接可信度是根据社区间的直接可信度计算得到的,社区间的直接可信度是根据两个社区中具备直接交互关系的节点在各自社区中的可信度计算得到的,节点在各自社区的可信度是根据该节点与自身社区内的其他节点之间的直接可信度计算得到的,节点之间的直接可信度是根据该两个节点之间在预设时间段内的通信次数,转发数据次数以及转发数据的能耗计算得到的;从中继社区中确定第一中继节点,第一中继节点是中继社区中相对于目标节点的数据投递能力最大的节点,其中,数据投递能力根据节点之间在预设时间段内的通信频率确定;将第一中继节点的标识发送至起始节点,以使起始节点向第一中继节点转发数据。可见,本发明实施例提供的数据转发方法综合考虑了节点之间的数据投递能力、节点所属社区之间的群体可信度、以及节点间通信次数、数据转发次数、转发数据的能耗等因素,相比于仅利用节点间联系概率来确定下一跳节点的算法,能够显著降低将数据转发到恶意节点的概率。
进一步的,由于显著降低了将数据转发到恶意节点的概率,能够提高数据转发的性能,具体表现为降低了网络整体的数据传输延迟、减少了转发次数、提高了数据投递的成功率。
基于相同的发明构思,根据上述物联网中基于群体信任度的数据转发方法实施例,本发明实施例还提供了一种电子设备,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,实现如下步骤:
确定携带待转发数据的起始节点,以及待转发数据的目标节点;
确定与起始节点处于通信范围内的相遇节点的集合;
当相遇节点的集合中不包含目标节点时,从相遇节点的集合中筛选出剩余能量大于预设阈值的节点,组成可选节点集合;
基于社区划分算法,确定各个可选节点所属社区,以及目标节点所属社区;
当可选节点集合中不存在与目标节点属于同一社区的节点时,分别计算各个可选节点所属社区与目标节点所属社区的群体可信度,并基于计算结果从可选节点所属社区中确定中继社区,中继社区是与目标节点所属社区的群体可信度最大的社区;其中,社区间的群体可信度包括社区间的直接可信度和社区间的间接可信度;社区间的间接可信度是根据社区间的直接可信度计算得到的,社区间的直接可信度是根据两个社区中具备直接交互关系的节点在各自社区中的可信度计算得到的,节点在各自社区的可信度是根据该节点与自身社区内的其他节点之间的直接可信度计算得到的,节点之间的直接可信度是根据该两个节点之间在预设时间段内的通信次数,转发数据次数以及转发数据的能耗计算得到的;
从中继社区中确定第一中继节点,第一中继节点是中继社区中相对于目标节点的数据投递能力最大的可选节点,其中,数据投递能力根据节点之间在预设时间段内的通信频率确定;
将第一中继节点的标识发送至起始节点,以使起始节点向第一中继节点转发数据。
上述电子设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述电子设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
应用本发明实施例提供的电子设备,确定携带待转发数据的起始节点,以及待转发数据的目标节点;确定与起始节点处于通信范围内的相遇节点的集合;当相遇节点的集合中不包含目标节点时,从相遇节点的集合中筛选出剩余能量大于预设阈值的节点,组成可选节点集合;基于社区划分算法,确定各个可选节点所属社区,以及目标节点所属社区;当可选节点集合中不存在与目标节点属于同一社区的节点时,分别计算各个可选节点所属社区与目标节点所属社区的群体可信度,并基于计算结果从可选节点所属社区中确定中继社区,中继社区是与目标节点所属社区的群体可信度最大的社区;其中,社区间的群体可信度包括社区间的直接可信度和社区间的间接可信度;社区间的间接可信度是根据社区间的直接可信度计算得到的,社区间的直接可信度是根据两个社区中具备直接交互关系的节点在各自社区中的可信度计算得到的,节点在各自社区的可信度是根据该节点与自身社区内的其他节点之间的直接可信度计算得到的,节点之间的直接可信度是根据该两个节点之间在预设时间段内的通信次数,转发数据次数以及转发数据的能耗计算得到的;从中继社区中确定第一中继节点,第一中继节点是中继社区中相对于目标节点的数据投递能力最大的节点,其中,数据投递能力根据节点之间在预设时间段内的通信频率确定;将第一中继节点的标识发送至起始节点,以使起始节点向第一中继节点转发数据。可见,本发明实施例提供的数据转发方法综合考虑了节点之间的数据投递能力、节点所属社区之间的群体可信度、以及节点间通信次数、数据转发次数、转发数据的能耗等因素,相比于仅利用节点间联系概率来确定下一跳节点的算法,能够显著降低将数据转发到恶意节点的概率。
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一物联网中基于群体信任度的数据转发方法的步骤。
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一物联网中基于群体信任度的数据转发方法。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘Solid State Disk(SSD))等。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于物联网中基于群体信任度的数据转发装置、电子设备及计算机可读存储介质、计算机程序产品实施例而言,由于其基本相似于物联网中基于群体信任度的数据转发方法实施例,所以描述的比较简单,相关之处参见物联网中基于群体信任度的数据转发方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

Claims (10)

1.一种物联网中基于群体信任度的数据转发方法,其特征在于,所述方法包括:
确定携带待转发数据的起始节点,以及所述待转发数据的目标节点;
确定与所述起始节点处于通信范围内的相遇节点的集合;
当所述相遇节点的集合中不包含所述目标节点时,从所述相遇节点的集合中筛选出剩余能量大于预设阈值的节点,组成可选节点集合;
基于社区划分算法,确定各个可选节点所属社区,以及所述目标节点所属社区;
当所述可选节点集合中不存在与所述目标节点属于同一社区的节点时,分别计算各个可选节点所属社区与所述目标节点所属社区的群体可信度,并基于计算结果从所述可选节点所属社区中确定中继社区,所述中继社区是与所述目标节点所属社区的群体可信度最大的社区;其中,社区间的群体可信度包括社区间的直接可信度和社区间的间接可信度;所述社区间的间接可信度是根据所述社区间的直接可信度计算得到的,所述社区间的直接可信度是根据两个社区中具备直接交互关系的节点在各自社区中的可信度计算得到的,所述节点在各自社区的可信度是根据该节点与自身社区内的其他节点之间的直接可信度计算得到的,所述节点之间的直接可信度是根据该两个节点之间在预设时间段内的通信次数,转发数据次数以及转发数据的能耗计算得到的;
从所述中继社区中确定第一中继节点,所述第一中继节点是所述中继社区中相对于所述目标节点的数据投递能力最大的可选节点,其中,所述数据投递能力根据节点之间在预设时间段内的通信频率确定;
将所述第一中继节点的标识发送至所述起始节点,以使所述起始节点向所述第一中继节点转发数据。
2.根据权利要求1所述的方法,其特征在于,当所述相遇节点的集合中包含所述目标节点时,所述方法还包括:
指示所述初始节点向所述目标节点转发数据。
3.根据权利要求1所述的方法,其特征在于,当所述可选节点集合中存在与所述目标节点属于同一社区的节点时,所述方法还包括:
确定与所述目标节点属于同一社区的节点,组成候选节点集合;
从所述候选节点集合中确定第二中继节点,所述第二中继节点是所述候选节点集合中相对于所述目标节点的数据投递能力最大的节点;
将所述第二中继节点的标识发送至所述起始节点,以使所述起始节点向所述第二中继节点转发数据。
4.根据权利要求1-3任一所述的方法,其特征在于,基于如下公式计算所述节点之间的直接可信度:
Figure FDA0002465848290000021
Figure FDA0002465848290000022
Figure FDA0002465848290000023
Figure FDA0002465848290000024
其中,
Figure FDA0002465848290000025
表示节点vi对节点vj的直接可信度,α,β和γ表示预设权重,
Figure FDA0002465848290000026
表示节点vi和节点vj之间的联系率,Δt表示预设时间间隔,
Figure FDA0002465848290000027
表示节点vi和vj从t-Δt到t期间的联系次数,u表示除节点vj之外的其他任意节点,
Figure FDA0002465848290000028
表示节点vi与除节点vj之外的其他节点从t-Δt到t期间联系的次数之和;
Figure FDA0002465848290000029
表示节点vi和节点vj之间的服务率,
Figure FDA00024658482900000210
表示在t-Δt到t期间节点vi为节点vj转发数据包的数量;
Figure FDA00024658482900000211
表示在t-Δt到t期间节点vi接收到的数据包总数;
Figure FDA00024658482900000212
表示节点vi的剩余能量比,
Figure FDA00024658482900000213
表示t时刻节点vi的初始能量,Δe表示vi在Δt时间内转发数据包的能耗;
基于如下公式计算所述节点在各自社区的可信度:
Figure FDA0002465848290000031
其中,T(vi,scp)表示节点vi在自身社区内的可信度,N(scp)表示节点vi所属社区中包含的所有节点;
基于如下公式计算所述社区间的直接可信度:
Figure FDA0002465848290000032
Λ=T(vi,scp)×T(vj,scq)
Figure FDA0002465848290000033
其中,DN(scp,scq)表示社区scp和社区scq中具备直接交互关系的节点对的集合,TF(scp,scq)表示社区scp和社区scq之间的可信因子;
基于如下公式计算所述社区间的间接可信度:
Figure FDA0002465848290000034
其中,CC(scp,scq)表示社区scp到scq的所有可信路径上中间社区icl的集合,l表示可信路径序号,m表示可信路径的总数;
基于如下公式计算所述社区间的群体可信度:
Figure FDA0002465848290000035
其中,
Figure FDA0002465848290000036
表示社区scp和社区scq之间的群体可信度,
Figure FDA0002465848290000037
表示社区scp中与社区scq具备合作关系的节点的数目占社区scp中总节点数目的比例,
Figure FDA0002465848290000038
表示社区scq中与社区scp具备合作关系的节点的数目占社区scq中总节点数目的比例,χ表示预设的社区间直接可信度权重,η表示预设的社区间间接可信度权重;
按照如下步骤确定节点间数据投递能力:
当节点vi与节点vj在t时刻之前预设时间段内建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure FDA0002465848290000041
其中,
Figure FDA0002465848290000042
表示节点vi与节点vj的数据投递能力,
Figure FDA0002465848290000043
表示节点vi与节点vj更新前的数据投递能力,
Figure FDA0002465848290000044
表示预设常量;
当节点vi与节点vj在t时刻之前预设时间段内没有建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure FDA0002465848290000045
其中,δ表示衰减常量,τ表示预设时间间隔;
当节点vj在与节点vi建立通信连接之前,与节点vj建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure FDA0002465848290000046
其中,
Figure FDA0002465848290000047
表示节点vi与节点vk的数据投递能力,
Figure FDA0002465848290000048
表示节点vk与节点vj的数据投递能力,ε表示预设乘积系数。
5.一种物联网中基于群体信任度的数据转发装置,其特征在于,所述装置包括:
第一确定模块,用于确定携带待转发数据的起始节点,以及所述待转发数据的目标节点;
第二确定模块,用于确定与所述起始节点处于通信范围内的相遇节点的集合;
筛选模块,用于当所述相遇节点的集合中不包含所述目标节点时,从所述相遇节点的集合中筛选出剩余能量大于预设阈值的节点,组成可选节点集合;
第三确定模块,用于基于社区划分算法,确定各个可选节点所属社区,以及所述目标节点所属社区;
第四确定模块,用于当所述可选节点集合中不存在与所述目标节点属于同一社区的节点时,分别计算各个可选节点所属社区与所述目标节点所属社区的群体可信度,并基于计算结果从所述可选节点所属社区中确定中继社区,所述中继社区是与所述目标节点所属社区的群体可信度最大的社区;其中,社区间的群体可信度包括社区间的直接可信度和社区间的间接可信度;所述社区间的间接可信度是根据所述社区间的直接可信度计算得到的,所述社区间的直接可信度是根据两个社区中具备直接交互关系的节点在各自社区中的可信度计算得到的,所述节点在各自社区的可信度是根据该节点与自身社区内的其他节点之间的直接可信度计算得到的,所述节点之间的直接可信度是根据该两个节点之间在预设时间段内的通信次数,转发数据次数以及转发数据的能耗计算得到的;
第五确定模块,用于从所述中继社区中确定第一中继节点,所述第一中继节点是所述中继社区中相对于所述目标节点的数据投递能力最大的可选节点,其中,所述数据投递能力根据节点之间在预设时间段内的通信频率确定;
第一发送模块,用于将所述第一中继节点的标识发送至所述起始节点,以使所述起始节点向所述第一中继节点转发数据。
6.根据权利要求5所述的装置,其特征在于,当所述相遇节点的集合中包含所述目标节点时,所述装置还包括指示模块,所述指示模块用于:
指示所述初始节点向所述目标节点转发数据。
7.根据权利要求5所述的装置,其特征在于,当所述可选节点集合中存在与所述目标节点属于同一社区的节点时,所述装置还包括:
第六确定模块,用于确定与所述目标节点属于同一社区的节点,组成候选节点集合;
第七确定模块,用于从所述候选节点集合中确定第二中继节点,所述第二中继节点是所述候选节点集合中相对于所述目标节点的数据投递能力最大的节点;
第二发送模块,用于将所述第二中继节点的标识发送至所述起始节点,以使所述起始节点向所述第二中继节点转发数据。
8.根据权利要求5-7任一所述的装置,其特征在于,基于如下公式计算所述节点之间的直接可信度:
Figure FDA0002465848290000061
Figure FDA0002465848290000062
Figure FDA0002465848290000063
Figure FDA0002465848290000064
其中,
Figure FDA0002465848290000065
表示节点vi对节点vj的直接可信度,α,β和γ表示预设权重,
Figure FDA0002465848290000066
表示节点vi和节点vj之间的联系率,Δt表示预设时间间隔,
Figure FDA0002465848290000067
表示节点vi和vj从t-Δt到t期间的联系次数,u表示除节点vj之外的其他任意节点,
Figure FDA0002465848290000068
表示节点vi与除节点vj之外的其他节点从t-Δt到t期间联系的次数之和;
Figure FDA0002465848290000069
表示节点vi和节点vj之间的服务率,
Figure FDA00024658482900000610
表示在t-Δt到t期间节点vi为节点vj转发数据包的数量;
Figure FDA00024658482900000611
表示在t-Δt到t期间节点vi接收到的数据包总数;
Figure FDA00024658482900000612
表示节点vi的剩余能量比,
Figure FDA00024658482900000613
表示t时刻节点vi的初始能量,Δe表示vi在Δt时间内转发数据包的能耗;
基于如下公式计算所述节点在各自社区的可信度:
Figure FDA0002465848290000071
其中,T(vi,scp)表示节点vi在自身社区内的可信度,N(scp)表示节点vi所属社区中包含的所有节点;
基于如下公式计算所述社区间的直接可信度:
Figure FDA0002465848290000072
Λ=T(vi,scp)×T(vj,scq)
Figure FDA0002465848290000073
其中,DN(scp,scq)表示社区scp和社区scq中具备直接交互关系的节点对的集合,TF(scp,scq)表示社区scp和社区scq之间的可信因子;
基于如下公式计算所述社区间的间接可信度:
Figure FDA0002465848290000074
其中,CC(scp,scq)表示社区scp到scq的所有可信路径上中间社区icl的集合,l表示可信路径序号,m表示可信路径的总数;
基于如下公式计算所述社区间的群体可信度:
Figure FDA0002465848290000075
其中,
Figure FDA0002465848290000076
表示社区scp和社区scq之间的群体可信度,
Figure FDA0002465848290000077
表示社区scp中与社区scq具备合作关系的节点的数目占社区scp中总节点数目的比例,
Figure FDA0002465848290000081
表示社区scq中与社区scp具备合作关系的节点的数目占社区scq中总节点数目的比例,χ表示预设的社区间直接可信度权重,η表示预设的社区间间接可信度权重;
当节点vi与节点vj在t时刻之前预设时间段内建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure FDA0002465848290000082
其中,
Figure FDA0002465848290000083
表示节点vi与节点vj的数据投递能力,
Figure FDA0002465848290000084
表示节点vi与节点vj更新前的数据投递能力,
Figure FDA0002465848290000085
表示预设常量;
当节点vi与节点vj在t时刻之前预设时间段内没有建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure FDA0002465848290000086
其中,δ表示衰减常量,τ表示预设时间间隔;
当节点vj在与节点vi建立通信连接之前,与节点vj建立过通信连接,则按照如下公式计算节点vi与节点vj的数据投递能力:
Figure FDA0002465848290000087
其中,
Figure FDA0002465848290000088
表示节点vi与节点vk的数据投递能力,
Figure FDA0002465848290000089
表示节点vk与节点vj的数据投递能力,ε表示预设乘积系数。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-4任一所述的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-4任一所述的方法步骤。
CN202010333682.3A 2020-04-24 2020-04-24 一种物联网中基于群体信任度的数据转发方法及装置 Active CN111542052B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010333682.3A CN111542052B (zh) 2020-04-24 2020-04-24 一种物联网中基于群体信任度的数据转发方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010333682.3A CN111542052B (zh) 2020-04-24 2020-04-24 一种物联网中基于群体信任度的数据转发方法及装置

Publications (2)

Publication Number Publication Date
CN111542052A true CN111542052A (zh) 2020-08-14
CN111542052B CN111542052B (zh) 2023-04-18

Family

ID=71980225

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010333682.3A Active CN111542052B (zh) 2020-04-24 2020-04-24 一种物联网中基于群体信任度的数据转发方法及装置

Country Status (1)

Country Link
CN (1) CN111542052B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115225601A (zh) * 2022-06-07 2022-10-21 湖北工程学院 消息转发方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107801226A (zh) * 2017-11-13 2018-03-13 北京邮电大学 基于节点社会相似性和个体中心性的数据转发方法和装置
US20180124547A1 (en) * 2016-11-02 2018-05-03 Wipro Limited Methods and systems for node selection in multihop wireless sensor networks
CN108092759A (zh) * 2017-12-05 2018-05-29 重庆邮电大学 一种基于信任机制的无线传感网络节点安全状态评估方法
CN108124274A (zh) * 2017-12-11 2018-06-05 重庆邮电大学 一种基于信任机制的无线传感器网络安全路由方法
CN110809302A (zh) * 2019-11-11 2020-02-18 华中师范大学 基于社交圈的自适应多次喷射等待路由方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180124547A1 (en) * 2016-11-02 2018-05-03 Wipro Limited Methods and systems for node selection in multihop wireless sensor networks
CN107801226A (zh) * 2017-11-13 2018-03-13 北京邮电大学 基于节点社会相似性和个体中心性的数据转发方法和装置
CN108092759A (zh) * 2017-12-05 2018-05-29 重庆邮电大学 一种基于信任机制的无线传感网络节点安全状态评估方法
CN108124274A (zh) * 2017-12-11 2018-06-05 重庆邮电大学 一种基于信任机制的无线传感器网络安全路由方法
CN110809302A (zh) * 2019-11-11 2020-02-18 华中师范大学 基于社交圈的自适应多次喷射等待路由方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
R. MANOHARAN: "A trust based Gateway selection scheme for integration of MANET with Internet", 《2011 INTERNATIONAL CONFERENCE ON RECENT TRENDS IN INFORMATION TECHNOLOGY (ICRTIT)》 *
任晴晴: "机会网络中基于群体信任的数据转发方法", 《计算机工程与设计》 *
李继蕊: "物联网环境下数据转发模型研究", 《软件学报》 *

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115225601A (zh) * 2022-06-07 2022-10-21 湖北工程学院 消息转发方法、装置、设备及存储介质

Also Published As

Publication number Publication date
CN111542052B (zh) 2023-04-18

Similar Documents

Publication Publication Date Title
CN110875915B (zh) 数据传输方法及装置
US11411865B2 (en) Network resource scheduling method, apparatus, electronic device and storage medium
US10721166B2 (en) Ensuring data locality for secure transmission of data
CN108965137B (zh) 一种报文处理方法和装置
US10831630B2 (en) Fault analysis method and apparatus based on data center
TW202026983A (zh) 聯盟鏈的可信度驗證方法、系統、裝置及設備
CN109347540B (zh) 一种安全路由的实现方法及装置
CN111083050A (zh) 一种基于软件定义网络的数据流传输方法及装置
CN111542052B (zh) 一种物联网中基于群体信任度的数据转发方法及装置
US11252078B2 (en) Data transmission method and apparatus
CN113709236A (zh) 一种基于区块链的数字货币交易网络中初始节点对应的邻居节点的判断方法和系统
CN113706305A (zh) 一种基于区块链的数字货币网络交易的初始节点判断方法和系统
US20220046028A1 (en) Method and system for determining a state of an account in a network device running a light client protocol of a distributed ledger technology network
CN106789588B (zh) 标签传播方法和装置
CN110868246B (zh) 一种信息传输方法及系统
CN111654442A (zh) 一种弹性光网络中动态业务疏导处理方法及装置
CN111371675B (zh) 智能寻址方法、装置、设备及其存储介质
TWI665932B (zh) 裝置對裝置網路之群組主機選擇方法與選擇群組主機的控制平台
CN110366205B (zh) 移动机会网络流量卸载中初始源节点的选择方法和装置
CN112165428A (zh) 一种流量清洗方法、装置及第一边界路由设备
CN115460110B (zh) 基于链路预测的异常as_path检测方法及装置
CN114827159B (zh) 网络请求路径优化方法、装置、设备和存储介质
CN113839843B (zh) 智能设备的发现方法、装置、介质及区块链系统
CN113098772B (zh) 数据传输路径的确定方法及装置
CN116192720B (zh) 一种链路寻优方法、装置、电子设备和存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant