Lock-Step Server Chaining for Fault-Tolerant Autonomous Computing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Fully self-driving vehicle technology requires sophisticated software and hardware that is more susceptible to failure and interference due to increased functionality and higher clock speeds, necessitating a reliable and scalable computing system.
Innovation Solution
A loosely-coupled lock-step (LCLS) chain architecture that utilizes fault-tolerant servers running parallel operations, ensuring that all servers arrive at the same state through synchronization and replication, and supports data-driven, demand-driven, and hybrid data flows.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If sophisticated software and hardware with increased functionality and higher clock speeds are used for self-driving vehicles, then processing capability and functionality are improved, but susceptibility to failure and interference increases
Solution Approach 1:
The patent implements functional replication by creating multiple copies of the same computational function running in parallel on different processing units. Each replica executes identical operations on the same input data, and results are compared through voting mechanisms. This copying approach provides fault tolerance because if one replica fails or produces incorrect results due to hardware susceptibility, other replicas can compensate, thereby maintaining reliability while preserving processing capability.
Solution Approach 2:
The patent introduces intermediary components including synchronization mechanisms, voting logic, and result comparison units that mediate between multiple processing replicas and the final output. These intermediaries coordinate the parallel execution, aggregate results from multiple sources, and filter out erroneous outputs, thereby protecting the system from failures in individual processing units while maintaining high processing capability.
2Reliability
If multiple processing units are used to improve reliability through replication, then fault tolerance is improved, but system complexity increases
Solution Approach 1:
The patent segments the computational system into distinct functional modules: input processing units, parallel execution replicas, voting mechanisms, and output generation components. Each segment has a specific, well-defined function. This segmentation allows the complex fault-tolerant system to be managed through modular design, where each component can be independently developed, tested, and maintained, thereby reducing overall system complexity despite using multiple processing units.
Solution Approach 2:
The patent employs homogeneous processing replicas that execute identical functions with the same operational characteristics. This homogeneity simplifies the system design because all replicas can be implemented using the same hardware architecture and software configuration, making them interchangeable and easier to manage. The uniformity reduces the complexity of coordination and synchronization compared to heterogeneous systems, while still providing the fault tolerance benefits of replication.
Data Source
Figure 1
Figure 2
Figure 3
AI summary
A system and method enables loosely-coupled lock-step computing including sensors that detect or measure a physical property and server groups. Each server group is serially linked to another server group and includes server instances operating in virtual synchrony. Virtual synchrony middleware receives outputs from multiple server instances and renders a single reply based on the outputs from the multiple server instances. The virtual synchrony middleware replicates and orders incoming requests to the server groups to ensure each of the server instances of that server group receives the same incoming requests in the same order.