HTTP/2 Server Request Resource Allocation via Priority Profiles
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In HTTP/2 and similar protocols, clients lack control over the server's processing and scheduling of requests within a shared connection, as priority settings do not guarantee specific processing or transmission orders, and mechanisms to enforce order are lacking.
Innovation Solution
A method and server device that allocate resources based on predefined priority parameter values, allowing clients to specify exact resource allocation for target requests, independent of other requests, using predefined processing profiles that define resource amounts for specific priority values, enabling clients to control processing priorities and pause or resume requests as needed.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If HTTP/2 uses a single TCP connection to exchange all requests and responses with multiplexing, then connection efficiency is improved, but client control over request processing order deteriorates
Solution Approach 1:
The patent introduces a new parameter (priority value) in the request header that allows clients to specify processing priorities. The server uses this parameter to determine resource allocation and processing order, resolving the contradiction by enabling control through parameter specification rather than connection management.
2Adaptability or versatility
If HTTP/2 allows intermingling of request and response parts within the same connection, then multiplexing capability is improved, but request processing control deteriorates
Solution Approach 1:
The patent adds priority parameters to request headers that enable clients to control processing order despite the interleaved nature of HTTP/2 multiplexed streams. The server processes requests based on these parameters, maintaining control capability while preserving multiplexing benefits.
3Adaptability or versatility
If priority parameter values are used to express relative priority of streams, then resource allocation flexibility is improved, but guaranteed processing order deteriorates
Solution Approach 1:
The patent applies preliminary action by allocating resources in advance based on priority values before requests are processed. The server performs resource allocation upfront according to the priority parameters in request headers, ensuring that high-priority requests have guaranteed resources available when needed, thus providing both flexibility and reliability.
Data Source
AI summary
The invention relates to a server and a method for processing requests when several requests compete within the same connection having fixed resources. Conventionally, a priority scheme provides priority values for a priority parameter that express priorities relatively to the priorities of other requests, meaning that a relative allocation of resources is obtained for each request. To achieve a better control on the server by the client, the invention provides specific possible values for the priority parameter that correspond to respective processing profiles. Each processing profile represents specific server behavior for resources allocation, by defining a predefined amount of resources. Thus, the client may choose between using the specific possible values to control the exact amount of resources that will be allocated by the server to process some specific requests, and using the other possible values that correspond to a relative allocation of resources as already done in known techniques.


