1. A method of transmitting and receiving data to and from a multi-homing network device to a data network, the method comprising: defining a network policy including one or more criteria to identify a set of data interfaces available to be used by an application to transmit and receive data, wherein the set of data interfaces includes two or more data interfaces; transmitting the network policy to a routing module; receiving a route scope from the routing module, wherein the route scope identifies a subset of the set of data interfaces that satisfy the network policy, and wherein the subset of the set of data interfaces includes a preferred data interface and a next preferred data interface; storing the received route scope; and after the route scope is stored: determining whether the preferred data interface is available; and opening a first connection via the next preferred data interface when the preferred data interface is unavailable, wherein a packet associated with the application is processed for communication via the next preferred data interface.