CN108259346B - 一种等价路由表项建立方法和装置 - Google Patents

一种等价路由表项建立方法和装置 Download PDF

Info

Publication number
CN108259346B
CN108259346B CN201710056621.5A CN201710056621A CN108259346B CN 108259346 B CN108259346 B CN 108259346B CN 201710056621 A CN201710056621 A CN 201710056621A CN 108259346 B CN108259346 B CN 108259346B
Authority
CN
China
Prior art keywords
path
ecmp
equivalent
entries
paths
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.)
Active
Application number
CN201710056621.5A
Other languages
English (en)
Other versions
CN108259346A (zh
Inventor
杨三胜
白颖云
李佳
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou H3C Technologies Co Ltd
Original Assignee
Hangzhou H3C Technologies Co Ltd
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 Hangzhou H3C Technologies Co Ltd filed Critical Hangzhou H3C Technologies Co Ltd
Priority to CN201710056621.5A priority Critical patent/CN108259346B/zh
Priority to PCT/CN2018/074118 priority patent/WO2018137682A1/zh
Priority to EP18745079.6A priority patent/EP3562098B1/en
Priority to US16/481,066 priority patent/US11108682B2/en
Priority to JP2019540343A priority patent/JP6789401B2/ja
Publication of CN108259346A publication Critical patent/CN108259346A/zh
Application granted granted Critical
Publication of CN108259346B publication Critical patent/CN108259346B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • H04L47/125Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/24Multipath
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/50Routing or path finding of packets in data switching networks using label swapping, e.g. multi-protocol label switch [MPLS]
    • H04L45/507Label distribution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for 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/74Address processing for routing
    • H04L45/745Address table lookup; Address filtering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways

Abstract

本申请提供一种等价路由表项建立方法和装置,该方法包括:为等价路径的每个路径分配内层标签和外层标签,且每个路径对应的内层标签相同;建立转发表项,所述转发表项包括所述目的设备的地址、所述等价路径对应的ECMP表的表项数量和所述内层标签,且所述表项数量是预设的固定值;根据等价路径数量和所述固定值,为所述每个路径分配ECMP表项,所述每个路径对应的ECMP表项数量之和为所述固定值,所述ECMP表项记录相应路径的所述外层标签的索引。通过本申请的技术方案,当有新路径加入等价路径、或者已有路径被从等价路径中删除时,转发表项中的ECMP表的表项数量并不会发生变化,不需要对转发表项的内容进行修改。

Description

一种等价路由表项建立方法和装置
技术领域
本申请涉及通信技术领域,尤其涉及一种等价路由表项建立方法和装置。
背景技术
随着网络应用的快速发展,ECMP(Euqal Cost Multipath,等价负载分担) 的应用更加广泛,ECMP可以在不同路径平均分配流量,从而实现负载分担。
在MPLS(Multi-Protocol Label Switching,多协议标签交换)L3VPN(Layer 3Virtual Private Network,三层虚拟专用网络)中,为实现ECMP,在PE(Provider Edge,服务提供商边缘)设备上维护FIB(Forward Information dataBase,转发信息库)表和ECMP表。在FIB表的每个FIB表项中记录ECMP表的表项数量, ECMP表记录有M个ECMP表项,各ECMP表项记录一个内层标签,M的取值为等价路径的数量。假设路径1、路径2和路径3被配置为等价路径,则ECMP 表中记录有3个ECMP表项,ECMP表项1包括路径1对应的内层标签,ECMP 表项2包括路径2对应的内层标签,ECMP表项3包括路径3对应的内层标签。
基于此,PE设备在接收到报文后,先从FIB表中查询到与该报文匹配的FIB 表项,并利用该FIB表项中记录的ECMP表的表项数量,确定该报文对应的内层标签,然后利用该内层标签以及该内层标签对应的路径发送该报文。
但是,当有新路径加入等价路径、或者已有路径被从等价路径中删除时,则ECMP表中记录的表项数量会发生变化,如路径4加入该等价路径时,ECMP 表中记录的表项数量M变为4,此时还需要调整FIB表项中记录的ECMP表的表项数量。由于FIB表项数量很多,因此对所有FIB表项内容的修改,会消耗很长时间,在这段时间内,无法使用FIB表项传输报文,导致发生丢包等问题。
发明内容
本申请提供一种等价路由表项建立方法,应用于网络设备,所述网络设备至目的设备之间的至少两个路径被配置为等价路径,所述方法包括:
为等价路径的每个路径分配内层标签和外层标签,且每个路径对应的内层标签相同;
建立转发表项,所述转发表项包括所述目的设备的地址、所述等价路径对应的等价负载分担ECMP表的表项数量和所述内层标签,且所述表项数量是预设的固定值;
根据等价路径数量和所述固定值,为所述每个路径分配ECMP表项,所述每个路径对应的ECMP表项数量之和为所述固定值,所述ECMP表项记录相应路径的所述外层标签的索引。
本申请提供一种等价路由表项建立装置,应用于网络设备,所述网络设备至目的设备之间的至少两个路径被配置为等价路径,所述装置包括:
分配模块,用于为等价路径的每个路径分配内层标签和外层标签,且每个路径对应的内层标签相同;
建立模块,用于建立转发表项,所述转发表项包括所述目的设备的地址、所述等价路径对应的等价负载分担ECMP表的表项数量和所述内层标签,且所述表项数量是预设的固定值;
处理模块,用于根据等价路径数量和所述固定值,为所述每个路径分配 ECMP表项,所述每个路径对应的ECMP表项数量之和为所述固定值,所述 ECMP表项记录相应路径的所述外层标签的索引。
基于上述技术方案,本申请实施例中,在基于ECMP的MPLS L3VPN网络环境中,当有新路径加入等价路径、或者已有路径被从等价路径中删除时,在 ECMP表中的表项数量不变,只是调整每个路径分配到的表项数量即可,这样,转发表项(如FIB表项)中的ECMP表的表项数量并不会发生变化,也就不需要对转发表项的内容进行修改,不需要更新转发表项的内容,可以使用转发表项继续传输报文,避免发生丢包等问题,提高业务体验以及用户感受。
附图说明
为了更加清楚地说明本申请实施例或者现有技术中的技术方案,下面将对本申请实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本申请实施例的这些附图获得其他的附图。
图1是本申请一种实施方式中的MPLS L3VPN的应用场景示意图;
图2是本申请一种实施方式中的转发表、ECMP表、出接口信息表和邻接表的关系示意图;
图3是本申请一种实施方式中的等价路由表项建立方法的流程图;
图4是本申请一种实施方式中的MPLS L3VPN的应用场景示意图;
图5是本申请一种实施方式中的网络设备的硬件结构图;
图6是本申请一种实施方式中的等价路由表项建立装置的结构图。
具体实施方式
在本申请使用的术语仅仅是出于描述特定实施例的目的,而非限制本申请。本申请和权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。还应当理解,本文中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请实施例中提出一种等价路由表项建立方法,该方法可以应用于网络设备,如可以应用于MPLS L3VPN中,且该网络设备可以为PE设备。当然,该方法也可以应用于其它类型的MPLS网络中,并不局限于MPLS L3VPN。以图1为本申请实施例的应用场景示意图,该方法可以应用于图1的PE设备上。
在一个例子中,上述PE设备可以维护转发表(如FIB表等)、ECMP表、出接口信息表以及邻接表。如图2所示,为转发表、ECMP表、出接口信息表和邻接表的关系示意图。而且,在该转发表中的每个表项可以称为转发表项,在该ECMP表中的每个表项可以称为ECMP表项,在该出接口信息表中的每个表项可以称为出接口信息表项,在该邻接表中的每个表项可以称为邻接表项。
其中,转发表项中可以包括IP地址、与转发表项关联的ECMP表的表项数量、该ECMP表的标识等内容。ECMP表项中可以包括内层标签、外层标签的索引等内容。出接口信息表项中可以包括外层标签的索引、外层标签、邻接表索引等内容。邻接表项中可以包括邻接表索引、出接口、源MAC(Media Access Control,介质访问控制)地址(即该出接口的MAC地址)、目的MAC 地址(即该出接口的下一跳的MAC地址)、VLAN(Virtual Local Area Network,虚拟局域网)信息(即该出接口所属的VLAN)等内容。当然,转发表项、ECMP 表项、出接口信息表项、邻接表项不局限于上述内容,以上述内容为例。
在一个例子中,PE设备的至少两个路径被配置为等价路径,如图1所示,路径1、路径2和路径3被配置为等价路径,这些等价路径对应一个ECMP表,假设该等价路径对应ECMP表A。而且,每个路径对应一个接口,该接口可以是物理接口,也可以是逻辑接口(如由多个物理接口组成的聚合接口)。例如,路径1对应物理接口A,路径2对应物理接口B,路径3对应物理接口C等。
在上述应用场景下,如表1所示,为转发表的一个示例,如表2所示,为 ECMP表的一个示例,如表3所示,为出接口信息表的一个示例,如表4所示,为邻接表的一个示例。在表1中,针对主机2的IP地址,其关联的ECMP表为 ECMP表A(即表2所示的ECMP表),且ECMP表A的表项数量为3。
在表2中,针对路径1,分配内层标签A和外层标签1,ECMP表项1的内层标签为内层标签A,外层标签的索引为外层标签1的索引。针对路径2,分配内层标签A和外层标签2,ECMP表项2的内层标签为内层标签A,外层标签的索引为外层标签2的索引。针对路径3,分配内层标签A和外层标签3,ECMP 表项3的内层标签为内层标签A,外层标签的索引为外层标签3的索引。
在表3中,针对路径1,出接口信息表项1中可以包括外层标签1的索引、外层标签1、邻接表索引1,且该邻接表索引1是路径1对应的接口A对应的邻接表项。针对路径2,出接口信息表项2中可以包括外层标签2的索引、外层标签2、邻接表索引2,且该邻接表索引2是路径2对应的接口B对应的邻接表项。针对路径3,出接口信息表项3中可以包括外层标签3的索引、外层标签 3、邻接表索引3,且该邻接表索引3是路径3对应的接口C对应的邻接表项。
在表4中,针对路径1,邻接表项1中可以包括邻接表索引1、接口A、接口A的MAC地址、接口1的MAC地址、接口A的VLAN。针对路径2,邻接表项2中可以包括邻接表索引2、接口B、接口B的MAC地址、接口2的MAC 地址、接口B的VLAN。针对路径3,邻接表项3中可以包括邻接表索引3、接口C、接口C的MAC地址、接口3的MAC地址、接口C的VLAN。
表1
IP地址 ECMP表的表项数量 ECMP表的标识
主机2的IP地址 3 ECMP表A
表2
内层标签 外层标签的索引
内层标签A 外层标签1的索引
内层标签A 外层标签2的索引
内层标签A 外层标签3的索引
表3
外层标签的索引 外层标签 邻接表索引
外层标签1的索引 外层标签1 邻接表索引1
外层标签2的索引 外层标签2 邻接表索引2
外层标签3的索引 外层标签3 邻接表索引3
表4
Figure BDA0001219440950000051
Figure BDA0001219440950000061
在上述应用场景下,当有新路径加入等价路径、或者已有路径被从等价路径中删除时,如接口C故障导致路径3被从等价路径中删除时,则ECMP 表中记录的表项数量变为2,此时还需要调整转发表项中记录的表项数量。
针对上述发现,当每个路径(如路径1、路径2、路径3)对应的内层标签相同时,则本申请实施例中,针对PE设备维护的转发表、ECMP表、出接口信息表以及邻接表等,该转发表中的每个转发表项可以包括IP地址、与该转发表项关联的ECMP表的表项数量、该ECMP表的标识、内层标签等内容。该 ECMP表中的每个ECMP表项可以包括外层标签的索引等内容。该出接口信息表中的每个出接口信息表项可以包括外层标签的索引、外层标签、邻接表索引等内容。该邻接表中的每个邻接表项可以包括邻接表索引、出接口、源MAC 地址、目的MAC地址、VLAN信息等内容。当然,转发表项、ECMP表项、出接口信息表项、邻接表项均不局限于上述内容,对此不做限制。
针对转发表中的每个转发表项,该转发表项包括的ECMP表的表项数量是预设的固定值,如256等,该表项数量不会发生变化,在后续过程中介绍该表项数量。如表5所示,为转发表的一个示例,针对主机2的IP地址,其关联的 ECMP表为ECMP表A(表6所示的ECMP表),ECMP表A的表项数量为256。
在一个例子中,该转发表项还可以包括内层标签,参见表2所示,由于针对路径1、路径2和路径3,内层标签均为内层标签A,即内层标签相同,因此,可以将内层标签A放到转发表项中,这样,就可以维护表5所示的转发表。
表5
IP地址 ECMP表的表项数量 ECMP表的标识 内层标签
主机2的IP地址 256 ECMP表A 内层标签A
针对ECMP表中的每个ECMP表项,由于内层标签被放到转发表项中,因此,在该ECMP表项不再包含内层标签,该ECMP表项可以包括外层标签的索引。针对出接口信息表中的每个出接口信息表项,该出接口信息表项包括外层标签的索引、外层标签、邻接表索引等内容,参见表3所示,在此不再赘述。针对邻接表中的每个邻接表项,该邻接表项包括邻接表索引、出接口、源MAC 地址、目的MAC地址、VLAN信息等内容,参见表4所示,在此不再赘述。
基于上述应用场景,本申请实施例中提出的等价路由表项建立方法,可以应用于网络设备,该网络设备至目的设备之间的至少两个路径被配置为等价路径,参见图3所示,为该方法的流程图,该方法可以包括以下步骤:
步骤301,为等价路径的每个路径分配内层标签和外层标签,且每个路径对应的内层标签相同。如针对路径1,分配内层标签A和外层标签1,针对路径2,分配内层标签A和外层标签2,针对路径3,分配内层标签A和外层标签3。
步骤302,建立转发表项,该转发表项包括目的设备的地址、等价路径对应的ECMP表的表项数量和内层标签,且表项数量是预设的固定值。
在一个例子中,转发表项可以如表5所示,在此不再重复赘述。
步骤303,根据等价路径数量和固定值(即ECMP表的表项数量),为每个路径分配ECMP表项,每个路径对应的ECMP表项数量之和为该固定值,且ECMP表项记录相应路径的外层标签的索引。
在一个例子中,针对“根据等价路径数量和固定值,为每条路径分配ECMP 表项”的过程,可以包括:确定每条路径对应的第一数量为:对固定值除等价路径数量向下取整;确定固定值与每条路径对应的第一数量之和之间的差值 M;若M为0,则为每条路径分配的ECMP表项数量为第一数量;若M大于0、且小于等价路径数量,则从等价路径中选取M个路径,确定选取的M个路径中每个路径对应的第二数量为1,未被选取的路径中每个路径对应的第二数量为 0,则为每个路径分配的ECMP表项数量为:第一数量与第二数量之和。
其中,ECMP表的表项数量是一个固定值,该固定值不会发生变化,可以根据经验进行配置,如256等,当然该固定值并不局限于此,对此不做限制。
其中,等价路径数量就是被配置为等价路径的数量,如图1所示,由于路径1、路径2和路径3被配置为等价路径,因此,等价路径数量为3。
其中,针对“根据等价路径数量和固定值,为每条路径分配ECMP表项”的过程,假设固定值为256,等价路径数量为3,则可以确定每个路径对应的第一数量为85(即256/3向下取整)。由于256与255(3个路径对应的第一数量的和)之间的差值M为1,因此,可以从路径1、路径2和路径3中随机选取一个路径1,确定路径1对应的第二数量为1,并确定路径2和路径3对应的第二数量为0。综上所述,路径1对应的表项数量为86(85+1),此外,路径2对应的表项数量为85(85+0),路径3对应的表项数量为85(85+0)。
又例如,假设固定值为256,等价路径数量为8,则可以确定每个路径对应的第一数量为32(即256/8向下取整)。由于256与256(8个路径对应的第一数量的和)之间的差值M为0,因此,8个路径对应的表项数量均为32。
针对“在ECMP表的每个ECMP表项记录相应路径的外层标签的索引”的过程,假设路径1对应的表项数量为86,路径2对应的表项数量为85,路径 3对应的表项数量为85,则:为路径1分配86个ECMP表项,在这86个ECMP 表项中记录路径1对应的外层标签的索引(外层标签1的索引)。为路径2分配85个ECMP表项,在这85个ECMP表项中记录路径2对应的外层标签的索引(外层标签2的索引)。为路径3分配85个ECMP表项,在这85个ECMP 表项中记录路径3对应的外层标签的索引(外层标签3的索引)。
如表6所示,为ECMP表的一个示例,针对路径1,共包括86个外层标签 1的索引;针对路径2,共包括85个外层标签2的索引;针对路径3,共包括 85个外层标签3的索引。当然,表6只是各外层标签的索引顺序的一个示例,还可以采用其它顺序,如外层标签1的索引、外层标签2的索引、外层标签3 的索引、外层标签1的索引,以此类推,对于外层标签的索引顺序不做限制。
表6
Figure BDA0001219440950000081
Figure BDA0001219440950000091
在一个例子中,当等价路径数量增加时,若增加后的路径的内层标签与等价路径的内层标签相同,则更新等价路径数量,根据更新后的等价路径数量和固定值重新为每个路径分配ECMP表项;或者,当等价路径数量增加时,确定已有的每个路径对应的ECMP表项减少数量,从每个路径对应的ECMP表项中选取相应数量的ECMP表项,将选取的ECMP表项分配给新增的路径。而确定已有的每个路径对应的ECMP表项减少数量的过程,包括:根据更新后的等价路径数量和固定值重新获得每个路径在等价路径数量增加后的ECMP表项数量;确定已有的每个路径在等价路径数量增加前的ECMP表项数量、与该路径在等价路径数量增加后的ECMP表项数量之间的差值为ECMP表项减少数量。
例如,假设固定值为256,等价路径数量为3,则路径1对应的表项数量为 86,路径2对应的表项数量为85,路径3对应的表项数量为85。若增加一个路径4,则重新获得路径1对应的表项数量为64,路径2对应的表项数量为64,路径3对应的表项数量为64,路径4对应的表项数量为64。
基于此,在表3所示的出接口信息表中,增加路径4对应的记录,如增加外层标签4的索引、外层标签4(即针对路径4的外层标签)、邻接表索引4的对应关系。在表4所示的邻接表中,增加路径4对应的记录,如增加邻接表索引4、接口D(即路径4对应的接口)、接口D的MAC地址、与接口D连接的对端接口的MAC地址、接口D的VLAN的对应关系。
此外,由于路径1-路径4对应的表项数量均为64,因此,在表6所示的 ECMP表中,可以为路径1分配64个ECMP表项,在这64个ECMP表项中记录路径1对应的外层标签的索引;为路径2分配64个ECMP表项,在这64个 ECMP表项中记录路径2对应的外层标签的索引;为路径3分配64个ECMP表项,在这64个ECMP表项中记录路径3对应的外层标签的索引;为路径4分配64个ECMP表项,在这64个ECMP表项中记录路径4对应的外层标签的索引。
而且,当增加一个路径4时,当前已有路径对应的表项数量会减少,因此,网络设备可以确定出每个路径的表项减少数量,即变化前的表项数量减去变化后的表项数量,如路径1的表项减少数量为22(86-64),路径2的表项减少数量为21(85-64),路径3的表项减少数量为21(85-64)。基于此,可以从路径1对应的所有ECMP表项中随机选取22个ECMP表项,删除这22个ECMP 表项中记录的外层标签的索引,并在这22个ECMP表项中记录路径4对应的外层标签的索引。同理,可以从路径2对应的所有ECMP表项中随机选取21个 ECMP表项,删除这21个ECMP表项中记录的外层标签的索引,并在这21个 ECMP表项中记录路径4对应的外层标签的索引。可以从路径3对应的所有 ECMP表项中随机选取21个ECMP表项,删除这21个ECMP表项中记录的外层标签的索引,并在这21个ECMP表项中记录路径4对应的外层标签的索引。当然,当增加路径4时,也可以删除256个ECMP表项中记录的外层标签的索引,并重新为路径1、路径2、路径3、路径分配ECMP表项。
在一个例子中,当等价路径数量减少时,则可以更新等价路径数量,并根据更新后的等价路径数量和固定值重新为每个路径分配ECMP表项;或者,当等价路径数量减少时,则确定剩余的每个路径对应的ECMP表项增加数量,将减少的路径对应的ECMP表项按照增加数量分配给剩余的每个路径。而确定剩余的每个路径对应的ECMP表项增加数量的过程,包括:根据更新后的等价路径数量和固定值重新获得每个路径在等价路径数量减少后的ECMP表项数量;确定剩余的每个路径在等价路径数量减少后的ECMP表项数量、与该路径在等价路径数量减少前的ECMP表项数量之间的差值为ECMP表项增加数量。
例如,假设固定值为256,等价路径数量为3,则路径1对应的表项数量为 86,路径2对应的表项数量为85,路径3对应的表项数量为85。若减少一个路径3,则重新获得路径1对应的表项数量为128,路径2对应的表项数量为128。
基于此,在表3所示的出接口信息表中,删除路径3对应的记录,如删除外层标签3的索引、外层标签3、邻接表索引3的对应关系。在表4所示的邻接表中,删除路径3对应的记录,如删除邻接表索引3、接口C、接口C的MAC 地址、接口3的MAC地址、接口C的VLAN的对应关系。
此外,由于路径1、路径2对应的表项数量均为128,因此,在表6所示的 ECMP表中,网络设备可以为路径1分配128个ECMP表项,而且在这128个 ECMP表项中记录路径1对应的外层标签的索引;为路径2分配128个ECMP 表项,而且在这128个ECMP表项中记录路径2对应的外层标签的索引。
而且,当减少一个路径3时,剩余路径对应的表项数量会增加,因此,网络设备可以确定出剩余的每个路径的表项增加数量,即变化后的表项数量减去变化前的表项数量,如路径1的表项增加数量为42(128-86),路径2的表项增加数量为43(128-85)。基于此,网络设备可以删除路径3对应的85个ECMP 表项中记录的外层标签的索引,并在这85个ECMP表项中随机选取出42个 ECMP表项,在这42个ECMP表项中记录路径1对应的外层标签的索引,此外,还可以在剩余的43个表项中记录路径2对应的外层标签的索引。此外,当删除路径3对应的85个ECMP表项中记录的索引后,还可以采用轮询的方式依次记录路径1对应的外层标签的索引、路径2对应的外层标签的索引。例如,针对路径3对应的85个ECMP表项,在第1个ECMP表项记录路径1 对应的外层标签的索引,在第2个ECMP表项记录路径2对应的外层标签的索引,在第3个ECMP表项记录路径1对应的外层标签的索引,以此类推。当然,当减少路径3时,也可以删除256个ECMP表项中记录的外层标签的索引,并重新为路径1、路径2分配ECMP表项,在此不再赘述。
在一个例子中,针对上述增加路径4或者减少路径3的情况,为了获知路径对应了哪些ECMP表项,网络设备在维护表6所示的ECMP表后,还可以记录路径与ECMP表项的关系,如路径1对应第1个至第85个ECMP表项等。
基于上述应用场景,则报文传输过程可以包括:在接收到报文后,确定与该报文匹配的转发表项。从该转发表项中查询到ECMP表的表项数量和内层标签。利用该表项数量从ECMP表中确定与报文匹配的ECMP表项,从该ECMP 表项中查询到外层标签的索引,获取该索引对应的外层标签。利用该内层标签和该外层标签对报文进行修改。利用该外层标签对应的路径发送修改后报文。
在一个例子中,网络设备在接收到报文后,可以查询到与该报文的目的IP 地址匹配的转发表项,即转发表项中的IP地址与该报文的目的IP地址相同。例如,网络设备在接收到主机1发送给主机2的报文后,由于目的IP地址为主机 2的IP地址,因此可以查询到表5所示的转发表项。在该转发表项中,记录有 ECMP表的表项数量256以及内层标签A,因此,可以从该转发表项中查询到表项数量256以及内层标签A,而且,该表项数量256不会发生变化。
在一个例子中,针对“利用该表项数量从ECMP表中确定与报文匹配的 ECMP表项”的过程,可以包括:生成随机值(该随机值可以为一个正整数),并利用该随机值以及该表项数量确定出与该报文匹配的位置,并从ECMP表中确定出与该位置关联的ECMP表项。具体的,可以先获得该随机值除以该表项数量的余数,并基于该余数确定与该报文匹配的位置,并从ECMP表中确定出与该位置关联的ECMP表项,如ECMP表的第(余数+1)个ECMP表项。例如,假设生成的随机值为10,则10/256的余数为10,因此,可以确定出与该报文匹配的是ECMP表的第11个ECMP表项。又例如,假设生成的随机值为256,则 256/256的余数为0,因此,可以确定与该报文匹配的是ECMP表的第1个 ECMP表项,以此类推。由于随机值是随机生成的,因此,随机值除以256的余数会平均分配到256个ECMP表项,从而在256个ECMP表项实现平均分配。
而且,由于ECMP表项记录外层标签的索引,因此可以从ECMP表项中查询到外层标签的索引,如从第1个ECMP表项查询到外层标签1的索引。
在一个例子中,针对“获取该索引对应的外层标签”的过程,由于出接口信息表用于记录外层标签的索引与外层标签的对应关系,因此,在获取到外层标签的索引后,可以通过该索引查询出接口信息表,从而得到与该索引对应的外层标签。例如,在得到外层标签1的索引后,通过该外层标签1的索引查询表3所示的出接口信息表,可以得到与该索引对应的外层标签为外层标签1。
在一个例子中,针对“利用该内层标签和该外层标签对报文进行修改”的过程,网络设备可以对报文进行封装,即为报文封装内层标签A和外层标签 1,对此封装过程不再赘述,可以参考MPLS L3VPN中的报文封装过程。
在一个例子中,针对“利用该外层标签对应的路径发送修改后的报文”的过程,可以包括:通过该外层标签查询该出接口信息表,得到与该外层标签对应的邻接表索引,并查询到与该邻接表索引对应的邻接表项。进一步的,利用该邻接表项中记录的源MAC地址、目的MAC地址、VLAN信息对上述修改后的报文进行封装,并利用该邻接表项对应的路径发送封装后的报文。
其中,针对“通过该外层标签查询该出接口信息表,得到与该外层标签对应的邻接表索引,并查询到与该邻接表索引对应的邻接表项”的过程,在得到外层标签1之后,通过该外层标签1查询表3所示的出接口信息表,可以得到与该外层标签1对应的邻接表索引1,并通过邻接表索引1查询表4所示的邻接表,得到与该邻接表索引1对应的邻接表项,即邻接表的第一个邻接表项。
进一步的,由于该邻接表项中记录有出接口、源MAC地址、目的MAC地址、VLAN信息等内容,因此,可以利用该邻接表项中记录的源MAC地址(即接口A的MAC地址)、目的MAC地址(即接口1的MAC地址)、VLAN信息(即接口1的MAC地址)等对上述修改后的报文(即包含内层标签A和外层标签1的报文)进行封装,并利用该邻接表项对应的路径(即该邻接表项中记录的接口A)发送封装后的报文,对于该报文的封装方式,在此不再赘述。
基于上述过程,网络设备可以基于自身维护的各表完成报文的传输。
在一个例子中,上述内层标签可以是私网标签,也可以是公网标签。而且,在分配私网标签时,可以基于前缀方式分配私网标签,也可以基于VPN 方式分配私网标签,对此私网标签的分配方式不再赘述。在另一个例子中,上述内层标签可以是公网标签,上述外层标签可以无效值。如图4所示,针对路径1,分配公网标签A,针对路径2,分配公网标签A,针对路径3,分配公网标签A。而且不再分配私网标签,而是将公网标签A作为内层标签,记录到转发表项中。由于公网标签A作为内层标签了,因此可以将外层标签设置为无效值,例如,可以将无效值1作为路径1的外层标签、将无效值2作为路径2 的外层标签、将无效值3作为路径3的外层标签,并记录到出接口信息表中。
在一个例子中,网络设备可以通过CPU(Central Processing Unit,中央处理器)进行报文传输,网络设备也可以通过硬件芯片(如FPGA(Field Programmable Gate Array,现场可编程门阵列)、ASIC(Application Specific Integrated Circuit,专用集成电路)、NP(Network Processor,网络处理器)等)进行报文传输。
若通过CPU进行报文传输,则由CPU维护上述转发表、ECMP表、出接口信息表和邻接表,CPU在接收到报文后,利用转发表、ECMP表、出接口信息表和邻接表传输报文。若通过硬件芯片进行报文传输,则CPU在生成上述转发表、ECMP表、出接口信息表和邻接表后,将转发表、ECMP表、出接口信息表和邻接表下发到硬件芯片,硬件芯片在接收到报文后,利用转发表、ECMP 表、出接口信息表和邻接表传输报文。
基于上述技术方案,本申请实施例中,在基于ECMP的MPLS L3VPN网络环境中,当有新路径加入等价路径、或者已有路径被从等价路径中删除时,在 ECMP表中的表项数量不变,只是调整每个路径分配到的表项数量即可,这样,转发表项(如FIB表项)中的ECMP表的表项数量并不会发生变化,也就不需要对转发表项的内容进行修改,不需要更新转发表项的内容,可以使用转发表项继续传输报文,避免发生丢包等问题,提高业务体验以及用户感受。
在传统方式中,假设等价路径数量减少或者增加,如从16个等价路径减少为15个等价路径,则需要刷新ECMP表项,且由于ECMP表项的数量发生变化,因此还需要刷新转发表项,假设与ECMP表项关联的转发表项有10万条,则刷新ECMP表项和转发表项的时间为1秒左右。而本申请实施例中,假设等价路径数量减少或者增加,如从16个等价路径减少为15个等价路径,则只需要刷新ECMP表项,由于ECMP表项的数量未发生变化,因此不需要刷新转发表项,即使与ECMP表项关联的转发表项再多,刷新ECMP表项的时间也只为 20毫秒左右。因此,与传统方式相同,刷新时间可以节省近50倍。
基于与上述方法同样的申请构思,本申请实施例还提供一种等价路由表项建立装置,可以应用于网络设备,所述网络设备至目的设备之间的至少两个路径被配置为等价路径。其中,该等价路由表项建立装置可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在的网络设备的处理器,读取非易失性存储器中对应的计算机程序指令形成的。从硬件层面而言,如图5所示,为本申请提出的等价路由表项建立装置所在的网络设备的一种硬件结构图,除了图5所示的处理器、非易失性存储器外,网络设备还可以包括其他硬件,如负责处理报文的转发芯片、网络接口、内存等;从硬件结构上来讲,该网络设备还可能是分布式设备,可能包括多个接口卡,以便在硬件层面进行报文处理的扩展。
如图6所示,为本申请提出的等价路由表项建立装置的结构图,包括:
分配模块11,用于为等价路径的每个路径分配内层标签和外层标签,且每个路径对应的内层标签相同;
建立模块12,用于建立转发表项,所述转发表项包括所述目的设备的地址、所述等价路径对应的等价负载分担ECMP表的表项数量和所述内层标签,且所述表项数量是预设的固定值;
处理模块13,用于根据等价路径数量和所述固定值,为所述每个路径分配 ECMP表项,所述每个路径对应的ECMP表项数量之和为所述固定值,所述 ECMP表项记录相应路径的所述外层标签的索引。
在一个例子中,在根据等价路径数量和所述固定值,为所述每条路径分配 ECMP表项的过程中,所述处理模块13,具体用于:确定每条路径对应的第一数量为:对所述固定值除等价路径数量向下取整;确定所述固定值与每条路径对应的第一数量之和之间的差值M;若所述M为0,为每条路径分配的ECMP 表项数量为所述第一数量;若所述M大于0、且小于所述等价路径数量,从所述等价路径中选取M个路径,确定选取的M个路径中每个路径对应的第二数量为1,未被选取的路径中每个路径对应的第二数量为0,则为每个路径分配的 ECMP表项数量为:所述第一数量与第二数量之和。
在一个例子中,所述处理模块13,还用于当所述等价路径数量增加时,更新等价路径数量,并根据更新后的等价路径数量和所述固定值重新为所述每个路径分配ECMP表项;或者,当所述等价路径数量增加时,确定已有的每个路径对应的ECMP表项减少数量,从每个路径对应的ECMP表项中选取相应数量的ECMP表项,将选取的ECMP表项分配给新增的路径。
在确定已有的每个路径对应的ECMP表项减少数量的过程中,所述处理模块13,具体用于:根据更新后的等价路径数量和所述固定值重新获得每个路径在等价路径数量增加后的ECMP表项数量;确定已有的每个路径在等价路径数量增加前的ECMP表项数量、与该路径在等价路径数量增加后的ECMP表项数量之间的差值为ECMP表项减少数量。
在一个例子中,所述处理模块13,还用于当所述等价路径数量减少时,更新等价路径数量,并根据更新后的等价路径数量和所述固定值重新为所述每个路径分配ECMP表项;或者,当所述等价路径数量减少时,确定剩余的每个路径对应的ECMP表项增加数量,将减少的路径对应的ECMP表项按照所述增加数量分配给剩余的每个路径。
在确定剩余的每个路径对应的ECMP表项增加数量的过程中,所述处理模块13,具体用于:根据更新后的等价路径数量和所述固定值重新获得每个路径在等价路径数量减少后的ECMP表项数量;确定剩余的每个路径在等价路径数量减少后的ECMP表项数量、与该路径在等价路径数量减少前的ECMP表项数量之间的差值为ECMP表项增加数量。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可以由计算机程序指令实现流程图和 /或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其它可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其它可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
而且,这些计算机程序指令也可以存储在能引导计算机或其它可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或者多个流程和/或方框图一个方框或者多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其它可编程数据处理设备上,使得在计算机或者其它可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其它可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本领域技术人员应明白,本申请的实施例可提供为方法、系统或计算机程序产品。因此,本申请可以采用完全硬件实施例、完全软件实施例、或者结合软件和硬件方面的实施例的形式。而且,本申请可以采用在一个或者多个其中包含有计算机可用程序代码的计算机可用存储介质(可以包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。

Claims (12)

1.一种等价路由表项建立方法,应用于网络设备,所述网络设备至目的设备之间的至少两个路径被配置为等价路径,其特征在于,所述方法包括:
为等价路径的每个路径分配内层标签和外层标签,且每个路径对应的内层标签相同;
建立转发表项,所述转发表项包括所述目的设备的地址、所述等价路径对应的等价负载分担ECMP表的表项数量和所述内层标签,且所述表项数量是预设的固定值;
根据等价路径数量和所述固定值,为所述每个路径分配ECMP表项,所述每个路径对应的ECMP表项数量之和为所述固定值,所述ECMP表项记录相应路径的所述外层标签的索引;
其中,在接收到报文后,确定与所述报文匹配的转发表项,从所述转发表项中查询到ECMP表的表项数量和内层标签;利用所述表项数量从ECMP表中确定与所述报文匹配的ECMP表项,从所述ECMP表项中查询到外层标签的索引,获取该索引对应的外层标签;利用所述内层标签和所述外层标签对所述报文进行修改,利用所述外层标签对应的路径发送修改后报文。
2.根据权利要求1所述的方法,其特征在于,所述根据等价路径数量和所述固定值,为所述每条路径分配ECMP表项,包括:
确定每条路径对应的第一数量为:对所述固定值除等价路径数量向下取整;
确定所述固定值与每条路径对应的第一数量之和之间的差值M;
若所述M为0,则为每条路径分配的ECMP表项数量为所述第一数量;
若所述M大于0、且小于所述等价路径数量,则从所述等价路径中选取M个路径,确定选取的M个路径中每个路径对应的第二数量为1,未被选取的路径中每个路径对应的第二数量为0,则为每个路径分配的ECMP表项数量为:所述第一数量与第二数量之和。
3.根据权利要求2所述的方法,其特征在于,
当所述等价路径数量增加时,更新等价路径数量,并根据更新后的等价路径数量和所述固定值重新为所述每个路径分配ECMP表项;或者,
当所述等价路径数量增加时,确定已有的每个路径对应的ECMP表项减少数量,从每个路径对应的ECMP表项中选取相应数量的ECMP表项,将选取的ECMP表项分配给新增的路径。
4.根据权利要求3所述的方法,其特征在于,所述确定已有的每个路径对应的ECMP表项减少数量,包括:
根据更新后的等价路径数量和所述固定值重新获得每个路径在等价路径数量增加后的ECMP表项数量;
确定已有的每个路径在等价路径数量增加前的ECMP表项数量、与该路径在等价路径数量增加后的ECMP表项数量之间的差值为ECMP表项减少数量。
5.根据权利要求2所述的方法,其特征在于,
当所述等价路径数量减少时,更新等价路径数量,并根据更新后的等价路径数量和所述固定值重新为所述每个路径分配ECMP表项;或者,
当所述等价路径数量减少时,确定剩余的每个路径对应的ECMP表项增加数量,将减少的路径对应的ECMP表项按照所述增加数量分配给剩余的每个路径。
6.根据权利要求5所述的方法,其特征在于,所述确定剩余的每个路径对应的ECMP表项增加数量,包括:
根据更新后的等价路径数量和所述固定值重新获得每个路径在等价路径数量减少后的ECMP表项数量;
确定剩余的每个路径在等价路径数量减少后的ECMP表项数量、与该路径在等价路径数量减少前的ECMP表项数量之间的差值为ECMP表项增加数量。
7.一种等价路由表项建立装置,应用于网络设备,所述网络设备至目的设备之间的至少两个路径被配置为等价路径,其特征在于,所述装置包括:
分配模块,用于为等价路径的每个路径分配内层标签和外层标签,且每个路径对应的内层标签相同;
建立模块,用于建立转发表项,所述转发表项包括所述目的设备的地址、所述等价路径对应的等价负载分担ECMP表的表项数量和所述内层标签,且所述表项数量是预设的固定值;
处理模块,用于根据等价路径数量和所述固定值,为所述每个路径分配ECMP表项,所述每个路径对应的ECMP表项数量之和为所述固定值,所述ECMP表项记录相应路径的所述外层标签的索引;
其中,在接收到报文后,确定与所述报文匹配的转发表项,从所述转发表项中查询到ECMP表的表项数量和内层标签;利用所述表项数量从ECMP表中确定与所述报文匹配的ECMP表项,从所述ECMP表项中查询到外层标签的索引,获取该索引对应的外层标签;利用所述内层标签和所述外层标签对所述报文进行修改,利用所述外层标签对应的路径发送修改后报文。
8.根据权利要求7所述的装置,其特征在于,在根据等价路径数量和所述固定值,为所述每条路径分配ECMP表项的过程中,所述处理模块,具体用于:确定每条路径对应的第一数量为:对所述固定值除等价路径数量向下取整;确定所述固定值与每条路径对应的第一数量之和之间的差值M;若所述M为0,为每条路径分配的ECMP表项数量为所述第一数量;若所述M大于0、且小于所述等价路径数量,从所述等价路径中选取M个路径,确定选取的M个路径中每个路径对应的第二数量为1,未被选取的路径中每个路径对应的第二数量为0,则为每个路径分配的ECMP表项数量为:所述第一数量与第二数量之和。
9.根据权利要求8所述的装置,其特征在于,
所述处理模块,还用于当所述等价路径数量增加时,更新等价路径数量,并根据更新后的等价路径数量和所述固定值重新为所述每个路径分配ECMP表项;或者,当所述等价路径数量增加时,确定已有的每个路径对应的ECMP表项减少数量,从每个路径对应的ECMP表项中选取相应数量的ECMP表项,将选取的ECMP表项分配给新增的路径。
10.根据权利要求9所述的装置,其特征在于,
在确定已有的每个路径对应的ECMP表项减少数量的过程中,所述处理模块,具体用于:根据更新后的等价路径数量和所述固定值重新获得每个路径在等价路径数量增加后的ECMP表项数量;确定已有的每个路径在等价路径数量增加前的ECMP表项数量、与该路径在等价路径数量增加后的ECMP表项数量之间的差值为ECMP表项减少数量。
11.根据权利要求8所述的装置,其特征在于,所述处理模块,还用于当所述等价路径数量减少时,更新等价路径数量,并根据更新后的等价路径数量和所述固定值重新为所述每个路径分配ECMP表项;或者,当所述等价路径数量减少时,确定剩余的每个路径对应的ECMP表项增加数量,将减少的路径对应的ECMP表项按照所述增加数量分配给剩余的每个路径。
12.根据权利要求11所述的装置,其特征在于,
在确定剩余的每个路径对应的ECMP表项增加数量的过程中,所述处理模块,具体用于:根据更新后的等价路径数量和所述固定值重新获得每个路径在等价路径数量减少后的ECMP表项数量;确定剩余的每个路径在等价路径数量减少后的ECMP表项数量、与该路径在等价路径数量减少前的ECMP表项数量之间的差值为ECMP表项增加数量。
CN201710056621.5A 2017-01-25 2017-01-25 一种等价路由表项建立方法和装置 Active CN108259346B (zh)

Priority Applications (5)

Application Number Priority Date Filing Date Title
CN201710056621.5A CN108259346B (zh) 2017-01-25 2017-01-25 一种等价路由表项建立方法和装置
PCT/CN2018/074118 WO2018137682A1 (zh) 2017-01-25 2018-01-25 等价路径的表项建立
EP18745079.6A EP3562098B1 (en) 2017-01-25 2018-01-25 Entry creation for equal cost paths
US16/481,066 US11108682B2 (en) 2017-01-25 2018-01-25 Establishing entry corresponding to equal-cost paths
JP2019540343A JP6789401B2 (ja) 2017-01-25 2018-01-25 等コストパスエントリ確立

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710056621.5A CN108259346B (zh) 2017-01-25 2017-01-25 一种等价路由表项建立方法和装置

Publications (2)

Publication Number Publication Date
CN108259346A CN108259346A (zh) 2018-07-06
CN108259346B true CN108259346B (zh) 2020-08-04

Family

ID=62721909

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710056621.5A Active CN108259346B (zh) 2017-01-25 2017-01-25 一种等价路由表项建立方法和装置

Country Status (5)

Country Link
US (1) US11108682B2 (zh)
EP (1) EP3562098B1 (zh)
JP (1) JP6789401B2 (zh)
CN (1) CN108259346B (zh)
WO (1) WO2018137682A1 (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109039891B (zh) * 2018-08-23 2021-05-07 新华三技术有限公司 等价路径管理方法、装置、通信设备及存储介质
CN109905495A (zh) * 2019-02-22 2019-06-18 盛科网络(苏州)有限公司 一种降低cpu负载的方法及装置
US11240355B2 (en) 2019-05-17 2022-02-01 Arista Networks, Inc. Platform agnostic abstraction for forwarding equivalence classes with hierarchy
CN111130871B (zh) * 2019-12-18 2022-06-10 新华三半导体技术有限公司 保护切换方法、装置和网络设备
CN112187578B (zh) * 2020-09-28 2022-11-25 新华三信息安全技术有限公司 表项生成方法、装置及设备
CN113452614B (zh) * 2021-06-25 2022-06-21 新华三信息安全技术有限公司 一种报文处理方法和装置
US11700201B2 (en) * 2021-07-26 2023-07-11 Arista Networks, Inc. Mechanism to enforce consistent next hops in a multi-tier network
CN113872863B (zh) * 2021-08-25 2023-04-18 优刻得科技股份有限公司 一种路径搜索方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103078804A (zh) * 2012-12-28 2013-05-01 福建星网锐捷网络有限公司 等价多路径表处理方法、装置及网络设备
CN104144120A (zh) * 2013-05-07 2014-11-12 杭州华三通信技术有限公司 转发信息配置方法及装置
US9374311B1 (en) * 2012-01-26 2016-06-21 Google Inc. System and method for reducing hardware table resources in a multi-stage network device

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8718060B2 (en) * 2006-07-31 2014-05-06 Cisco Technology, Inc. Technique for multiple path forwarding of label-switched data traffic
CN101094185A (zh) 2007-07-27 2007-12-26 杭州华三通信技术有限公司 基于多链路的报文转发方法和装置
CN101572667B (zh) * 2009-05-22 2011-11-30 中兴通讯股份有限公司 一种ip路由等价多路径的实现方法及装置
US20100332516A1 (en) 2009-06-30 2010-12-30 Alcatel-Lucent Usa Inc. Linking inner and outer mpls labels
CN102333028B (zh) 2011-06-22 2013-02-13 杭州华三通信技术有限公司 一种分层式二层虚拟专用网发送报文的方法及通信设备
US20130083660A1 (en) 2011-10-03 2013-04-04 Cisco Technology, Inc. Per-Group ECMP for Multidestination Traffic in DCE/TRILL Networks
CN102857414B (zh) * 2012-08-20 2018-05-04 中兴通讯股份有限公司 一种转发表写入、报文转发方法及装置
CN105721321B (zh) 2014-12-02 2019-09-06 南京中兴新软件有限责任公司 一种等价多路径的出接口更新方法及装置
US10341221B2 (en) * 2015-02-26 2019-07-02 Cisco Technology, Inc. Traffic engineering for bit indexed explicit replication
US9819577B2 (en) * 2015-05-29 2017-11-14 Cisco Technology, Inc. Adjusting control-plane allocation of packet processing resources
WO2018020290A1 (en) * 2016-07-25 2018-02-01 Telefonaktiebolaget Lm Ericsson (Publ) Fast control path and data path convergence in layer 2 overlay networks

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9374311B1 (en) * 2012-01-26 2016-06-21 Google Inc. System and method for reducing hardware table resources in a multi-stage network device
CN103078804A (zh) * 2012-12-28 2013-05-01 福建星网锐捷网络有限公司 等价多路径表处理方法、装置及网络设备
CN104144120A (zh) * 2013-05-07 2014-11-12 杭州华三通信技术有限公司 转发信息配置方法及装置

Also Published As

Publication number Publication date
WO2018137682A1 (zh) 2018-08-02
EP3562098A4 (en) 2019-11-27
EP3562098B1 (en) 2021-08-25
US20190394119A1 (en) 2019-12-26
US11108682B2 (en) 2021-08-31
JP2020505853A (ja) 2020-02-20
EP3562098A1 (en) 2019-10-30
JP6789401B2 (ja) 2020-11-25
CN108259346A (zh) 2018-07-06

Similar Documents

Publication Publication Date Title
CN108259346B (zh) 一种等价路由表项建立方法和装置
CN107547391B (zh) 一种报文传输方法和装置
CN102137014B (zh) 资源管理方法、系统和资源管理器
CN108259347B (zh) 一种报文传输方法和装置
CN108718278B (zh) 一种报文传输方法和装置
US20160241474A1 (en) Technologies for modular forwarding table scalability
CN108848034B (zh) 一种网络设备及表项学习方法
US10459729B2 (en) Map tables for hardware tables
CN107040393B (zh) 一种路由管理方法和设备
CN102035735A (zh) 用于提供转发信息和服务质量信息的设备和方法
CN104468401A (zh) 一种报文处理方法和装置
CN102857414A (zh) 一种转发表写入、报文转发方法及装置
CN107547283B (zh) 分布式聚合组的管理方法及装置
CN110169019B (zh) 数据库功能定义的网络交换机和数据库系统
CN108259348B (zh) 一种报文传输方法和装置
CN109873766B (zh) 报文传输方法和装置
CN108390811B (zh) 一种gre隧道建立方法及其设备
CN104780201A (zh) 一种ipvs集群中的数据包处理方法及装置
CN107547378B (zh) 一种vpn路由学习方法和装置
CN107086960B (zh) 一种报文传输方法和装置
CN110661713B (zh) 一种报文转发方法及装置
CN108632125B (zh) 一种组播表项管理方法、装置、设备及机器可读存储介质
CN109726144B (zh) 一种数据报文的处理方法和装置
CN107046503B (zh) 一种报文传输方法、系统及其装置
CN107547382B (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
GR01 Patent grant
GR01 Patent grant