具体实施例
在以下的叙述中,将给出一些具体的细节为的是更透彻地理解本发明。然而,本发明不需所述细节也可以实现。在其他一些情况下,众所周知的部件并没有显示或详细叙述,以免使本发明模糊。因此,本说明书及附图将被看作说明而不是限制。
本发明识别一些可能的网络问题,而这些问题会影响经一信息网络流过一路径的有关检测包沿该路径的传播的数据。本发明可采用软体实施。该软体取得不同数据包的特性资料并从所述资料作出一检测签名以及使所述检测签名与可影响该网络的特定问题相关的实例签名对比。该软体识别一些可基实例签名与以所述检测签名表示的观察到的数据包特性的模式相符损害网络的问题。
通常,检测签名是有组织的资料采集,其涉及许多穿过所述网络的一路径的检测包。该检测签名的变化取决于该网络对所述检测包响应的方式。某些网络特性则倾向使检测签名呈现特有的模式。可以选择该检测签名中所包含的资料以致于不同的网络特性使该检测签名呈现独特的模式。该检测签名还会随所采用的特定一套检测包组的特性变化,例如,该检测包的尺寸、数据包之间的间隔、发送检测包的数量等。
图1所示为一网络10的一部分。网络10包括一网络装置14的配置(该网络装置可包括诸如路由器、交换器、桥接器、网间连接器、网络集线器等)。网络装置14是由数据链路16互相连接。该数据链路可包括实际的媒体段诸如电线和光缆等或是传输型式媒体诸如无线电链路、激光链路、超声波链路等。一分析系统17与网络10连接。
为了沿路径34发送脉冲串检测包以及接收其经过路径34后的检测包,一些机械装置还与网络10连接。所示的实施例的路径34是一闭合回路。数据包由检测包定序器20出发,经路径34到达一反射点18,然后传播回到检测包定序器20。路径34不一定是闭合回路。例如,分派检测包的机构可与经过路径34后接收检测包的机构分开。
检测包定序器20记录有关分派数据包和接收返回数据包的时间的资料。
所示的实施例中,检测包定序器20与网络14连接,其分派脉冲串(或“组”或“列”)30,各串包括一个或多个检测包32。如图2所示,脉冲串30中每一数据包32的尺寸为S。在以太网中,S一般在约46字节至约1500字节范围内。分派一数据包所需的时间以S/R表示和取决于该数据包放置在网络上的速率R。逐一分派脉冲串30中的数据包。分派脉冲串30中个别的数据包32时,顺序地分派的相邻数据包32之间具有一时间差Δt0。一般来说,对脉冲串30中全部数据包,S和Δt0不需要恒定,尽管每一脉冲串30中全数据包的S和Δt0均相同则更方便。
所示的实施例中,路径34由检测包定序器20通过路由器14A,14B和14C至一计算机19,该数据包由此再通过路由器14C,14B和14A发送回检测包定序器20。这例子中,路径34是一闭合回路。有不同的方式可使数据包32经过一闭合回路34。例如,数据包32可包括ICMP ECHO(网际网络控制讯息协议返回)数据包,其指向终端主机19,该主机自动地产生一ICMP ECHO REPLY(网际网络控制讯息协议返回应答)数据包以响应每一ICMP ECHO数据包。另一例子,数据包32可以是其他种类的数据包诸如根据TCP或UDP协议格式化的数据包。可把所述数据包传输至终端主机19,然后通过软体(诸如UDP回送端口监控程序)或终端主机19的硬体返回到检测包定序器20。
路径34也可以是开放的路径,其中在一位置上分发检测包32和经过路径34以后在不同的位置接收。
当数据包32沿路径34通过网络装置14和数据链路16时,个别的数据包32将有不同程度的延迟。一些数据包32会在输送中丢失。沿路径34的网络装置14和数据链路16的不同特性可通过观察脉冲串30中不同数据包的暂时分开如何变化,观察自脉冲串30中丢失的数据包的模式或由两者来判断。
例如,应当考虑可能出现的状况,如果路由器14C的带宽比路径34的其他部分的低和计算机19倾向丢失一些数据包。路径34中的这些问题会产生数据包32的脉冲串30,其相对于它们最初暂时分开被分散及丢失一些数据包之后又回到检测包定序器20。检测包定序器20为分析系统17提供有关脉冲串30的最初和返回状态的检测数据33。
图3的Van Jacobsen图表明一脉冲串30的数据包32的暂时分布如何可以随数据包依次通过一网络路径的低容量部分而变化。以该图的狭窄部分表示一低容量段。在这例子中,具有四个数据包32的脉冲串由图的左边的高容量段通过图中间的低容量段,再到图的右边的高容量段。数据包32在经过低容量段以后就展开。
分析系统17接收检测数据33。分析系统17可包括一程序控制计算机。分析系统17可聚集在一共用装置中或与检测包定序器20一起处于一共用位置上或可以分开。只要分析系统17能接收检测数据33,所述系统可设置在任何方便的位置。
取得检测数据33之前或正收集检测数据33的初始部分时,分析系统17可协调作初步检测。初步检测可包括一初始连通性检测,其中分析系统17使检测包定序器20沿待检测的路径传送检测包和探测是否在该路径的末端能接收该检测包。如果数据包没有沿该路径传播,所述路径就不能取得该数据包和分析系统17将显示错误信号。
该初步检测可包括一通过在路径中分派不同尺寸的数据包以及确定由该路径传送的最大尺寸的数据包是多大来检测该路径的MTU的测试。所述检测可作为执行初始连通性检测的一部分。最大数据包的数据包尺寸由检测包定序器20发送,而取得的检测数据33可以与初步检测中检测的MTU相同。
初步检测还包括探测初始连通性检测顺利进行但随后所有的数据包基本上全部丢失的情况。这表示路径中一网络装置没有响应。
初步检测可包括数据包经过该路径所需的时间的检测。可使一个或多个数据包的转接时间因异常的路由问题或路径配置不当而超时。当取得的检测数据33足够以建立一检测签名,分析系统17就能继续进行签名分析。
检测数据33包括有关数据包经过路径34的资料。该资料可包括有关丢包、数据包之间最后的分散的资料和诸如转发次数、转发地址、测定与报告MTU和错误标记。检测数据33可包括有关检测序列的资料,其包括一些变数诸如数据包尺寸(数据包中字节的数目)、脉冲串尺寸(脉冲串中数据包的数目)和初始数据包之间的分散(传输一脉冲串中数据包之间的时间)。检测数据33可包括所述变数的导数(例如,可由数据包之间的分布推导的数据包顺序)。高阶的变数可推导成为所述变数(例如,数据包之间分隔的分布中的数据包尺寸的分布)的混合。
检测数据33可包括数据,用这些数据可获得数据报(个别的数据包或等同的,长度为1的脉冲串)和数据包尺寸范围的脉冲串的统计。脉冲串可看作一整体,即当丢失任何构成脉冲串的数据包或无顺序时看作丢失脉冲串。个别的脉冲串数据包的统计可以分开收集。
本发明当前最佳的实施例中,每一尺寸的数据包均有多个数据包的脉冲串沿路径传输。最佳的脉冲串由不同数量的数据包组成。最佳的脉冲串包括由单一数据包(数据报)组成的两脉冲串和其他包含合理量数据包的脉冲串。例如,所述脉冲串可包括由2至100或者更多的数据包。数据包的采用数量是一种折衷选择,选择少量数据包以使快速完成测试而对网络业务的影响小或采用大量数据包以提高最终测定的质量。一些特定的情况中,具有8至30数据包的脉冲串与优选的具有10至20数据包的脉冲串一样提供一良好的平衡。本发明的原型实施例中,采用10数据包的脉冲串取得好的效果。
最佳的实施例中,检测包定序器20把数据包32分派到具有很小间距的脉冲串中,以使初始数据包之间的间隔比最后数据包之间的间隔的到达时间更小。在这种情况下,分析系统17的初始数据包之间的间隔可接近很一小数值,例如零。
分析系统17由检测数据33建立一检测签名。该检测签名可包括一组由检测数据33导出的数字。最佳的实施例中,所述检测签名包括丢包的资料。丢包通常是影响网络性能的最主要因素。该检测签名还包括数据包次序(就脉冲串而论)和脉冲串之间的时限的资料。丢包的性质、次序和时限会受到检测时网络情况影响,其包括瓶颈容量、交通混线、传播延迟至终端主机、个别数据包的尺寸和每一脉冲串的数据包数量。一签名可以只对丢包方面和相对数据包尺寸的方面实行。
一些实施例中,检测签名至少部分地由许多连续函数表示。该函数可包括丢包的统计、往返时间和数据包之间的最后间隔。所述签名还包括由其他函数(例如,最后数据包顺序)导出的高阶函数。在一些实施例中,检测签名至少部分地中许多离散函数表示,其包括业已离散的连续函数。这包括只采用一定量的离散值用作代表可能值的连续性。可指定所述变数在固定的范围内。
检测签名可使与数据包32的许多不同的脉冲串30有关的检测数据33与具有不同数量的数据包和/或不同尺寸的数据包的不同脉冲串结合。在本发明现行最佳的实施例中,签名基于检测数据,其来自许多种数据包的脉冲串,并且不同种类的脉冲串包括不同尺寸数据包的脉冲串。该脉冲串可包括具有少量数据包的脉冲串(例如,以太网络中可容许最小数据包的尺寸为46字节或另一种小于可容许最小数据包尺寸的三倍),其他包括具有大量数据包的脉冲串(例如,以太网络中可容许最大的数据包为1500字节或是最大可容许数据包尺寸为90%至100%多的范围中)和其他其中组成数据包的尺寸界于大与小尺寸之间的脉冲串。
本发明的实施例中,检测签名包括丢包函数(包含接收与发送数据包的比率);一具有上限的往返时间(任何在往返时限以后接收的数据包均视为丢失)和/或一数据包之间的最后间隔(其中当保持所述脉冲串时,所有值均需要是正的)。在这种情况下,假如一数据包之间的间隔是负值,其表示该脉冲串中的数据包没有按顺序接收。
签名可包括二维矩阵,该矩阵包含数据报和数据包的脉冲串(数据包的尺寸不同)所得的统计。图4所示为可能发生的单一数据包尺寸的数据包组丢失统计。在图4中,每一条均代表数据包100%发送。所述的条由左至右对应于数据报、脉冲串、脉冲串数据包的平均值、脉冲串数据包的第一时刻和一尺寸为10的脉冲串的个别脉冲串数据包。
表1为矩阵的例子,其代表一可能发生的检测签名。该“字节”列为每一排数据包的尺寸。“Dgram”包括数据报的丢包统计(例如,接收数据包与发送数据包的比率),该脉冲串排包括脉冲串丢失统计(例如,接收脉冲串与发送脉冲串的比率),“BrAvg”排包括丢包统计的平均值,“BrMom”排包括脉冲串中丢包的第一时刻和“脉冲串1”至“脉冲串10”的排包括具有10个数据包的脉冲串中由第一至第十数据包的丢包统计。
表1-检测签名 |
字节 |
46 |
1000 |
1500 |
Dgram |
.98 |
.97 |
1.0 |
脉冲串 |
.91 |
.56 |
0.11 |
BrAvg |
.91 |
.82 |
.39 |
BrMom |
.01 |
-.13 |
-.28 |
脉冲串1 |
0.89 |
0.85 |
0.91 |
脉冲串2 |
0.91 |
0.88 |
0.87 |
脉冲串3 |
0.93 |
0.8 |
0.3 |
脉冲串4 |
0.88 |
0.78 |
0.21 |
脉冲串5 |
0.94 |
.67 |
0.34 |
脉冲串6 |
0.87 |
0.85 |
0.41 |
脉冲串7 |
0.9 |
0.71 |
0.22 |
脉冲串8 |
0.91 |
0.62 |
0.32 |
脉冲串9 |
0.87 |
0.59 |
0.46 |
脉冲串10 |
0.89 |
0.77 |
0.21 |
丢包率的范围由0(表示所有数据包丢失)至1(表示没有丢失数据包)。该数据包矩的范围由-1(表示脉冲串的末端有严重丢失)至+1(表示脉冲串的开端有严重丢失),0则表示均匀分布的丢包或没有严重丢包。
平均丢包和丢包的第一时刻是代表个别脉冲串数据包的平均或整体状态以及该数据包的分布的近似形状。以下式定义为平均丢包:
n是每一脉冲串中的数据包的数量(表1的例子是n=10)和li是脉冲串中第ith数据包的丢包率。以下说明脉冲串中的丢包的第一时刻:
所述实例签名还可通过类似表1(含理想值)的矩阵表示。例如,一网络采用数据包脉冲串检测并展示以下的状态:
·路径34的末端接收所有数据报(单一数据包的脉冲串),即是返回,如果路径34的开端与末端是同一位置;
·1046字节的数据包的脉冲串中所有数据包均返回;
·很少46字节的数据包的脉冲串丢失;
·大部分1000字节数据包的脉冲串中的数据包均返回;
·一些1000字节的数据包的脉冲串返回;
·一些1500字节的数据包的脉冲串中的数据包返回;
·没有任何1500字节的数据包的脉冲串返回;以及
·1000与1500字节的数据包的脉冲串中的丢包,其趋向在脉冲串的末端丢失(1000字节数据包的脉冲串中的最后一个或两个数据包和1500字节数据包的脉冲串中的最后四个或五个数据包)。
所述的状态可用作表2的矩阵的例子。
表2-签名例子 |
字节 |
46 |
1000 |
1500 |
Dgram |
1 |
1 |
1 |
脉冲串 |
1 |
.1 |
0 |
BrstAvg |
1 |
.85 |
.5 |
BrstMom |
0 |
-.25 |
-.35 |
脉冲串1 |
1 |
1 |
1 |
脉冲串2 |
1 |
1 |
1 |
脉冲串3 |
1 |
1 |
1 |
脉冲串4 |
1 |
1 |
1 |
脉冲串5 |
1 |
1 |
1 |
脉冲串6 |
1 |
1 |
1 |
脉冲串7 |
1 |
1 |
0 |
脉冲串8 |
1 |
1 |
0 |
脉冲串9 |
1 |
0 |
0 |
脉冲串10 |
1 |
0 |
0 |
分析系统17使检测签名和签名库中的实例签名作比较,该签名库包含一些以签名为例的网络状态。该签名库可包括一数据存储器,其中实例签名可以一个或多个数据结构得到。系统17可通过计算检测签名和实例签名之间的相似程度或“吻合度”来对检测签名和实例签名进行比较。
为了使检测签名和实例签名比较,一些容许误差需要便于测量中的统计方差。理想中,每一检测签名均找到与一实例签名恰好配匹。即使检测数据中有噪声或其他状态存在,这种匹配应当理想地被正确地识别。
采用吻合度的度量使检测签名的每一数值与众多实例签名的每一数值比较。例如,可通过计算以下一函数来取得吻合度的度量:
式中:
C为[0,1]的范围中一很重要的系数;
x为检测数据33推导的数值;
m为[0,1]的范围中的理想化的(或“中位数”)数值;以及
λ为一因子,其指出偏离理想化的数值的容限程度和其范围为[0,∞]。一组C和λ的数值(或其他加权和/或吻合系数)可与每一实例签名联合一起。
图5所示为特定选择(C,m,λ)下作为χ的函数的G曲线。对一特定统计的吻合度基值取决于其与所述函数的交叉点。G的最高值出现在中位数m。G离开m越远则越小。G具有高斯曲线的形状。
本发明的最佳实施例中,每一实例签名均包括一组理想化的数值和每一理想化的数值均与确定吻合度的度量如何施加在理想化的数值的参数有关。例如,如果该吻合度的度量包括一高斯函数G,可为每一理想化的数值给定C和λ。实例签名可括三个一组的参数(C,m,λ)矩阵,为了最佳的吻合可调整参数到由具有特定问题的网络呈现的状态。
所列高斯公式(3)可以供签名的相对直觉地调整之用。例如,对特定值设定C=0.0,以使计算G时可忽略该特定值。设定λ为一小或大的数值,这使吻合紧配或松配。m设定为该理想化数值。
可用诸如卡方函数的函数代替G来评定吻合度。
检测签名和实例签名之间整体吻合度,例如,可通过把矩阵中每一吻合度数值求和或求平均值得到。例如,可由以下的公式求出一检测签名(诸如表I中的检测签名)和一实例签名之间的整体吻合度:
为了更佳地比较检测签名与其他实例签名之间的吻合度,可使公式(4)的总和规格化。这可依据一检测签名的吻合度与无损网络(没有丢包)获得的吻合度和假设该检测签名与实例签名是完全一样的所获得的吻合度的比较来做到。例如,可通过计算以下公式(5)使吻合度规格化:
式中:
Fnormalized是规格化的吻合度,Fnoloss是无损网络中获得的吻合度和Fmatch是假设检测与实例签名完全一样所获得吻合度。
可使该规格化吻合度大小与一最小阀值比较。例如,该最小阀值是0.2。如果规格化吻合度大小大于最小的阀值,这样便可认为检测签名与实例签名匹配。否则,认为该检测签名不与所述实例签名匹配。还可以使该规格化吻合度大小与一较大的第二阀值比较。例如,该第二阀值可以是0.3。如果该吻合度大小超过第二阀值,则可认为所述检测签名与实例签名之间十分匹配。
可使所述检测签名与在许多影响网络的状态中的实例签名比较。例如,该实例签名可包括代表出现以下状态的网络行为的签名,诸如:
·一网络装置中的小行列(当行列占满时,丢弃到达的数据包);
·非常拥塞或有损耗链路(其对所有类型和尺寸的数据包引起间歇性的大量丢包);
·半双向/全双向冲突(一网络装置在一数据链路的一端是全双向模式,数据链路的另一端的网络装置则是半双向式)-分开的签名可代表上游网络装置是全双向模式和下游网络装置是半双向模式和反之亦然;
·探测到不协调的MTU(在路径上一网络装置或数据链路采用一比预期MTU小的MTU);
·长的半双向链路(一半双向段包括一过长的传输媒体,其中数据包之间的冲突不能适当地处理);以及
·媒体错误(由于有噪链路或媒体错误而丢包,这些产生随机的冲突或信号丢失)。
实例签名可以实验方式通过使一检测网络具有一特定的状态,然后观察检测包通过该检测网络的行为,再在理论上预测有关网络状态如何影响检测包的顺序或两者来获得。以下,将叙述实例签名的一非完全列举的取样检验。当然,一实例签名的精确形式将取决于别的因素中采用的检测包的顺序的性质。
表3所示为一过长的半双向链路状态的可能的实例签名。这状态代表数据包冲突,特别是高拥塞的时段。该状态可能出现在一半双向链路长于一冲突域(其在目前10Mbs链路上可约2000米而在100Mbs的链路上可约为200米)。如表3所示,所述状态使较小的数据包具有较大的损耗。
表3-实例签名-过长的半双向链路 |
字节 |
46 |
1000 |
1500 |
Dgram |
1 |
1 |
1 |
脉冲串 |
.8 |
.9 |
1 |
BrAvg |
.6 |
.9 |
.95 |
BrMom |
-.1 |
0 |
0 |
脉冲串1 |
1 |
1 |
1 |
脉冲串2 |
.95 |
.95 |
.98 |
脉冲串3 |
.95 |
.95 |
.98 |
脉冲串4 |
.93 |
.95 |
.98 |
脉冲串5 |
.9 |
.95 |
.98 |
脉冲串6 |
.87 |
.95 |
.98 |
脉冲串7 |
.82 |
.95 |
.98 |
脉冲串8 |
.78 |
.95 |
.98 |
脉冲串9 |
.75 |
.95 |
.98 |
脉冲串10 |
.7 |
.95 |
.98 |
表4所示为一小缓冲器状态的可能的实例签名。这状态代表数据包的容量超过一些固定限额时数据包被丢弃。如表4所示,这状态使在脉冲串的末端上数据包具有较大的损耗,对较大的数据包脉冲串的影响则大于对较小的数据包。
表4-实例签名-小的缓冲器 |
字节 |
46 |
1000 |
1500 |
Dgram |
1 |
1 |
1 |
脉冲串 |
0.8 |
0.1 |
0 |
BrAvg |
1 |
0.85 |
0.5 |
BrMom |
0 |
-0.25 |
-0.35 |
脉冲串1 |
1 |
1 |
1 |
脉冲串2 |
1 |
1 |
1 |
脉冲串3 |
1 |
1 |
1 |
脉冲串4 |
1 |
1 |
1 |
脉冲串5 |
1 |
1 |
1 |
脉冲串6 |
1 |
1 |
1 |
脉冲串7 |
1 |
1 |
0.4 |
脉冲串8 |
1 |
0.9 |
0.1 |
脉冲串9 |
1 |
0.4 |
0 |
脉冲串10 |
1 |
0.1 |
0 |
表5所示为一半/全双向冲突的可能的实例签名。这状态可出现,如果由于错误配置或由于不能自动配置协商的结果,在一给定链路上的两介面不采用相同的双向模式。如果上游介面采用半双向和下游主机采用完双向,然后就出现半双向冲突状态。这状态代表在被丢脉冲串开始时的数据包。这对较大尺寸的数据包更为显著。
表5-实例签名-半/全双向冲突 |
字节 |
46 |
1000 |
1500 |
Dgram |
1 |
1 |
1 |
脉冲串 |
0.5 |
0 |
0 |
BrAvg |
0.9 |
0.3 |
0.3 |
BrMom |
0 |
0.5 |
0.7 |
脉冲串1 |
0.8 |
0 |
0 |
脉冲串2 |
0.8 |
0 |
0 |
脉冲串3 |
0.8 |
0 |
0 |
脉冲串4 |
0.8 |
0.1 |
0 |
脉冲串5 |
0.8 |
0.3 |
0 |
脉冲串6 |
0.8 |
0.8 |
0.05 |
脉冲串7 |
0.8 |
0.92 |
0.2 |
脉冲串8 |
0.8 |
1 |
0.7 |
脉冲串9 |
0.9 |
1 |
0.95 |
脉冲串10 |
1 |
1 |
1 |
表6所示为半/全双向冲突的可能实例签名。这状态可出现,如果在由于错误配置或由于不能自动配置协商的结果,在一给定的链路上的两介面不采用相同的双向模式。如果上游介面采用全双向和下游主机采用半双向,然后就出现全/半双向冲突状态。这状态代表在被丢脉冲串结束时的数据包。这对较大尺寸的数据包更为显明。
表6-实例签名-全/半双向冲突 |
字节 |
46 |
1000 |
1500 |
Dgram |
1 |
1 |
1 |
脉冲串 |
0.7 |
0.2 |
0 |
BrAvg |
1 |
0.6 |
0.4 |
BrMom | |
-0.2 |
-0.5 |
脉冲串1 |
1 |
1 |
1 |
脉冲串2 |
1 |
1 |
1 |
脉冲串3 |
1 |
1 |
0.9 |
脉冲串4 |
1 |
0.95 |
0.8 |
脉冲串5 |
1 |
0.85 |
0.3 |
脉冲串6 |
1 |
0.3 |
0.2 |
脉冲串7 |
1 |
0.3 |
0.2 |
脉冲串8 |
1 |
0.2 |
0.2 |
脉冲串9 |
1 |
0.2 |
0.2 |
脉冲串10 |
1 |
0.2 |
0.2 |
表7所示为有损耗状态的可能实例签名。这状态出现,如果拥塞或一故障的数据包处理装置丢失一定百分比数据包。这状态代表被随机丢失的数据包。
表7-实例签名-丢失状态 |
字节 |
46 |
1000 |
1500 |
Dgram |
0.75 |
0.75 |
0.75 |
脉冲串 |
0.75 |
0.15 |
0.15 |
BrAvg |
0.75 |
0.75 |
0.75 |
BrMom |
0 |
0 |
0 |
脉冲串1 |
0.75 |
0.75 |
0.75 |
脉冲串2 |
0.75 |
0.75 |
0.75 |
脉冲串3 |
0.75 |
0.75 |
0.75 |
脉冲串4 |
0.75 |
0.75 |
0.75 |
脉冲串5 |
0.75 |
0.75 |
0.75 |
脉冲串6 |
0.75 |
0.75 |
0.75 |
脉冲串7 |
0.75 |
0.75 |
0.75 |
脉冲串8 |
0.75 |
0.75 |
0.75 |
脉冲串9 |
0.75 |
0.75 |
0.75 |
脉冲串10 |
0.75 |
0.75 |
0.75 |
图8所示为不协调的MTU状态的可能实例签名。该状态出现,如果在一主机或其他数据包处理装置报告或者被发现容许一些MTU并接着采用一较小的MTU。所述状态代表数据包大于一较小的被丢MTU。
表8-实例签名-不协调的MTU |
字节 |
46 |
1000 |
1500 |
Dgram |
1 |
1 |
0 |
脉冲串 |
1 |
1 |
0 |
BrAvg |
1 |
1 |
0 |
BrMom |
0 |
0 |
0 |
脉冲串1 |
1 |
1 |
0 |
脉冲串2 |
1 |
1 |
0 |
脉冲串3 |
1 |
1 |
0 |
脉冲串4 |
1 |
1 |
0 |
脉冲串5 |
1 |
1 |
0 |
脉冲串6 |
1 |
1 |
0 |
脉冲串7 |
1 |
1 |
0 |
脉冲串8 |
1 |
1 |
0 |
脉冲串9 |
1 |
1 |
0 |
脉冲串10 |
1 |
1 |
0 |
表9所示为媒体错误状态的可能实例签名。所述状态可出现,如果一些因素使杂乱噪声进入一数据链路诸如安放不良的卡、低劣的连接器、电磁干扰或不好的媒体。该签名类似有损耗的状态,但较大的数据包受到的影响大于较小的数据包。
表9-实例签名-媒体错误 |
字节 |
46 |
1000 |
1500 |
Dgram |
0.9 |
0.8 |
0.7 |
脉冲串 |
0.75 |
0.5 |
0.25 |
BrAvg |
0.9 |
0.8 |
0.7 |
BrMom |
0 |
0 |
0 |
脉冲串1 |
0.9 |
0.8 |
0.7 |
脉冲串2 |
0.9 |
0.8 |
0.7 |
脉冲串3 |
0.9 |
0.8 |
0.7 |
脉冲串4 |
0.9 |
0.8 |
0.7 |
脉冲串5 |
0.9 |
0.8 |
0.7 |
脉冲串6 |
0.9 |
0.8 |
0.7 |
脉冲串7 |
0.9 |
0.8 |
0.7 |
脉冲串8 |
0.9 |
0.8 |
0.7 |
脉冲串9 |
0.9 |
0.8 |
0.7 |
脉冲串10 |
0.9 |
0.8 |
0.7 |
分析系统17使检测签名和多个实例签名比较。如果有任何一个实例签名与检测签名匹配,分析系统17将选择最佳的匹配。如果有任何一个实例签名与检测签名匹配,分析系统17便产生一信息或信号以为用户或其他系统识别一个或多个匹配实例签名。该信息或信号可包括设置标记。
当找到一检测签名与一个或多个实例签名匹配时,分析系统17可考虑额外的网络测量,以便协助确定那个实例签名应当被看作最佳匹配。一专家系统组件可实现所考虑的额外测量。
额外的测量可包括以下测量:
·由数据包或脉冲串丢失统计导出的测量(例如,每一返回脉冲串的总字节);
·由其他统计导出的测量(例如,相对于一些关建性的阀值传播延迟);
·相对测量(例如,一签名上的较高程度匹配不接受另一签名);以及
·检测状态(例如,如果设定脉冲串数据包的数目太少,则不接受某一签名)。
一些额外测量可基于由除了检测包定序器20以外的来源接收的资料。例如,分析系统17可由网络装置14接收ICMP信息。额外测量可基于所述ICMP信息中的资料。
ICMP(互联网控制信息协议)在RFC792中备有证明文件。该协议带有网络工作的相关信息。ICMP信息可包括不同种类的资料,其包括:
·识别网络的错误,诸如所述网络的一主机或整个部分因某一种故障而不能取得;
·报告网络拥塞;以及
·通知数据包超时(这出现在一数据包在超时期间后,例如,8秒返回,便看作丢包)。
分析系统17还接收有关网络布局和网络部分的最高传送单元(MTU)等资料。分析系统还接收RMON或SNMP的信息。
本发明的一些实施例中,当确定一检测签名与两个或两个以上的实例签名匹配后的某一时刻,分析系统17采用一连串规则以使识别一最佳匹配的实例签名。所述规则可基于额外的测量。该规则对匹配的实例签名可以是特定的。分析系统17通过采用所述规则可以除去一个或多个匹配的实例签名或可取得施加在吻合值的加权因数。
图6所示为一流程图,其表明根据本发明一实施例的分析检测数据的一方法100的流程。方法100始于本实施例中所用的标记,以在块110中指出检测签名和实例签名的匹配。块114至120提供几个初步检测。块114检测所有的数据包未能在一路径末端被接收的状态。假如这样的话,错误则返回块116。否则,在块117中,使经过路径的数据包所需的时间与阀值比较。如果所述时间过多,在块118中设置一标记和该方法在块120中继续。换句话说,方法100进行至块120,以测定所述检测数据是否足够继续进行。如果不,方法100返回块122中。如果具有足够的检测数据,在块125中由检测数据形成一检测签名。在块127中,使检测签名与多个实例签名比较。该比较是通过计算检测签名和每一实例签名之间的吻合度作出的。在检测签名与实例签名匹配的每一情况下,设置一标记。
在块130中,方法100设置不同的观察标记以相应该网络的观察状态。所述观察标记可包括为指出以下状态所设置的标记:
·过多的ICMP网络不能得到的信息;
·过多的ICMP主机不能得到的信息;
·过多的ICMP目的地不能得到的信息;
·过多的ICMP端口不能得到的信息;
·过多的ICMP协议不能得到的信息;
·过多的ICMP要求分段信息;
·过多的ICMP TTL届满信息;
·过多的ICMP来源抑制信息;
·过多的ICMP重定向信息;
·过多的ICMP路由器公告信息;
·过多的ICMP系数问题信息;
·过多的ICMP保安问题信息;
·过多的未经请求的数据包;
·过多的缺乏顺序的数据包;
·探测非标准MTU;
·‘黑洞’路程段;
·‘灰洞’路程段;或
·过多的超时数据包。
在块132中,用规则得出结论。该结论可包括诸如识别一种与检测签名最佳匹配的实例签名。该规则可基于不同的因素,其可包括以下的一个或多个因素:
·所述检测签名和每一实例签名之间的匹配程度(例如,FIT);
·不同实例签名的FIT相对值;
·块130中设置的观察标记的值;以及
·其他额外的测量。
所述的规则可包括个别的规则组,其与每一实例签名相关。可以利用采用所述个别规则组的结果,以使个别实例签名的FIT值增加或减少。例如,如果路径34包括一比率限制列,任何人会预期为中等数据包通过的字节总数将在为大数据包通过的字节总数的10%以内。一与比率限制列状态的实例签名相关的个别的规则组可以比较为大和中等尺寸数据包通过的总数。如果所述总数在彼此的10%以内,则要大大增加与比率限制列相关的FIT。
当采用个别规则组以后,所述规则可继续得出一有关与检测签名最佳匹配的实例签名结论(预先考虑由个别规则组调整的FIT值)。
在返回块134中,返回可包括一组标记的资料。可把该标记当作一用户介面的输入,该介面告知一用户影响网络的状态、存储该状态在文档和/或用作进一步分析或控制该网络或控制利用该网络的应用。
本发明的一些执行包括计算机处理器,其执行软体指令以使所述处理器实施本发明的方法。本发明还可用程序产品的形式提供。该程序产品可包括任何媒体,其具有一组包括指令的计算机可读的信号,当通过计算机处理器执行时,其使数据处理器实施本发明的方法。该程序产品可以是任何多种形式。该程序产品可包括,例如,实际媒体诸如包含软磁盘的数据储存媒体、硬磁盘驱动器、光数据存储媒体(包括光盘驱动器和DVD)、电子数据存储媒体(包括ROM和快RAM)等或发送型媒体诸如数字或模拟通讯链路。
以上所指的元件(诸如一软体模块、处理器、汇编器、装置和电路等),除非另外指出,所述元件(包括参照“意义”)应理解为等同包括任何实施等同功能的元件(即等同功能),所述元件包括与本发明公开不一样的结构,其进行本发明的实施例的功能。
正如本领域技术人员按照以上的揭示会明显地看到的那样,在不脱离本发明的精神或范围之下,在实施本发明之中,还可作出许多变换和改型。例如:
·一个或多个额外测量,诸如以上谈及的一个或多个额外测量可包括检测签名和实例签名;
·所述检测和实例签名可采用除了二维矩阵的形式以外的形式存储。因此,根据以下权利要求所限定的内容将构成本发明的保护范围。