孙莉莉,易 波,王兴伟+,黄 敏
1.东北大学计算机科学与工程学院,沈阳 110169
2.东北大学信息科学与工程学院,沈阳 110819
随着互联网以及科学技术的发展,当今已处于信息爆炸的时代[1]。各种新媒体技术更倾向于内容交互,且其需求不断增长[2],传统网络点对点的对话方式已不能满足该需求。为了更好地为内容分发型应用提供服务,从根本上解决当前网络体系存在的问题[3],学术界提出了以内容为中心[4]的信息中心网络(information-centric networking,ICN)[5]。命名数据网络(named data networking,NDN)被认为是基于内容传输的资助项目中最有前景的候选项目,不以请求用户实体为中心,直接处理用户请求内容。绝大多数ICN 的相关研究都衍生于它,本文也是以NDN为背景对ICN 路由机制进行研究。
ICN 将网络传输数据与主机进行解耦,并在路由器内设置缓存机制用于缓存内容信息。完成了网络实体从主机到内容的转换,由传统的基于IP 寻址方式转换为基于内容名称路由的方式。ICN 易于对内容分发进行扩展,提高了网络性能,提供内在的安全机制,可通过强制签名来保证内容的真实性和完整性[6]。虽然ICN 的内在安全机制能屏蔽当前网络存在的拒绝服务攻击(denial of service,DoS),但同时产生了特有的路由攻击,如:资源耗尽、路由耗尽和发布服务器不可用等。其中影响最大且最易发起的攻击即为兴趣洪泛攻击(interest flooding attack,IFA),攻击者通过恶意发包,使路由进行不必要的计算并占用路由器未决兴趣表(pending interest table,PIT),导致路由资源耗尽。目前对于高效路由的研究已取得相应成果[7],但在安全路由方面仍是一个挑战。
仿生学自1960 年被提出后[8],已成功应用于各个领域。仿生网络、仿生计算和仿生系统已经成为三大主要研究方向[9]。高复杂度、多层次的生物免疫系统[10],因其多样性和健壮性也被研究学者广泛关注。1986 年,人工免疫智能优化算法被业界广泛研究,也被成功用于解决网络安全问题。
本文将在现有的ICN 路由机制中,基于人体两层免疫防御机理添加安全控制策略,从而抵制ICN 的安全“克星”IFA,以减少网络资源的恶意占用,实现ICN安全路由机制。
当今互联网,网络性能和功能被广泛研究,而网络安全也一直备受关注。现有网络攻击手段主要分为四种:欺骗类攻击、拒绝服务攻击/分布式拒绝服务攻击、信息收集攻击和漏洞类攻击。其中拒绝服务攻击/分布式拒绝服务攻击作为最常见的攻击被要求在任何网络架构中都要对其进行有效防御[11]。ICN网络特性可抵御该类攻击,但其路由过程使其面临特有威胁[12]。文献[13]聚焦IFA 攻击,并对命名、路由、缓存等类型的攻击按照其危害程度进行了阐述,分别给出了解决方案。
文献[14-16]是针对安全路由的一些研究。文献[14]针对NDN 转发平面的前缀劫持和PIT 溢出问题进行研究。文献[15]在每经过一次路由后,都重新对内容进行分片组装,以提高路由效率。该方法对每个路由都提出了安全要求,通过增量片段验证方法以保证组装的内容完整性和安全性。文献[16]提出安全命名机制,对兴趣包进行空间映射。以使不同安全级别的兴趣包按照不同策略转发。
以上方法有效解决了ICN 的部分安全路由问题,但未对IFA 进行深入的研究。IFA 可导致合法兴趣包因PIT 被恶意占满而丢弃,严重影响网络服务。目前可通过限速缓解、网络流量特征学习以及修改路由器策略三种方法解决该问题。
(1)限速缓解
文献[17]给出三种缓解IFA 的方法。文献[18]设计了两阶段的协作方法缓解洪泛机制。文献[19]受IP 回溯启发,提出一种缓解IFA 的方法。
(2)网络流量特征学习
文献[20]结合接口限速特性,给出一种有效的IFA 检测机制。文献[21]给出一种检测有效和恶意兴趣包分布的方法,可有效防御快速易失性攻击。但文献[20-21]忽略了对IFA 起关键效应的缓解机制,更侧重于精确识别IFA。
(3)修改路由策略
文献[22]提出一种攻击缓解机制DPE(disabling PIT exhaustion),在兴趣包中封装入口地址作为转发路径表,从而将恶意数据包从PIT 中解耦,按转发路径表转发恶意数据包,降低恶意数据包对PIT 资源的恶意占用。文献[23]在此基础上提出m-NACK(m-list negative acknowledgments)策略,可有效降低检测时延,但弱化了PIT 的聚合作用。
虽然以上研究可有效缓解恶意兴趣包对PIT 的资源占用,但采用的缓解机制并没有阻断恶意兴趣包在网内的传输,且PIT 的聚合功能被减弱,网络计算及资源开销变大。
此外,近年来随着业界对ICN 问题研究的深入,新的解决方案也被提出。文献[24]设置兴趣围栏,使内容服务器可高效地检测与过滤恶意兴趣包。仿生网络也被大量应用以解决该问题。文献[25]基于进化论设计网络配置机制,以应对网络安全问题。文献[26]基于人体免疫学理论建立检疫区,对已产生的攻击进行免疫记忆。
以上研究大多从路由有效性及精确检测IFA 出发,未考虑如何针对IFA 攻击进行安全路由,保证网络性能。
传统网络中,路由协议根据拓扑变化情况动态生成路由表,IP 数据包根据路由表进行数据转发,以保证最佳传输路径。转发机制仅受路由协议影响,其路由平面有状态,但转发平面无状态[14]。而ICN 转发平面有状态,即包交付由路由和转发功能共同协作完成。
网络中每个节点都需要维护三张表:用于缓存通过该节点数据包副本的内容存储(content store,CS),为兴趣包维护条目的未决兴趣表(PIT),维护下一跳信息的转发信息表(forwarding information base,FIB)。兴趣包和数据包的转发过程如图1 所示。
消费者向网内发送兴趣包,到达网内路由器R 后首先在CS 中进行内容名称匹配,若成功匹配则证明当前路由缓存中已存储该请求内容,直接由该节点生成数据包转发回消费者。否则,查找PIT 表,成功匹配则先进行PIT 聚合,然后根据FIB 转发至下一跳;若未成功匹配则直接根据FIB 表进行转发,并在PIT 中添加该兴趣包的入口地址;若FIB 不含有该兴趣包的转发信息,则丢弃兴趣包。
若转发过程中,链路中某个路由含有请求内容信息,则由该路由封装数据包回传;否则,一直按照FIB进行转发,最终传递至生产者,由生产者封装数据包回传。路由器接收到数据包后,首先遍历PIT,若成功匹配则转发至该条目所有接口,删除相应PIT 条目,并将该数据包缓存至CS 中。否则,丢弃该数据包。
Fig.1 Forwarding process of ICN routing图1 ICN 路由转发过程
ICN 一改TCP/IP 认证机制,应用程序成为其信任管理委托方。其内容的真实性和完整性可通过强制所有内容的公钥签名来保证。该内在的安全机制可有效抵制DoS 攻击,无论何时何地都可对原始身份进行验证。但其特有的CS 和PIT 架构,使兴趣包在网络层直接根据内容名称进行转发,又可造成路由攻击和缓存攻击等新的特有攻击。
IFA 是路由攻击中最容易发起,影响最强的攻击方式。根据攻击者发送的请求内容不同,可将IFA 分为三类:(1)静态攻击;(2)动态攻击;(3)网内内容缺失攻击。静态攻击指攻击者请求的内容存在并且不发生变化,此类攻击请求虽会造成一定程度的网络拥塞,但其请求内容在后期会得到满足,对网络整体性能影响较小。动态攻击是指攻击者的请求内容是存在的且动态生成,导致网内PIT 缓存大量无用内容,其对网络性能影响较大,但其实现不易,难以形成大规模的攻击。缺失性攻击是本文主要研究的攻击类型,其对网络性能影响最大且最易发起。其攻击过程如图2 所示,在该类攻击下,攻击者生成大量前缀合法、请求内容不存在且动态变化的兴趣包。该恶意兴趣包入网后,网内路由缓存不能提供相应内容请求,将前缀等信息存入路由PIT 表后根据FIB进行转发。因网内不存在该内容,所有缓存均不能满足其请求内容,恶意兴趣包将不断根据FIB 表被转发,最终这些恶意兴趣包都会被转发至生产者,而其内容并不存在,因此生产者也无法满足兴趣包请求,丢弃恶意兴趣包。
Fig.2 IFA attack principle图2 IFA 攻击原理
在大规模的攻击下,请求内容得不到满足,网内路由PIT 中存储大量接收和转发请求,直到请求数据包到达该路由或PIT 条目超时被删除。而PIT 被恶意占用速率远远高于其超时被删除或被满足的速率。因此,恶意兴趣包的信息会耗尽PIT 存储空间,导致合法用户兴趣包被丢弃。影响有状态转发,增加网络时延,降低网络请求满足率,影响网络性能。
现有研究表明,可通过速率限制来缓解IFA 攻击对PIT 的恶意占用。但究其本质,边缘路由无法区分合法兴趣包与恶意兴趣包,为保证合法用户请求被满足因此不能直接丢弃兴趣包,从而采取速率限制的方法,限制进入网内的兴趣包的总数量。但若恶意用户攻击速率较快,恶意兴趣包相对于合法兴趣包占比更高,即便采取速率限制也会有大量恶意兴趣包被传入网内,其缓解作用被削弱。因此是否对路由器采取速率限制较精准识别恶意兴趣包就显得并不那么重要[27]。
恶意兴趣包由合法的前缀和无意义的后缀组成。其无意义的后缀是动态生成且不存在于生产者当中的内容。想要对其进行精确的检测从而过滤恶意兴趣包,必须含有关于内容和名称的可读安全信息。而ICN兴趣包中不含该类安全信息,使其难以精确检测。
综上,IFA 攻击规模大毁灭性强,且难以缓解,成为IFA 的安全“克星”。本文将对其安全路由机制进行研究。
将ICN 网络与人体免疫防御机理进行对比。网络中路由器节点视为人体免疫细胞,将恶意兴趣包及其攻击者(恶意消费者)视为病原体。非特异性免疫不具针对性,由单细胞完成,只能进行初步缓解。该机制对应网络中单个路由器,不能识别恶意兴趣包与合法兴趣包,仅进行初步的攻击缓解,防止PIT 被恶意占用。特异性免疫针对不同病原体产生抗原,消灭异体,通过多细胞协作完成。该机制对应于网络中的生产者与网内路由协作过程,生产者对恶意消费者产生的恶意兴趣包进行识别,通过路由回溯,抵御消费者产生的恶意攻击。其映射图如图3 所示。
受人体免疫防御机理启发,设计两阶段ICN 安全路由机制抵制IFA 攻击。其系统架构图如图4 所示。非特异性免疫阶段,设置免疫反馈机制和隔离策略。免疫反馈机制形成免疫疑似隔离表,免疫隔离策略根据免疫隔离表对疑似恶意兴趣包进行隔离,但不阻断其在网内传播,以保护PIT 不被恶意占用,一定程度保证合法兴趣包的正常传输。在免疫时间到达后,将免疫标记后的兴趣包递交至特异性免疫进行处理。
Fig.3 Human immune mechanism and ICN network map图3 人体免疫防御机理与ICN 网络映射图
Fig.4 System architecture diagram图4 系统架构图
特异性免疫识别恶意兴趣包并对其进行阻绝。若隔离后的兴趣包触发特异性免疫则进行免疫回溯,从而形成免疫记忆,防止网络资源被恶意占用,降低网络性能,通过免疫记忆消灭同源IFA。
将网络模型抽象为连通无向图G()
N,E,N为网络中的免疫功能节点,具有处理、存储和转发功能。E代表网络中的免疫神经链路,可传递回溯数据包以形成免疫记忆。
免疫节点除原有的CS、PIT、FIB 表外,添加疑似隔离表(suspected insulate table,SIT)、免疫记忆表(immune memory table,IMT)。
疑似隔离表表示为三元组(prefix,interface,isolation time),包含名称前缀、入口和隔离时间。隔离时间控制该条目存在时间,以防止其长期存在削弱PIT 的聚合功能,导致网络性能下降。在隔离时间内,若兴趣包被疑似隔离表标记为可疑兴趣包,根据兴趣包中的隔离路径进行转发,不占用PIT存储资源。
免疫记忆表表示为三元组(interface,prefix,memory_time),包含阻隔接口、名称前缀、记忆时间。在记忆时间内,含有IMT 的路由器对表项进行检测,若兴趣包名称前缀存在于IMT 表项中则进行免疫,禁止该恶意兴趣包传入网络。
ICN 网络中存在兴趣包和数据包,为完成免疫记忆功能,添加回溯包。生产者通过该包向受到攻击的节点传送免疫抗体,将回溯包中的接口和内容前缀存入被攻击节点的IMT 表中,阻断IFA。
消费者通过兴趣包发送内容请求,合法兴趣包不触发任何免疫。恶意兴趣包为“异体”,当恶意兴趣包被非特异性免疫的反馈策略检测到后,触发非特异性免疫,将该兴趣包进行隔离处理。根据该原理,在原有数据包中添加隔离路径字段,根据该字段转发疑似恶意兴趣包,而不占用PIT 表资源。更改后,兴趣包字段可表示为(内容名称(前缀,后缀,隔离路径…),选择器,生存时间,随机数)。
兴趣包在网络中某节点CS 中找到数据则将请求内容生成数据包返回。若到达生产者,则封装内容数据并对该数据包进行签名以保证数据真实性。若为可疑兴趣包,则数据包返回路径为兴趣包隔离路径的逆序。数据包字段可表示为(内容名称(前缀,后缀,隔离路径…),元信息(内容类型,新鲜值…),内容数据,签名)。
当生产者检测到有大量前缀相同且无匹配内容的兴趣包时,则触发特异性免疫,生产者产生抗体——回溯包。根据隔离路径回溯至消费者所连路由器,并将相应信息记录在IMT 中。以消灭“异己”,抵御IFA。回溯包字段可表示为(内容名称(前缀,后缀,免疫列表…),元信息(内容类型,新鲜值),签名,回溯标记)。
基于人体免疫防御机理的ICN 安全路由机制转发过程如图5 所示,可分为兴趣包转发过程、数据包转发过程和回溯包转发过程:
(1)兴趣包转发过程
①兴趣包进入路由器,进行IMT 匹配,若成功匹配,则该数据包为恶意数据包直接丢弃。否则,执行②。
②匹配CS 表,若兴趣包请求的内容存在于当前路由器的CS 表中,则将内容封装,返回数据包。否则,执行③。
③检测该兴趣包的隔离路径,若该表非空,则将该路由信息记录到隔离路径中,执行④。否则,将兴趣包前缀与疑似隔离表进行匹配,若匹配成功,则表示该兴趣包为疑似兴趣包,则执行基于疑似隔离表的免疫隔离策略,然后执行④。若不匹配,则匹配PIT 表,未匹配成功则添加该前缀信息等,若匹配成功,则进行前缀聚合,然后执行④。
④查找FIB 表,成功匹配则根据转发信息转发,否则丢弃该数据包。
(2)数据包转发过程
①兴趣包到达生产者,先判断疑似隔离表是否为空,若为空执行②,不为空执行③。
②查询节点PIT,成功匹配,则将请求内容缓存至CS 表中,并根据PIT 条目进行转发。转发后清除PIT 中相应条目。
Fig.5 Secure routing forwarding mechanism for ICN图5 ICN 安全路由转发机制
③根据隔离路径进行转发,同时缓存请求内容至CS 表。
(3)回溯包转发过程
若兴趣包触发特异性免疫,则生产者根据兴趣包中的隔离路径进行回溯,直到该包的消费者。将相应前缀信息添加至路由表的IMT 中,进行IFA 免疫,抵制IFA。
非特异性免疫与生俱来,仅对病原体进行初步抵御,维持人体稳态。ICN 的特殊架构使其可通过CS 缓存、PIT 超时、PIT 聚合等一定程度抵御IFA 攻击。但其免疫效果微弱,因此设计免疫反馈策略和隔离策略来增强ICN 对IFA 的免疫作用。反馈策略完成对IFA 的识别,填充SIT 表。隔离策略根据反馈结果,完成疑似兴趣包与PIT 的“隔离”,使其不占用路由器PIT 存储资源。
4.2.1 免疫反馈策略
在无攻击发生时,合法兴趣包可在中间路由CS表或者生产者处获得请求内容,返回数据包。此时PIT 中的内容会不断地动态更新,定期删除未满足条目和已成功返回数据包的条目,其占用率低。若受到恶意攻击,沿途节点无法提供请求内容,兴趣包必然传送至生产者,而生产者也无法提供相应内容,传入的恶意兴趣包占用PIT 表至该条目到超时被删除,沿途节点的PIT 被饱和。而恶意攻击频繁,PIT 将永远处于饱和状态,从而合法性兴趣包无法存入PIT中,被大量丢弃,影响网络性能。
因此,本文通过在固定时间内检测路由器兴趣包的进入数量和从该路由器转发的数据包之比,来判断是否可能发生IFA。若比值超过正常值,则对其进行疑似标记,将该疑似恶意兴趣包传递至生产者进一步判断是否发生IFA。计算方式如式(1)所示:
未发生攻击时λ=1。若λ>1 表明诸多兴趣包未得到满足,可能发生恶意攻击。当该比值超过阈值α后,立即统计相同<前缀,接口>超时PIT 条目的累计次数,当累计次数超过阈值β,则判断可能出现恶意兴趣包,从而更新疑似隔离表SIT 内容。
算法1免疫反馈策略算法
输入:包packet。
输出:更新后的SIT。
首先初始化节点,记录到达路由器的包的数量,定期统计兴趣包满足率。若满足率超过阈值,则更新PIT超时条目信息,若超时次数大于β,则更新SIT表。
4.2.2 基于疑似隔离表的隔离策略
兴趣包进入网络后进行SIT 表匹配,因合法性兴趣包也可能有相同的前缀和接口从而匹配上SIT 表,因此若匹配成功则视为疑似恶意兴趣包。此时若直接丢弃数据包,则可能导致合法兴趣包也被丢弃,因此此时仅进行初步处理,将疑似兴趣包与PIT 进行隔离,减缓恶意攻击对PIT 的占用。其隔离策略如下:
(1)若成功匹配SIT 表,则将该兴趣包原应存入PIT 中的信息存入兴趣包自身的隔离路径中,然后通过FIB 将兴趣包进行转发。
(2)若该兴趣包在中途路由器CS 表或者生产者处成功获得请求内容,则将该兴趣包由疑似转为阴性。将请求内容封装到数据包中,并将兴趣包的隔离路径逆序存入数据包中。每次取隔离路径第一条信息按其接口号根据FIB 中路由信息进行转发,完成后擦除隔离路径表中相应条目信息。
(3)若到达生产者仍无法找到请求内容,则在生产者处进行登记,丢弃兴趣包。
免疫反馈与隔离策略在路由器添加了隔离表,在兴趣包、数据包中添加了隔离路径,一定程度增加了路由器、兴趣包、数据包的存储开销;并且恶意兴趣包不受抑制在网内传输,一定程度地消耗了网络带宽,降低了网络性能。隔离路径与PIT 表进行隔离,也会削弱PIT 的聚合作用。综上,若长期采用非特异性免疫,虽然避免了恶意兴趣包对PIT 的恶意占用,但一定程度降低了网络性能。针对上述问题,非特异性免疫仅在免疫时间内进行隔离策略,该时间很短,对网络性能影响较小。并根据隔离策略的反馈进一步设计特异性免疫模块,隔离策略触发特异性免疫,对恶意兴趣包进行阻断。
当经过非特异性免疫抵御后,网络仍无法维持稳态,则触发特异性免疫,对恶意兴趣包进行识别和清除。当非特异性免疫递交至生产者的恶意兴趣包积累超过阈值后,触发特异性免疫。生产者发送回溯包,消费者将回溯包中相应信息存入MIT,形成免疫记忆。
4.3.1 免疫回溯策略
网络中路由器无法判断当前请求是否合法,而当兴趣包到达生产者,则可以判断其请求内容是否存在,从而判定该兴趣包是否是合法兴趣包。生产者周期性地对免疫列表非空的兴趣包进行统计,若相同前缀下的丢弃次数超过阈值,生产者根据免疫列表的隔离路径,判断恶意兴趣包是否来自同一攻击源,进而触发回溯策略。
算法2免疫回溯策略算法
输入:兴趣包Interest_p。
输出:数据包Data_p,回溯包Traceback_p。
若生产者可以提供隔离兴趣包中请求的内容,则将该兴趣包中隔离路径逆序存入数据包中,封装数据后按照隔离路径和FIB 表进行转发。若生产者无法提供隔离兴趣包所请求的内容,则分析该兴趣包后将其丢弃,并按照<隔离路径、内容名称前缀、丢弃次数>进行统计,当同一攻击源发送的兴趣包丢弃次数超过阈值χ则触发免疫回溯策略。将隔离路径逆序封装后生成回溯包,回溯包到达消费者后,在路由器IMT 表中生成记录。
4.3.2 免疫阻断策略
网络中路由器节点收到回溯包后,判断隔离路径是否为空,若不为空则继续根据隔离路径和FIB 进行回溯,同时擦除首条隔离路径。
当消费者收到回溯包,可分析回溯包中内容得到攻击入口,并将回溯包携带的相应内容存入IMT表中。此后,路由器将对该接口传入的兴趣包进行IMT 匹配,若匹配成功则在记忆时间内将来自攻击者的恶意兴趣包抛弃,从而彻底阻断恶意兴趣包入网。
本文提出的算法实现环境均为Intel®Core™i7-1065G7 CPU@1.50 GHz,16.00 GB。算法利用Java语言在Eclipse 工具下实现,运行于Windows 10(64位)操作系统。
实验采用对比机制中的线性拓扑[28]和攻击后性能下降严重的树型拓扑进行仿真实现以评价算法性能。其拓扑结构如图6 和图7 所示,深灰色代表攻击节点,浅灰色为合法用户。
Fig.6 Linear topology图6 线性拓扑
Fig.7 Tree topology图7 树型拓扑
针对人体免疫防御机理的ICN 安全路由机制(ICN security routing of human immune defense mechanism,HIDMSR),选取对IFA 进行缓解的DPE[22]和最小代价转发的NDN 作为对比机制,来验证该机制对IFA 的抵制作用。DPE 通过在兴趣包中存入入口地址,使兴趣包按照其存入逆序回传。该机制不占用PIT 表,以减轻IFA 攻击时对PIT 的占用。NDN 机制通过BestRoute 实现最小代价接口转发,执行基本节点处理、转发操作。
本文选取攻击抵御能力、兴趣包满足率及PIT 占有率作为评价指标。具体计算方式如下:
(1)攻击抵御能力
该指标的含义为被丢弃未进入网络的恶意兴趣包与攻击者发出的恶意兴趣包的比。攻击抵御能力越强,进入网络的恶意数据包越少,在恶意兴趣包上浪费的资源就越少,对网络性能影响越小。其计算方式如式(2)所示。
式中,Attack_resistance表示攻击抵御能力;InterestPackettotal表示攻击者发出的兴趣包总数,InterestPacketdropped表示被丢弃未进入网络的兴趣包数目。
(2)兴趣包满足率
该指标代表网络中传输的可被满足的兴趣包与所有兴趣包之比。在未受攻击时,该指标为1;当受到攻击时,一方面,恶意兴趣包占用PIT 资源,合法兴趣包被大量丢弃;另一方面,生产者收到恶意兴趣包不会返回数据包,因此成功返回的兴趣包小于网络中传输的总数据包,该指标小于1。该指标的大小反映了网络被攻击情况以及网络资源占用率情况。其计算方式如式(3)所示。
式中,SatisfactionRate表示网络中兴趣包满足率;Int_Pacsatisfaction表示被满足成功传回数据包的兴趣包数目;Int_Pactotal表示网络中传输的兴趣包总数。
(3)PIT 占用率
该指标的含义为PIT 当前缓存条目数量与PIT缓存容量之比。未受攻击时,PIT 条目在收到数据包后或到达缓存时间后删除,其占有率低。而IFA 主要攻击PIT,使PIT 存入大量无用条目,若PIT 被恶意占用,则合法兴趣包被大量丢弃,严重影响网络性能。其计算方式如式(4)所示。
式中,PIT_OptRate表示PIT 占用率;CacheNumcurrent表示节点PIT 缓存条目数量;Cache_capacity表示节点PIT 缓存容量。
(1)攻击抵御能力
图8 给出两种拓扑在三种不同机制下对IFA 的抵御能力。由图可知,在同样攻击强度下,本文提出的HIDMSR 抵御能力大于NDN、DPE,HIDMSR 相对于DPE 抵御能力提升94.8%,相对于NDN 机制抵御能力提升22.3%。
DPE 机制通过缓解机制隔离恶意兴趣包与PIT,降低PIT 的占用率,但并未阻隔恶意兴趣包进入网络,其对网络资源的占用仍然很大,因此其抵御能力差。NDN 无缓解机制,但其攻击抵御能力较高是因为PIT 被恶意兴趣包占满,导致大量恶意兴趣包被丢弃。虽其对恶意兴趣包抵御能力较强,但是对网络性能影响极大。而HIDMSR 可通过回溯包形成MIT,彻底抵制恶意兴趣包传入网络,减少了网络中传输的恶意兴趣包数量,减少对路由资源的恶意占用,保证网络性能。
Fig.8 Attack resistance under two topologies图8 两种拓扑下的攻击抵御能力
(2)兴趣包满足率
图9 给出在两种拓扑下,NDN 受攻击,DPE、HIDMSR 和NDN 不受攻击时的兴趣包满足率。从图中可看出,在两种拓扑下,兴趣包满足率由高到低均为:NDN 不受攻击,HIDMSR、DPE、NDN 受攻击。在线性拓扑下,HIDMSR 兴趣包满足率相对于NDN 受攻击情况下提升91.3%,相对于DPE 机制兴趣包满足率提升65.9%。在树状拓扑下,HIDMSR 兴趣包满足率相对于NDN 受攻击情况下提升70.9%,相对于DPE 机制兴趣包满足率提升35.5%。
Fig.9 Interest request satisfaction rates under two topologies图9 两种拓扑下的兴趣请求满足率
NDN 机制在受到攻击后,PIT 迅速饱和,合法兴趣包被丢弃,请求内容无法被满足;DPE 机制触发缓解策略后,兴趣包不通过PIT 转发,用户收到数据包增多,但网内传递的恶意兴趣包的数量并未减少,占用网络资源,对网络性能产生一定影响;HIDMSR 机制触发特异性免疫,从源头阻断攻击,从根本上减少进入网内的恶意数据包数量。
(3)PIT 占用率
图10 与图11 给出线性拓扑下R0 和R2 路由在三种机制下不同时间段的PIT 占有率。在0~30 s 无攻击发生,两路由器可正常更新PIT,占有率均小于5%。而R2 更靠近生产者,其从生产者收到数据包速度更快,因此删除相应PIT 条目的速度更快,其占有率更低。30 s 时开始发起攻击,NDN 机制无内置安全机制,PIT 迅速被占满,PIT 条目只有在超时后才会被删除,删除后占有率有所波动,但很快又被占满。此时,合法兴趣包被抛弃,严重影响网络性能。HIDMSR 机制与DPE 机制在攻击时PIT 被迅速占满,缓解机制起作用后其占有率开始下降,并保持在5%以下。但HIDMSR 在整个过程中占有率高于DPE,因为HIDMSR 机制通过前缀、接口号进行隔离,保证了与恶意兴趣包有相同前缀的合法兴趣包可通过PIT 传递,而DPE 仅通过前缀标记恶意兴趣包,导致与恶意兴趣包前缀相同的合法兴趣包不通过PIT 传播,弱化了PIT 的聚合作用。虽然HIDMSR 的PIT 占有率高于DPE 机制,但可保证PIT 的聚合作用;而相对于NDN 机制,HIDMSR 机制可有效减少恶意兴趣包对PIT 的占用。
Fig.10 PIT occupancy for R0 in linear topology图10 线性拓扑下R0 的PIT 占用率
Fig.11 PIT occupancy for R2 in linear topology图11 线性拓扑下>R2 的PIT 占用率
图12 与图13 给出树型拓扑下R3 和R5 路由器在三种机制下不同时间段的PIT 占有率。受到攻击后,虽然R3 不在攻击链路上,但由于网络中所有兴趣包都通过R0 转发,而R5 的攻击导致R0 中的PIT 也被迅速占满,因此R3 的请求迟迟得不到满足,故其占用率高于攻击前。但仍有部分兴趣包可被满足,因此其占用率低于攻击链路的路由器。HIDMSR 机制下,R3 条目超时次数过多,则触发特异性免疫,在该机制下抵御了恶意兴趣包的传递,使PIT 占有率下降至正常水平。而DPE 机制触发缓解机制后,会将合法兴趣包转发与PIT 分离,降低PIT 的聚合作用,一定程度增加网络流量。R5 路由器的变化过程与线性拓扑趋于一致。可知,在树型拓扑下,该机制也能对IFA起到很好的抵制作用。
Fig.12 PIT occupancy for binary tree topology R3图12 二叉树拓扑R3 的PIT 占用率
Fig.13 PIT occupancy for binary tree topology R5图13 二叉树拓扑R5 的PIT 占用率
本文基于人体免疫防御机理设置了ICN 的安全路由机制,通过非特异性免疫的反馈与隔离策略以及特异性免疫的回溯和阻断策略,成功降低了IFA 对ICN 网络性能的影响。本文是在模拟环境下对线性和小型树型拓扑进行算法验证,下一步需要考虑在复杂的拓扑、真实的网络环境下验证算法的有效性。该算法不具有自适应性,下一步可考虑深入研究仿生理论,实现动态自适应算法。