Client-Side Network Capacity Estimation Without Server Instrumentation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing techniques for measuring network capacity and bandwidth between a client and a server in cloud computing environments require server instrumentation, which is often not feasible, especially in cloud services where cooperation from the server is not allowed, and they can disrupt application performance or block application-layer traffic.

Innovation Solution

A network measurements agent on the client side performs measurements using TCP packets without requiring server instrumentation, allowing for estimation of network capacity and bandwidth by analyzing packet loss, delay, jitter, and available bandwidth using techniques like TCP Selective Acknowledgments (SACK) and probing with MTU-sized packets.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If server instrumentation is used to measure network capacity and bandwidth, then measurement accuracy is improved, but device complexity and ease of operation deteriorate due to required server cooperation and potential disruption to application performance

Engineering Contradiction:
Improvenetwork capacity and bandwidth measurement accuracyVSAvoidserver instrumentation complexity
Core Design Contradiction:
Measurement precisionVSDevice complexity

Solution Approach 1:

The patent extracts the measurement functionality from the server side and relocates it entirely to the client side. The client executes measurement probes and analyzes responses to determine network capacity and bandwidth without requiring any instrumentation or modification on the server. This resolves the contradiction by eliminating server instrumentation complexity while maintaining measurement capability through client-only execution of measurement protocols.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The client performs self-measurement by sending probes and analyzing the responses it receives. The measurement system serves itself without external assistance from the server, using only the server's standard response behavior (ACK packets, TCP handshake responses) to derive network metrics. This eliminates the need for server cooperation or instrumentation while enabling accurate measurement.

Inventive Principle:
Principle #25Self-service

2Measurement precision

If server instrumentation is deployed to enable network measurements, then measurement capability is improved, but ease of operation worsens due to inability to deploy in cloud services without server cooperation

Engineering Contradiction:
Improvenetwork measurement capabilityVSAvoiddeployment feasibility in cloud environments
Core Design Contradiction:
Measurement precisionVSEase of operation

Solution Approach 1:

The measurement functionality is extracted from the server environment entirely and implemented solely on the client side. This extraction enables deployment in cloud services and other environments where server instrumentation is prohibited, as the solution requires no server-side changes, permissions, or cooperation.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Instead of having the server provide measurement capabilities through instrumentation, the patent inverts the approach by having the client perform all measurements using only information available in standard server responses. This inversion makes the solution compatible with cloud services and environments where the server cannot be modified.

Inventive Principle:
Principle #13The other way round (Inversion)

3Measurement precision

If traditional measurement techniques are used with server instrumentation, then network properties can be measured, but productivity deteriorates due to disruption of application performance and blocking of application-layer traffic

Engineering Contradiction:
Improvenetwork property measurementVSAvoidapplication performance
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent uses standard TCP protocol elements (ACK packets, sequence numbers, timestamps) as intermediaries to carry measurement information. These existing protocol elements serve dual purposes: maintaining normal application communication while simultaneously enabling network measurement. This intermediary approach avoids disrupting application performance while accurately measuring network properties.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The measurement solution uses multi-functional TCP packets that simultaneously serve application data transmission and network measurement purposes. Standard TCP ACK packets and handshake responses are used for both their original communication function and as carriers for measurement information, eliminating the need for separate measurement traffic that would disrupt application performance.

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

4Ease of operation

If client-side measurement without server instrumentation is implemented, then ease of operation is improved by enabling deployment without server cooperation, but measurement precision may deteriorate due to limited information available at client side

Engineering Contradiction:
Improvedeployment without server instrumentationVSAvoidnetwork capacity and bandwidth estimation accuracy
Core Design Contradiction:
Ease of operationVSMeasurement precision

Solution Approach 1:

The client uses feedback from server responses (ACK packets, sequence number acknowledgments, timestamps) to iteratively refine network capacity and bandwidth estimates. By analyzing the timing and content of these feedback packets, the client can accurately determine network metrics without requiring additional information from the server, resolving the precision concern through intelligent analysis of available feedback.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent performs preliminary measurements using standard TCP handshakes and initial packet exchanges before application traffic begins. These preliminary actions establish baseline network capacity measurements using only the information available in standard protocol exchanges, enabling accurate measurement without requiring server instrumentation or additional protocol extensions.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9503384B1Estimating network capacity and network bandwidth without server instrumentation
Publication Date: 2016.11.22 CISCO TECHNOLOGY INC
  • US9503384B1 patent drawing
  • US9503384B1 patent drawing
  • US9503384B1 patent drawing

AI summary

Accordingly, techniques for estimating network capacity of a path between two endpoints in a network without server instrumentation are disclosed. Techniques for estimating network bandwidth of a path between two endpoints in a network without server instrumentation are also disclosed. For example, techniques disclosed herein can be used for network capacity planning. As another example, techniques disclosed herein can be used for network availability troubleshooting (e.g., network degradation performance issues).