CN113660140B - 基于数据控制平面混合感知的服务功能链故障检测方法 - Google Patents

基于数据控制平面混合感知的服务功能链故障检测方法 Download PDF

Info

Publication number
CN113660140B
CN113660140B CN202110941121.6A CN202110941121A CN113660140B CN 113660140 B CN113660140 B CN 113660140B CN 202110941121 A CN202110941121 A CN 202110941121A CN 113660140 B CN113660140 B CN 113660140B
Authority
CN
China
Prior art keywords
data
sfc
plane
network
information
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.)
Active
Application number
CN202110941121.6A
Other languages
English (en)
Other versions
CN113660140A (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.)
Beijing Jiaotong University
Original Assignee
Beijing Jiaotong University
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 Beijing Jiaotong University filed Critical Beijing Jiaotong University
Priority to CN202110941121.6A priority Critical patent/CN113660140B/zh
Publication of CN113660140A publication Critical patent/CN113660140A/zh
Application granted granted Critical
Publication of CN113660140B publication Critical patent/CN113660140B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0823Errors, e.g. transmission errors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/35Clustering; Classification
    • G06F16/353Clustering; Classification into predefined classes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/044Recurrent networks, e.g. Hopfield networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/048Activation functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • 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/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Abstract

本发明提供了一种基于数据控制平面混合感知的服务功能链故障检测方法。该方法包括构造包括数据平面、控制平面和知识平面的服务功能链故障检测架构,在数据平面中设置数据平面数据收集代理,在控制平面中设置控制平面SFC组件信息感知代理;通过数据平面数据收集代理收集细粒度的SFC网络状态信息,控制平面中的控制平面SFC组件信息感知代理收集SFC组件包括虚拟网络功能、节点Nodes、虚拟链路vLink、物理链路的状态信息。从知识平面的信息数据库中读出数据,对数据进行预处理,利用深度学习算法对预处理后的数据进行SFC的故障检测与分类。本发明可以发现底层物理网络、虚拟网络、虚拟网络功能和节点状态信息之间的传播关系,实现快速、高精度的故障检测与分类。

Description

基于数据控制平面混合感知的服务功能链故障检测方法
技术领域
本发明涉及网络故障检测技术领域,尤其涉及一种基于数据控制平面混合感知的服务功能链故障检测方法。
背景技术
传统网络的层次结构是互联网取得巨大成功的关键。但是,随着网络规模的不断扩大,封闭的网络设备内置了过多的复杂协议,增加了运营商定制优化网络的难度。面对丰富的应用场景和多样化的业务需求,软件定义网络(Software Defined Networking,SDN)和网络功能虚拟化(Network Function Virtualization,NFV)已成为资源灵活分配和动态服务供应的关键技术。其中,SDN实现了控制平面和数据平面的解耦,增加了网络的灵活性;NFV实现软件与底层硬件解耦,降低了电信运营商的成本。SDN与NFV的融合,提高了服务功能链(Service Function Chain,SFC)编排的灵活性和动态性,有效降低了运营管理和维护的成本。
然而,SFC在提供服务过程中,硬件故障、软件缺陷和业务流量突增的问题都有可能导致SFC的故障。传统的SFC故障检测方法具有单一性、开销大和精度低的缺陷。
现有技术中的一种SFC的管理框架SFC-OAM(SFC-Operation Administration andMaintenance)提供了对服务功能、服务功能路径(Service Function Path,SFP)以及分类器(Classifier,CF)的状态检测。OAM工具可对任何一个SFC可感知的网络设备进行端到端的路径或者终止于SFP特定网络功能的部分路径探测,通过在OAM的响应包中返回的信息来认证被连接起来的服务功能是否具有连通性。此外,通过OAM,还可以实现对网络进行性能度量、对SFC周期性地进行故障探测等功能。
上述现有技术中的SFC的管理框架SFC-OAM的缺点为:该方案虽然可以实现对网络功能、路由功能以及性能监测的功能,但基于SFC-OAM管理框架的技术无法对网络性能进行更加细粒度的故障排查。SFC path tracer工具占用大量的带宽资源,带宽利用率较小,网络拥塞严重时,会加剧网络的负载情况,不能同时检测一条SFC上的多个故障。
现有技术中的一种SFC的故障检测方案包括:通过带内网络遥测(In-bandNetwork Telemetry,INT)技术,利用主动探测的方式,发送INT探测数据包进行网络范围的遥测,以帮助TOR交换机下的服务器获得源和目的地之间的所有可行路径。该方法可以检测到一些“灰色”故障如静默丢包、路由黑洞等。
上述现有技术中的一种SFC的故障检测方案的缺点为:该方法虽然能够通过主动探测方式遥测到网络状态信息,但是主动“注入探测数据包”的方式会对当前网络中的流量产生影响,导致带宽利用率低且抗干扰性差。
发明内容
本发明的实施例提供了一种基于数据控制平面混合感知的服务功能链故障检测方法,以克服现有技术的问题。
为了实现上述目的,本发明采取了如下技术方案。
一种基于数据控制平面混合感知的服务功能链故障检测方法,包括:构造包括数据平面、控制平面和知识平面的服务功能链故障检测架构,在所述数据平面中设置数据平面数据收集代理,在所述控制平面中设置控制平面SFC组件信息感知代理;
所述数据平面用于设计数据包的INT格式,实现网络状态信息随SFC数据包存储转发;通过数据平面数据收集代理收集细粒度的SFC网络状态信息,将收集的信息传输给知识平面的信息数据库中存储;
所述控制平面中的控制平面SFC组件信息感知代理收集SFC组件信息和网络状态信息,将收集的信息传输给知识平面的信息数据库中存储;
从知识平面的信息数据库中读出数据,对数据进行预处理,利用深度学习算法对预处理后的数据进行SFC的故障检测与分类。
优选地,所述数据平面采用可编程交换机,采用INT被动探测方法,设计数据包的INT格式,实现网络状态信息随SFC数据包存储转发,对数据平面协作控制平面混合感知的网络进行建模;从ONOS控制器获取虚拟网络服务部署信息,通过部署下发机制对虚拟网络功能进行服务编排,组合为服务功能链,数据平面在SFC终点将细粒度的SFC状态信息上交给数据平面网络信息收集代理。
优选地,所述SFC状态包括SFC组件状态和网络状态,分别用SC和SN表示,SFC组件包括SFC物理资源和虚拟资源,它们状态集合分别用SP和SV来表示,物理资源状态包括SFC的节点和链路,经量化处理抽象为集合
Figure GDA0003878258320000031
其中
Figure GDA0003878258320000032
分别表示物理节点、物理链路,物理节点资源用集合
Figure GDA0003878258320000033
表示,其中,
Figure GDA0003878258320000034
分别表示物理节点的计算资源和存储资源;虚拟资源用
Figure GDA0003878258320000035
表示,其中
Figure GDA0003878258320000036
分别表示VNF资源和虚拟链路状态;VNF资源用
Figure GDA0003878258320000037
表示,其中
Figure GDA0003878258320000038
分别表示VNF的计算资源和存储资源;网络状态抽象为SN=<IDSW,Q,IDPort,TTp,DLink,DP>,其中IDSW,Q,IDPort,TTp,DLink,DP分别表示交换机ID、队列深度、端口ID、吞吐量、链路时延和处理时延。
优选地,所述控制平面通过ONOS控制器收集数据平面网络拓扑信息,通过Kubernetes API Server收集节点信息,该节点信息包括内存和计算资源,所述知识平面构建SFC动态信息库,实时存储全面的SFC网络状态及组件信息。
优选地,所述数据平面设计基于INT的SFC数据包格式,采用NSH封装SFC的数据包,将INT头部封装在UDP/TCP的负载中,使用IPv4 DSCP字段的前6位标记SFC数据包,后2位标记INT的数据包;
在数据平面利用INT技术,通过P4对交换机进行编程,使交换机在数据包转发到交换机时,将网络状态信息封装在数据包的INT报文段内,且随数据包转发至下一交换机节点,实现数据包转发过程中对数据平面SFC网络状态信息的细粒度遥测。
优选地,所述数据平面采用P4+MACVlan的网络方案,数据平面的交换机接收编排器和控制器的策略,支持容器部署及P4转发等功能,实现交换机与Pod的连接;以交换机ID号为外键,时间戳为标志,在知识平面实现SFC节点与SFC两节点之间的网络状态数据的融合,实现每条SFC状态数据的完整性与直观性。
优选地,设计SFC的故障模型包括拥塞故障与路由黑洞两个多因故障模型,设计SFC的故障类型包括节点状态、节点资源利用率、虚拟网络功能状态、虚拟网络资源利用率、虚拟链路、拥塞和路由黑洞,所述拥塞故障类型考虑网络自身状态故障以及节点资源利用过高引起的拥塞故障两种情况,所述路由黑洞故障类型结合全局信息检测交换机完全丢包引起的故障。
优选地,所述拥塞故障是指数据包的传输时延大于设定的时延阈值时,当探针数据包在SFC中传输时,进入和离开交换机的数据包中的时间戳之差大于阈值时,称之为SFC的拥塞故障即:
Figure GDA0003878258320000041
N为探针的总数量;
所述路由黑洞是指所有传输的数据包全部丢失,采用协同故障检测方法来检测。
优选地,设计基于深度学习以及数据控制平面混合感知的服务功能链故障检测与分类的算法模型,将CNN、LSTM和BiLSTM深度学习模型应用于文本分类,根据实际数据集设计算法模型中卷积层的参数,根据状态关联性提取到有效特征,发现底层物理网络、虚拟网络、虚拟网络功能和节点状态信息之间的传播关系,实现故障检测与分类。
优选地,在知识平面对采集到的多维数据进行预处理,提取与潜在故障有关的信息,该信息包括:节点状态、CPU资源利用率、节点链路、网络链路带宽、队列深度和排队时延;
将预处理好的数据集按比率分为训练集、验证集和测试集,建立神经网络模型,将训练集通过shuffle()函数打乱数据顺序,将属性内容与标签分离并通过word2vec转化为词向量的表示形式,其中每一属性的不同特征值都有唯一的表达方式;
将数据集送入模型训练前,将文本形式的数据集首先转化为word2vec词向量,每个单词对应唯一的一个高维向量,对文本进行特征提取,其中卷积核的维度C根据实际情况调整,卷积核的宽度=词向量长度,卷积核的长度=一次卷积的行数,通过公式(1)、(2)对输入文本进行特征提取,得到文本特征图F(3):
Figure GDA0003878258320000051
Fi=f(CXi:i+n-1+b) (2)
F=[F1,F2,F3,…Fm] (3)
其中,C为卷积核的维度,xi代表第i单词的词向量,X1:n表示数据集中第1个到第n个单词进行卷积后的矩阵,b代表偏置,f为非线性激活函数,Fi表示第i个单词到第i+n-1个单词的特征图,F表示整个数据集的特征图。
由上述本发明的实施例提供的技术方案可以看出,本发明实施例提出的数据控制平面混合感知的SFC故障检测机制,可以同时获取SFC组件、服务功能转发器以及SFC网络状态等全局信息,解决了状态数据覆盖不全面的问题;设计基于SFC的INT采用被动探测的方式随数据包收集网络状态信息,减少了“主动注入探测包”方式对网络产生的开销;本发明提出基于深度学习的故障检测与分类算法,可以发现底层物理网络、虚拟网络、虚拟网络功能和节点状态信息之间的传播关系,解决发现故障相关性问题,实现快速、高精度的故障检测与分类。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种基于数据控制平面混合感知的服务功能链故障检测架构的结构示意图;
图2为本发明实施例提供的一种原型系统网络拓扑示意图;
图3为本发明实施例提供的一种发生路由黑洞时探针路径示意图;
图4为本发明实施例提供的一种数据平面的网络方案设计示意图;
图5为本发明实施例提供的一种基于INT的SFC数据包格式示意图;
图6为本发明实施例提供的一种基于INT的SFC处理数据包的工作流程示意图;
图7为本发明实施例提供的一种对文本进行特征提取的示意图。
具体实施方式
下面详细描述本发明的实施方式,所述实施方式的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当本发明称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语)具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样定义,不会用理想化或过于正式的含义来解释。
为便于对本发明实施例的理解,下面将结合附图以几个具体实施例为例做进一步的解释说明,且各个实施例并不构成对本发明实施例的限定。
本发明提出了一种数据控制平面混合感知进行SFC故障检测机制,建立基于深度学习的服务功能链故障检测与分类框架。从全局视角获取SFC的状态信息,实现对SFC各种故障的快速、准确的检测和分类,并为SFC的迁移或故障恢复提供理论与实践基础。
本发明提出在SDN/NFV场景下,数据控制平面混合感知的SFC故障检测机制。主要包括容器网络和底层物理网络的设计、INT和SFC的协议设计和协同故障检测方法三个方面的工作。设计网络及SFC组件状态感知代理模块收集网络和SFC组件的状态信息、并与信息库模块进行交互,将收集的网络和SFC组件状态信息存入信息库中;数据处理模块与信息库模块协作,实现对多维数据预处理并通过深度学习模型实现故障检测及分类功能。
本发明实施例提出的一种数据控制平面混合感知进行SFC故障检测架构的结构示意图如图1所示,该架构自下而上共分为三个平面,两个代理。其中三个平面包括数据平面、控制平面和知识平面;两个代理包括数据平面数据收集代理和控制平面SFC组件信息感知代理。利用数据平面、控制平面和知识平面多维协作思想,实现该网络下基于深度学习的服务功能链协同故障检测与分类,提高SFC故障检测与分类的效率与精度,进一步减少探针开销,减轻网络负载,为SFC的迁移或故障恢复提供理论与实践基础。
数据平面主要实现网络组件容器部署及数据包转发等功能;控制平面介于数据平面和知识平面之间,采用Kubernetes编排器和ONOS控制器,一方面下发网络部署信息,另一方面收集SFC组件信息;知识平面包括信息库模块、数据处理模块和深度学习故障检测模块。
上述数据控制平面混合感知进行SFC故障检测架构的工作过程包括:
①数据平面采用可编程交换机,采用INT被动探测方法,设计数据包的INT格式,实现网络状态信息随SFC数据包存储转发;
②数据平面从ONOS控制器获取虚拟网络服务部署信息,通过部署下发机制对虚拟网络功能进行服务编排,组合为服务功能链,使其实现相应的服务功能并能够进行正常的通信,保障各服务功能的互连;
③数据平面在SFC终点将细粒度的SFC状态信息(包括网络带宽、队列深度和时延等信息)上交给数据平面网络信息收集代理;控制平面设计数据收集代理调用KubernetesAPI-Server获取SFC组件状态信息(包括Node和Pod的状态及其内存资源);
④数据和控制平面SFC组件信息感知代理分别实时动态地将获取的组件状态信息输入到知识平面的信息数据库中;
⑤数据预处理模块从信息数据库读入数据并对高维数据进行过滤、降维以及打标签等预处理工作;
⑥深度学习故障检测模块利用深度学习算法(包括CNN、LSTM和BiLSTM)对预处理后的数据进行SFC的故障检测与分类。
数据平面、控制平面和知识平面三个维度关系紧密、互为补充、相互协作、智能适配;同时三层内部需要进行层内协作,数据平面的网络信息收集代理、控制平面的组件信息收集代理协同合作,将收集到的信息送入信息库,信息库与知识平面的深度学习模块联合协作,完成对SFC的故障检测与分类,从而实现在网络功能虚拟化的场景下对服务质量的监控。
本发明通过数据和控制平面混合感知SFC状态,将SFC组件状态和网络状态结合以实现更细粒度的故障检测与分类。图2为本发明实施例提供的一种原型系统网络拓扑示意图。以图2展示的原型系统网络拓扑为例,对数据平面协作控制平面混合感知的网络进行建模。SFC状态包括SFC组件状态和网络状态,分别用SC和SN表示。首先,SFC组件包括SFC物理资源和虚拟资源,它们状态集合分别用SP和SV来表示,物理资源状态包括SFC的节点和链路,经量化处理抽象为集合
Figure GDA0003878258320000091
其中
Figure GDA0003878258320000092
分别表示物理节点、物理链路,物理节点资源用集合
Figure GDA0003878258320000093
表示,其中,
Figure GDA0003878258320000094
分别表示物理节点的计算资源和存储资源;虚拟资源用
Figure GDA0003878258320000095
表示,其中
Figure GDA0003878258320000096
分别表示VNF资源和虚拟链路状态;VNF资源用
Figure GDA0003878258320000097
表示,其中
Figure GDA0003878258320000098
分别表示VNF的计算资源和存储资源;网络状态抽象为SN=<IDSW,Q,IDPort,TTp,DLink,DP>,其中IDSW,Q,IDPort,TTp,DLink,DP分别表示交换机ID、队列深度、端口ID、吞吐量、链路时延和处理时延。
本发明在控制平面部署Kubernetes编排器和ONOS控制器。首先,通过ONOS控制器收集网络拓扑信息;其次,设计控制平面的数据收集代理调用Kubernetes API-Server来获取SFC组件如节点状态、节点计算资源、节点存储资源、VNF资源和虚拟链路状态等物理资源与虚拟资源信息;同时,在数据平面利用INT技术,通过P4对交换机进行编程,使交换机在数据包转发到交换机时,将网络状态信息如队列深度、吞吐量、处理时延等封装在数据包的INT报文段内,且随数据包转发至下一交换机节点,最后在SFC末端交换机处统一将包含了整个SFC网络状态信息的INT报文段上交给网络信息获取代理。本发明设计的数据平面数据收集代理与控制平面SFC组件信息感知代理同时收集SFC的相关信息,并实时地写入知识平面的信息库中。此外,数据控制平面混合感知机制不仅能减小实时获取网络信息的时延,而且减小了对网络中正常数据包传输产生的影响,提高了信息获取的实时性以及效率。
本发明实施例将SFC可能会发生的故障根据产生原因分为两类,分别为单因故障与多因故障。单因故障指可以通过代理收集到的数据如节点或pod的运行状态信息、端口号、虚拟链路信息等直接判断SFC故障;而多因故障则是考虑到故障的传播相关性,无法根据收集到的信息直接判断故障类型的如拥塞和路由黑洞等复杂情况。针对多因故障,本发明采用以下方法来建立模型。
1)拥塞故障
当数据包的传输时延大于设定的时延阈值时,定义该情况为拥塞故障。即tD>tThreshold。拥塞故障的原因包括链路、CPU、Memory等相关指标的利用率过高。当探针数据包在SFC中传输时,进入和离开交换机的数据包中的时间戳之差大于阈值时,称之为SFC的拥塞故障。即:
Figure GDA0003878258320000101
为探针的总数量。
2)路由黑洞
路由黑洞产生的现象是所有传输的数据包全部丢失,因此,只从控制平面无法检测到故障存在。本发明采用协同故障检测方法,利用数据平面采集数据可以弥补控制平面的检测不足的缺陷。图3为本发明实施例提供的一种发生路由黑洞时探针路径示意图。假设用
Figure GDA0003878258320000111
表示从控制平面收集的网络及VNF状态,j代表收集状态的类型,包括物理链路\虚拟链路、VNF、交换机表示为sw等。w代表状态包括正常和故障,分别用r和d表示。假设某条SFC上的某个交换机出现路由黑洞,通过控制平面获取的SFC状态表现正常,而通过INT技术得到的状态集合里上游状态表现正常,下游状态则没有数据则用None表示。发生路由黑洞时的数据用
Figure GDA0003878258320000112
表示如表1所示,本发明可以得到在第m个交换机出发生了路由黑洞。
表1判断发生路由黑洞时的某条SFC数据统计
Figure GDA0003878258320000113
综上所述,基于深度学习的服务功能链协同故障检测框架通过控制平面与数据平面的相应代理,分别获取相同时段内SFC的组件状态信息和网络状态信息,并将数据融合综合判断故障是否发生,提高了对服务功能链更细粒度的状态检测,实现更多故障类型的检测,为SFC的迁移、故障恢复等打下理论与实践基础。
本发明实施例的数据平面采用P4+MACVlan的网络方案,其中Kuberntes编排器进行服务功能链的编排,ONOS控制器下发路由控制策略,数据平面的交换机接收编排器和控制器的策略,支持容器部署及P4转发等功能。图4为本发明实施例提供的一种数据平面的网络方案设计示意图。MACVlan为Kubernetes的一种网络插件,可以为主机的一个网卡虚拟多个网络接口,相比Bridge而言,它是一种更加高效的容器网络方案。MACVlan网络方案中的主接口使用一对虚拟接口(VNIC1and VNIC2)中的VNIC2,本发明启动P4交换机时将VNIC1和服务器的物理网卡分别作为它的转发接口,可以实现P4交换机与Pod的连接。将P4交换机连接控制器的接口称为控制接口,与数据平面进行数据转发的接口称为数据接口。该检测系统采用不同的物理网卡分别作为控制接口和数据接口。图4中NIC1代表控制接口,NIC2代表数据接口。
本发明基于SDN/NFV网络背景下部署的服务功能链,采用网络服务头部(NetworkService Header,NSH)来封装SFC的数据包。SFC包括CFs、SFFs、VNFs等组件。为了区分正常流量和SFC流量,本发明使用IPv4头部中的DSCP字段的前6位来标记SFC数据包。INT头部封装在UDP/TCP的Payload中,使用DSCP字段的后2位来标记INT的数据包。本发明实施例提供的一种基于INT的SFC数据包格式如图5所示。
图6为本发明实施例提供的一种基于INT的SFC处理数据包的工作流程示意图。分类器实现了对NSH和INT头部的封装,SFFs对INT数据进行入栈操作并对NSH进行解封装。最后,INT-sink(SFF3)基于源和目标IP对NSH、INT头部和INT数据进行解封装,还原初始数据包。
本发明提出基于深度学习的数据与控制平面混合感知协同故障检测与分类算法,设计四个模块分别包括控制/数据平面数据收集代理模块、信息数据库构建模块、数据处理模块和深度学习检测模块,协同控制平面和数据平面进行故障的检测,减小了故障传播性对检测精确度的影响。控制平面代理主要通过Kubernetes API Server采集VNF状态、节点状态等实时数据,包括CPU、内存、运行状态等信息。数据平面代理采用INT技术采集细粒度数据,包括SFF的队列深度、端口ID、SFF ID、时延、吞吐量等。一方面,数据平面弥补了控制平面监控信息不足的缺陷,能够发现“不可见”的故障,如资源利用率过高、持续性黑洞等。另一方面,控制平面可以为数据平面提供更丰富的网络状态信息,实现检测多个VNF和节点发生故障的功能。
本发明在知识平面设计数据处理模块对采集到的多维数据进行预处理,提取节点状态、容器状态和网络链路状态等与潜在故障有关的信息(其中包括:节点状态、CPU资源利用率、节点链路、网络链路带宽、队列深度、排队时延)。在保证多维信息在时间上一致的前提下进行数据融合。本发明提出了三种DL算法,分别用LSTM、BiLSTM和CNN有监督的深度学习模型对故障进行检测与分类。
首先,将预处理好的数据集按比率为6:2:2分为训练集、验证集和测试集;然后建立神经网络模型,其训练过程如算法1所示:将训练集通过shuffle()函数打乱数据顺序,以防陷入局部最优,从而使模型更容易达到收敛;然后将属性内容与标签分离并通过word2vec转化为词向量的表示形式,其中每一属性的不同特征值都有唯一的表达方式。对于CNN模型,该模型由卷积层+非线性激活函数(ReLU或tanh)+池化层)×n+全连接层构成。在文本转化为多维词向量形式后,输入到卷积层提取特征且随着卷积参数越多,提取到的特征越高级,同时加入激活函数ReLU以提高分类的精度;从激活函数输出到池化层,降低输出维度的同时保证重要特征,后利用正则化技术DROPOUT加速模型的收敛;最后,利用Adam优化器进行优化,通过全连接层输出得到对故障分类情况。最终得到基于DL算法的SFC故障检测的训练模型并将每一轮的训练参数对应的模型单独保存。DL算法的训练过程伪代码如算法1所示。
Figure GDA0003878258320000131
Figure GDA0003878258320000141
本发明在将数据集送入模型训练前,将文本形式的数据集首先转化为word2vec词向量,每个单词对应唯一的一个高维向量,然后构成训练模型的输入形式,即矩阵。其中,矩阵的每一行对应一个单词。本发明收集的数据集包括每条服务功能链的34维属性,从其中选取n维有用属性先经过预处理后,每条数据均填充为n个词;然后进入embedding层,将每个词转化为索引;再转变为词向量,设规定每个词向量的维度为w,则训练模型的输入即为n*w的矩阵。
本发明实施例提供的一种对文本进行特征提取的示意图如图7所示。其中卷积核的维度C可根据实际情况调整,其宽度=词向量长度,长度=一次卷积的行数。通过公式(1)、(2)可以对输入文本进行特征提取,得到特征图F(3):
Figure GDA0003878258320000151
Fi=f(CXi:i+n-1+b) (2)
F=[F1,F2,F3,…Fm] (3)
其中,C为卷积核的维度,xi代表第i单词的词向量,X1:n表示数据集中第1个到第n个单词进行卷积后的矩阵,b代表偏置,f为非线性激活函数,Fi表示第i个单词到第i+n-1个单词的特征图,F表示整个数据集的特征图。
文本的特征提取是本发明提出的SFC协同故障检测与分类的算法模型中的重要步骤之一,卷积层的参数设计对状态之间相关性的特征提取有重要影响,也是本发明提出的DL模型要解决的问题之一。实验结果证明,该算法模型可以有效提取故障特征属性,实现高精度的故障检测与分类。
综上所述,本发明实施例提出的数据控制平面混合感知的SFC故障检测机制,可以同时获取SFC组件(虚拟网络功能(Virtual Network Function,VNF))、服务功能转发器(Service Function Forwarder,SFF)、CFs等)以及SFC网络状态等全局信息,解决了状态数据覆盖不全面的问题;其次,设计基于SFC的INT采用被动探测的方式随数据包收集网络状态信息,减少了“主动注入探测包”方式对网络产生的开销;最后,本发明提出基于深度学习的故障检测与分类算法,可以发现底层物理网络、虚拟网络、虚拟网络功能和节点状态信息之间的传播关系,解决发现故障相关性问题,实现快速、高精度的故障检测与分类。
本发明在数据平面设计对SFC网络状态信息遥测方案中,设计INT报头实现网络遥测信息在最后一跳将遥测信息全部上报给网络信息收集代理,其INT报文字段格式为INT-MD(eMbedData);其他方式:INT遥测信息逐跳上报,其INT报文字段格式为Hop-by-hop,在INT进行随路监测网络状态信息时,每经过一个INT sink(收集INT信息),都会将信息直接上报给它并且在上报成功后,不存储信息。
本发明提出的深度学习算法(CNN、LSTM、BiLSTM)用于故障检测与分类,还可以用其他的深度学习模型如(SVM、随机森林、决策树等)解决类似问题。
本领域普通技术人员可以理解:附图只是一个实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。

Claims (7)

1.一种基于数据控制平面混合感知的服务功能链故障检测方法,其特征在于,包括:构造包括数据平面、控制平面和知识平面的服务功能链故障检测架构,在所述数据平面中设置数据平面数据收集代理,在所述控制平面中设置控制平面SFC组件信息感知代理;
所述数据平面用于设计SFC数据包的带内网络遥测INT格式,实现网络状态信息随SFC数据包存储转发;通过数据平面数据收集代理收集细粒度的SFC状态信息,将收集的信息传输给知识平面的信息数据库中存储;
所述控制平面中的控制平面SFC组件信息感知代理收集SFC组件信息,将收集的信息传输给知识平面的信息数据库中存储;
从知识平面的信息数据库中读出数据,对数据进行预处理,利用深度学习算法对预处理后的数据进行SFC的故障检测与分类;
所述控制平面通过ONOS控制器收集数据平面网络拓扑信息,通过Kubernetes API-Server收集节点信息,该节点信息包括内存和计算资源,所述知识平面构建SFC动态信息库,实时存储全面的SFC网络状态及组件信息;
所述数据平面设计基于INT的SFC数据包格式,采用网络服务头部NSH协议封装SFC的数据包,将INT头部封装在UDP/TCP的负载中,使用IPv4 DSCP字段的前6位标记SFC数据包,后2位标记INT数据包;
在数据平面利用INT技术,通过P4编程语言对交换机进行编程,使交换机在数据包转发到交换机时,将网络状态信息封装在SFC数据包的INT报文段内,且随数据包转发至下一交换机,实现数据包转发过程中对数据平面SFC网络状态信息的细粒度遥测;
所述数据平面采用P4+MACVlan的网络方案,数据平面的交换机接收Kubernetes编排器和ONOS控制器的策略,支持容器部署及P4转发功能,实现交换机与Pod的连接;以交换机ID号为外键,时间戳为标志,在知识平面实现SFC节点与SFC节点之间的SFC网络状态信息的融合,实现每条SFC状态信息的完整性与直观性。
2.根据权利要求1所述的方法,其特征在于,所述数据平面采用可编程P4交换机,采用INT被动探测方法,设计SFC数据包的INT格式,实现网络状态信息随SFC数据包存储转发,对数据平面协作控制平面混合感知的网络进行建模;从ONOS控制器获取虚拟网络服务部署信息,通过部署下发机制对虚拟网络功能进行服务编排,组合为服务功能链,数据平面在SFC终点将细粒度的SFC状态信息上交给数据平面网络信息收集代理。
3.根据权利要求1所述的方法,其特征在于,所述SFC状态包括SFC组件状态和网络状态,分别用SC和SN表示,SFC组件包括SFC物理资源和虚拟资源,它们状态集合分别用SP和SV来表示,物理资源状态包括SFC的节点和链路,经量化处理抽象为集合
Figure FDA0003878258290000021
其中
Figure FDA0003878258290000022
分别表示物理节点、物理链路,物理节点资源用集合
Figure FDA0003878258290000023
表示,其中,
Figure FDA0003878258290000024
分别表示物理节点的计算资源和存储资源;虚拟资源用
Figure FDA0003878258290000025
表示,其中
Figure FDA0003878258290000026
分别表示VNF资源和虚拟链路状态;VNF资源用
Figure FDA0003878258290000027
表示,其中
Figure FDA0003878258290000028
分别表示VNF的计算资源和存储资源;网络状态抽象为SN=<IDSW,Q,IDPort,TTp,DLink,DP>,其中IDSW,Q,IDPort,TTp,DLink,DP分别表示交换机ID、队列深度、端口ID、吞吐量、链路时延和处理时延。
4.根据权利要求1所述的方法,其特征在于,设计SFC的故障模型包括拥塞故障与路由黑洞两个多因故障类型,设计SFC的故障类型包括节点状态、节点资源利用率、虚拟网络功能状态、虚拟网络资源利用率、虚拟链路、拥塞和路由黑洞,所述拥塞故障类型考虑网络自身状态故障以及节点资源利用过高引起的拥塞故障两种情况,所述路由黑洞故障类型结合全局信息检测交换机完全丢包引起的故障。
5.根据权利要求4所述的方法,其特征在于,所述拥塞故障是指数据包的传输时延大于设定的时延阈值时,当探针数据包在SFC中传输时,进入和离开交换机的数据包中的时间戳之差大于阈值时,称之为SFC的拥塞故障即:
Figure FDA0003878258290000031
N为探针的总数量,
Figure FDA0003878258290000032
表示进入交换机的数据包中的时间戳,
Figure FDA0003878258290000033
为离开交换机的数据包中的时间戳;
所述路由黑洞是指所有传输的数据包全部丢失,采用协同故障检测方法来检测。
6.根据权利要求4所述的方法,其特征在于,设计基于深度学习以及数据控制平面混合感知的服务功能链故障检测与分类的算法模型,将CNN、LSTM和BiLSTM深度学习模型应用于文本分类,根据实际数据集设计算法模型中卷积层的参数,根据状态关联性提取到有效特征,发现底层物理网络、虚拟网络、虚拟网络功能和节点状态信息之间的传播关系,实现故障检测与分类。
7.根据权利要求6所述的方法,其特征在于,在知识平面对采集到的多维数据进行预处理,提取与潜在故障有关的信息,该信息包括:节点状态、CPU和内存资源利用率、节点链路、网络链路带宽、队列深度和排队时延;
将预处理好的数据集分为训练集、验证集和测试集,其比例分别为8:2:2,建立神经网络模型,将训练集通过shuffle()函数打乱数据顺序,将属性内容与标签分离并通过word2vec转化为词向量的表示形式,其中每一属性的不同特征值都有唯一的表达方式;
将数据集送入模型训练前,将文本形式的数据集首先通过word2vec转化为词向量,每个单词对应唯一的一个高维向量,对文本进行特征提取,其中卷积核的维度C根据实际情况调整,卷积核的宽度=词向量长度,卷积核的长度=一次卷积的行数,通过公式(1)、(2)对输入文本进行特征提取,得到文本特征图F(3):
Figure FDA0003878258290000034
Fi=f(CXi:i+n-1+b) (2)
F=[F1,F2,F3,…Fm] (3)
其中,C为卷积核的维度,xi代表第i单词的词向量,X1:n表示数据集中第1个到第n个单词进行卷积后的矩阵,b代表偏置,f为非线性激活函数,Fi表示第i个单词到第i+n-1个单词的特征图,F表示整个数据集的特征图。
CN202110941121.6A 2021-08-17 2021-08-17 基于数据控制平面混合感知的服务功能链故障检测方法 Active CN113660140B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110941121.6A CN113660140B (zh) 2021-08-17 2021-08-17 基于数据控制平面混合感知的服务功能链故障检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110941121.6A CN113660140B (zh) 2021-08-17 2021-08-17 基于数据控制平面混合感知的服务功能链故障检测方法

Publications (2)

Publication Number Publication Date
CN113660140A CN113660140A (zh) 2021-11-16
CN113660140B true CN113660140B (zh) 2023-04-07

Family

ID=78491241

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110941121.6A Active CN113660140B (zh) 2021-08-17 2021-08-17 基于数据控制平面混合感知的服务功能链故障检测方法

Country Status (1)

Country Link
CN (1) CN113660140B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114501190B (zh) * 2022-04-06 2022-07-15 中国科学技术大学 基于段路由的虚拟sdn网络带内遥测系统的带内遥测方法
CN116962507A (zh) * 2022-04-13 2023-10-27 中国电信股份有限公司 信息采集方法、服务链代理节点、服务链和存储介质
CN114866431A (zh) * 2022-04-28 2022-08-05 深圳智芯微电子科技有限公司 基于int预测sfc网络故障的方法、装置及处理器
CN115225540B (zh) * 2022-05-02 2023-07-18 东北大学 一种面向软件定义网络的数据平面故障检测与恢复方法
CN115174393B (zh) * 2022-06-27 2023-09-22 福州大学 基于带内网络遥测的服务功能链动态调整方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106603293A (zh) * 2016-12-20 2017-04-26 南京邮电大学 虚拟网络环境下一种基于深度学习的网络故障诊断方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018000442A1 (zh) * 2016-07-01 2018-01-04 华为技术有限公司 业务功能链sfc中用于转发报文的方法、装置和系统
US10715353B2 (en) * 2017-05-15 2020-07-14 Ciena Corporation Virtual local area network identifiers for service function chaining fault detection and isolation
CN109450790B (zh) * 2018-10-22 2020-10-09 北京交通大学 一种基于流量感知的网络服务功能链智慧供应方法
CN110708245B (zh) * 2019-09-29 2021-10-22 华南理工大学 多控制器架构下的sdn数据平面故障监测与恢复方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106603293A (zh) * 2016-12-20 2017-04-26 南京邮电大学 虚拟网络环境下一种基于深度学习的网络故障诊断方法

Also Published As

Publication number Publication date
CN113660140A (zh) 2021-11-16

Similar Documents

Publication Publication Date Title
CN113660140B (zh) 基于数据控制平面混合感知的服务功能链故障检测方法
CN100594699C (zh) 用于进行业务量生成的方法和装置
CN105991384B (zh) 兼容时间触发以太网与1553b的航天以太网通信方法
CN108512760A (zh) 基于SDN保障业务QoS的路由方法
CN103338150A (zh) 信息通信网络体系结构建立方法、装置、服务器和路由器
CN110351286A (zh) 一种软件定义网络中链路洪泛攻击检测响应机制
CN110298381A (zh) 一种云安全服务功能树网络入侵检测系统
CN101729385A (zh) 一种路径计算及建立方法、装置和系统
CN113518012B (zh) 一种分布式协同流量仿真环境构建方法及系统
CN106982143A (zh) 一种利用拓扑实现电信指标监控的方法
CN110061931A (zh) 工控协议的聚类方法、装置、系统及计算机存储介质
Miller et al. On fault location in networks by passive testing
CN112765217A (zh) 基于边缘计算和路径分析的数据处理方法及系统
CN102648604B (zh) 借助于描述性的元数据监测网络通信量的方法
CN113810225B (zh) Sdn网络的带内网络遥测探测路径规划方法及系统
CN102098733A (zh) 基于无线传感网络的数据传输方法及系统
Guo et al. FullSight: A feasible intelligent and collaborative framework for service function chains failure detection
CN115225550A (zh) 一种基于分簇的路径规划算法的按需全网遥测装置
Kurniawan et al. Mobile computing and communications-driven fog-assisted disaster evacuation techniques for context-aware guidance support: A survey
CN115174435A (zh) 电力通信传输网性能综合评估方法
CN109150707A (zh) 路由路径分析方法及设备
Guo et al. FullSight: A deep learning based collaborated failure detection framework of service function chain
CN102694725B (zh) 基于带宽来双向搜索路径的方法
CN110351192B (zh) 一种面向片上网络的多层次动态可选复合型路由控制方法
US7944831B2 (en) Data communication network having multidimensional link structure

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