multiple sendmsg and single user-kernel switch

From: Aviv Grafi
Date: Thu Oct 13 2005 - 13:43:11 EST

Hi all,
I want to use the sendto (or sendmsg) for sending raw packets on a raw
socket directly to the NIC (passing the kernel protocol stack).
In addition to that i need so send a lot of packets (100-200Kpps) so i
have to do that fast.
Currently the kernel-user switching is killing me and i want to batch
some packets before calling send() - to reduce the user-kernel switch
Passing a batched buffer to the sendto() cause a probelm - the NIC have
to get one message at a time because it has to calculate the L2 CRC for
each packet (or msg). so batched buffer is not acceptable.

I would like to get some help please. any one have any idea how to
reduce the user-kernel overhead (or sending a batched buffer so the
kernel will call sendto for each buffer)?

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at