Resilient Computing via Systems Diversity and Adaptive Algorithms
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current computing systems face challenges in achieving resilience due to their size and complexity, making it difficult to effectively defend against attacks and failures, and traditional redundancy approaches are inadequate as they do not address vulnerabilities and software failures.
Innovation Solution
The n-Resilient approach utilizes diverse, functionally equivalent computing systems that differ in implementation, employing adaptable search algorithms and virtualization to manage and defend against threats, with a response processing server comparing responses to identify and adapt to vulnerabilities and failures, and using evolutionary algorithms to modify server configurations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If traditional redundancy approaches are used to improve system reliability, then system availability is improved, but system complexity increases and vulnerabilities are not addressed
Solution Approach 1:
The system segments the monolithic server into multiple variate servers, each handling a portion of the workload. These variate servers are further segmented into different implementation variants (different OS, hardware, software versions), creating a segmented architecture that improves reliability while managing complexity through modular organization.
Solution Approach 2:
The system changes the parameters of server implementations by varying operating systems, hardware platforms, software versions, and configuration parameters across different variate servers. This parameter diversity allows the system to maintain reliability through functional equivalence while addressing vulnerabilities through implementation differences, and manages complexity through automated configuration management.
2Reliability
If computing systems are made more resilient through diversity, then resistance to attacks and failures is improved, but system complexity and management difficulty increase
Solution Approach 1:
The system implements self-service through automated response processing that compares outputs from multiple variate servers, automatically detects anomalies and attacks through response differentiation, and self-manages configuration updates using evolutionary algorithms. This automation eliminates the need for manual monitoring and management of diverse server configurations.
Solution Approach 2:
The system implements feedback mechanisms where responses from variate servers are continuously monitored and compared. When responses differ, the system provides feedback to identify potential attacks or failures. Evolutionary algorithms use feedback from system performance and threat patterns to automatically adapt and modify server configurations, reducing management difficulty while maintaining resilience.
3Adaptability or versatility
If automated approaches are implemented to manage resiliency, then adaptability to new threats is improved, but system complexity increases
Solution Approach 1:
The system implements dynamics through evolutionary algorithms that continuously adapt server configurations in response to changing threat patterns and performance requirements. The variate server population dynamically evolves, with configurations automatically modified based on feedback from response comparison and threat detection, enabling adaptability to new threats while managing complexity through algorithmic automation.
Solution Approach 2:
The system uses copying by replicating server functionality across multiple variate servers with different implementations. Instead of manually configuring each server, the system automatically copies and adapts configurations across the variate population, allowing rapid adaptation to new threats through automated configuration replication and modification rather than manual intervention.
Data Source
AI summary
Methods, systems, and computer readable media for providing resilient computer services using systems diversity include a head device for receiving requests from clients and for replicating the requests. Variates each receive a request replicated from the head device, process the request, and generate a response to the request. At least some of the variates are different in configuration from the other. The response processing server receives the responses from the variates, selects one of the responses, and delivers the response to the client via the head device. Configuration or systems diversity and adaptation to threats and failures over time may be achieved using adaptive algorithms.


