CN108650180B - 堆叠系统及其表项下发方法、装置 - Google Patents

堆叠系统及其表项下发方法、装置 Download PDF

Info

Publication number
CN108650180B
CN108650180B CN201810359198.0A CN201810359198A CN108650180B CN 108650180 B CN108650180 B CN 108650180B CN 201810359198 A CN201810359198 A CN 201810359198A CN 108650180 B CN108650180 B CN 108650180B
Authority
CN
China
Prior art keywords
forwarding
entry
target
equipment
resources
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
CN201810359198.0A
Other languages
English (en)
Other versions
CN108650180A (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 CN201810359198.0A priority Critical patent/CN108650180B/zh
Publication of CN108650180A publication Critical patent/CN108650180A/zh
Application granted granted Critical
Publication of CN108650180B publication Critical patent/CN108650180B/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/54Organization of routing tables
    • 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

Landscapes

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

Abstract

本申请提供一种堆叠系统及其表项下发方法、装置,该系统包括CB设备和至少一个PE设备,CB设备在获得新配置的转发表项时,查找与新配置的转发表项对应的目标PE设备的转发能力信息,判断目标PE设备是否具备新配置的转发表项的转发能力,若是,将获取目标PE设备中当前空闲的硬件转发资源的数量,判断目标PE设备是否有足够的硬件转发资源存储新配置的转发表项,若有,将新配置的转发表项下发给目标PE设备。如此,可以在充分利用CB设备和PE设备上的硬件转发资源的情况下,避免下发到PE设备的表项配置失败。

Description

堆叠系统及其表项下发方法、装置
技术领域
本申请涉及通信技术领域,具体而言,涉及一种堆叠系统及其表项下发方法、装置。
背景技术
为了提升网络管理效率,网络设备虚拟化技术应运而生,802.1BR协议就是其中一种虚拟化技术。通过802.1BR协议可以实现所有网络设备的级联,将所有网络设备虚拟化成一台网络设备。
目前,在基于802.1BR标准的堆叠系统,如IRF(Intelligent ResilientFramework,智能弹性架构),可以通过以下方式下发转发表项:将表项下发在CB(Controlling Bridge,控制桥)设备,或者,将表项下发在PE(Port Extender,端口扩展)设备。但上述方式无法同时利用PE设备和CB设备中的硬件转发资源。
发明内容
有鉴于此,本申请的目的在于提供一种堆叠系统及其表项下发方法、装置,以改善上述问题。
为了达到上述目的,本申请实施例采用如下技术方案:
第一方面,本申请实施例提供一种堆叠系统,包括CB设备和与该CB设备连接的至少一个PE设备,该CB设备用于管理所述PE设备,CB设备中存储有各PE设备的转发能力信息;
CB设备在获得新配置的转发表项时,查找与该新配置的转发表项对应的目标PE设备的转发能力信息,判断目标PE设备是否具备所述新配置的转发表项的转发能力;
当目标PE设备具备所述新配置的转发表项的转发能力时,CB设备获取目标设备目标PE设备中当前空闲的硬件转发资源的数量,判断目标PE设备是否有足够的硬件转发资源存储所述新配置的转发表项;
当目标PE设备有足够的硬件转发资源存储所述新配置的转发表项时,CB设备将所述新配置的转发表项下发给目标PE设备;
目标PE设备接收并保存所述新配置的转发表项。
第二方面,本申请实施例提供一种表项下发方法,应用于堆叠系统,该堆叠系统包括CB设备和与该CB设备连接的至少一个PE设备,该CB设备用于管理所述PE设备,CB设备中存储有各PE设备的转发能力信息,该方法包括:
CB设备在获得新配置的转发表项时,查找与该新配置的转发表项对应的目标PE设备的转发能力信息,判断目标PE设备是否具备所述新配置的转发表项的转发能力;
当目标PE设备具备所述新配置的转发表项的转发能力时,CB设备获取所述目标PE设备中当前空闲的硬件转发资源的数量,判断目标PE设备是否有足够的硬件转发资源存储所述新配置的转发表项;
当目标PE设备有足够的硬件转发资源存储所述新配置的转发表项时,CB设备将所述新配置的转发表项下发给目标PE设备;
目标PE设备接收并保存所述新配置的转发表项。
第三方面,本申请实施例还提供一种表项下发装置,应用于与至少一个PE设备连接的CB设备,该CB设备用于所述PE设备,该表项下发装置包括:
第一判断模块,用于在获得新配置的转发表项时,查找与该新配置的转发表项对应的目标PE设备的转发能力信息,断该目标PE设备是否具备所述新配置的转发表项的转发能力;
第二判断模块,用于当目标PE设备具备所述新配置的转发表项的转发能力时,获取目标PE设备中当前空闲的硬件转发资源的数量,判断目标PE设备是否有足够的硬件转发资源存储所述新配置的转发表项;
表项下发模块,用于当目标PE设备有足够的硬件转发资源存储所述新配置的转发表项时,将所述新配置的转发表项下发给目标PE设备进行存储。
相较于现有技术,本申请实施例具有以下有益效果:
本申请实施例提供的一种堆叠系统及其表项下发方法、装置,CB设备在将新配置的转发表项下发给相应的目标PE设备之前,判断该目标PE设备是否具备新配置的转发表项的转发能力,若具备,则判断该目标PE设备是否有足够的硬件转发资源存储新配置的转发表项,若有,再将新配置的转发表项下发给目标PE设备存储。如此,可以在充分利用PE设备和CB设备中的硬件转发资源的情况下,避免下发到PE设备的表项配置失败。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种堆叠系统的连接框图;
图2为本申请实施例提供的又一种堆叠系统的连接框图;
图3为本申请实施例提供的一种CB设备的方框示意图;
图4为本申请实施例提供的一种表项下发方法的流程示意图;
图5为本申请实施例提供的表项下发方法的又一流程示意图;
图6为本申请实施例提供的又一种堆叠系统的连接框图;
图7为本申请实施例提供的一种表项下发装置的功能模块框图。
图标:10-堆叠系统;100-CB设备;110-表项下发装置;111-第一判断模块;112-第二判断模块;113-表项下发模块;120-存储器;130-处理器;140-接口单元;150-通信单元;200、201、202-PE设备。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
在基于802.1BR协议的堆叠系统中,通常通过以下两种方式下发转发表项:
第一,将所有转发表项下发在CB设备上。基于此,PE设备默认将接收到的报文上送到CB设备,由CB设备根据该报文进行查表并根据查找到的转发表项确定出端口,将出端口的标识封装在该报文中,再将包括出端口的标识的报文发送给该出端口所在的PE设备,再由该出端口所在的PE设备对该报文进行转发。
第二,将转发表项下发在PE设备。在此方式中,PE设备在接收到报文时,在本设备进行查表,并根据查找到的转发表项确定出端口,若该出端口在本设备,从本设备的该出端口转发该报文;若该出端口不在本设备,将该出端口的标识封装在该报文中,再将包括出端口的标识的报文发送给CB设备,由CB设备根据该出端口的标识进行后续的转发。
但上述两种方式,无法同时利用CB设备和PE设备上的硬件转发资源。在一种实施方式中,可以同时在PE设备和CB设备下发转发表项,具体可以由CB设备在获得用户配置的转发表项时,将该转发表项下发到相应的PE设备。
然而,经发明人研究发现,由于PE设备的硬件转发资源规格较小,能够支持的动作类型、匹配字段较少,若是将PE设备不支持的转发表项下发给该PE设备,或是将转发表项下发给已经没有足够的硬件转发资源的PE设备,堆叠系统将会默认无法配置该转发表项,从而导致该转发表项配置失败。因此,在采用这种方式时,不可避免地会出现前述的配置失败的情况。
针对上述问题,本申请实施例提出一种堆叠系统及其表项下发方法、装置,能够在充分利用PE设备和CB设备上的硬件转发资源的情况下,避免出现前述的表项配置失败的情况。下面对本实施例提供的方案进行详细阐述。
请一并参阅图1和图2,是本申请实施例提供的一种堆叠系统10的连接框图,该堆叠系统10包括CB设备100和至少一个PE设备200。
例如图1所示,为了实现对PE设备200的管理,可以通过一个CB设备100与一个或多个PE设备200连接形成堆叠系统10。其中,每个PE设备200连接在CB设备100上,为CB设备100提供端口扩展功能。PE设备200作为CB设备100的远程业务板,CB设备100作为所有PE设备200的管理和控制方,负责配置和管理PE设备100。
再如图2所示,也可以将多个CB设备进行堆叠形成一个逻辑上的CB设备100,实现对PE设备200的管理。其中,堆叠中的每个CB设备与每个PE设备200连接形成堆叠系统10。
综上,本实施例中的CB设备100可以是图1示出的一个独立的CB设备100,也可以是图2示出的由多个CB设备堆叠形成的一个逻辑上的CB设备100。
可选地,在本实施例中,堆叠系统10可以是IRF(Intelligent ResilientFramework,弹性智能框架)系统,如IRF3.1系统。
请参阅图3,是本申请实施例提供的一种CB设备100的方框示意图。CB设备100可以包括表项下发装置110、存储器120、处理器130、接口单元140及通信单元150。
存储器120、处理器130、接口单元140及通信单元150各组件相互之间直接或间接地电性连接,以实现数据的交互。例如,这些组件相互之间可通过一条或多条通讯总线或信号总线实现电性连接。表项下发装置110包括一个以上可以以软件(Software)或固件(Firmware)的形式存储与存储器120中的软件功能模块。处理器130用于执行存储在存储器120中的可执行模块,例如表项下发装置110所包括的软件功能模块及计算机指令等。
接口单元140包括CB设备100与PE设备200相连的各个端口,通信单元150用于建立CB设备与外部设备(包括PE设备200等)的通信连接,从而实现与外部设备的数据通信和交互。
应当理解,图3所示仅为示意,CB设备100可以具有比图3所示更多或更少的组件,或是具有与图3所示完全不同的配置。在此值得说明的是,图3所示的各组件可以通过软件、硬件或其组合实现,本实施例对此不做限制。
请参阅图4,是本申请实施例提供的一种基于图1或图2所示堆叠系统10的表项下发方法的流程示意图。在本实施例中,该表项下发方法包括如下步骤。
步骤S410,CB设备100在获得新配置的转发表项时,查找与该新配置的转发表项对应的目标PE设备的转发能力信息。
步骤S420,判断该目标PE设备是否具备所述新配置的转发表项的转发能力。若是,则执行步骤S430,若否,则可以执行步骤S440。
其中,新配置的转发表项是指用户配置到CB设备100上的表项,可以是ACL(AccessControl Lists,ACL)表项、MAC(Media Access Control或Medium Access Control)地址表项、路由表项、openflow表项等。
在本实施例中,CB设备100上存储有与该CB设备100连接的各个PE设备200的转发能力信息,该转发能力信息包括PE设备200支持的动作类型、匹配字段。其中,动作类型可以是,但不限于,丢弃、统计、修改VLAN、重定向等;匹配字段可以是,但不限于,IP(InternetProtocol)地址、VXLAN(Virtual Extensible Local Area Network)标识、隧道(Tunnel)内部的IP地址等。对应地,所述新配置的转发表项的转发能力可以是该新配置的转发表项中包括的动作类型、匹配字段等。
实施时,可以判断目标PE设备的转发能力信息中是否包括所述新配置的转发表项中的各个动作类型、匹配字段,若包括,则判定目标PE设备具备新配置的转发表项的转发能力,若不包括,则判断目标PE设备不具备新配置的转发表项的转发能力。
在本实施例中,CB设备100可以通过如下步骤获取PE设备200的转发能力信息,即本实施例提供的表项下发方法还可以包括如下步骤:
当任一PE设备200与CB设备100连通时,该CB设备100获取该PE设备200的转发能力信息并存储。
其中,PE设备200与CB设备100连通,可以是PE设备200与CB设备100的级联口之间的链路建立成功。
在基于802.1BR协议的堆叠系统10中,通常是通过Netconf、Openflow等协议来实现CB设备100对PE设备200的管理。在Netconf协议、Openflow协议中均规定有用于在两个设备之间通信的接口,在本实施例中,可以对该接口进行扩展,增加用于查询和获取转发能力信息的命令字,从而使CB设备100可以通过该命令字获取PE设备200的转发能力信息。
在本实施例中,针对每个PE设备200,在获取到该PE设备200的转发能力信息之后,可以将该转发能力信息与该PE设备200的标识信息关联后存储,例如,可以以该PE设备200的设备标识为文件名建立一个文件,并将该PE设备200的转发能力信息存储到该文件中。如此,可以根据目标PE设备的设备标识查找目标PE设备的转发能力信息。
在本实施例中,可以根据用户配置的转发表项确定该转发表项对应的目标PE设备。
例如,当新配置的转发表项为ACL表项时,一种具体实施方式中,该ACL表项可以是针对PE设备200的某个端口(记为目标端口)设置的ACL表项,在此情况下,该目标端口所在的PE设备200即为上述的目标PE设备;再一种具体实施方式中,该ACL表项还可以是针对堆叠系统10中的所有PE设备200配置的ACL表项,在此情形中,堆叠系统10中的所有PE设备200均为目标PE设备,在实施时,CB设备100会分别查找堆叠系统10中每个PE设备200的转发能力信息,再分别针对每个PE设备200,判断该PE设备200是否具有所述新配置的转发表项的转发能力,并根据判断结果执行后续步骤。
又如,当新配置的转发表项为MAC地址表项时,目标PE设备可以是该MAC地址表项中的出端口所在的PE设备200。
步骤S430,CB设备100获取目标PE设备中当前空闲的硬件转发资源的数量,判断目标PE设备是否有足够的硬件转发资源存储所述新配置的转发表项。若是,则执行步骤S450,若否,则执行步骤S440。
其中,硬件转发资源用于存储相应的转发表项,具体可以包括用于存储ACL表项的ACL表项资源、用于存储MAC地址表项的MAC地址表项资源、用于存储路由表项的路由资源等中的至少一个。
在实施过程中,当目标PE设备具备所述新配置的转发表项的转发能力时,CB设备100可以通过上述的Netconf协议、Openflow协议等中规定的接口与目标PE设备通信,进而获取目标PE设备中当前空闲的硬件转发资源的数量。详细地,在PE设备200中,每一条转发表项资源具有相应的标志位,通过读取该标志位可以确定该转发表项资源是否被占有,最终得到的未被占有的转发表项资源的数量即为PE设备200中当前空闲的硬件转发资源的数量。
在本实施例中,所述硬件转发资源的类别与所述新配置的转发表项的类别相对应。例如,当所述新配置的转发表项为ACL表项时,CB设备100可以获取目标PE设备中当前空闲的ACL表项资源的数量。又如,当所述新配置的转发表项为MAC地址表项时,CB设备100可以获取目标PE设备中当前空闲的MAC地址表项资源的数量。
步骤S440,CB设备100保存所述新配置的转发表项。
在本实施例中,当目标PE设备不具备所述新配置的转发表项的转发能力时,或是当目标PE设备没有足够的硬件转发资源来存储所述新配置的转发表项时,均可以将所述新配置的转发表项保存在CB设备100上,当与该新配置的转发表项相匹配的报文达到堆叠系统10时,由CB设备100对该报文进行查表转发。
步骤S450,CB设备100将所述新配置的转发表项下发给目标PE设备。
实施时,当目标PE设备有足够的硬件转发资源来存储所述新配置的转发表项时,CB设备100将该新配置的转发表项下发到目标PE设备。如此,当与该新配置的转发表项匹配的报文到达目标PE设备时,目标PE设备可以直接根据该报文进行查表,而不必使用CB设备100上的硬件转发资源。
通过上述过程,在下发该新配置的转发表项之前,对目标PE设备所支持的转发能力、是否有空闲的硬件转发资源进行了相应判断,能够确保新配置的转发表项被下发到目标PE设备之后被成功配置,不必担心下发给PE设备200的转发表项超过了PE设备200的容量或是不被PE设备200支持,从而能够充分地利用CB设备和PE设备的硬件转发资源。
在此需要说明的是,在现有应用中,存在将MAC地址表项同时下发在CB设备和PE设备的情况,然而,根据上述描述可以得知,CB设备下发到PE设备的MAC地址表项可能会出现配置失败的情况,通常是人为地限制下发到PE设备的MAC地址表项的类型和数量。如此,一方面会导致对PE设备中的MAC地址表项资源利用不充分,另一方面,仍旧可能出现下发在PE设备的表项配置失败的情况。而通过本申请实施例提供的表项下发方法可以在充分利用CB设备和PE设备的MAC地址表项资源的情况下,避免出现前述的配置失败的情况。
步骤S460,目标PE设备接收并保存所述新配置的转发表项。
目标PE设备将接收到的所述新配置的转发表项保存在本设备上。
在实际应用中,有一些转发表项并非是在配置时被下发,这些转发表项最初仅存储在CB设备100上,在使用过程中可以视情况判断是否需要下发到PE设备200。针对这些转发表项,可以通过图5所示步骤下发。
步骤S510,CB设备100在接收到任一PE设备200发送的不包括出端口信息的报文时,在存储的转发表项中查找与该报文匹配的转发表项。
步骤S520,通过查找该PE设备200的转发能力信息判断该PE设备200是否具备查找到的转发表项的转发能力信息。若是,则执行步骤S530;若否,则执行步骤S540。
步骤S530,CB设备100获取该PE设备200当前空闲的硬件转发资源的数量,判断该PE设备200是否有足够的硬件转发资源存储该转发表项。若是,则执行步骤S550;若否,则执行步骤S540。
步骤S540,CB设备100保存该转发表项。
步骤S550,CB设备100将该转发表项下发到该PE设备200。
步骤S560,该PE设备200接收并保存该转发表项。
在本实施例中,CB设备100接收到报文的情况分两种:
第一,当任一PE设备200接收到报文时,在存储的转发表项中查找到与该报文匹配的转发表项,若根据该转发表项确定该报文的出端口不在本设备,则在该报文中封装802.1BR协议报文标签头E-TAG,并将出端口的标识设置在该E-TAG中,其中,出端口的标识可以是该出端口的E-channel Identifier(E-CID),即E-TAG中用于表示一个数据通道的编号值。在堆叠系统10中,PE设备200会为其每个端口分配相应的E-CID。然后,再将包括出端口的标识的报文上送给CB设备100,即在此情形下上送给CB设备100的报文中包括出端口信息。
第二,若在第一种情形中,该PE设备200未能查找到与该报文匹配的转发表项,则该PE设备200在该报文中设置所述E-TAG,并将该报文在本设备的入端口的E-CID设置在该E-TAG中,再将包入端口的标识的报文上送给CB设备100。即,此情况下上送给CB设备100的报文中不包括出端口信息。
基于上述分析,当CB设备100接收到任一PE设备200发送的不包括出端口信息的报文时,表示该PE设备200上没有存储与该报文匹配的转发表项。若此时CB设备100在本设备上查找到与该报文匹配的转发表项,则可以通过上述的步骤S510-步骤S540对查找到的转发表项进行下发。
在本实施例中,可以在不同的情况下执行上述的步骤S510-步骤S550。
在一种具体实施方式中,用户配置的MAC地址表项,其对应的目标PE设备为该MAC地址表项中的出端口所在PE设备200。为便于描述,在此将该出端口所在PE设备200约定为第一PE设备。则,当第一PE设备具备该MAC地址表项的转发能力,且有足够的硬件转发资源来存储该MAC地址表项时,该MAC地址表项也只会被下发到第一PE设备,而不会被下发给其他PE设备200。此时,若是与该MAC地址表项匹配的报文被其他PE设备200接收到,其他PE设备200将无法查找到与该报文匹配的MAC地址表项,从而会将不包括出端口信息的报文上述给CB设备100,此时,CB设备100可以通过上述的步骤S510-步骤S540对该MAC地址表项进行下发。
在又一种具体实施方式中,在实施过程中,CB设备100可能会通过MAC地址自学习机制学习到MAC地址表项,在没有将学习到的MAC地址表项下发给PE设备200之前,若与所述学习到的MAC地址表项匹配的报文到达任一PE设备200,该PE设备200将无法查找到与该报文匹配的MAC地址表项,从而会将不包括出端口信息的报文上述给CB设备100,以使CB设备100可以通过步骤S510-步骤S540对该MAC地址表项进行下发。
在又一种具体实施方式中,在实施时,当转发表项被首次配置时,存在因其对应的目标PE设备没有足够的硬件转发资源,而导致该转发表项未能被下发到该目标PE设备的情况,而后续使用中该目标PE设备中可能会出现足够的硬件转发资源。为便于描述,在此将该转发表项对应的目标PE设备约定为第二PE设备。其中,当与该转发表项匹配的报文被接收到时,第二PE设备将无法查找到匹配的转发表项,从而会将不包括出端口信息的报文上述给CB设备100,由CB设备100通过步骤S510-步骤S540对该转发表项进行下发。可选地,该转发表项可以是ACL表项、MAC地址表项、路由表项、openflow表项等中的任意一种。
通过上述过程,在CB设备100向任意PE设备200下发转发表项之前,对该PE设备200是否具备待下发的转发表项的转发能力、该PE设备200是否有足够的硬件转发资源存储待下发的转发表项进行预先判断,从而确保下发到该PE设备200的转发表项能够成功配置,并由此实现对PE设备200的硬件转发资源的最大化利用。
下面结合图6给出一些示例,以对上述的表项下发方法做进一步阐述。首先,对图6所示的堆叠系统10做简要介绍,该堆叠系统10中包括CB设备100、PE设备201和PE设备202,PE设备201和PE设备202分别与CB设备100连接,CB设备100用于管理PE设备201和PE设备202。
其中,CB设备100包括级联口c和级联口b,PE设备201包括上行口d、下行口e和下行口f,PE设备202包括上行a和下行口g。具体地,CB设备100通过级联口c与PE设备201的上行口d相连,通过级联口b与PE设备202的上行口a相连。在CB设备100、PE设备201、PE设备202上均实现了基于Netconf协议的通信接口,CB设备100通过该通信接口可以与PE设备201和PE设备202通信,该通信接口中扩展有用于查询和获取转发能力信息的命令字。
当PE设备201和PE设备202中的任意一个与CB设备100连通时,CB设备100会通过所述通信接口中的所述命令字获取该PE设备的转发能力信息,并将获取到的转发能力信息与该PE设备关联并保存。
下面以转发表项是ACL表项为例,给出第一个具体示例:
假设用户在CB设备100上针对端口e配置了ACL表项X1,ACL表项X1中规定了匹配时重定向的动作。则,ACL表项X1为所述新配置的转发表项,端口e所在PE设备201即为ACL表项X1对应的目标PE设备。具体可通过如下步骤实现ACL表项X1的下发:
第一,当CB设备100获得ACL表项X1时,在本设备上查找目标PE设备(PE设备201)的转发能力信息,并检测查找到的PE设备201的转发能力信息中是否包括ACL表项X1中的相应字段(如,动作类型、匹配字段等),若包括,则确定PE设备201具备ACL表项X1的转发能力,否则确定PE设备201不具备ACL表项X1的转发能力。
第二,当PE设备201具备ACL表项X1的转发能力时,CB设备100通过所述通信接口获取PE设备201中当前空闲的ACL表项资源的数量,并根据该数量判断PE设备201中当前空闲的ACL表项资源是否足够存储该ACL表项X1。如果是,则将ACL表项X1下发给PE设备201,如果不是,则将ACL表项X1保存在CB设备100上。
第三,当PE设备201不具备ACL表项X1的转发能力时,CB设备100将ACL表项X1保存在本设备上。详细地,ACL表项X1可以配置在CB设备100的端口c上,即与PE设备201对应的级联口上。
此外,当用户在CB设备100上针对图6所示堆叠系统10中的全部PE设备配置了ACL表项X2时,PE设备201和PE设备202均为ACL表项X2对应的目标PE设备,在此情形下,CB设备会分别以PE设备201和PE设备202为目标PE设备执行上述的第一步、第二步和第三步。
在实施过程中,若CB设备100上存在针对端口g配置的ACL表项X3,但在ACL表项X3刚被配置时,端口g所在的PE设备202上已经没有足够的ACL表项资源存储ACL表项X3,则ACL表项X3不会被下发至PE设备202。而在后续过程中,PE设备202可能因为某些原因(如,某些ACL表项被删除)具有足够的空闲ACL表项资源来存储ACL表项X3。
此时,若PE设备202通过端口g接收到了能够与ACL表项X3匹配的报文M1,PE设备202因无法查找到与报文M1匹配的ACL表项,会将不包括出端口信息的报文M1上送给CB设备100。而CB设备100可以根据报文M1查找到匹配的ACL表项X3。当查找到ACL表项X3之后,CB设备可以通过查找PE设备202的转发能力信息判断PE设备202是否具备ACL表项X3的转发能力。若否,将ACL表项X3保存在CB设备100上;若是,CB设备100进一步通过所述通信接口获取PE设备202中当前空闲的ACL表项资源的数量。若PE设备202中当前空闲的ACL表项资源足够存储ACL表项X3,则CB设备100将ACL表项X3下发给PE设备202。若PE设备202中当前空闲的ACL表项资源不够存储ACL表项X2,CB设备100将ACL表项X3保存在本设备上。
下面以MAC地址表项为例,给出第二个具体示例:
假设用户在CB设备100上配置了MAC地址表项Y1,其中,MAC地址表项Y1中包括出端口f。因此,出端口f所在的PE设备201即为MAC地址表项Y1对应的目标PE设备。
当CB设备100获得MAC地址表项Y1时,会在本设备上查找PE设备201的转发能力信息,并通过查找到的转发能力信息判断PE设备201是否具备MAC地址转发表项的转发能力;若否,可以将MAC地址表项Y1保存在本设备上;若是,可以获取PE设备201中当前空闲的MAC地址表项资源的数量,并由此判断PE设备201当前是否有足够的MAC地址表项资源存储MAC地址表项Y1;若是,可以将MAC地址表项Y1下发到PE设备201,否则可以将MAC地址表项Y1保存在本设备上。
在实施过程中,若PE设备202通过端口g接收到了与MAC地址表项Y1匹配的报文M2,则PE设备202因无法查找到与报文M2匹配的MAC地址表项,将不包括出端口信息的报文M2上送给CB设备100。CB设备100查找到与报文M2匹配的MAC地址表项Y1,并判断PE设备202是否具备MAC地址表项Y1的转发能力,若是,则进一步判断PE设备202是否有足够的硬件转发资源存储MAC地址表项Y1,若是,则将MAC地址表项Y1下发到PE设备202。
此外,若CB设备100学习到MAC地址表项Y2,在未将MAC地址表项Y2下发给PE设备201和PE设备202之前,若与MAC地址表项Y2匹配的报文M3被发送到PE设备201和PE设备202中的任意一个接收到,则该PE设备因无法查找到与报文M3匹配的MAC地址表项,将不包括出端口信息的报文M3上送给CB设备100。CB设备100查找到与报文M3匹配的MAC地址表项Y2,并判断该PE设备是否具备MAC地址表项Y2的转发能力;若是,则进一步判断PE设备201是否有足够的硬件转发资源来存储MAC地址表项Y2;若是,则将MAC地址表项Y2下发到该PE设备。
请参阅图7,是本申请实施例提供的一种表项下发装置110的功能模块框图,该表项下发装置110应用于图3所示的CB设备100。
在本实施例中,表项下发装置110包括第一判断模块111、第二判断模块112和表项下发模块113。
其中,第一判断模块111用于在CB设备100获得新配置的转发表项时,查找与该新配置的转发表项对应的目标PE设备的转发能力信息,判断该目标PE设备是否具备所述新配置的转发表项的转发能力。
在本实施例中,关于第一判断模块111的描述具体可以参考上述内容中对图4所示步骤S410的详细描述,即步骤S410可以由第一判断模块111执行。
第二判断模块112用于当目标PE设备具备所述新配置的转发表项的转发能力时,获取目标PE设备中当前空闲的硬件转发资源的数量,判断所述目标PE设备是否有足够的硬件转发资源存储所述新配置的转发表项。
在本实施例中,关于第二判断模块112的描述具体可参考对图4所示步骤S420的详细描述,即步骤S420可以由第二判断模块112执行。
表项下发模块113用于当目标PE设备有足够的硬件转发资源存储所述新配置的转发表项时,将所述新配置的转发表项下发给目标PE设备。
可选地,表项下发模块113还可以用于当目标PE设备不具备所述新配置的转发表项的转发能力,或者当目标PE设备没有足够的硬件转发资源存储所述新配置的转发表项时,在CB设备100上保存所述新配置的转发表项。
在本实施例中,关于表项下发模块113的描述具体可参考对图4所示步骤S430和步骤S440的详细描述,即步骤S430和步骤S450可以由表项下发模块113执行。
可选地,第一判断模块111还用于在接收到任一PE设备200发送的不包括出端口信息的报文时,在存储的转发表项中查找与该报文匹配的转发表项,并通过查找该PE设备200的转发能力信息判断该PE设备200是否具备查找到的转发表项的转发能力。
对应地,第二判断模块112还可以用于当该PE设备200具备查找到的转发表项的转发能力时,获取该PE设备200当前空闲的硬件转发资源的数量,判断该PE设备200是否有足够的硬件转发资源存储该转发表项。对应地,表项下发模块113还可以用于当该PE设备200有足够的硬件转发资源存储该转发表项时,将该转发表项下发到该PE设备200进行存储。
综上所述,本申请实施例提供的一种堆叠系统及其表项下发方法、装置,CB设备在将新配置的转发表项下发给相应的目标PE设备之前,判断该目标PE设备是否具备新配置的转发表项的转发能力,若具备,则判断该目标PE设备是否有足够的硬件转发资源存储新配置的转发表项,若有,再将新配置的转发表项下发给目标PE设备存储。如此,可以充分地利用PE设备中的硬件转发资源,以扩大整个堆叠系统的转发规格。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种堆叠系统,其特征在于,包括CB设备和与该CB设备连接的至少一个PE设备,该CB设备用于管理所述PE设备,所述CB设备中存储有各PE设备的转发能力信息,所述转发能力信息包括PE设备对报文支持的动作类型、匹配字段;
所述CB设备在获得新配置的转发表项时,查找与该新配置的转发表项对应的目标PE设备的转发能力信息,判断该目标PE设备是否具备所述新配置的转发表项的转发能力;
当所述目标PE设备具备所述新配置的转发表项的转发能力时,所述CB设备获取所述目标PE设备中当前空闲的硬件转发资源的数量,判断所述目标PE设备是否有足够的硬件转发资源存储所述新配置的转发表项;
当所述目标PE设备有足够的硬件转发资源存储所述新配置的转发表项时,所述CB设备将所述新配置的转发表项下发给所述目标PE设备;
所述目标PE设备接收并保存所述新配置的转发表项。
2.根据权利要求1所述的堆叠系统,其特征在于,
在所述目标PE设备不具备所述新配置的转发表项的转发能力,或者在所述目标PE设备没有足够的硬件转发资源存储所述新配置的转发表项时,所述CB设备保存所述新配置的转发表项。
3.根据权利要求1或2所述的堆叠系统,其特征在于,
当任一PE设备与所述CB设备连通时,所述CB设备获取该PE设备的转发能力信息并存储。
4.根据权利要求1或2所述的堆叠系统,其特征在于,
所述CB设备在接收到任一PE设备发送的不包括出端口信息的报文时,在存储的转发表项中查找与该报文匹配的转发表项,并通过查找该PE设备的转发能力信息判断该PE设备是否具备查找到的转发表项的转发能力;
当该PE设备具备查找到的转发表项的转发能力时,所述CB设备获取该PE设备当前空闲的硬件转发资源的数量,判断该PE设备是否有足够的硬件转发资源存储该转发表项;
当该PE设备有足够的硬件转发资源存储该转发表项,所述CB设备将该转发表项下发到该PE设备;
该PE设备接收并保存该转发表项。
5.一种表项下发方法,其特征在于,应用于堆叠系统,该堆叠系统包括CB设备和与该CB设备连接的至少一个PE设备,该CB设备用于管理所述PE设备,所述CB设备中存储有连接的各PE设备的转发能力信息,所述转发能力信息包括PE设备对报文支持的动作类型、匹配字段,所述方法包括:
所述CB设备在获得新配置的转发表项时,查找与该新配置的转发表项对应的目标PE设备的转发能力信息,判断该目标PE设备是否具备所述新配置的转发表项的转发能力;
当所述目标PE设备具备所述新配置的转发表项的转发能力时,所述CB设备获取所述目标PE设备中当前空闲的硬件转发资源的数量,判断所述目标PE设备是否有足够的硬件转发资源存储所述新配置的转发表项;
当所述目标PE设备有足够的硬件转发资源存储所述新配置的转发表项时,所述CB设备将所述新配置的转发表项下发给所述目标PE设备;
所述目标PE设备接收并保存所述新配置的转发表项。
6.根据权利要求5所述的表项下发方法,其特征在于,所述方法还包括:
当所述目标PE设备不具备所述新配置的转发表项的转发能力,或者当所述目标PE设备没有足够的硬件转发资源存储所述新配置的转发表项时,所述CB设备保存所述新配置的转发表项。
7.根据权利要求5或6所述的表项下发方法,其特征在于,所述方法还包括:
所述CB设备在接收到任一PE设备发送的不包括预设出端口信息的报文时,在存储的转发表项中查找与该报文匹配的转发表项,并通过查找该PE设备的转发能力信息判断该PE设备是否具备查找到的转发表项的转发能力;
若该PE设备具备查找到的转发表项的转发能力,所述CB设备获取该PE设备当前空闲的硬件转发资源的数量,判断该PE设备是否有足够的硬件转发资源存储该转发表项;
若该PE设备有足够的硬件转发资源存储该转发表项,所述CB设备将该转发表项下发到该PE设备;
该PE设备接收并保存该转发表项。
8.一种表项下发装置,其特征在于,应用于与至少一个PE设备连接的CB设备,该CB设备用于管理所述PE设备,所述CB设备中存储有各PE设备的转发能力信息,所述转发能力信息包括PE设备对报文支持的动作类型、匹配字段,所述表项下发装置包括:
第一判断模块,用于在所述CB设备获得新配置的转发表项时,查找与该新配置的转发表项对应的目标PE设备的转发能力信息,判断该目标PE设备是否具备所述新配置的转发表项的转发能力;
第二判断模块,用于当所述目标PE设备具备所述新配置的转发表项的转发能力时,获取所述目标PE设备中当前空闲的硬件转发资源的数量,判断所述目标PE设备是否有足够的硬件转发资源存储所述新配置的转发表项;
表项下发模块,用于当所述目标PE设备有足够的硬件转发资源存储所述新配置的转发表项时,将所述新配置的转发表项下发给所述目标PE设备进行存储。
9.根据权利要求8所述的表项下发装置,其特征在于,
所述表项下发模块,还用于当所述目标PE设备不具备所述新配置的转发表项的转发能力,或者当所述目标PE设备没有足够的硬件转发资源存储所述新配置的转发表项时,在所述CB设备上保存所述新配置的转发表项。
10.根据权利要求8或9所述的表项下发装置,其特征在于,
所述第一判断模块,还用于在接收到任一PE设备发送的不包括出端口信息的报文时,在存储的转发表项中查找与该报文匹配的转发表项,并通过查找该PE设备的转发能力信息判断该PE设备是否具备查找到的转发表项的转发能力;
所述第二判断模块,还用于当该PE设备具备查找到的转发表项的转发能力时,获取该PE设备当前空闲的硬件转发资源的数量,判断该PE设备是否有足够的硬件转发资源存储该转发表项;
所述表项下发模块,还用于当该PE设备有足够的硬件转发资源存储该转发表项时,将该转发表项下发到该PE设备进行存储。
CN201810359198.0A 2018-04-20 2018-04-20 堆叠系统及其表项下发方法、装置 Active CN108650180B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810359198.0A CN108650180B (zh) 2018-04-20 2018-04-20 堆叠系统及其表项下发方法、装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810359198.0A CN108650180B (zh) 2018-04-20 2018-04-20 堆叠系统及其表项下发方法、装置

Publications (2)

Publication Number Publication Date
CN108650180A CN108650180A (zh) 2018-10-12
CN108650180B true CN108650180B (zh) 2021-08-06

Family

ID=63746708

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810359198.0A Active CN108650180B (zh) 2018-04-20 2018-04-20 堆叠系统及其表项下发方法、装置

Country Status (1)

Country Link
CN (1) CN108650180B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111131045B (zh) * 2019-12-04 2022-04-26 杭州迪普科技股份有限公司 报文转发方法和网络设备
CN113381937B (zh) * 2021-06-09 2022-09-13 烽火通信科技股份有限公司 一种信息状态上报方法和网络设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104702438A (zh) * 2015-03-13 2015-06-10 杭州华三通信技术有限公司 Pe设备管理方法以及装置
CN105721312A (zh) * 2016-01-14 2016-06-29 盛科网络(苏州)有限公司 一种网络堆叠设备中实现路由分离的芯片实现方法及装置

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104702438A (zh) * 2015-03-13 2015-06-10 杭州华三通信技术有限公司 Pe设备管理方法以及装置
CN105721312A (zh) * 2016-01-14 2016-06-29 盛科网络(苏州)有限公司 一种网络堆叠设备中实现路由分离的芯片实现方法及装置

Also Published As

Publication number Publication date
CN108650180A (zh) 2018-10-12

Similar Documents

Publication Publication Date Title
US10659347B2 (en) Integrated heterogeneous software-defined network
US10063470B2 (en) Data center network system based on software-defined network and packet forwarding method, address resolution method, routing controller thereof
US9444743B2 (en) Network system, switch and connected terminal detection method
JP5621778B2 (ja) コンテンツベーススイッチシステム、及びコンテンツベーススイッチ方法
US11005752B2 (en) Packet transmission
EP2820809B1 (en) Dynamic service insertion in a fabric switch
US10277464B2 (en) Client auto-configuration in a multi-switch link aggregation
JP5433332B2 (ja) ネットワーク中継装置、その制御方法およびコンピュータプログラム
US9124526B2 (en) Switch system, and data forwarding method
CN105830406A (zh) 用于支持软件定义网络中的灵活查找关键字的方法、设备和系统
CN103477588A (zh) 刀片服务器中刀片间网络业务的分类和管理方法和系统
WO2021017930A1 (zh) 报文转发
CN108650180B (zh) 堆叠系统及其表项下发方法、装置
CN111132170A (zh) 虚拟防火墙的通信方法和装置、虚拟防火墙及拓扑结构
US20220345400A1 (en) Packet sending method and apparatus, and storage medium
US9699117B2 (en) Integrated fibre channel support in an ethernet fabric switch
US9479438B2 (en) Link aggregation based on virtual interfaces of VLANs
EP3691210B1 (en) Flexible ethernet message forwarding method and apparatus
US8675669B2 (en) Policy homomorphic network extension
CN113328922A (zh) 一种跨多局域网的连通方法及装置
WO2020147784A1 (zh) 报文解封装方法及装置、报文封装方法及装置、电子装置和存储介质
CN108418709B (zh) 端口聚合方法及装置
WO2015131617A1 (zh) 流表处理方法、装置、开放流控制器及开放流交换机
JP4587962B2 (ja) Mac装置とそれを用いたブリッジ装置およびプログラム
CN113904980B (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