交换机结构以及入口流量处理方法

文档序号:7801922阅读:497来源:国知局
交换机结构以及入口流量处理方法
【专利摘要】本发明提供一种交换机结构及入口流量处理方法。交换机结构包含存储装置、多个存储单元、多个提取单元、负载调度器及负载汇编器。其中每一存储单元对存储装置执行写入操作;每一提取单元对存储装置执行读取操作;负载调度器调度多个存储单元的入口流量,其中负载调度器和每一存储单元之间的数据传输速率低于入口流量的数据传输速率;负载汇编器用来收集多个提取单元的输出以产生出口流量,其中负载汇编器和每一提取单元之间的数据传输速率低于出口流量的数据传输速率。以上所述的交换机结构及入口流量处理方法能够使用降低的时钟速度来处理网络装置的流量,易达到芯片时序的需求及提高制造产量。
【专利说明】交换机结构以及入口流量处理方法 【【技术领域】】
[0001] 本发明揭露的实施例有关于封包的转发(forwarding),尤指一种网络装置的交换 机结构(switching fabric)以及相关方法,其中该交换机结构使用多个操作在降低的时钟 速率的存储单元以及提取单元。 【【背景技术】】
[0002] 网络交换机是一种可链接不同电子装置的电脑网络装置。举例来说,网络交换机 可以接收由相连的第一电子装置所产生的输入封包,并且对所接收到的封包进行修改/不 进行修改,并且仅传送给该封包所指定的第二电子装置。一般来说,该网络交换机具有封包 缓冲器以对从入端口所接收到的封包的封包数据进行缓冲,并将储存在该封包缓冲器中的 该多个封包转发至出端口。当每一入端口以及出端口的线速率(line rate)过高(例如 lOGbps或是lOOGbps),且入端口以及出端口数量相当大时(例如64或是128),对该封包缓 冲器进行存取需要操作在非常高的时钟速率,从而需要大量的时间来设计芯片的时钟,且 可能影响制造产量(manufacture yield)。 【
【发明内容】

[0003] 有鉴于此,本发明特提供以下技术方案:
[0004] 本发明实施例提供一种交换机结构,用于网络装置,包含有存储装置、多个存储单 元、多个提取单元、负载调度器及负载汇编器。其中每一存储单元用来针对存储装置执行写 入操作;每一提取单元用来针对存储装置执行读取操作;负载调度器用来调度多个存储单 元的入口流量,其中负载调度器和每一存储单元之间的数据传输速率低于入口流量的数据 传输速率;以及负载汇编器用来收集多个提取单元的输出以产生出口流量,其中负载汇编 器和每一提取单元之间的数据传输速率低于出口流量的数据传输速率。
[0005] 本发明实施例另提供一种入口流量处理方法,用于处理网络装置的入口流量,包 含有调度入口流量至多个存储单元,其中每一存储单元的输入数据传输速率低于入口流量 的数据传输速率;使用每一存储单元来针对存储装置执行写入操作;使用多个提取单元的 每一个来针对存储装置执行读取操作;以及结合多个提取单元的输出以产生出口流量,其 中每一提取单元的输出数据传输速率低于出口流量的数据传输速率。
[0006] 以上所述的交换机结构及入口流量处理方法能够使用降低的时钟速度来处理网 络装置的流量,易达到芯片时序的需求及提高制造产量。 【【专利附图】

【附图说明】】
[0007] 图1为本发明的网络装置的实施例。
[0008] 图2为本发明的数据平面交换机结构的第一实施例。
[0009] 图3为本发明的数据平面交换机结构的第二实施例。
[0010] 图4为本发明的数据平面交换机结构的第三实施例。
[0011] 图5为本发明的数据平面交换机结构的第四实施例。
[0012] 图6为本发明的控制平面交换机结构的第一实施例。
[0013] 图7为本发明的处理网络装置的入口流量的方法的实施例的流程图。 【【具体实施方式】】
[0014] 在说明书及权利要求书当中使用了某些词汇来指称特定的组件。所属领域中的 技术人员应可理解,制造商可能会用不同的名词来称呼同样的组件。本说明书及权利要求 书并不以名称的差异来作为区分组件的方式,而是以组件在功能上的差异来作为区分的基 准。在通篇说明书及权利要求书当中所提及的「包含」是开放式的用语,故应解释成「包含 但不限定于」。另外,「耦接」一词在此包含任何直接及间接的电气连接手段。因此,若文中 描述第一装置耦接于第二装置,则代表第一装置可直接电气连接于第二装置,或透过其它 装置或连接手段间接地电气连接至第二装置。
[0015] 图1为本发明的网络装置的实施例。举例来说,但不限于此,网络装置100可以是 网络交换机。网络装置100包含有多个入端口101_1、101_2、"*101_1多个出端口102_1、 102_2、…102_N,数据平面交换机结构103,控制器104以及控制平面交换机结构105,其 中数据平面交换机结构103具有封包缓冲器106,控制平面交换机结构105具有队列模块 (queue module) 107。封包缓冲器106用来储存由入端口 101_1、101_2、... 101_ΝΚ接收的 封包的封包数据。假设每一入端口101_l、101_2、···101_N的线速率(数据传输速率(data rate))是R,则数据平面交换机结构103的入口流量(traffic)(即输入封包的封包数据的 数据流)的等效线速率(数据传输速率)为NXR。举例来说,N可以是64或是128,R可以 是lOGbps或是lOOGbps。如此一来,数据平面交换机结构103的多输入接口操作在第一时 钟速率CLl。由于使用了多重数据总线,每一数据总线的时钟可以不需要操作在高速时钟 速率。
[0016] 在此实施例中,数据平面交换机结构103是基于所提出的交换机结构架构来设计 的,其中所提出的交换机结构架构可允许入口流量在第二时钟速率clk 2下进行封包缓冲器 写入,其中CLI并不一定高于CLK2。由图1可以得知,由于每一出端口 102_1?102_N的 线速率(数据传输速率)亦为R,因此数据平面交换机结构103的多重输出接口也操作在该 第一时钟速率CLl。相比于传统的数据平面交换机结构设计其内部电路元件(例如单一存 储单元、单一提取单元以及封包缓冲器)操作在较高时钟速率,所提出的数据平面交换机 结构103的内部电路元件(例如多重存储单元、多重提取单元及/或一封包缓冲器)被允 许操作在较低的时钟速率。
[0017] 控制器104可具有多个控制电路来控制网络装置100的封包切换功能。举例来 说,但不限于此,控制器104可具有入队(en-queuing)电路、调度器(scheduler)以及出列 (de-queuing)电路。该入队电路用来将入端口 101_1?101_N所接收到的封包的控制信 息(例如每一接收封包的封包识别符)加入至队列模块107。该出列电路用来将封包的控 制信息从队列模块107中取出,其中该出列电路的输出会控制封包缓冲器106以及出端口 102_1?102_N之间的实际封包数据流。
[0018] 由图1可以看出,控制平面交换机结构105的多输入接口操作在第三时钟速率 clk3。由于使用了多重数据总线,每一数据总线的时钟可以不需要操作在高速时钟速率。具 体来说,该入口流量(即输入封包的封包数据的数据流)的等效线速率(数据传输速率) 为NXR。由于控制平面交换机结构105是基于所提出的另一交换机结构架构来设计的,故 可允许在第四时钟速率CLK4T进行转发入队(forwarding en-queuing)事件,其中0^(3并 不一定商于CLK4。应注意的是,视实际设计考虑,CLK 3可以相等或是不等于CLK^。由图1可 以得知,控制平面交换机结构105的多输入接口也操作在第三时钟速率CLK 3。具体来说,出 口流量(即输出封包的控制信息的数据流)的等效线速率(数据传输速率)为NXR。由于 控制平面交换机结构105是基于所提出的交换机结构架构来设计的,因此可允许在降低的 时钟速率下进行出列事件的操作。
[0019] 由上可知,数据平面交换机结构103能够使用降低的时钟速率来处理网络装置 100的数据平面中的入口流量以及出口流量,而控制平面交换机结构105能够使用降低的 时钟速率来处理网络装置100的控制平面中的入口流量以及出口流量。因此较容易达到芯 片时序的需求以及提高制造产量。在以下的段落中,将针对数据平面交换机结构103以及 控制平面交换机结构105的细节进行更进一步的描述。
[0020] 图2为本发明的数据平面交换机结构的第一实施例的示意图。图1中所示的数据 平面交换机结构103可以利用图2中所示的数据平面交换机结构200来实现。如图2所 示,数据平面交换机结构200包含有负载调度器(dispatcher) 202,多个存储单元204_1、 204_2、…204_K,利用单端口存储器(例如一端口静态随机存取存储器)所实现的存储装置 206,多个提取单元208_1、208_2、...208_1(以及负载汇编器210。在此实施例中,该存储装置 (即单端口存储器206)用作图1所示的封包缓冲器106。每一存储单元204_1、204_2、… 204_Κ用来针对该存储装置(即单端口存储装置206)执行写入操作。每一提取单元208_1、 208_2、"·208_Κ用来针对该存储装置(即单端口存储装置206)执行读取操作。
[0021] 优选地,单端口存储器206可采用封包缓冲库(packet buffer banking)架构。具 体来说,单端口存储器206具有Μ个库,其中Μ是大于1的整数,当任一提取单元208_1? 208J(对该封包缓冲器的库进行存取时,由于采用了封包缓冲库的机制,存储单元204_1? 204J(之一便能够对该封包缓冲器的其它不同库进行存取。换句话说,可以使用封包缓冲库 来同时存取(读/写)不同的库以提升封包交换的吞吐率。因此,存储单元204_1?204_ Κ以及提取单元208_1?208J(可以选择单端口存储器206的不同库来存取封包数据,好 让存储单元204_1?204_Κ以及提取单元208_1?208J(得以同时读/写缓冲器的记忆单 J Li 〇
[0022] 在此实施例中,使用单端口存储器206来实现该封包缓冲器。由于单端口存储器 (1RW)具有单一组地址以及控制,所以一次只能进行单一存取(读/写)。换句话说,单端 口存储器206仅具有一个读取端口。由于封包交换吞吐率受制于提取单元208_1?208_K 的读取操作,同时只能使用一个读取端口的单端口存储器206将在全速时钟速率(即单端 口存储器206所支持的最大时钟速率)FS下进行操作,以达到最大的封包交换吞吐率。
[0023] 负载调度器202用来接收入口流量(即输入封包的封包数据的数据流)PKTDATA_ I,并且将入口流量PKT data_I调度至存储单元204_1?204_K。在此实施例中,存储单元 204_1?204J(的数目是Κ。因此,当入口流量PKT DATA_I的数据传输速率是NXR时,负载调 度器202和每一存储单元204_1?204J(之间的数据传输速率是4^·。换句话说,负载调 K 度器202和每一存储单元204_1?204_K之间的数据传输速率低于入口流量PKTDATA_I的数 据传输速率。相比于直接以较高数据传输速率NX R来处理入口流量PKTDATA_I,利用较低数 据传输速率
[0024]
【权利要求】
1. 一种交换机结构,用于网络装置,所述交换机结构包含有: 存储装置; 多个存储单元,其中每一存储单元用来针对所述存储装置执行写入操作; 多个提取单元,其中每一提取单元用来针对所述存储装置执行读取操作; 负载调度器,用来调度所述多个存储单元的入口流量,其中所述负载调度器和每一存 储单元之间的数据传输速率低于所述入口流量的数据传输速率;以及 负载汇编器,用来收集所述多个提取单元的输出以产生出口流量,其中所述负载汇编 器和每一提取单元之间的数据传输速率低于所述出口流量的数据传输速率。
2. 根据权利要求1所述的交换机结构,其特征在于,所述交换机结构为数据平面交换 机结构,且所述入口流量以及所述出口流量是封包的封包数据的数据流。
3. 根据权利要求2所述的交换机结构,其特征在于,所述存储装置为封包缓冲器,具有 多个库;以及当所述多个提取单元之一存取所述封包缓冲器的第一库时,所述多个存储单 元之一会存取所述封包缓冲器的第二库,其中所述第二库不同于所述第一库。
4. 根据权利要求2所述的交换机结构,其特征在于,所述存储装置为封包缓冲器,由具 有一个读取端口的单端口存储器所实现,且所述单端口存储器以全速时钟速率操作。
5. 根据权利要求2所述的交换机结构,其特征在于,所述存储装置为封包缓冲器,由具 有一个读取端口的双端口存储器所实现,且所述双端口存储器以全速时钟速率操作。
6. 根据权利要求2所述的交换机结构,其特征在于,所述存储装置为封包缓冲器,由具 有两个读取端口的双重端口存储器所实现,且所述双重端口存储器以时钟速率FS/2操作, 其中FS为所述双重端口存储器的全速时钟速率。
7. 根据权利要求2所述的交换机结构,其特征在于,所述存储装置为封包缓冲器,由具 有η个读取端口的多端口存储器所实现,且所述多端口存储器以时钟速率FS/n操作,其中 FS为所述多端口存储器的全速时钟速率,且η为大于/等于2的整数。
8. 根据权利要求1所述的交换机结构,其特征在于,所述交换机结构为控制平面交换 机结构,且所述入口流量以及所述出口流量为封包的控制信息的数据流。
9. 根据权利要求8所述的交换机结构,其特征在于,所述存储装置包含有: 线矩阵,具有多个输入节点以及多个输出节点,其中所述多个输入节点分别耦接至所 述多个存储单元;以及 多个队列,分别耦接至所述多个输出节点,其中每一队列耦接于所述多个输出节点之 一以及所述多个提取单元之一之间。
10. 根据权利要求9所述的交换机结构,其特征在于,每一队列以具有一个读取端口以 及Κ个写入端口的多端口存储器来实现,且Κ等于所述多个存储单元的数目。
11. 一种入口流量处理方法,用于处理网络装置的入口流量,包含有: 调度所述入口流量至多个存储单元,其中每一存储单元的输入数据传输速率低于所述 入口流量的数据传输速率; 使用每一存储单元来针对存储装置执行写入操作; 使用多个提取单元的每一个来针对所述存储装置执行读取操作;以及 结合所述多个提取单元的输出以产生出口流量,其中每一提取单元的输出数据传输速 率低于所述出口流量的数据传输速率。
12. 根据权利要求11所述的入口流量处理方法,其特征在于,所述方法应用于所述网 络装置的数据平面,且所述入口流量以及所述出口流量为封包的封包数据的数据流。
13. 根据权利要求12所述的入口流量处理方法,其特征在于,所述存储装置为封包缓 冲器,具有多个库;以及当所述多个提取单元之一存取所述封包缓冲器的第一库时,所述多 个存储单元之一存取所述封包缓冲器的第二库,其中所述第二库不同于所述第一库。
14. 根据权利要求12所述的入口流量处理方法,其特征在于,所述存储装置为封包缓 冲器,由具有一个读取端口的单端口存储器所实现,且所述方法另包含有: 设定所述单端口存储器以全速时钟速率操作。
15. 根据权利要求12所述的入口流量处理方法,其特征在于,所述存储装置为封包缓 冲器,由具有一个读取端口的双端口存储器所实现,且所述方法另包含有: 设定所述双端口存储器以全速时钟速率操作。
16. 根据权利要求12所述的入口流量处理方法,其特征在于,所述存储装置为封包缓 冲器,由具有两个读取端口的双重端口存储器所实现,且所述方法另包含有: 设定所述双重端口存储器以时钟速率FS/2操作,其中FS为所述双重端口存储器的全 速时钟速率。
17. 根据权利要求12所述的入口流量处理方法,其特征在于,所述存储装置为封包缓 冲器,由具有η个读取端口的多端口存储器所实现,且所述方法另包含有: 设定所述多端口存储器以时钟速率FS/n操作,其中FS为所述多端口存储器的全速时 钟速率,且η为大于/等于2的整数。
18. 根据权利要求11所述的入口流量处理方法,其特征在于,所述方法应用于所述网 络装置的控制平面,且所述入口流量以及所述出口流量为封包的控制信息的数据流。
19. 根据权利要求18所述的入口流量处理方法,其特征在于,所述存储装置包含有线 矩阵以及多个队列,且所述方法另包含有: 将所述线矩阵的多个输入节点分别耦接至所述多个存储单元;以及 将所述线矩阵的多个输出节点分别耦接至所述多个队列,其中每一队列耦接于所述多 个输出节点之一以及所述多个提取单元之一之间。
20. 根据权利要求19所述的入口流量处理方法,其特征在于,每一队列以具有一个读 取端口以及Κ个写入端口的多端口存储器来实现,且Κ等于所述多个存储单元的数目。
【文档编号】H04L12/933GK104125171SQ201410163188
【公开日】2014年10月29日 申请日期:2014年4月22日 优先权日:2013年4月26日
【发明者】刘永仲, 林瑞哲, 林利莲, 张建雄 申请人:联发科技股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1