I. Introduction
Software Defined Networks (SDN) provide a new and novel way to manage networks. In SDN, switches do not process incoming packets - they simply look for a match in their forwarding tables. If there is no match, packets are sent to the controller for processing. The controller is the operating system of SDN. It processes the packets and decides whether the packets will be forwarded in the switch or dropped. By applying this procedure, SDN separates the forwarding and the processing planes [1]. If the connection between the switches and the controller is lost, the network will lose its processing plane. This means that packet processing is no longer done in the controller and by losing the controller, the SDN architecture is lost.