Suppose two entities in a communication networks (sender and receiver) are connected with a tube so that water can be pumped from the sender to the receiver. If we also assume that between sender and receiver there is a tank with some finite capacity and possibly a drop rate (the tank leaks under high flow conditions or similar) the systems becomes very similar, if not identical, to the leaky bucket model.
My question is this: if a communication system can be described with this model, is there anything from fluid dynamics or other areas of physics I can use to design an algorithm that adapts the rate of the flow (i.e., when the transmission rate is to high, the tank gets congested and drops packet). I am not a physicist, so I will list down the major assumptions:
- feedback from receiver to sender exists and can be assumed error-free. Delay in feedback also exists, but it can be assumed constant, for simplicity.
- the algorithm works with packets in discrete time and needs to be as simple as possible.
- the receiver has a buffer that can store up to N packets (N is fixed).
- the sender sends packets at a fixed rate. However, the rate can be changed, based on the feedback from the receiver, or the receiver may impose to reduce the transmission rate.
- the preferred mode is that the receiver decides whether to change transmission rate and, if so, inform the sender via feedback.