Epoch-Based Transaction Resource Reservation for Forward Progress
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In interconnected systems, resource starvation and deadlocks can occur due to the lack of forward progress, particularly in request-response communication protocols where multiple requesters compete for limited transaction resources, leading to adverse conditions such as live locks and deadlocks.
Innovation Solution
Implementing a forward progress mechanism where a responder tracks epochs and reserves resources for previous epochs, allowing retransmitted requests from previous epochs to be prioritized over new requests, ensuring that requests are serviced using reserved resources if available, and transitioning epochs to manage resource allocation effectively.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple requesters compete for limited transaction resources in a request-response communication protocol, then resource utilization increases, but resource starvation and deadlocks occur
Solution Approach 1:
The patent segments the transaction processing into different epochs, dividing the monolithic resource contention into time-divided segments. Each epoch represents a discrete time window where specific transactions are processed, preventing indefinite contention and ensuring forward progress by periodically resetting the epoch counter.
Solution Approach 2:
The patent implements preliminary action by pre-allocating transaction resources for each epoch before the epoch begins. This allows the system to proactively reserve resources needed for future transaction processing, preventing resource starvation before it occurs and ensuring that each epoch can complete its transactions without external interference.
2Reliability
If transaction resources are reserved for previous epochs, then retransmitted requests are guaranteed forward progress, but device complexity increases
Solution Approach 1:
The patent extracts the complexity of tracking retransmitted requests by removing the need for per-request state tracking. Instead of monitoring individual request states, the system extracts complexity by using epoch-based resource reservation, where resources are reserved for entire epochs rather than individual requests, significantly reducing tracking overhead.
Solution Approach 2:
The patent employs cheap short-living objects by using disposable epoch identifiers that are periodically reset. Each epoch represents a temporary, low-cost tracking mechanism that expires and is replaced by the next epoch, avoiding the need for persistent, complex state tracking structures and reducing overall system complexity.
3Productivity
If the responder tracks and reserves resources for previous epochs, then resource allocation efficiency improves, but loss of time occurs due to epoch transitions
Solution Approach 1:
The patent implements periodic action through regular epoch transitions at predetermined intervals. This periodic resetting of epochs ensures that resources are systematically reallocated and that no single requester can monopolize resources indefinitely, maintaining long-term resource allocation efficiency while keeping transition overhead predictable and manageable through fixed scheduling.
Data Source
AI summary
A method may include receiving a first transaction request. The method may further include transmitting a retry response to the transaction request, which includes a first epoch identifier associated with a current epoch. The method may further include receiving a second transaction request, which includes a second epoch identifier associated with a previous epoch. The second transaction request may be fulfilled using a transaction resource reserved for the previous epoch.


