欢迎光临
我们一直在努力

物联网网络中基于联邦深度学习的网络内攻击检测:实际实现与分析

大家读完觉得有帮助记得关注和点赞!!!

摘要

物联网的快速扩展及其与骨干网络的集成加剧了安全漏洞的风险。传统的集中式异常检测方法需要将大量数据传输到中央服务器,存在隐私、可扩展性和延迟方面的局限性。本文提出了一种轻量级的基于自编码器的异常检测框架,旨在部署在资源受限的边缘设备上,能够在最小化数据传输和保持隐私的同时实现实时检测。采用联邦学习在分布式设备上协同训练模型,其中边缘节点进行本地训练,仅将模型权重聚合到中央服务器。使用树莓派传感器节点构建了一个真实的物联网测试平台,用于收集正常和攻击流量数据。所提出的联邦异常检测系统在测试平台上实现和评估,证明了其在准确识别网络攻击方面的有效性。通信开销显著降低,同时实现了与集中式方法相当的性能。

引言

物联网在多样化应用领域的广泛采用导致互联设备数量以及生成和交换的数据量大幅增加。根据市场预测,到2029年,全球物联网连接数量预计将达到388亿[5]。虽然这种连接性促进了自动化、监控和智能决策,但它同时也扩大了攻击面,从而增加了物联网网络对网络威胁的敏感性。物联网基础设施的异构和分布式特性,加上边缘设备有限的计算和存储能力,为部署传统的集中式安全机制带来了重大挑战。

传统的网络入侵检测系统通常依赖于将原始数据从分布式物联网节点传输到中央服务器进行模型训练和异常检测。这种集中式范式带来了关键的局限性,包括通信开销增加、延迟、可扩展性问题,以及数据隐私和网络完整性的风险增加。此外,在对抗性环境中,如果敏感数据被暴露或用于网络内的横向攻击,单个边缘节点的受损可能导致更广泛的漏洞。

为了解决这些局限性,我们提出了一种联邦异常检测框架,将轻量级深度学习模型,特别是自编码器,直接集成到资源受限的边缘设备上。我们的框架通过在边缘最小化数据传输需求,实现对异常行为的实时检测。让 x_t 表示时间 t 的输入特征向量,x̂_t 表示自编码器生成的 x_t 的重构。异常检测基于重构误差 ℰ(t) = ‖x_t – x̂_t‖² 进行判断,其中超过预定义阈值 τ 的 ℰ(t) 值表示异常行为:

ℰ(t) > τ ⇒ 检测到异常。

通过将模型本地化在边缘设备上,我们的方法减少了通信开销并保护了数据隐私,因为只有模型参数而非原始数据被传输用于全局模型更新。为了支持可扩展且隐私保护的模型更新,我们采用了联邦学习策略[11],其中每个边缘节点使用自己的数据训练本地模型,并仅将模型参数传输给中央聚合器。随后,使用联邦平均算法更新全局模型[9],定义为

W_{t+1}^{global} = (1/K) Σ_{k=1}^{K} W_t^{(k)}, (1)

其中 W_t^{(k)} 表示第 k 个设备在迭代 t 时的模型参数,K 是参与设备的总数。聚合后的全局模型 W_{t+1}^{global} 随后被重新分发给所有设备用于后续的训练轮次。

本研究的主要贡献如下:

  • 实验性物联网测试平台设计与部署: 我们使用配备XBee模块的树莓派设备设计和实现了一个分层物联网网络。在真实操作条件下记录正常网络行为,并提取相关特征用于训练和评估。

  • 设备上异常检测架构: 我们开发并部署了一个资源高效的自编码器模型,在边缘设备上执行无监督实时异常检测,减少了对集中式数据收集的需求。

  • 联邦学习集成: 我们调整了FedAvg算法,使物联网设备能够进行分布式、协作式的异常检测模型训练,确保在受限环境中实现隐私保护和通信高效的操作。

  • 利用Zigbee协议漏洞模拟攻击: 我们通过扩展和利用Zigbee协议的AT命令接口,实现了多种重定向攻击。这些攻击被记录并用于评估检测性能。

  • 迁移学习增强: 我们结合了迁移学习,以提高本地模型在异构设备和不同流量条件下的适应性和泛化能力。

我们的实验评估表明,所提出的联邦异常检测框架在识别各种攻击场景方面实现了高精度,同时保护了用户隐私并减少了通信开销。这项工作为下一代物联网系统开发可扩展、隐私感知的安全解决方案做出了贡献。

文献综述

由于对去中心化、隐私保护解决方案的需求日益增长,联邦学习和异常检测在物联网安全背景下受到了广泛关注。Rajasegarar等人提出了使用超球面[15]和超椭球[13]基于聚类的算法进行分布式异常检测,以在保持准确性的同时减少通信开销。Kanthuru等人[6]引入了一个基于机器学习的框架,使用树莓派节点和ZigBee模块检测物联网网络中的网络攻击。虽然有效,但检测过程是离线进行的,没有网络内或设备上学习能力。然而,这些方法没有采用深度学习或联邦模型更新。

Ficco等人[3]提出了一种高效且可扩展的物联网设备学习框架,该框架结合了联邦学习和迁移学习,在分类和回归任务中展示了优于传统FL和TensorFlow Lite的性能。

Zeng等人[17]通过引入一种基于共轭搜索问题的全同态加密方法,解决了FL中的隐私问题,实现了模型参数的安全传输而不降低性能。Korkmaz等人[8]评估了多种FL策略,确定FedAvg是一种有效的分布式学习优化技术。类似地,Idrissi等人[4]开发了Fed-ANIDS,它将基于自编码器的异常检测与FL相结合,在保护客户端数据隐私的同时实现了高精度。然而,他们的工作缺乏在资源受限设备上的实际部署。

Piracha等人[10]研究了使用ZigBee传感器节点的基于AT命令的攻击,但没有探索用于检测的联邦或设备上学习技术。Ahmed等人[1]专注于异构边缘环境的联邦深度学习,根据客户端资源分配模型复杂度。他们的策略有效缓解了落后者效应并优化了训练,尽管没有在实际物联网测试平台中实现或评估。虽然现有工作在物联网异常检测的联邦和分布式学习方面取得了进展,但在现实网络环境中的实时、设备上实现和评估方面仍然存在差距。我们的工作通过在由资源受限设备组成的真实物联网测试平台上部署一个基于自编码器的联邦异常检测框架来解决这一问题。

提出的联邦异常检测

(图1说明)


(a) 带有ZigBee的树莓派3B+

(b) 网络拓扑

(c) 重定向攻击。

一个真实的物联网测试平台被设计和构建,采用由多个资源受限的传感器节点组成的层次拓扑。每个节点基于树莓派3B+平台构建,并配备XBee S2C ZigBee无线电模块[2]以实现无线通信。一个节点被指定为攻击者,用于模拟安全威胁并促进正常和恶意流量数据的收集。最初,在正常操作条件下记录网络流量日志,并提取相关特征用于训练基于深度学习的异常检测模型。随后,执行各种攻击场景以生成恶意流量,这些流量被记录并用于评估检测系统。

为了提高模型训练的效率和可扩展性,采用了联邦学习和迁移学习[18]。在FL框架中,每个边缘设备独立训练本地模型,并仅将模型参数传输给中央协调器。协调器通过调整FedAvg算法来聚合这些更新,以构建全局模型,从而在设备级别保护数据隐私。迁移学习用于利用先前训练模型的知识,减少资源受限设备的计算负担并加速训练过程。

网络拓扑: 我们的网络拓扑由树莓派组成,包括一个协调器(C)、三个路由器(R1、R2和R3)、四个边缘设备(E1、E2、E3和E4)以及一个恶意节点。每个树莓派配备一个用于无线通信的XBee模块。网络配置可以使用XCTU软件进行管理。通过ZigBee模块的无线通信设置由一个利用Digi API的Python程序管理[12]。

重定向攻击: 在我们的实验中,我们实现了重定向攻击,其中目标节点的目的地地址被更改为指向一个新的父节点。这种操纵是通过利用ZigBee协议定义的AT命令和在相同PAN ID内运行的攻击者节点实现的。

图1(c)显示了实现的重定向攻击场景示例。可以观察到,原本向路由器R4发送消息的边缘节点E4成为攻击目标,其目的地地址使用AT命令被更改为路由器R1。因此,它将开始向R1而不是R4发送消息。

数据记录格式: 在我们的网络系统中,每个设备都会记录其处理的消息,包括时间戳、节点ID和状态码等详细信息。例如,当终端设备发送数据包时,它会记录XBee ID和发送时间。路由器类似地记录接收到的数据和时间戳等信息,以及发送方和目的地ID。

为了实现自动日志收集,我们实现了一个过程,其中每个节点将其日志发送给协调器。这确保了协调器接收到关于数据包在网络中传输路径的全面信息。边缘设备被编程为每秒发送一次数据包。每个设备上的典型日志条目将具有以下格式:

  • 协调器:
    E3>R3,2024-04-26 13:36:10.273312, 2024-04-26 13:36:10.336880, R3>R2,2024-04-26 13:36:10.369257, 2024-04-26 13:36:10.488817, R2>C,2024-04-26 13:36:10.522766, 2024-04-26 13:36:10.787851
    此条目表明数据包源自终端设备E3,到达路由器R3,从R3发送,然后到达路由器R2,从R2发送,最终到达协调器C。这种方法简化了用于分析和故障排除的日志收集。在实践中,中央节点(协调器)的记录过程不是必需的,因为它可以分别从各个节点访问。这里为了方便和易于日志收集而使用。

  • 路由器:
    E3>R3,2024-04-26 13:36:10.273312, 2024-04-26 13:36:10.336880, R3>R2,2024-04-26 13:36:10.369257, S:0
    在此路由器日志条目中,详细描述了设备之间的通信流。它以终端设备E3在2024-04-26 13:36:10.273312向路由器R3发送消息开始。随后,R3在2024-04-26 13:36:10.336880将此消息转发给路由器R2。该条目以注明此从R3到R2的传输成功(用"S:0"表示)结束。这种日志记录方法有效地记录了路由路径和每次传输的成功状态,有助于日志分析、网络故障排除和性能评估。

  • 边缘设备:
    E3 > R3, 2024-04-26 13:36:10.273312, S:0
    该条目表示边缘设备E3在2024-04-26 13:36:10.273312成功向路由器R3发送了一条消息。这种日志记录格式简洁地捕获了通信事件,指示了源、目的地、时间戳和成功状态,便于高效监控和分析网络内的设备交互。

自编码器: 一种用于无监督学习的神经网络,包含一个压缩输入数据的编码器和一个重构原始输入的解码器。其目标是通过最小化重构误差来学习紧凑表示。在本研究中,自编码器架构由一个包含31个特征的输入层组成,后跟一个包含两个全连接层的编码器,分别有32和16个神经元,两者都使用ReLU激活函数。解码器镜像此结构,具有两个全连接层,分别有32和31个神经元,使用sigmoid激活函数来重构原始输入。该模型使用Keras Functional API实例化,使用Adam优化器和均方误差损失函数编译。训练进行100个epoch,批量大小为32,学习率为0.001。

自编码器的数学公式。 设 𝒳 ⊆ ℝ³¹ 表示物联网网络流量特征的输入空间。自编码器是一个包含两个参数化函数的神经网络:

  • 编码器: 一个映射 f_θ: 𝒳 → 𝒵 到潜在空间 𝒵 ⊆ ℝ¹⁸:
    z = f_θ(x) = ReLU(W_e x + b_e),
    其中 θ = {W_e ∈ ℝ¹⁸׳¹, b_e ∈ ℝ¹⁸}。

  • 解码器: 一个用于重构的映射 g_ϕ: 𝒵 → 𝒳:
    x̂ = g_ϕ(z) = σ(W_d z + b_d),
    其中 ϕ = {W_d ∈ ℝ³¹×¹⁸, b_d ∈ ℝ³¹},σ(·) 是sigmoid激活函数。

我们的设计最小化批次 ℬ 上的重构损失:

ℒ(θ, ϕ) = (1/|ℬ|) Σ_{x∈ℬ} ‖x – g_ϕ(f_θ(x))‖₂², (2)

通过Adam优化,学习率 η=0.001,批量大小 |ℬ|=32,T=100 个epoch。

联邦学习: 我们通过调整FedAvg算法利用FL,在去中心化设备上训练机器学习模型,确保数据隐私。FL过程涉及在客户端设备上对本地数据进行迭代模型训练,然后在中央协调器处聚合模型更新。如算法1所述,我们解决方案的核心是聚合来自各个设备的模型更新,促进反映来自不同数据集的集体知识的全局模型的收敛。这个迭代过程,如算法1所示,突显了联邦学习的核心原则:在不损害数据机密性的情况下实现协作模型训练。

FL框架的数学公式。 考虑 K 个分布式设备,其本地数据集为 {𝒟_k}_{k=1}^K。设 w^(t) = {θ^(t), ϕ^(t)} 表示通信轮次 t 时的全局参数。FedAvg 协议如下进行:

  • 本地训练: 每个客户端 k 初始化 w_k^(t) ← w^(t) 并执行随机梯度下降:
    w_k^{(t+1)} = w_k^{(t)} – η ∇w ℒ_k(w),
    其中 ℒ_k(w) = (1/|𝒟_k|) Σ{x∈𝒟_k} ‖x – g_ϕ(f_θ(x))‖₂²。

  • 模型聚合: 协调器计算:
    w^{(t+1)} = (1/K) Σ_{k=1}^{K} w_k^{(t+1)}。 (3)

算法 1 改编的联邦学习过程
1: 初始化: 协调器 (C) 准备初始模型 W₀
2: 对于每个 路由器 R_i 执行
3: 如果 R_i 是叶子路由器 则
4: R_i 向 C 请求并接收 W₀
5: 否则
6: R_i 向父路由器请求并接收 W₀
7: 结束如果
8: R_i 用 W₀ 初始化本地模型
9: 结束对于
10: 重复
11: 对于每个 路由器 R_i 并行 执行
12: R_i 检查新的本地数据 D_i
13: 如果 D_i 可用 则
14: R_i 在 D_i 上训练本地模型 W_i
15: 结束如果
16: 结束对于
17: 对于每个 路由器 R_i 执行
18: 如果 训练完成 则
19: sum_weights ← W_i, count ← 1
20: 如果 R_i 有子路由器 则
21: 对于每个 子路由器 R_child 执行
22: R_child 向 R_i 发送权重 W_child
23: sum_weights ← sum_weights + W_child
24: count ← count + 1
25: 结束对于
26: 结束如果
27: R_i 将 sum_weights 和 count 发送给 C
28: 结束如果
29: 结束对于
30: 如果 协调器收到所有权重 则
31: C 使用 count 聚合 sum_weights 以得到全局模型 W_global
32: C 向所有路由器发送完成消息
33: 结束如果
34: 对于每个 路由器 R_i 执行
35: 如果 收到聚合消息 则
36: 如果 R_i 不是叶子路由器 则
37: R_i 向 C 请求 W_global,更新本地模型
38: 对于每个 子路由器 R_child 执行
39: R_i 向 R_child 发送 W_global,R_child 更新模型
40: 结束对于
41: 否则
42: R_i 向父路由器请求 W_global,更新模型
43: 结束如果
44: 结束如果
45: 结束对于
46: 直到 没有新数据用于训练

迁移学习: 在此框架中,迁移学习使每个客户端能够使用从相关任务或领域获得的预训练模型 w₀ 初始化其本地模型。给定本地数据集 𝒟_k,客户端 k 通过梯度下降微调模型:

w_k^{(t+1)} = w₀ – η ∇_w ℒ_k(w₀),

其中 ℒ_k(w) 是本地损失函数。这种方法融合了先验知识,加速了收敛,并提高了FL过程中的泛化能力。

正常与攻击数据收集

我们的数据集生成过程涉及两个不同的步骤,分别为联邦学习和集中式学习方法定制。对于联邦学习,我们在本地级别计算特征,重点关注我们网络设置中的路由器。相比之下,对于集中式学习,特征计算集中在协调器节点,网络中的所有路由器都向该节点发送数据包。对于两种方法,特征都在一分钟的时间窗口上提取,捕获详细的流量特征。这些特征包括:

  • 基于延迟的指标:

    • 平均延迟:数据包在时间窗口内从源到目的地所花费的平均时间。高平均延迟可能表明拥塞或异常。

    • 第一跳延迟:数据包到达第一个路由器/跳所花费的时间。有助于检测本地网络延迟问题。

    • 四分位数:表示延迟的分布,捕获数据包传输时间的变异性和偏度。有助于检测网络延迟中的异常尖峰或模式。

  • 香农熵: 基于延迟和第一跳延迟计算,以衡量网络时序的不确定性或变异性。较高的熵表示更不规则的数据流模式,可能表明异常或攻击。

  • 通信计数:

    • 按通信类型:每个通信对交换的数据包数量。

    • 总计数:时间窗口内的通信总数。突然的尖峰或下降可能突显异常网络活动。

  • 网络结构指标:

    • 每次通信的平均跳数:捕获数据包在网络中的传输距离。平均跳数的变化可以反映路由异常或改变典型路径的网络攻击。

这些特征是我们预处理阶段的重要组成部分,延迟以毫秒为单位量化。

在协调器级别,总共提取了31个特征。然而,对于本地级别(路由器)的特征,我们使用了协调器级特征的子集,因为某些特征与边缘或路由器设备无关。为了确保与联邦学习深度学习模型所需的输入维度兼容,路由器级别的任何缺失特征都在预处理阶段用零替换。

这些特征进一步使用MinMax缩放器进行归一化,以确保所有值落在统一范围内并改善模型收敛。

物联网测试平台设计与攻击场景实现

我们的实验设置包括一个由9个传感器节点组成的网络,旨在在各种攻击场景下从物联网网络收集实时数据。每个传感器节点基于树莓派3B+设备,配备Digi XBee S2C Zigbee射频模块,使用ZigBee协议进行无线通信[7]。网络拓扑遵循层次结构,战略性地分布传感器节点以捕获多样化的网络流量模式。具体来说,一个节点作为协调器,三个节点作为路由器,四个节点作为边缘设备,一个节点作为攻击者。

在日志记录过程开始之前,我们通过将所有的树莓派设备连接到互联网一次来确保它们的时间同步。最初,我们在节点上分发了一个基于正常网络行为训练的预训练模型,该模型使用1小时的数据训练,以促进联邦学习。随后,我们在没有攻击的正常网络行为下记录了5小时的数据。这个5小时的数据集用于提取特征并训练自编码器模型。在联邦学习设置中,每个路由器节点使用其本地数据训练模型,然后将生成的权重传输给协调器进行聚合。聚合后,更新的全局权重被分发回客户端节点。每个客户端节点在5小时时间框架内每十分钟生成的新数据上进行训练,在每个训练周期后将更新的权重发送给协调器进行聚合。

同时,我们还使用存储在协调器节点的数据训练了一个集中式模型。在收集正常行为数据并训练模型后,我们进行了重定向攻击以测试我们模型的鲁棒性和有效性。这些重定向攻击旨在模拟真实世界场景,并评估网络在不同攻击条件下的响应。攻击分为三种场景:

  • 场景 I: 更改网络内边缘设备的目的地地址。

  • 场景 II: 更改路由器的目的地地址。

  • 场景 III: 指示边缘设备和路由器将数据发送给攻击者节点。

表I显示了在正常(无攻击)条件下通信的节点,以及执行攻击时通信发生的变化。例如,在表I中,第二行第二列的条目“E1 -> R1”表示在正常(无攻击)条件下,节点E1将数据传输到路由器R1。当执行攻击(场景I)时,节点E1的流量被重定向到R2,即“E1 -> R2”(如表第三行第二列所示)。通过这种方式,在场景I下实现了12次攻击。类似地,分别实现了场景II的5次攻击和场景III的7次攻击。

表 I:攻击场景。C – 协调器,A – 攻击者,Rx – 路由器,Ex – 边缘/叶子设备。

场景 I场景 II场景 III
正常 E1 → R1 R1 → C E1 → R1
  E2 → R1 R2 → C E2 → R1
  E3 → R3 R3 → R2 E3 → R3
  E4 → R2   E4 → R2
      R1 → C
      R2 → C
      R3 → C
攻击 E1 → R2 R1 → R2 E1 → A
  E2 → R2 R2 → R1 E2 → A
  E3 → R1 R3 → R1 E3 → A
  E4 → R1   E4 → A
  E1 → R3 R1 → R3 R1 → A
  E2 → R3   R2 → A
  E3 → R2 R3 → C R3 → A
  E4 → R3    
  E1 → C    
  E2 → C    
  E3 → C    
  E4 → C    

对于每个攻击场景,我们记录了包含20分钟正常网络行为的数据,随后是5分钟的攻击时段,然后继续记录另外10分钟的正常行为。这种系统性的方法使我们能够评估模型的性能及其检测和缓解重定向攻击的能力。此外,这些场景涵盖了在我们实现的网络拓扑中可能发生的所有可能的重定向攻击。

选择重定向攻击是因为它们有效地改变了网络路由模式、延迟和通信分布,这正是我们提取的特征所捕获的行为。虽然存在其他攻击,如DoS、DDoS、数据包注入或欺骗,但它们对特征空间的影响通常也体现在导致异常延迟、不规则流量模式或通信计数尖峰方面。因此,专注于重定向攻击使我们能够研究对显著异常行为的检测,同时保持数据集的受控和可管理。这种方法表明我们的模型可以检测异常流量模式,并且该方法可以在未来的工作中扩展到其他类型的攻击。

定义检测攻击的阈值

在这项关于物联网网络安全和异常检测的工作中,我们采用了集中式和联邦模型进行异常检测。这需要使用自编码器模型选择阈值来确定正常和异常。我们基于验证数据集的重构损失为本地设备定义阈值,该验证数据集捕获了一小时记录的正常行为数据。

该图说明了联邦模型和集中式模型在异常检测系统中的重构损失随时间的变化。x轴表示时间间隔,y轴表示重构损失,表示模型重构输入数据的能力,数值越低越好。蓝色线代表联邦模型,红色线代表集中式模型。从给定的图表中,我们可以看到联邦模型和集中式模型的性能非常相似,几乎完全重叠。此图是针对其中一个攻击场景的,在此作为示例展示其可比的性能。值得注意的是,两个模型都成功检测到了攻击,如重构损失的尖峰所示,显示了模型对异常的敏感性。

(图2说明)
随时间变化的重构损失/误差。在正常(无攻击)操作期间观察到小损失,在攻击期间损失变得更高。

对于集中式和联邦方法,路由器异常检测的阈值使用以下公式计算:

阈值 = 均值 + k × 标准差 (4)

这里,均值和标准差来源于验证数据集中记录的正常行为数据的重构损失。调整缩放因子 k 以优化所有模型和设备的异常检测阈值。

通过利用各自模型的重构损失,并为每个设备和协调器定制阈值,我们增强了集中式和联邦模型的异常检测能力,同时考虑了物联网网络中每个组件的独特特征和职责。

结果与讨论

在本节中,我们介绍使用自编码器模型通过集中式和联邦方法评估的异常检测系统的结果。异常检测的阈值是针对 k 从 1 到 4 的不同值计算的。

阈值计算

对于集中式模型,阈值使用在协调器处聚合的数据确定,提供了网络的全局视角。这种全面的方法允许进行稳健的异常检测,但对局部变化的敏感性可能较低。相比之下,联邦模型涉及在单个路由器收集的数据上进行自编码器训练,从而实现更响应特定网段行为的局部异常检测。表II总结了在 k 的不同值下集中式和联邦模型获得的阈值。

表 II:联邦和集中式阈值

指标k=1k=2k=3k=4
联邦 R1 0.0342 0.0429 0.0516 0.0603
集中式 R1 0.0014 0.0022 0.0031 0.0039
联邦 R2 0.0351 0.0450 0.0550 0.0649
集中式 R2 0.0035 0.0058 0.0082 0.0105
联邦 R3 0.0242 0.0264 0.0286 0.0308
集中式 R3 0.0005 0.0007 0.0009 0.0011

性能指标

为了评估我们的异常检测过程准确检测攻击的能力,以及分析模型对 k 值的敏感性,我们对每个阈值使用了准确率、精确率、召回率和 F1 分数。用于计算这些指标的公式如下:

  • 准确率 = (TP + TN) / (TP + TN + FP + FN)

  • 精确率 = TP / (TP + FP)

  • 召回率 = TP / (TP + FN)

  • F1 分数 = 2 × (精确率 × 召回率) / (精确率 + 召回率)

其中 TP 是真阳性数,TN 是真阴性数,FP 是假阳性数,FN 是假阴性数。

表 III:联邦和集中式模型(R1、R2 和 R3)的性能

 R1   R2   R3   
k 准确率 精确率 召回率 F1 准确率 精确率 召回率 F1 准确率 精确率 召回率 F1
联邦方法                        
k=1 0.8458 0.4440 0.9583 0.6069 0.9333 0.7742 0.8054 0.7895 0.6526 0.1809 0.8810 0.3002
k=2 0.9369 0.6766 0.9417 0.7875 0.9354 0.8222 0.7450 0.7817 0.8097 0.2908 0.8690 0.4358
k=3 0.9669 0.8284 0.9250 0.8740 0.9292 0.8649 0.6443 0.7385 0.8127 0.2910 0.8452 0.4329
k=4 0.9741 0.8926 0.9000 0.8963 0.9250 0.8738 0.6040 0.7143 0.8167 0.2941 0.8333 0.4348
集中式方法                        
k=1 0.9048 0.5673 0.9833 0.7195 0.8000 0.4343 0.9530 0.5966 0.6123 0.1777 0.9881 0.3013
k=2 0.9513 0.7325 0.9583 0.8303 0.8573 0.5227 0.9262 0.6683 0.7432 0.2463 0.9881 0.3943
k=3 0.9689 0.8261 0.9500 0.8837 0.8854 0.5867 0.8859 0.7059 0.8308 0.3306 0.9762 0.4940
k=4 0.9741 0.8571 0.9500 0.9012 0.9052 0.6450 0.8658 0.7393 0.8852 0.4219 0.9643 0.5870

攻击检测性能分析

在我们的评估中,我们比较了集中式学习和联邦学习方法在物联网网络中进行异常检测的性能。

表III总结了评估指标,包括准确率、精确率、召回率和F1分数。此外,图3(b)直观地展示了三个路由器在不同 k 值下的F1分数。在此分层设置中,协调器充当全局设备,而路由器充当网络内的本地设备。

对于代表本地设备的路由器,可以在联邦模型和集中式模型中观察到变化。对于路由器1,两种方法都达到了高准确率,最佳F1分数在 k=4 时取得。结果表明,R1在所有 k 值下表现一致,两种方法之间只有微小差异。

在路由器2的情况下,两种模型表现出相似的性能趋势,尽管集中式模型在精确率和召回率之间取得了更好的平衡,尤其是在较高的 k 值下。联邦设置中R2的最佳性能出现在 k=1 时,而集中式模型在 k=4 时表现最佳。

对于路由器3,结果显示出跨 k 值的更大变异性。联邦模型在 k=2 时达到最高F1分数,而集中式模型在 k=4 时达到显著更高的F1分数。联邦方法通常产生更高的召回率,表明在检测阳性实例方面具有更好的灵敏度,而集中式模型实现了更高的精确率,表明假阳性更少。

总体而言,集中式模型表现出略微优越和更稳定的性能,尤其是在 k=4 时,而联邦模型则表现具有竞争力,但存在特定路由器的变化。

(图3说明)
(a) 使用最优 k 值时不同设备的F1分数。(b) 对于不同 k ∈ {1,2,3,4} 值,每个设备的F1分数。

k 的最优值

F1分数在选择我们系统最合适的 k 值时起到了关键作用。通过详细分析,我们确定了最大化F1分数的最优 k,确保在精确率和召回率之间取得平衡。这个最优值在集中式和联邦模型中一致应用,以确保稳健和准确的异常检测。

对于联邦模型,最优 k 值因设备而异:路由器1在 k=4 时达到最佳性能,路由器2在 k=1 时,路由器3在 k=2 时。相比之下,对于集中式模型,最优 k 值在所有设备上是一致的,都在 k=4 时达到最佳性能。这些值是根据每个配置获得的最高F1分数选择的。

图3(a)显示了最优k值下的F1分数,突出了我们的联邦学习模型与集中式模型在不同设备上的有效性。该图表明,联邦模型达到了有竞争力的F1分数,展示了其在保护数据隐私和减少通信开销的同时有效检测异常的能力。

通信与计算开销

在评估用于物联网异常检测的联邦学习和集中式学习方法时,我们将通信和计算开销视为关键因素。通信开销包括设备与中央服务器或协调器之间交换的数据。联邦学习通过传输模型更新而非原始数据来减少这种情况,从而增强隐私并减少网络拥塞。计算开销指模型训练所需的处理能力和时间。集中式学习将计算集中在中央服务器上,而联邦学习将负载分布在设备上,需要足够的本地处理能力。

联邦学习通过仅传输模型更新来最小化通信开销,节省带宽并减少数据传输。然而,由于分布式训练,它在本地设备上引入了计算开销。尽管如此,联邦学习利用了设备的集体处理能力,使其适用于物联网网络中的实时异常检测。这种方法还增强了数据隐私和安全性,解决了物联网的关键问题。下面,我们比较了集中式和联邦学习方法在5小时内的通信开销。

在集中式方法中,每个边缘设备每秒向路由器传输数据。在5小时内,每个路由器接收总计1.5 MB的数据。网络中有3个路由器,传输的总数据量为4.5 MB。在联邦学习框架中,每个路由器每60分钟将其本地模型权重传输给中央协调器进行聚合。在聚合过程之后,协调器将相同大小的更新后的全局权重分发回所有路由器。因此,每个通信轮次涉及每个路由器双向传输25.2 KB。在5小时的训练期内,每个路由器累积交换的数据量约为126 KB,导致所有三个路由器总通信开销为378 KB。

这清楚地表明,与集中式方法相比,联邦学习方法显著减少了通信开销。具体来说,联邦学习在5小时内仅需378 KB的数据传输,而集中式方法需要4.5 MB。这种减少在带宽受限或需要最小化通信成本的网络中特别有利。通过理解和管理这些开销,联邦学习可以成为物联网异常检测的一种高效且可扩展的解决方案,有助于增强网络智能和安全性。

复杂度分析

在我们使用树莓派3B+传感器节点进行联邦学习的异常检测系统中,通信开销涉及每个边缘设备每60分钟向协调器发送12.6 KB的模型权重,协调器将更新后的12.6 KB全局模型发送回每个边缘设备。每个边缘设备的内存复杂度为 O(md) 用于存储本地数据,以及 O(d) 用于存储模型权重,而协调器需要 O(d + nd) 用于聚合权重和全局模型,其中 m 是本地数据点的数量,d 是每个数据点的维度,n 是边缘设备的数量[14]。计算上,在每个边缘设备的本地数据上训练自编码器涉及 O(e*m*d²) 次操作,其中 e 是epoch数,计算重构损失为 O(md)。协调器聚合权重和更新全局模型的计算复杂度为 O(nd)。

结论

在本文中,我们使用自编码器模型,通过集中式和联邦学习方法评估了异常检测。我们的结果表明,联邦方法在性能指标上几乎与集中式方法相同,包括准确率、精确率、召回率和F1分数。

联邦学习在保持检测精度的同时增强了隐私和安全性。与数据在中心点聚合的集中式学习不同,联邦学习在单个设备上本地处理数据,降低了数据泄露的风险,并确保敏感信息保持私密。我们使用真实的网络设置、真实数据和模拟的攻击场景进行了评估,验证了我们的模型在现实物联网环境中的实用性。除了重定向攻击,所提出的方法还可以检测其他攻击,如拒绝服务和中间人攻击。未来的工作将包括在真实网络中测试这些攻击。

我们还计划研究设备异构性,在更大网络中评估性能,并实施自适应阈值和增量学习以实现持续演进。此外,将探索先进的联邦学习技术,以在减少通信和计算负载的同时提高模型性能。总之,联邦学习是物联网网络中进行异常检测的一种可行且有效的方法,在高检测精度与隐私和安全性之间取得了平衡。我们的实际实现突显了其在增强物联网安全方面的潜力。

 

 

赞(0)
未经允许不得转载:171主机测评 » 物联网网络中基于联邦深度学习的网络内攻击检测:实际实现与分析
分享到: 更多 (0)

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址