ldcsaa/HP-Socket

请问有没有类似sendmmsg和recvmmsg的支持,或者其他加速小包(payloa在32~64 Bytes)发送的功能呢

Opened this issue · 1 comments

我在ubuntu 22.04上运行,使用的是C,代码如下

#include <hpsocket/HPSocket4C.h>

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main(){
    HP_UdpNodeListener listener = Create_HP_UdpNodeListener();
    HP_UdpNode pNode = Create_HP_UdpNode(listener);
    HP_UdpNode_Start(pNode,"10.70.0.13",12345);

    const int dataSize = 32;
    const BYTE* pBuffer = (BYTE*)(const char[dataSize]){0};


    while(1)
        HP_UdpNode_Send(pNode,"10.70.0.14",12345,pBuffer,dataSize);

    HP_UdpNode_Stop(pNode);

    return 0;
}

根据测试,这份代码在我的平台上发包速率只能达到0.264M pps,而我其他使用sendmmsg或者python asyncio发包速率可以达到0.585M pps。三份代码的占用都是单个cpu 100%

还有一个问题,include HPSocket4C会提示wchar_t不存在,需要我在GlobalDef.h中添加#include <stddef.h>
感谢回答