INTELLIGENT CONNECTION MANAGEMENT FOR MULTIPLE INTERFACES
First Claim
1. One or more hardware-based computer-readable memory devices storing instructions which, when executed by one or more processors disposed in a computing device, cause the computing device to:
- measure Quality of Service (QoS) of network bandwidth provided by a connection between the computing device and a current communication network;
monitor network bandwidth utilization by each of one or more applications executing on the computing device, the monitoring being performed per application feature;
compare the measured QoS of the current communication network with QoS requirements for the application feature; and
switch from the connection to the current communication network to a connection to an alternative communication network based on the comparison.
1 Assignment
0 Petitions
Accused Products
Abstract
A computing device supports multiple different network interfaces providing respective connections to, for example WiFi, short-range and near field communication (NFC), and mobile data (e.g., cellular) networks, over which bandwidth-consuming applications may operate. An operating system (OS) instantiated on the computing device supports a connection manager configured to dynamically and concurrently optimize utilization of the available network connections across the executing applications to provide seamless user experiences on the device while meeting various user objectives. These objectives may include, for example, maximizing device battery life, minimizing costs associated with use of mobile data plans and other metered network connections, minimizing glitches, data buffering, and disruptions (e.g., when streaming multimedia, downloading files, and engaging in real-time communications like voice and video calls), and transparency of operation as the diverse network connections are utilized.
13 Citations
20 Claims
-
1. One or more hardware-based computer-readable memory devices storing instructions which, when executed by one or more processors disposed in a computing device, cause the computing device to:
-
measure Quality of Service (QoS) of network bandwidth provided by a connection between the computing device and a current communication network; monitor network bandwidth utilization by each of one or more applications executing on the computing device, the monitoring being performed per application feature; compare the measured QoS of the current communication network with QoS requirements for the application feature; and switch from the connection to the current communication network to a connection to an alternative communication network based on the comparison. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for optimizing utilization of a plurality of network connections available on a computing device having a user interface configured for interacting with a user, comprising:
-
determining a current state of each of the available network connections; identifying Quality of Service (QoS) requirements for one or more bandwidth-consuming applications executing on the computing device; mapping the identified QoS requirements for each application to the available network connections based on the current state; observing that a bandwidth-consuming application is accessing network bandwidth; and selecting a network connection to provide the network bandwidth using the mapped QoS requirements. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14)
-
-
15. A computing device, comprising:
-
one or more processors; a user interface configured to support interactions between the computing device and a user of the computing device; one or more sensors configured for sensing an environment surrounding the computing device; a plurality of network interfaces supporting respective network connections to different communication networks providing network bandwidth; and one or more hardware-based memory devices storing executable code associated with one or more network bandwidth-consuming applications and further storing computer-readable instructions which, when executed by the one or more processors, cause the computing device to enable applications executing on the computing device to register Quality of Service (QoS) criteria for application features that use network bandwidth; maintain context-awareness of contextual data through direct sensing by the one or more sensors, the contextual data describing interactions between the user, applications, and the surrounding environment; measure performance of available network connections to identify network connections that meet QoS criteria of registered applications; determine that a registered application is requesting network bandwidth, and utilize the contextual data to select a network connection from among the identified network connections to satisfy the network bandwidth request. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification