Packets per second confusion

I have an ENET card rated for 25000 pps max. Question: I have a total of 45 devices that I am designing a LAN design for each device is using a total of 12 bytes ( 6 in 6 out) my calculation of (540 x 8) 4320 bits. Running at 100Mbps my calculation comes out to 23148 pps (100Mbps/4320)
My problem or misunderstanding is if I add more devices which increases my total bytes decreases my pps. If my card is rated for 25000 pps max. By the math I can add more devices hence decreases my pps I turn would be under my 25000 pps limit even more.  Does anyone have an idea where I might be looking at this wrong.

Thanks Steve
Who is Participating?
agonza07Connect With a Mentor Commented:
I'm sorry, but I'm still not understanding the purpose of this exercise. I guess it just seems too theoretical instead of real-world to me.

Going by your logic though, here's what I come up with.

Maximum pps on a 100mbps ethernet network is about 150,000 pps, multiplied by 2 if you consider full duplex in and out. That speed is usually referred to as wire speed. ( and the way you come up with that is 100mbps / (86 bytes/packet.)

86 bytes is the lowest possible packet size on ethernet. See this site below:
Their math is a little rounded because 100mbps is actually 13107200 bytes/sec.

13107200bytes/sec divided by 86bytes/packet = 156038 packets/sec

Now, your ethernet card can only support 25k pps, so all we need to do is reverse the math. Keep in mind that your devices are never going to send less than 86bytes/packet. When you send your 6 bytes (6 up and 6 down as you stated) the logic in the cards is going to pad your packet with an additional 40bytes to meet the minimum.

25000packets/sec  multiplied by 86bytes/packet = 16Mbps

We basically have only 16Mbps of throughput that your network card can handle if all the packets are 86bytes. Now the question is how many packets/sec can you devices put out? For the sake of argument let's say they can only put out 1 86byte packet per second. Real-world this is much higher, but this isnt real world apparently.

So throughput from each device is 86bytes per second or 688bits per second.

16Mbps = 16777216 bits per second (Total throughput at ethernet card)
16777216bps divided by 688bps = 24,385 devices spewing out 86byte packets at a rate of 1 pps to saturate your card.

Now we come back to how fast your devices can send packets. Again, for the sake of argument, let's say you have another device with the same ethernet card. Both cards can handle 25k pps. So if you put those cards together in the same network, they both can theoretically saturate themselves, and so your total number of devices equals 2.

Lastly, I'm just going to end this with a reminder that this just doesnt seem real world to me. No computer I've ever seen is just going to send 86byte packets, and on the opposite side of the spectrum rarely do two devices saturate themselves. Hopefully this helps somehow :(
KimputerConnect With a Mentor Commented:
You're thinking that adding more devices lowers your pps. However, by adding more devices you LOWER the maxium pps allocated for that device. But this is your way of thinking.

Here's my way of thinking:
You should have calculated the pps each device is using and have gotten the max allowed devices out of this calculations (25000 / pps_device_using = max_devices).
Your calculation of 100mbps/4320 ends up with a theoretical 23148 max devices if all devices use 4320 bits per second constantly. This is the number that decreases when you add more bytes, which is logical. Less max devices when using more bytes is not that hard to imagine.

While I can't finish your answer (because I don't know exactly how many pps each device is using), I can only guess that 45 devices with 4320 bits of data per second is probably never going overrun your NIC. My loose estimate is that your current design would hold up with 4000 devices.
I wouldn't even worry about saturating a network card until you implement the network. Unless you're designing an application, there's a lot more overhead than what you think. There's ARP broadcasts, NETBIOS broadcasts, and so much other things out there taking up packets in your network.

There's a few things here I'd like to add.
1) A 100Mbps full duplex allows for 100Mbps upstream and 100Mbps downstream.
2) PPS also depends on how big the packets are, again, unless you are building the application, you really can't calculate the size of the packet.

I've got a global application that 1200 users hit on a daily basis and I dont go above 15k pps. I build networks with 100 users all the time and PPS is not something I usually worry about. If you are worried about it though, I would implement the network and then monitor the network card afterwards. I'm sure there's plenty of free tools out there that would allow you to do this.
Never miss a deadline with

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

SRFAHEYConnect With a Mentor Author Commented:
You should have calculated the pps each device is using and have gotten the max allowed devices out of this calculations (25000 / pps_device_using = max_devices).


With you calculation I see: 25000 / 23148 pps  = 1.08 max device,   Correct?

We will say all the 45 devices  = 4320 bits @ 100Mbps = 23148 pps

Where do you get 4000 devices?
You change my calculation of " (25000 / pps_device_using = max_devices)"

to your own "25000 / 23148 pps  = 1.08 max device"

pps _device_using is an unknown. You made it to 23148pps, which you got from your own incorrect calculations

"We will say all the 45 devices  = 4320 bits @ 100Mbps = 23148 pps"

Forget this calculation please.

Just know from experience, that the bandwidth is sufficient, and that by rough estimation, the pps is a more limiting factor than bandwidth, but still sufficient. Thereby giving you the 4000 devices figure even it's a factor 10 times wrong (either up or down), you should not be worried about 45 or even 400 devices (which you probably won't even have).
SRFAHEYAuthor Commented:
Thanks for both answers. I feel Agonza 7 gave the best explanation. but I appreciate the initial help from Kimputer. both answers will help in getting a completed answer I need
All Courses

From novice to tech pro — start learning today.