Oh, now I understand !
It's an algorithm bug !
Kinda funny.
The data size is randomized.
And the speed limit is checked to see if bytes are available.
If not then a new data size is randomized.
So big data sizes never make it... because the thread runs so fast... the
bucket didn't have time to get full for a larger packet.
So that's why only smaller packets get through..
Hehe !
So algorithm has to change a little bit.
Initialize a random data size or so... keep trying to reserve the bytes from
the speed limit, when it's allowed to send... try to send it... and then it
doesn't matter if it was sent or not... because it passed the speed limit...
so then it's ok to initialize a new random data size.
This prevents illegal data size from holding things up as well... since a
new one would be generated
Bye,
Skybuck.