Configurable Network Virtualization for Mobile App Testing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Mobile app developers face challenges in identifying bugs and usability issues due to testing under inconsistent network conditions, leading to potential degradation in user experience as real-world network variations are not accurately simulated during testing.

Innovation Solution

The implementation of configurable network virtualization through dynamic traffic adjustment, which allows emulating various network conditions by modifying network traffic characteristics such as bandwidth, latency, and packet loss, enabling apps to be tested under controlled and diverse network scenarios without field testing.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If network traffic is modified to emulate diverse network conditions, then testing coverage under real-world scenarios is improved, but system complexity increases

Engineering Contradiction:
Improvetesting coverageVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

A network virtualization layer is introduced as an intermediary between the application and the physical network infrastructure. This layer captures real network traffic, profiles its characteristics, and creates virtual network environments that replicate diverse network conditions. The intermediary approach allows comprehensive testing coverage without requiring physical presence in multiple network environments, thereby managing system complexity while improving adaptability.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

Instead of physically connecting to multiple diverse networks for testing, the system creates accurate copies of various network conditions by profiling real network traffic and replicating its characteristics in virtual environments. This copying approach enables testing under diverse network scenarios (different bandwidths, latencies, packet loss rates) using a single physical connection, significantly improving testing coverage while avoiding the complexity of managing multiple physical network interfaces.

Inventive Principle:
Principle #26Copying

2Reliability

If dynamic traffic adjustment is implemented to simulate various network profiles, then application reliability under different conditions is improved, but measurement precision requirements increase

Engineering Contradiction:
Improveapplication reliabilityVSAvoidnetwork profile accuracy
Core Design Contradiction:
ReliabilityVSMeasurement precision

Solution Approach 1:

The system performs preliminary network profiling by capturing and analyzing real network traffic characteristics before actual application testing begins. Network profiles are created in advance by monitoring bandwidth, latency, packet loss, and other parameters from actual network connections. This preliminary action ensures that when applications are tested under virtualized network conditions, the simulated environments accurately reflect real-world scenarios, thereby improving application reliability without requiring excessive measurement precision during the testing phase itself.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system implements feedback mechanisms where network traffic is continuously monitored and profiled, and this information is used to dynamically adjust and refine the virtual network profiles. The feedback loop ensures that the virtualized network conditions remain accurate representations of real network behavior, improving application reliability testing while managing measurement precision requirements through iterative refinement rather than demanding ultra-precise initial measurements.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9113358B1Configurable network virtualization
Publication Date: 2015.08.18 GOOGLE LLC
  • US9113358B1 patent drawing
  • US9113358B1 patent drawing
  • US9113358B1 patent drawing

AI summary

A network profile describes one or more characteristics of a network including bandwidth, latency, rate of packet loss, duplication, corruption, or reordering, and so forth. Using the network profile, one or more adjustments are made to network traffic between a server device and an application executing on a client device. These adjustments virtualize the profiled network and emulate how the profiled network affects traffic. Such virtualization may enable an application to be tested under different network conditions corresponding to different network profiles.