Indirect Push Communication via WebSocket Broker

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In client/server systems, Push communication methods face challenges in establishing connections due to the upper limit of communication connections between network devices and management devices, leading to failed Handshake attempts and inefficiencies, especially when polling methods are used.

Innovation Solution

Implementing an indirect Push communication method where a network device establishes a connection with a server via another network device already in WebSocket communication, allowing for real-time instruction delivery even when direct Push communication fails, by using a second client computer as a broker to mediate communication.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If Push communication method is used to enable real-time instruction delivery from management device to network device, then communication efficiency is improved and polling time loss is eliminated, but the number of communication connections readily reaches the upper limit value causing Handshake failure

Engineering Contradiction:
Improvecommunication efficiencyVSAvoidconnection establishment reliability
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The system dynamically switches between Polling communication method and Push communication method based on real-time connection status. When Push communication fails due to connection limits, the system automatically transitions to Polling method to ensure continuous operation, and vice versa. This dynamic adaptation resolves the contradiction by making the communication system flexible rather than static.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the communication mode parameter from fixed Push communication to variable communication that can switch between Push and Polling methods. By changing this operational parameter based on system state (connection availability, upper limit status), the system maintains both high efficiency when possible and reliable connection establishment when needed.

Inventive Principle:
Principle #35Parameter changes

2Use of energy by moving object

If the upper limit of communication connections is set from the viewpoint of cost to control resource consumption, then resource usage is optimized, but the number of connections readily reaches the upper limit value preventing new Push communication establishment

Engineering Contradiction:
Improveresource consumptionVSAvoidcommunication method adaptability
Core Design Contradiction:
Use of energy by moving objectVSAdaptability or versatility

Solution Approach 1:

The communication system dynamically adjusts its behavior based on connection availability. When connections are available below the upper limit, Push communication is used for optimal performance. When the limit is reached, the system adapts by using Polling communication, ensuring continuous functionality while respecting resource constraints.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system introduces a communication method selection mechanism that acts as an intermediary between the desire for real-time Push communication and the resource constraints imposed by connection limits. This intermediary evaluates system state and selects the appropriate communication method (Push or Polling) to balance resource usage with communication effectiveness.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If Polling communication method is used to ensure connection compatibility, then connection establishment is reliable, but time loss occurs due to polling intervals

Engineering Contradiction:
Improveconnection establishment reliabilityVSAvoidpolling interval time loss
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system uses periodic Polling communication only when necessary (when Push communication cannot be established), rather than continuously. This periodic use of Polling maintains reliability when needed while minimizing time loss, as the system switches to event-driven Push communication when available to eliminate polling intervals.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The system dynamically selects between Polling and Push methods based on connection status. When Push communication is available, it eliminates polling intervals entirely for real-time notification. When Push communication is unavailable, it temporarily uses Polling to maintain reliable communication, thus minimizing overall time loss while ensuring continuity.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP2667565B1Network device, method, and storage medium
Publication Date: 2019.07.10 CANON KK
  • EP2667565B1 patent drawingFigure 1
  • EP2667565B1 patent drawingFigure 2A~2C
  • EP2667565B1 patent drawingFigure 3

AI summary

A first client computer (110) makes an indirect Push communication request for establishing Push communication with a server computer (100) via a second client computer (170) to the second client computer. After establishment of indirect Push communication, a second client computer (170) transfers an instruction given from the server computer (100) to the first client computer (110) by use of Push communication to the first client computer (110).