Maximum maximum packets per second on 10 megabit ethernet ? 1.250.000 / 1538 = 812,743823 ???


I am trying to figure out how many maximum sized packets can be sent/received over 10 megabit ethernet per second in theory (or ideal circumstances :D)

They say 10 megabit ethernet runs at exactly 10.000.000 bits per second. (?)

The maximum payload size is 1500 bytes. The overhead is: 12 gap + 8 preamble + 14 header + 4 trailer = 38 bytes.

So the maximum size of an ethernet packet is 1538 bytes.

10.000.000 bits / 8 bits = 1.250.000 bytes

1.250.000 bytes / 1538 bytes = 812,74382314694408322496749024707

I am kinda surprised that it's not a whole number. I was excepting a whole number for maximum efficiency :D

Am I missing something ? maybe extra overhead bits ?

Bye, Skybuck.

Reply to
Skybuck Flying
Loading thread data ...

Maybe add in 4 byte for a VLAN tag header.

Huh? Why would you gain efficiency by having an integral number of packets fit into one second of realtime? What does Ethernet know about real time seconds? I just don't see it.

best regards Patrick

Reply to
Patrick Schaaf

The difference in efficiency is because the per-bit overhead is higher for the 813th frame. Your analysis accounts for the full 38-byte overhead even though only a total of 1144 bytes were sent in that frame. The analysis of the website assumes the per-bit overhead is always that encountered for a 1538-byte frame.

To get the same result as the website, you would need to reduce your overhead for the last frame to 38/1538*1144 bytes. Alternatively, you could go through the analysis for a larger interval than 1 second, say 1000000 seconds, where you have a steady stream of 1538 byte packets until the very end of the measurement interval; i.e. a frame smaller than 1538 bytes is sent only at the end of the 1000000th second.

Nice puzzle :-)

Ano> > "Skybuck Fly> >

packets only.

Reply to

Again, what makes one second so special, that would cut the length of the 813th packet so it falls on a second-boundary in realtime?

In reality, the 813th packet will also be full-size, and sending all 813 packets will take slightly more than a single second. So what? who cares?

best regards Patrick

Reply to
Patrick Schaaf

Nope that gives:

1.250.000 bytes / 1542 bytes = 810.6355382619974059662775616083

The maximum ammount of bits that can be sent per second is 10.000.000 bits.

To minimize overhead it would make sense to send maximum sized packets only.

In this case 812 packets * 1538 bytes = 1248856 bytes.

Or 1248856 * 8 bits = 9990848 bits.

The last (813th) packet would have to be:

1.250.000 - 1.248.856 = 1144 bytes.

The interval between the first 812 packets would have to be:

1538 bytes * 8 bits = 12304 bits.

1 bit takes 1 second / 10.000.000 bits = 0.0000001 seconds

So 12304 bits * 0.0000001 = 0.0012304 seconds

or 0.0012304 * 1000 = 1.2304 milliseconds per bit

So after (812 packets * 1.2304 milliseconds =) 999.0848 milliseconds the

813th packet would have to be sent ;)

1144 * 8 bits = 9152 bits for the 813 th packet.

9152 bits * 0.0000001 = 0.0009152 seconds

or (0.0009152 * 1000 =) 0.9152 milliseconds to send it.

check: 999.0848 + 0.9152 = 1000 milliseconds ;)

Exactly one second ;)

Let's see how much real ethernet payload/data can be sent per second ;)

(812 * 1500) + (1144 - 38) = 1218000 + 1106 = 1219106 bytes

1219106 bytes * 8 bits = 9.752.848 bits of payload ;)

(9.752.848 / 10.000.000) * 100% = 97.52848%

97.52848% efficieny ;) 2.47152% overhead :D

1.219.106 / 1024 = 1190.533203125 KByte

1.219.106 / (1024*1024) = 1.1626300811767578125 Mbyte / sec :D

The funny thing is that the figures on this website are therefore not correct ;)

formatting link
The website reads: " Ethernet Payload data rates are thus: (1500/(38+1500)) * 100 = 97.529258777633289986996098829649 without 802.1q tags. "

Websites 97.5293 % versus my 97.52848% ;)

De website is assuming 97.5293 efficiency.

Bogus answer: maximum payload bits per second:

0.97529258777633289986996098829649 * 10.000.000 bits = 9752925.8777633289986996098829649 (half a bit? yeah right ;) :D )

Real answer: maximum payload bits per second:

9752848 bits


9752925.8777633289986996098829649 - 9752848 = 77.877763328998699609882964889467 bits.

The amazing thing is ;) de website is off by about 77.8 bits ;D

Bye, Skybuck.

Reply to
Skybuck Flying

Why would it be a whole number? There was no intended relationship between packet size and bit rate. Try using your argument on the size of cars that can travel on a highway, to see if it stands up.

Reply to
James Knott

The packets are asynchronous, but the data within a packet is synchronous.

Reply to
James Knott

In article , Skybuck Flying wrote: :I am trying to figure out how many maximum sized packets can be :sent/received over 10 megabit ethernet per second in theory (or ideal :circumstances :D)

:They say 10 megabit ethernet runs at exactly 10.000.000 bits per second. (?)

That's the first mistake. Any ethernet implimentation you are likely to encounter runs asynchronous, no synchronous. 1E7 is the -maximum- data rate, which will never be achieved in practice. Especially at

10 megabit ethernet, if no station has anything to send, then the line is quiet. When a station has something to send and the line has been quiet for at least the inter-frame gap, then the station just starts sending, rather than waiting to synchronize with a clock.

Synchronous ethernet is a lot harder, because you have to synchronize the bit edges of all the stations on the segment, even though there are different propogation delays due to distance, and even though there may be repeaters along the way.

:1.250.000 bytes / 1538 bytes = 812,74382314694408322496749024707

:I am kinda surprised that it's not a whole number.

Then you will be even more surprised when you look at 100 megabit per second or gigabit speeds, which send multiple bits per symbol and which have error correction built in. 100 Mbps for example sends in chunks of 4 bits of data, encoded as 5 bits.

:I was excepting a whole :number for maximum efficiency :D

That statement presumes that all of the systems are running with the same clock (to within a fraction of a bit time) and that there is something special about 1 second boundaries. Once you give up on sychronizing the systems together then you can see that the data keeps running, and that expecting a whole number of packets per second is about as useful as expecting that on a car that is driving at 100 kilometers per hour, that each wheel will make a whole number of revolutions per second.

Reply to
Walter Roberson Forums website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.