Application Update Scheduling Under Metered Data Budgets
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing auto-update policies for computing devices on metered networks often result in important applications not being updated due to data limitations, leading to security risks and application crashes, while prohibiting large updates altogether can leave devices insecure.
Innovation Solution
A computing device employs a machine learning model to prioritize application updates based on factors like update size, historical data usage, and user behavior, scheduling updates across metered and unmetered networks to optimize data usage and ensure timely, secure installations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If application updates are automatically pushed to computing devices without prioritization, then all applications can be updated, but important applications may not be updated successfully due to data limitations on metered networks
Solution Approach 1:
The patent segments application updates into different priority levels (first set and second set) based on importance and data requirements. The system divides updates into those that can be downloaded over metered networks and those requiring unmetered networks, ensuring critical updates receive priority data allocation while less critical updates are deferred or downloaded when more data is available.
Solution Approach 2:
The system dynamically changes the parameter of network selection based on application priority and data budget constraints. By adjusting which network type (metered or unmetered) is used for downloading updates based on the specific application's importance and the available data budget, the system optimizes both update success rates and data consumption.
2Reliability
If large application updates are prohibited from downloading over metered networks, then data overage fees are reduced, but devices may remain insecure due to inability to install critical security updates
Solution Approach 1:
The system performs preliminary classification of application updates to identify which ones are critical for security before the download process begins. By pre-identifying security-critical updates and allocating appropriate data budgets and network preferences in advance, the system ensures these updates can be installed even when they are large, while preventing non-critical large updates from consuming excessive data.
Solution Approach 2:
The system uses feedback from update metadata (including size, type, and priority information) to dynamically adjust download strategies. By analyzing feedback about which updates are security-critical versus optional, the system can make informed decisions about data allocation and network selection, ensuring security updates receive necessary resources while avoiding unnecessary data expenditure on non-essential updates.
3Reliability
If application updates are manually downloaded by users, then data usage can be controlled, but updates are not installed in a timely manner and users may miss critical security patches
Solution Approach 1:
The system implements self-service automatic update management that operates without requiring user intervention. The computing device autonomously monitors available data budgets, identifies appropriate updates to download, selects suitable networks, and executes downloads and installations automatically. This maintains timely security updates while eliminating the need for users to manually manage each update, with the system self-regulating data consumption based on configured budgets.
4Adaptability or versatility
If auto-update policies limit updates to certain network types or size thresholds, then data usage is controlled, but the system cannot adapt to varying update priorities and user needs
Solution Approach 1:
The system transitions from static update policies to dynamic, adaptive update management. By continuously evaluating application metadata, data budget status, network availability, and update priorities in real-time, the system dynamically adjusts which updates to download, when to download them, and which network to use. This dynamic approach allows the system to adapt to varying update priorities and conditions without requiring complex manual configuration.
Data Source
AI summary
A process according to the techniques described herein includes determining a set of available application updates for one or more applications installed at a computing device, and determining, based at least in part on an amount of metered data available during a time period and an amount of metered data used during the time period, an application update data budget for downloading application updates over a metered data network. lire process may also include determining a respective amount of data required to download each available application update from the set of available application updates, and scheduling, based the respective amounts of data required to download each available application update, a first set of application updates to be downloaded using the metered data, network or an unmetered data, network and a second set of application updates to be downloaded using only the unmetered data network.


