FWIW, the single paragraph about "fair allocation" could be its own thesis. This gets into quality of service, active queue management, leaky buckets, deficit round robin, and so on ad infinitum. I did quite a bit of work on this on multiple projects at multiple companies, and it's still one of the very few algorithmic areas that I still think about in retirement. I highly recommend following up on some of the terms above for some interesting explorations.