论文部分内容阅读
随着计算机网络规模不断扩大、复杂度不断提升,使得网络技术的创新与发展受到严重阻碍,也使得网络管理越来越困难。作为一种新的网络范式,SDN的核心思想是将控制平面从传统网络设备中分离出来,使数据平面与控制平面解耦,并通过逻辑上集中的控制方式对网络进行管理,这在很大程度上简化了网络管理。此外,SDN的灵活性、开放可编程性等特性,也给网络技术创新创造了良好的契机。然而,SDN在带来诸多相较于传统网络的优势的同时,仍然面临着传统网络中就一直存在的可靠性问题,甚至引入了新的可靠性问题。由于网络中的故障不可避免,因此,为了保证网络可靠性,需要及时、准确地对网络故障进行诊断。许多传统网络中的故障诊断解决方案都是基于分布式协议提出的,并没有合理利用到SDN的新特性,不能够达到SDN简化网络管理的设计初衷,因而无法很好的适用于SDN网络故障诊断。基于此,本文主要做了如下三项工作:第一,利用SDN集中控制的优势,结合深度学习方法和机器学习方法,提出了基于CNN-SVM的SDN链路故障诊断算法。将SDN网络中的链路故障定位问题抽象为一个多分类问题,利用学习方法对其进行处理。同时,考虑到标准CNN中Softmax在多分类问题中性能不如SVM,提出了改进的CNN-SVM模型,进一步基于该模型提出了适用于SDN链路故障定位的故障诊断算法。第二,考虑到SDN与网络虚拟化之间相辅相成的关系,对基于SDN的网络虚拟化环境故障诊断进行了研究,提出了基于SDN的网络虚拟化环境下的故障诊断算法。针对网络虚拟化环境下虚拟网络与物理网络之间的信息透明性、映射关系复杂性,采用二分贝叶斯网络模型对虚拟网络服务症状与网络组件故障之间的关系进行建模,并在该模型基础上提出了由故障过滤子算法和基于贡献度的故障推理算法共同构成的基于贡献度的虚拟网络故障诊断算法。第三,针对上述算法设计了一系列实验并对实验结果进行了分析。对于基于CNN-SVM的SDN网络链路故障定位算法,探讨了模型超参数对模型的影响,并从故障诊断结果验证了模型的有效性和优势;对于基于贡献度的虚拟网络故障诊断算法,从确定型模型和非确定型模型两个方面,讨论了各种网络规模下算法超参数的影响以及其他算法的比较结果。