1. A method for determining, at a network controller, a health score of a server, the method comprising: receiving, from a client, a request for a service session with a server of a plurality of servers, each of the plurality of servers being in communication with one or more servicing nodes of a plurality of servicing nodes; directing the plurality of servicing nodes in communication with the network controller to determine a health score of at least one of the plurality of servers, each of the plurality of servicing nodes being configured to determine the health score of the one or more of the plurality of servers, the determining of the health score by each of the plurality of servicing nodes including determining a server health score of the one or more of the plurality of servers based at least on reachability of the one or more of the plurality of servers, the reachability being determined by sending a query to the one or more of the plurality of servers and examining whether the one or more of the plurality of servers respond to the query; receiving the health score of the at least one server from each of the plurality of servicing nodes; calculating an aggregated health score for each server of the plurality of servers using the received health scores from the plurality of servicing nodes; and sending the aggregated health score to a servicing node of the plurality of servicing nodes, the servicing node being designated to process the service session by selecting, based at least on the aggregated health score, one of the plurality of servers for providing the service associated with the service session and directing the request for the service session to the selected one of the plurality of servers, wherein the servicing node designated to process the service session is not one of the plurality of servicing nodes that reported the health score of the one of the plurality of servers to the network controller.