100Mb -> somewhere between that and about 220,000. depends on packet size.
you're probably more interested in how many pps the devices *either side
of that link* can handle, though. you'll have to find this out for yourself.
if I run a packet generator on box 1 (amd64 MP/sk) sending small UDP packets
towards box 2 (i386 MP/bge) with just a switch between them (all gigabit),
I see this rate of bytes/sec and pps: (this is all pre-hackathon kernels)
Iface State Ibytes Ipkts Ierrs Obytes Opkts Oerrs Colls
sk0 up:U 7000 100 0 18364134 322176 0 0
-> in Mbit/s:
<sthen@zephyr:12103>$ echo $((18364134*8/1024))
143469
and all is reasonably ok, things are not too bad on either system.
plenty of cpu is in use but things mostly still work ok.
depends on all sorts of things. NIC type, packet sizes, what kernel
you're using (i386/amd64/UP/MP), PF on or off, how applications handle
that kind of traffic if they're involved rather than just routing or
bridging ... but 8k pps is not really very much for a system to handle.
with the above example: if I reverse things and send from box 2 to
box 1, box 1 grinds to a standstill, it doesn't respond to anything
typed at the console until the packet flow ceases since all time is
processing interrupts. and that's at just 150kpps or so which is all
that box2 manages to send. (i386 MP kernel/bge)
generate some load, do some testing, and see what happens.
you are probably worrying too much at 8kpps if the pipe is not
nearly near full.