Guys, We have a basic implementation in place for this work http://www.opensolaris.org/os/project/crossbow/Design_softringset.txt
Basically the idea is to keep the data paths very tight, always do Dynamic polling when possible (independent of the workloads) while utilizing more than 1 CPU for parallelizing the work load. As part of this work, I am trying to see what can be done for small packet forwarding performance and also latency (btw there are two projects coming online soon to specifically target forwarding and latrency). So if people have needs/suggestions/stakes in this area, I would recommend reading the above document and dive in. As for how to test some of these things, you can use 'ttcp' (http://sd.wareonearth.com/~phil/net/ttcp/) on a back to back setup for starters (10Gb NICs might be better). Use the '-D' option with small write (64 bytes) to disable nagle and actually send small packets on the wire. What I typically use server: ./ttcp -s -r -v -u -b 262144 -l 64 -n 500000 client: ./ttcp -D -s -v -u -t <hostname> -b 262144 -l 64 -n 500000 This is with UDP and if you snoop the wire, you will see the small packets going by. Cheers, Sunay -- Sunay Tripathi Distinguished Engineer Solaris Core Operating System Sun MicroSystems Inc. Solaris Networking: http://www.opensolaris.org/os/community/networking Project Crossbow: http://www.opensolaris.org/os/project/crossbow