多核处理器及流分类控制装置和方法

文档序号:6353523阅读:142来源:国知局
专利名称:多核处理器及流分类控制装置和方法
技术领域
本发明涉及用于多核处理器的流分类技术,特别涉及可加速实现流分类的一种多 核处理器、一种多核处理器的流分类控制装置、以及一种多核处理器的流分类控制方法。
背景技术
多核处理器在转发性能和复杂业务处理方面都有非常良好的表现,因而广泛应用 于数据通信领域。多核处理器在软件架构上一般分为两个平面CP (Control Plane,控制平面)和 DP (Data Plane,数据平面)。其中,CP负责实现各种协议的处理、并向DP下发转发表项等 信息,而DP则依据转发表项等信息来实现报文的转发。为了实现更高的转发行能,DP通常利用多核处理器中的多个数据核并行处理。此 时,为了保证多个数据核的并行处理不会导致报文的乱序,需要对报文进行流分类,属于同 一条流的报文由同一个数据核处理、以实现自然保序,而属于不同流的报文由于没有先后 次序的依赖关系,因而可以分别由不同核处理。现有技术中通常利用处理器内部的PCD(Parse、Classify,and Distribute,解析、 分类、分发)模块来实现,PCD模块通常也可称为流分类模块。图1中示出了 PCD模块实现 流分类的原理,如图1所示,多核处理器的网络接口顺序接收到的报文1 5(图1中以标 记有数字1 5的矩形块表示报文1 幻经过P⑶的流分类处理后,属于流1的报文1和 报文4顺序由数据核1处理、属于流2的报文2由数据核2处理、属于流3的报文3和报文 5则顺序由数据核3处理。上述原理的具体实现请参见图2。在图2中,多核处理器包括系统总线、挂接于系 统总线的核0 核N(N为大于1的正整数)、挂接于系统总线的内存及内存控制器、挂接于 系统总线的缓存管理(Buffer Pool)模块、挂接于系统总线并与缓存管理模块直连的PCD 模块、与P⑶模块直连的网络接口、以及挂接于系统总线的I/O接口。其中,核0负责CP的 处理、而核1 核N则负责DP的处理,即,核1 核N为如前所述的数据核。当网络接口接收到报文之后,网络接口通过与PCD模块之间的直连接口将接收到 的报文发送给与PCD模块,并向PCD模块发送流分类命令;然后,PCD模块针对与网络接口 之间的直连接口所接收到的报文,通过与缓存管理模块之间的直连接口向缓存管理模块在 内存中申请缓存空间;在申请到缓存空间之后,PCD模块再通过系统总线和内存控制器将 报文写入至已在内存中申请到的对应的缓存空间、并在PCD模块内部缓存中存放报文的 头;此后,PCD模块再对其内部缓存中的报文的头进行解析,从而确定报文所属的流;在确 定报文所属的流之后,PCD模块即可将对应的缓存空间的地址、以及报文长度提供给专用于 处理报文所属流的数据核,以便于每个数据核均能够从对应的缓存空间顺序获取到属于该 数据核所对应的流的连续报文。如上可见,对于网络接口接收到的报文,多核处理器能够利用P⑶模块和缓存管 理模块实现流分类,而由于PCD模块和缓存管理模块均属于多核处理器内部的独立的硬件模块,因而能够实现流分类的硬件加速。此外,如图3所示,在实际应用中,I/O接口还可以外接有外扩网络接口(图3中 除了外扩网络接口之外的其他结构均与图2相同)。但是,由于外扩网络接口并不支持向 P⑶模块发送流分类命令及报文,因此,对于外接于I/O接口的外扩网络接口所接收到的报 文来说,就无法利用PCD模块和缓存管理模块实现流分类。为了实现对外扩网络接口接收到的报文进行流分类,如图4所示,现有技术中只 能够从所有数据核(即如图3所示的核1 核N)中指定一个数据核,并由指定的数据核利 用BD(Buffer Descriptor,缓存描述符)来实现流分类。 具体说,指定的数据核会针对外扩网络接口接收到的报文分配一个BD环,该BD环 中包含若干个BD、每个BD又唯一地对应内存中的一个缓冲区。当外扩网络接口接收到报文 后,其通过I/O接口和系统总线向指定的数据核上报中断,然后读取BD环中的写指针当前 所指向的BD,从而获得对应的缓存空间的地址,再将接收到的报文写入至对应的缓存空间、 并将所读取的BD的标志位设置为有效。此后,指定的数据核会利用BD环中的读指针轮询读取BD环中的各BD,当读取到 标志位有效的BD后,即从对应的缓存空间中读取报文的头并解析,从而确定该报文所属的 流,然后再将对应的缓存空间的地址提供给专用于处理报文所属流的其他数据核,以便于 每个其他数据核均能够从对应的缓存空间顺序获取到属于该数据核所对应的流的连续报 文(或者,也可通知PCD模块从对应的缓存空间中读取报文的头并解析,以及,由PCD模块 将对应的缓存空间的地址提供给专用于处理报文所属流的其他数据核)。然而,如图4所示的方式虽然能够对外扩网络接口接收到的报文进行流分类,但 是,需要额外指定的数据核、造成数据核的资源浪费,而且,流分类的能力主要依赖于指定 的数据核的处理能力,容易形成性能瓶颈。

发明内容
有鉴于此,本发明提供了一种多核处理器、一种多核处理器的流分类控制装置、以 及一种多核处理器的流分类控制方法,能够针对多核处理器的I/O接口实现流分类。本发明提供的一种多核处理器,包括系统总线、挂接于所述系统总线的若干数据 核、挂接于所述系统总线的缓存管理模块、挂接于所述系统总线并与所述缓存管理模块直 连的流分类模块、与所述流分类模块直连的网络接口、挂接于所述系统总线的I/O接口、以 及外接于所述I/O接口的外扩网络接口 ;其特征在于,所述外扩网络接口通过一流分类控制装置外接于所述I/O接口 ;所述流分类控制装置接收来自所述外扩网络接口的报文,通过所述I/O接口以及 所述系统总线为所述报文向所述缓存管理模块申请缓存空间、并通过所述I/O接口以及所 述系统总线将所述报文写入至申请到的对应的缓存空间,以及,通过所述I/O接口以及所 述系统总线向所述流分类模块发送流分类命令,所述流分类命令中包含所述报文的长度以 及对应的缓存空间的地址。优选地,所述流分类控制装置进一步实现所述外扩网络接口与所述I/O接口之间 的格式转换。所述外扩网络接口为SPI4. 2接口、所述I/O接口为PCIE接口。可选地,所述流分类模块进一步依据所述流分类命令中的所述地址,从对应的缓存空间内找到所述报文的头、并进行解析,以确定所述报文所属的流;以及,将所述流分类 命令中的所述地址、以及所述报文的长度提供给专用于该所属的流的对应的数据核。本发明提供的一种多核处理器的流分类控制装置,所述多核处理器包括系统总 线、挂接于所述系统总线的若干数据核、挂接于所述系统总线的缓存管理模块、挂接于所述 系统总线并与所述缓存管理模块直连的流分类模块、与所述流分类模块直连的网络接口、 挂接于所述系统总线的I/O接口、以及外接于所述I/O接口的外扩网络接口 ;所述流分类控制装置位于所述外扩网络接口与所述I/O接口之间、并包括报文接收模块,其接收来自所述外扩网络接口的报文;缓存申请模块,其通过所述I/O接口以及所述系统总线,为所述报文向所述缓存 管理模块申请缓存空间;报文写入模块,其通过所述I/O接口以及所述系统总线,将所述报文写入至申请 到的对应的缓存空间;命令发送模块,其向所述流分类模块发送流分类命令,所述流分类命令中包含所 述报文的长度以及对应的缓存空间的地址。优选地,所述流分类控制装置进一步包括接口转换模块,其用于实现所述外扩网 络接口与所述I/O接口之间的格式转换。所述外扩网络接口为SPI4. 2接口、所述I/O接口 为PCIE接口。可选地,所述流分类模块进一步依据所述流分类命令中的所述地址,从对应的缓 存空间内找到所述报文的头、并进行解析,以确定所述报文所属的流;以及,将所述流分类 命令中的所述地址、以及所述报文的长度提供给专用于该所属的流的对应的数据核。本发明提供的一种多核处理器的流分类控制方法,所述多核处理器包括系统总 线、挂接于所述系统总线的若干数据核、挂接于所述系统总线的缓存管理模块、挂接于所述 系统总线并与所述缓存管理模块直连的流分类模块、与所述流分类模块直连的网络接口、 挂接于所述系统总线的I/O接口、以及外接于所述I/O接口的外扩网络接口 ;该流分类控制方法包括在所述外扩网络接口与所述I/O接口之间执行的如下步 骤接收来自多核处理器中的外扩网络接口的报文;通过所述I/O接口以及所述系统总线,为所述报文向所述缓存管理模块申请缓存 空间;通过所述I/O接口以及所述系统总线,将所述报文写入至申请到的对应的缓存空 间;向所述流分类模块发送流分类命令,所述流分类命令中包含所述报文的长度以及 对应的缓存空间的地址。优选地,该流分类控制方法进一步在执行与所述外扩网络接口交互、和/或与所 述I/O接口交互的步骤时进行接口格式转换。可选地,该方法在向所述流分类模块发送所述流分类命令之后,进一步包括所述流分类模块依据所述流分类命令中的所述地址,从对应的缓存空间内找到所 述报文的头、并进行解析,以确定所述报文所属的流;所述流分类模块将所述流分类命令中的所述地址、以及所述报文的长度提供给专用于该所属的流的对应的数据核。由上述技术方案可见,本发明在外扩网络接口与I/O接口之间增设一流分类控制 装置,并利用I/O接口能够访问PCD模块和缓存管理模块所在总线的特点,由流分类控制装 置通过I/O接口和系统总线向缓存管理模块申请缓存空间、以便于外扩接口所接收的报文 能够写入内存中,再由流分类控制装置通过I/O接口和系统总线向PCD模块发送流分类命 令、以使得PCD模块能够为已写入至内存中的外扩接口所接收的报文进行流分类。从而,本 发明不需要额外指定的数据核来实现流分类,能够避免数据核的资源浪费、并避免流分类 的能力主要依赖于指定的数据核的处理能力而形成性能瓶颈,还能够充分利用同为硬件模 块的PCD模块和缓存管理模块为外扩接口所接收的报文实现流分类的硬件加速。进一步地,对于I/O接口和外扩网络接口的接口类型不同的情况,本发明还能够 利用流分类控制装置进一步实现外扩网络接口与I/O接口之间的格式转换。


图1为现有技术中针对网络接口实现流分类的原理性示意图;图2为现有技术中多核处理器的示例性结构图;图3为现有技术中具有外扩网络接口的多核处理器的示例性结构图;图4为现有技术中针对外扩网络接口实现流分类的原理性示意图;图5为本发明实施例中多核处理器的示例性结构图;图6a至图6f为本发明实施例中多核处理器的工作原理示意图;图7为本发明实施例中多核处理器的流分类控制装置的一种较佳的逻辑结构示 意图;图8为本发明实施例中流分类控制方法的示例性流程示意图。
具体实施例方式为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对 本发明进一步详细说明。图5为本发明实施例中多核处理器的示例性结构图。如图5所示,本实施例中的 多核处理器仍包括系统总线、挂接于系统总线的核0 核N(N为大于1的正整数)、挂接 于系统总线的内存及内存控制器、挂接于系统总线的缓存管理模块、挂接于系统总线并与 缓存管理模块直连的PCD模块、与PCD模块直连的网络接口、挂接于系统总线的I/O接口、 以及外接于I/O接口的外扩网络接口。其中,核0负责CP的处理、而核1 核N则负责DP 的处理,即,核1 核N为如前所述的数据核。但是,在图5所示出的多核处理器中,外扩网络接口并不是直接外接于I/O接口, 而是通过一流分类控制装置与I/O接口相连。由于I/O接口能够访问到缓存管理模块和P⑶ 模块所在的系统总线,因而,利用这一特点,流分类控制装置就能够通过I/O接口和系统总 线与缓存管理模块和PCD模块交互。具体说,当外扩网络接口接收到报文之后,外扩网络接口会将报文发送至流分类 控制装置,此后如图6a所示,由于外扩网络接口并不支持向P⑶模块发送流分类命令及报文,因此,由流分类控制装置通过I/O接口和系统总线,为外扩网络接口所接收到的报文向缓存 管理模块申请内存中的缓存空间;如图6b所示,由于缓存空间的申请是由流分类控制装置发起的、而不是由PCD模 块通过与缓存管理模块之间的直连接口发起的,因此,缓存管理模块会通过系统总线和I/O 接口将已申请到的缓存空间的地址提供给流分类控制装置、而不是通过与PCD模块之间的 直连接口提供给PCD模块;如图6c所示,在申请到缓存空间之后,流分类控制装置通过I/O接口和系统总线, 将外扩网络接口所接收到的报文写入至已申请到的对应的缓存空间;如图6d所示,在将外扩网络接口所接收到的报文写入至已申请到的对应的缓存 空间之后,流分类控制装置通过I/O接口和系统总线向PCD模块发送流分类命令;由于PCD 模块在此之前并未针对外扩网络接口所接收到的报文向缓存管理模块申请内存中的缓存 空间、也未接收到外扩网络接口所接收的报文,因而流分类命令中还需要包括外扩网络接 口所接收到的报文所写入的对应的缓存空间的地址、以及外扩网络接口所接收到的报文的 长度;如图6e所示,P⑶模块在接收到流分类控制装置通过I/O接口和系统总线所发送 的流分类命令后,依据流分类命令中的前述地址,从对应的缓存空间内找到外扩网络接口 所接收到的报文的头、并进行解析,从而确定外扩网络接口所接收到的报文所属的流;在确 定外扩网络接口所接收到的报文所属的流之后,PCD模块即可将前述地址、以及前述报文长 度提供给专用于该所属流的对应的数据核;如图6f所示,在外扩网络接口所接收到的报文所属流的对应的数据核得到前述 地址、以及前述报文长度之后,即可按照该所属流中的报文先后顺序,从对应的缓存空间顺 序获取到属于该数据核所对应的流的由外扩网络接口所接收到的报文。基于如图5所示的结构、以及如图6a至图6f所示的工作原理可见,本实施例通过 在外扩网络接口与I/O接口之间增设一流分类控制装置、以及利用I/O接口能够访问P⑶ 模块和缓存管理模块所在总线的特点,能够由流分类控制装置通过I/O接口和系统总线向 缓存管理模块申请缓存空间、以使得外扩接口所接收的报文能够写入内存中,还由流分类 控制装置通过I/O接口和系统总线向P⑶模块发送流分类命令、以使得P⑶模块能够为已 写入至内存中的外扩接口所接收的报文进行流分类。从而,也就不需要额外指定的数据核 来实现流分类,进而就能够避免数据核的资源浪费、并避免流分类的能力主要依赖于指定 的数据核的处理能力而形成性能瓶颈;而且,还能够充分利用同为硬件模块的PCD模块和 缓存管理模块为外扩接口所接收的报文实现流分类的硬件加速。即便出现网络接口、外扩网络接口并发访问的情况,由于P⑶模块和缓存管理模 块均能够提供支持并发访问的多个资源通道,因而也不会导致性能瓶颈的出现;而如果出 现多个外扩网络接口同时存在的情况,只要流分类控制装置的资源足够,可以设置多个外 扩网络接口可以共用一个流分类控制装置,并由流分类控制装置为每个外扩网络接口提供 一个独立的资源通道,且对于每个资源通道,均可以按照如图6a至如图6f所示的工作原理 实现流分类。当然,还存在一种可能,即I/O接口和外扩网络接口的接口类型不同,例如,I/O接 口为PCIE接口、而外扩网络接口为SPI4. 2接口,S卩,流分类控制装置与I/O接口使用PCIE
8接口协议进行交互、与外扩网络接口使用SPI4.2接口协议进行交互。此时,还需要流分类控制装置进一步具有实现外扩网络接口与I/O接口之间的格 式转换功能,而增加格式转换的功能并不会导致流分类控制装置的硬件成本增加。至于如 何实现格式转换,本领域技术人员能够参照现有的各种接口协议予以实现,本文不再赘述。在具体应用时,流分类控制装置可以由例如FPGA等任一种逻辑器件来实现。当使 用逻辑器件来实现流分类控制装置时,逻辑器件内部可以参照如图6a 如图6d所示的原 理而任意设置相应的逻辑结构。图7中示出了流分类控制装置的一种较佳的逻辑结构,在如图7中所示出的流分 类控制装置中包括报文接收模块、缓存申请模块、报文写入模块、以及命令发送模块。报文接收模块,用于接收来自外扩网络接口的报文、并通知缓存申请模块。实际应 用中,报文接收模块可具有一定的缓存功能,以便于暂存来自外扩网络接口的报文;或者, 也可在流分类控制装置中额外设置一报文缓存模块(图7中未示出)、以暂存报文接收模块 所接收的来自外扩网络接口的报文。缓存申请模块,用于通过I/O接口和系统总线,为报文接收模块所接收到的报文 向缓存管理模块申请内存中的缓存空间;以及,通过系统总线和I/O接口接收缓存管理模 块申请到的缓存空间的地址、并提供给报文写入模块。报文写入模块,用于按照缓存申请模块所提供的地址,通过I/O接口和系统总线, 将报文接收模块所接收到的报文(如果设置有如前所述的报文缓存模块、则需要先从报文 缓存模块中读取)写入至已申请到的内存中的对应的缓存空间,并在写入完成之后通知命 令发送模块。命令发送模块,用于在将报文接收模块所接收到的报文写入至已申请到的内存中 的对应的缓存空间之后,通过I/O接口和系统总线向PCD模块发送流分类命令,流分类命令 中还需要包括外扩网络接口所接收到的报文所写入的对应的缓存空间的地址、以及外扩网 络接口所接收到的报文的长度。实际应用中,如果出现多个外扩网络接口同时存在的情况,只要流分类控制装置 的资源足够,可以设置多个外扩网络接口可以共用一个流分类控制装置,并由流分类控制 装置为每个外扩网络接口提供一个独立的资源通道,且每个资源通道中均可以包括报文接 收模块、缓存申请模块、报文写入模块、以及命令发送模块。此外,对于I/O接口和外扩网络接口的接口类型不同的情况,流分类控制装置中 可以进一步设置接口转换模块,用于实现所述外扩网络接口与所述I/O接口之间的格式转换。其中,接口转换模块可以设置为一个、并由所有资源通道共享,或者,也可以分别 为每个资源通道设置一个接口转换模块。而且,接口转换模块的位置也可以任意设置。例如,如果流分类控制装置中的报文接收模块、缓存申请模块、报文写入模块、以 及命令发送模块均可以采用I/O接口的接口协议而与I/O接口直接交互,则接口转换模块 可以设置在报文接收模块与外扩网络接口之间,也就是说,来自外扩网络接口的报文只要 进入到流分类控制装置中,就会被接口转换模块转换为符合I/O接口的接口协议的格式;再例如,如果流分类控制装置中的报文接收模块、缓存申请模块、报文写入模块、以及命令发送模块均可以采用外扩网络接口的接口协议,则接口转换模块可以设置为直接 与I/O接口相连,且缓存申请模块、报文写入模块、以及命令发送模块均通过接口转换模块
与I/O接口交互。当然,如图7中所示出的流分类装置的逻辑结构仅仅是基于如图6a至图6d所示 出的工作原理的一种较佳实现方式,对于可能出现的其他逻辑结构,本文不再一一列举。基于如图7所示出的流分类装置的逻辑结构,本实施例还提供了一种相应的流分 类控制方法,具体参见图8,该方法包括在外扩网络接口与I/O接口之间执行的如下步骤步骤801,接收来自外扩网络接口的报文,如果需要,还可暂存所接收的来自外扩 网络接口的报文。步骤802,通过I/O接口和系统总线,为报文接收模块所接收到的报文向缓存管理 模块申请内存中的缓存空间。步骤803,通过系统总线和I/O接口接收缓存管理模块申请到的缓存空间的地址。步骤804,按照步骤803所提供的地址,通过I/O接口和系统总线,将报文接收模块 所接收到的报文写入至已申请到的内存中的对应的缓存空间。步骤805,在步骤804的写入完成后,通过I/O接口和系统总线向P⑶模块发送流 分类命令,流分类命令中还需要包括外扩网络接口所接收到的报文所写入的对应的缓存空 间的地址、以及外扩网络接口所接收到的报文的长度。至此,流分类过程中针对来自外扩网络接口的一个报文的处理流程结束。在上述流程之后,PCD模块即可依据流分类命令中的前述地址,从对应的缓存空间 内找到外扩网络接口所接收到的报文的头、并进行解析,以确定外扩网络接口所接收到的 报文所属的流;然后,PCD模块可将流分类命令中的前述地址、以及报文的长度提供给专用 于该所属的流的对应的数据核,从而使对应的数据核可按照该所属流中的报文先后顺序, 从对应的缓存空间顺序获取到属于该数据核所对应的流的由外扩网络接口所接收到的报 文。此外,对于I/O接口和外扩网络接口的接口类型不同的情况,还可以进一步在执 行与外扩网络接口交互的步骤801、和/或与I/O接口交互的步骤802 步骤805时进行接 口格式转换。以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在 本发明的精神和原则之内,所作的任何修改、等同替换以及改进等,均应包含在本发明的保 护范围之内。
权利要求
1.一种多核处理器,包括系统总线、挂接于所述系统总线的若干数据核、挂接于所述 系统总线的缓存管理模块、挂接于所述系统总线并与所述缓存管理模块直连的流分类模 块、与所述流分类模块直连的网络接口、挂接于所述系统总线的I/O接口、以及外接于所述 I/O接口的外扩网络接口 ;其特征在于,所述外扩网络接口通过一流分类控制装置外接于所述I/O接口;所述流分类控制装置接收来自所述外扩网络接口的报文,通过所述I/O接口以及所述 系统总线为所述报文向所述缓存管理模块申请缓存空间、并通过所述I/O接口以及所述系 统总线将所述报文写入至申请到的对应的缓存空间,以及,通过所述I/O接口以及所述系 统总线向所述流分类模块发送流分类命令,所述流分类命令中包含所述报文的长度以及对 应的缓存空间的地址。
2.如权利要求1所述的多核处理器,其特征在于,所述流分类控制装置进一步实现所 述外扩网络接口与所述I/O接口之间的格式转换。
3.如权利要求2所述的多核处理器,其特征在于,所述外扩网络接口为SPI4.2接口、所 述I/O接口为PCIE接口。
4.如权利要求1至3中任一项所述的多核处理器,其特征在于,所述流分类模块进一步 依据所述流分类命令中的所述地址,从对应的缓存空间内找到所述报文的头、并进行解析, 以确定所述报文所属的流;以及,将所述流分类命令中的所述地址、以及所述报文的长度提 供给专用于该所属的流的对应的数据核。
5.一种多核处理器的流分类控制装置,所述多核处理器包括系统总线、挂接于所述 系统总线的若干数据核、挂接于所述系统总线的缓存管理模块、挂接于所述系统总线并与 所述缓存管理模块直连的流分类模块、与所述流分类模块直连的网络接口、挂接于所述系 统总线的I/O接口、以及外接于所述I/O接口的外扩网络接口 ;其特征在于,所述流分类控制装置位于所述外扩网络接口与所述I/O接口之间、并包括报文接收模块,其接收来自所述外扩网络接口的报文;缓存申请模块,其通过所述I/O接口以及所述系统总线,为所述报文向所述缓存管理 模块申请缓存空间;报文写入模块,其通过所述I/O接口以及所述系统总线,将所述报文写入至申请到的 对应的缓存空间;命令发送模块,其向所述流分类模块发送流分类命令,所述流分类命令中包含所述报 文的长度以及对应的缓存空间的地址。
6.如权利要求7所述的流分类控制装置,其特征在于,所述流分类控制装置进一步包 括接口转换模块,其用于实现所述外扩网络接口与所述I/O接口之间的格式转换。
7.如权利要求6所述的流分类控制装置,其特征在于,所述外扩网络接口为SPI4.2接 口、所述I/O接口为PCIE接口。
8.如权利要求5至7中任一项所述的流分类控制装置,其特征在于,所述流分类模块进 一步依据所述流分类命令中的所述地址,从对应的缓存空间内找到所述报文的头、并进行 解析,以确定所述报文所属的流;以及,将所述流分类命令中的所述地址、以及所述报文的 长度提供给专用于该所属的流的对应的数据核。
9.一种多核处理器的流分类控制方法,所述多核处理器包括系统总线、挂接于所述 系统总线的若干数据核、挂接于所述系统总线的缓存管理模块、挂接于所述系统总线并与 所述缓存管理模块直连的流分类模块、与所述流分类模块直连的网络接口、挂接于所述系 统总线的I/O接口、以及外接于所述I/O接口的外扩网络接口 ;其特征在于,该流分类控制方法包括在所述外扩网络接口与所述I/O接口之间执行的 如下步骤接收来自多核处理器中的外扩网络接口的报文;通过所述I/O接口以及所述系统总线,为所述报文向所述缓存管理模块申请缓存空间;通过所述I/O接口以及所述系统总线,将所述报文写入至申请到的对应的缓存空间; 向所述流分类模块发送流分类命令,所述流分类命令中包含所述报文的长度以及对应 的缓存空间的地址。
10.如权利要求9所述的流分类控制方法,其特征在于,该流分类控制方法进一步在执 行与所述外扩网络接口交互、和/或与所述I/O接口交互的步骤时进行接口格式转换。
11.如权利要求9或10所述的流分类控制方法,其特征在于,该方法在向所述流分类模 块发送所述流分类命令之后,进一步包括所述流分类模块依据所述流分类命令中的所述地址,从对应的缓存空间内找到所述报 文的头、并进行解析,以确定所述报文所属的流;所述流分类模块将所述流分类命令中的所述地址、以及所述报文的长度提供给专用于 该所属的流的对应的数据核。
全文摘要
本发明公开了一种多核处理器及流分类控制装置和方法。本发明在外扩网络接口与I/O接口之间增设一流分类控制装置,并利用I/O接口能够访问PCD模块和缓存管理模块所在总线的特点,由流分类控制装置通过I/O接口和系统总线向缓存管理模块申请缓存空间、以便于外扩接口所接收的报文能够写入内存中,再由流分类控制装置通过I/O接口和系统总线向PCD模块发送流分类命令、以使得PCD模块能够为已写入至内存中的外扩接口所接收的报文进行流分类。从而,本发明不需要额外指定的数据核来实现流分类,能够避免数据核的资源浪费、并避免指定的数据核的处理能力所可能形成性能瓶颈,还能够针对外扩接口所接收的报文实现流分类的硬件加速。
文档编号G06F15/17GK102110074SQ201110024120
公开日2011年6月29日 申请日期2011年1月21日 优先权日2011年1月21日
发明者吴斌 申请人:杭州华三通信技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1