CN117795921A - 可扩缩事件驱动自动诊断系统 - Google Patents

可扩缩事件驱动自动诊断系统 Download PDF

Info

Publication number
CN117795921A
CN117795921A CN202280055112.XA CN202280055112A CN117795921A CN 117795921 A CN117795921 A CN 117795921A CN 202280055112 A CN202280055112 A CN 202280055112A CN 117795921 A CN117795921 A CN 117795921A
Authority
CN
China
Prior art keywords
network
configuration
data packet
analyzers
configuration state
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.)
Pending
Application number
CN202280055112.XA
Other languages
English (en)
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.)
Google LLC
Original Assignee
Google LLC
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 Google LLC filed Critical Google LLC
Publication of CN117795921A publication Critical patent/CN117795921A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0677Localisation of faults
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0866Checking the configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0866Checking the configuration
    • H04L41/0873Checking configuration conflicts between network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0894Policy-based network configuration management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • 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
    • H04L43/028Capturing of monitoring data by filtering

Abstract

用于可扩缩事件驱动自动诊断的方法(400)包括获得被配置为通过网络(175)从源地址传输到目的地地址的数据包(114)。该方法包括获得网络的更改列表(112)。该方法还包括基于网络模型(265)使用多个分析器(255)来分析数据包。该方法包括将网络的更改列表与数据包的分析相关联。该方法还包括基于网络的更改列表与数据包的分析之间的相关性来确定网络的配置状态(301)。该方法还包括向用户报告配置状态(12)。

Description

可扩缩事件驱动自动诊断系统
技术领域
本公开涉及可扩缩事件驱动的自动诊断系统。
背景技术
大多数网络中断(例如60-85%)可归咎于配置更改。由于云网络配置的复杂性,网络管理员很难跨许多不同的功能依赖项验证新配置。由于不同的原因,不同的区域发生变化,常常会发生意外的破损。通常还存在过时的、不一致的和/或不完整的配置,维护、发现和修复这些配置的成本很高,并且它们的存在会给客户的网络带来风险。
发明内容
本公开的一个方面提供了一种用于可扩缩事件驱动的自动诊断的方法。当由数据处理硬件执行时,该方法使得数据处理硬件执行包括获取被配置为通过网络从源地址传输到目的地地址的数据包以及网络的更改列表的操作。这些操作包括基于网络模型使用多个分析器来分析数据包。这些操作还包括将网络更改列表与数据包的分析相关联。
这些操作包括基于网络更改列表和数据包的分析之间的相关性来确定网络的配置状态。
这些操作包括向用户报告配置状态。
本公开的实施方式可以包括以下可选特征中的一项或多项。在一些实施方式中,多个分析器中的至少一个分析器包括分析默认规则集的默认分析器。在其他实施方式中,多个分析器中的至少一个分析器包括分析由用户提供的定制规则集的定制分析器。在这些实施方式中,定制规则集可以包括互联网协议(IP)范围分类。此外,默认规则集可以包括防火墙配置规则。在各种实施方式中,配置状态可以包括一个或多个配置错误、受一个或多个配置错误列表、或者用于调整网络配置的至少一个建议中的任意一项。
此外,分析数据包可以包括由多个分析器解析网络模型以检索网络信息。在一些实施方式中,操作包括获得指示网络的配置已经更改的指示以及被配置用于跨网络传输的第二数据包。在这些实施方式中,操作包括基于网络的更改的配置来确定多个分析器的子集。在这些实施方式中,操作包括基于网络模型使用多个数据包的子集来分析第二数据包。分析器。在这些实施方式中,操作还包括基于多个分析器的子集对数据包的分析来确定网络的第二配置状态。在这些实施方式中,操作包括向用户报告第二配置状态。
在一些示例中,操作包括,在自向用户报告配置状态以来已经过去了预定量的时间之后,基于对第二数据包的分析来确定网络的第二配置状态,并且向用户报告第二配置状态。
本公开的另一方面提供了一种用于可扩缩事件驱动的自动诊断系统的系统。该系统包括数据处理硬件和与数据处理硬件通信的存储器硬件。存储器硬件存储指令,当在数据处理硬件上执行这些指令时,使得数据处理硬件执行操作。这些操作包括获取被配置为通过网络从源地址传输到目的地地址的数据包以及网络的更改列表。这些操作包括基于网络模型使用多个数据包来分析数据包。分析器。这些操作还包括将网络更改列表与数据包分析相关联。这些操作包括基于网络更改列表和数据包的分析之间的相关性来确定网络的配置状态。这些操作包括向用户报告配置状态。
该方面可以包括一个或多个以下可选特征。在一些实施方式中,多个分析器中的至少一个分析器包括分析默认规则集的默认分析器。在其他实施方式中,多个分析器中的至少一个分析器包括分析由用户提供的一组定制规则的定制分析器。在这些实施方式中,定制规则集可以包括互联网协议(IP)范围分类。此外,默认规则集可以包括防火墙配置规则。在各种实施方式中,配置状态可以包括一个或多个配置错误、受一个或多个配置错误影响的资源的列表、或者用于调整网络配置的至少一个建议中的任意一项。
此外,分析数据包可以包括由多个分析器解析网络模型以检索网络信息。在一些实施方式中,操作包括获得指示网络的配置已经更改的指示以及被配置用于跨网络传输的第二数据包。在这些实施方式中,操作包括基于网络的更改的配置来确定多个分析器的子集。在这些实施方式中,操作包括基于网络模型使用多个分析器的子集来分析第二数据包。在这些实施方式中,操作还包括基于多个分析器的子集对数据包的分析来确定网络的第二配置状态。在这些实施方式中,操作包括向用户报告第二配置状态。
在一些示例中,操作包括,在自向用户报告配置状态以来已经过去了预定量的时间之后,基于对第二数据包的分析来确定网络的第二配置状态,并且向用户报告第二配置状态。
一种或多种实施方式的细节在附图和下面的描述中阐述。其他方面、特征和优点将从描述和附图以及权利要求中变得显而易见。
附图说明
图1是网络的可扩缩事件驱动自动诊断系统的示意图。
图2是图1的系统的示例性组件的示意图。
图3是图2的系统的示例性用户界面的示意图。
图4是可扩缩事件驱动自动诊断的方法的示例性操作布置的流程图。
图5是可用于实施本文描述的系统和方法的示例计算设备的示意图。
各个附图中相同的附图标记表示相同的元件。
具体实施方式
更新云计算项目中的网络配置可能很困难,因为即使是很小的错误也可能导致网络中断。例如,当更新网络防火墙时,管理员可能会无意中为网络正常运行所需的默认服务添加防火墙。更新网络配置时手动检查此类错误可能效率低下且不准确。即使更改不会立即导致网络中断,配置更改也可能不遵循建议的准则,从而导致日后出现问题。例如,当打开允许不受信任的外部流量的防火墙规则时,一项或多项服务的性能可能会降低,或者安全性可能会降低。
本文的实施方式包括监控云计算项目配置的系统,根据实时事件(即,网络设置的更改)触发基于配置的验证,识别错误/故障,将故障与更改关联起来以识别根本原因,和/或提供准确的建议来解决问题。该系统具有可扩缩性和自助服务性,可涵盖所有网络特征,帮助用户避免常见的配置设置失败或回退,并建议最佳实践以实现更好的安全性和性能。
现在参考图1,可扩缩事件驱动自动诊断系统100包括具有用户界面300的用户设备16。该用户设备16可以对应于任何计算设备,例如台式工作站、膝上型工作站或移动设备(即,智能手机)。用户设备16包括计算资源17(例如,数据处理硬件)和/或存储资源18(例如,存储器硬件)。用户设备16可以被配置为对网络175进行更改。例如,用户设备16可以被配置为具有对基于云的计算网络175的管理访问,其中用户12可以更改一个或多个网络配置设置。具体地,用户12可以更改网络175的任何适用的网络参数或设置,例如防火墙配置、IP地址、主机名、路由器地址等。
在一些实施方式中,用户设备16经由通信网络140与远程系统150(本文也称为云计算环境)通信。远程系统150可以是单个计算机、多个计算机或分布式系统(例如,云环境)具有可扩缩/弹性资源152,该可扩缩/弹性资源152包括计算资源154(例如,数据处理硬件)和/或存储资源156(例如,存储器硬件)。数据存储158(即,远程存储设备)可以覆盖在存储资源146上以允许一个或多个用户设备16或计算资源154可扩缩地使用存储资源146。在一些实施方式中,网络175是远程系统150内或远程系统150的一部分的云计算网络。网络140可以与网络175相同或不同。在一些示例中,远程系统150执行诊断模块200以提供对网络175进行的任何配置更改112的可扩缩事件驱动的自动诊断。在其他示例中,诊断模块至少部分地在用户设备16上(例如,在数据处理硬件17上)执行。
在一些实施方式中,用户设备16的用户12向网络175输入一个或多个配置更改112。例如,用户12更改网络175的防火墙设置/规则。诊断模块200可以实时地(即,当用户12更改网络175的一个或多个参数或设置时或之后不久)获得网络175的更改列表112。诊断模块200包括调度器210和配置检查器250。调度器210负责获得对网络175的更新(例如,更改列表112)并且将消息推送到配置检查器250。调度器210可以在接收到更新时推送消息,或者可以定期发送批量消息。因此,可以实时或以特定间隔(例如,每小时)测试对网络175的更改。响应于获得更改列表112,调度器210可以确定受更改列表112影响的一个或多个分析器255。调度器210向配置检查器250传送激活指示215,该激活指示215指示响应于更改列表112要激活的分析器255。每个分析器可以对应于特定的配置验证规则,该配置验证规则可以产生对不同故障原因和严重性的洞察。例如,特定分析器255针对网络175中的IP地址分配并且仅当对IP地址分配进行更改时被激活。因此,分析器255使得诊断模块200能够仅测试网络175中已经更改的配置(与响应于每个更改来测试整个网络175相反),从而允许测试更加高效、动态和可扩缩。在一些示例中,配置检查器250激活适当的分析器255(即,由指示215指示的分析器255)以使用网络模型265(代表网络175)来分析更改列表112中的每个更改112,以确定更改112是否导致任何错误和/或失败。在一些实施方式中,配置检查器250使用分析器255和网络模型265基于更改列表112针对网络175中的更改来测试示例数据包114。基于配置检查器250的输出,诊断模块200可以将配置状态301发送到用户设备16以在用户界面300处显示。
在一些实施方式中,调度器210获得用于通过网络175从源地址传输到目的地地址的数据包114(或者数据包114的指示或表示)。数据包114可以是用于测试对网络175的更新的测试消息。在其他实施方式中,数据包114可以是要通过网络175发送的真实消息(或者消息的指示或表示),由用户12提供和/或从网络175截取。响应于获得数据包114,调度器210确定受数据包114影响的一个或多个分析器255。调度器210可以发送激活指示215,该激活指示215指示响应于数据包114而被激活的分析器255。在一些示例中,配置检查器250激活适当的分析器255来分析数据包114,以确定当数据包114通过网络175从源地址传输到目的地址时,是否将导致任何错误和/或故障和/或问题。配置检查器250使用网络模型265来模拟/重建网络175。基于配置检查器250的输出,诊断模块200将配置状态301发送到用户设备16以在用户界面300处显示。在一些实施方式中,配置状态301基于网络175的更改列表112与使用分析器255和网络模型265对数据包114的分析之间的相关性,如下文更详细讨论的(图2)。
配置状态301可以指示关于网络175的当前或未来可操作性的任何适用信息。此外,配置状态301可以被呈现为图形、文本文档、电子表格或任何其他合适的形式。在一些实施方式中,配置状态301基于网络175的一个或多个最近的配置更改来指示网络175的当前状态。例如,调度器210可以实时地(即,一旦由用户12输入更改)获得更改列表112。诊断模块200可以响应于所获得的更改列表112来确定更新的配置状态301。替代地,调度器210以预定的间隔周期性地获得更改列表112和/或数据包114,并且相应地更新配置状态。
图1的系统仅出于说明性目的而呈现,并不旨在进行限制。例如,虽然仅示出了每个组件的单个示例,但是任意数量的组件16、175、200和150可以通信地耦合到系统100。此外,尽管一些组件被示出为位于云计算中环境150中,在一些实施方式中,这些组件可以托管在用户设备16上。或者,虽然一些组件被示为托管在用户设备16上,但是在一些实施方式中,这些组件托管在云计算环境150中。此外,在在各种实施方式中,组件200、210和/或250中的一些或全部在用户设备16上、远程地(诸如在云计算环境150中)、或以其某种组合托管。
图2包括图1的诊断模块200。如上所述,诊断模块200可以实施调度器210以获得输入,例如网络175的更改列表112和/或在网络175上传输的数据包114(或数据包114的指示)。在一些实施方式中,调度器210是驻留在诊断模块200外部的独立逻辑。在一些示例中,调度器210基于监视配置和事件更新(即,获得的输入112、114)来触发预期服务(即,分析器255)。在一些实施方式中,调度器210是用于多个网络175的通用模块。调度器210可以基于时间间隔和/或响应于所获得的输入112、114来周期性地发送指示215。例如,调度器210获得更改列表112中对网络175的每个更改,并将指示215作为批量消息推送,触发网络175的测试并指示分析器255在测试中被激活。在另一示例中,调度器210响应于对网络175做出的每个更改来发送指示215。此外,每个指示215可以包括数据包114的指示(测试数据包114或者在网络175上传送的实际数据包
114),以用于测试网络175。调度器210可以从诊断模块200外部的数据源获得输入112、114,并且可以实施流服务来处理实时事件。在其他实施方式中,调度器210出于协调目的周期性地(例如,每小时、每六个小时、每天等)处理网络175的快照。
可选地,调度器210确定对应于更改列表112和/或数据包114的一个或多个默认分析器255、255a和/或一个或多个定制分析器255、255b。默认分析器255a通常不需要任何用户输入/配置。换句话说,默认分析器255a可以是“开箱即用”规则。例如,通用网络配置包括一个或多个防火墙配置、IP范围等。默认规则255a在这些通用网络175上是公共的,并且通常适用于不同的客户和网络。默认分析器255a可以包括属于诸如服务、连接性、依赖性、安全性、优化等类别的分析器255。定制分析器255b由用户12基于特定网络175设置来配置。例如,用户网络可以包括定制的网际协议(IP)范围分类,其中用户12可以将源IP范围配置为目的地IP范围是可到达的、隔离的或通过特定路径到达的。示例性IP范围基于定制值并且对于用户网络175来说是唯一的。因此,当测试由于定制IP范围而对示例性网络175的更改时,定制分析器255b可能是必要的。在一些实施方式中,调度器210存储将每个分析器255映射到网络175的相关资源的基于规则的触发器214的列表。例如,定制分析器255b是特定组织的配置。当调度器210获得与特定组织相对应的数据包114时,调度器210可以使用基于规则的触发器214来查找相应的定制分析器255b。调度器210可以发送指示哪些分析器255适合于分析所获得的更改列表112和/或数据包114的激活指示215。
在一些实施方式中,调度器210分析所获得的输入112、114以确定配置检查器250是否应当执行(即,是否应当执行使用网络模型265的分析)。例如,调度器210接收第一数据包114并向配置检查器250发送激活指示215以分析数据包114以确定配置状态301。如果调度器210接收到基本上与第一数据包114类似的第二数据包114,则调度器确定不需要更新配置状态301。或者,如果第二数据包114与第一数据包114充分不同,则调度器210确定适当的分析器255(例如,使用基于规则的触发器214)并将激活指示215发送到配置检查器250以基于第二数据包114更新配置状态301(或确定新的配置状态301)。例如,调度器210响应于第一更改列表112而发送第一激活指示215,指示多个配置检查器250使用多个分析器255和网络模型265来分析在网络175上传输的第一数据包114,以确定配置状态301。调度器210然后获得新的更改列表112。响应于新的更改列表112,调度器210然后传送指示第二多个分析器255的第二激活指示215。这里,如果新的更改列表112包括原始更改列表112的一部分,则第二多个分析器255可以是第一多个分析器255的子集。配置检查器250然后使用第二多个分析器255和网络模型265来分析在网络175上发送的第二数据包114,以确定第二配置状态301。在另一个示例中,调度器210在自报告配置状态301以来已经过去了预定量的时间之后发送激活指示215。
配置检查器250可以使用分析器255和基于获得的输入112、114的网络模型265对网络175执行诊断。在一些实施方式中,配置检查器250通信地耦合到模型数据存储260以检索代表测试期间的网络175的网络模型265。配置检查器250基于激活指示215实施/执行分析器255,使得有效地执行对网络175的更改的诊断分析(即,仅触发相关分析器255)。例如,配置检查器250基于激活的分析器255来解析网络模型265,从而允许配置检查器250仅测试已经更改的网络175的配置。因此,当分析数据包114如何在网络175上传输时(使用网络模型265),配置检查器250仅测试更改的部分(基于更改列表112)而不是整个网络175。检查器250可以在每次配置检查(即,网络诊断)期间管理分析器255,并且基于对网络175和/或一个或多个网络模型265的更改根据需要合并和调整分析器255。
每个分析器255可以运行特定的配置验证规则,该规则可以产生具有不同故障原因和严重性的洞察。例如,互联网协议(IP)利用率分析器可以报告未使用的外部IP地址的低严重性洞察,或子网拥有超过80%的IP地址分配的中等严重性洞察。分析器255可以被分类为网络核心或服务。例如,网络核心分析器255包括基本虚拟私有云(VPC)设置和连接相关配置,例如IP地址、路由、防火墙、VPC对等、共享VPC、混合连接等。作为另一个示例,服务分析器255包括网络服务或托管服务。对于专注于验证到/从服务到其他网络端点的连接性的服务分析器255,连接性相关器270可以提供基于包的连接性模拟以识别妨碍可达性的配置问题。
配置检查器250可以基于用于分析网络175的更改列表112和/或在网络175上发送的数据包114的每个激活的分析器255的输出来生成结果225。结果225可以包括高详细说明被分析的网络175的资源数量以及分析中涉及的资源的级别概要。结果225还可以包括结果列表,其包括严重性类型(例如,低、警告、错误等)、配置错误、详细信息(例如,受影响的资源的列表、具体的更改,用于纠正错误)等等。
在一些实施方式中,相关器270使用故障相关模块272和来自洞察存储280的数据来处理结果225。相关器270可以用于提供基于包(即,数据包114)的连接模拟以识别妨碍可达性的配置问题。故障相关模块272可以提供根本原因分析,具体地,基于来自更改列表112的更改来关联可能是网络175中新发现的问题/故障的原因的更改。具体地,相关器270可以将结果225(其指示使用分析器255基于更改列表112并使用对应于网络175的网络模型265对在网络175上传输的包114的分析)以及更改列表112中的一个或多个更改关联起来。一个简单的示例,如果仅激活单个分析器255来测试对网络175的单个更改并且结果225指示网络故障,则相关器270可以将该故障与对应于单个分析器255的配置相关联。因此,相关器270将结果225与更改列表112相关联,以便识别在网络175上引起问题的更改。当调度器210触发/指示分析器255时,调度器210还可以发送更改列表112。相关器将更改列表112与新发现的洞察(即,结果225)相关联。结果225的每个部分可以包括用于描述故障类型以及什么资源是目标和/或负责的元数据。因此,相关器270可以使用元数据来将结果225与更改列表112进行比较,以识别导致网络175中的故障的一个或多个更改。在一些示例中,相关器270提供修复、纠正、或以其他方式基于历史数据(例如,通过建议当网络上不存在问题时在先前迭代中采用的设置175)缓解网络175的问题的建议。相关器270可以基于结果225和更改列表112之间的相关性来生成配置状态301。
在一些实施方式中,洞察存储280是持久性数据库,其存储分析器255和相关器270的当前和历史结果(例如,结果225),以能够支持用户对历史数据的查询。洞察存储280可以支持由用户12发起和/或由系统100自动检测的洞察状态转变。以这种方式,如果问题得到解决,则相关器270可以能够使用历史数据来确定一个或多个更改,这导致了网络175的解决。
图3包括显示配置状态301的示例用户界面300。配置状态301可以包括报告列表。在一些示例中,每个报告包括与网络175相对应的特定故障或发现。例如,配置状态301指示配置错误304的列表(即,不正确和/或可能导致网络175故障或操作低效或无效)以及受一个或多个配置错误304影响的资源302。在一些实施方式中,配置状态301包括用于调整网络175的配置的一个或多个建议。例如,配置状态301提供替换配置(未示出)和/或可以补救配置错误304的一系列输入。在另一示例中,配置状态301指示应当启用防火墙或者应当允许一个或多个源通过防火墙。图3的示例配置状态301并不旨在进行限制,并且网络175的可操作性的任何指示可以被包括作为配置状态301的一部分。此外,配置状态301可以在获得新的输入时被更新。例如,如果对网络175做出一个或多个更改,则诊断模块200获得更改列表112并相应地更新(或确定新的)配置状态301。
图4是可扩缩事件驱动自动诊断系统的方法400的示例性操作布置的流程图。方法400可以由图1的可扩缩事件驱动自动诊断系统100和/或图5的计算设备500的各个元件来执行。例如,图1的远程系统150的数据处理硬件154可以执行存储在存储器硬件156上的指令以使数据处理硬件154执行方法400的操作。在操作402,方法400包括获取被配置为通过网络175从源地址传输到目的地址的数据包114。在操作404,方法400包括获得对网络175的更改列表112。在操作406,方法400包括基于网络模型265使用多个分析器255分析数据包114。在操作408,方法400包括将网络175的更改列表
112与数据包114的分析相关联。在操作410,方法400包括基于网络175的更改列表
112与数据包114的分析之间的相关性来确定网络175的配置状态301。在操作412,方法400包括向用户12报告配置状态301。
图5是可用于实现本文档描述的系统和方法的示例计算设备500的示意图。计算设备500旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作站、个人数字助理、服务器、刀片式服务器、大型计算机、和其它合适的计算机。本文所示的部件、它们的连接和关系、以及它们的功能仅仅旨在作为示例,并且不旨在限制本文档中描述的和/或者要求保护的本发明的实施。
计算设备500包括:处理器510(例如,数据处理硬件)、存储器520、存储设备530、连接至存储器520和高速扩展端口550的高速接口/控制器540、和连接至低速总线570和存储设备530的低速接口/控制器560。通过使用不同的总线将每个部件510、520、530、540、550、和560互相连接,并且可以将上述每个部件安装在公共主板上、或者根据需要以其它的方式安装上述每个部件。处理器510可以对在计算设备500内执行的指令进行处理,指令包括存储在存储器520中或者存储设备530上以在外部输入/输出设备上显示图形用户界面(GUI)的图形信息的指令,外部输入/输出设备诸如为耦合至高速接口540的显示器580。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多种存储器一起使用。同样,可以连接多个计算设备500,每个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器系统)。
存储器520将信息非暂时性地存储在计算设备500内。存储器520可以是计算机可读介质、(多个)易失性存储器单元、或者(多个)非易失性存储器单元。非易失性存储器520可以是用于在暂时或者持久基础上存储供计算设备500使用的程序(例如,指令序列)或者数据(程序状态信息)的物理设备。非易失性存储器的示例包括,但不限于:闪存和只读存储器(ROM)/可编程只读存储器(PROM)/可擦除编程只读存储器(EPROM)/电可擦除编程只读存储器(EEPROM)(例如,通常用于诸如为引导程序的固件)。易失性存储器的示例包括:但不限于,随机存取存储器(RAM)、动态随机存取存储器(DRAM)、静态随机存取存储器(SRAM)、相变存储器(PCM)、以及光盘或者磁带。
存储设备530能够为计算设备500提供海量存储。在一些实施方式中,存储设备530是计算机可读介质。在各种不同的实施方式中,存储设备530可以是软盘设备、硬盘设备、光盘设备、或者磁带设备、闪存或者其它相似的固态存储器设备、或者设备阵列,包括:在存储区域网络或者其它配置中的设备。在附加实施方式中,计算机程序产品有形地体现为信息载体。计算机程序产品包含指令,该指令在被执行时执行一种或者多种方法,诸如,上文描述的方法。信息载体是计算机可读介质或者机器可读介质,诸如,存储器520、存储设备530、或者在处理器510上的存储器。
高速控制器540管理计算设备500的带宽密集型操作,而低速控制器560管理较低带宽的密集型操作。这种功能分配仅仅是示例性的。在一些实施方式中,高速控制器540耦合至存储器520、显示器580(例如,通过图形处理器或者加速器)耦合至高速扩展端口550,该高速扩展端口1150可以接受各种扩展卡(未示出)。在一些实施方式中,低速控制器560耦合至存储设备530和低速扩展端口590。低速扩展端口590可以包括各种通信端口(例如,USB、蓝牙、以太网,和无线以太网),可以,例如通过网络适配器,耦合至一个或者多个输入/输出设备,例如,键盘、指向设备、扫描器、或者诸如交换机或者路由器的网络设备。
如图所示,可以利用多种形式来实施计算设备500。例如,可以将它实施为标准服务器500a、或者多次实施在一组这种服务器500a中、或者实施为膝上型计算机500b、或者实施为机架式服务器系统500c的一部分。
此处描述的系统和技术的各种实施方式可以在数字电子电路系统和/或光学电路系统、集成电路系统、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用的,可以从存储系统、至少一个输入设备、和至少一个输出设备接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入设备、和该至少一个输出设备。
软件应用(即,软件资源)可以指使计算设备执行任务的计算机软件。在一些示例中,可以将软件应用称为“应用”、“应用程序”、或者“程序”。示例应用包括:但不限于,系统诊断应用、系统管理应用、系统维护应用、文字处理应用、电子表格应用、消息应用、媒体流应用、社交网络应用、和游戏应用。
这些计算机程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、非暂时性计算机可读介质、设备、和/或设备(例如,磁盘、光盘、存储器、可编程逻辑设备(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
可以通过一个或者多个可编程处理器来执行本说明书中所描述的过程和逻辑流程,该一个或者多个可编程处理器执行一个或者多个计算机程序以通过操作输入数据并且生成输出来执行功能。也可以通过诸如FPGA(现场可编程门阵列)或者ASIC(专用集成电路)的专用逻辑电路来执行过程和逻辑流程。适合执行计算机程序的处理器包括:例如,通用微处理器、专用微处理器、以及任何种类的数字计算机的任何一个或者多个处理器。一般而言,处理器将接收来自只读存储器或者随机存取存储器或者两者的指令和数据。计算机的必要元件是:用于执行指令的处理器、和用于存储指令和数据的一个或者多个存储器设备。一般而言,计算机还将包括用于存储数据的一个或者多个海量存储设备,或者计算机可以操作地耦合以接收来自该一个或者多个海量存储设备的数据或者将数据传输至该一个或者多个海量存储设备或者进行两者,该海量存储设备例如为磁盘、磁光盘、或者光盘。然而,计算机不必具有这种设备。适用于存储计算机程序指令和数据的计算机可读介质包括所有形式的非易失性存储器、介质和存储设备,包括,例如,半导体存储设备(例如EPROM,EEPROM和闪存设备)、磁盘(例如内部硬盘或可移动磁盘)、磁光盘、以及CD ROM和DVD-ROM磁盘。处理器和存储器可以由专用逻辑电路系统补充或者可以并入该专用逻辑电路系统中。
为了提供与用户的交互,可以在计算机上实施本公开的一个或者多个方面,该计算机具有:用于向用户显示信息的显示设备,例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器、或者触摸屏、以及可选地包括键盘和指向设备(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向设备来将输入提供给计算机。其它种类的设备可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈,例如,视觉反馈、听觉反馈或者触觉反馈;并且可以用包括声输入、语音输入或者触觉输入的任何形式来接收来自用户的输入。另外,计算机可以通过将文档发送到用户所使用的设备并且接收来自该设备的文档,来与用于交互,例如,通过响应于从网络浏览器接收的请求来将网页发送至在用户的客户端设备上的网络浏览器。
已经描述了多个实施方式。然而,可理解的是,在不脱离本公开的精神和范围的情况下,可以进行各种修改。因此,其他实施方式在所附权利要求的范围内。

Claims (22)

1.一种计算机实施的方法(400),其特征在于,当由数据处理硬件(154)执行时使得所述数据处理硬件(154)执行操作,所述操作包括:
获得被配置为通过网络(175)从源地址传输到目的地地址的数据包(114);
获得所述网络(175)的更改列表(112);
基于网络模型(265),使用多个分析器(255)分析所述数据包(114);
将所述网络(175)的所述更改列表(112)和对所述数据包(114)的分析相关联;
基于所述网络(175)的所述更改列表(112)与所述数据包(114)的分析之间的关联来确定所述网络(175)的配置状态(301);以及
向用户(12)报告所述配置状态(301)。
2.根据权利要求1所述的方法(400),其特征在于,所述多个分析器(255)中的至少一个分析器(255)包括分析默认规则集的默认分析器(255a)。
3.根据权利要求1或2所述的方法(400),其特征在于,所述默认规则集(255a)包括防火墙配置规则。
4.根据权利要求1-3中任一项所述的方法(400),其特征在于,所述多个分析器(255)中的至少一个分析器(255)包括定制分析器(255b),所述定制分析器(255b)分析由用户(12)提供的定制规则集。
5.根据权利要求1-4中任一项所述的方法(400),其特征在于,所述定制规则集包括互联网协议(IP)范围分类。
6.根据权利要求1-5中任一项所述的方法(400),其特征在于,所述配置状态(301)包括一个或多个配置错误(304)。
7.根据权利要求1-6中任一项所述的方法(400),其特征在于,所述配置状态(301)包括受所述一个或多个配置错误(304)影响的资源(302)的列表。
8.根据权利要求1-7中任一项所述的方法(400),其特征在于,分析所述数据包(114)包括由所述多个分析器(255)解析所述网络模型(265)以检索网络(175)信息。
9.根据权利要求1-8中任一项所述的方法(400),其特征在于,所述操作还包括:
获得指示所述网络(175)的配置已经更改的指示;
获得被配置为通过所述网络(175)传输的第二数据包(114);
基于所述网络(175)的更改的配置来确定所述多个分析器(255)的子集;
基于所述网络模型(265),使用所述多个分析器(255)的子集来分析所述第二数据包(114);
基于所述多个分析器(255)的子集对所述第二数据包(114)的所述分析来确定所述网络(175)的第二配置状态(301);和
向所述用户(12)报告所述第二配置状态(301)。
10.根据权利要求1-9中任一项所述的方法(400),其特征在于,所述操作还包括,在自向所述用户(12)报告所述配置状态(301)以来经过了预定量的时间之后:
基于对所述第二数据包(114)的分析来确定所述网络(175)的第二配置状态(301);以及
向所述用户(12)报告所述第二配置状态(301)。
11.根据权利要求1-10中任一项所述的方法(400),其特征在于,所述配置状态(301)包括用于调整所述网络(175)的配置的至少一个建议。
12.一种系统(100),其特征在于,包括:
数据处理硬件(154);和
与所述数据处理硬件(154)通信的存储器硬件(156),所述存储器硬件(156)存储指令,当所述指令在所述数据处理硬件(154)上执行时使所述数据处理硬件(154)执行操作,所述操作包括:
获得被配置为通过网络(175)从源地址传输到目的地地址的数据包(114);
获得所述网络(175)的更改列表(112);
基于网络模型(265),使用多个分析器(255)分析所述数据包(114);
将所述网络(175)的所述更改列表(112)和对所述数据包(114)的分析相关联;
基于所述网络(175)的所述更改列表(112)与所述数据包(114)的分析之间的关联来确定所述网络(175)的配置状态(301);以及
向用户(12)报告所述配置状态(301)。
13.根据权利要求12所述的系统(100),其特征在于,所述多个分析器(255)中的至少一个分析器(255)包括分析默认规则集的默认分析器(255a)。
14.根据权利要求12或13所述的系统(100),其特征在于,所述默认规则集包括防火墙配置规则。
15.根据权利要求12-14中任一项所述的系统(100),其特征在于,所述多个分析器(255)中的至少一个分析器(255)包括定制分析器(255b),所述定制分析器(255b)分析由用户(12)提供的定制规则集。
16.根据权利要求12-15中任一项所述的系统(100),其特征在于,所述定制规则集包括互联网协议(IP)范围分类。
17.根据权利要求12-16中任一项所述的系统(100),其特征在于,所述配置状态(301)包括一个或多个配置错误(304)。
18.根据权利要求12-17中任一项所述的系统(100),其特征在于,所述配置状态(301)包括受所述一个或多个配置错误(304)影响的资源(302)的列表。
19.根据权利要求12-18中任一项所述的系统(100),其特征在于,分析所述数据包(114)包括由所述多个分析器(255)解析所述网络模型(265)以检索网络(175)信息。
20.根据权利要求12-19中任一项所述的系统(100),其特征在于,所述操作还包括:
获得指示所述网络(175)的配置已经更改的指示;
获得被配置为通过所述网络(175)传输的第二数据包(114);
基于所述网络(175)的更改的配置来确定所述多个分析器(255)的子集;
基于所述网络模型(265),使用所述多个分析器(255)的子集来分析所述第二数据包(114);
基于所述多个分析器(255)的子集对所述第二数据包(114)的所述分析来确定所述网络(175)的第二配置状态(301);和
向所述用户(12)报告所述第二配置状态(301)。
21.根据权利要求12-20中任一项所述的系统(100),其特征在于,所述操作还包括,在自向所述用户(12)报告所述配置状态(301)以来经过了预定量的时间之后:
基于对所述第二数据包(114)的分析来确定所述网络(175)的第二配置状态(301);以及
向所述用户(12)报告所述第二配置状态(301)。
22.根据权利要求12-21中任一项所述的系统(100),其特征在于,所述配置状态(301)包括用于调整所述网络(175)的配置的至少一个建议。
CN202280055112.XA 2021-08-06 2022-08-03 可扩缩事件驱动自动诊断系统 Pending CN117795921A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US202163260032P 2021-08-06 2021-08-06
US63/260,032 2021-08-06
PCT/US2022/074497 WO2023015226A1 (en) 2021-08-06 2022-08-03 Scalable event driven auto-diagnosis system

Publications (1)

Publication Number Publication Date
CN117795921A true CN117795921A (zh) 2024-03-29

Family

ID=83322519

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202280055112.XA Pending CN117795921A (zh) 2021-08-06 2022-08-03 可扩缩事件驱动自动诊断系统

Country Status (3)

Country Link
US (1) US20230038986A1 (zh)
CN (1) CN117795921A (zh)
WO (1) WO2023015226A1 (zh)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110314138A1 (en) * 2010-06-21 2011-12-22 Hitachi, Ltd. Method and apparatus for cause analysis configuration change
US9888397B1 (en) * 2016-09-16 2018-02-06 Verizon Patent And Licensing Inc. Intelligent network analytics architecture
US20180115469A1 (en) * 2016-10-21 2018-04-26 Forward Networks, Inc. Systems and methods for an interactive network analysis platform
US11165658B2 (en) * 2019-09-05 2021-11-02 Cisco Technology, Inc. Systems and methods for contextual network assurance based on change audits
US11405260B2 (en) * 2019-11-18 2022-08-02 Juniper Networks, Inc. Network model aware diagnosis of a network
US11533215B2 (en) * 2020-01-31 2022-12-20 Juniper Networks, Inc. Programmable diagnosis model for correlation of network events

Also Published As

Publication number Publication date
US20230038986A1 (en) 2023-02-09
WO2023015226A1 (en) 2023-02-09

Similar Documents

Publication Publication Date Title
US11038784B2 (en) Techniques for evaluating server system reliability, vulnerability and component compatibility using crowdsourced server and vulnerability data
US11005969B2 (en) Problem solving in a message queuing system in a computer network
EP3211831B1 (en) N-tiered end user response time eurt breakdown graph for problem domain isolation
JP6849672B2 (ja) アプリケーションのセキュリティ及びリスクの評価及び試験のためのシステム及び方法
CN110036599B (zh) 网络健康信息的编程接口
US7774446B2 (en) Discovering, defining, and implementing computer application topologies
US8639791B2 (en) Techniques for evaluating and managing cloud networks
US10333816B2 (en) Key network entity detection
US9836388B1 (en) Software testing environment that includes a duplicating proxy service
US7779309B2 (en) Correlating complex errors with generalized end-user tasks
US11706084B2 (en) Self-monitoring
JP2016143299A (ja) リスク評価システムおよびリスク評価方法
US20140006600A1 (en) Remote notification and action system
US11669374B2 (en) Using machine-learning methods to facilitate experimental evaluation of modifications to a computational environment within a distributed system
US20150012647A1 (en) Router-based end-user performance monitoring
US11658863B1 (en) Aggregation of incident data for correlated incidents
US10659289B2 (en) System and method for event processing order guarantee
CN117795921A (zh) 可扩缩事件驱动自动诊断系统
EP4207702A1 (en) Dynamic prediction of system resource requirement of network software in a live network using data driven models
US20180270102A1 (en) Data center network fault detection and localization
Arellano-Uson et al. Evaluation of RTT as an estimation of interactivity time for QoE evaluation in remote desktop environments

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination