Application Threads for Network Testing Script Execution

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional network testing systems face performance limitations due to excessive resource consumption when executing a large number of threads, which restricts the number of test scripts that can be executed, especially when stressing devices under heavy network traffic conditions.

Innovation Solution

The use of application threads instead of traditional operating system threads, along with an I/O multiplexor and protocol engines, allows for more efficient execution of test scripts by reducing memory and processor requirements, enabling the concurrent execution of many more scripts to fully stress devices and maximize bandwidth usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If traditional operating system threads are used to execute test scripts, then the system can handle multiple test scenarios, but resource consumption (memory and processor) increases excessively

Engineering Contradiction:
Improvenumber of test scripts executedVSAvoidresource consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by moving object

Solution Approach 1:

The patent segments the thread execution model by creating a master thread that manages multiple worker threads. Each worker thread is dedicated to executing specific test scripts, allowing the system to divide and conquer the resource management problem. This segmentation enables better control over memory and processor usage while maintaining the ability to execute multiple test scripts concurrently.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The master thread serves multiple functions: it coordinates worker threads, manages test script distribution, and handles result aggregation. This multi-functionality reduces the need for separate management threads for each test script, thereby reducing overall resource consumption while maintaining versatility in executing multiple test scenarios.

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

2Productivity

If more test scripts are executed concurrently to stress devices, then testing coverage improves, but system performance degrades due to resource limitations

Engineering Contradiction:
Improvetesting coverageVSAvoidsystem performance
Core Design Contradiction:
ProductivityVSPower

Solution Approach 1:

The patent implements continuous test script execution through a coordinated master-worker thread architecture. The master thread continuously assigns test scripts to available worker threads, ensuring that testing coverage is maximized without idle time. This continuous action maintains high productivity while managing system resources efficiently through the structured thread pool.

Inventive Principle:
Principle #20Continuity of useful action

Solution Approach 2:

The system employs a pool of worker threads that can be dynamically adjusted based on system capacity. Rather than creating threads for every possible test script simultaneously, the system activates only the necessary number of worker threads based on available resources, achieving partial action that balances productivity with system performance.

Inventive Principle:
Principle #16Partial or excessive action

3Speed

If the number of threads is increased to handle more test scripts, then concurrent execution capability improves, but memory and processor requirements increase

Engineering Contradiction:
Improveconcurrent execution capabilityVSAvoidmemory and processor requirements
Core Design Contradiction:
SpeedVSQuantity of substance

Solution Approach 1:

The patent implements a dynamic thread pool where the number and state of worker threads can be adjusted based on system conditions. Threads can be created, suspended, or terminated dynamically to match the current testing workload and system capacity. This dynamic approach maintains high concurrent execution capability while adapting memory and processor requirements to actual needs rather than maintaining a fixed high thread count.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS8244891B2Simulating a large number of users
Publication Date: 2012.08.14 KEYSIGHT TECH SINGAPORE (SALES) PTE LTD
  • US8244891B2 patent drawing
  • US8244891B2 patent drawing
  • US8244891B2 patent drawing

AI summary

Simulating a large number of users is described. A method may include receiving a test script including a plurality of commands and invoking a script interpreter. An application thread may be launched to execute the test script. A protocol engine may be invoked for each of the commands in the test script such that each protocol engine has an associated command. Each protocol engine may execute its associated command. A system on which the method may be executed may include one or more chassis or computing devices having one or more network cards. The chassis and/or computing devices may be connected to one or more networks.