Active-Active Storage Clustering Clock Synchronization
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional data replication systems in information processing systems face challenges in coordinating time-to-live (TTL) values between storage systems without explicit clock synchronization, leading to difficulties in active-active configurations, especially during communication failures or link issues.
Innovation Solution
Implementing efficient clock synchronization between storage systems to accurately determine and manage TTL values, allowing for coordinated views and ensuring that the follower storage system can service IO operations concurrently with the leader, even in the presence of communication failures.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If asynchronous replication is used to transfer data between storage systems, then data can be replicated without strict timing coordination, but the storage systems cannot maintain consistent views of TTL values without explicit clock synchronization
Solution Approach 1:
The patent introduces an intermediary mechanism (clock synchronization protocol and time difference calculation) that mediates between the independent clocks of leader and follower storage systems. This intermediary allows asynchronous replication to maintain both efficiency and TTL consistency by providing a reference framework for time coordination without requiring synchronous operation.
2Productivity
If the follower storage system services IO operations concurrently with the leader, then system availability and performance are improved, but coordination difficulties arise during communication failures or link issues
Solution Approach 1:
The patent applies preliminary action by having the leader storage system pre-calculate and communicate TTL expiration times to the follower before potential communication failures occur. The leader sends TTL grant information with explicit expiration timestamps, allowing the follower to independently determine when to stop servicing IO operations even if communication is later lost.
Solution Approach 2:
The system implements feedback mechanisms where the leader continuously monitors communication status with the follower and can revoke TTL grants when communication failures are detected. The follower also provides feedback about its operational status and TTL compliance, enabling coordinated failure handling while maintaining concurrent IO servicing during normal operation.
Data Source
AI summary
A first storage system is configured to participate in a replication process with a second storage system using an active-active configuration. A request for a time-to-live (TTL) grant is received in the first storage system from the second storage system. The first storage system computes an estimate of a difference between local times in the respective first and second storage systems, utilizes the computed estimate in the first storage system to determine a TTL expiration time in the local time in the second storage system, and sends the TTL grant with the TTL expiration time to the second storage system in response to the request. The computed estimate of the difference between the local times in the respective first and second storage systems is illustratively utilized in the first storage system to determine a range for the local time in the second storage system.


