Machine Learning Based Proactive Flow Entry Deletion for OpenFlow
Hemin Yang, George F. Riley · 2018
OpenFlow is the de facto southbound interface for Software Defined Networking (SDN), which defines the interactions between the control plane and data plane. In OpenFlow, flow table is significant in packet forwarding. However, the capacity of the flow table is limited due to power, cost, and silicon area constraints. In this case, it is extremely important to efficiently manage flow tables. In this paper, we focus on one of the flow table managing mechanisms defined in OpenFlow, proactive flow entry deletion. This mechanism enables the controller to proactively delete flow entries in flow tables by explicitly sending specific OpenFlow messages to switches. The key challenge for this mechanism is to determine which flow entries should be removed. To address this challenge, we propose a machine learning based proactive flow entry deletion which can learn from the historical data of flow entries and thus predict the time when a flow entry will be last referred to. Based on the predictions, the flow entry with smallest last refer time will be deleted. Our simulations show that our proposal can achieve up to 23% fewer capacity misses compared with the random deletion and First-In-First-Out (FIFO) deletion policies, as well as a slightly decreased (2% ~ 8%) overhead.