【NXP DN 系列】浅谈 DPAA1 Software Architecture 工作原理

本文深入探讨DPAA1 Software Architecture,旨在提供智能处理和流量管理,解决多核负载平衡问题。DPAA1通过FMan、QMan和BMan模块实现硬件加速,确保高效的数据包处理。FMan负责帧管理,QMan处理队列,BMan管理缓存,共同提升网络处理性能和系统效率。
摘要由CSDN通过智能技术生成

浅谈 DPAA1 Software Architecture 工作原理

一、介绍

DPAA1 的主要目的是在片上系统( SOC )的 IO 部分内提供智能处理,以进行路由和管 理与流量相关的处理工作,以简化与多核相关的排序和负载平衡问题处理。 DPAA1硬件检查入口流 量,并从端口流量中提取用户定义的流。然后引导特定流(或相关流量)到一个特定的核 心或一组核心。
传统的 Linux 在处理数据包时,主要采用在内核态收发包的模式,然后交给内核协议栈处理,效率低,无法满足高速传输的需求。而 DPAA 提供了一套硬件加速平台,主要包括三个模块:BMan、QMan、FMan。能很好的决解包括处理器负载平衡/利用率、流顺序维护和有效的 缓存利用率等问题。

 ------ 结束

二、DPAA1 的目的

DPAA1 的主要目的:

  1. 在 SoC 的 IO 部分内提供智能情报;
  2. 路由和管理与流量相关的处理工作;
  3. 简化与多核处理相关的排序和负载平衡问题。

DPAA1 通过检测进入的流量将这些流量分成帧队列(FQs)来管理这些目标,通常这样做 的目的是将一个或一组流量定义为特定 FQ 中的流量。FQ 通过通道与特定的核心相关联。在定义通道时可以使用工作队列(WQ)机制对 FQ 进行优先排序,出口流和进口流相似, CPU 将流量放到特定的 FQ 上,FQ 通过通道与特定的物理端口相关联

  ------ 结束

三、FMan 帧管理

  1. FMan 在流量进入时会检查,将流量分成 FQs 。怎样进行流量分割是可以配置的,FMan 可以配置确定的 PCD (Parse, Classify, Distribute), 这样用户就自己定义流量的配置传输方式。PCD 可以根据传入包的特定内容或包的接收速率来识别流量

  2. 解析函数用于识别数据帧中的哪些字段决定流量分割。所使用的字段可以由行业标准定义,或者用户可以使用可编程的软解析特性来适应专用字段(通常是标头)定义。

  3. 分类函数根据解析函数的结果将特定的帧队列或是字段进行分类以保证不会错包乱包。

  4. 分配函数会将处理好的 FQs 发送到 FQs 出口的接口

  5. FMan还提供一个基于费率的策略器功能,允许用户标记或删除超过流量阈值的特定帧。

    ------ 结束
    

四、QMan 队列管理

队列管理的主要作用就是将 FQs 连接到 SoC 中的生产者和消费者(数据流量)。生产者/消费者要么是 FMan、加速模块或 CPU 核心。

所有的生产者 / 消费者都有一个专用通道,和多个池通道,池通道可以允许多个内核 C

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值