CN112702383A - 收集误差分组信息以进行网络策略实施 - Google Patents
收集误差分组信息以进行网络策略实施 Download PDFInfo
- Publication number
- CN112702383A CN112702383A CN202011132939.5A CN202011132939A CN112702383A CN 112702383 A CN112702383 A CN 112702383A CN 202011132939 A CN202011132939 A CN 202011132939A CN 112702383 A CN112702383 A CN 112702383A
- Authority
- CN
- China
- Prior art keywords
- error
- packet
- network
- packets
- metadata
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/20—Arrangements for detecting or preventing errors in the information received using signal quality detector
- H04L1/203—Details of error rate determination, e.g. BER, FER or WER
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0847—Transmission error
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/55—Prevention, detection or correction of errors
- H04L49/555—Error detection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/133—Protocols for remote procedure calls [RPC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1425—Traffic logging, e.g. anomaly detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Environmental & Geological Engineering (AREA)
- Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Quality & Reliability (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本公开的实施例涉及收集误差分组信息以进行网络策略实施。一种网络设备可以基于通过在网络堆栈的层上处理分组而生成的误差信息来检测与分组相关联的误差。网络设备可以基于检测到误差来确定与分组相关联的元数据。网络设备可以生成遥测数据以包括元数据。网络设备可以将遥测数据提供至网络分析器以进行策略实施。
Description
技术领域
本公开的实施例涉及误差分组信息的收集。
背景技术
遥测涉及将接收到的遥测数据记录到数据结构。通常,遥测数据是从远程的或者不可访问的源接收到的,并且被用于监测和分析。可以使用无线电、红外线、超声波、GSM、卫星或者电缆来中继遥测数据,这取决于应用。
发明内容
根据一些实现,一种方法可以包括:由网络设备接收分组;由网络设备使用网络堆栈来处理分组;由网络设备基于处理分组来确定分组与误差相关联;由网络设备基于确定分组与误差相关联来确定与分组相关联的元数据;由网络设备生成包括元数据的遥测数据;以及由网络设备将遥测数据提供至网络分析器,以允许网络分析器基于元数据来实施网络策略。
根据一些实现,一种设备可以包括:一个或多个存储器;以及一个或多个处理器,该一个或多个处理器被通信地耦合至一个或多个存储器,一个或多个处理器被配置为:监测与网络设备处理经由网络而接收到的多个分组相关联的误差信息;基于误差信息来确定与多个分组相关联的误差率;确定误差率满足阈值;基于误差率满足阈值来确定与多个分组中的误差分组相关联的元数据;生成遥测数据以包括元数据;以及提供遥测数据以引起网络分析器基于网络设备接收到误差分组来自动实施策略。
根据一些实现,一种非瞬态计算机可读介质可以存储一个或多个指令。该一个或多个指令在由一个或多个处理器执行时可以使一个或多个处理器:基于通过在网络堆栈的层上处理分组而生成的误差信息来检测与该分组相关联的误差;基于检测到误差来确定与分组相关联的元数据;生成遥测数据以包括元数据;以及将遥测数据提供至网络分析器以进行策略实施。
附图说明
图1A至图1C是本文描述的一种或多种示例实现的示意图。
图2是可以实现本文描述的系统和/或方法的示例环境的示意图。
图3和图4是图2所示一个或多个设备的示例组件的示意图。
图5至图7是用于收集误差分组信息以进行网络策略实施的一个或多个示例过程的流程图。
具体实施方式
以下对示例实现的详细描述参考附图。不同附图中的相同附图标记可以标识相同或者相似的元件。
在一些实例中,网络设备(例如,交换机、路由器、网关等)处理分组以确定该分组是否与误差相关联。在这种情况下,当处理分组时,通过网络堆栈(或者协议栈)来遍历分组。当网络堆栈的层检测到分组包括误差或者与误差相关联(例如,可以引起误差)时,网络设备丢弃分组。在一些实例中,网络堆栈被配置为追踪这种事件。例如,网络堆栈可以使计数器递增以指示出现分组误差。这种信息可以作为遥测数据被提供至网络分析器以使得网络分析器能够基于检测到误差来实施策略。然而,这种遥测数据(或者遥测数据中所包括的这种信息)不提供与分组相关联的任何上下文,仅提供在接收到分组时出现误差和/或分组被丢弃。因此,网络分析器根据这种信息而实施的策略在没有与分组相关联的任何上下文的情况下被实施,并且主要基于网络设备经历误差和/或丢弃分组的事实。
根据本文描述的一些实现,网络设备被配置为确定和/或提供与引起误差或者关联于误差的分组相关联的上下文。例如,网络设备可以通过网络堆栈处理分组来检测与该分组相关联的误差,确定与该分组相关联的元数据,生成包括该元数据的遥测数据,并且将该元数据提供至网络分析器以进行策略实施。引起误差或者与误差相关联的分组(该分组在本文中可以被称为“误差分组”)可以包括在恶意攻击中所涉及的分组、破坏设备或者网络的操作的分组、包括误差的分组(例如,不完整的、不能读取的分组等)等。
因此,相对于先前的技术,网络设备可以能够获得和/或提供与引起误差的分组相关联的上下文,以允许网络分析器实施更细粒度的策略和/或允许检测误差和/或恶意攻击的源。此外,这种策略可以防止关于丢弃分组的误报(例如,通过使得网络分析器能够对被丢弃的分组(由于分组被错误地假定为是错误的或者恶意的)进行寻址),和/或有助于通过妨碍进一步的攻击来防止这种误差和/或恶意攻击。按照这种方式,网络设备可以节省与处理分组和/或解决关联于网络或者设备的恶意攻击相关联的计算资源和/或网络资源。
图1A至图1C是本文描述的示例实现100的示意图。示例实现100包括具有误差检测器和网络分析器的路由器。网络分析器和路由器可以与同一网络相关联。例如,网络分析器可以包括一个或多个网络设备,该一个或多个网络设备被配置为实施与经由路由器和/或与网络相关联的任何其他网络设备通过网络来对业务进行路由相关联的策略。如本文所述,误差检测器可以检测与接收到的分组相关联的误差,确定与分组相关联的对应于分组的上下文(该上下文在本文中可以被称为“分组上下文”)的元数据,并且将该元数据作为遥测数据(和/或在遥测数据内)提供至网络分析器,以允许网络分析器根据分组的上下文来创建和/或实施策略。虽然结合路由器来描述了示例实现100,但是本文描述的示例可以类似地应用于其他类型的网络设备。
如在图1A中并且通过附图标记110示出的,路由器接收待经由网络来进行路由的分组。路由器可以经由网络的一个或多个有线或者无线连接来接收分组。这些分组可以作为流被接收。在一些实现中,分组与相同的数据集(例如,文件的数据、图像的数据、消息的数据等)、相同的源等相关联。附加地,或者备选地,可以从不同的源接收分组和/或分组可以与不同的数据集相关联。如图所示,分组“P”(在本文的示例中被称为“该分组”)可以包括报头和有效负载。报头可以包括标识分组的源(例如,源设备的标识符)和分组的目的地(例如,目的地设备的标识符)的信息。有效负载可以与正在分组的目的地被传递和/或在分组的目的地将被处理的数据相对应。例如,有效负载可以与在源设备与目的地设备之间的会话(例如,通信会话、数据交换等)中将被使用的数据相对应。
如图1A中并且通过附图标记120进一步示出的,路由器根据网络堆栈来处理分组。在处理期间,网络堆栈被配置为根据各种协议通过各个层来遍历该分组(以及其他接收到的分组)。
网络堆栈可以与开放系统互连(OSI)模型相对应。例如,网络堆栈可以包括网络堆栈的可以是用于与分组相关联的会话的物理层的第一层(L1),网络堆栈的第二层(L2)可以是用于会话的数据链路层,第三层(L3)可以是用于会话的网络层,第四层(L4)可以是用于会话的传输层,第五层(L5)可以是用于会话的会话层,第六层(L6)可以是用于会话的表示层,以及第七层(L7)可以是用于会话的应用层。
如在示例实现100中示出的,路由器可以使用被配置为通过物理层、数据链路层、网络层和传输层来处理分组的网络堆栈。该网络堆栈可以被配置为根据任何合适的配置通过各个层来处理分组。例如,网络堆栈可以被配置为根据用于每个单独的层的一个或多个协议来在该单独的层上处理分组以验证该分组。如果无法在特定层上验证分组,则可以丢弃该分组(例如,从存储器中移除、在存储器中重写等)。如果在特定层上验证分组,则该分组继续向前移至下一层,直到该分组遍历堆栈并且被转发至(或者被转发到)目的地为止。
按照这种方式,路由器可以被配置为使用网络堆栈来处理一个或多个分组,以允许路由器确定分组是否与误差相关联(或者分组是否是误差分组)。
如在图1B中并且通过附图标记130示出的,网络堆栈检测与分组(在本文中被称为“该分组”)相关联的误差和/或从网络堆栈丢弃分组。例如,如图所示,在传输层,网络堆栈可能不能验证分组(例如,由于安全配置、由于协议问题、由于数据格式化问题等)。
如图所示,网络堆栈可以向路由器的误差寄存器发送误差指示符。误差寄存器可以被配置为追踪和/或监测误差(例如,使用计数器)。附加地,或者备选地,误差寄存器可以被配置为确定和/或计算与误差相关联的统计信息,诸如,误差率(例如,分组误差率(PER))、误差百分比和/或其他类型的误差信息。在一些实现中,误差寄存器可以根据网络堆栈的配置来追踪和/或确定安全漏洞(例如,恶意软件攻击)和/或其他安全信息。
按照这种方式,网络堆栈可以被配置为指示接收到误差分组,并且使误差寄存器更新与路由器相关联的误差信息以允许误差检测器检测误差。
如在图1B中并且通过附图标记140进一步示出的,误差检测器检测对误差信息的更新。例如,基于网络堆栈指示根据传输层来使分组无效,误差检测器可以确定该分组与误差相关联(或者是误差分组)。更具体地,误差检测器可以检测到误差寄存器的误差计数器递增(例如,指示该分组是误差分组)。附加地,或者备选地,误差检测器可以基于网络堆栈指示将丢弃该分组(例如,基于该分组被标记或者指定为被丢弃),来确定该分组被确定为与误差相关联。
在一些实现中,误差检测器可以被配置为监测误差寄存器中的误差信息。例如,误差检测器可以监测误差信息,以确定与路由器相关联的和/或与路由器经由网络堆栈来接收和处理多个分组相关联的误差率。该误差率可以与最近接收到的分组数量中和/或在最近的时间段内被丢弃的分组的百分比相对应。在一些实现中,误差检测器可以将误差率与阈值(例如,最近接收到的分组数量中和/或在最近的时间段内被丢弃的分组的阈值百分比)相比较。例如,可以使用过滤器(例如,与网络堆栈相关联的统计过滤器)来确定误差率已经满足阈值。因此,示例实现100中的分组可以是引起误差率满足阈值的分组。在一些实现中,误差检测器可以使用与网络堆栈相关联的过滤器(例如,扩展的伯克利(Berkeley)分组过滤器(eBPF)和/或其他类型的过滤器)来检测误差。
在一些实现中,误差检测器可以被配置为监测与特定类型的分组和/或具有特定特性的分组(例如,来自特定源、旨在用于特定目的地、具有相同或者相似的有效负载、为相同大小、与相同协议相关联等)相关联的误差率。例如,误差检测器可以根据误差分组的特性来对误差分组进行分类。按照这种方式,当与特定类型的特性相关联的误差率满足阈值时,误差检测器可以确定该特性可以提供误差分组的上下文作为将由网络分析器进一步检查以进行策略实施的误差和/或特性的源。
按照这种方式,如本文描述的,经由误差检测器,路由器可以检测到该分组(或者多个分组)与误差相关联,以允许误差检测器捕获分组和/或确定分组的上下文。
如在图1B中并且通过附图标记150示出的,误差检测器捕获分组。例如,基于从误差寄存器中的误差信息确定分组是误差分组,误差检测可以将分组复制(例如,读取和写入)到误差检测器的临时寄存器。附加地,或者备选地,误差检测器可以阻止和/或防止分组被移除或者被重写。例如,误差检测器可以移除将丢弃分组的指示和/或将擦除或者重写存储分组数据的存储器(例如,由网络堆栈用于处理分组的存储器)的指示。根据一些实现,误差检测器可以捕获和/或存储多个误差分组(例如,特定数量的最近接收到的分组)。
在一些实现中,在误差检测器捕获到误差分组和/或与关联于网络堆栈的存储器分开存储误差分组之后,误差检测器可以允许从网络堆栈丢弃误差分组。
按照这种方式,误差检测器可以捕获误差分组,以允许误差检测器确定与误差分组相关联的元数据并且将该分组的上下文作为遥测数据提供至网络分析器。
如在图1C中并且通过附图标记160示出的,误差检测器基于分组的元数据来生成遥测数据。例如,误差检测器可以生成包括与分组相关联的元数据的遥测数据。误差检测器可以基于检测到接收到的分组是误差分组来生成和/或确定元数据。如本文描述的,元数据可以包括分组的源、分组的目的地、来自分组的有效负载的数据等。因此,元数据可以包括来自分组的报头的信息和/或来自分组的有效负载的一部分的信息,以允许在遥测数据内提供分组的某一上下文。
在一些实现中,误差检测器可以基于误差分组的一个或多个特性来确定将被包括在遥测数据内的元数据。例如,误差检测器可以基于分组的源和/或基于分组的目的地,来确定是否要包括报头信息和有效负载信息。附加地,或者备选地,误差检测器可以基于分组的有效负载中所包括的信息(例如,信息是否可能与安全漏洞、不完整的数据等相关联)来确定要包括哪些元数据。在一些实现中,误差检测器可以基于网络堆栈的哪个层使分组无效和/或使网络堆栈指示误差,来确定要包括哪些元数据。
根据一些实现,可以从与误差相关联的分组的采样(例如,具有与误差分组相同的特性的多个分组的采样)中确定元数据。例如,如果误差检测器确定与多个接收到的分组相关联的误差率满足阈值(例如,指示路由器正在经历异常高数量的误差),则误差检测器可以对多个捕获到的(例如,已存储的)误差分组进行采样,以确定与多个误差分组相关联的元数据。例如,可以从误差分组的样本(例如,阈值数量或者阈值百分比的误差分组)生成元数据以确定与误差分组相关联的上下文。在一些实现中,可以从具有一个或多个相同特性的误差分组(例如,从相同源接收到的误差分组、旨在用于相同目的地的误差分组、包括相同或者相似的有效负载的误差分组等)的采样中确定元数据。
根据一些实现,根据特定协议来生成遥测数据。例如,可以使用路由器与网络分析器之间的通信和/或消息的通信协议(例如,远程过程调用(gRPC)协议)来生成遥测数据。因此,所生成的包括元数据的遥测数据可以使接收方确定:该数据将作为遥测数据而不是作为标准通信被处理。
按照这种方式,误差检测器可以确定与误差分组相关联的元数据,并且生成包括该元数据的遥测数据以允许误差检测器将遥测数据提供至网络分析器以进行策略实施。
如在图1C中并且通过附图标记170进一步示出的,路由器将遥测数据提供至网络分析器以进行网络策略实施。路由器可以基于误差检测器生成遥测数据来提供遥测数据。附加地,或者备选地,可以根据时间表和/或响应于来自网络分析器的对遥测数据的请求来发送遥测数据。在这种情况下,误差检测器和/或路由器可以被配置为存储遥测数据,使得可以批量发送与多个误差分组相关联的元数据。
路由器可以经由被配置在路由器与网络分析器之间的gRPC信道来提供遥测数据。因此,提供遥测数据可以使和/或允许网络分析器基于元数据(和/或误差分组的上下文)来自动确定和/或实施用于路由器的网络的网络策略。使用任何合适的技术,网络分析器可以收集和/或存储包括误差分组上下文的遥测数据,监测误差分组的上下文以获得模式或者趋势,基于检测到的模式或者趋势来确定策略,并且在网络的网络设备上部署和/或实施策略。
按照这种方式,路由器(例如,经由误差检测器)可以获得由网络堆栈处理的一个或多个误差分组的上下文(例如,来自元数据或者包括元数据),生成与上下文相关联的遥测数据,并且将遥测数据提供至网络分析器以允许网络分析器根据一个或多个误差分组的上下文来实施网络策略。
因此,如本文描述的,网络设备使得网络分析器能够基于分组的上下文而不是仅基于引起误差的分组的出现,来实施策略(例如,自动地)。这种策略可以允许网络分析器防止网络设备错误地丢弃分组(例如,如果假定的误差分组被网络分析器确定为良性的)。附加地,或者备选地,网络设备可以允许网络分析器实施策略,这些策略自动阻止从特定源接收到的分组、包括特定类型的数据的分组、正被传输至特定目的地的分组、特定格式的分组等。
如上面指示的,仅作为一个或多个示例而提供图1A至图1C。其他示例可以与针对图1A至图1C所描述的内容不同。
图2是可以实现本文描述的系统和/或方法的示例环境200的示意图。如在图2中示出的,环境200可以包括源设备210、目的地设备220、网络230、一个或多个网络设备240(在本文中单独地称为“网络设备240”或者统称为“网络设备240”)以及网络分析器250。环境200中的设备可以经由有线连接、无线连接或者有线连接和无线连接的组合来相互连接。
源设备210和/或目的地设备220可以包括一个或多个用户设备。例如,如本文描述的,源设备210和/或目的地设备220可以包括能够接收、生成、存储、处理和/或提供与应用和/或会话相关联的网络业务的一个或多个设备。源设备210和/或目的地设备220可以包括通信设备和/或计算设备,诸如,移动电话(例如,智能电话、无线电话等)、膝上型计算机、平板计算机、手持式计算机、台式计算机、游戏设备、可穿戴通信设备(例如,智能手表、一副智能眼镜等)或者相似类型的设备。在一些实现中,源设备210和/或目的地设备220可以是云计算环境中的基于云的平台、基于web的平台、在线平台等。
网络设备240包括能够在端点设备(例如,源设备210、目的地设备220之间)和/或其他网络之间处理和/或传递业务的一个或多个设备(例如,一个或多个业务传递设备)。例如,网络设备240可以包括路由器、网关、交换机、集线器、桥接器、反向代理、服务器(例如,代理服务器)、防火墙、安全设备、入侵检测设备、负载平衡器或者相似的设备。
网络分析器250可以包括用于实施网络230的策略(例如,业务策略、路由策略、安全策略等)的一个或多个设备。例如,网络分析器250可以包括网络的可以被用于允许或者阻止与网络相关联的网络业务的服务器(例如,代理服务器)、防火墙、安全设备、入侵检测设备、负载平衡器或者其他安全设备或者与之相关联。例如,网络设备可以使用一组策略来阻止或者允许被发送至网络的网络业务、从网络发送的网络业务和/或在网络内发送的网络业务。在一些实现中,网络分析器250可以是在壳体(诸如,机架)内实现的物理设备。在一些实现中,网络分析器250可以是由云计算环境或者数据中心中的一个或多个计算机设备实现的虚拟设备。
提供在图2中示出的设备和网络的数量和布置作为一个或多个示例。实际上,与在图2中示出的那些设备和/或网络相比,可以存在附加的设备和/或网络、更少的设备和/或网络、不同的设备和/或网络或者不同地布置的设备和/或网络。此外,可以在单个设备内实现在图2中示出的两个或更多个设备,或者可以将在图2中示出的单个设备实现为多个分布式设备。附加地,或者备选地,环境200中的一组设备(例如,一个或多个设备)可以执行被描述为由环境200中的另一组设备执行的一个或多个功能。
图3是设备300的示例组件的示意图。设备300可以与网络设备240相对应。在一些实现中,网络设备240可以包括一个或多个设备300和/或设备300的一个或多个组件。如在图3中示出的,设备300可以包括一个或多个输入组件305-1至305-B(B≥1)(以下统称为输入组件305,并且单独地称为输入组件305)、交换组件310、一个或多个输出组件315-1至315-C(C≥1)(以下统称为输出组件315,并且单独地称为输出组件315)以及控制器320。
输入组件305可以是用于物理链路的附接点,并且可以是用于传入业务(诸如,分组)的入口点。输入组件305可以处理传入业务,诸如,通过执行数据链路层封装或者解封装。在一些实现中,输入组件305可以发送和/或接收分组。在一些实现中,输入组件305可以包括输入线卡,该输入线卡包括一个或多个分组处理组件(例如,以集成电路的形式),诸如,一个或多个接口卡(IFC)、分组转发组件、线卡控制器组件、输入端口、处理器、存储器和/或输入队列。在一些实现中,设备300可以包括一个或多个输入组件305。
交换组件310可以将输入组件305与输出组件315相互连接。在一些实现中,可以经由一个或多个交叉开关,经由总线和/或利用共享存储器来实现交换组件310。共享存储器可以充当临时缓冲器以在最终调度分组以供传递至输出组件315之前,存储来自输入组件305的分组。在一些实现中,交换组件310可以使得输入组件305、输出组件315和/或控制器320能够通信。
输出组件315可以存储分组,并且可以调度分组以用于在输出物理链路上传输。输出组件315可以支持数据链路层封装或者解封装和/或各种更高级别的协议。在一些实现中,输出组件315可以发送分组和/或接收分组。在一些实现中,输出组件315可以包括输出线卡,该输出线卡包括一个或多个分组处理组件(例如,以集成电路的形式),诸如,一个或多个IFC、分组转发组件、线卡控制器组件、输出端口、处理器、存储器和/或输出队列。在一些实现中,设备300可以包括一个或多个输出组件315。在一些实现中,输入组件305和输出组件315可以由同一组组件实现(例如,并且输入/输出组件可以是输入组件305和输出组件315的组合)。
在硬件、固件或者硬件和软件的组合中实现控制器320。控制器320包括例如,中央处理单元(CPU)、图形处理单元(GPU)、加速处理单元(APU)、微处理器、微控制器、现场可编程门阵列(FPGA)、专用集成电路(ASIC)形式的处理器和/或另一类型的处理器。在一些实现中,控制器320可以包括能够被编程为执行功能的一个或多个处理器。控制器320可以与示例实现100中的误差检测器相对应和/或实现该误差检测器。
在一些实现中,控制器320可以包括随机存取存储器(RAM)、只读存储器(ROM)和/或存储信息和/或指令以供控制器320使用的另一类型的动态或者静态存储设备(例如,闪速存储器、磁存储器、光学存储器等)。
在一些实现中,控制器320可以与被连接至设备300的其他设备、网络和/或系统通信,以交换有关网络拓扑的信息。控制器320可以基于网络拓扑信息来创建路由表,基于路由表来创建转发表,并且将转发表转发至输入组件305和/或输出组件315。输入组件305和/或输出组件315可以使用转发表来对传入和/或传出分组执行路由查找。
控制器320可以执行本文描述的一个或多个过程。控制器320可以响应于执行由非瞬态计算机可读介质存储的软件指令来执行这些过程。计算机可读介质在本文中被定义为非瞬态存储器设备。存储器设备包括在单个物理存储设备内的存储器空间或者在多个物理存储设备之间扩展的存储器空间。
可以经由通信接口来将软件指令从另一计算机可读介质或者从另一设备读取到与控制器320相关联的存储器和/或存储组件中。被存储在与控制器320相关联的存储器和/或存储组件中的软件指令在被执行时可以使控制器320执行本文描述的一个或多个过程。附加地,或者备选地,代替用于执行本文描述的一个或多个过程的软件指令或者结合这些软件指令,可以使用硬连线电路装置。因此,本文描述的实现不限于硬件电路装置和软件的任何特定组合。
提供在图3中示出的组件的数量和布置作为示例。实际上,与在图3中示出的那些组件相比,设备300可以包括附加的组件、更少的组件、不同的组件或者不同地布置的组件。附加地,或者备选地,设备300的一组组件(例如,一个或多个组件)可以执行被描述为由设备300的另一组组件执行的一个或多个功能。
图4是设备400的示例组件的示意图。设备400可以与源设备210、目的地设备220、网络设备240、网络分析器250和/或设备300相对应。在一些实现中,源设备210、目的地设备220、网络设备240和/或网络分析器250可以包括一个或多个设备400和/或设备400的一个或多个组件。如在图4中示出的,设备400可以包括总线410、处理器420、存储器430、存储组件440、输入组件450、输出组件460和通信接口470。
总线410包括允许设备400的多个组件之间的通信的组件。在硬件、固件或者硬件和软件的组合中实现处理器420。处理器420采取中央处理单元(CPU)、图形处理单元(GPU)、加速处理单元(APU)、微处理器、微控制器、数字信号处理器(DSP)、现场可编程门阵列(FPGA)、专用集成电路(ASIC)或者另一类型的处理组件的形式。在一些实现中,处理器420包括能够被编程为执行功能的一个或多个处理器。存储器430包括随机存取存储器(RAM)、只读存储器(ROM)和/或存储信息和/或指令以供处理器420使用的另一类型的动态或者静态存储设备(例如,闪速存储器、磁存储器和/或光学存储器)。
存储组件440存储与操作和使用设备400相关的信息和/或软件。例如,存储组件440可以包括:硬盘(例如,磁盘、光盘和/或磁光盘)、固态驱动器(SSD)、压缩光盘(CD)、数字通用光盘(DVD)、软盘、磁带盒、磁带和/或另一类型的非瞬态计算机可读介质以及对应的驱动器。存储组件440可以被用于存储和/或实现示例实现100中的安全策略数据库。
输入组件450包括允许设备400接收信息(诸如,经由用户输入(例如,触摸屏显示器、键盘、小键盘、鼠标、按钮、开关和/或麦克风))的组件。附加地,或者备选地,输入组件425可以包括用于确定位置的组件(例如,全球定位系统(GPS)组件)和/或传感器(例如,加速度计、陀螺仪、致动器、另一类型的位置传感器或者环境传感器等)。输出组件460包括提供来自设备400的输出信息(例如,经由显示器、扬声器、触觉反馈组件、音频或者视觉指示器等)的组件。
通信接口470包括使得设备400能够与其他设备通信(诸如,经由有线连接、无线连接或者有线连接和无线连接的组合)的类似收发器的组件(例如,收发器、单独的接收器、单独的发送器等)。通信接口470可以允许设备400从另一设备接收信息和/或向另一设备提供信息。例如,通信接口470可以包括以太网接口、光学接口、同轴接口、红外接口、射频(RF)接口、通用串行总线(USB)接口、Wi-Fi接口、蜂窝网络接口等。
设备400可以执行本文描述的一个或多个过程。设备400可以基于处理器420执行由非瞬态计算机可读介质(诸如,存储器430和/或存储组件440)存储的软件指令来执行这些过程。如本文使用的,术语“计算机可读介质”是指非瞬态存储器设备。存储器设备包括在单个物理存储设备内的存储器空间或者在多个物理存储设备之间扩展的存储器空间。
可以经由通信接口470来将软件指令从另一计算机可读介质或者从另一设备读取到存储器430和/或存储组件440中。被存储在存储器430和/或存储组件440中的软件指令在被执行时可以使处理器420执行本文描述的一个或多个过程。附加地,或者备选地,代替用于执行本文描述的一个或多个过程的软件指令或者结合这些软件指令,可以使用硬件电路装置。因此,本文描述的实现不限于硬件电路装置和软件的任何特定组合。
提供在图4中示出的组件的数量和布置作为示例。实际上,与在图4中示出的那些组件相比,设备400可以包括附加的组件、更少的组件、不同的组件或者不同地布置的组件。附加地,或者备选地,设备400的一组组件(例如,一个或多个组件)可以执行被描述为由设备400的另一组组件执行的一个或多个功能。
图5是用于收集误差分组信息以进行网络策略实施的示例过程500的流程图。在一些实现中,图5中的一个或多个过程框可以由网络设备(例如,网络设备240)执行。在一些实现中,图5中的一个或多个过程框可以由与网络设备分离或者包括网络设备的另一设备或者一组设备执行,诸如,网络分析器250等。
如在图5中示出的,过程500可以包括:接收分组(框510)。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以接收分组。
如在图5中进一步示出的,过程500可以包括:使用网络堆栈来处理分组(框520)。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以使用网络堆栈来处理分组。
如在图5中进一步示出的,过程500可以包括:基于处理分组来确定分组与误差相关联(框530)。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以基于处理分组来确定分组与误差相关联。
如在图5中进一步示出的,过程500可以包括:基于确定分组与误差相关联来确定与分组相关联的元数据(框540)。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以基于确定分组与误差相关联来确定与分组相关联的元数据。
如在图5中进一步示出的,过程500可以包括:生成包括元数据的遥测数据(框550)。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以生成包括元数据的遥测数据。
如在图5进一步示出的,过程500可以包括:将遥测数据提供至网络分析器,以允许网络分析器基于元数据来实施网络策略(框560)。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以将遥测数据提供至网络分析器,以允许网络分析器基于元数据来实施网络策略。
过程500可以包括附加的实现,诸如,任何单种实现或者在下面和/或结合本文在别处描述的一个或多个其他过程所描述的实现的任何组合。
在第一实现中,基于网络堆栈指示分组将被丢弃,分组被确定为与误差相关联,并且该方法还包括:捕获分组,从分组提取元数据,以及使得分组能够被丢弃。在第二实现中,单独地或者结合第一实现,基于误差计数器随着分组通过网络堆栈的层被处理而被递增,分组被确定为与误差相关联。在第三实现中,单独地或者结合第一实现和第二实现中的一种或多种实现,基于分组通过网络堆栈的特定层被处理,元数据被确定。
在第四实现中,单独地或者结合第一至第三实现中的一种或多种实现,元数据使用网络堆栈的过滤器被确定,该过滤器基于分组被网络堆栈丢弃而被触发。在第五实现中,单独地或者结合第一至第四实现中的一种或多种实现,误差引起与网络堆栈处理多个分组相关联的误差率满足阈值,并且基于误差引起误差率满足阈值,元数据被确定。在第六实现中,单独地或者结合第一至第五实现中的一种或多种实现,遥测数据经由远程过程调用信道被提供至网络分析器。
虽然图5示出了过程500的示例框,但是在一些实现中,与在图5中描绘的那些框相比,过程500可以包括附加的框、更少的框、不同的框或者不同地布置的框。附加地,或者备选地,可以并行执行过程500的框中的两个或更多个框。
图6是用于收集误差分组信息以进行网络策略实施的示例过程600的流程图。在一些实现中,图6中的一个或多个过程框可以由网络设备(例如,网络设备240)执行。在一些实现中,图6中的一个或多个过程框可以由与网络设备分离或者包括网络设备的另一设备或者一组设备执行,诸如,网络分析器250等。
如在图6中示出的,过程600可以包括:监测与网络设备处理经由网络而接收到的多个分组相关联的误差信息(框610)。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以监测与网络设备处理经由网络而接收到的多个分组相关联的误差信息。
如在图6中进一步示出的,过程600可以包括:基于误差信息来确定与多个分组相关联的误差率(框620)。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以基于误差信息来确定与多个分组相关联的误差率。
如在图6中进一步示出的,过程600可以包括:确定误差率满足阈值(框630)。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以确定误差率满足阈值。
如在图6中进一步示出的,过程600可以包括:基于误差率满足阈值来确定与多个分组中的误差分组相关联的元数据(框640)。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以基于误差率满足阈值来确定与多个分组中的误差分组相关联的元数据。
如在图6中进一步示出的,过程600可以包括:生成遥测数据以包括元数据(框650)。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以生成遥测数据以包括元数据。
如在图6中进一步示出的,过程600可以包括:提供遥测数据以引起网络分析器基于网络设备接收到误差分组来自动实施策略(框660)。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以提供遥测数据以引起网络分析器基于网络设备接收到误差分组来自动实施策略。
过程600可以包括附加的实现,诸如,任何单种实现或者在下面和/或结合本文在别处描述的一个或多个其他过程所描述的实现的任何组合。
在第一实现中,基于对多个误差分组进行采样以标识多个误差分组内的误差分组,与误差分组相关联的元数据被确定,并且多个误差分组引起误差率满足阈值。
在第二实现中,单独地或者结合第一实现,误差分组基于误差信息指示误差分组与误差相关联而被获捕。在第三实现中,单独地或者结合第一实现和第二实现中的一种或多种实现,误差信息根据正在处理多个分组的网络堆栈而被生成。在第四实现中,单独地或者结合第一至第三实现中的一种或多种实现,误差率使用与正在处理多个分组的网络堆栈相关联的统计过滤器被确定。
在第五实现中,单独地或者结合第一至第四实现中的一种或多种实现,误差率与包括具有相同特性的多个误差分组的多个分组相关联,误差分组是多个分组中的一个分组,并且具有相同特性,并且元数据包括标识相同特性的信息。在第六实现中,单独地或者结合第一至第五实现中的一种或多种实现,遥测数据引起网络分析器基于经由网络分析器与网络设备之间的远程过程调用信道而接收到的遥测数据来自动实施策略。
虽然图6示出了过程600的示例框,但是在一些实现中,与在图6中描绘的那些框相比,过程600可以包括附加的框、更少的框、不同的框或者不同地布置的框。附加地,或者备选地,可以并行执行过程600的框中的两个或更多个框。
图7是用于收集误差分组信息以进行网络策略实施的示例过程700的流程图。在一些实现中,图7中的一个或多个过程框可以由网络设备(例如,网络设备240)执行。在一些实现中,图7中的一个或多个过程框可以由与网络设备分离或者包括网络设备的另一设备或者一组设备执行,诸如,网络分析器250等。
如在图7中示出的,过程700可以包括:基于通过在网络堆栈的层上处理分组而生成的误差信息来检测与分组相关联的误差。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以基于通过在网络堆栈的层上处理分组而生成的误差信息来检测与分组相关联的误差。
如在图7中示出的,过程700可以包括:基于检测到误差来确定与分组相关联的元数据(框720)。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以基于检测到误差来确定与分组相关联的元数据。
如在图7中进一步示出的,过程700可以包括:生成遥测数据以包括元数据(框730)。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以生成遥测数据以包括元数据。
如在图7中进一步示出的,过程700可以包括:将遥测数据提供至网络分析器以进行策略实施(框740)。例如,如上所述,网络设备(例如,使用输入组件305、交换组件310、输出组件315、控制器320、处理器420、存储器430、存储组件440、输入组件450、输出组件460、通信接口470等)可以将遥测数据提供至网络分析器以进行策略实施。
过程700可以包括附加的实现,诸如,任何单种实现或者在下面和/或结合本文在别处描述的一个或多个其他过程所描述的实现的任何组合。
在第一实现中,网络堆栈的层与以下中的至少一个相对应:网络层,或者传输层。在第二实现中,单独地或者结合第一实现,基于误差计数器随着分组通过网络堆栈的层被处理而被递增,分组被确定为与误差相关联。
在第三实现中,单独地或者结合第一实现和第二实现中的一种或多种实现,元数据包括来自分组的报头的信息。在第四实现中,单独地或者结合第一至第三实现中的一种或多种实现,元数据包括分组的报头和分组的有效负载的至少一部分。在第五实现中,单独地或者结合第一至第四实现中的一种或多种实现,基于分组的报头中的信息,元数据被确定。
虽然图7示出了过程700的示例框,但是在一些实现中,与在图7中描绘的那些框相比,过程700可以包括附加的框、更少的框、不同的框或者不同地布置的框。附加地,或者备选地,可以并行执行过程700的框中的两个或更多个框。
根据一些实现,提供了以下示例。
示例1.一种方法,包括:由网络设备接收分组;由网络设备使用网络堆栈来处理分组;由网络设备基于处理分组来确定分组与误差相关联;由网络设备基于确定分组与误差相关联来确定与分组相关联的元数据;由网络设备生成包括元数据的遥测数据;以及由网络设备将遥测数据提供至网络分析器,以允许网络分析器基于元数据来实施网络策略。
示例2.根据示例1的方法,其中基于网络堆栈指示分组将被丢弃,分组被确定为与误差相关联,并且其中方法还包括:捕获分组;从分组提取元数据;以及使得分组能够被丢弃。
示例3.根据示例1的方法,其中基于误差计数器随着分组通过网络堆栈的层被处理而被递增,分组被确定为与误差相关联。
示例4.根据示例1的方法,其中基于分组通过网络堆栈的特定层被处理,元数据被确定。
示例5.根据示例1的方法,其中元数据使用网络堆栈的过滤器被确定,过滤器基于分组被网络堆栈丢弃而被触发。
示例6.根据示例1的方法,其中误差引起与网络堆栈处理多个分组相关联的误差率满足阈值,并且其中基于误差引起误差率满足阈值,元数据被确定。
示例7.根据示例1的方法,其中遥测数据经由远程过程调用信道被提供至网络分析器。
示例8.一种设备,包括:一个或多个存储器;以及一个或多个处理器,被通信地耦合至一个或多个存储器,一个或多个处理器被配置为:监测与网络设备处理经由网络而接收到的多个分组相关联的误差信息;基于误差信息来确定与多个分组相关联的误差率;确定误差率满足阈值;基于误差率满足阈值来确定与多个分组中的误差分组相关联的元数据;生成遥测数据以包括元数据;以及提供遥测数据以引起网络分析器基于网络设备接收到误差分组来自动实施策略。
示例9.根据示例8的设备,其中基于对多个误差分组进行采样以标识多个误差分组内的误差分组,与误差分组相关联的元数据被确定,其中多个误差分组引起误差率满足阈值。
示例10.根据示例8的设备,其中基于误差信息指示误差分组与误差相关联,误差分组被获捕。
示例11.根据示例8的设备,其中误差信息根据正在处理多个分组的网络堆栈而被生成。
示例12.根据示例8的设备,其中误差率使用与正在处理多个分组的网络堆栈相关联的统计过滤器被确定。
示例13.根据示例8的设备,其中误差率与包括具有相同特性的多个误差分组的多个分组相关联,其中误差分组是多个分组中的一个分组,并且具有相同特性,并且其中元数据包括标识相同特性的信息。
示例14.根据示例8的设备,其中遥测数据引起网络分析器:基于经由网络分析器与网络设备之间的远程过程调用信道而接收到的遥测数据,来自动实施策略。
示例15.一种存储指令的非瞬态计算机可读介质,指令包括:一个或多个指令,一个或多个指令在由网络设备的一个或多个处理器执行时使一个或多个处理器:基于通过在网络堆栈的层上处理分组而生成的误差信息来检测与分组相关联的误差;基于检测到误差来确定与分组相关联的元数据;生成遥测数据以包括元数据;以及将遥测数据提供至网络分析器以进行策略实施。
示例16.根据示例15的非瞬态计算机可读介质,其中网络堆栈的层与以下中的至少一个相对应:网络层,或者传输层。
示例17.根据示例15的非瞬态计算机可读介质,其中基于误差计数器随着分组通过网络堆栈的层被处理而被递增,分组被确定为与误差相关联。
示例18.根据示例15的非瞬态计算机可读介质,其中元数据包括来自分组的报头的信息。
示例19.根据示例15的非瞬态计算机可读介质,其中元数据包括分组的报头和分组的有效负载的至少一部分。
示例20.根据示例15的非瞬态计算机可读介质,其中元数据基于分组的报头中的信息而被确定。
前述公开内容提供了说明和描述,但是不旨在是详尽的或者将实现限于所公开的精确形式。可以鉴于上述公开内容进行修改和变型,或者可以从实现的实践中获得修改和变型。
如本文使用的,术语“业务”或者“内容”可以包括一组分组。分组可以是指用于传输信息的通信结构,诸如,协议数据单元(PDU)、网络分组、数据报、分段、消息、块、小区、帧、子帧、时隙、符号、上述内容中的任何一项的一部分、和/或能够经由网络来传输的另一种格式化的或者未格式化的数据单元。
如本文使用的,术语“组件”旨在被广泛地解释为硬件、固件和/或硬件和软件的组合。
本文结合阈值描述了一些实现。如本文使用的,满足阈值可以是指值大于阈值、多于阈值、高于阈值、大于或者等于阈值、小于阈值、少于阈值、低于阈值、小于或者等于阈值、等于阈值等,这取决于上下文。
将明显的是:可以按照不同形式的硬件、固件或者硬件和软件的组合来实现本文描述的系统和/或方法。被用于实现这些系统和/或方法的实际专用控制硬件或者软件代码不是对实现的限制。因此,本文未参照特定软件代码来描述系统和/或方法的操作和行为—应该理解,软件和硬件可以被设计为基于本文中的描述来实现系统和/或方法。
虽然在权利要求书中叙述了和/或在本说明书中公开了特征的特定组合,但是这些组合不旨在限制各种实现的公开内容。实际上,可以按照未在权利要求书中具体叙述和/或未在本说明书中公开的方式来组合这些特征中的许多特征。虽然下面列出的每项从属权利要求会仅直接依赖于一项权利要求,但是各种实现的公开内容包括每项从属权利要求以及权利要求集合中的每项其他权利要求。
本文使用的元件、动作或者指令都不应该被解释为是关键的或者必要的,除非明确地如此描述。同样,如本文使用的,冠词“一”和“一个”旨在包括一个或多个项,并且可以与“一个或多个”互换使用。进一步地,如本文使用的,冠词“该”旨在包括结合冠词“该”引用的一个或多个项,并且可以与“一个或多个”互换使用。此外,如本文使用的,术语“集合”旨在包括一个或多个项(例如,相关项、不相关项、相关项和不相关项的组合等),并且可以与“一个或多个”互换使用。在预期仅一个项的情况下,使用短语“仅一个”或者相似的语言。同样,如本文使用的,术语“具有(has)”、“具有(have)”、“具有(having)”等旨在是开放式术语。进一步地,短语“基于”旨在表示“至少部分地基于”,除非另有明确说明。同样,如本文使用的,当一系列使用术语“或者”时,术语“或者”旨在是包括性的,并且可以与“和/或”互换使用,除非另有明确说明(例如,如果结合“两者中任一的”或者“…中的仅一个”使用)。
Claims (20)
1.一种方法,包括:
由网络设备接收分组;
由所述网络设备使用网络堆栈来处理所述分组;
由所述网络设备基于处理所述分组来确定所述分组与误差相关联;
由所述网络设备基于确定所述分组与所述误差相关联来确定与所述分组相关联的元数据;
由所述网络设备生成包括所述元数据的遥测数据;以及
由所述网络设备将所述遥测数据提供至网络分析器,以允许所述网络分析器基于所述元数据来实施网络策略。
2.根据权利要求1所述的方法,其中基于所述网络堆栈指示所述分组将被丢弃,所述分组被确定为与所述误差相关联,并且
其中所述方法还包括:
捕获所述分组;
从所述分组提取所述元数据;以及
使得所述分组能够被丢弃。
3.根据权利要求1所述的方法,其中基于误差计数器随着所述分组通过所述网络堆栈的层被处理而被递增,所述分组被确定为与误差相关联。
4.根据权利要求1所述的方法,其中基于所述分组通过所述网络堆栈的特定层被处理,所述元数据被确定。
5.根据权利要求1所述的方法,其中所述元数据使用所述网络堆栈的过滤器被确定,所述过滤器基于所述分组被所述网络堆栈丢弃而被触发。
6.根据权利要求1所述的方法,其中所述误差引起与所述网络堆栈处理多个分组相关联的误差率满足阈值,并且
其中基于所述误差引起所述误差率满足所述阈值,所述元数据被确定。
7.根据权利要求1所述的方法,其中所述遥测数据经由远程过程调用信道被提供至所述网络分析器。
8.一种设备,包括:
一个或多个存储器;以及
一个或多个处理器,被通信地耦合至所述一个或多个存储器,所述一个或多个处理器被配置为:
监测与网络设备处理经由网络而接收到的多个分组相关联的误差信息;
基于所述误差信息来确定与所述多个分组相关联的误差率;
确定所述误差率满足阈值;
基于所述误差率满足所述阈值来确定与所述多个分组中的误差分组相关联的元数据;
生成遥测数据以包括所述元数据;以及
提供所述遥测数据以引起网络分析器基于所述网络设备接收到所述误差分组来自动实施策略。
9.根据权利要求8所述的设备,其中基于对多个误差分组进行采样以标识所述多个误差分组内的所述误差分组,与所述误差分组相关联的所述元数据被确定,
其中所述多个误差分组引起所述误差率满足所述阈值。
10.根据权利要求8所述的设备,其中基于所述误差信息指示所述误差分组与误差相关联,所述误差分组被获捕。
11.根据权利要求8所述的设备,其中所述误差信息根据正在处理所述多个分组的网络堆栈而被生成。
12.根据权利要求8所述的设备,其中所述误差率使用与正在处理所述多个分组的网络堆栈相关联的统计过滤器被确定。
13.根据权利要求8所述的设备,其中所述误差率与包括具有相同特性的多个误差分组的所述多个分组相关联,
其中所述误差分组是所述多个分组中的一个分组,并且具有所述相同特性,并且
其中所述元数据包括标识所述相同特性的信息。
14.根据权利要求8所述的设备,其中所述遥测数据引起所述网络分析器:基于经由所述网络分析器与所述网络设备之间的远程过程调用信道而接收到的所述遥测数据,来自动实施所述策略。
15.一种存储指令的非瞬态计算机可读介质,所述指令包括:
一个或多个指令,所述一个或多个指令在由网络设备的一个或多个处理器执行时使所述一个或多个处理器:
基于通过在网络堆栈的层上处理分组而生成的误差信息来检测与所述分组相关联的误差;
基于检测到所述误差来确定与所述分组相关联的元数据;
生成遥测数据以包括所述元数据;以及
将所述遥测数据提供至网络分析器以进行策略实施。
16.根据权利要求15所述的非瞬态计算机可读介质,其中所述网络堆栈的所述层与以下中的至少一个相对应:
网络层,或者
传输层。
17.根据权利要求15所述的非瞬态计算机可读介质,其中基于误差计数器随着所述分组通过所述网络堆栈的所述层被处理而被递增,所述分组被确定为与误差相关联。
18.根据权利要求15所述的非瞬态计算机可读介质,其中所述元数据包括来自所述分组的报头的信息。
19.根据权利要求15所述的非瞬态计算机可读介质,其中所述元数据包括所述分组的报头和所述分组的有效负载的至少一部分。
20.根据权利要求15所述的非瞬态计算机可读介质,其中所述元数据基于所述分组的报头中的信息而被确定。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/661,694 | 2019-10-23 | ||
US16/661,694 US11509534B2 (en) | 2019-10-23 | 2019-10-23 | Collection of error packet information for network policy enforcement |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112702383A true CN112702383A (zh) | 2021-04-23 |
Family
ID=73005455
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011132939.5A Pending CN112702383A (zh) | 2019-10-23 | 2020-10-21 | 收集误差分组信息以进行网络策略实施 |
Country Status (3)
Country | Link |
---|---|
US (2) | US11509534B2 (zh) |
EP (1) | EP3813286A3 (zh) |
CN (1) | CN112702383A (zh) |
Families Citing this family (34)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10454714B2 (en) | 2013-07-10 | 2019-10-22 | Nicira, Inc. | Method and system of overlay flow control |
US10135789B2 (en) | 2015-04-13 | 2018-11-20 | Nicira, Inc. | Method and system of establishing a virtual private network in a cloud service for branch networking |
US10498652B2 (en) | 2015-04-13 | 2019-12-03 | Nicira, Inc. | Method and system of application-aware routing with crowdsourcing |
US10992568B2 (en) | 2017-01-31 | 2021-04-27 | Vmware, Inc. | High performance software-defined core network |
US11706127B2 (en) | 2017-01-31 | 2023-07-18 | Vmware, Inc. | High performance software-defined core network |
US20200036624A1 (en) | 2017-01-31 | 2020-01-30 | The Mode Group | High performance software-defined core network |
US20180219765A1 (en) | 2017-01-31 | 2018-08-02 | Waltz Networks | Method and Apparatus for Network Traffic Control Optimization |
US10523539B2 (en) | 2017-06-22 | 2019-12-31 | Nicira, Inc. | Method and system of resiliency in cloud-delivered SD-WAN |
US10841131B2 (en) | 2017-10-02 | 2020-11-17 | Vmware, Inc. | Distributed WAN security gateway |
US11115480B2 (en) | 2017-10-02 | 2021-09-07 | Vmware, Inc. | Layer four optimization for a virtual network defined over public cloud |
US10999100B2 (en) | 2017-10-02 | 2021-05-04 | Vmware, Inc. | Identifying multiple nodes in a virtual network defined over a set of public clouds to connect to an external SAAS provider |
US11223514B2 (en) | 2017-11-09 | 2022-01-11 | Nicira, Inc. | Method and system of a dynamic high-availability mode based on current wide area network connectivity |
US11153230B2 (en) | 2019-08-27 | 2021-10-19 | Vmware, Inc. | Having a remote device use a shared virtual network to access a dedicated virtual network defined over public clouds |
US11509534B2 (en) | 2019-10-23 | 2022-11-22 | Juniper Networks, Inc. | Collection of error packet information for network policy enforcement |
US11044190B2 (en) | 2019-10-28 | 2021-06-22 | Vmware, Inc. | Managing forwarding elements at edge nodes connected to a virtual network |
US11394640B2 (en) | 2019-12-12 | 2022-07-19 | Vmware, Inc. | Collecting and analyzing data regarding flows associated with DPI parameters |
US11489783B2 (en) | 2019-12-12 | 2022-11-01 | Vmware, Inc. | Performing deep packet inspection in a software defined wide area network |
US11606712B2 (en) | 2020-01-24 | 2023-03-14 | Vmware, Inc. | Dynamically assigning service classes for a QOS aware network link |
US11477127B2 (en) | 2020-07-02 | 2022-10-18 | Vmware, Inc. | Methods and apparatus for application aware hub clustering techniques for a hyper scale SD-WAN |
US11709710B2 (en) | 2020-07-30 | 2023-07-25 | Vmware, Inc. | Memory allocator for I/O operations |
US11444865B2 (en) | 2020-11-17 | 2022-09-13 | Vmware, Inc. | Autonomous distributed forwarding plane traceability based anomaly detection in application traffic for hyper-scale SD-WAN |
US11575600B2 (en) | 2020-11-24 | 2023-02-07 | Vmware, Inc. | Tunnel-less SD-WAN |
US11929903B2 (en) | 2020-12-29 | 2024-03-12 | VMware LLC | Emulating packet flows to assess network links for SD-WAN |
US11792127B2 (en) | 2021-01-18 | 2023-10-17 | Vmware, Inc. | Network-aware load balancing |
US11979325B2 (en) | 2021-01-28 | 2024-05-07 | VMware LLC | Dynamic SD-WAN hub cluster scaling with machine learning |
US12009987B2 (en) | 2021-05-03 | 2024-06-11 | VMware LLC | Methods to support dynamic transit paths through hub clustering across branches in SD-WAN |
US11381499B1 (en) | 2021-05-03 | 2022-07-05 | Vmware, Inc. | Routing meshes for facilitating routing through an SD-WAN |
US11729065B2 (en) | 2021-05-06 | 2023-08-15 | Vmware, Inc. | Methods for application defined virtual network service among multiple transport in SD-WAN |
US12015536B2 (en) | 2021-06-18 | 2024-06-18 | VMware LLC | Method and apparatus for deploying tenant deployable elements across public clouds based on harvested performance metrics of types of resource elements in the public clouds |
US11489720B1 (en) | 2021-06-18 | 2022-11-01 | Vmware, Inc. | Method and apparatus to evaluate resource elements and public clouds for deploying tenant deployable elements based on harvested performance metrics |
US11943146B2 (en) | 2021-10-01 | 2024-03-26 | VMware LLC | Traffic prioritization in SD-WAN |
US20230104007A1 (en) * | 2021-10-06 | 2023-04-06 | Cisco Technology, Inc. | Policy-based failure handling for edge services |
US11909815B2 (en) | 2022-06-06 | 2024-02-20 | VMware LLC | Routing based on geolocation costs |
DE102022125715A1 (de) | 2022-10-05 | 2024-04-11 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren und Unterstützungseinrichtung zum Unterstützen einer Robustheitsoptimierung für ein Datenverarbeitungssystem und korrespondierendes CI-System |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160359890A1 (en) * | 2015-06-05 | 2016-12-08 | Cisco Technology, Inc. | System and method of detecting whether a source of a packet flow transmits packets which bypass an operating system stack |
US20160373474A1 (en) * | 2015-06-16 | 2016-12-22 | Intel Corporation | Technologies for secure personalization of a security monitoring virtual network function |
CN107251514A (zh) * | 2015-02-04 | 2017-10-13 | 英特尔公司 | 用于虚拟化网络的可扩缩安全架构的技术 |
US20180262585A1 (en) * | 2017-03-08 | 2018-09-13 | Linkedin Corporation | Sub-second network telemetry using a publish-subscribe messaging system |
US20180278530A1 (en) * | 2017-03-24 | 2018-09-27 | Intel Corporation | Load balancing systems, devices, and methods |
US20180278496A1 (en) * | 2017-03-23 | 2018-09-27 | Cisco Technology, Inc. | Predicting Application And Network Performance |
CN109039884A (zh) * | 2017-06-12 | 2018-12-18 | 瞻博网络公司 | 使用机器学习的网络路径预测和选择 |
US20190104048A1 (en) * | 2017-10-04 | 2019-04-04 | Cisco Technology, Inc. | Centralized error telemetry using segment routing header tunneling |
US20190207832A1 (en) * | 2018-01-04 | 2019-07-04 | Mellanox Technologies Tlv Ltd. | Telemetry for servers and devices using a link-layer protocol |
CN110300090A (zh) * | 2018-03-23 | 2019-10-01 | 瞻博网络公司 | 基于主机威胁的网络地址来实施威胁策略动作 |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6690650B1 (en) * | 1998-02-27 | 2004-02-10 | Advanced Micro Devices, Inc. | Arrangement in a network repeater for monitoring link integrity by monitoring symbol errors across multiple detection intervals |
US7688727B1 (en) * | 2000-04-17 | 2010-03-30 | Juniper Networks, Inc. | Filtering and route lookup in a switching device |
US6915456B2 (en) * | 2001-12-06 | 2005-07-05 | International Business Machines Corporation | Apparatus and method of diagnosing network protocol errors using XML documents |
US20030233463A1 (en) * | 2002-06-14 | 2003-12-18 | O'connor Neil | Network device operation and control |
US7650403B2 (en) * | 2002-11-20 | 2010-01-19 | Microsoft Corporation | System and method for client side monitoring of client server communications |
US7386417B1 (en) | 2004-09-29 | 2008-06-10 | Sun Microsystems, Inc. | Method and apparatus for clustering telemetry signals to facilitate computer system monitoring |
US9912677B2 (en) * | 2005-09-06 | 2018-03-06 | Daniel Chien | Evaluating a questionable network communication |
US8145975B2 (en) * | 2008-02-28 | 2012-03-27 | Ip Video Communications Corporation | Universal packet loss recovery system for delivery of real-time streaming multimedia content over packet-switched networks |
US9386034B2 (en) | 2013-12-17 | 2016-07-05 | Hoplite Industries, Inc. | Behavioral model based malware protection system and method |
US9407522B2 (en) * | 2014-01-31 | 2016-08-02 | Aruba Networks, Inc. | Initiating data collection based on WiFi network connectivity metrics |
US10764162B2 (en) * | 2015-03-25 | 2020-09-01 | Gigamon Inc. | In-fabric traffic analysis |
US10148686B2 (en) | 2016-02-10 | 2018-12-04 | Accenture Global Solutions Limited | Telemetry analysis system for physical process anomaly detection |
US10230609B2 (en) | 2016-04-18 | 2019-03-12 | Nyansa, Inc. | System and method for using real-time packet data to detect and manage network issues |
US11706099B2 (en) | 2018-06-29 | 2023-07-18 | Juniper Networks, Inc. | Monitoring and policy control of distributed data and control planes for virtual nodes |
US11310242B2 (en) * | 2019-01-15 | 2022-04-19 | Raytheon Bbn Technologies Corp. | System and method for protecting network-facing services |
US11509534B2 (en) | 2019-10-23 | 2022-11-22 | Juniper Networks, Inc. | Collection of error packet information for network policy enforcement |
-
2019
- 2019-10-23 US US16/661,694 patent/US11509534B2/en active Active
-
2020
- 2020-10-21 EP EP20203125.8A patent/EP3813286A3/en active Pending
- 2020-10-21 CN CN202011132939.5A patent/CN112702383A/zh active Pending
-
2022
- 2022-10-17 US US18/047,055 patent/US11902096B2/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107251514A (zh) * | 2015-02-04 | 2017-10-13 | 英特尔公司 | 用于虚拟化网络的可扩缩安全架构的技术 |
US20160359890A1 (en) * | 2015-06-05 | 2016-12-08 | Cisco Technology, Inc. | System and method of detecting whether a source of a packet flow transmits packets which bypass an operating system stack |
US20160373474A1 (en) * | 2015-06-16 | 2016-12-22 | Intel Corporation | Technologies for secure personalization of a security monitoring virtual network function |
US20180262585A1 (en) * | 2017-03-08 | 2018-09-13 | Linkedin Corporation | Sub-second network telemetry using a publish-subscribe messaging system |
US20180278496A1 (en) * | 2017-03-23 | 2018-09-27 | Cisco Technology, Inc. | Predicting Application And Network Performance |
US20180278530A1 (en) * | 2017-03-24 | 2018-09-27 | Intel Corporation | Load balancing systems, devices, and methods |
CN109039884A (zh) * | 2017-06-12 | 2018-12-18 | 瞻博网络公司 | 使用机器学习的网络路径预测和选择 |
US20190104048A1 (en) * | 2017-10-04 | 2019-04-04 | Cisco Technology, Inc. | Centralized error telemetry using segment routing header tunneling |
US20190207832A1 (en) * | 2018-01-04 | 2019-07-04 | Mellanox Technologies Tlv Ltd. | Telemetry for servers and devices using a link-layer protocol |
CN110300090A (zh) * | 2018-03-23 | 2019-10-01 | 瞻博网络公司 | 基于主机威胁的网络地址来实施威胁策略动作 |
Also Published As
Publication number | Publication date |
---|---|
US20210126830A1 (en) | 2021-04-29 |
EP3813286A2 (en) | 2021-04-28 |
US11509534B2 (en) | 2022-11-22 |
EP3813286A3 (en) | 2021-08-18 |
US20230063480A1 (en) | 2023-03-02 |
US11902096B2 (en) | 2024-02-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11902096B2 (en) | Collection of error packet information for network policy enforcement | |
CN110557342B (zh) | 用于分析和减轻丢弃的分组的设备 | |
CN112087415B (zh) | 基于应用路径的网络业务控制 | |
CN110912927B (zh) | 工业控制系统中控制报文的检测方法及装置 | |
CN111314328A (zh) | 网络攻击防护方法、装置、存储介质及电子设备 | |
US20170187731A1 (en) | Information processing system, information processing method and program | |
JP2015057930A (ja) | ネットワーク装置、通信システム、異常トラヒックの検出方法およびプログラム | |
US11895148B2 (en) | Detection and mitigation of denial of service attacks in distributed networking environments | |
KR102563888B1 (ko) | 네트워크 환경에서 데이터 프레임 중복 제거 방법, 그 방법을 수행하는 장치 및 컴퓨터 프로그램 | |
WO2019136954A1 (zh) | 网络合规检测方法、装置、设备及介质 | |
US8948020B2 (en) | Detecting and isolating dropped or out-of-order packets in communication networks | |
US10296746B2 (en) | Information processing device, filtering system, and filtering method | |
US9654491B2 (en) | Network filtering apparatus and filtering method | |
CN111694836A (zh) | 遥测数据错误检测 | |
US20180191650A1 (en) | Publish-subscribe based exchange for network services | |
WO2019043804A1 (ja) | ログ分析装置、ログ分析方法及びコンピュータ読み取り可能記録媒体 | |
US11245599B2 (en) | Network traffic monitoring or storage using a signed uniform resource locator | |
CN108156052B (zh) | 一种设备稳定性测试的方法及系统 | |
CN113452663B (zh) | 基于应用特征的网络业务控制 | |
CN111031004B (zh) | 业务流量处理的方法、业务流量学习的方法、装置及系统 | |
CN111258845A (zh) | 事件风暴的检测 | |
US11716263B2 (en) | Network traffic monitoring or storage using a signed uniform resource locator | |
US20230139435A1 (en) | System and method for progressive traffic inspection and treatment ina network | |
CN114499949B (zh) | 设备绑定方法、装置、电子设备和计算机可读介质 | |
CN115150108A (zh) | 面向DDoS防护系统的流量监控方法、设备及介质 |
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 |