Patent ID: 8565766

Claim:
A method for selecting and establishing a connection to a network, the method comprising: receiving a network connection policy from a network server, wherein the network connection policy comprises one or more weighting factors; detecting a plurality of available networks; receiving, from a network server, historical network performance information about at least one of the plurality of available networks; measuring real-time network performance information associated with a particular one of the plurality of available networks, the network performance information including one or more network performance parameters; storing the real-time network performance information in memory; determining a real-time network score based on an application of the one or more weighting factors to the one or more network performance parameters; determining a network quality score associated with the particular one of the plurality of available networks based on the historical network performance information and the real-time network score; selecting the particular one of the plurality of available networks based on a comparison between the network quality score associated with the particular one of the plurality of available networks and at least one other network quality score associated with another one of the plurality of available networks; and establishing a connection with the particular one of the plurality of available networks based on the selection.