HTTP/2 Multiplexing Acceleration via Sequence Number Manipulation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The rate of network traffic transmission using multiplexed application layer streams in HTTP 2.0 is limited due to congestion avoidance mechanisms, resulting in a slower increase in the congestion window compared to standard HTTP streams, which hampers network performance.

Innovation Solution

A networking appliance accelerates the rate at which the congestion window is increased by sending HTTP 2.0 ping frames to clients and adjusting sequence numbers, allowing both clients and servers to transmit packets more efficiently using HTTP 2.0.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple TCP connections are used for standard HTTP streams, then the congestion window increases faster and network transmission rate is higher, but the overhead of establishing and maintaining multiple connections increases complexity

Engineering Contradiction:
Improvenetwork transmission rateVSAvoidconnection management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges multiple application layer streams into a single TCP connection using HTTP/2.0 multiplexing. This allows multiple independent data streams to be transmitted over one shared connection, eliminating the need to manage multiple separate TCP connections while maintaining the ability to control congestion window growth for each stream independently through sequence number manipulation.

Inventive Principle:
Principle #5Merging (Combining)

Solution Approach 2:

The patent introduces an intermediary device (such as a gateway or proxy server) that sits between the client and server. This intermediary manipulates sequence numbers of HTTP/2.0 frames to artificially accelerate congestion window growth without requiring the end systems to implement complex changes. The intermediary acts as a mediator that transparently modifies packet characteristics to achieve faster transmission rates.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Device complexity

If HTTP/2.0 multiplexing is used to reduce connection overhead, then connection complexity is reduced, but the congestion window increases slower and network transmission rate decreases

Engineering Contradiction:
Improveconnection management complexityVSAvoidnetwork transmission rate
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent changes the sequence number parameter of HTTP/2.0 frames to manipulate congestion window growth. By incrementing sequence numbers more aggressively than standard protocols would allow, the system accelerates the rate at which the congestion window expands, thereby increasing network transmission rate while maintaining the simplicity of single-connection multiplexing.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If sequence numbers are manipulated to accelerate congestion window growth, then network transmission rate increases, but protocol compliance and reliability may be compromised

Engineering Contradiction:
Improvenetwork transmission rateVSAvoidprotocol compliance
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The patent uses an intermediary device to manipulate sequence numbers, isolating the protocol compliance requirements from the acceleration mechanism. The intermediary translates artificially accelerated sequence numbers into valid HTTP/2.0 frames, ensuring that end systems (clients and servers) never directly handle non-compliant data. This maintains protocol reliability at the endpoints while enabling rate acceleration through the intermediary.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentEP3568958B1Systems and methods for improving the performance of a computer network for multiplexed application layer streams of network traffic
Publication Date: 2021.03.03 CITRIX SYSTEMS INC
  • EP3568958B1 patent drawingFigure 1A
  • EP3568958B1 patent drawingFigure 1B
  • EP3568958B1 patent drawingFigure 1C

AI summary

Described embodiments improve the performance of a computer network using multiplexed application layer streams of network traffic. Multiplexed application layer streams of network traffic from the client to the server can be received via a first transport control protocol (TCP) connection. The multiplexed application layer streams of network traffic can include a first data packet with a first sequence number. The first data packet with the first sequence number can be forwarded to the server via a second TCP connection. A ping frame of an application layer protocol can be transmitted to the client to cause the client to increase a next sequence number. A second data packet can be received from the client with the next sequence number including a second sequence number. The second sequence number of the second data packet can be adjusted to be a third sequence number expected by the second TCP connection.