PCIe Ghost Bridging for Multi-Server Device Sharing
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Current PCIe switch systems lack the ability to disaggregate PCIe devices across multiple host servers, limiting their utilization efficiency and failing to provide end-to-end reliability and seamless device sharing across multiple hosts.
Innovation Solution
A PCIe switch system that parses and processes transaction layer packets (TLPs) to determine policy group identifiers, performs packet forwarding and rewriting rules, and uses ghost devices to bridge PCIe hierarchies, enabling device sharing and disaggregation across multiple servers without modifying endpoints.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If PCIe hierarchy uses single root port connected to CPU socket, then all devices are accessible only to single host server, but this single host bridging restriction makes it difficult to share PCIe hardware components across multiple servers
Solution Approach 1:
The patent segments the traditional single PCIe hierarchy into multiple independent PCIe hierarchies, each with its own root port and CPU socket. This segmentation allows different host servers to access different devices independently while enabling shared access to specific PCIe hardware components through the segmented structure, thereby improving device sharing capability without requiring a completely new complex architecture.
Solution Approach 2:
The patent introduces PCIe switches as intermediary devices that connect multiple PCIe hierarchies and enable communication between host servers and shared PCIe hardware components. These switches act as mediators that manage traffic routing, address translation, and protocol conversion, allowing devices to be shared across multiple servers while maintaining the simplicity of individual PCIe hierarchies.
2Productivity
If PCIe switch provides address translation and routing flexibility, then packet forwarding capability is improved, but comprehensive end-to-end system for disaggregating PCIe devices across multiple host servers is still lacking
Solution Approach 1:
The patent merges multiple previously separate functions into a unified PCIe switch system that simultaneously provides address translation, routing flexibility, and end-to-end disaggregation capability. By combining these functions in a single integrated system, the patent achieves both high packet forwarding efficiency and comprehensive end-to-end disaggregation across multiple host servers without requiring separate systems for each function.
Solution Approach 2:
The patent designs the PCIe switch system to be universal and multi-functional, enabling it to handle various types of PCIe transactions, support multiple PCIe hierarchies, and provide disaggregation services to different host servers simultaneously. This universal design allows a single system to perform address translation, routing, and end-to-end device disaggregation, improving both productivity and adaptability.
3Adaptability or versatility
If ghost devices are used to bridge PCIe hierarchies, then device sharing across multiple servers is enabled, but system complexity increases
Solution Approach 1:
The patent uses ghost devices as virtual copies or representations of physical PCIe devices that exist in multiple PCIe hierarchies simultaneously. These ghost devices are software or firmware constructs that replicate device functionality across different servers without requiring physical duplication of hardware. This copying approach enables multi-server device sharing while avoiding the complexity of physical device multiplication.
Data Source
AI summary
A system for sharing peripheral component interconnect express (PCIe) devices across multiple host servers is disclosed. In some embodiments, a switch includes a plurality of hosts associated with a plurality of hierarchies, one or more endpoints associated with one or more of the plurality of hierarchies, and a switch communicatively connectable to the plurality of hosts and the one or more endpoints. The switch is configured to: receive a transaction layer packet (TLP); determine a policy group identifier based on parsing and processing the TLP; perform packet forward matching based on the policy group identifier and destination fields of the TLP; based on whether the TLP is communicated between the hosts and endpoints in different hierarchies of the plurality of hierarchies, determine whether to edit the TLP using one or more rewrite rules; and forward the TLP to an appropriate destination link.


