A non-transitory computer-readable medium storing source code that, when executed by a processor, performs a method in a SDN (Software-Defined Networking) controller that automatically provisions a plurality of access points in a wireless communication network by coordinating data plane behavior of the plurality of access points to steer clients to preferred access points, the method comprising the steps of:
- receiving a policy concerning traffic flow for the wireless communication network;
- centrally monitoring data plane traffic flow at each of the plurality of access points distributed around the wireless communication network;
- determining that the data plane traffic flow at a first access point from the plurality of access point needs to be reduced based on the data plane traffic flow relative to the policy;
- steering at least one station to a second access point of the plurality of access point in order to adjust the data plane traffic flow by generating one more OpenFlow rules directed at how packets concerning the at least one station are handled by the first access point in the data planes in order to compel the at least one station to disconnect from the first access point;
- and
- transmitting the one or more OpenFlow rules for implementation at a data pane of the first access point.