  Software-Defined Networking (SDN) introduces a centralized network control
and management by separating the data plane from the control plane which
facilitates traffic flow monitoring, security analysis and policy formulation.
However, it is challenging to choose a proper degree of traffic flow handling
granularity while proactively protecting forwarding devices from getting
overloaded. In this paper, we propose a novel traffic flow matching control
framework called Q-DATA that applies reinforcement learning in order to enhance
the traffic flow monitoring performance in SDN based networks and prevent
traffic forwarding performance degradation. We first describe and analyse an
SDN-based traffic flow matching control system that applies a reinforcement
learning approach based on Q-learning algorithm in order to maximize the
traffic flow granularity. It also considers the forwarding performance status
of the SDN switches derived from a Support Vector Machine based algorithm.
Next, we outline the Q-DATA framework that incorporates the optimal traffic
flow matching policy derived from the traffic flow matching control system to
efficiently provide the most detailed traffic flow information that other
mechanisms require. Our novel approach is realized as a REST SDN application
and evaluated in an SDN environment. Through comprehensive experiments, the
results show that---compared to the default behavior of common SDN controllers
and to our previous DATA mechanism---the new Q-DATA framework yields a
remarkable improvement in terms of traffic forwarding performance degradation
protection of SDN switches while still providing the most detailed traffic flow
information on demand.
