Docker technology makes it easier to contain an application and makes it easier to deploy and run containers either in data center or in a Cloud. Native Docker run command has various options to manage container resources like CPU, Memory, Disk but there is no option to manage network resource utilization. Effective management of network resources will lead to better utilization of underlying hardware and better performance isolation. Docker has no option to manage the network bandwidth based on per container at present.
Proposing a method to limit the container network bandwidth based on container id dynamically. It can limit the egress and ingress traffic based on containers public facing port(hostport) or if container hasn't explicitly exposed a port then it can limit n/w bandwidth based on containers net_cls cgroup's classid.
Also this can be useful to SWARM to schedule the containers based on the available network bandwidth.
Please find more details about this feature and demo of the implementation in the following link and provide feedback
https://github.com/shivacherukuri/Docker-Network-Bandwidth
Thanks,
Siva