一种IP网络拥塞链路定位方法与流程

文档序号:12278469阅读:222来源:国知局
一种IP网络拥塞链路定位方法与流程
本发明涉及网络拥塞控制领域,具体涉及一种IP网络拥塞链路定位方法。
背景技术
:IP网络链路性能推断技术对广大网络用户,特别是网络运营、管理商非常重要。随着IP网络规模的迅速扩大,网络结构日益多样,人工定期检查已不能适应当前大规模网络的需要。基于ICMP(InternetControlMessageProtocol)的IP网络内部拥塞链路性能推断采用主动探测技术,仅对待测IP网络中部分端到端(End-to-End,E2E)路径进行多次快照(snapshots),获取待测网络中各E2E路径性能及拓扑结构信息,并借助贝叶斯理论等,推断IP网络内部链路性能。较基于SNMP(SimpleNetworkManagementProtocol)的被动探测技术实时性好,需获取的数据量小,且不涉及用户隐私等。自1996年Vardi首次提出在IP网络性能推断中使用类似医学层析扫描(tomography)技术以来,借助网络tomography技术推断IP网络内部链路性能的方法主要包括两类:第一类方法使用多播方式或多簇单播模拟多播的方式,通过构建IP网络线性方程组求解各链路丢包率。此类方法需投入复杂的基础设施建设,且对各E2E路径性能探测的时间相关性要求高,并假设链路性能服从特定分布或具有时空独立性和平稳性等。出于安全等因素,当前IP网络中的大部分路由器对单播的支持度高于多播,时间相关性难以保证,且tomography技术以尽可能少的E2E路径探测推断网络内部链路性能,常导致构建的系统线性方程组系数矩阵欠定,无法对各链路丢包率精确求解。另外,随着IP网络规模的扩大,线性方程组因系数矩阵维数过大,求逆计算复杂,甚至导致算法失效。第二类方法将路径及链路性能借助布尔(Boolean)二进制代数值0、1进行表示。H.X.Nguyen,V.N.Padmanabhan,N.G.Duffield等人提出借助不相关的E2E路径探测,推断IP网络最有可能发生拥塞的链路集合,简化了链路性能推断过程。其中,HuangX.等人提出的CLINK算法较不使用先验概率的MCMC(MonteCarloMarkovChain)算法及使用一致先验概率的SCFS(SmallestConsistentFailureSetalgorithm)算法在推断性能上有较大程度的提高。HuangX.等人提出IP网络的路由改变会影响推断性能,但认为链路拥塞会持续数个小时,未考虑路由变化对当前链路推断性能带来的影响。乔焰等人将路由变化作为噪声干扰,通过在贝叶斯网推断模型中引入转移概率,提高了推断精度。但是,由于IP网络中的各AS区域多采用动态路由算法(如:OSPF),对IP网络进行拥塞链路推断时,路由将根据链路状态发生动态改变,从而造成推断过程中网络拓扑结构的变化,而拓扑结构变化将引起IP网络贝叶斯网推断模型的结构变化,不仅是参数改变。因此,上述方法均不能对动态路由IP网络进行准确建模,推断拥塞链路将产生一定误差。另外,为了简化计算复杂度,部分算法假设IP网络发生拥塞的链路不超过一定数目,而在实际IP网络中,多链路拥塞造成的IP网络高网络时延和高网络丢包率等现象,很可能是因为涉及违反SLA(Service-LevelAgreemeng)等相关服务等级协定造成的。网络管理者更需要及时准确的发现并定位拥塞链路,并进行相应的处理。技术实现要素:本发明的目的是针对上述现有技术的不足,而提供一种IP网络拥塞链路定位方法,以解决传统借助主动网络层析成像技术推断IP网络拥塞链路的方法均不能对动态路由IP网络进行准确建模,从而使推断拥塞链路产生一定误差的问题。为解决上述技术问题,本发明采用的一个技术方案是:提供一种IP网络拥塞链路定位方法,定位方法的步骤如下:(1)构建动态贝叶斯网模型:对待测IP网络中端到端路径进行N次快照,N≥1,获取待测IP网络中各端到端路径性能及拓扑结构的探测结果,构建变结构离散动态贝叶斯网络模型,动态贝叶斯网络模型由多个时间片的静态贝叶斯网模型组成,时间片是每个静态贝叶斯网模型对应的持续时间;(2)简化动态贝叶斯网模型:根据马尔科夫模型的一阶马尔科夫性假设和时齐性假设,将动态贝叶斯网模型简化为由两个时间片的静态贝叶斯网模型通过节点接口联接而成的模型,两个时间片分别为推断时刻对应的时间片和推断时刻前N次快照对应的初始时间片;(3)推断拥塞链路:动态贝叶斯网模型简化后,利用IP网络拥塞链路推断算法推断最有可能发生拥塞的链路集合,包括:①.拥塞先验概率求解:根据探测结果,学习待测IP网络中所述两个时间片下各链路拥塞先验概率;②.拥塞链路推断:根据当前推断时刻所进行的第N+1次快照获取的各端到端路径性能及拓扑结构探测结果,推断此时最有可能发生拥塞的链路集合。在本发明另一个实施例中,步骤(3)①进行拥塞先验概率求解包括如下步骤:a.根据探测结果,构建两个时间片T1、T2对应的静态贝叶斯网模型的选路矩阵D1、D2;b.对选路矩阵D1、D2进行去相关化简得到化简矩阵D1'及D2';c.在化简矩阵D1'及D2'中去除正常路径及途径链路对应的矩阵行元素和列元素,得到对应的拥塞矩阵再次去相关化简,得到化简拥塞矩阵及d.分别构建两个时间片中各对应链路拥塞先验概率求解的布尔线性方程组,求解所述各链路拥塞先验概率。在本发明另一个实施例中,步骤d中构建两个时间片中各对应链路拥塞先验概率求解的布尔线性方程组包括如下步骤:A.在待测IP网络中,将各端对端路径与其途径的各链路之间的关系用Boolean代数模型表示为:式中,“∨”为Boolean值最大化操作符;nc为各端对端路径途经的链路总数;yi为第i条路径的状态变量,xj为第j条链路的状态变量:当第i条路径为通时,yi=0,当第i条路径拥塞时,yi=1;当第j条链路为通时,xj=0,当第j条链路拥塞时,xj=1;为各时间片中待测IP网络构建的对应化简拥塞矩阵中的元素值,若第j条链路存在于第i条路径中,反之,B.对A步骤中的Boolean代数模型公式两边取数学期望,并进行转换,得到:式中,nε为拥塞路径途经链路数,E[yi']为去相关后的端对端路径Pi'的拥塞概率Pi',E[yi']通过N次快照探测出的各端对端路径状态Boolean值求和取平均得到,用表示;pj为第j条链路的拥塞先验概率;C.对B步骤的数学期望公式两边取对数,整理可得如下线性方程组:D.对C步骤中的线性方程组进行系数矩阵扩展补满秩操作:将两拥塞路径视为一条路径进行关联处理,对两矩阵行相应链路进行“∨”操作,构建化简拥塞矩阵的扩展路径行,将化简拥塞矩阵中各元素与对应扩展矩阵中各元素合并,并再次去相关化简后,构造出如下秩等于nε的满秩系数矩阵D”d:式中,为各扩展路径行对应的扩展矩阵中的元素值;n'θ为对应的拥塞路径数,k值大小取决于nε-n'θ的值;E.对满秩系数矩阵D”d进行线性无关化简,选择线性无关扩展路径行使得补满秩后的D”d线性无关,可得如下公式:式中,通过对两条拥塞路径Pi、Pl在对应时间片中进行Nk次快照,获取对应的每次拥塞变量yi及yl,再进行“∨”操作并求和取平均获得,去相关、补满秩后,得到向量形式的Boolean代数线性方程组如下:式中,均为对应路径的拥塞概率;为第nε链路的拥塞先验概率。在本发明另一个实施例中,步骤d中采用稀疏矩阵线性方程组迭代求解方法对构建的所述两个时间片对应的链路拥塞先验概率求解的Boolean线性方程组进行求解,得到两时间片中各链路拥塞先验概率。在本发明另一个实施例中,稀疏矩阵线性方程组迭代求解方法包括雅克比迭代法,高斯-赛德尔迭代法,逐次超松弛迭代法,共轭梯度迭代法以及预处理共轭梯度法。在本发明另一个实施例中,步骤(3)②中利用最大评分参量对拥塞链路推断时,经过简化处理的最大评分参量表达式为:其中,Y1,Y2分别为两个时间片对应静态贝叶斯网模型中的观测变量,X1,X2分别为两个时间片对应静态贝叶斯网模型中的隐藏变量;及分别为两个时间片对应静态贝叶斯网模型中共有链路的状态变量,及分别为两个时间片对应静态贝叶斯网模型中共有链路的拥塞先验概率。在本发明另一个实施例中,步骤(3)②中对拥塞链路推断时,基于贝叶斯最大后验概率准则,依次在当前推断时刻拥塞路径途径链路集合中查找权值最高的链路,权值最高的链路即被推断为拥塞链路。在本发明另一个实施例中,在当前推断时刻拥塞路径途径链路集合中查找权值最高的链路的判断公式如下:式中,为分别在所述两个时间片对应静态贝叶斯网模型中各共有链路lk(lk∈Lε)的拥塞概率,Lε为当前推断时刻拥塞路径途经链路集合;n(k)为当前推断时刻链路lk存在于路径的条数。本发明的有益效果是:本发明针对IP网络路由的动态特性,根据多路端到端探测获取的路径性能及拓扑结构的探测结果,建立变结构离散动态贝叶斯网络模型,并根据一阶马尔科夫性假设和时齐性假设简化该模型,基于该简化模型对IP网络拥塞链路进行推断,实现了动态路由下IP网络拥塞链路的推断。通过对不同类型及规模IP网络进行模拟实验与仿真实验,在相同场景下,分别利用传统CLINK算法及本发明的方法进行拥塞链路推断,实验验证了本发明的方法较CLINK算法有更高的推断准确性及鲁棒性。另外,针对Boolean线性方程组系数矩阵的奇异性及稀疏性问题,对系数矩阵去相关、补满秩后,提出利用稀疏矩阵系统线性方程组迭代求解链路拥塞先验概率唯一解。基于贝叶斯最大后验概率准则,利用加权启发式贪心算法推断拥塞链路集合。附图说明图1是本发明IP网络拥塞链路定位方法的流程图;图2是本发明IP网络拥塞链路定位方法实施例简化后的变结构离散动态贝叶斯网模型图;图3a是实验验证实施例一不同Congestion-link-ratio下VSDDB算法拥塞链路推断DR变化趋势图;图3b是实验验证实施例一不同Congestion-link-ratio下VSDDB算法拥塞链路推断FPR变化趋势图;图4a是实验验证实施例二不同Congestion-link-ratio下VSDDB算法和CLINK算法DR的对比图;图4b是实验验证实施例二不同Congestion-link-ratio下VSDDB算法和CLINK算法FPR的对比图;图5a是实验验证实施例三不同路由变化频繁程度下VSDDB算法和CLINK算法DR的对比图;图5b是实验验证实施例三不同路由变化频繁程度下VSDDB算法和CLINK算法FPR的对比图;图6a是实验验证实施例四不同网络规模下VSDDB算法和CLINK算法DR的对比图;图6b是实验验证实施例四不同网络规模下VSDDB算法和CLINK算法FPR的对比图。具体实施方式为了便于理解本发明,下面结合附图和具体实施例,对本发明进行更详细的说明。附图中给出了本发明的较佳的实施例。但是,本发明可以以许多不同的形式来实现,并不限于本说明书所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容的理解更加透彻全面。需要说明的是,除非另有定义,本说明书所使用的所有的技术和科学术语与属于本发明的
技术领域
的技术人员通常理解的含义相同。在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是用于限制本发明。本说明书所使用的术语“和/或”包括一个或多个相关的所列项目的任意的和所有的组合。如图1所示,本发明提供了一种IP网络拥塞链路定位方法,该定位方法的步骤如下:S1.构建动态贝叶斯网模型:对待测IP网络中端到端路径进行N次快照,N≥1,获取待测IP网络中各端到端路径性能及拓扑结构的探测结果,构建变结构离散动态贝叶斯(VariableStructureDiscreteDynamicBayesian,简称VSDDB)网络模型,动态贝叶斯网络模型由多个时间片的静态贝叶斯网模型组成,时间片是每个静态贝叶斯网模型对应的持续时间;S2.简化动态贝叶斯网模型:根据马尔科夫模型的一阶马尔科夫性假设和时齐性假设,将动态贝叶斯网模型简化为由两个时间片的静态贝叶斯网模型通过节点接口联接而成的模型,两个时间片分别为推断时刻对应的时间片和推断时刻前N次快照对应的初始时间片;S3.推断拥塞链路:动态贝叶斯网模型简化后,利用IP网络拥塞链路推断算法推断最有可能发生拥塞的链路集合,包括:S31.拥塞先验概率求解:根据探测结果,学习待测IP网络中两个时间片下中各链路拥塞先验概率;S32.拥塞链路推断:根据当前推断时刻所进行的第N+1次快照获取的各端到端路径性能及拓扑结构探测结果,推断此时最有可能发生拥塞的链路集合。下面首先对本发明所要解决的问题及相关模型的构建进行说明。贝叶斯网络又称信度网络,是Bayes方法的扩展,是目前不确定知识表达和推理领域最有效的理论模型之一。一个贝叶斯网络是一个表示因果关系的有向无环图G=(ν,ε),由代表变量节点及连接这些节点有向边构成,ν为节点,代表随机变量,ε为连接节点的有向边,代表了节点间的互相关系(由父节点指向其子节点),用条件概率进行表达关系强度,没有父节点的用先验概率进行信息表达。在贝叶斯网中,每个节点存储了一个条件概率表,当该节点为根节点时,此条件概率表为节点的先验概率分布。根据贝叶斯网络的因果关系以及已知的条件概率和先验概率,可由已知节点的状态(证据节点)推理未知节点(隐藏节点)的状态。本发明是基于主动探测技术中的第二类方法,将路径及链路性能利用Boolean二进制代数值0、1表示,借助Boolean代数模型对动态路由IP网络进行拥塞链路推断。待测IP网络中,各端对端(E2E)路径的状态变量集合:yi为第i条路径的状态变量,各E2E路径途经链路的状态变量集合:xj为第j条链路的状态变量;当第i条路径通时,yi=0,当第i条路径拥塞时,yi=1;当第j条链路通时,xj=0,当第j条链路拥塞时,xj=1。其中,np为待测IP网络中E2E路径总数,nc为各E2E路径途经的链路总数。在构建IP网络拥塞链路推断的贝叶斯网模型时,Y为模型中的观测变量(证据节点),X为隐藏变量(隐藏节点),各E2E路径及途经链路的连接关系构成模型的有向边。如果探测出E2E路径Pi(i=1,2,...,np)拥塞时,即yi=1,对IP网络内部的拥塞链路推断问题可转化为对X最有可能取值的选取问题。贝叶斯网模型节点联合概率如(1)式所示:式(1)中,pa(xj)为节点xj的父节点。由于E2E路径性能正常时,该路径途经各链路的性能也正常;路径拥塞时,该路径途经各链路中至少有一条链路发生了拥塞。因此,E2E路径与该路径途经各链路之间应存在如下(2)式所示的概率关系:P(yi=0|pa(yi)={0,...,0})=1由上述数学表达式可得如下引理:引理1:P[yi|pa(yi)]取得最大值时,当满足如下条件:1)如果yi=0,且Dij=1,则xj=0;2)如果yi=1,则必然存在至少一个xj=1,使得Dij=1。根据各E2E路径探测性能,借助贝叶斯网模型推断出最有可能发生拥塞的链路集合,利用最大评分参量(argmax)进行求解,其公式如下:式(3)中,P(Y)仅与IP网络状态及探测结果有关,与链路选取无关,则式(3)可简化为:式(4)中,pa(yi)为贝叶斯网中yi的父节点。因此,在推断IP网络内部拥塞链路时,正常路径途经的各链路必为正常状态,不必再进行性能推断。即:可将正常路径对应的观测变量yi及相关隐藏变量xj(途经链路状态变量)以及有向边从IP网络构建的贝叶斯网推断模型中移除,剩余的贝叶斯网模型为待测IP网络拥塞链路推断中的拥塞贝叶斯网模型。式(4)中,P(xj)(这里的P(xj)也可写做pj)为链路xj的先验概率,P[yi|pa(yi)]可由式(2)得出,但(4)式仍缺少P(xj)的信息。为了得到IP网络中各链路拥塞先验概率P(xj),需要对各E2E路径进行N次快照snapshots(traceroute及ping),获取待测网络中各端到端路径性能及拓扑结构探测结果。traceroute返回各E2E路径途经各路由器的IP地址,从而,每两个直接相连的路由器组成了各E2E路径所途经的各链路;ping得到每次snapshots中各E2E路径的性能探测结果。根据IP网络动态路由算法策略,在N次snapshots中,各E2E路径途经链路会因物理链路切断或带宽等因素发生改变,由此引起IP网络拓扑结构的变化。为了构建动态路由IP网络拥塞链路推断的贝叶斯网模型,引入如下定义:如果组成一个离散动态贝叶斯网络,不同时刻的离散静态贝叶斯网络的结构或参数发生变化,则这类离散动态贝叶斯网络称为变结构离散动态贝叶斯网络。N次快照snapshots学习链路拥塞先验概率的过程中,如IP网络拓扑结构发生n次改变,则可得到n个静态贝叶斯网模型,将每个静态贝叶斯网模型对应时间(snapshots次数)称作一个时间片(T)。因此,对动态路由IP网络构建的拥塞链路推断动态贝叶斯网模型可由多个时间片的静态贝叶斯网模型组成。为了简化推断过程,需要对上述贝叶斯网模型进行简化,由此引入了马尔科夫模型,马尔科夫模型有两个假设:1)一阶马尔科夫性假设:系统在当前时刻的状态只与前一时刻的状态相关,即给出当前系统状态,该状态只与过去的前一状态有关,将来的系统状态和过去的前一状态是独立的;2)齐次性或时齐性:状态转移概率与时间无关,即每个时间片中各节点的条件概率和各时间片间的转移概率不随时间发生变化。根据上述两个假设,待测IP网络拥塞链路推断动态贝叶斯网模型可由推断时刻前N次snapshots对应的初始时间片(T1)和推断时刻对应时间片(T2)的两个静态贝叶斯网模型,通过节点接口(共有链路)联接而成,其简化模型如图2所示。如图2所示,根据E2E路径性能探测结果进行拥塞链路推断时,各时间片的静态贝叶斯网模型中的观测变量为探测出的各拥塞路径状态,即:t为N次snapshots中第t个时间片,简化模型中,t={1,2}。各E2E路径途经的链路状态为如图2所示,链路lh,lj…,lk在T1和T2中均存在于各自时间片的拥塞路径中,构成两时间片联接的节点接口。lh,lj…,lk在初始时间片T1的静态贝叶斯网模型中对应的变量为lh,lj…,lk在推断时刻对应时间片T2的静态贝叶斯网模型中对应的变量为各时间片中,路径的状态变量链路的状态变量及连接关系(有向边)构成对应时间片的静态贝叶斯网模型。如对静态路由IP网络进行拥塞链路推断时,网络拓扑结构始终不变,由此建立的贝叶斯网模型即CLINK算法中拥塞链路推断的静态贝叶斯网模型。基于上述简化后的贝叶斯网模型,利用本发明提出的变结构离散动态贝叶斯(VariableStructureDiscreteDynamicBayesian,简称VSDDB)方法,根据前N次E2E路径性能探测结果及拥塞路径与途经链路间的Boolean代数关系,学习各链路拥塞先验概率,根据第N+1次E2E路径性能探测结果,推断此时最有可能发生拥塞的链路集合。该算法提高了动态路由算法下IP网络拥塞链路推断精度,其推断过程如下:①.拥塞先验概率求解:根据对待测IP网络中端到端路径的N次快照所获取的各端到端路径性能及拓扑结构探测结果,学习待测IP网络中两个时间片下中各链路拥塞先验概率,具体步骤如下:a.根据N次快照所获取的待测网络中各端到端路径性能及拓扑结构探测结果,构建两个时间片T1、T2对应静态贝叶斯网模型的选路矩阵D1、D2;各时间片下中待测IP网络对应选路矩阵D的构建方法如下:IP网络选路矩阵D(在时间片T1下对应为D1、在时间片T2下对应为D2)的各行为E2E路径Pi(i=1,2,…np),各列为IP网络中所有链路lj(j=1,2,..nc)。按照跳数(hop)级别顺序从小到大依次排列;当某条E2E路径Pi途经某条链路lj时,选路矩阵D对应位置处的元素值Dij=1,否则Dij=0。b.对选路矩阵D1、D2进行去相关化简得到化简矩阵D1'及D2':在链路拥塞先验概率学习过程中,对待测IP网络各E2E路径通过N次traceroute获取途经链路,构建各时间片选路矩阵D后,为了减少ping实际发包探测的路径数,根据矩阵特性,可对选路矩阵D去相关化简得到矩阵D'(在时间片T1下对应为D1'、在时间片T2下对应为D2');c.在化简矩阵D1'及D2'中去除正常路径及途径链路对应的矩阵行元素和列元素,得到对应的拥塞矩阵再次去相关化简,得到化简拥塞矩阵及由于去除线性相关路径后并不影响矩阵特性及矩阵列数,即覆盖链路数不变。对各E2E路径通过ping性能探测后,在D'中去除正常路径及途经链路对应的矩阵行元素及列元素,可得到拥塞矩阵Dd(在时间片T1下对应为在时间片T2下对应为),再次去相关化简后,即可得到化简拥塞矩阵D'd(在时间片T1下对应为在时间片T2下对应为)。d.分别构建两个时间片下中各对应链路拥塞先验概率求解的布尔线性方程组,求解两时间片下中各链路拥塞先验概率;构建两个时间片下中各对应链路拥塞先验概率求解的布尔线性方程组包括如下步骤:A.IP网络中,各E2E拥塞路径的整体传输率Ψi与路径途经各链路的传输率之间关系满足(5)式:式(5)中,Ψi为第i条路径整体传输率,为该路径下途经的第j条链路的传输率。为各时间片下中待测IP网络构建的对应化简拥塞矩阵中的元素值,若第j条链路存在于第i条路径中,反之,本发明的目的是为了识别网络中的拥塞链路,拥塞链路是指丢包率(1-传输率)超过了应用程序能够容忍的最大极限的链路,反之,就是好的链路。用t限表示应用程序指定的极限值。当链路满足时链路就是连通的。如果那么链路就是拥塞的。这里的阈值t限可根据应用程序的性能需求而改变。为了简化推断过程,根据如下定义:yi为第i条路径的状态变量,xj为第j条链路的状态变量:当第i条路径通时,yi=0,当第i条路径拥塞时,yi=1;当第j条链路通时,xj=0,当第j条链路拥塞时,xj=1。将各端对端路径与该路径途径的各链路之间关系用Boolean代数模型表示为:式(6)中,“∨”为Boolean值最大化操作符。B.为了对拥塞链路先验概率进行求解,对式(6)两边取数学期望E,转换后可得:式中,nε为拥塞路径途经链路数,E[yi']为去相关后的端对端路径Pi'的拥塞概率Pi',E[yi']通过N次快照探测出的各端对端路径状态Boolean值求和取平均得到,用表示;pj为第j条链路的拥塞先验概率。C.为便于计算,对式(7)两边取对数,整理可得:D.对式(8)进行系数矩阵扩展补满秩操作:根据动态路由选路算法策略,当IP网络中某链路截断或持续拥塞达到一定时间后,会根据动态选路协议重新进行E2E路径途经链路的选取。因此,在拥塞链路先验概率学习过程中,N次snapshots中对IP网络构建的选路矩阵D可能会发生改变。由此,带来式(8)中的改变,从而造成链路拥塞先验概率pj求解误差。另外,在借助tomography技术进行拥塞链路推断时,通常利用尽可能少的E2E路径探测,覆盖尽可能多的链路,并且通过前述两次去相关化简操作,易造成式(8)中D'd对应的E2E路径数小于算法覆盖的链路数。使得式(8)所示Boolean线性方程组系数矩阵欠定,无法求得唯一解。因此,需对式(8)进行系数矩阵扩展补满秩操作。由于系数矩阵D'd各行代表各线性无关拥塞路径,因此可将两拥塞路径视为一条路径进行关联处理,对两矩阵行相应链路进行“∨”操作,构建D'd的扩展路径行。各扩展路径行对应的扩展矩阵各元素用表示。将D'd各元素与扩展矩阵各元素合并,并再次去相关化简后,可构造满秩系数矩阵D”d,其为秩等于nε的方阵,这里的k代表补满秩需要的矩阵行数,其值大小取决于nε-n'θ的值,nε为拥塞路径途径链路数,n'θ为对应的拥塞路径数,秩等于nε的满秩系数矩阵D”d如式(9):E.对满秩系数矩阵D”d进行线性无关化简:由于并非所有子矩阵D”d进行路径行扩展组成的满秩阵都能使得D”d线性无关。因此,仍需对扩展后的矩阵进行线性无关化简,选择线性无关扩展路径行使得补满秩后的D”d线性无关,从而求得链路拥塞先验概率唯一解。化简公式如式(10):式(10)中,通过对两条拥塞路径Pi、Pl在对应时间片中进行Nk次快照,获取对应的每次拥塞变量yi及yl,再进行“∨”操作并求和取平均获得,去相关、补满秩后,得到向量形式的布Boolean代数线性方程组如下:式中,均为对应路径的拥塞概率;为第nε链路的拥塞先验概率。式(11)为Boolean代数线性方程组,直接求解存储量和计算量均过大,特别是此方程组系数矩阵D”d各元素为Boolean代数值0或1,非零值较少,为典型的稀疏矩阵。当矩阵主元(j=1,2,…,nε)时,无法计算。即使主元但当其绝对值很小时,D”d的逆矩阵作为除数,因舍入误差的存在也会使计算带来较大误差。本发明将稀疏矩阵系数线性方程组迭代求解方法引入到IP网络链路拥塞先验概率Boolean线性方程组求解中。迭代求解线性方程组的方法主要包括:雅克比(Jacobi)迭代法,高斯-赛德尔(Gauss-Seidel)迭代法,逐次超松弛(SuccessiveOver-Relaxation,SOR)迭代法,共轭梯度(ConjugatedGradient,CG)迭代法以及预处理共轭梯度法(PretreatmentConjugatedGradient,PCG)等。②.动态路由下拥塞链路推断:借助上述简化后的贝叶斯网模型,根据当前推断时刻所进行的第N+1次快照获取的各端到端路径性能及拓扑结构探测结果,推断此时最有可能发生拥塞的链路集合。利用最大评分参量进行动态路由下拥塞链路推断时,所利用的最大评分参量argmax如(12)式所示:式(12)中,P(Y1,Y2)仅与网络状态及探测结果有关,与链路选取无关,则其最大评分参量argmax表达式可表示为:式(13)中,及分别为T1及T2对应静态贝叶斯网模型中共有链路的状态变量,nε'为T1及T2对应各静态贝叶斯网模型中共有链路总数;分别为两个时间片下中对应静态贝叶斯网模型中对应路径的状态变量;分别为的父节点。为了求解(13)式,根据引理1,P[yi|pa(yi)]最大值等于1。由于IP网络中各链路的状态xj'是概率独立的随机变量,对当前IP网络进行1次E2E路径snapshots试验,各链路拥塞概率推断的分布律服从贝努利概率模型中二项概率公式n=1,且各链路状态概率独立,故可表示为(14)式:由于条件概率表及取得最大值时均为1。因此,式(13)可简化为:由贝叶斯定理:链路状态变量与相互独立,(15)式可表示为:式(16)中,及分别为T1及T2中各E2E路径途经链路的拥塞先验概率,这里的及也可表示为及及可以通过链路拥塞先验概率求解系统方程式(11)可分别求出,根据贝努利实验二项式分布概型,式(16)可转化为:nε”为推断时刻拥塞链路总数。对式(17)取对数可得:式(18)中,与链路状态无关,因此可等价为对式(19)的求解。当各E2E路径探测过程中未发生路由改变的情况时,(19)式的推断过程即简化为对固定路由下拥塞链路最小覆盖集推断算法CLINK。由此可见,本发明提出的VSDDB方法对拥塞链路推断具有一般性,是实现IP网络拥塞链路推断的通用算法。利用VSDDB方法推断拥塞链路时,基于简化模型和贝叶斯最大后验概率(MAP)准则,借助加权启发式贪心算法寻找最优解,根据当前时刻各E2E路径性能探测结果,推断最有可能发生拥塞的链路集合。贪心算法(又称贪婪算法)是指在对问题求解时,总是做出在当前看来是最好的选择。该算法的特性是:为了解决问题,需要寻找一个构成解的候选对象集合,它可以优化目标函数,贪婪算法一步一步的进行。起初,算法选出的候选对象的集合为空;接下来的每一步中,根据选择函数,算法从剩余候选对象中选出最有希望构成解的对象;如果集合中加上该对象后不可行,那么该对象就被丢弃并不再考虑;否则就加到集合里。每一次都扩充集合,并检查该集合是否构成解。如果贪婪算法正确工作,那么找到的第一个解通常是最优的。该算法伪代码如下:输入:——移除正常路径及途经链路后,构建的IP网络去相关化简拥塞矩阵,t={1,2};——各E2E路径拥塞概率,t={1,2};Pθ——推断时刻拥塞路径集合;Lε——推断时刻拥塞路径途经链路集合;n(k)——推断时刻链路lk存在于多少条E2E路径中;——包含链路lk的所有E2E路径;输出:Ω——拥塞链路推断集合。下面通过实验验证本发明IP网络拥塞链路定位方法的优越性。评价算法性能的实验方法通常包括:模拟实验、仿真实验和实测实验。其中,模拟实验的标准答案(Benchmark)已知,实验细节可完全掌握,但不够真实;实测实验虽环境真实,但较难获取Benchmark;仿真实验兼顾实验的可控性与真实性,操作灵活。因此,为了客观评价VSDDB算法的性能表现,本发明分别采用模拟实验、Emulab仿真实验和PlanetLab实测实验,验证算法准确性及鲁棒性。模拟、仿真实验中,为了增加算法的通用性,利用Brite拓扑生成器生成三种不同类型、规模的IP网络拓扑结构模型(Waxman、BA及GLP),并利用随机数模型模拟IP网络中多链路拥塞事件场景。首先进行算法参数设置及评价指标定义:路径拥塞阈值参数(Path-congestion-threshold):默认设置N=30(链路拥塞先验概率学习中snapshots次数),Path-congestion-threshold=0。即:对各E2E路径30次snapshots中,路径丢包率每次snapshots均低于设置阈值(0.05),则该路径正常;否则,该路径拥塞。为了验证IP网络在拥塞链路比例不同的情况下对算法性能带来的影响。模拟实验中,引入拥塞链路占算法覆盖链路比例参数(Congestion-link-ratio):设置0.05≤Congestion-link-ratio≤0.6模拟IP网络中拥塞链路数由少到多变化。另外,为了模拟IP网络中路由变化频繁程度对算法推断性能的影响;路由变化参数(Route-changing-threshold):以连续snapshots中链路持续拥塞次数作为路径变路由的触发条件,默认设置Route-changing-threshold=4。为了验证路由变化快慢对算法推断性能的影响,设置1≤Route-changing-threshold≤4。利用检测率DR(DetectionRate)及误报率FPR(FalsePositiveRate)进行算法性能评估。推断DR及FPR为各阈值参数不变的情况下,实验10次取平均值后得出。式(20)中,F为推断时刻实际发生拥塞的链路,X为算法推断出的拥塞链路。模拟实验评价:本发明算法采用JAVA语言编写,通过EclipseMARS.1平台导入Brite文件,模拟相同链路覆盖范围、相同拥塞事件场景,利用本发明提出的VSDDB方法与CLINK算法分别进行拥塞链路推断并对推断性能进行比较。链路拥塞先验概率迭代求解:为了验证VSDDB方法中,利用稀疏系数矩阵线性方程组求解方法迭代求解链路拥塞先验概率唯一解的有效性,模拟一定规模(500个节点)的Waxman(1000条链路)、BA(997条链路)及GLP(923条链路)IP网络模型,Congestion-link-ratio=0.1,模拟30次链路拥塞事件,且路由不变的实验场景。对不同迭代算法求解性能进行比较,迭代算法中误差限=10-3。利用不同算法迭代求解式(11)中各链路拥塞先验概率唯一解,其迭代次数及运行时间分别如表1所示。算法运行时间为连续迭代求解10次取平均值后所得结果。表1不同算法的先验概率迭代求解性能比较通过实验,Jacobi算法在不同类型、规模的IP网络模型中,迭代求解链路拥塞先验概率均不能实现算法收敛。Gauss-Seidel、SOR、SSOR(SymmetricSOR)、CG以及SSOR分裂PCG(SSORPCG)算法均能在可接受的时间内实现收敛。其中,SSORPCG算法因SSOR分裂具有对称因子,在一定程度上能够加速CG算法收敛,收敛步数最少;而SOR算法收敛时间最短。因此,在VSDDB算法中,可选择SOR或SSORPCG算法迭代求解链路拥塞先验概率,以确保大规模IP网络拥塞链路先验概率求解的准确性及实时性,为拥塞链路在线推断提供保障。不变路由下VSDDB方法性能:Brite拓扑生成器以默认参数生成150个节点规模的Waxman、BA及GLP模型,VSDDB方法中,设置0.05Congestion-link-ratio0.6,拥塞链路推断DR及FPR如图3。根据图3,随着Congestion_link-ratio增大,DR呈下降趋势。其中,GLP模型下DR最高,其次是BA模型,Waxman模型最低。这与IP网络模型的拓扑结构有直接关系,因Waxman模型路径长度较长,VSDDB算法以最小覆盖集问题(SetCoverProblem,SCP)作为理论基础进行拥塞链路推断,当同一条路径中最有可能拥塞的链路被推断出来后,除非此链路在其余路径中为最有可能拥塞的链路,否则该路径下的其余链路在本路径中将不再被推断。而BA模型及GLP模型为幂律模型,网络中部分路由器度值较大,共用路径较Waxman模型多。因此,对Waxman模型的拥塞链路推断DR较GLP及BA模型有明显下降。VSDDB方法FPR在GLP模型下最低,不高于0.1,BA模型及Waxman模型下在0.2附近。在路由不变的GLP模型下,VSDDB方法拥塞链路推断结果与CLINK算法基本一致。验证了VSDDB方法拥塞链路推断的通用性。变路由下算法推断性能比较:为了验证VSDDB方法对动态路由IP网络拥塞链路推断的有效性及准确性,对150个节点的Waxman、BA及GLP模型,30次snapshots中,利用随机数发生器以Congestion-link-ratio比例模拟链路拥塞事件;Route-changing-threshold=4作为路由改变阈值,并以最短路径优先策略重新选路。在相同的拥塞链路场景下,分别利用VSDDB方法与CLINK算法进行当前时刻拥塞链路推断。(1)不同Congestion-link-ratio对算法的影响设置0.05Congestion-link-ratio0.6,两种算法拥塞链路推断DR及FPR如图4a~图4b所示。由图可知,不同IP网络模型下,两种方法DR均呈下降趋势。VSDDB算法DR明显高于CLINK算法。VSDDB方法在GLP模型下DR最高,其次是BA模型和Waxman模型。变路由下CLINK算法的推断性能较不变路由时明显降低,由于GLP模型幂律性强,链路在多条E2E路径中存在,造成DR下降最多,较路由不变时平均下降50%以上;对BA模型,平均下降40%左右;对Waxman模型平均下降30%左右。VSDDB方法DR也较路由不变时平均下降10%左右,FPR较不变路由时平均升高10%。当拥塞链路比例增大时,VSDDB表现出较强的鲁棒性,稳定性能明显优于CLINK。(2)路由变化快慢对算法的影响为了验证VSDDB方法在不同IP网络环境下的推断性能,利用链路连续拥塞snapshots次数触发路由表更新来模拟IP网络变路由的速度。模拟实验中,分别设置Route-changing-threshold=1~4次导致路由变化的场景。如:Route-changing-threshold=1即发生路由改变,说明待推断IP网络路由变化频繁;反之,路由变化较慢。对150个节点的Waxman、BA及GLP模型IP网络,设置Congestion-link-ratio=0.1,两种算法拥塞链路推断DR及FPR如图5a~图5b所示。由图可知,路由变化越快,两种算法DR均越低,FPR越高。DR随路由变化频率增大呈线性下降趋势。VSDDB方法在GLP模型下DR最高,其次是BA及Waxman模型;在GLP模型下FPR最低,其次是BA及Waxman模型。不同模型下,VSDDB方法的推断性能均优于CLINK。(3)不同网络规模对算法的影响为了验证VSDDB方法对不同规模下的IP网络拥塞链路推断性能。以默认参数生成节点数(Node-number)50~350变化的Waxman、BA及GLP模型,设置Congestion-link-ratio=0.2,Route-changing-threshold=4,两种方法拥塞链路推断DR及FPR如图6a~图6b所示。由图可知,对不同规模的IP网络,VSDDB方法推断性能均优于CLINK。其中,VSDDB方法在GLP模型下推断DR最高,其次是BA及Waxman模型;在GLP模型下FPR最低,其次是BA及Waxman模型。对不同规模的IP网络,VSDDB方法较CLINK有更高的鲁棒性,拥塞链路推断DR及FPR均较CLINK稳定。Emulab仿真实验评价:实际IP网络拓扑结构大部分服从幂律规则,在Emulab实验平台上进行仿真实验:(1)使用Brite拓扑生成器以默认参数生成20个节点,且服从幂律规则分布的GLP模型Brite文件;(2)导入Brite文件,搭建被测网络,并将探针及性能监控台接入被测网络;(3)由性能监控台给各发包路由器探针下达探测任务,并将测得数据上传至性能监控台,分别利用VSDDB及CLINK进行拥塞链路推断。(1)网络拓扑:设置仿真IP网络中各链路带宽100Mbps,时延15ms;(2)选路协议:IP网络采用OSPF协议,E2E路径服从最短路径优先选路规则。设置链路拥塞时延大于8min后重新选路,各路由器路由表2min内可实现稳定,链路在2min内可恢复正常数据传输;(3)链路状态:采用LM1模型,链路拥塞时,丢包率服从[0.05,1]均匀分布;链路正常时,丢包率服从[0,0.01]均匀分布。为每条链路赋初始丢包率后,链路丢包服从Gilbert过程。即:链路状态在拥塞与正常之间波动。处于正常状态时不丢包;处于拥塞状态时全丢包。链路每隔2min以Congestion-link-ratio比例按照随机数规律变化产生拥塞事件。本次仿真实验场景下,仅对路由器节点Node6进行发包探针部署,需进行主动发包探测的E2E路径12条,链路覆盖18条。性能监控台每隔2min对探针发送指令进行一次snapshots。设置Congestion-link-ratio=0.1。两算法的推断DR及FPR为10次实验结果取平均值后得出,如表2所示。表2Emulab仿真实验算法推断精度算法DR(检测率)FPR(误报率)VSDDB87.9%7.6%CLINK63.7%15.1%Internet实验评价:为了验证VSDDB在实际IP网络中拥塞链路推断性能,在PlanetLab平台构建一由50个节点组成的拓扑网络,选取部分端主机作为发包路由器,最大程度的覆盖整个待测网络。由于实际Internet网络中,各链路丢包率数值无法准确获知,即缺少DR及FPR计算式(20)中的Benchmark(F)。因此,本发明借鉴现有对算法推断性能的评价方法。首先,将待测Internet网络中各端到端路径集合以随机方式分为两个大小相等的路径集合:推断路径集合Ι及验证路径集合Ρ。在集合Ι中,对各E2E路径每隔4分钟进行一次snapshots,共进行30次。(1)利用traceroute获取每次snapshots中,各E2E路径途经路由器节点,由此得到各E2E路径途经链路,由于路由器有多个端口,同一个路由器可能由多个端口与其他路由器相连,因此,实测实验中利用sr-ally工具将多个IP地址(端口)但归属同一路由器的节点进行合并;(2)利用ping从发包节点向各端节点发送100个60字节UDP包,获取每次E2E路径性能测量结果。根据集合Ι中30次snapshots得到的数据,利用VSDDB方法及CLINK算法进行集合Ι中各链路拥塞先验概率求解。并对整个待测网络各E2E路径进行1次snapshots,得到各路径途经链路及性能探测结果,利用VSDDB方法及CLINK算法进行集合Ι中拥塞链路推断,得到两种算法推断结果。根据E2E路径中至少存在一条拥塞链路,则路径拥塞原理。分别以两种算法推断出的拥塞链路集合确定路径集合Ρ中的拥塞路径集合,并对照该路径在snapshots中得到的实际路径丢包率测量值,判断两种算法的推断准确性。两算法的推断DR及FPR为10次实验结果取平均值后得出,如表3所示。表3Internet实测实验算法推断精度算法DR(检测率)FPR(误报率)VSDDB92.1%4.2%CLINK87.2%10.5%由于CLINK算法未考虑Internet网络动态路由中各端到端路径途经链路改变对推断性能带来的影响。因此,拥塞链路推断过程中,如E2E路径路由发生改变,将造成CLINK算法推断结果与当前实际IP网络环境中拥塞链路不一致。但是,推断过程中,如路由未发生改变,则VSDDB方法与CLINK算法推断结果一致。另外,如某链路仅在T2的静态贝叶斯网模型中,而不在T1的静态贝叶斯网模型中,说明此链路在T2处在拥塞路径中,在T1或处于正常路径或因路由算法选路策略未参与到E2E路径中,但无论哪种情况,此链路在T2均应作为拥塞路径途经的可能拥塞链路进行推断;如某链路仅在T1的贝叶斯网模型中,而未出现在T2的贝叶斯网模型中,则说明此链路在T1中处在拥塞路径中,而T2中可能因选路策略未被E2E路径覆盖。通常,此链路应仍处于拥塞状态中,仍可作为拥塞链路进行推断。本发明对这两种情况均采用t=1的情况进行处理。但是,也有可能此链路在T2中为正常路径途经的链路。此时,推断可能存在误差。另外,如先验概率学习过程中的多次snapshots中,E2E路径始终拥塞,则式(10)中路径拥塞概率值为1。而在进行链路拥塞先验概率计算时,将不满足对数函数定义域要求,程序出现错误。对此问题进行修正:当路径拥塞概率Pi=1时,将值微调为0.99,调整后不影响该路径在全网各拥塞路径中所占比重。此外,如果选路矩阵D在N次snapshots探测后的第N+1次snapshots发生变化,而推断时刻E2E路径途经了拥塞先验概率学习过程中未覆盖的链路,将对推断性能造成影响。但此情况发生概率极低,对算法推断效果影响较小。以上所述仅为本发明的实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构变换,或直接或间接运用在其他相关的
技术领域
,均包括在本发明的专利保护范围内。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1