Patent ID: 8671185

Claim:
A method comprising: monitoring and collecting, by a computing device, activities of a user in connection with the computing device and information of the computing device, wherein each activity is associated with at least one location; constructing a behavior profile for the user based at least in part on the activities of the user and the information of the computing device; in response to data to be transmitted to or from the computing device, wherein the computing device is associated with a current location, determining whether the computing device currently has a first network connection associated with the current location with a sufficiently high bandwidth; and if the computing device currently does not have a first network connection with a sufficiently high bandwidth, then: estimating, based at least in part on the locations associated with the activities of the user as represented by the behavior profile, a first future time when the computing device is likely to have a second network connection with a sufficiently high bandwidth; and scheduling transmission of the data at the first future time.