Server Push Connection Management via Dynamic Handshake

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional client/server systems are unable to efficiently manage resource consumption on the server side during Push communication, as they maintain persistent connections regardless of necessity, leading to excessive CPU and memory usage.

Innovation Solution

A method and system that allow the server to initiate a handshake with the client for switching to a specific communication method, such as WebSocket, only when necessary, by transmitting first condition information to the client, enabling instruction without a client request, thereby optimizing resource usage.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If persistent communication connections are maintained between server and clients, then Push communication can be performed, but server resource consumption (memory, CPU, connections) increases proportionally to the number of clients

Engineering Contradiction:
ImprovePush communication capabilityVSAvoidserver resource consumption
Core Design Contradiction:
Adaptability or versatilityVSQuantity of substance

Solution Approach 1:

The patent implements dynamic connection management where the server can actively close persistent connections when Push communication is not needed. The server determines whether to maintain a persistent connection based on whether there are unprocessed push notifications, and actively closes connections when no Push communication is required, transforming the static connection model into a dynamic one that adapts to actual communication needs.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the state parameter of communication connections from always-open to conditionally-open. The server tracks the state of each client connection and transitions between persistent and closed states based on the presence of unprocessed push notifications, optimizing resource allocation by maintaining connections only when necessary.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If the server maintains persistent connections for all clients, then Push communication is always available, but unnecessary resource consumption occurs when Push communication is not needed

Engineering Contradiction:
ImprovePush communication availabilityVSAvoidserver resource waste
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The server uses feedback from client queries about unprocessed push notifications to dynamically adjust connection states. When a client queries and indicates no unprocessed notifications exist, the server closes the persistent connection, releasing resources. This feedback mechanism ensures connections are maintained only when actually needed for Push communication.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The server periodically checks with clients whether unprocessed push notifications exist and actively closes connections when none are present. This periodic verification and active closure mechanism prevents resource waste while ensuring Push communication is ready when needed.

Inventive Principle:
Principle #19Periodic action

3Quantity of substance

If the client initiates handshake only when needed, then server resource consumption is reduced, but the server cannot instruct the client to initiate handshake at appropriate timing

Engineering Contradiction:
Improveserver resource consumptionVSAvoidserver-initiated handshake capability
Core Design Contradiction:
Quantity of substanceVSExtent of automation

Solution Approach 1:

The patent inverts the traditional client-initiated handshake model by enabling server-initiated handshakes. The server can now actively instruct clients to initiate handshakes at appropriate timing, reversing the conventional flow where only the client could start the connection establishment process.

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

Solution Approach 2:

The server performs preliminary actions by proactively instructing clients to initiate handshakes before actual Push communication is needed. The server determines appropriate timing for connection establishment and sends instructions to clients in advance, ensuring resources are allocated efficiently rather than waiting for client requests.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS9596121B2Server apparatus communicating with a client apparatus via the internet, system, and control method thereof
Publication Date: 2017.03.14 CANON KK
  • US9596121B2 patent drawing
  • US9596121B2 patent drawing
  • US9596121B2 patent drawing

AI summary

A server apparatus receives a query from a client apparatus connected via the Internet, and as its reply, it transmits first condition information according to which initial communication is performed in order to switch to a specific communication format in which instruction from the server apparatus is possible without a request of the client apparatus.