Usage Billing for Hosted Applications via Isolated Environments

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems fail to provide effective application isolation and usage billing for hosted applications on commodity operating systems like Windows and Linux, requiring customizations or proprietary infrastructure, and do not address the challenges of cloud computing environments where applications are dynamically assigned and accessed remotely.

Innovation Solution

A system and method for usage billing of hosted applications that pre-configures applications within isolated environments on central servers, allowing remote access without local installation, using commodity operating systems and standard applications, with no need for virtual machines or proprietary protocols, and provides fine-grained billing based on various metrics through a two-way authentication subsystem and encryption.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If application isolation is implemented using virtual machines or proprietary infrastructure, then application isolation and security are improved, but device complexity and infrastructure cost increase

Engineering Contradiction:
Improveapplication isolationVSAvoidinfrastructure complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the application environment into isolated containers that run on commodity operating systems without requiring full virtual machines. Each application is isolated through process-level separation and resource control mechanisms, achieving application isolation while avoiding the complexity of virtualized infrastructure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces an intermediary layer (application isolation mechanism) that sits between the commodity operating system and the hosted applications. This intermediary provides isolation and security functions without requiring proprietary infrastructure, mediating between standard OS capabilities and isolation requirements.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If usage billing is implemented for hosted applications, then billing accuracy is improved, but system complexity and measurement difficulty increase

Engineering Contradiction:
Improveusage billing accuracyVSAvoidbilling system complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent implements feedback mechanisms where usage metrics are continuously collected from isolated applications and fed back to the billing system. This enables accurate usage-based billing by tracking resource consumption, transaction volumes, and other metrics while maintaining a manageable billing system architecture.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent enables applications to self-report their usage metrics through instrumentation within the isolated environment. This self-service approach simplifies the billing system complexity by having applications automatically provide accurate usage data without requiring complex external measurement and monitoring infrastructure.

Inventive Principle:
Principle #25Self-service

3Adaptability or versatility

If remote access to hosted applications is enabled, then accessibility and flexibility are improved, but security risks and authentication complexity increase

Engineering Contradiction:
Improveremote access capabilityVSAvoidauthentication subsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent implements a universal authentication subsystem that handles multiple authentication methods and security protocols through a single integrated mechanism. This enables remote access to hosted applications while managing security through a unified authentication framework rather than multiple separate systems.

Inventive Principle:
Principle #6Universality (Multi-functionality)

4Ease of manufacture

If commodity operating systems are used instead of custom operating systems, then ease of manufacture and compatibility are improved, but application isolation and security control become more difficult

Engineering Contradiction:
Improvesystem deployment easeVSAvoidapplication isolation
Core Design Contradiction:
Ease of manufactureVSReliability

Solution Approach 1:

The patent applies preliminary actions by pre-configuring isolation mechanisms and security controls within the commodity operating system environment before hosting applications. This preliminary setup ensures that application isolation and security controls are in place without requiring custom operating systems, enabling easy deployment while maintaining reliability.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10423944B1System and method for usage billing of hosted applications
Publication Date: 2019.09.24 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US10423944B1 patent drawing
  • US10423944B1 patent drawing
  • US10423944B1 patent drawing

AI summary

A system, method, and computer readable medium for usage billing of one or more hosted applications serving one or more clients. The hosted applications are contained within one or more isolated environments or run without isolated environments. The system may include usage billing based on one or more of resources open, amount of data flowing through resources, number of open files, number of transactions, number of concurrent users, number of processes, CPU utilization and memory usage, The system may further include a management interface where administrators may add, remove and configure isolated environments, configure client policies and credentials, and force upgrades. If using isolated environments, the isolated environments may be isolated from other applications and the host operating system on the clients and applications within the isolated environments may run without performing an application-installation on the client.