This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

ndk和pa的问题,希望能得到解答

大家好:

           请教您们几个问题,希望能得到解答,谢谢

          硬件平台:EVM6678,软件平台:ccs5.5

           1、基于helloworld demo例,使用NDK实现PC与DSP间的UDP通信,但是通过压力测试,网络平均带宽为20M Bps,这个值是合理的吗?因为是千兆网卡,理论带宽是125M Bps,扣除UDP协议的消耗,应该也能达到60M Bps以上,我这样理解对吗?

           2、helloworld demo例中,有使用PASS包加速器吗?PASS包加速器在网络中到底起到什么作用?

           3、在您提供的cifae_KI_STK_Deyi文件夹中,有一个GE的工程,这个demo例有使用PASS吗?这个工程代码是没有移植TCP/IP协议栈的,假如我要基于GE这个工程代码实现UDP通信,是不是需要自己做UDP协议的解析,比如封包和解包?

  • Hi, 您好!

    1. 带宽与您的测试场景有关: 包括发包频率, 发包大小, 协议层开销等。 您可以尝试增加包的大小看带宽的改变

       我们测试过底层的带宽 (物理层带宽), 是可以接近理论值的

    2. 是的,用了PASS. 可以起到路由分发等功能,比如将不同MAC/IP地址的报文发送给不同的核进行处理

        更多功能您可以查看手册:KeyStone Architecture Packet Accelerator (PA)  (Literature Number: SPRUGS4)

    3. demo中没有使用PASS,  是的,您需要自己做协议栈

    谢谢 !

  • hi,Kevin Cai

            1、PC端发包频率过于频繁,DSP接收端就会丢包,所以测试时,send函数后,需要延时一会后,再次send,才能保证数据不丢包,确实跟包长度有关系,包长度在1000Byte左右时,网络带宽达到一个比较理想的值

            2、在helloworld这个demo例中,有使用PA包加速器,但是怎么体现出有没有使用PA加速器的区别或优势?

            3、研究工程GE工程的代码,只实现了物理层的包解析,即以太网帧,在这个工程的基础上自己实现UDP的协议栈,这样是否具有可行性,或者说是否有着必要?


            谢谢大家解答!!!

  • Hi, 您好!

    2. 这与您的应用场景有关,如果您的应用场景比较复杂,比如您要给每个核分配一个IP地址或MAC地址, 每个核处理不同的报文, 那么PA就很有用了

    3. 这个是可行的, 必要性取决于您的应用场景。GE实现了比较完整的底层功能, 比如支持多网口, 支持多种环回模式,方便可配的源/目的buffer, MAC地址等

        您如果在GE上开发,可以使用这些功能

    谢谢!

  • Hi,Kevin Cai

          您好,对于PA的功能还是不大理解,看PA的文档,里面有L2 classify engine,L3,classify engine,L4 classify engine等,问题如下:

          1、是不是PA的每一层engine负责TCP/IP协议的对于层?是不是每个engine都需要donwload一个fireware?

          2、是不是单独使用PA,就能实现实现整套的TCP/IP协议栈功能?

          3、假如PA实现TCP/IP协议栈功能,是不是可以不需要NDK,而单独使用PA就能实现整个TCP/IP的数据流的操作


                 谢谢各位解答!!!

  • Hi, 您好!

    1. 是的, 每个engine都需要donwload一个fireware

    2. PA实现了部分TCP/IP协议栈功能,比如头的识别和分类 

    3. NDK是需要的

    谢谢!

  • 您好!

     1、基于helloworld demo例,使用NDK实现PC与DSP间的UDP通信

    目前也想使用NDK实现PC与DSP之间的UDP通信,

    不知方便分享您的代码吗?

    谢谢!