A method implemented by a switch in a software defined networking, SDN, network to monitor a service node communicatively coupled to the switch, the method comprising: generating a first flow entry that matches packets received from the service node; generating a second flow entry that matches packet received from the service node, wherein the second flow entry has a priority that is lower than a priority of the first flow entry; removing the first flow entry and transmitting a flow removed message to an SDN controller in response to a determination that the first flow entry has timed out, the flow removed message indicating that the switch has not received traffic from the service node for at least a predetermined period of time, wherein transmitting the flow removed message to the SDN controller indicates to the SDN controller that the first flow entry has been removed and indicates to the SDN controller that the service node or the communication path between the switch and the service node has potentially failed, causing the SDN controller to start explicit service node monitoring; performing explicit service node monitoring by forwarding ARP messages received from the SDN controller to the service node and forwarding ARP messages received back from the service node to the SDN controller, and wherein the switch is programmed by the SDN controller with an explicit service node monitoring flow entry to handle the explicit service node monitoring traffic; maintaining a statistic associated with the second flow entry; and transmitting a statistics trigger event message to the SDN controller in response to a determination that the statistic associated with the second flow entry exceeds a threshold value, the statistics trigger event message indicating that the switch is receiving traffic from the service node again, and wherein transmitting the statistics trigger event message indicates to the SDN controller that the service node or the communication path between the switch and the service node has potentially recovered from failure, causing the SDN controller to stop explicit service node monitoring, and which causes the switch to stop performing explicit service node monitoring. generating a first flow entry that matches packets received from the service node; generating a second flow entry that matches packet received from the service node, wherein the second flow entry has a priority that is lower than a priority of the first flow entry; removing the first flow entry and transmitting a flow removed message to an SDN controller in response to a determination that the first flow entry has timed out, the flow removed message indicating that the switch has not received traffic from the service node for at least a predetermined period of time, wherein transmitting the flow removed message to the SDN controller indicates to the SDN controller that the first flow entry has been removed and indicates to the SDN controller that the service node or the communication path between the switch and the service node has potentially failed, causing the SDN controller to start explicit service node monitoring; performing explicit service node monitoring by forwarding ARP messages received from the SDN controller to the service node and forwarding ARP messages received back from the service node to the SDN controller, and wherein the switch is programmed by the SDN controller with an explicit service node monitoring flow entry to handle the explicit service node monitoring traffic; maintaining a statistic associated with the second flow entry; and transmitting a statistics trigger event message to the SDN controller in response to a determination that the statistic associated with the second flow entry exceeds a threshold value, the statistics trigger event message indicating that the switch is receiving traffic from the service node again, and wherein transmitting the statistics trigger event message indicates to the SDN controller that the service node or the communication path between the switch and the service node has potentially recovered from failure, causing the SDN controller to stop explicit service node monitoring, and which causes the switch to stop performing explicit service node monitoring.