RM-WS Connection Liveliness via Adaptive Keep-Alive

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current Reliable Messaging protocols for Web Services do not effectively verify and maintain connection liveliness, particularly in scenarios where inactivity timeouts occur, leading to potential loss of sequence sessions.

Innovation Solution

Implementing a mechanism that utilizes a Reliable Messaging protocol for Web Services (RM-WS) to establish a sequence session with a unique identifier, setting an inactivity timeout, and sending keep-alive messages to maintain connection liveliness by resetting timers upon receipt of messages, ensuring the session remains active.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If inactivity timeout is set to detect connection failures, then connection reliability is improved, but sequence sessions are lost during legitimate inactivity periods

Engineering Contradiction:
Improveconnection reliabilityVSAvoidsession duration
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent implements periodic keep-alive messages that are sent at intervals less than the inactivity timeout period. These messages periodically reset the timeout counter, preventing the session from being terminated during legitimate inactivity while still allowing the system to detect actual connection failures when even keep-alive messages fail to elicit responses.

Inventive Principle:
Principle #19Periodic action

2Reliability

If keep-alive messages are sent frequently to maintain connection, then connection liveliness is maintained, but network traffic increases

Engineering Contradiction:
Improveconnection livelinessVSAvoidnetwork traffic
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent dynamically adjusts the keep-alive message sending interval based on the inactivity timeout value. The keep-alive interval is set to a specific fraction (e.g., half) of the inactivity timeout, creating an adaptive system that optimizes traffic based on the configured timeout parameters rather than using fixed intervals.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The keep-alive mechanism uses the existing RM-WS protocol infrastructure and message formats to maintain connections. The system leverages its own protocol capabilities to generate keep-alive messages, rather than requiring separate dedicated keep-alive protocols or additional infrastructure.

Inventive Principle:
Principle #25Self-service

3Duration of action of stationary object

If inactivity timeout period is extended to allow longer sessions, then session continuity is improved, but connection failures are detected later

Engineering Contradiction:
Improvesession continuityVSAvoidfailure detection time
Core Design Contradiction:
Duration of action of stationary objectVSLoss of time

Solution Approach 1:

By implementing periodic keep-alive messages that occur more frequently than the inactivity timeout period, the system achieves both extended effective session duration (through timer resets) and timely failure detection (when keep-alive messages stop receiving responses).

Inventive Principle:
Principle #19Periodic action

Data Source

PatentUS7899921B2Verifying and maintaining connection liveliness in a reliable messaging for web services environment
Publication Date: 2011.03.01 MICROSOFT TECHNOLOGY LICENSING LLC
  • US7899921B2 patent drawing
  • US7899921B2 patent drawing
  • US7899921B2 patent drawing

AI summary

The present invention monitors the receipt of messages between two endpoints on established sequence session in accordance with a Reliable Messaging protocol for Web Services (RM-WS protocol). The messages received may be application or infrastructure messages (e.g., acknowledgement messages in accordance with the RM-WS protocol). Further, the present invention defines a time period known as the inactivity timeout, which is an upper limit to the time that may pass without receiving a message (either application or infrastructure) on the sequence session. Based on this inactivity timeout period, the present invention calculates time periods for sending idempotent infrastructure messages in accordance with the RM-WS protocol for verifying and maintaining connection liveliness.