Container Time Accounting for Network Packet Processing Limits
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In cloud computing, containers face challenges in isolating and accurately accounting for system resource usage due to shared operating systems, leading to incorrect resource allocation and unfair enforcement of limits, especially during non-process execution contexts.
Innovation Solution
A method and system that determine and enforce container time limits by calculating the processor packet receipt time and updating the total container time remaining, ensuring accurate accounting and enforcement of both process and non-process execution, using a scheduler with a container time accounting unit, interrupt processing unit, and container time enforcement unit to manage network stack operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If containers share the same operating system and system resources, then rapid provisioning and instantiation are achieved, but isolation from other containers becomes difficult and resource accounting becomes inaccurate
Solution Approach 1:
The patent segments the accounting process into distinct components: a container time accounting unit that tracks process execution time, an interrupt processing unit that captures non-process execution time, and a enforcement unit that applies limits. This segmentation enables precise measurement of both process and non-process context resource usage, resolving the measurement precision issue while maintaining the shared OS architecture that enables rapid provisioning.
2Productivity
If containers share system resources, then more containers can execute on the system, but correct enforcement of resource usage limits becomes difficult
Solution Approach 1:
The patent implements feedback mechanisms where the container time accounting unit continuously monitors resource usage and provides real-time information to the enforcement unit. The enforcement unit uses this feedback to dynamically enforce resource limits by throttling or terminating container processes when limits are exceeded. This feedback loop ensures fair and reliable limit enforcement while allowing high container density through efficient resource sharing.
3Device complexity
If non-process execution contexts are not accounted for, then accounting complexity is reduced, but resource allocation becomes incorrect and unfair
Solution Approach 1:
The patent applies preliminary action by having the interrupt processing unit proactively capture and account for non-process execution time before it affects resource allocation decisions. The system pre-tracks time spent in interrupt handlers, system calls, and kernel operations, then incorporates this pre-captured data into the overall resource accounting. This approach maintains measurement precision without significantly increasing complexity, as the preliminary tracking is integrated into the existing accounting framework.
Data Source
AI summary
Utilizing a computing device to determine and enforce limits on cloud computing containers receiving data over a network. A determination is made of total container time remaining available for a first container to execute in a computing environment. Processor packet receipt time is determined for receiving and processing of a packet or a batch of packets via a network stack associated with the computing device. An updated total container time remaining is calculated for the first container accounting for the processor packet receipt time. The updated total container time remaining is enforced by dropping a subsequent packet or batch of packets received at the network stack if the updated total container time remaining is insufficient.


