原始套接字发送自己封装的TCP/IP包,加线程后速度也上不去是什么原因
情况是这样,我需要发送自己构造的数据包,将数据封在TCP包中,然后再封在IP包中,最后再发送出去
现在要尽可能达到最快的发送速度,我的方案是先创建一个字符串数组,用于存放已经构造好的数据包,然后程序运行时先把数据包构造好并保存在数组中,然后在启动发包的线程
我的带宽是1000M,当启动一个线程时,发包速度大约是170M,CPU占用率40%左右,但是加到10个进程时速度也就是190M,cpu 50%---60%,加到50个或更多是速度也就是200M,cpu 60%+,不是线程越多速度应该越快吗,这是为什么,CPU也没有占满啊
如果要使用零拷贝技术应该如何处理,求指点