Active-Passive HFI Reliable Multicast Fabric Interconnect
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current data center communication systems lack inherent facilities for reliable data transmission over Ethernet links, leading to increased processing complexity, buffer space requirements, and bandwidth consumption due to the need for explicit ACKs, which are not efficiently handled by existing link-layer protocols.
Innovation Solution
The implementation of a reliable multicast scheme using a hybrid software/hardware approach, where the Fabric Interconnect extends the Host Fabric Interface (HFI) to manage retries and acknowledgments, reducing fabric traffic and processing overhead by leveraging hardware-based mechanisms for reliability, while the software stack handles retry mechanisms.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If explicit ACKs are used for reliable data transmission, then data delivery reliability is improved, but processing complexity and buffer space requirements increase
Solution Approach 1:
The patent introduces an intermediary mechanism where the network fabric itself participates in reliability assurance through copy acknowledgment tracking. Instead of end-to-end ACK protocols between hosts, the fabric interconnect acts as a mediator that tracks whether data copies have been successfully delivered to all intended destinations, thereby reducing the processing complexity at endpoint devices while maintaining reliability.
Solution Approach 2:
The system enables self-service reliability by having the fabric interconnect automatically manage the tracking and acknowledgment of data copy deliveries. The fabric monitors its own delivery state and provides reliability services without requiring complex software-based ACK handling at each host, thereby reducing buffer space requirements and processing complexity at endpoint devices.
2Reliability
If software-based ACK mechanisms are implemented, then reliable transmission is achieved, but bandwidth consumption and processing overhead increase
Solution Approach 1:
The patent replaces the mechanical software-based ACK mechanism with a hardware-based fabric-level acknowledgment system. The fabric interconnect uses hardware tracking structures to monitor data copy delivery status, eliminating the need for software-generated ACK packets that consume network bandwidth. This substitution reduces processing overhead and bandwidth consumption while maintaining reliable transmission.
3Productivity
If hardware-based reliability mechanisms are used, then processing overhead is reduced, but device complexity increases
Solution Approach 1:
The patent segments the reliability function into fabric-level hardware tracking and host-level data operations. The complex acknowledgment tracking logic is divided and placed at the fabric interconnect level, allowing host devices to focus on their primary data processing functions. This segmentation reduces processing overhead at endpoints while concentrating the complexity in the fabric infrastructure.
Data Source
Figure 1
Figure 1a
Figure 2~3
AI summary
Methods, apparatus, and systems for reliable replication mechanisms based on active-passive HFI protocols build on top of non-reliable multicast fabric implementations. Under a first hardware-based scheme, a reliable replication mechanism is (primarily) implemented via Host Fabric Interfaces (HFIs) coupled to (or integrated in) nodes coupled to a non-reliable fabric. Under this approach, the HFIs take an active role in ensuring reliable delivery of multicast messages to each of multiple target nodes. Under a second hybrid software/hardware scheme, software running on nodes is responsible for determining whether target nodes have confirmed delivery of multicast messages and sending retry messages for cases in which delivery is not acknowledged within a timeout period. At the same time, the HFIs on the target nodes are responsible for generating reply messages containing acknowledgements rather than software running on the target nodes.