Remote Debugging Proxy for Low-Bandwidth Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional remote debugging processes are hindered by slow connection speeds and high response times due to the need for numerous roundtrip communications across a low-bandwidth boundary between the local and remote systems, leading to inefficient debugging operations.

Innovation Solution

A remote debugging proxy system is introduced, which reroutes communications through local and remote proxy engines, allowing the remote side proxy to collect and compress context-dependent information, and the local side proxy to cache this information, thereby reducing the need for multiple roundtrip requests and improving response times.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional remote debugging protocol is used with roundtrip request-response cycles, then debugging can be performed remotely across systems, but the debugging process becomes slow and time-intensive due to low bandwidth and high response time

Engineering Contradiction:
Improveremote debugging capabilityVSAvoiddebugging speed
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by having the remote debugger send multiple debug commands in advance to the remote virtual machine before needing responses. This allows the virtual machine to execute these commands and prepare results ahead of time, reducing the need for slow roundtrip communications during the actual debugging process.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The debugging process is segmented into two distinct phases: a preliminary phase where commands are sent and executed in advance, and a response phase where results are retrieved. This segmentation allows the system to decouple the time-consuming remote execution from the interactive debugging workflow, improving overall debugging speed.

Inventive Principle:
Principle #1Segmentation

2Loss of information

If multiple roundtrip communications are performed across the boundary between local and remote systems, then complete debugging information can be obtained, but the response time increases and debugging efficiency decreases

Engineering Contradiction:
Improvedebugging information completenessVSAvoidresponse time
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The system performs preliminary actions by having the remote debugger send multiple debug commands in advance to the remote virtual machine before needing responses. This allows the virtual machine to execute these commands and prepare results ahead of time, reducing the need for slow roundtrip communications during the actual debugging process.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates copies of debug commands and sends them in advance to the remote virtual machine. These command copies are executed remotely while the original debugging session continues locally, allowing information to be retrieved without additional roundtrip delays.

Inventive Principle:
Principle #26Copying

3Measurement precision

If every debug command requires a roundtrip request and response cycle, then accurate debugging information can be obtained, but the debugging process becomes extremely time intensive

Engineering Contradiction:
Improvedebugging information accuracyVSAvoiddebugging efficiency
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The system performs preliminary actions by having the remote debugger send multiple debug commands in advance to the remote virtual machine before needing responses. This allows the virtual machine to execute these commands and prepare results ahead of time, reducing the need for slow roundtrip communications during the actual debugging process.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system maintains continuity of useful action by overlapping command transmission, execution, and response retrieval. While the virtual machine executes preliminary commands in the background, the debugging session continues with other operations, ensuring that useful debugging work is performed continuously without idle roundtrip delays.

Inventive Principle:
Principle #20Continuity of useful action

Data Source

PatentUS8806442B2Remote debugging proxy
Publication Date: 2014.08.12 SAP SE
  • US8806442B2 patent drawing
  • US8806442B2 patent drawing
  • US8806442B2 patent drawing

AI summary

An apparatus and method for a remote debugging proxy. An embodiment of a method for debugging a system includes receiving notification of an event regarding a target system at a first proxy component, requesting information from the target computing system regarding the event, and receiving the information from the target computing system. The event notification is transferred to a debugging component via a second proxy component, and the requested information is transferred to the second proxy component.