OpenFlow est un protocole réseau standard qui permet de réaliser une architecture Software-defined networking (SDN). Il est publié par l'Open Networking Foundation (en) (ONF).
Ce protocole est constitué d'instructions qui permet de programmer le plan de contrôle d’un équipement réseau.
Une instruction est définie par un pattern (IP source ou destination, adresse MAC, port, etc.) et une action correspondante (transmettre sur un port, rejeter le paquet, etc.).
Un livre blanc pose en 2008 les bases de ce protocole.
La dernière version de spécification d'un switch OpenFlow est 1.5.1.
Un rapport annuel de 2016 positionne OpenFlow dans une phase décisive :