Proxy Server Session Splicing for Resource Efficiency
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Destination computers often incur overhead and resource burden due to unproductive 'open' requests without accompanying operational requests, leading to degraded response times and potential denial of service attacks.
Innovation Solution
A system and method where a proxy server manages sessions by only opening a session if an operational request is received concurrently with or within a predetermined time of the open request, and 'splices' inbound and outbound sockets for subsequent requests, avoiding unnecessary session establishment.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the destination computer accepts all open requests without verification, then session establishment is simple and fast, but resource utilization deteriorates and response time degrades due to unproductive sessions
Solution Approach 1:
The patent applies preliminary action by checking for the presence of an operational request before completing session establishment. The destination computer waits to receive either an operational request or a close request alongside the open request, ensuring that session resources are only allocated when there is a guaranteed productive operation or explicit closure intent. This prevents wasteful allocation of sockets and session identifiers to unproductive sessions.
2Reliability
If the destination computer establishes sessions for all open requests, then service availability is improved, but system performance deteriorates due to overhead from unproductive sessions
Solution Approach 1:
The system performs preliminary validation by requiring an operational request or close request to accompany the open request. This ensures that session establishment is only completed when there is a guaranteed productive operation or explicit closure intent, preventing wasteful allocation of session resources and maintaining high service availability for productive operations only.
Solution Approach 2:
The patent extracts the validation step from the traditional session establishment process. Instead of automatically accepting all open requests, the system separates the open request handling from session completion, inserting a verification step that checks for accompanying operational or close requests. This extraction allows the system to maintain reliability for productive operations while eliminating time waste from unproductive sessions.
3Ease of operation
If sockets are allocated for every open request, then session establishment is straightforward, but device complexity increases due to managing unused session resources
Solution Approach 1:
The patent applies preliminary action by checking for the presence of an operational request before completing session establishment. The destination computer waits to receive either an operational request or a close request alongside the open request, ensuring that session resources are only allocated when there is a guaranteed productive operation or explicit closure intent. This prevents wasteful allocation of sockets and session identifiers to unproductive sessions.
Data Source
AI summary
System, method and program product for managing sessions. A request to open a session with a destination server is received. A determination is made whether an operational request is received concurrently with the open request or within a predetermined time thereafter. If so, the requested session is opened. If not, the requested session is not opened. The method can be performed by a proxy server. To initiate the session, the operational request should be received concurrently with the open request or within a predetermined time thereafter. The destination server is responsible for processing the operational request. To open the session with the destination server from the proxy server, an open request and the operational request are sent from the proxy server to the destination server. An inbound socket of the proxy server associated with the session is spliced to an outbound socket of the proxy server associated with the session. Consequently, subsequent requests in this session are automatically passed from the inbound socket to the outbound socket. The outbound socket is used for the session with the destination server.


