CN115022234A - 有冗余转发组件的网络设备的硬件辅助快速数据路径切换 - Google Patents

有冗余转发组件的网络设备的硬件辅助快速数据路径切换 Download PDF

Info

Publication number
CN115022234A
CN115022234A CN202110458656.8A CN202110458656A CN115022234A CN 115022234 A CN115022234 A CN 115022234A CN 202110458656 A CN202110458656 A CN 202110458656A CN 115022234 A CN115022234 A CN 115022234A
Authority
CN
China
Prior art keywords
component
forwarding
physical interface
forwarding component
routing
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
CN202110458656.8A
Other languages
English (en)
Inventor
D·B·博蒂亚
V·萨蒂亚纳拉亚纳
S·拉希姆
S·马赫什
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.)
Juniper Networks Inc
Original Assignee
Juniper Networks Inc
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 Juniper Networks Inc filed Critical Juniper Networks Inc
Publication of CN115022234A publication Critical patent/CN115022234A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/56Routing software
    • H04L45/566Routing instructions carried by the data packet, e.g. active networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/22Alternate routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/38Flow based routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/42Centralised routing

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

涉及有冗余转发组件的网络设备的硬件辅助快速数据路径切换。一种网络设备可以接收分组,其中网络设备包括第一路由组件、第二路由组件、第一转发组件、第二转发组件以及具有多个物理接口卡的物理接口卡集中器。第一路由组件可以向物理接口卡集中器提供指示第二转发组件将是活动转发组件的信号。物理接口卡集中器可以基于信号使针对多个物理接口卡的数据路径从第一转发组件被切换到第二转发组件。第一路由组件可以向第二转发组件提供分组。第二转发组件可以经由数据路径向多个物理接口卡提供分组。多个物理接口卡可以朝向与分组相关联的目的地转发分组。

Description

有冗余转发组件的网络设备的硬件辅助快速数据路径切换
技术领域
本发明涉及具有冗余转发组件的网络设备,特别地,涉及具有冗余转发组件的网络设备的硬件辅助快速数据路径切换。
背景技术
一些网络设备可以包括对各种应用(诸如数据中心、不同组织的局域网(LAN)和服务提供方聚合部署)有用的硬件架构。这样的应用可以要求具有接近零分组损失的数据路径冗余。
发明内容
在一些实施方式中,一种方法可以包括由网络设备接收一个或多个分组;其中网络设备包括第一路由组件、第二路由组件、第一转发组件、第二转发组件以及具有多个物理接口卡的物理接口卡集中器。方法可以包括:由第一路由组件向物理接口卡集中器提供指示第二转发组件将是活动转发组件的信号;以及由物理接口卡集中器基于信号,使针对多个物理接口卡的数据路径从第一转发组件被切换到第二转发组件。方法可以包括:由第一路由组件向第二转发组件提供一个或多个分组;以及由第二转发组件经由数据路径向物理接口卡集中器的多个物理接口卡提供一个或多个分组。方法可以包括:由多个物理接口卡,朝向与一个或多个分组相关联的一个或多个目的地转发一个或多个分组。
在一些实施方式中,网络设备可以包括第一路由组件;第二路由组件;第一转发组件;第二转发组件;以及具有多个物理接口卡的物理接口卡集中器。第一路由组件可以被配置为向物理接口卡集中器提供指示第二转发组件将是活动转发组件的信号,并且向第二转发组件提供一个或多个分组。物理接口卡集中器可以基于信号,使针对多个物理接口卡的数据路径从第一转发组件被切换到第二转发组件。第二转发组件可以被配置为经由数据路径向物理接口卡集中器的多个物理接口卡提供一个或多个分组。多个物理接口卡可以被配置为朝向与一个或多个分组相关联的一个或多个目的地转发一个或多个分组。
在一些实施方式中,系统可以包括:第一路由组件;第二路由组件;第一转发组件;第二转发组件;以及多个物理接口卡。第一路由组件被配置为提供指示第二转发组件将是活动转发组件的信号,并且向第二转发组件提供一个或多个分组。基于信号,针对物理接口卡的数据路径从第一转发组件被切换到第二转发组件。第二转发组件可以被配置为经由数据路径向物理接口卡提供一个或多个分组。多个物理接口卡可以被配置为:朝向与一个或多个分组相关联的一个或多个目的地转发一个或多个分组;接收一个或多个附加分组;以及向第二转发组件提供一个或多个附加分组,以使第二转发组件向第一路由组件提供一个或多个附加分组。
附图说明
图1A至图1F是与具有冗余转发组件的网络设备的切换相关联的示例实施方式的图。
图2是本文中所描述的系统和/或方法可以在其中被实施的示例环境的图。
图3是图2的一个或多个设备的示例组件的图。
图4是图2的一个或多个设备的示例组件的图。
图5是用于具有冗余转发组件的网络设备的切换的示例过程的流程图。
具体实施方式
示例实施方式的以下详细描述参考随附附图。不同附图中的相同附图标记可以标识相同或类似的元件。
数据路径冗余可以被用于解决硬件故障、软件故障、软件升级以及可能中断网络设备的操作的事件的其他示例。数据路径冗余可以通过使用两个路由组件和两个转发组件在网络设备中被实施。网络设备还可以包括多个灵活物理接口卡集中器(FPC),并且每个FPC可以包括多个物理接口卡(PIC)。网络设备可以在PIC与转发组件之间建立数据路径。转发组件中的一个转发组件可以是将业务(例如分组)转发给FPC的活动转发组件。转发组件中的另一转发组件可以是备用转发组件,当相对于活动转发组件检测到硬件故障和/或软件故障时,该备用转发组件将业务转发给FPC。
PIC可以从活动转发组件接收业务,并且可以朝向与该业务相关联的目的地转发业务。PIC还可以向活动转发组件和备用转发组件播送由网络设备接收到的业务。在从活动转发组件向备用转发组件的切换期间,每个FPC上的PIC需要切换并且从备用转发组件(例如,其已成为新的活动转发组件)选择业务。
相对于当前的切换技术,每个PIC需要利用在切换之后标识新的活动转发组件的信息而被升级(以串行方式),新的活动转发组件与PIC之间的新数据路径需要在切换之后被重新建立,并且控制路径需要在新的活动转发组件与PIC之间被重新建立。因此,当前的切换技术受限于时延和延迟。这样的切换时延和延迟可能导致网络设备经历分组损失。
随着(网络设备的)FPC和/或PIC的数量增加,切换时延和延迟以及分组损失被加剧。因此,当前的切换技术浪费了计算资源(例如处理资源、存储器资源、通信资源等)、网络资源、和/或与检测分组损失、由于分组损失而导致分组的重传、重新配置网络设备以减轻分组损失以及其他减轻分组损失的动作的示例相关联的其他资源。
本文中所描述的一些实施方式涉及针对网络设备的冗余转发组件提供切换的网络设备。例如,网络设备可以接收一个或多个分组,其中网络设备包括第一路由组件、第二路由组件、第一转发组件、第二转发组件以及具有多个物理接口卡(PIC)的物理接口卡集中器(FPC)。网络设备可以由第一路由组件向物理接口卡集中器提供指示第二转发组件将是活动转发组件的信号;以及可以由物理接口卡集中器基于信号,使针对多个物理接口卡的数据路径从第一转发组件被切换到第二转发组件。网络设备可以由第一路由组件向第二转发组件提供一个或多个分组;以及可以由第二转发组件经由数据路径向物理接口卡集中器的多个物理接口卡提供一个或多个分组。网络设备可以由多个物理接口卡,朝向与一个或多个分组相关联的一个或多个目的地转发一个或多个分组。
如本文中所解释,(网络设备的)路由组件可以生成第一信号,并且可以向网络设备的FPC中的所有FPC提供第一信号。第一信号可以基于当前活动转发组件的检测到的故障(例如硬件故障或软件故障)和/或基于另一路由组件的检测到的故障(例如硬件故障或软件故障)被生成。该实施方式还可以被扩展为还监测当前活动转发组件上的个别组件。第一信号可以包括标识网络设备的新的活动转发组件的信息和/或标识路由组件作为网络设备的活动路由组件的信息。
基于第一信号,FPC可以生成第二信号,并且向(FPC的)PIC提供第二信号以使PIC将数据路径同时切换到新的活动转发组件。换句话说,所有FPC上的所有PIC都可以使用活动路由组件上的单个软件写入操作或自动硬件触发操作来同时切换数据路径。提供第一信号和第二信号使得能够分离在通信之上的数据路径故障和控制路径故障。本文中所描述的实施方式使得软件计划的事件能够以高效且无缝的方式触发数据路径切换。本文中所描述的实施方式还实现了快速切换方案,该快速切换方案在几乎所有切换场景中实现接近零分组损失。使用第一信号对活动转发组件的选择使得能够相对于成对(例如彼此相关联)的路由组件和转发组件或相对于彼此独立的路由组件和转发组件灵活地部署。
使PIC将数据路径同时切换到新的活动转发组件减少了切换时延和延迟。使PIC同时切换数据路径还减少了切换到新的活动转发组件时的分组损失。因此,网络设备可以节省计算资源、网络资源和/或其他资源,这些资源原本会通过检测分组损失、由于分组损失而导致分组的重传、重新配置网络设备以减轻分组损失等而被消耗。
图1A至图1F是与具有冗余转发组件的网络设备的切换相关联的示例实施方式100的图。如图1A至图1F中所示出,示例实施方式100包括与包括多个网络设备的网络相关联的端点设备。端点设备中的每个端点设备可以包括无线通信设备、移动电话、膝上型计算机、平板计算机、台式计算机等,如本文中所描述。网络设备中的每个网络设备可以包括路由器、网关、交换机、防火墙、集线器、网桥、反向代理等。虽然图1A至图1F描述了与单个端点设备交互的网络设备,但在一些实施方式中,网络设备可以以类似的方式与多个端点设备交互。
如图1A中并且由附图标记105所示出,网络设备可以接收以与端点设备相关联的目的地地址为目的地的一个或多个分组。例如,网络设备可以从第一端点设备接收一个或多个分组,并且一个或多个分组可以以第二端点设备的目的地地址为目的地。目的地地址可以包括网络地址、因特网协议地址等。在一些示例中,网络设备可以接收一个或多个分组作为第一端点设备与第二端点设备之间的会话的一部分。
在一些实施方式中,网络设备可以包括第一路由组件(RC1)、第二路由组件(RC2)、第一转发组件(FC1)、第二转发组件(FC2)和多个灵活物理接口卡集中器(FPC)。在一些示例中,在活动路由组件发生故障的事件中,第一路由组件可以是网络设备的活动路由组件,且第二路由组件可以是网络设备的备用路由组件(或反之亦然)。
活动路由组件可以被配置为:与网络设备的组件(例如第一转发组件、第二转发组件、多个灵活物理接口卡集中器等)通信,接收和传输路由信息,构建和维持路由数据结构(例如路由表)以及针对网络设备的控制功能和/或管理功能的其他示例。在一些实施方式中,第一路由组件和第二路由组件中的每个可以包括控制单元。在一些示例中,控制单元可以包括中央处理单元(CPU)、现场可编程门阵列(FPGA)、专用集成电路(ASIC)等。
在一些示例中,第一转发组件可以是网络设备的活动转发组件,且第二转发组件可以是网络设备的备用转发组件(或反之亦然)。活动转发组件可以被配置为将分组(例如在网络设备的一个或多个端口处接收到的)转发给活动路由组件,或使分组朝向分组的一个或多个目的地被转发。在一些实施方式中,第一转发组件和第二转发组件中的每个可以包括控制单元。在一些示例中,控制单元可以包括CPU、FPGA、ASIC等。
灵活物理接口卡集中器(或物理接口卡集中器)(FPC)可以是包括控制单元和多个物理接口卡(PIC)的组件。在一些示例中,控制单元可以包括CPU、FPGA、ASIC等。当第一转发组件是网络设备的活动转发组件时,控制单元可以使PIC建立与第一转发组件的数据路径;当第二转发组件是活动转发组件时,控制单元可以使PIC建立与第二转发组件的数据路径。在一些实施方式中,PIC可以接收一个或多个分组且向第一转发组件(例如活动转发组件)提供一个或多个分组。第一转发组件可以向第一路由组件提供一个或多个分组。
假设第一路由组件是网络设备的活动路由组件,第二路由组件是网络设备的备用路由组件,第一转发组件是网络设备的活动转发组件,并且第二转发组件是网络设备的备用转发组件。进一步假设已经利用指示第一转发组件是网络设备的活动转发组件并且第二转发组件是网络设备的备用转发组件的信息升级了FPC(例如FPC的控制单元)和(FPC的)PIC。进一步假设已经在第一转发组件与多个FPC的PIC中的每个PIC之间建立了数据路径(例如活动数据路径)。
如图1B中并且由附图标记110所示出,网络设备可以提供指示第二转发组件将是活动转发组件的第一信号。例如,第一路由组件可以向网络设备的FPC提供指示第二转发组件将成为活动转发组件的第一信号。在一些实施方式中,第一路由组件可以接收从第一转发组件到第二转发组件的切换的指示(例如以使第二转发组件成为活动转发组件)。在一些示例中,可以基于网络设备的(例如由网络设备的管理员)重新配置来接收切换的指示。作为示例,管理员可能正在执行网络设备的升级(例如软件升级)。可以独立于正在经历故障的第一转发组件接收切换的指示(例如,在第一转发组件没有经历故障的情况下接收)。
第一路由组件(例如第一路由组件的控制单元)可以基于切换的指示来生成指示第二转发组件将成为活动转发组件的第一信号。在一些示例中,第一路由组件可以利用指示第二转发组件是活动转发组件的信息被升级。假设在更新该信息之前,第一路由组件与第一转发组件相关联。在更新该信息之后,第一路由组件可以与第二转发组件相关联(而不是与第一转发组件相关联)。作为更新信息的一部分,第一路由组件的控制单元的一个或多个指令可以被更新(例如软件写入)以使第二转发组件被选择为活动转发组件。在一些示例中,作为更新信息的结果,第一路由组件(例如第一路由组件的控制单元)可以生成第一信号并且向FPC(例如向FPC的控制单元)提供该第一信号。
在一些实施方式中,作为指示第二转发组件将成为活动转发组件的第一信号的附加或备选,第一信号可以指示第一路由组件是网络设备的活动路由组件、第一路由组件可操作、和/或第二路由组件是网络设备的备用路由组件。备选地,除了第一信号以外,第一路由组件还可以生成并且(向FPC)提供指示第一路由组件是网络设备的活动路由组件的信号、指示第一路由组件可操作的信号、和/或指示第二路由组件是网络设备的备用路由组件的信号。第一路由组件可以以类似方式向网络设备的一个或多个其他FPC提供第一信号(或多个信号)。
如图1B中并且由附图标记115所示出,网络设备可以使针对多个PIC的数据路径从第一转发组件被切换到第二转发组件。例如,FPC(例如使用FPC的控制单元)可以接收第一信号,并且可以基于该第一信号使针对(FPC的)PIC中的每个PIC的数据路径(例如活动数据路径)从第一转发组件被切换到第二转发组件。在一些实施方式中,FPC(例如使用FPC的控制单元)可以分析第一信号,并且基于分析第一信号确定针对(FPC的)PIC中的每个PIC的数据路径从第一转发组件被切换到第二转发组件。
在一些示例中,基于确定针对PIC中的每个PIC的数据路径将从第一转发组件被切换到第二转发组件,FPC(例如FPC的控制单元)可以利用指示第二转发组件是活动转发组件的信息被升级。在一些实施方式中,基于确定针对PIC中的每个PIC的数据路径将从第一转发组件被切换到第二转发组件,FPC(例如使用FPC的控制单元)可以生成切换信号,该切换信号指示针对(FPC的)PIC中的每个PIC的数据路径(例如活动数据路径)将从第一转发组件被切换到第二转发组件。FPC(例如使用FPC的控制单元)可以向PIC中的每个PIC提供切换信号,以使针对PIC中的每个PIC的数据路径基于切换信号从第一转发组件被切换到第二转发组件。在一些示例中,FPC可以向PIC提供切换信号,以使PIC中的每个PIC建立具有与第二转发组件的数据路径作为活动数据路径,并使PIC中的每个PIC维持与第一转发组件的数据路径作为备用数据路径。
FPC(例如使用FPC的控制单元)可以向PIC中的每个PIC提供切换信号,以使PIC将数据路径从第一转发组件同时切换到第二转发组件。在一些示例中,基于接收到切换信号,PIC可以利用指示第二转发组件是活动转发组件的信息被升级。基于更新信息,PIC可以被配置为从第二转发组件(而不是从第一转发组件)获得要由网络设备传输的分组(例如一个或多个分组)。
在一些示例中,基于从第一路由组件接收到第一信号,(网络设备的)一个或多个其他FPC可以生成切换信号并且向相应的PIC提供该切换信号,以使相应的PIC以与上文所描述的方式类似的方式将数据路径从第一转发组件同时切换到第二转发组件。在这一点上,(FPC的以及一个或多个其他FPC的)PIC中的每个PIC可以基于对第一路由组件(如上文所描述)的控制单元的单一升级,将数据路径从第一转发组件同时切换到第二转发组件。
在一些实施方式中,第一路由组件与FPC之间以及FPC与PIC之间的通信(例如与切换数据路径相关)可以以及时的方式发生(例如以时钟速度发生)。因此,网络设备可以减少(或消除)分组损失的可能性。通过减少或消除分组损失的可能性,网络设备可以节省计算资源、网络资源和/或其他资源,这些资源原本会通过检测分组损失、导致分组的重传、重新配置网络设备以减轻分组损失等而被消耗。
在一些实施方式中,业务(例如分组)可以在网络设备的第一端口处被接收。业务可以被提供给一个或多个第一FPC的一个或多个第一PIC。一个或多个第一PIC可以向活动转发组件提供业务。活动转发组件可以向一个或多个第二FPC的一个或多个第二PIC提供业务。一个或多个第二PIC可以向第二端口提供业务。一个或多个第一PIC可以与一个或多个第二PIC不同或相同,一个或多个第一FPC可以与一个或多个第二FPC不同或相同,和/或第一端口可以与第二端口不同或相同。业务可以被称为转接业务(transit traffic)。
如图1C中并且由附图标记120所示出,网络设备可以向第二转发组件提供一个或多个分组。例如,第一路由组件可以使一个或多个分组被提供给第二转发组件(而不是第一转发组件)。在一些实施方式中,第一路由组件可以基于接收到切换的指示、基于利用指示第二转发组件是活动转发组件的信息被升级、基于第一路由组件与第二转发组件相关联(而不是与第一转发组件相关联)、和/或基于生成并且提供第一信号,来使一个或多个分组被提供给第二转发组件。
如图1C中并且由附图标记125所示出,网络设备可以朝向目的地转发一个或多个分组。例如,第二转发组件可以向FPC的PIC中的一个或多个PIC提供一个或多个分组,并且一个或多个PIC可以朝向一个或多个分组的目的地转发一个或多个分组(例如,朝向第二端点设备的目的地地址转发一个或多个分组)。在一些实施方式中,一个或多个PIC可以经由第二转发组件与一个或多个PIC之间的数据路径(例如活动数据路径)从第二转发组件获得一个或多个分组。
(一个或多个PIC的)一个或多个控制单元可以基于切换信号、基于指示第二转发组件是活动转发组件的信息等,使一个或多个PIC经由数据路径从第二转发组件获得一个或多个分组。在一些实施方式中,在活动路由组件、活动转发组件、网络设备的一个或多个端口之间(经由一个或多个FPC的一个或多个PIC)流动的业务可以被称为主机业务。
在一些实施方式中,(FPC的)一个或多个PIC可以(例如从第二端点设备)接收一个或多个附加分组。基于将数据路径从第一转发组件切换到第二转发组件,一个或多个PIC可以经由数据路径向第二转发组件提供一个或多个附加分组。第二转发组件可以向第一路由组件提供一个或多个附加分组。
如上文所提及,在一些实施方式中,PIC可以将PIC与第一转发组件之间的数据路径维持为冗余数据路径,并且将PIC与第二转发组件之间的数据路径建立为活动数据路径。因此,在一些实施方式中,一个或多个PIC可以向第一转发组件(例如经由冗余数据路径)并且向第二转发组件(例如经由活动数据路径)播送一个或多个附加分组。虽然前述示例描述了活动路由组件与单个FPC交互,但是在一些实施方式中,活动路由组件可以以类似方式与多个FPC交互。
相对于图1D和图1E,假设第一路由组件是网络设备的活动路由组件,第二路由组件是网络设备的备用路由组件,第一转发组件是网络设备的活动转发组件,并且第二转发组件是网络设备的备用转发组件。
进一步假设已经利用指示第一转发组件是网络设备的活动转发组件并且第二转发组件是网络设备的备用转发组件的信息升级了FPC(例如FPC的控制单元)。进一步假设已经在第一转发组件与FPC的PIC中的每个PIC之间建立了数据路径(例如活动数据路径)。进一步假设网络设备已经以与上文结合图1A所描述的方式类似的方式从第一端点设备接收到一个或多个分组。
如图1D中并且由附图标记130所示出,网络设备可以提供第二信号,该第二信号指示第二路由组件将是活动路由组件并且第二转发组件将是活动转发组件。例如,第二路由组件(例如第二路由组件的控制单元)可以向网络设备的FPC提供第二信号,该第二信号指示第二路由组件是活动路由组件并且第二转发组件是活动转发组件。在一些示例中,第二路由组件可以接收从第一路由组件到第二路由组件的切换的指示。例如,可以基于网络设备的重新配置(例如由网络设备的管理员进行的重新配置)来接收切换的指示。作为接收切换的指示的附加或备选,第二路由组件可以接收第一路由组件的故障的指示。
在一些实施方式中,基于接收到切换的指示或第一路由组件的故障的指示,第二路由组件(例如第二路由组件的控制单元)可以确定第二路由组件将成为活动路由组件。在一些实施方式中,第二路由组件可以与第二转发组件相关联。在一些示例中,基于第二路由组件成为活动路由组件、基于接收到切换的指示、基于第二路由组件与第二转发组件相关联、和/或基于第一路由组件的故障的指示,第二路由组件(例如第二路由组件的控制单元)可以确定第二转发组件将成为活动转发组件。
基于确定第二路由组件将成为活动路由组件并且第二转发组件将成为活动转发组件,第二路由组件(例如第二路由组件的控制单元)可以生成第二信号并且向FPC提供第二信号。在一些示例中,第二信号可以包括指示第二路由组件将成为活动路由组件的信息和指示第二转发组件将成为活动转发组件的信息。第二路由组件可以使第二信号以与上文结合图1B所描述类似的方式被提供给FPC。信号可以引起从第一路由组件到第二路由组件以及从第一转发组件到第二转发组件的同时切换。
如图1D中并且由附图标记135所示出,网络设备可以使多个PIC的数据路径从第一转发组件被切换到第二转发组件。例如,基于第二信号,FPC可以以与上文结合图1B所描述的方式类似的方式来生成切换信号并且向FPC的PIC提供该切换信号。切换信号可以以与上文结合图1B所描述的方式类似的方式被提供给(FPC的)PIC,以使针对PIC中的每个PIC的数据路径从第一转发组件被切换到第二转发组件。
如图1E中并且由附图标记140所示出,网络设备可以向第二转发组件提供一个或多个分组。例如,第二路由组件可以以与上文结合图1C所描述的方式类似的方式使一个或多个分组被提供给第二转发组件。
如图1E中并且由附图标记145所示出,网络设备可以朝向目的地转发一个或多个分组。例如,以与上文结合图1C所描述的方式类似的方式,第二转发组件可以向(FPC的)PIC提供一个或多个分组,并且PIC可以朝向一个或多个分组的目的地提供一个或多个分组。
虽然前述示例描述了活动路由组件与单个FPC交互,但是在一些实施方式中,活动路由组件可以以类似方式与多个FPC交互。
关于图1F,假设第一路由组件是网络设备的活动路由组件,第二路由组件是网络设备的备用路由组件,第一转发组件是网络设备的活动转发组件,并且第二转发组件是网络设备的备用转发组件。
进一步假设已经利用指示第一转发组件是网络设备的活动转发组件并且第二转发组件是网络设备的备用转发组件的信息升级了FPC(例如FPC的控制单元)。进一步假设已经在第一转发组件与FPC的PIC中的每个PIC之间建立了数据路径(例如活动数据路径)。进一步假设网络设备已经以与上文结合图1A所描述的方式类似的方式从第一端点设备接收到一个或多个分组。
如图1F中并且由附图标记150所示出,网络设备可以接收第一转发组件的故障的指示。在一些实施方式中,第一路由组件(例如第一路由组件的控制单元)可以活跃地监测第一转发组件和第二转发组件以确定第一转发组件和/或第二转发组件是否正在经历故障。例如,第一路由组件可以监测第一转发组件以确定第一转发组件是否正在经历功率故障、时钟故障、第一转发组件的控制单元的故障、第一转发组件的另一组件的故障等。
在一些实施方式中,第一路由组件可以向第一转发组件传输一个或多个请求,并且基于第一路由组件是否从第一转发组件接收到一个或多个响应和/或基于一个或多个响应中所包括的信息来确定第一转发组件是否正在经历故障。第一路由组件(例如第一路由组件的控制单元)可以以类似的方式活跃地监测第二转发组件。
在一些实施方式中,第一路由组件可以接收与第一转发组件相关联的故障的指示。在一些示例中,故障可以由网络设备的一个或多个组件(例如第一转发组件、FPC、PIC等)检测,并且指示可以从一个或多个组件被接收。
如图1F中并且由附图标记155所示出,网络设备可以提供指示第二转发组件是活动转发组件的第三信号。在一些实施方式中,第一路由组件(例如第一路由组件的控制单元)可以生成指示第二转发组件是活动转发组件的第三信号。例如,第一路由组件(例如第一路由组件的控制单元)可以基于接收到故障的指示和/或基于一个或多个响应(或缺少响应)来确定第一转发组件正在经历故障,并且可以基于确定第一转发组件正在经历故障来生成第三信号。
附加地,基于确定第一转发组件正在经历故障,第一路由组件可以以与上文结合图1B所描述的方式类似的方式使第二转发组件被选择作为活动转发组件。在一些示例中,第一路由组件可以以与如上文结合图1B所描述的方式(第一路由组件生成并且提供第一信号)类似的方式生成并且提供第三信号,。
如图1F中并且由附图标记160所示出,网络设备可以使针对多个PIC的数据路径从第一转发组件被切换到第二转发组件。例如,FPC(例如使用FPC的控制单元)可以接收第三信号,并且可以基于第三信号使针对PIC中的每个PIC的数据路径以与结合图1B所描述的方式类似的方式从第一转发组件被切换到第二转发组件。例如,FPC可以以与结合图1B所描述的方式类似的方式来生成切换信号并且向(FPC的)PIC提供该切换信号。在一些示例中,FPC可以向PIC提供切换信号,以使(FPC的)PIC中的每个PIC终止与第一转发组件的数据路径(例如由于第一转发组件正在经历故障),并且使PIC中的每个PIC建立与第二转发组件的数据路径。
如图1F中并且由附图标记165所示出,网络设备可以朝向目的地转发一个或多个分组。例如,在向FPC提供第三信号之后和/或在FPC向(FPC的)PIC提供切换信号之后,第一路由组件可以使一个或多个分组以与上文结合图1C所描述的方式类似的方式被提供给第二转发组件。以与上文结合图1C所描述的方式类似的方式,第二转发组件可以向(FPC的)PIC提供一个或多个分组,并且PIC可以朝向一个或多个分组的目的地提供一个或多个分组。
虽然前述示例描述了活动路由组件与单个FPC交互,但是在一些实施方式中,活动路由组件可以以类似方式与多个FPC交互。如本文中所解释,(网络设备的)PIC可以将数据路径同时切换到活动转发组件。因此,网络设备可以节省计算资源、网络资源和/或其他资源,这些资源原本会通过检测分组损失、导致分组的重传、重新配置网络设备以减轻分组损失等而被消耗。
在一些实施方式中,(FPC的)PIC可以监测PIC与转发组件(例如第一转发组件或第二转发组件中的一个)之间的链路(例如数据路径的物理链路)的状态。基于监测链路的状态,PIC可以确定链路是否正在经历故障(例如转发组件的控制单元的故障)。基于确定链路正在经历故障,PIC可以建立与另一转发组件(例如第一转发组件或第二转发组件中的另一个)的数据路径。
在一些实施方式中,第一路由组件的控制单元和第二路由组件的控制单元可以将指示路由组件和/或转发组件(例如第一路由组件、第二路由组件、第一转发组件和/或第二转发组件中的一个或多个)的故障、路由组件和/或转发组件的健康状态、路由组件和/或转发组件的状态(例如脱机)、路由组件和/或转发组件的温度、路由组件和/或转发组件的功率状态等的信息编码为信号(例如第一信号、第二信号和/或第三信号)。
(网络设备的)FPC的控制单元可以接收信号,并且可以对信息解码,以确定转发组件的故障、转发组件的健康状态、转发组件的状态、路由组件和/或转发组件的温度、路由组件和/或转发组件的功率状态等。FPC的控制单元可以使用经解码的信息来确定(FPC的)PIC是否要建立与转发组件的数据路径。
在一些实施方式中,信号(例如第一信号、第二信号和/或第三信号)可以被用于执行针对网络设备的负载平衡。例如,活动路由组件(例如第一路由组件或第二路由组件)可以生成信号,以使一个或多个第一FPC的PIC从第一转发组件获得分组并且使一个或多个第二FPC的PIC从第二转发组件获得分组。
如上文所指示,图1A至图1F作为示例被提供。其他示例可以与关于图1A至图1F所描述的示例不同。图1A至图1F中所示出的设备的数目和布置作为示例被提供。实际上,与图1A至图1F中所示出的设备相比,可以存在附加的设备、更少的设备、不同的设备或不同地布置的设备。此外,图1A至图1F中所示出的两个以上设备可以被实施在单个设备内,或图1A至图1F中所示出的单个设备可以被实施为多个分布式设备。附加地或备选地,图1A至图1F中所示出的一组设备(例如一个或多个设备)可以执行被描述为由图1A至图1F中所示出的另一组设备执行的一个或多个功能。
图2是本文中所描述的系统和/或方法可以被实施的示例环境200的图。如图2中所示出,环境200可以包括端点设备210、一组网络设备220(示出为网络设备220-1至网络设备220-N)和网络230。环境200的设备可以经由有线连接、无线连接或有线和无线连接的组合来互连。
端点设备210包括能够接收、生成、存储、处理和/或提供信息(诸如本文中所描述的信息)的一个或多个设备。例如,端点设备210可以包括移动电话(例如智能电话或无线电话)、膝上型计算机、平板计算机、台式计算机、手持式计算机、游戏设备、可穿戴式通信设备(例如智能手表、一副智能眼镜、心率监测器、健身追踪器、智能服装、智能珠宝或头戴式显示器)、网络设备、服务器设备或类似类型的设备。在一些实施方式中,端点设备210可以经由网络230从其他端点设备210接收网络业务和/或可以向这些其他端点设备提供网络业务(例如,通过使用网络设备220作为中介物来路由分组)。
网络设备220包括能够以本文中所描述的方式接收、处理、存储、路由和/或提供业务(例如分组或其他信息或元数据)的一个或多个设备。例如,网络设备220可以包括路由器,诸如标签交换路由器(LSR)、标签边缘路由器(LER)、入口路由器、出口路由器、提供方路由器(例如提供方边缘路由器或提供方核心路由器)、虚拟路由器或另一类型的路由器。附加地或备选地,网络设备220可以包括网关、交换机、防火墙、集线器、网桥、反向代理、服务器(例如代理服务器、云服务器或数据中心服务器)、负载平衡器和/或类似设备。在一些实施方式中,网络设备220可以是被实施在外壳(诸如机架)内的物理设备。在一些实施方式中,网络设备220可以是被云计算环境或数据中心的一个或多个计算机设备实施的虚拟设备。在一些实施方式中,一组网络设备220可以是被用于通过网络230路由业务流的一组数据中心节点。
网络230包括一个或多个有线和/或无线网络。例如,网络230可以包括分组交换网络、蜂窝网络(例如第五代(5G)网络、第四代(4G)网络(诸如长期演进(LTE)网络)、第三代(3G)网络、码分多址(CDMA)网络、公共陆地移动网络(PLMN)、局域网(LAN)、广域网(WAN)、城域网(MAN)、电话网络(例如公共交换电话网络(PSTN))、专用网络、自组网、内联网、因特网、基于光纤的网络、云计算网络等,和/或这些或其他类型的网络的组合。
图2中所示出的设备和网络的数目和布置作为示例被提供。实际上,与图2中所示出的设备和/或网络相比,可能存在附加的设备和/或网络、更少的设备和/或网络、不同的设备和/或网络或不同地布置的设备和/或网络。此外,图2中所示出的两个以上设备可以被实施在单个设备内,或图2中所示出的单个设备可以被实施为多个分布式设备。附加地或备选地,环境200的一组设备(例如一个或多个设备)可以执行被描述为被环境200的另一组设备执行的一个或多个功能。
图3是图2的一个或多个设备的示例组件的图。一个或多个设备可以包括设备300,该设备可以对应于端点设备210和/或网络设备220。在一些实施方式中,端点设备210和/或网络设备220可以包括一个或多个设备300和/或设备300的一个或多个组件。如图3中所示出,设备300可以包括总线310、处理器320、存储器330、存储组件340、输入组件350、输出组件360和通信组件370。
总线310包括使得能够在设备300的组件当中进行有线和/或无线通信的组件。处理器320包括中央处理单元、图形处理单元、微处理器、控制器、微控制器、数字信号处理器、现场可编程门阵列、专用集成电路和/或另一类型的处理组件。处理器320被实施在硬件、固件或硬件和软件的组合中。在一些实施方式中,处理器320包括能够被编程以执行功能的一个或多个处理器。存储器330包括随机存取存储器、只读存储器和/或另一类型的存储器(例如闪速存储器、磁存储器和/或光学存储器)。
存储组件340存储与设备300的操作相关的信息和/或软件。例如,存储组件340可以包括硬盘驱动器、磁盘驱动器、光盘驱动器、固态磁盘驱动器、光盘、数字通用光盘和/或另一类型的非暂时性计算机可读介质。输入组件350使得设备300能够接收输入,诸如用户输入和/或感测到的输入。例如,输入组件350可以包括触摸屏、键盘、小键盘、鼠标、按钮、麦克风、交换机、传感器、全球定位系统组件、加速度计、陀螺仪和/或致动器。输出组件360使得设备300能够诸如经由显示器、扬声器和/或一个或多个发光二极管来提供输出。通信组件370使得设备300能够诸如经由有线连接和/或无线连接与其他设备通信。例如,通信组件370可以包括接收器、发射器、收发器、调制解调器、网络接口卡和/或天线。
设备300可以执行本文中所描述的一个或多个过程。例如,非暂时性计算机可读介质(例如存储器330和/或存储组件340)可以存储指令集(例如一个或多个指令、代码、软件代码和/或程序代码)以供处理器320执行。处理器320可以执行指令集以执行本文中所描述的一个或多个过程。在一些实施方式中,由一个或多个处理器320执行指令集使一个或多个处理器320和/或设备300执行本文中所描述的一个或多个过程。在一些实施方式中,硬接线电路系统可以代替指令或与指令结合被使用以执行本文中所描述的一个或多个过程。因此,本文中所描述的实施方式不限于硬件电路系统和软件的任何特定组合。
图3中所示出的组件的数目和布置作为示例被提供。与图3中所示出的组件相比,设备300可以包括附加的组件、更少的组件、不同的组件或不同地布置的组件。附加地或备选地,一组设备300的组件(例如一个或多个组件)可以执行被描述为被另一组设备300的组件执行的一个或多个功能。
图4是图2的一个或多个设备的示例组件的图。一个或多个设备可以包括设备400。设备400可以对应于网络设备220。在一些实施方式中,网络设备220可以包括一个或多个设备400和/或设备400的一个或多个组件。如图4中所示出,设备400可以包括一个或多个输入组件410-1至输入组件410-B(B≥1)(在下文中被统称为输入组件410,并分别被称为输入组件410)、切换组件420、一个或多个输出组件430-1至输出组件430-C(C≥1)(在下文中被统称为输出组件430,并分别被称为输出组件430)和控制器440。
输入组件410可以是用于物理链路的一个或多个附接点,并且可以是用于传入业务的一个或多个入口点,诸如分组。输入组件410可以诸如通过执行数据链路层封装或解封装来处理传入业务。在一些实施方式中,输入组件410可以传输和/或接收分组。在一些实施方式中,输入组件410可以包括输入线卡,该输入线卡包括一个或多个分组处理组件(例如呈集成电路的形式),诸如一个或多个接口卡(IFC)、分组转发组件、线卡控制器组件、输入端口、处理器、存储器和/或输入队列。在一些实施方式中,设备400可以包括一个或多个输入组件410。
切换组件420可以将输入组件410与输出组件430互连。在一些实施方式中,切换组件420可以经由一个或多个交叉开关、经由总线和/或用共享存储器被实施。共享存储器可以充当临时缓冲区,以在分组被最终调度成向输出组件430进行递送之前,存储来自输入组件410的分组。在一些实施方式中,切换组件420可以使得输入组件410、输出组件430和/或控制器440能够彼此通信。
输出组件430可以存储分组并且可以调度分组以用于在输出物理链路上进行的传输。输出组件430可以支持数据链路层封装或解封装和/或各种更高级别的协议。在一些实施方式中,输出组件430可以传输分组和/或接收分组。在一些实施方式中,输出组件430可以包括输出线卡,该输出线卡包括一个或多个分组处理组件(例如呈集成电路的形式),诸如一个或多个IFC、分组转发组件、线卡控制器组件、输出端口、处理器、存储器和/或输出队列。在一些实施方式中,设备400可以包括一个或多个输出组件430。在一些实施方式中,输入组件410和输出组件430可以被同一组组件实施(例如,并且输入/输出组件可以是输入组件410和输出组件430的组合)。
控制器440包括呈例如CPU、GPU、APU、微处理器、微控制器、DSP、FPGA、ASIC和/或另一类型的处理器的形式的处理器。处理器被实施在硬件、固件或硬件和软件的组合中。在一些实施方式中,控制器440可以包括可以被编程以执行功能的一个或多个处理器。
在一些实施方式中,控制器440可以包括存储信息和/或指令以供控制器440使用的RAM、ROM和/或另一类型的动态或静态存储设备(例如闪速存储器、磁存储器、光学存储器等)。
在一些实施方式中,控制器440可以与被连接到设备400的其他设备、网络和/或系统通信以交换关于网络拓扑的信息。控制器440可以基于网络拓扑信息创建路由表,可以基于路由表创建转发表,并且可以将转发表转发给输入组件410和/或输出组件430。输入组件410和/或输出组件430可以使用转发表来对传入和/或传出分组执行路由查找。
控制器440可以执行本文中所描述的一个或多个过程。控制器440可以响应于执行被非暂时性计算机可读介质存储的软件指令来执行这些过程。计算机可读介质在本文中被定义为非暂时性存储器设备。存储器设备包括单个物理存储设备内的存储器空间或被分布在多个物理存储设备上的存储器空间。
软件指令可以经由通信接口从另一计算机可读介质或从另一设备被读入与控制器440相关联的存储器和/或存储组件中。当被执行时,在与控制器440相关联的存储器和/或存储组件中所存储的软件指令可以使控制器440执行本文中所描述的一个或多个过程。附加地或备选地,硬接线电路系统可以代替软件指令或与软件指令结合被使用以执行本文中所描述的一个或多个过程。因此,本文中所描述的实施方式不限于硬件电路系统和软件的任何特定组合。
图4中所示出的组件的数目和布置作为示例被提供。实际上,与图4中所示出的组件相比,设备400可以包括附加的组件、更少的组件、不同的组件或不同地布置的组件。附加地或备选地,设备400的一组组件(例如一个或多个组件)可以执行被描述为被设备400的另一组组件执行的一个或多个功能。
图5是用于具有冗余转发组件的网络设备的切换的示例过程500的流程图。在一些实施方式中,图5的一个或多个过程框可以被网络设备(例如网络设备220)执行。在一些实施方式中,图5的一个或多个过程框可以被另一设备或与该设备分离或包括该设备的一组设备(诸如端点设备(例如端点设备210))执行。附加地或备选地,图5的一个或多个过程框可以被设备300的一个或多个组件(诸如处理器320、存储器330、存储组件340、输入组件350、输出组件360和/或通信组件370)执行。附加地或备选地,图5的一个或多个过程框可以被设备400的一个或多个组件(诸如输入组件410、切换组件420、输出组件430和/或控制器440)执行。
如图5中所示出,过程500可以包括接收一个或多个分组(框510)。例如,如上文所描述,网络设备可以接收一个或多个分组。在一些实施方式中,网络设备包括第一路由组件、第二路由组件、第一转发组件、第二转发组件以及具有多个物理接口卡的灵活物理接口卡集中器(例如物理接口卡集中器)。
如图5中进一步示出,过程500可以包括向物理接口卡集中器提供指示第二转发组件将是活动转发组件的信号(框520)。例如,网络设备可以通过第一路由组件并且向物理接口卡集中器提供指示第二转发组件将是活动转发组件的信号,如上文所描述。
如图5中进一步示出,过程500可以包括基于信号使针对多个物理接口卡的数据路径从第一转发组件被切换到第二转发组件(框530)。例如,网络设备可以通过物理接口卡集中器并且基于信号,使针对多个物理接口卡的数据路径从第一转发组件被切换到第二转发组件,如上文所描述。
如图5中进一步示出,过程500可以包括向第二转发组件提供一个或多个分组(框540)。例如,网络设备可以通过第一路由组件向第二转发组件提供一个或多个分组,如上文所描述。
如图5中进一步示出,过程500可以包括经由数据路径向物理接口卡集中器的多个物理接口卡提供一个或多个分组(框550)。例如,网络设备可以通过第二转发组件经由数据路径向物理接口卡集中器的多个物理接口卡提供一个或多个分组,如上文所描述。
如图5中进一步示出,过程500可以包括朝向与一个或多个分组相关联的一个或多个目的地转发一个或多个分组(框560)。例如,网络设备可以通过多个物理接口卡朝向与一个或多个分组相关联的一个或多个目的地转发一个或多个分组,如上文所描述。
过程500可以包括附加实施方式,诸如下文和/或结合本文中其他地方所描述的一个或多个其他过程所描述的任何单个实施方式或实施方式的任何组合。
在第一实施方式中,由第一路由组件向物理接口卡集中器提供指示第二转发组件将是活动转发组件的信号包括:由第一路由组件的控制单元向物理接口卡集中器的另一控制单元提供指示第二转发组件将是活动转发组件的信号。
在第二实施方式中,单独地或与第一实施方式结合,由物理接口卡集中器基于信号使针对多个物理接口卡的数据路径从第一转发组件被切换到第二转发组件包括:由物理接口卡集中器的控制单元基于信号使多个物理接口卡终止与第一转发组件的数据路径;以及由物理接口卡集中器的控制单元基于信号使多个物理接口卡建立与第二转发组件建立数据路径。
在第三实施方式中,单独地或与第一和第二实施方式中的一个或多个结合,网络设备包括多个物理接口卡集中器,并且物理接口卡集中器是多个物理接口卡集中器中的一个物理接口卡集中器。
在第四实施方式中,单独地或与第一至第三实施方式中的一个或多个结合,过程500包括由第二路由组件向物理接口卡集中器提供另一信号,该另一信号指示第二路由组件将是活动路由组件,其中另一信号由第二路由组件而不是第一路由组件提供给物理接口卡集中器,并且其中一个或多个分组由第二路由组件而不是第一路由组件提供给多个物理接口卡。
在第五实施方式中,单独地或与第一至第四实施方式中的一个或多个结合,过程500包括由第一路由组件接收与第一转发组件相关联的故障的指示并且基于与第一转发组件相关联的故障的指示生成指示第二转发组件将是活动转发组件的信号。
在第六实施方式中,单独或与第一至第五实施方式中的一个或多个结合,第一路由组件是网络设备的活动路由组件,并且第二路由组件是网络设备的备用路由组件。
在第七实施方式中,单独地或与第一至第六实施方式中的一个或多个结合,在第一转发组件向物理接口卡集中器提供信号之前,第一转发组件是网络设备的活动转发组件,并且在第一转发组件向物理接口卡集中器提供信号之前,第二转发组件是网络设备的备用转发组件。
在第八实施方式中,单独地或与第一至第七实施方式中的一个或多个结合,针对多个物理接口卡的数据路径在不到一毫秒内从第一转发组件被切换到第二转发组件。网络设备包括在第二转发组件、多个物理接口卡以及网络设备的一个或多个端口之间流动的业务。
在第九实施方式中,单独或与第一至第八实施方式中的一个或多个结合,信号还指示第一路由组件是网络设备的活动路由组件并且第二路由组件是网络设备的备用路由组件。
在第十实施方式中,单独地或与第一至第九实施方式中的一个或多个结合,过程500包括由第二转发组件接收一个或多个附加分组;由第二转发组件向多个物理接口卡提供一个或多个附加分组;以及由多个物理接口卡向第一路由组件提供一个或多个附加分组。
在第十一实施方式中,单独地或与第一至第十实施方式中的一个或多个结合,过程500包括:向多个物理接口卡中的每个物理接口卡提供切换信号,该切换信号指示针对多个物理接口卡的数据路径将从第一转发组件被切换到第二转发组件;以及基于切换信号,使针对多个物理接口卡的数据路径从第一转发组件被切换到第二转发组件。
在第十二实施方式中,单独地或与第一至第十一实施方式中的一个或多个结合,网络设备包括多个灵活物理接口卡集中器,并且灵活物理接口卡集中器是多个灵活物理接口卡集中器中的一个灵活物理接口卡集中器。
尽管图5示出了过程500的示例框,但是在一些实施方式中,与图5中所描绘的框相比,过程500可以包括附加的框、更少的框、不同的框或不同地布置的框。附加地或备选地,过程500的两个以上框可以被并行执行。
前述公开内容提供了说明和描述,但并不旨在穷举或将实施方式限制为所公开的精确形式。可以根据上文公开内容进行修改,或可以从实施方式的实践中获取修改。
如本文中所使用,术语“组件”旨在被广义地解释为硬件、固件或硬件和软件的组合。将明显的是,本文中所描述的系统和/或方法可以以硬件、固件和/或硬件和软件的组合的不同形式被实施。被用于实施这些系统和/或方法的实际的专用控制硬件或软件代码不限制实施方式。因此,本文中不参考特定软件代码来描述系统和/或方法的操作和行为——应当理解,软件和硬件可以被用于基于本文中的描述来实施系统和/或方法。
尽管在权利要求书中叙述了特征的特定组合和/或在说明书中公开了特征的特定组合,但这些组合不旨在限制各种实施方式的公开内容。实际上,这些特征中的许多特征可以以权利要求书中未具体叙述和/或在说明书中未公开的方式被组合。尽管下文所列出的每个从属权利要求可能仅直接取决于一个权利要求,但是各种实施方式的公开内容包括与权利要求集合中的每个其他权利要求结合的每个从属权利要求。
除非明确地如此描述,否则本文中所使用的元件、动作或指令均不应被解释为关键或必要的。而且,如本文中所使用,冠词“一”和“一个”旨在包括一个或多个项,并且可以与“一个或多个”可互换地被使用。进一步地,如本文中所使用,冠词“该”旨在包括与冠词“该”结合引用的一个或多个项,并且可以与“该一个或多个”可互换地被使用。此外,如本文中所使用,术语“集合”旨在包括一个或多个项(例如相关项、不相关项、相关和不相关项的组合等),并且可以与“一个或多个”可互换地被使用。在仅旨在一个项的情况下,短语“仅一个”或类似语言被使用。而且,如本文中所使用,术语“具有(has)”、“具有(have)”、“具有(having)”等旨在是开放式术语。进一步地,除非另有明确说明,否则短语“基于”旨在意味着“至少部分地基于”。而且,如本文中所使用,除非另有明确说明(例如,在结合“任一项”或“仅以下各项中一项”使用的情况下),术语“或”在串联使用时旨在是包括性的,并且可以与“和/或”可互换地被使用。
示例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的系统,其中信号还指示第一路由组件是网络设备的活动路由组件,指示第二路由组件是网络设备的备用路由组件,指示第二转发组件的故障,指示第二转发组件的健康状态,指示第二转发组件的状态,指示第二转发组件的温度,和/或指示第二转发组件的功率状态。

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所述的系统,其中所述信号还指示所述第一路由组件是所述网络设备的活动路由组件,指示所述第二路由组件是所述网络设备的备用路由组件,指示所述第二转发组件的故障,指示所述第二转发组件的健康状态,指示所述第二转发组件的状态,指示所述第二转发组件的温度,和/或指示所述第二转发组件的功率状态。
CN202110458656.8A 2021-03-05 2021-04-27 有冗余转发组件的网络设备的硬件辅助快速数据路径切换 Pending CN115022234A (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US17/193,831 2021-03-05
US17/193,831 US11909635B2 (en) 2021-03-05 2021-03-05 Hardware-assisted fast data path switchover for a network device with redundant forwarding components

Publications (1)

Publication Number Publication Date
CN115022234A true CN115022234A (zh) 2022-09-06

Family

ID=75728738

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110458656.8A Pending CN115022234A (zh) 2021-03-05 2021-04-27 有冗余转发组件的网络设备的硬件辅助快速数据路径切换

Country Status (3)

Country Link
US (1) US11909635B2 (zh)
EP (1) EP4053694A1 (zh)
CN (1) CN115022234A (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6885635B1 (en) * 2000-11-21 2005-04-26 Juniper Networks, Inc. High capacity router having redundant components
CN1706160A (zh) * 2003-01-13 2005-12-07 思科技术公司 冗余转发引擎的最优化切换的方法和系统
CN1852456A (zh) * 2005-11-30 2006-10-25 华为技术有限公司 一种可实现业务切换的系统及其实现的业务切换方法
US7519735B1 (en) * 2001-05-08 2009-04-14 Juniper Networks, Inc. Single board routing arrangement
US7652982B1 (en) * 2005-11-16 2010-01-26 Juniper Networks, Inc. Providing high availability network services
WO2011072536A1 (zh) * 2009-12-17 2011-06-23 研祥智能科技股份有限公司 一种VxWorks系统下的多网卡双冗余装置及系统
US8943489B1 (en) * 2012-06-29 2015-01-27 Juniper Networks, Inc. High availability in-service software upgrade using virtual machine instances in dual computing appliances
CN104410510A (zh) * 2014-10-24 2015-03-11 华为技术有限公司 通过接口卡传输信息、控制器故障处理方法、装置及系统
CN106576082A (zh) * 2014-08-22 2017-04-19 霍尼韦尔国际公司 用于冗余以太网网络的硬件协助
CN108989203A (zh) * 2017-05-31 2018-12-11 瞻博网络公司 通告用于虚拟节点中的服务路由的选定结构路径
CN110061912A (zh) * 2018-01-19 2019-07-26 丛林网络公司 仲裁虚拟节点的冗余控制平面之间的主控权
US10505847B1 (en) * 2018-03-29 2019-12-10 Juniper Networks, Inc. Destination MAC validation per logical interface of a network device

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6687247B1 (en) 1999-10-27 2004-02-03 Cisco Technology, Inc. Architecture for high speed class of service enabled linecard
WO2002009354A2 (en) * 2000-07-20 2002-01-31 At & T Corp. Joint ip/optical layer restoration after a router failure
US6535924B1 (en) * 2001-09-05 2003-03-18 Pluris, Inc. Method and apparatus for performing a software upgrade of a router while the router is online
US7406030B1 (en) * 2003-08-25 2008-07-29 Juniper Networks, Inc. Dynamic renegotiation of graceful restart time to avoid double-failure traffic loss
US8107363B1 (en) * 2004-05-21 2012-01-31 Rockstar Bidco, LP Method and apparatus for accelerating failover of VPN traffic in an MPLS provider network
US7808889B1 (en) * 2004-11-24 2010-10-05 Juniper Networks, Inc. Silent failover from a primary control unit to a backup control unit of a network device
US8364843B2 (en) * 2006-01-09 2013-01-29 Cisco Technology, Inc. Method and system for minimizing disruption during in-service software upgrade
US7940650B1 (en) * 2008-11-03 2011-05-10 Juniper Networks, Inc. Peer-agnostic TCP socket replication between primary and secondary routing engines
WO2010063298A1 (en) * 2008-12-02 2010-06-10 Telecom Italia S.P.A. Method and system for multicast path switching, corresponding network and computer program product
US9621421B1 (en) * 2014-06-30 2017-04-11 Juniper Networks, Inc. Systems and methods for prognostic network management
US10198724B2 (en) * 2015-08-21 2019-02-05 Mastercard International Incorporated Payment networks and methods for facilitating data transfers within payment networks

Patent Citations (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6885635B1 (en) * 2000-11-21 2005-04-26 Juniper Networks, Inc. High capacity router having redundant components
US7519735B1 (en) * 2001-05-08 2009-04-14 Juniper Networks, Inc. Single board routing arrangement
CN1706160A (zh) * 2003-01-13 2005-12-07 思科技术公司 冗余转发引擎的最优化切换的方法和系统
US7652982B1 (en) * 2005-11-16 2010-01-26 Juniper Networks, Inc. Providing high availability network services
US20070121488A1 (en) * 2005-11-30 2007-05-31 Huawei Technologies Co., Ltd. System and Method for Implementing Service Switching
CN101156325A (zh) * 2005-11-30 2008-04-02 华为技术有限公司 一种可实现业务切换的系统及其实现的业务切换方法
CN1852456A (zh) * 2005-11-30 2006-10-25 华为技术有限公司 一种可实现业务切换的系统及其实现的业务切换方法
WO2011072536A1 (zh) * 2009-12-17 2011-06-23 研祥智能科技股份有限公司 一种VxWorks系统下的多网卡双冗余装置及系统
US8943489B1 (en) * 2012-06-29 2015-01-27 Juniper Networks, Inc. High availability in-service software upgrade using virtual machine instances in dual computing appliances
CN106576082A (zh) * 2014-08-22 2017-04-19 霍尼韦尔国际公司 用于冗余以太网网络的硬件协助
CN104410510A (zh) * 2014-10-24 2015-03-11 华为技术有限公司 通过接口卡传输信息、控制器故障处理方法、装置及系统
CN108989203A (zh) * 2017-05-31 2018-12-11 瞻博网络公司 通告用于虚拟节点中的服务路由的选定结构路径
CN110061912A (zh) * 2018-01-19 2019-07-26 丛林网络公司 仲裁虚拟节点的冗余控制平面之间的主控权
US10505847B1 (en) * 2018-03-29 2019-12-10 Juniper Networks, Inc. Destination MAC validation per logical interface of a network device

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
P. EMMERICH, D. RAUMER, F. WOHLFART AND G. CARLE: "Performance characteristics of virtual switching", 2014 IEEE 3RD INTERNATIONAL CONFERENCE ON CLOUD NETWORKING (CLOUDNET), 1 December 2014 (2014-12-01) *
王鹏: "路由器的原理功能和发展方向", 科技情报开发与经济, no. 16 *

Also Published As

Publication number Publication date
US11909635B2 (en) 2024-02-20
US20220286389A1 (en) 2022-09-08
EP4053694A1 (en) 2022-09-07

Similar Documents

Publication Publication Date Title
CN111756631B (zh) 利用集中式控制器以用于自治系统间的业务工程分段路由的方法、设备和可读介质
US11469993B2 (en) Controlling paths in a network via a centralized controller or network devices
US11902157B2 (en) High-availability switchover based on traffic metrics
US20230327975A1 (en) Detecting miswirings in a spine and leaf topology of network devices
CN110300012B (zh) 用于将分组处理组件重置为操作状态的方法
EP4053694A1 (en) Hardware-assisted fast data path switchover for a network device with redundant forwarding components
CN116346698A (zh) 在分组转发引擎系统上复制业务统计数据的系统和方法
CN112583720B (zh) 自治系统间跟踪路由消息
CN114079626B (zh) 使用弹性算法路由机制配置网络的方法、网络设备和介质
CN114172836B (zh) 用于路由反射的路由反射器、计算机可读介质和方法
EP4195592A1 (en) Forwarding network traffic associated with a security classification via a routing path associated with the security classification
US11671322B2 (en) Configuration of a network using a flex-algorithm routing mechanism
EP4373036A1 (en) Inter-subnet multicast traffic forwarding using supplemental bridge domain (sbd)
CN114598637B (zh) 维护与链路聚合组相关联的链路集合以支持客户边缘设备
EP4340302A1 (en) Load balancing of assisted replication network devices
US11228495B2 (en) Bundling of wired and wireless interfaces in a redundant interface of a high-availability cluster
EP4236246A1 (en) Determining a best destination over a best path using multifactor path selection
CN113452543A (zh) 多宿主错误配置的检测
CN117424863A (zh) 指定针对多播业务的主要多播流和备份多播流
CN116232974A (zh) 保持冗余边界网关协议链路状态拓扑信息的一致性
CN117640377A (zh) 促进网络设备的弹性

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