首页> 中国专利> 用于网络交换机中的灵活和高效分析的方法和装置

用于网络交换机中的灵活和高效分析的方法和装置

摘要

本发明涉及用于网络交换机中的灵活和高效分析的方法和装置。本发明的实施例涉及一种集中式网络分析设备,该集中式网络分析设备高效地使用片上存储器以灵活地执行计数、通信量速率监测和流采样。该设备包括由所有核和每个核的分组处理级共享的存储器池。计数、监控以及采样都通过软件来定义从而允许设备中的更大灵活性和高效分析。在一些实施例中,该设备是网络交换机。

著录项

  • 公开/公告号CN105281946A

    专利类型发明专利

  • 公开/公告日2016-01-27

    原文格式PDF

  • 申请/专利权人 凯为公司;

    申请/专利号CN201510257702.2

  • 申请日2015-05-19

  • 分类号H04L12/24(20060101);

  • 代理机构11256 北京市金杜律师事务所;

  • 代理人王茂华

  • 地址 美国加利福尼亚州

  • 入库时间 2023-12-18 13:43:06

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-05-15

    专利权的转移 IPC(主分类):H04L12/24 登记生效日:20200426 变更前: 变更后: 申请日:20150519

    专利申请权、专利权的转移

  • 2020-02-14

    授权

    授权

  • 2018-12-21

    著录事项变更 IPC(主分类):H04L12/24 变更前: 变更后: 申请日:20150519

    著录事项变更

  • 2017-04-19

    实质审查的生效 IPC(主分类):H04L12/24 申请日:20150519

    实质审查的生效

  • 2016-01-27

    公开

    公开

说明书

技术领域

本发明涉及高速网络交换机中的通信量分析。更具体地,本发明涉及用于网络交换机中的灵活和高效分析的方法和装置,其中分析包括计数、速率监测和流采样。

背景技术

软件定义的网络(SDN)已经出现,并且开放流(openflow)是突出代表之一。进入分组经过系列表搜索和匹配动作以及分析。网络交换机中的良好抽象化至关重要,因为它允许高效使用有限硬件资源、应对可变要求以及简化下一更高级中的编程。

计数器、两速率三色速率监视器(监管)和流采样存在于现有技术的网络交换机中。现有技术的网络交换机使用专用存储器用于这些目的中的每个目的。具体而言,这些计数器、速率监视器和采样器从内部流水线的某些固定级可访问,因为内部流水线的每个处理单元被预定义以执行指定的任务。计数器被用来对在各种条件中经过交换机的分组数目或者通信量字节计数。监管(Policing)将经过交换机的分组分类成三个不同颜色,即绿色、黄色或者红色,这些颜色中的每个颜色可以与不同的服务质量关联。采样(Sampling)将高速通信流量采样成更低速的流并且向系统CPU发送用于附加处理或者分析。因此,现有技术的网络交换机缺乏用以执行计数、通信量速率监测和流采样的灵活性。

发明内容

本发明的实施例涉及一种集中式网络分析设备,该集中式网络分析设备高效地使用片上存储器以灵活地执行计数、通信量速率监测和流采样。该设备包括由所有核和每个核的分组处理级共享的存储器池。计数、监测以及采样都通过软件来定义从而允许设备中的更大灵活性和高效分析。在一些实施例中,该设备是网络交换机。

在一个方面中,提供一种网络交换机。网络交换机包括至少一个核,该至少一个核包括多个流水线级。网络交换机也包括接口模块,该接口模块包括用于与至少一个核的多个流水线级中的每个流水线级通信以从每个流水线级接收请求的统一请求和响应接口。网络交换机也包括公共存储器池,该公共存储器池与接口模块耦合并且用于并行处理请求。

在一些实施例中,网络交换机也包括用于执行多个并行网络分析的分析模块。分析模块包括多个客户端接口、互连和多个分析组块。多个客户端接口和多个分析组块通过该互连来互连。

在一些实施例中,多个客户端接口中的每个客户端接口可编程为映射到多个分析组块中的一个或者多个分析组块。

在一些实施例中,来自公共存储器池的存储器被分成多个分析组块。

在一些实施例中,多个分析组块是同构的。

在一些实施例中,多个分析组块中的每个分析组块包括片上存储器,诸如272位宽和512条目深的片上存储器。

在一些实施例中,多个客户端接口被相似地配置。

在一些实施例中,多个客户端接口中的每个客户端接口包括用于接收请求的请求接口和用于发送响应的响应接口。请求接口对每个请求进行分类并且确定目标分析组块和目标分析组块内的目标条目地址,请求应当将该目标条目地址作为目标。目标分析组块是多个分析组块中的一个分析组块。请求被发送到互连以被路由到目标分析组块用于处理。

在一些实施例中,多个客户端接口中的每个客户端接口被配置为以下四种模式中的一种模式:计数器、监管、利用记账计数器进行监管以及采样。

在一些实施例中,计数模式、监管模式以及采样模式各自以组块粒度被分配,并且其中利用记账计数器进行监管模式以分析组块对的粒度被分配。例如,分析组块2*i用于监管而紧接着的下一分析组块2*i+1用于对应的记账计数器。

在一些实施例中,当分析组块处于计数模式时,分析组块被配置为处于四种配置中的一种配置,其中修改操作对于配置中的每种配置是不同的。修改操作包括针对每个进入请求将events字段的值递增一、将sum字段的值递增进入请求的值以及将sumOfSquare字段的值递增进入请求的值的平方。网络活动的标准偏差通过从sumOfSquare的平均值减去sum的平均值的平方来计算。没有结果响应从分析组块输出,其中计数器值被存储在分析组块的存储器中。在一些实施例中,第五配置仅用于利用记账计数器进行监管模式。

在一些实施例中,当分析组块处于监管模式时,分析组块执行两速率三色速率监测功能。分析组块的每行具有一个监管器,其中监管器具有配置和内部状态。监管器向始发分组的客户端接口之一返回分组的颜色。在一些实施例中,当始发客户端接口被配置为利用记账计数器进行监管模式时,分析组块向它紧接着的下一分析组块发送计数器请求以针对每个颜色的分组计算字节计数。

在一些实施例中,当分析组块处于采样模式时,分析组块支持N/M随机采样,其中N个连续事件以每M个事件的间隔被采样。向用于每个请求的始发客户端接口返回响应。

在另一方面中,提供一种分析组块。分析组块包括至少三个处理单元和存储器旁路模块。

至少三个处理单元包括计数器处理单元、监管处理单元和采样处理单元。监管处理单元能够将对于颜色的字节计数的请求推送到另一分析组块,其中另一分析组块紧接着靠近于该分析组块。

存储器旁路模块隐藏存储器读取延迟。具体而言,存储器旁路模块的输出数据被导向计数器处理单元、监管处理单元或者采样处理单元。

在一些实施例中,当分析组块处于计数器模式时,计数器处理单元被配置为计算针对网络活动统计分析的平方和、求和以及事件计数。在一些实施例中,计数器处理单元被配置为计算网络活动的标准偏差。

在又一方面中,提供一种网络交换机的方法。该方法包括将共享存储器池划分成多个同构分析组块,以及可编程地将多个客户端接口中的每个客户端接口配置为四种模式中的一种模式:计数器、监管、利用记账计数器进行监管或者采样。该方法也包括可编程地将多个客户端接口中的每个客户端接口映射到多个同构分析组块的子集;以及可编程地指派多个同构分析组块中的每个同构分析组块为三种模式中的一种模式:计数器、监管或者采样。该方法也包括并行处理在多个客户端接口处接收的多个请求。

在一些实施例中,并行处理多个请求步骤包括,对于多个请求中的每个请求,确定目标分析组块和目标分析组块内的目标条目地址。

并行处理多个请求步骤也包括,当目标分析组块处于计数器模式时,目标分析组块执行至少一个运算,诸如平方和、求和或者事件计数。也可以计算网络活动的标准偏差。基于目标条目地址来确定在目标分析组块内的计数器条目,并且也确定了在目标分析组块内的存储器行以存储计数器值。

并行处理多个请求步骤也包括,当目标分析组块处于监管模式时,目标分析组块执行两速率三色速率监测功能。目标分析组块向分组的始发客户端接口返回分组的颜色。如果被配置为利用记账计数器进行监管,则目标分析组块将向其紧接着的下一分析组块发送对于针对每个颜色的分组计算字节计数的计数器请求。

并行处理多个请求步骤也可以包括,当目标分析组块处于采样模式时,目标分析组块支持N/M随机采样,其中N个连续事件以每M个事件的间隔被采样。目标分析组块向请求的始发客户端接口返回响应。

附图说明

前文将从对如附图中所示的本发明的示例实施例的以下更具体的描述中变得明显,在附图中,相似标号指代贯穿不同视图的相同部分。附图不一定按比例,相反重点在于图示本发明的实施例。

图1图示了根据本发明的实施例的网络交换机的示例性方面。

图2图示了根据本发明的实施例的分析模块。

图3图示了根据本发明的实施例的用于利用记账计数器模式进行监管的监管分析组块存储器组织。

图4图示了根据本发明的实施例的采样分析组块存储器组织。

图5图示了根据本发明的实施例的分析组块的框图。

图6图示了根据本发明的实施例的网络交换机的方法。

具体实施方式

在以下描述中,出于说明的目的阐述了许多细节。然而,本领域普通技术人员将认识到,可以在不使用这些具体细节的情况下实现本发明。因此,本发明不旨在于限于所示实施例,而是将被赋予与在此描述的原理和特征一致的最广范围。

本发明的实施例涉及一种集中式网络分析设备,该集中式网络分析设备高效地使用片上存储器以灵活地执行计数、通信量速率监测和流采样。该设备包括由所有核和每个核的分组处理级共享的存储器池。计数、监测以及采样都通过软件来定义从而允许设备中的更大灵活性和高效分析。在一些实施例中,该设备是网络交换机。设想了其它联网设备。

图1图示了根据本发明的实施例的网络交换机100的示例性方面。网络交换机100包括一个或者多个核105和通信量管理器110。每个核105通常包括多个流水线级。多个流水线级包括多个分组处理单元115和至少一个分组修改器120。一个或者多个核105中的所有处理单元115、120通过统一请求和响应接口与接口模块125通信(见图2)。接口模块125与公共存储器池130耦合用于请求处理。

图2图示了根据本发明的实施例的分析模块200。分析模块200通常是网络交换机,诸如图1的网络交换机100的一部分。分析模块200包括多个客户端接口205、互连210和多个分析组块215。多个客户端接口205和多个分析组块215通过片上网络210被互连。每个客户端接口205可编程为映射到多个分析组块215中的一个或者多个分析组块。来自图1的公共存储器池130的存储器通常被分成多个分析组块215。在一些实施例中,多个分析组块215是同构的,在于每个分析组块215包含与其它分析组块215相同数目的存储器。在一些实施例中,每个分析组块215包括272位宽和512条目深的片上存储器,尽管其它存储器大小是有可能的。

在一些实施例中,相似地配置客户端接口205。每个客户端接口205通常具有请求接口205a和响应接口205b。客户端接口205的请求接口205a被配置为从分组处理单元接收各自包括请求地址和请求值的进入请求,并且客户端接口205的响应接口205b被配置为向分组处理单元发送响应。在一些实施例中,分组处理单元与图1的核105对应。每个请求接口205a通常对每个进入请求进行分类并且确定目标分析组块和在目标分析组块内的目标条目地址,请求应当将该目标条目地址作为目标。目标分析组块通常是客户端接口205被映射到的多个分析组块215中的一个或者多个分析组块之一。然后,请求被发送到片上网络210以被路由到目标分析组块215用于处理。每个请求通常具有不多于一个响应(即,无响应或者恰好一个响应)。

表1图示了用于每个客户端接口205的表配置。每个客户端接口205可以被配置为如由mode字段指示的四种可能模式(即计数、监管、利用记账计数器进行监管以及采样)中的一种模式。

表1

如以上讨论的那样,尽管分析组块215的大小是相同的,但是在客户端接口205与分析组块215之间的连接是通过软件可编程的。具体而言,每个客户端接口205到分析组块215的子集的映射可以通过软件来定义。在一个极端情况中,客户端接口205可以使用一个分析组块215。在相反的极端情况中,客户端接口205可以使用所有分析组块215。两个或者更多客户端接口205有可能使用分析组块215的相同子集。

每个客户端接口205能够利用如由anaBankStart和anaBankEnd字段指定的一个或者多个分析组块215,其中在它们之间的分析组块215通常是连续的。entryPerBank字段指示驻留在每个分析组块215中的条目的数目。entryPerBank字段被用来计算用于每个请求的目标分析组块215。在一些实施例中,进入请求地址除以每分析组块215的条目数目(即,entryPerBank)的整数部分变成目标分析组块ID,并且进入请求地址的最低有效位被用来生成在该分析组块215内的目标条目地址。

在一些实施例中,分析组块215中的一对或者多对分析组块被连接用于利用记账计数器进行监管模式。换言之,计数器模式、监管模式以及采样模式各自以组块粒度被分配,并且利用记账计数器进行监管模式在以分析组块215对的粒度被分配,使得分析组块2*i用于监管而紧接着的下一分析组块2*i+1用于对应的记账计数器。

计数

表2列举了在计数器模式中的分析组块215支持的计数配置。在计数器模式中,分析组块215可以被配置为四个不同配置中的一个配置:A、B、C和D。

表2

修改运算对于计数器模式配置中的每个计数器模式配置是不同的。在计数器模式配置A中,计数器条目包含三个字段:sumOfSquare、sum和events。events字段的值针对每个进入请求被递增一。sum字段的值被递增进入请求的值。sumOfSquare字段的值被递增进入请求的值的平方。这样,更高等级应用可以使用该计数器模式配置A以通过从sumOfSquare的平均值(sumOfSquare/events)减去sum的平均值(即,sum/events)的平方来推导标准偏差。标准偏差启用网络交换机的附加统计分析。计数器模式配置B、C、D和P被相似地组织为计数器模式配置A。在一些实施例中,计数器模式配置P仅用于利用记账计数器进行监管,并且因此对图2的客户端接口205不可见。以下讨论了利用记账计数器进行监管。

如表2中所示,每个计数器条目小于存储器宽度。目标条目地址的最低有效位被用来选择在存储器内的计数器条目,而最高有效位被用来选择分析组块内的存储器行。通常不存在针对计数器模式的结果响应。换言之,没有响应从分析组块输出。更确切地说,计数器值被存储在分析组块的存储器中用于系统CPU来读取。

基于分析组块的配置,字段中的每个字段将保持在它们的最大值或者折返。

监管

图2的分析组块215中的每个分析组块可以被配置为两速率三色标记监管分析组块以执行标准两速率三色速率监测功能。监管分析组块的每一行具有一个监管器或者速率监测器。在此可互换地使用术语监管器和速率监测器。监管器将每个分组分类为三种颜色中的一种颜色:红色、黄色和绿色。如果分组超过峰值速率,则它被标记红色。否则,分组根据分组是否超过或者未超过承诺速率而被标记黄色或者绿色。

每个监管器具有它自己的配置和内部状态。通常,内部状态在监管器的上半部分中,而配置在监管器的下半部分中。配置通常包括两个速率,而状态通常包括当前速率是什么。监管器向始发客户端接口返回分组的颜色。

利用记账计数器进行监管包括偶数数目的分析组块,其中分析组块2*i用于监管而分析组块2*i+1用于关联的记账计数器。图3图示了根据本发明的实施例的用于利用记账计数器模式进行监管的监管分析组块存储器组织300。如图3中所示,当始发客户端接口被配置为利用记账计数器进行监管模式时,在监管模式中配置的分析组块305向它的在计数器模式配置P中配置的紧接着的下一分析组块310发送计数器请求。这样,在分析组块310处针对每个颜色的分组计算字节计数。

采样

表3列举了在采样器模式中的分析组块215的支持的采样配置。每个分析组块215被配置为支持N/M随机采样,其中N个连续事件以每M个事件的间隔被采样。在每个间隔内,采样的事件从随机偏移开始。在该模式中,每个采样器具有如表3中所示的关联的配置。M被计算为M_base*2M_expo

表3

表4图示了用于分析组块中的每个单独采样器的采样器状态。

表4

如表4中所示,total_cnt字段记录已经被采样的事件的总数。从CPU读取和清空total_cnt字段,使得系统可以获得关于采样器的重要统计量。它也保持中间状态以将当前采样间隔的开始和结束计数为interval_event_cnt,在每个间隔的开始处,随机采样开始点被决定,因此事件interval_samp_start至interval_samp_start+N-1被采样。向用于每个请求的始发客户端接口返回采样或者非采样响应。

图4图示了根据本发明的实施例的采样分析组块存储器组织400。如图4中所示,两个采样条目驻留在存储器行上,而目标条目地址的最低有效位被用来选择这两个条目中的一个条目而所有其它位被用来选择目标存储器行。

分析组块

图5图示了根据本发明的实施例的分析组块500的框图。如分析组块215那样相似地配置分析组块500。用于计数器、监管以及采样的所有操作可以被分类为存储器读取-修改-写入。由于可能存在针对存储器的读取延迟,该读取延迟可能产生冒险,所以存储器旁路模块505被用来隐藏存储器读取延迟。存储器旁路模块505的输出数据被导向三个处理单元中的一个处理单元,即计数器处理单元520、监管处理单元510或者采样处理单元515。如以上讨论的那样,监管处理单元510能够将对于每个颜色的字节计数的请求推送到它的紧接着的下一分析组块(未图示)。

图6图示了根据本发明的实施例的网络交换机,诸如图1的网络交换机100的方法600。如以上讨论的那样,网络交换机100包括接口模块和共享存储器池。接口模块通常包括多个客户端接口。客户端接口中的每个客户端接口包括用于接收请求的请求接口和用于发送响应的响应接口。

在步骤605,共享存储器池被划分成多个同构分析组块。在一些实施例中,同构分析组块中的每个同构分析组块包括272位宽和512条目深的片上存储器。

在步骤610,可编程地将多个客户端接口中的每个客户端接口配置为四种模式中的一种模式:计数器、监管、利用记账计数器进行监管或者采样。

在步骤615,将多个客户端接口中的每个客户端接口可编程地映射到多个同构分析组块的子集。在一种极端情况中,客户端接口被映射到单个分析组块。在相反的极端情况中,客户端接口被映射到所有分析组块。

在步骤620,可编程地指派多个同构分析组块中的每个同构分析组块为三种模式中的一种模式:计数器、监管或者采样。

在步骤625,并行处理在多个客户端接口处接收的多个请求。针对多个请求中的每个请求,确定目标分析组块以及目标分析组块内的目标条目地址。

当目标分析模块处于计数器模式时,目标分析组块执行至少一个运算,诸如平方和、求和或者事件计数。也可以计算网络活动的标准偏差。基于目标条目地址确定在目标分析组块内的计数器条目。目标分析组块内的存储器行也被确定为存储计数器值。

当目标分析组块处于监管模式时,目标分析组块执行两速率三色速率监测功能。目标分析组块向分组的始发客户端接口返回分组的颜色。当始发客户端接口被配置为利用记账计数器进行监管时,目标分析组块向紧接着的下一分析组块发送对于针对每个颜色的分组计算字节计数的计数器请求。

当目标分析组块处于采样模式时,目标分析组块支持N/M随机采样,其中N个连续事件以每M个事件被采样。目标分析组块向请求的始发客户端接口返回响应。

本发明的网络交换机不同于现有技术中的那些网络交换机,其中计数器模块、监管模块、采样模块或者所有这些模块被固定有特定处理单元。与现有技术相比,计数、监测以及采样都通过软件来定义或者编程从而允许在本发明的网络交换机中的更大灵活性和高效分析。

本领域普通技术人员将认识到其它使用和优点也存在。尽管已经参照许多具体细节描述了本发明,但是本领域普通技术人员将认识到可以在其它具体形式中体现本发明而不偏离本发明的精神。因此,本领域普通技术人员将会理解,本发明不会受前述说明性细节所限制,而是更确切地由所附权利要求限定。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号