用于将分组处理组件重置为操作状态的方法转让专利
申请号 : CN201811626222.9
文献号 : CN110300012B
文献日 : 2021-07-02
发明人 : N·S·帕特尔 , E·斯里尼瓦桑 , A·巴班 , T·L·帕特里克
申请人 : 瞻博网络公司
摘要 :
权利要求 :
1.一种网络设备,包括:
一个或多个存储器;以及
一个或多个处理器,所述一个或多个处理器通信地耦合到所述一个或多个存储器以:接收与一个或多个服务相关联的业务,其中所述业务由多个分组处理组件接收,所述多个分组处理组件中的每个分组处理组件包括一组块,所述一组块是支持分组处理组件的集成电路内的物理区域;
使用扫描技术分析所述分组处理组件以标识针对所述多个分组处理组件中的每个分组处理组件的状态信息,其中所述扫描技术通过扫描一组内部存储器和一组寄存器来识别所述状态信息;
在所述多个分组处理组件正在接收所述业务的同时,存储针对所述多个分组处理组件中的每个分组处理组件的所述状态信息,其中针对所述多个分组处理组件中的分组处理组件的所述状态信息包括:针对所述分组处理组件的状态配置信息,以及针对所述分组处理组件的内部存储信息,以及其中所述状态信息使用数据结构来存储,所述数据结构在所述网络设备内部并且在所述分组处理组件外部;
检测阻止所述分组处理组件处理所述业务的至少一部分的错误;以及基于检测到阻止所述分组处理组件处理所述业务的至少一部分的所述错误来执行恢复过程,所述恢复过程使用所述状态信息将所述分组处理组件重置为操作状态,其中当执行所述恢复过程时,所述一个或多个处理器:禁用所述分组处理组件,
从所述数据结构中获取所述状态配置信息,使用所述状态配置信息恢复针对所述分组处理组件的配置指令,从所述数据结构中获取所述内部存储信息,使用所述内部存储信息将寄存器值恢复到一组内部寄存器,以及重新启用所述分组处理组件。
2.根据权利要求1所述的网络设备,其中除了所述分组处理组件之外,所述多个分组处理组件在所述恢复过程正在被执行的同时接收业务。
3.根据权利要求1所述的网络设备,其中当使用所述扫描技术分析所述分组处理组件时,所述一个或多个处理器:扫描所述一组内部存储器以标识所述状态配置信息中包括针对所述一组内部存储器的存储器值的部分,以及
扫描所述一组内部寄存器以标识所述状态配置信息中包括针对所述一组内部寄存器的所述寄存器值的另一部分,以及使用在所述分组处理组件外部的数据结构来存储所述状态信息。
4.根据权利要求3所述的网络设备,其中所述数据结构是第一数据结构;并且其中当使用所述扫描技术分析所述分组处理组件时,所述一个或多个处理器:扫描在所述分组处理组件外部的第二数据结构,以标识针对所述多个分组处理组件的分组跟踪信息,以及
使用所述第一数据结构存储所述状态信息,其中所述状态信息包括所述分组跟踪信息。
5.根据权利要求1所述的网络设备,其中除了所述分组处理组件之外,所述多个分组处理组件在所述分组处理组件被禁用的同时接收业务,以及其中所述状态配置信息包括来自所述错误发生之前的所述配置指令。
6.根据权利要求1所述的网络设备,其中当执行所述恢复过程时,所述一个或多个处理器进一步:
禁用与所述分组处理组件相关联的一组元素中的元素或与所述元素相关联的功能,其中所述一组元素包括以下中的至少一项:与所述分组处理组件相关联的一组链接,与所述分组处理组件相关联的一组块,或者与所述分组处理组件相关联的一组内部寄存器,其中所述元素是所述一组链接中的链接、所述一组块中的块、或所述一组内部寄存器中的内部寄存器,
从所述数据结构中获取针对所述元素的状态信息,使用针对所述元素的所述状态信息将所述元素重置为所述错误发生之前所述元素所处的状态,以及
重新启用所述元素。
7.根据权利要求1所述的网络设备,其中所述一个或多个处理器在执行所述恢复过程时进一步:使用所述内部存储信息为一组内部存储器恢复存储器值。
8.一种存储指令的非暂态计算机可读介质,所述指令包括:一个或多个指令,所述一个或多个指令在由一个或多个处理器执行时,引起所述一个或多个处理器:
接收与一个或多个服务相关联的业务,其中所述业务由多个分组处理组件接收,所述多个分组处理组件中的每个分组处理组件包括一组块,所述一组块是支持分组处理组件的集成电路内的物理区域;
使用扫描技术分析所述分组处理组件以标识针对所述多个分组处理组件中的每个分组处理组件的状态信息,其中所述扫描技术通过扫描一组内部存储器和一组寄存器来识别所述状态信息;
在所述多个分组处理组件正在接收所述业务的同时,存储针对所述多个分组处理组件中的每个分组处理组件的所述状态信息,其中针对所述多个分组处理组件中的分组处理组件的所述状态信息包括:针对所述分组处理组件的状态配置信息,以及针对所述分组处理组件的内部存储信息,以及其中所述状态信息使用数据结构来存储,所述数据结构存储所述状态信息有限时间段;
检测阻止所述分组处理组件处理所述业务的至少一部分的错误;以及基于检测到阻止所述分组处理组件处理所述业务的至少一部分的所述错误来执行恢复过程,所述恢复过程使用所述状态信息将所述分组处理组件重置为操作状态,其中引起所述一个或多个处理器执行所述恢复过程的所述一个或多个指令引起所述一个或多个处理器:
禁用所述分组处理组件,
从所述数据结构中获取所述状态配置信息和所述内部存储信息,使用所述状态配置信息恢复针对所述分组处理组件的配置指令,使用所述内部存储信息将寄存器值恢复到一组内部寄存器,以及
重新启用所述分组处理组件。
9.根据权利要求8所述的非暂态计算机可读介质,其中所述数据结构是在所述分组处理组件外部的存储器高速缓存。
10.根据权利要求8所述的非暂态计算机可读介质,其中引起所述一个或多个处理器使用所述扫描技术来分析所述分组处理组件的所述一个或多个指令引起所述一个或多个处理器:
扫描所述分组处理组件中所包括的所述一组内部存储器以标识:所述状态配置信息,以及
所述内部存储信息中包括针对所述一组内部存储器的存储器值的部分,以及扫描所述一组内部寄存器以标识所述内部存储信息中包括针对所述一组内部寄存器的所述寄存器值的另一部分,以及使用在所述分组处理组件外部的数据结构存储所述状态信息。
11.根据权利要求8所述的非暂态计算机可读介质,其中引起所述一个或多个处理器存储所述状态信息的所述一个或多个指令引起所述一个或多个处理器:存储针对所述分组处理组件的内部存储信息,其中所述内部存储信息包括:针对所述一组内部寄存器的所述寄存器值,以及针对与所述分组处理组件相关联的一组内部存储器的存储器值。
12.根据权利要求8所述的非暂态计算机可读介质,其中引起所述一个或多个处理器执行所述恢复过程的所述一个或多个指令进一步引起所述一个或多个处理器:禁用与所述分组处理组件相关联的一组元素中的元素或与所述元素相关联的功能,其中除了所述元素之外,所述一组元素能够继续接收业务,从所述数据结构中获取针对所述元素的状态信息,
使用针对所述元素的所述状态信息将所述元素重置为所述错误发生之前所述元素所处的状态,以及
重新启用所述元素。
13.根据权利要求8所述的非暂态计算机可读介质,其中除了所述分组处理组件之外,所述多个分组处理组件在所述恢复过程正在被执行的同时接收业务。
14.一种方法,包括:
由网络设备接收与网络相关联的业务,其中所述业务由多个分组处理组件接收,所述多个分组处理组件中的每个分组处理组件包括一组块,所述一组块是支持分组处理组件的集成电路内的物理区域;
使用扫描技术分析所述分组处理组件以标识针对所述多个分组处理组件中的每个分组处理组件的状态信息,其中所述扫描技术通过扫描一组内部存储器和一组寄存器来识别所述状态信息;
在所述多个分组处理组件正在接收所述业务的同时,由所述网络设备存储针对所述多个分组处理组件中的每个分组处理组件的所述状态信息,其中针对所述多个分组处理组件中的分组处理组件的所述状态信息包括:针对所述分组处理组件的状态配置信息,以及针对所述分组处理组件的内部存储信息,以及其中所述状态信息使用数据结构来存储,所述数据结构在所述分组处理组件外部;
由所述网络设备检测阻止所述分组处理组件处理所述业务的至少一部分的错误;以及由所述网络设备并且基于检测到阻止所述分组处理组件处理所述业务的至少部分的所述错误来执行恢复过程,所述恢复过程使用所述状态信息将所述分组处理组件重置为操作状态,
其中执行所述恢复过程包括:禁用所述分组处理组件,
从所述数据结构中获取所述状态配置信息和所述内部存储信息,使用所述状态配置信息恢复针对所述分组处理组件的配置指令,使用所述内部存储信息恢复针对一组内部寄存器的寄存器值,以及
重新启用所述分组处理组件。
15.根据权利要求14所述的方法,其中所述数据结构存储所述状态信息有限时间段,并且在所述网络设备内部。
16.根据权利要求14所述的方法,其中除了所述分组处理组件之外,所述多个分组处理组件在所述恢复过程正在被执行的同时接收业务。
17.根据权利要求14所述的方法,其中使用扫描技术分析所述分组处理组件包括:扫描所述一组内部存储器以标识所述状态配置信息中包括针对所述一组内部存储器的存储器值的部分,以及
扫描所述一组内部寄存器以标识所述状态配置信息中包括针对所述一组内部寄存器的所述寄存器值的另一部分,以及使用在所述分组处理组件外部的数据结构来存储所述状态信息。
18.根据权利要求14所述的方法,其中所述数据结构是第一数据结构;其中存储所述状态信息包括:
执行扫描技术以从所述分组处理组件标识所述状态配置信息和所述内部存储信息,执行所述扫描技术以从在所述分组处理组件外部的第二数据结构标识针对所述分组处理组件的分组跟踪信息,以及使用所述第一数据结构存储所述状态信息,其中所述状态信息包括所述分组跟踪信息。
19.根据权利要求14所述的方法,其中执行所述恢复过程进一步包括:禁用与所述分组处理组件相关联的一组元素中的元素或与所述元素相关联的功能,从所述数据结构中获取针对所述元素的状态信息,使用针对所述元素的状态信息将所述元素重置为所述错误发生之前所述元素所处的状态,以及
重新启用所述元素。
20.根据权利要求14所述的方法,其中执行所述恢复过程进一步包括:使用所述内部存储信息恢复针对一组内部存储器的存储器值。
说明书 :
用于将分组处理组件重置为操作状态的方法
技术领域
背景技术
发明内容
个分组处理组件正在接收业务的同时,网络设备可以存储针对多个分组处理组件中的每个
分组处理组件的状态信息。针对多个分组处理组件中的分组处理组件的状态信息可以包括
针对分组处理组件的状态信息和/或针对分组处理组件的内部存储信息。状态信息可以使
用在网络设备内部并且在分组处理组件外部的数据结构来存储。网络设备可以检测阻止分
组处理组件处理业务的至少一部分的错误。网络设备可以基于检测到阻止分组处理组件处
理业务的至少一部分的错误来执行恢复过程,该恢复过程使用状态信息将分组处理组件重
置为操作状态。
联的业务。一个或多个处理器接收的业务也可以由多个分组处理组件接收。在多个分组处
理组件正在接收业务的同时,一个或多个指令可以引起一个或多个处理器存储针对多个分
组处理组件中的每个分组处理组件的状态信息。针对多个分组处理组件中的分组处理组件
的状态信息可以包括针对分组处理组件的状态配置信息和针对分组处理组件的内部存储
信息。状态信息可以使用存储状态信息有限时间段的数据结构来存储。一个或多个指令可
以引起一个或多个处理器检测阻止分组处理组件处理业务的至少一部分的错误。基于检测
到阻止分组处理组件处理业务的至少一部分的错误,一个或多个指令可以引起一个或多个
处理器执行恢复过程,该恢复过程使用状态信息将分组处理组件重置为操作状态。除了分
组处理组件之外,多个分组处理组件均可以在恢复过程正在被执行的同时接收业务。
备存储针对多个分组处理组件中的每个分组处理组件的状态信息。针对多个分组处理组件
中的分组处理组件的状态信息可以包括针对分组处理组件的状态配置信息和/或针对分组
处理组件的内部存储信息。该方法可以包括由网络设备检测阻止分组处理组件处理业务的
至少一部分的错误。该方法可以包括由网络设备并且基于检测到阻止分组处理组件处理业
务的至少一部分的错误来执行恢复过程,该恢复过程使用状态信息将分组处理组件重置为
操作状态。
附图说明
具体实施方式
局域网(VLAN)等)、具有更高容量的链路(例如,以允许链路接收更大量的业务)等。
则网络设备可能需要重新启动或执行修复错误的过程,在此期间网络设备可能无法处理任
何业务。例如,如果网络设备支持八个(或更多)分组处理组件,并且错误阻止特定分组处理
组件处理业务,则整个网络设备可能需要重新启动以纠正错误,或者整个网络设备可能需
要脱机以执行纠正错误的过程。在重启时间或执行纠正错误的过程所需要的时间期间,网
络设备可能无法处理任何业务,尽管只有一个分组处理组件正在经历错误。
络设备可以包括一组分组处理组件,并且可以在该组分组处理组件正在处理业务的同时存
储针对每个分组处理组件的状态信息。
将特定分组处理组件重置为操作状态的恢复过程。
组件执行恢复过程的处理资源,通过减少在发生错误时必须重传和/或重新路由的业务量
而节省了网络资源,相对于必须对所有分组处理组件执行恢复过程的较差网络设备节省了
处理资源,等等。
处理组件相关联的错误,并且执行使用状态信息将分组处理组件重置为操作状态的恢复过
程。
为一组块(示出为块1至块X,X≥1),所述一组块是支持分组处理组件的集成电路内的物理
区域。
块可以包括支持允许链路(例如,端口、虚拟局域网(VLAN)等)接收分组的逻辑的一个或多
个块、支持用于为分组分配优先级的逻辑的一个或多个块、支持用于执行负载平衡决策的
逻辑的一个或多个块、支持用于处理不可标识或有问题的分组的逻辑的一个或多个块、支
持用于执行分组跟踪功能的逻辑的一个或多个块、支持用于将分组路由到网络设备的其他
组件(例如,交换结构、另一分组处理组件等)的逻辑的一个或多个块等。
如何处理块内的分组的内部寄存器、能够在块之间路由分组的内部寄存器、能够监测块内
的错误的内部寄存器等。附加地或替代地,该组块可以包括用于存储与分组处理组件相关
联的状态信息的内部存储器(示出为内部存储器1至内部存储器Z,Z≥1),如下所述。
处理功能的电路和/或逻辑。另外,每个块可以具有一千、一万或更多内部寄存器、和/或十
个、五十个、一百个或更多内部存储器。
处理组件(被示出为分组处理组件A至分组处理组件D)。在这种情况下,特定分组处理组件
可以处理业务和/或将业务路由到交换结构,交换结构可以处理业务和/或将业务路由到附
加分组处理组件(被示出为分组处理组件E至分组处理组件H)。此外,附加分组处理组件可
以使用另一组链路(被示出为链路E至链路H)将业务传输到另一设备(例如,另一网络设备、
用户设备、服务器设备等)。
处理组件的状态信息。在这种情况下,网络设备可以通过以下方式来标识状态信息:扫描一
组内部寄存器(例如,以确定由每个内部寄存器存储的值),扫描一组内部存储器(例如,以
确定存储在每个内部存储器内的值),等等。
存器、内部存储器等)在运行时接收、处理、存储和/或提供业务的初始化指令。在这种情况
下,初始化指令可以用于将一组链路配置为能够将业务路由到特定分组处理组件,将与一
组块相关联的电路和/或逻辑配置为能够执行分组路由功能和/或分组处理功能,将一组内
部寄存器配置为能够支持分组路由和/或分组处理功能,等等。
数千个内部寄存器,该数千个内部寄存器每个在特定时间段可以存储用于分组路由和/或
分组处理功能的寄存器值。
RAM(DRAM)存储器高速缓存)、存储状态信息有限时间的数据结构等来存储状态信息。在一
些情况下,数据结构可以在分组处理组件外部。例如,如果分组处理组件发生故障或者不能
处理分组,则网络设备可能需要执行清除分组处理组件内的所有(或一些)数据结构的恢复
过程。这样,状态信息可能需要存储在分组处理组件外部的位置。
扫描能够检测阻止特定分组处理组件处理分组的错误。在一些情况下,特定分组处理组件
的该组内部寄存器可以被配置为在发生特定错误的情况下存储特定比特值,这可以允许网
络设备扫描该组内部寄存器以便检测错误。
化问题(例如,设备可能随着设备老化而开始出现故障)等而引起。附加地或替代地,错误可
以是软件错误,诸如与数据传输有关的错误(例如,前向纠错(FEC)错误、循环冗余校验
(CRC)错误、误比特率(BER)错误等)、与信号完整性问题有关的错误(例如,信噪比(SNR)相
关的错误)等。
够接收和/或处理业务来开始恢复过程。在禁用特定分组处理组件的同时,网络设备可以执
行负载平衡技术以确保剩余分组处理组件能够支持否则将被发送给该特定分组处理组件
的业务。
在错误发生之前的特定分组处理组件的状态。在这种情况下,网络设备可以使用配置信息
来恢复特定分组处理组件的配置值。另外,网络设备可以使用内部存储信息来将寄存器值
恢复到每个内部寄存器和/或将存储器值恢复到每个内部存储器。
多个块相关联的一个或多个链路、电路或逻辑,一个或多个内部寄存器等),而不是禁用整
个特定分组处理组件,并且可以对已经禁用的一个或多个元素执行恢复过程,如本文中进
一步详细描述的。
处理组件的一个或多个元素)。此外,通过执行不破坏其他分组处理组件和/或特定分组处
理组件的部分的业务流的恢复过程,网络设备相对于必须执行中断所有分组处理组件的业
务的恢复过程的较差网络设备而言节省了处理资源和/或网络资源。
或网络、不同的设备和/或网络、或者不同地布置的设备和/或网络。此外,图1A‑1C所示的两
个或更多设备可以在单个设备内实现,或者图1A‑1C所示的单个设备可以实现为多个分布
式设备。附加地或替代地,示例实现100的一组设备(例如,一个或多个设备)可以执行被描
述为由示例实现100的另一组设备执行的一个或多个功能。
230。环境200的设备可以经由有线连接、无线连接或有线和无线连接的组合互连。
服务器(例如,代理服务器、执行虚拟机的服务器等)、负载平衡器或类似类型的设备。附加
地或替代地,对等设备210可以包括作为网络业务的源或目的地的端点设备。例如,对等设
备210可以包括计算机、服务器设备、移动设备或类似类型的设备。对等设备210可以经由网
络230从其他对等设备210接收网络业务和/或向其他对等设备210提供网络业务(例如,通
过使用网络设备220作为中介来路由分组)。
口路由器、出口路由器、提供商路由器(例如,提供商边缘路由器、提供商核心路由器等)、虚
拟路由器等。附加地或替代地,网络设备220可以包括网关、交换机、防火墙、集线器、网桥、
反向代理、服务器(例如,代理服务器、云服务器、数据中心服务器等)、负载平衡器或类似设
备。在一些实现中,网络设备220可以是在诸如机箱等壳体内实现的物理设备。在一些实现
中,网络设备220可以是由云计算环境或数据中心的一个或多个计算机设备实现的虚拟设
备。在一些实现中,网络设备220可以从对等设备210和/或从另一网络设备220接收业务。
分多址(CDMA)网络等)、公共陆地移动网络(PLMN)、局域网(LAN)、广域网(WAN)、城域网
(MAN)、电话网络(例如,公共交换电话网(PSTN))、专用网络、ad hoc网络、内联网、因特网、
基于光纤的网络、云计算网络等、和/或这些或其他类型的网络的组合。
布置的设备和/或网络。此外,
以执行被描述为由环境200的另一组设备执行的一个或多个功能。
备300的一个或多个组件。
342、和/或控制器350。在一些实现中,交换结构310与控制器350之间的业务可以通过单个
内部链接来提供和/或接收。在一些实现中,交换结构310与控制器350之间的业务可以通过
一组板间链路340来提供和/或接收,其中每个板间链路340可以被指定用于外部链路330的
子集和/或线路卡320的子集。在一些实现中,线路卡320可以使用一组板间链路340来与交
换结构310的一个或多个相应平面进行通信。
个共享存储器、和/或一个或多个平面)来实现。在一些实现中,交换结构组件312可以使用
板内(板载)链路342来连接。在一些实现中,交换结构310可以使得外部链路330能够通信。
例如,交换结构310可以经由一组板间链路340与一个或多个线路卡320连接,并且一个或多
个线路卡320可以与外部链路330连接,如本文中进一步描述的。
组处理组件322可以包括一个或多个处理器以处理分组,并且可以处理传入业务,诸如通过
执行数据链路层封装或解封装。在一些实现中,分组处理组件322可以从交换结构310接收
分组,可以处理分组,并且可以将经处理的分组输出到连接到分组处理组件322的适当外部
链路330。附加地或替代地,分组处理组件322可以从外部链路330接收分组,可以处理该分
组,并且可以将经处理的分组输出到交换结构310,以便传输到控制器350和/或另一外部链
路330(例如,经由相同的分组处理组件322或不同的分组处理组件322)。
个线路卡320可以连接到多个外部链路330。在一些实现中,单个线路卡320可以连接到单个
外部链路330。外部链路330可以允许第一网络设备220与第二网络设备220之间的通信,所
述第二网络设备220是第一网络设备220的邻居。外部链路330可以存储分组(例如,在缓冲
器中),和/或可以调度分组,以在输出物理链路上传输。外部链路330可以支持数据链路层
封装或解封装和/或各种更高级协议。
现中,在单个分组处理组件322与交换结构310之间可以存在多个板间链路340。在一些实现
中,在控制器350与交换结构310之间可以存在单个板间链路340。板内(板载)链路342是允
许在线路卡组件322和/或交换结构组件312之间的互连的路径(例如,物理连接、虚拟连接
等)。
(FPGA)、专用集成电路(ASIC)和/或其他类型的处理器。处理器以硬件、固件或硬件和软件
的组合实现。在一些实现中,控制器350可以包括可以被编程以执行功能的一个或多个处理
器。在一些实现中,控制器350可以包括一组虚拟设备,每个虚拟设备包括一个或多个处理
器。
磁存储器、光学存储器等)。
表创建转发表,并且将转发表转发到分组处理组件322,诸如以用于在执行对传入和/或传
出分组的路由查找时使用。
为非暂态存储器设备。存储器设备包括单个物理存储设备内的存储器空间或分布在多个物
理存储设备上的存储器空间。
和/或存储组件中的软件指令可以引起控制器350执行本文中描述的一个或多个过程。附加
地或替代地,可以使用硬连线电路来代替软件指令或与软件指令组合来执行本文中描述的
一个或多个过程。因此,本文中描述的实现不限于硬件电路和软件的任何特定组合。
或替代地,设备300的一组组件(例如,一个或多个组件)可以执行被描述为由设备300的另
一组组件执行的一个或多个功能。
或多个元素。
在一些实现中,可以将组件400分段为一组块422,该组块422是一个或多个集成电路内支持
组件400的物理区域。
块422、支持用于执行负载平衡决策的逻辑的一个或多个块422、支持用于处理不可标识或
有问题的分组的逻辑的一个或多个块422、支持用于执行分组跟踪功能的逻辑的一个或多
个块422、支持用于将分组路由到网络设备220的其他组件(例如,交换结构、另一分组处理
组件等)的逻辑的一个或多个块422等。
外,第三块422(例如,示出为第二块422右侧的块)可以用于执行针对组件400的负载平衡决
策。以这种方式,可以使用每个块422内的电路和/或逻辑执行不同的分组路由和/或分组处
理功能。
机存取存储器(RAM)、只读存储器(ROM)和/或其他类型的动态或静态存储设备(例如,闪存、
磁存储器、光存储器等)。
一个或多个链接、一个或多个块422等的配置指令。作为另一示例,内部存储器423可以存储
与特定路由功能和/或处理功能有关的存储器值。
存器和/或类似类型的寄存器。在一些实现中,该组内部寄存器424可以包括能够用于在块
422内路由分组的内部寄存器424、能够确定如何处理块422内的分组的内部寄存器424、能
够在块422之间路由分组的内部寄存器424、能够监测块422内的错误的内部寄存器424等。
或替代地,组件400的一组元素(例如,一个或多个组件)可以执行被描述为由组件400的另
一组元素执行的一个或多个功能。
的一个或多个处理块可以由网络设备220执行。在一些实现中,图5的一个或多个处理块可
以由与网络设备220分开或包括网络设备220的另一设备或一组设备(诸如对等设备210)执
行。
等)可以标识针对正在接收业务的一组分组处理组件322的状态信息,并且可以使用数据结
构来存储状态信息。状态信息可以包括状态配置信息和/或内部存储信息,如下所述。
和/或板内(板载)链路342的链路、块422、内部寄存器424、内部存储器434等)。例如,状态配
置信息可以包括可以用于将一组链路配置为将业务路由到分组处理组件322的链路配置指
令。在该示例中,链路配置指令可以包括链路标识值(例如,端口标识符(ID)、VLAN ID等)、
链路容量值(例如,指示链路可以在特定时间段处理的带宽量)等。
例中,块配置指令可以包括路由指令(例如,路由表或转发表可以指示分组处理组件322的
元素在何处路由分组)、调度指令(例如,分组可以被分配特定优先级,并且调度指令可以指
示分配给分组的优先级)等。
内部寄存器何时接受或拒绝业务的指令、内部寄存器何时将业务路由到另一内部寄存器或
另一块的指令、内部寄存器何时存储错误的指示符的指令、指示内部寄存器何时存储可以
用于跟踪分组的指示符的指令等。
和/或分组处理功能的时间段,内部存储信息可以包括针对该组内部寄存器424的寄存器
值、该组内部存储器423的存储器值等。
寄存器424的寄存器值可以是跟踪已经处理的分组的总数的值。实际上,内部存储信息可以
存储针对数万个内部寄存器424、数十万个内部寄存器424或更多内部寄存器的寄存器值,
由此每个寄存器值可以在处理业务时动态地改变。
使得可以生成分组统计信息,并且将其提供给与客户端相关联的设备(例如,以监测路由性
能)。因为客户端可以请求针对整个网络设备220的分组统计信息,所以网络设备220可以将
分组跟踪信息存储在每个分组处理组件322的外部。这可以允许组合针对每个分组处理组
件322的分组跟踪信息以向与客户端相关联的设备提供分组统计信息。
(ASIC)等)支持。在一些实现中,分组处理组件322可以被分段为一组块422,所述一组块422
是支持分组处理组件322的集成电路内的物理区域。
组块422可以包括支持允许链路(例如,端口、虚拟局域网(VLAN)等)接收分组的逻辑的一个
或多个块422、支持用于为分组分配优先级的逻辑的一个或多个块422、支持用于执行负载
平衡决策的逻辑的一个或多个块422、支持用于处理不可标识或有问题的分组的逻辑的一
个或多个块422、支持用于执行分组跟踪功能的逻辑的一个或多个块422、支持用于将分组
路由到网络设备的其他组件(例如,交换结构、另一分组处理组件等)的逻辑的一个或多个
更多块422等。
分组的内部寄存器424、能够在块422之间路由分组的内部寄存器424、能够监测块422内的
错误的内部寄存器424等。附加地或替代地,该组块422可以包括用于存储与分组处理组件
322相关联的状态信息的内部存储器423,如下所述。
理业务和/或将业务路由到交换结构310,交换结构310可以处理业务和/或将业务路由到附
加分组处理组件322。此外,附加分组处理组件322可以使用另一组链路将业务传输到对等
设备210和/或另一网络设备220。
备220可以通过以下方式来标识状态信息:扫描一组内部寄存器424(例如,以确定由每个内
部寄存器424存储的值),扫描一组内部存储器423(例如,以确定存储在内部存储器423内的
值),等等。
存)、存储状态信息有限时间段的数据结构等来存储状态信息。在一些情况下,数据结构可
以在分组处理组件322的外部。例如,如果分组处理组件322发生故障或者不能处理分组,则
网络设备220可能需要执行清除包括在该组内部寄存器424中的值和包括在该组内部存储
器423中的值的恢复过程。这样,状态信息可能需要被存储在分组处理组件外部的位置。
识和存储状态信息的新实例。在这种情况下,网络设备220确保如果发生错误,则针对恰好
在错误之前(例如,在发生错误的一秒、十秒、一分钟内)发生的状态来存储该状态信息。
控制器350等)可以执行错误检测技术以扫描该组分组处理组件322,其中该扫描能够检测
阻止分组处理组件322处理业务的至少一部分的错误。
器423、互连425等上的错误。硬件错误可能由电源问题、温度问题(例如,过热)、设备退化问
题(例如,设备可能随着设备老化而开始出现故障)等引起。附加地或替代地,错误可以是软
件错误,诸如与数据传输有关的错误(例如,前向纠错(FEC)错误、循环冗余校验(CRC)错误、
误比特率(BER)错误、与信号完整性问题有关的错误(例如,信噪比(SNR)相关的错误)等。
数据类型的状态信息(例如,特定读数、测量值、属性等),来检测错误。在这种情况下,网络
设备220可以将状态信息与一个或多个错误阈值进行比较。如果状态信息满足一个或多个
错误阈值,则网络设备220可以检测错误。如果状态信息不满足错误阈值,则网络设备220可
以确定不存在错误。
寄存器424,以确定内部寄存器424是否正在存储标识错误的寄存器值。
如,网络设备220(例如,分组处理组件322、控制器350等)可以执行使用状态信息将分组处
理组件322重置为操作状态的恢复过程。
件322的元素)以允许分组处理组件322继续接收业务。操作状态可以是分组处理组件322能
够无错误地处理业务的状态。
阻止分组处理组件322接收业务,等等。当分组处理组件322被禁用时,网络设备220可以执
行负载平衡技术以确保剩余分组处理组件322能够支持否则将被发送给分组处理组件322
的业务。
信息表示在错误发生之前的分组处理组件322的状态。在这种情况下,网络设备220可以使
用状态配置信息来恢复链路配置指令、块配置指令和/或寄存器配置指令。另外,网络设备
220可以使用内部存储信息来恢复该组内部寄存器424的寄存器值和/或该组内部存储器
423的存储器值。
个块422相关联的一个或多个链路、电路或逻辑,一个或多个内部寄存器424等),而不是禁
用整个分组处理组件322,并且可以对一个或多个元素执行恢复过程以将一个或多个元素
重置为操作状态。在执行恢复过程的同时,未禁用的元素可以能够继续接收、处理和/或提
供业务。
设备220可以使用状态信息来恢复一个或多个元素的链路配置指令、块配置指令和/或寄存
器配置指令。另外,网络设备220可以使用内部存储信息来恢复与一个或多个元素相关联的
寄存器值和/或存储器值。另外,网络设备220可以重新启用一个或多个元素,从而允许一个
或多个元素继续接收、处理和/或提供业务。以这种方式,网络设备220相对于不能仅对分组
处理组件322的一个或多个元素执行恢复过程的较差网络设备而言节省了处理资源和/或
网络资源。
500的两个或更多块可以并行执行。
分组处理组件322执行恢复过程的处理资源,通过减少在发生错误时必须重传的业务量而
节省了网络资源,相对于必须对所有分组处理组件322执行恢复过程的较差网络设备节省
了处理资源,等等。
子帧、时隙、符号、上述中任何的一部分、和/或能够经由网络来传输的其他类型的格式化或
未格式化的数据单元。
值、等于阈值等。
制实现。因此,本文中描述了系统和/或方法的操作和行为,而没有参考特定的软件代
码——应当理解,可以设计软件和硬件以基于本文中的描述来实现这些系统和/或方法。
具体陈述和/或在说明书中公开的方式进行组合。尽管下面列出的每个从属权利要求可能
直接仅从属于一个权利要求,但是可能的实现的公开包括每个从属权利要求与权利要求集
合中的每个其他权利要求的组合。
以与“一个或多个”可互换地使用。此外,如本文中使用的,术语“集合”旨在包括一个或多个
项目(例如,相关项目、不相关项目、相关和不相关项目的组合等),并且可以与“一个或多
个”可互换地使用。在仅有一个项目的情况下,使用术语“一个”或类似的语言。此外,如本文
中使用的,术语“具有”、“有”、“拥有”等意图是开放式术语。此外,除非另有明确说明,否则
短语“基于”旨在表示“至少部分基于”。