Resilient Mobile Session Establishment with Exponential Backoff
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing methods for establishing and maintaining connections between vehicle telematics units and remote service delivery networks are prone to service interruptions due to connection failures, lacking a resilient reconnection strategy that ensures efficient and reliable connectivity, especially during critical data transfers.
Innovation Solution
A processor-based system that attempts packet-data connections with increasing delays after failures, wakes up the vehicle to request MQTT connections, and manages timers to retry connections efficiently, ensuring resilient reconnection and minimizing power consumption in both full-power and low-power modes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the TCU establishes a connection with the mobile operator core network and MQTT broker, then connectivity and data transmission are enabled, but connection failures can occur causing service interruptions
Solution Approach 1:
The system performs preliminary actions by establishing connection retries with exponential backoff delays before complete connection failure occurs. When a connection attempt fails, the system automatically schedules retry attempts with increasing delays (2 seconds, 4 seconds, 8 seconds, etc.), preventing service interruption by proactively recovering from transient network failures before they propagate to the application layer.
Solution Approach 2:
The system cushions against connection failures by implementing a retry mechanism with exponential backoff. This beforehand cushioning absorbs the shock of transient network failures by automatically attempting reconnection with progressively longer delays, preventing service interruptions without requiring complex error handling or manual intervention.
2Reliability
If the system implements connection retry mechanisms, then connection resilience is improved, but power consumption increases due to repeated connection attempts
Solution Approach 1:
The system implements periodic connection retry actions with exponential backoff intervals. Instead of continuous retry attempts, the system schedules retries at specific periodic intervals (2 seconds, 4 seconds, 8 seconds, etc.), allowing the system to enter low-power states between retry attempts while maintaining connection resilience.
Solution Approach 2:
The retry mechanism dynamically adjusts the delay between connection attempts using exponential backoff. The delay duration is not fixed but dynamically increases with each failed attempt (2^n pattern), optimizing the balance between connection resilience and power consumption by adapting retry frequency to the specific failure scenario.
3Stability of the object's composition
If the system uses exponential backoff delays for connection retries, then connection stability is improved, but connection establishment time increases
Solution Approach 1:
The system dynamically adjusts retry delays using exponential backoff (2 seconds, 4 seconds, 8 seconds, etc.), starting with short delays for rapid recovery from transient failures and progressively increasing delays for more persistent issues. This dynamic approach optimizes connection stability while minimizing overall establishment time compared to fixed long delays.
Solution Approach 2:
The system performs preliminary quick retry attempts with short exponential backoff delays before escalating to longer delays. This preliminary action allows the system to quickly recover from transient network issues without incurring significant time penalties, improving connection stability while minimizing time loss.
Data Source
AI summary
A system includes a processor configured to attempt a packet-data connection for a first number of attempts, including a predetermined short delay between each unsuccessful attempt. The processor is also configured to delay for a longer predetermined delay determined based on a predetermined long delay less a total duration of preceding failed connection attempts, responsive to another failed connection attempt after failures for the first number of attempts, and repeat the attempt and delay steps until a connection is established.


