Distributed Consensus Coordinator for Content-Centric Networks
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Distributed consensus in content-centric networks faces challenges in achieving efficient agreement among nodes, particularly when participants or communication mediums experience failures, as existing protocols like Paxos struggle with reliability and efficiency in ensuring consensus across a network of unreliable processors.
Innovation Solution
A system that facilitates distributed consensus in content-centric networks using the Paxos algorithm, where a coordinator generates interests and content objects to request and confirm values, ensuring agreement among nodes through a series of interest and content object exchanges or multicast requests, allowing for efficient value determination and notification across the network.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If Paxos protocol is used for distributed consensus in CCN, then consensus can be achieved among nodes, but reliability and efficiency suffer when participants or communication medium experience failures
Solution Approach 1:
The patent applies preliminary action by implementing a pre-election of a coordinator node before the consensus process begins. This pre-selected coordinator then orchestrates the Paxos protocol, preparing and coordinating the prepare and accept phases across multiple rounds. This preliminary organization ensures that when failures occur during consensus, the pre-established coordination structure enables reliable recovery without losing efficiency, directly resolving the contradiction between reliability and productivity in Paxos-based consensus.
2Stability of the object's composition
If multiple writers agree on version numbers in CCN, then data consistency is improved, but system complexity increases due to coordination requirements
Solution Approach 1:
The patent applies segmentation by dividing the consensus coordination function into a dedicated coordinator role and participant roles. The coordinator handles all complex coordination tasks including managing multiple consensus rounds, tracking acceptor states, and orchestrating value proposals. This segmentation isolates coordination complexity from the data consistency mechanism itself, allowing multiple writers to maintain consistent version numbers without each writer needing to manage complex coordination logic, thus resolving the contradiction between data consistency and system complexity.
3Speed
If distributed systems elect a leader for fast transaction processing, then processing speed improves, but failure handling becomes more difficult
Solution Approach 1:
The patent applies preliminary action by pre-electing a coordinator node that will lead multiple consensus rounds before any transactions occur. This pre-established leader structure enables fast transaction processing during normal operation while the coordinator's pre-configured failure handling mechanisms (including monitoring acceptor responsiveness and managing multiple rounds) are already in place to mitigate failures, thus resolving the contradiction between processing speed and failure vulnerability.
Data Source
AI summary
One embodiment provides a system that facilitates distributed consensus in a content centric network. During operation, the system generates, by a coordinator for a plurality of nodes, a first interest that indicates a request to approve a proposed value for a variable. In response to receiving a positive acknowledgment of the first interest from a majority of the nodes, the coordinator generates a second interest that indicates a request to accept the proposed value. A name for the first interest and a name for the second interest include an identifier of the variable and a round number. A payload of the first interest and a payload of the second interest include the proposed value. In response to receiving a positive acknowledgement of the second interest from the majority of the nodes, the system generates a notification indicating that an agreed-upon value for the variable is the proposed value.


