一、立题依据(包括国内外研究现状和发展趋势、文献综述、研究目的、意义等):
研究背景与意义
根据全球移动通信系统协会(GSMA)发布的《The mobile economy2021》报告显示2020年全球物联网总连接数达到131亿,预计到2025年,全球物联网总连接数规模将达到240亿,年复合增长率高达13%。
物联网快速发展的同时,安全问题也愈发严峻。物联网的开放性使其容易受到网络安全威胁,攻击者可以利用被动网络流量分析来执行一些恶意活动,例如,Mriai病毒感染了全球超过60万台设备,被感染设备主要用于DDoS攻击。即使对流量进行了加密,攻击者仍然很容易利用捕获的网络流量进行分析来识别脆弱的物联网设备,并获得它们在网络中的访问控制权限。另一方面,物联网设备通过传感器和处理器收集并分析从环境中获取的数据,将数据发送到网关或者其他物联网设备进行共享。考虑到物联网设备生成的巨大数据量,数据隐私和安全性是物联网设备安全的突出问题。
接入物联网的终端设备呈现多样性与复杂性,网络管理面临两大难题。一是不同类型的终端接入网络后要部署的业务配置与策略不同,而只查看设备IP与MAC地址无法得知终端的类型,因此不能对终端做更精细的管理;二是物联网设备因自身与生产厂商的原因存在很多的漏洞,容易被黑客入侵,研究[1]表明现有的漏洞、安全补丁都与物联网设备的类型、厂商等信息有关。因此利用物联网流量的区分性特征对设备流量进行分类[2]是保障网络空间基础设施安全[3]以及用户服务质量(QoS)的前提和有效手段。
欧盟在2018年出台了《通用数据保护条例》(GDPR),它是一份隐私保护条例,旨在规定企业在对用户的数据进行收集、处理和使用时应当遵守的规定。GDPR的实施让生活在数字时代的人们重新审视其对于数据隐私保护的必要性。机器学习早已成为计算机科学领域中的热门话题,它们中的大多数模型需要相当数量的数据以支撑其进行训练并达到可以应用的程度,来源于公开渠道的数据并不能满足企业生产、科学研究和公共服务等日益增长的数据需求。我们并不希望用户个人持有的带有隐私属性的数据被公开用于企业盈利或者科学研究,具有推理模型需求的企业同样不想分享自己的私密数据。比如,不同的银行之间不想共享储户的信息,例如存款数额、存取频率等,隐私规范条例也并不允许它们这样做,但是若如银行想要发展更加精准的推销业务,在不泄露隐私的情况下进行联合学习建模成为了一种有效手段。我们称那些没有意愿甚至也无法违法规则分享隐私数据的个人、研究团体或者企业为数据孤岛,这些数据孤岛也许有着近似的数据环境与建立高效模型的需求,如何打破数据孤岛的枷锁并进行联合学习成为横亘在人们眼前的一项挑战。Google[4]为我们提供了一种有效的联合学习范式,2016年Google提出了联邦学习的概念并成功应用于Google输入法[5],为打破数据孤岛壁垒提供了有力的工具。联邦学习可以在保护用户隐私的前提下分享数据内在分布,通过多参与方的通信交互,联合建立比单一用户机器学习所建立的模型更加精准、高效的联合模型。联邦学习在金融、医疗、物联网以及政府间合作将会有着不可替代的作用,在不违反隐私条例与数据安全道德的情况下将会显著提升服务质量。
物联网网络流量数据有助于了解物联网 (IoT) 行为并提高现实世界中的物联网服务质量。实际上大规模的物联网流量数据很少可访问,隐私问题也阻碍了物联网流量数据的共享,结合联邦学习算法可以在降低物联网流量数据需求和保护保护数据隐私的同时实现物联网设备网络流量分类。对基于联邦学习的物联网设备网络流量分类的研究有着现实价值和理论价值。
国内外研究现状
2.1 物联网设备流量分类研究现状
物联网流量分类技术分为基于端口号分类、基于深度包检测分类以及基于机器学习算法分类。其中基于端口号分类方法是使用传输层协议的端口号进行分类,容易实现且算法时间复杂度低,但随着端口跳变和端口伪装技术的出现,导致此方法不再有效。而基于深度包检测分类[6],是对网络流量中数据包的有效载荷进行细致检测,在此过程中查找与其他协议不同的字段,运用该字段进行判别,得出对应的流量类型,此方法准确率高但会检测数据包的有效载荷,不适用于需要保护隐私的场景。
近年来,学术界对基于机器学习算法分类开展了大量研究,主要可分为基于有监督的设备流量分类算法、基于无监督的设备流量分类算法和基于半监督的设备流量分类算法。
2.1.1 基于有监督的设备流量分类算法
Noah Apthorpe等[7] 验证了使用流量分类技术能够窃取用户的隐私,分类过程使用了三阶K-NN分类模型,结合数据包的统计特征。
Bezawad等[8] 在分类特征上,从设备的静态行为模型和动态行为模型两个方面进行考虑,静态行为模型由设备在不同阶段使用的不同协议构成,动态行为模型则包含以下四类特征:包头域的特征、有效载荷的Shannon熵、TCP有效载荷长度和TCP 窗口大小,使用梯度提升树算法取得了最好的分类准确率。
Santos等[9] 则统计了双向流上的数据包大小、数据量等特征。作者将机器学习方法和深度数据包检查技术进行了对比,发现两者准确率在设备分类问题上差别不大。Shahid等[10] 则缩小了特征的提取范围,考虑了双向流前 N 个数据包的数据包大小与数据包达到时间,缺点在于用于实验的分类设备的数量太少。
Ahmed Alshehri等[11] 设计了在智能家居设备流量在 VPN 下的设备分类算法,使用了数据包的大小、数据包之间的前后顺序来构造设备流量指纹,选取依据是这两个特征不会被 VPN掩盖,同时考虑了设备的周期性流量与活动流量。
TJ OConnor 等[12]将流量上的各种特征值按现实性分为了四类:吞吐量(throughput)、突发性(burstiness)、同步性(synchronicity)、持续时间(duration),同时计算了这些特征对于分类准确性的贡献度。作者实现了更细致的设备行为分类,并在流量分类的基础上实现了智能家居数据流控制系统。
Bai,Lei等 [13] 使用了LSTM-CNN算法以监督的方式捕获全局和局部时间相关性。以 5分钟为时间间隔,从用户数据包与控制数据包中各提取了 3个特征(包平均长度、包长度峰值、包数量)。实验中,作者观察到性能随着设备类型数量的增加而下降。与多个有监督的机器学习算法进行了对比,取得了更好的效果。
Shuaike Dong等[14]将LSTM 应用在开启 NAPT和 VPN情况下的智能家居流量分类,使用了 LSTM-RNN 模型。对于每一个数据包,提取二进制特征集合:<dport,protocol,dir,packet size, time interval>输入到网络中,结果显示双向 LSTM 模型在嘈杂的实验条件下能达到很高的分类准确率,优于随机森林模型。
基于有监督学习的流量分类算法准确率较高,但有监督的流量分类算法无法识别未知流量,同时有监督学习需要大量且充分的标记数据用于训练分类器,目前针对网络流量分类最大的挑战之一就是捕获和标记大量的高质量网络流量数据,人工标记数据十分费事费力代价很高,通常很难获得大量的已标记数据,模型泛化能力受到限制。
2.1.2 基于无监督的设备流量分类算法
Thangavelu, Vijayanand等[15] 提出了一个分布式物联网指纹技术,模型主要分为两个部分,控制器和网关,网关将抽取的网络数据包特征上传到控制器,由控制器训练有监督学习的模型并下发到网关,网关进行物联网数据包的分类。在处理未知流量方面,作者使用无监督算法对网关上传的新设备的流量特征进行聚类,当新类别的类簇大小到达阈值时,重新训练有监督的分类器。
Trimananda, Rahmadi等[16] 为每个设备的活动建立一个指纹,每个动作的指纹是一组数据包载荷大小的序列,方向上考虑了设备、云、APP 三者之间交互。作者使用 DBSCAN(基于密度聚类的算法)辅助提取每个功能的稳定指纹,优点是指纹的可解释性很强,缺点是需要维护这个指纹库,以消除设备软件更新的影响。
Ortiz, Jorge等[17] 同样着重于未知设备的识别,使用 LSTM-Autoencoder 网络自动提取特征,并输出为一个固定大小的向量,第二步对该向量使用贝叶斯建模,对比已知设备的 TCP 流分布进行设备分类。
与有监督学习算法不同,无监督学习算法不需要已标记其所属类型的训练数据,它能够将具有相似特性的无标记数据自动的划分为一类,再对每一类进行类别的映射,具有更强的泛化能力。但同样无监督机器学习需要大量的数据来学习流量特征,如果数据量不足,可能会影响分类效果。
2.1.3 基于半监督的设备流量分类算法
Linna Fan等[18]实现了一个基于 CNN(卷积神经网络)和多任务学习的模型,以 5% 的标记数据训练模型,准确率超过 99%。它可以区分物联网和非物联网,并根据时间间隔特征、流量特征、协议特征和TLS相关特征等形成的多方面的219维特征对特定物联网设备进行分类。
Farrukh Aslam Khan等[19]提出了一种基于堆栈自动编码器(Stacked Auto-Encoder,SAE)的新型的半监督特征学习的两阶段深度学习模型,具备89%以上 的识别率。该模型包含两个决策阶段:第一阶段首先负责使用概率分数值(PV值)将网络流量分类为正常或异常。然后第二阶段即最终决策阶段将PV值用作为附加特征,用于精确分类正常状态流量和其他各种类别的攻击流量。
Hara K等[20]提出了基于对抗自编码器(Adversarial Auto-Encoder,AAE)的半监督入侵检测方案1.0% 的标记数据实现了 82.78% 的检测率,甚至超过其他的部分机器学习分类算法的检测率。
Iliyasu A S等[21]提出了基于深度卷积生成对抗网络(Deep Convolutional Generative Adversarial Networks,DCGAN)实现的半监督加密流量分类模型,以10%的标记数据模型,准确率达到89%。作者通过DCGAN中的生成器G生成的样本提升判别器D对于数据样本的学习能力,同时利用判别器D实现监督分类过程。
Nukavarapu S K等[22]提出了基于半监督GAN的设备流量分类模型,以两个半监督GAN模型实现了两阶段的多功能分类器,以3%的标记数据训练,准确率达到96%。该方法训练了两个SGAN模型,第一个SGAN模型负责从网络流量里区分出具体设备ID的流量以及未知流量,未知流量作为下一个SGAN模型的输入,从未知流量里分类出物联网设备流量、非物联网设备流量和异常流量。
半监督学习方法则是监督学习和非监督学习的结合体,其训练数据是标记数据和未标记数据的混合。基于半监督学习的流量分类方法既能减少对标记数据的依赖,又可以利用大量易获得的未标记数据优化分类器,具有良好的性能。
研究重点
许多研究基于机器学习方法对物联网设备流量实现了对物联网设备流量的有效分类,是保障网络空间基础设施安全以及用户服务质量(QoS)的有效手段。而在物联网标记数据稀缺的场景下,基于半监督学习的流量分类算法在减少对标记数据的依赖的同时实现高效分类器。
各行各业对数据隐私和数据安全的重视一方面限制了训练数据的共享,另一方面也进一步加剧了可用的标记数据的缺乏。联邦学习可以在保护隐私的同时协同各方数据训练机器学习模型,结合半监督学习可以进一步降低物联网下单个客户端对标记数据的需求,是实现物联网设备流量分类的有效方法。