Per-Request Resource Usage Metering in Distributed Network Services

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems lack effective resource usage metering across distributed environments, making it difficult to accurately monitor and charge users for their resource consumption in network-accessible software services, which is essential for billing, capacity planning, and quota enforcement.

Innovation Solution

The technique involves correlating per-process accounting information with request logs to generate per-request resource usage metrics, using a monitoring agent to collect and report resource usage data, and employing a correlator to assign usage to specific requests based on heuristic methods, such as even or weighted allocation, to ensure accurate billing and usage tracking.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If per-process accounting information is used for resource monitoring, then resource usage can be tracked at the process level, but it cannot accurately attribute resource consumption to individual users or requests

Engineering Contradiction:
Improveresource usage attribution precisionVSAvoidmonitoring system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent segments resource usage tracking from the process level to the request level by introducing request identifiers that are embedded in process accounting records. This segmentation allows precise attribution of resource consumption to individual user requests while maintaining the existing per-process accounting infrastructure, thereby improving measurement precision without proportionally increasing system complexity.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces request identifiers as an intermediary mechanism that links user requests to process accounting information. This intermediary enables the correlation between service requests and resource consumption without requiring fundamental changes to the underlying per-process accounting system, thus achieving precise user-level attribution while managing complexity.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Loss of information

If request logging is implemented to track service requests, then individual request information can be captured, but it cannot be correlated with actual resource consumption data

Engineering Contradiction:
Improverequest-resource correlation informationVSAvoiddata correlation system complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The patent merges request logging data with process accounting information by correlating them through request identifiers. This merging combines the strengths of both approaches: request-level detail from logging and resource consumption data from accounting, enabling complete request-resource correlation while using existing infrastructure to manage complexity.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent implements a feedback mechanism where request identifiers from service requests are fed into the process accounting system, and the resulting correlated data is fed back to enable accurate resource attribution. This feedback loop ensures that request information and resource consumption data are continuously aligned, preventing information loss while maintaining manageable system complexity through iterative correlation.

Inventive Principle:
Principle #23Feedback

3Measurement precision

If resource usage is monitored at the process level in distributed environments, then system-wide resource consumption can be tracked, but accurate per-request metrics cannot be obtained due to concurrent requests

Engineering Contradiction:
Improveper-request resource usage precisionVSAvoidrequest processing throughput
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent applies preliminary action by embedding request identifiers in process accounting records at the moment a request is received, before the request is fully processed. This preliminary tagging ensures that even in concurrent environments, each request's resource consumption can be accurately traced back to its identifier, achieving precise per-request metrics without impeding request processing throughput.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS7707080B2Resource usage metering of network services
Publication Date: 2010.04.27 X CORP
  • US7707080B2 patent drawing
  • US7707080B2 patent drawing
  • US7707080B2 patent drawing

AI summary

Process accounting information is recorded, together with service request logs written by e-service applications. These two sets of information are aggregated and correlated, to generate usage metrics relating to resource usage for individual service requests. Such per-request information can be used as a basis for charging users making such requests. Services requests often simultaneously consume computing resources, in which case resource usage is proportionally divided between such simultaneous service requests.