W
Hello,
I would like to create a PID controller to control the rate at which packets are transmitted. The objective is to reach the highest level of transmission that can be sustained without degraded performance. If transmission is too high, packets get dropped and you can end up going slower than if you transmitted at a lower rate. At different points in times, different transmission rates are sustainable depending upon other independent traffic that is sharing the network.
I have not written a PID before, but reading about it, I see that you have a control signal and an output signal, and the difference between these two is your error which is feed into the P/I/D parts to compute a new control setting.
Given this, I am a bit stumped. My control that I can vary is the rate of transmission, how many packets per unit of time. Getting a control rate matching the actual rate such that error approaches zero is not what I want to optimize, instead I wish to find the highest rate of transmission that can be sustained without a significant number of dropped packets (i.e. less than 2% are dropped.)
I'm not seeing how to adapt my goal to a PID loop and am hoping someone with more experience writing PID loops can point me in the right direction.
Thanks.
-William
I would like to create a PID controller to control the rate at which packets are transmitted. The objective is to reach the highest level of transmission that can be sustained without degraded performance. If transmission is too high, packets get dropped and you can end up going slower than if you transmitted at a lower rate. At different points in times, different transmission rates are sustainable depending upon other independent traffic that is sharing the network.
I have not written a PID before, but reading about it, I see that you have a control signal and an output signal, and the difference between these two is your error which is feed into the P/I/D parts to compute a new control setting.
Given this, I am a bit stumped. My control that I can vary is the rate of transmission, how many packets per unit of time. Getting a control rate matching the actual rate such that error approaches zero is not what I want to optimize, instead I wish to find the highest rate of transmission that can be sustained without a significant number of dropped packets (i.e. less than 2% are dropped.)
I'm not seeing how to adapt my goal to a PID loop and am hoping someone with more experience writing PID loops can point me in the right direction.
Thanks.
-William
