×
嵌入式 > 技术百科 > 详情

采用网络协处理器技术提高网络系统对数据流量的控制能力

发布时间:2021-06-01 发布时间:
|

随着数据流量的增加,网络的数据率也迅速提高。客户要求以持续不变的线速提供复杂的业务和传输流管理功能,如虚拟专用网(VPN)和实时音频及视频流这样的业务需要对不同的传输流类型进行QoS管理,这无疑将增加网络处理器的负担,本位介绍的网络协处理器及网络搜索引擎技术能够解决上述问题。

传统的网络处理器解决方案,包括交换结构均在单芯片上实现。现在这些独立单元已拆分为多个处理器和协处理器,而众多的开发商则专注于为特定功能部分提供解决方案,这些解决方案综合考虑了处理速率、成本、可配置性及产品上市周期等因素。

网络处理功能可通过采用速率较高,但可置配性较差、产品上市周期较长的专用ASIC实现,也可采用具有较短产品上市周期和较高灵活度的可编程网络处理单元(NPU)实现。还有一些设计工程师则综合了这两种技术,利用NPU处理复杂的QoS、安全和异常任务处理,利用ASIC处理高速数据通道。

当前网络处理器面临的挑战

NPU处理速率提高的速度低于数据率的增长,这已成为网络处理当前面临的主要难题。互联网传输流的平均带宽每6至9个月就将增加一倍,而NPU则仍然遵循摩尔定律,即处理器性能每18个月增长一倍。

在大都市和中心地区,随着数据流复杂度的增加,网络的数据率也迅速提高。目前客户要求以持续不变的线速提供复杂的业务和传输流管理功能,如虚拟专用网(VPN)和实时音频及视频流这样的业务需要对不同的传输流类型进行QoS管理。这无疑将增加网络处理器的负担,因为这些复杂业务需要占用大量的系统资源。

当前网络面临的另一挑战是:汇集点的总带宽通常是出口点带宽的2至12倍。服务提供商不可能满足这种要求,因此这种情况要求网络处理能对传输流设定优先级并确保QoS。

解决这些挑战的传统方法

以前,数据包处理需借助运行于通用处理器上的软件完成。当数据率的增加使得常规处理器解决方法不能满足数据处理要求时,专用网络处理器应运而生。现在,网络处理解决方案综合了完全可编程的NPU、专用协处理器和用于高速操作的ASIC。

传统上可由NPU处理的任务包括:

根据优先级对每个数据包进行分类;

根据分类决定丢弃或发送哪些数据包;

将其它协议下的数据流转化为IP数据流;

采集记费数据;

支持安全应用,如虚拟专网(VPN);

业务监管、业务提供和用户管理,以加强业务等级协定(SLA)。

为了实现上述功能,NPU必须对每个以线速通过的数据包进行检查,并设定优先级。采用“线速处理”意味着可在输入数据包的最后一位进入系统之前,决定为出口队列分配某数据包或丢弃某数据包。此外,数据包还必须能以物理链接允许的最大速率发送。

协处理器和网络搜索引擎(NSE)的作用

可编程网络处理器能实现完全可编程的解决方案,设计工程师在开发中有较大的灵活度,还能有效地按单个标准进行编码。然而,NPU的处理能力毕竟有限,尤其是处理复杂业务时可能难以应对,这时协处理器能有效地解决这些问题。

计算量大的处理将极大地增加网络处理器负担并降低数据吞吐量,如数据包分类、QoS和处理OC-48这些业务,网络处理器即便不处理其它业务,都难以满足对处理速度的要求。

专用协处理器执行其专项功能的速率很快,但其可配置性比网络处理器差。协处理器可在特定的任务中减轻NPU的负载,从而使NPU满足系统的速率要求。大多数用户在设计中会采用NPU和协处理器混合结构,以满足性能和灵活度的要求。

网络处理结构的特征

在传统的集中数据包转发结构中,大多数处理是通过NPU、FPGA和ASIC的组合用软件来实现的。系统中的用户卡主要用作数据包转发单元,而大量的处理工作则通常在交换结构中完成。由于交换结构处理能力必须与通过该结构的数据速率相适应,该解决方案无法满足更高处理速率的要求。

在一些更新的结构,如分布式数据包处理中,每个用户卡均实现路由器功能,而交换结构经过优化,有利于数据包在用户卡中无阻塞传输。由于交换结构将不再成为瓶颈,这样的结构更易于扩展。

随着网络底层结构复杂度和速率的增加,快速灵活的网络搜索功能正成为系统成功设计的必要条件。新一代产品要求增加业务处理的“智能化”,即根据数据包的第3和第4层,或更深层提供的信息进行决策。

网络搜索引擎

分类引擎需要采用NSE或三进制内容寻址存储器(TCAM)。NSE有助于设计工程师突破转发查询表信息及其它复杂分类决策的瓶颈。NSE可存储0、1和X三种状态,而不像传统的二进制内容寻址存储器(CAM)只能存储0和1两种状态。

评价NSE性能必须考虑搜索深度、记录数目和可用时间三个因素。搜索深度与应用和业务的数目成正比;搜索的记录数目则随网络延伸扩展呈指数增加,随着网络速率的提高,每次搜索的时间也将相应减少。

分类引擎

根据预先规定的准则对数据包进行分类的功能对于提供复杂的增值业务,如安全、QoS、负载均衡及传输流统计尤为重要,分类引擎可减轻NPU分类数据包的负担。其工作过程如下:

NPU从数据通道中获取需要分类的数据包并将其存储在缓冲器中;

分类引擎从缓冲器中获取数据包并加以分类,然后将该数据包及相关数据返回缓冲器,并通知NPU操作已完成;

NPU从缓冲器中获得该数据包和分类数据,并进行相应的处理。

安全处理器

很多网络要求安全可靠的通信应用,如VPN和电子商务。由于安全处理将极大地增加网络处理器的负担,因此,很多网络都在网络处理器附近增加安全协处理器,以减轻安全处理负担,使网络处理器能专注于实现QoS和其它必需的功能。

在单块插板上由多个加密处理器组成的加密组件也可用来执行安全处理任务。该插板可与常规线路板安装在同一机架中,并为系统提供安全处理功能。

带有协处理器的系统结构

使用协处理器的结构(如上述结构)均可采用旁侧模式(look-aside),即协处理器在NPU附近,而不在数据通道中。这有利于数据包协同处理跟网络处理器的操作以增加总的数据流量,而且后备模式不接收所有经过NPU的数据包的全部净荷。后备模式的不足之处在于,它使设计更为复杂并增加系统的延时。

流线结构(steaming)中,数据通道中既包含NPU,又包含协处理器。由于每个数据包都将通过协处理器,因此协处理器将对这些数据包进行处理并直接发送到NPU,而不会产生任何延迟。流线结构要求协处理器必须以线速连续处理数据包,否则协处理器将不能完全处理这些数据而导致包丢失。

采用网络处理器和协处理器的MPLS应用示例

多协议标签交换(MPLS)是IP网络的一种优化的交换技术,可与ATM、帧中继等协同使用。在MPLS中,IP数据包一旦进入MPLS部分,将加入Layer2路由标签,然后根据标签进行转发。MPLS的目的是要互联网提供较小的等待时间和较高的带宽,并对通信流量进行有效的控制,并使骨干网可扩展。

为了能在路由器内完全实现MPLS功能,需要三个不同的查询表来满足三种可能的处理。由于每个记录都有自己用来路由汇集的掩码,标签交换路由器(LSR)决策表可能很大而且搜索算法复杂。由于在每个点到点之间会定义LSR来实现MPLS部分的QoS和服务等级(CoS),MPLS路由表也会有很大数量的记录。

查询表要求MPLS路由可采用网络处理器单独实现,如图1所示;也可采用网络协处理器实现,如图2所示。

图2给出了一个通过网络搜索引擎与网络处理器结合或与标准RISC微控制器结合实现的高性价比解决方案,网络搜索引擎控制器可以是定制的ASIC或Cypress专用搜索引擎控制器。

网络搜索引擎可通过适当配置,保证设计所需的多个路由表。由于可以动态修改配置,因此相同的设计既适用于MPLS边缘路由器,又适用于MPLS网络中的路由器。

采用网络协处理器实现搜索引擎的好处在于协处理器具有较低的时钟速率、较低的RAM需求以及较短的产品上市周期。网络搜索引擎完成路由表查询,因此可以使用较低的时钟速率。路由表存储在网络搜索引擎中,其效率明显优于相关的SSRAM技术,因而可以采用较小的SSRAM模块。网络搜索引擎不需要开发复杂的软件算法,从而缩短了产品上市周期。




『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
中国国产第三代核电实现并网发电