Unidirectional Gateway Multiplexing With Memory-Based Receipt Confirmation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data diodes lack the ability to confirm successful receipt of data at the untrusted side, resulting in lower throughput and computational efficiency due to re-transmission overhead, and have limited capability to support multiple concurrent data streams without additional computational/transmission overhead.
Innovation Solution
Employing a Peripheral Component Interconnect Express (PCIe) data link between compute devices in a trusted and untrusted domain, using non-routable schema to ensure unidirectional data flow, with integrity verification and memory-based confirmation of data delivery, enabling multiplexing of multiple concurrent data streams.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If data diodes are used for unidirectional data delivery, then data security is improved, but the ability to confirm successful receipt is lost resulting in lower throughput
Solution Approach 1:
The patent introduces an intermediary memory region that acts as a mediator between the untrusted network interface card and the trusted domain. The untrusted NIC writes delivery status information to this intermediary memory, which the trusted domain then reads to confirm successful receipt. This intermediary mechanism enables confirmation of data delivery while maintaining unidirectional security constraints, thereby improving throughput without compromising data security.
2Reliability
If traditional data diodes are used, then unidirectional data flow is ensured, but support for multiple concurrent data streams is limited due to additional computational overhead
Solution Approach 1:
The patent segments the data stream handling by assigning separate memory regions to different data streams. Each concurrent data stream has its own dedicated memory region where delivery status information is written. This segmentation allows multiple data streams to be tracked independently without requiring complex computational overhead for multiplexing and demultiplexing, thereby supporting multiple concurrent streams while maintaining unidirectional flow guarantees.
Data Source
AI summary
A method includes transmitting a data message by a first interface card in a trusted domain to a second interface card in an untrusted domain over a unidirectional, non-networked connection. The second interface card verifies integrity of the data message and stores a result of the verifying in a memory location in the untrusted domain. The first interface card retrieves the result from the memory location and determines whether the data message was successfully received based on the result.


