[Existing problem]
Network congestion can be very common in large data centers generating huge traffic from multiple hosts. Though each hosts can use IP header TOS ECN bit functionality to implement explicit congestion notification [1]_ but this will be a redundant effort.
[Proposal]
This proposal talks about achieving ECN on behalf of each host. This will help in making the solution centralized and can be done per tenant level. In addition to this traffic classification for applying ECN functionality can also be achieved via specific filtering rules, if required. Almost all the leading vendors support this option for better QoS [2]_.
Existing QoS framework is limited only to bandwidth rate limiting and be extend for supporting explicit congestion notification (RFC 3168 [3]_).
[Benefits]
- Enhancement to the existing QoS functionality.
[What is the enhancement?]
- Add ECN support to the QoS extension.
- Add additional command lines for realizing ECN functionality.
- Add OVS support.
[Related information]
[1] ECN Wiki
http://en.wikipedia.org/wiki/Explicit_Congestion_Notification
[2] QoS
https://review.openstack.org/#/c/88599/
[3] RFC 3168
https://tools.ietf.org/html/rfc3168
[4] Specification
https://blueprints.launchpad.net/neutron/+spec/explicit-congestion-notification
[5] Specification Discussion: https://etherpad.openstack.org/p/QoS_ECN
[6] OpenVSwitch support for ECN : http://openvswitch.org/support/dist-docs/ovs-ofctl.8.txt
[7] Etherpad Link : https://etherpad.openstack.org/p/QoS_ECN
I'm not sure I get the full picture. Could you explain a little bit of a flow of how admin would configure this, what kinds of congestion would it detect, and how admin would see them, or what would happen when ECN bit is on?