Is it possible to limit the speed of the Internet through Delphi?

Asked

Viewed 296 times

0

Is it possible to limit the speed of the Internet through Delphi? Example, if my internet is 120 KB/s I can reduce it to 10 KB/s on my own computer?

  • Limit download speed within the application in Delphi or the whole computer?

1 answer

3

The obvious answer is yes, if your application takes control of all incoming packets in your network interface before they are processed you can control and take action (block, limit speed, redirect, etc).

The basic idea of a bandwidth limiter is quite simple, you line up the incoming packets in a Buffer, the bandwidth is simply the time each packet gets in this buffer before it is processed, this we say that the longer the waiting time of the smaller package will be its transfer rate and of course the reciprocal is true, an easy analogy to visualize is you imagine a tank full of water, take the tank cover to drain water, the time it will take for the water to drain will depend on the size of the drain hole.

You will need to know the speed of your network card (flow hole) in order to calculate the waiting time of each packet in the buffer. Of course this is an extremely simplistic approach just so you can get a look at the basics of how any bandwidth limiter works. Remembering that this type of implementation limits the entire network card, so internet and internal network will be treated the same way if you want to keep your internal network outside the bandwidth limit identify all packets of your internal IP class and keep them out of the queue.

Browser other questions tagged

You are not signed in. Login or sign up in order to post.