PCIe Virtualization via Intercepting Device Encapsulation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional computer systems using PCIe switches face limitations in routing data packets, as they prevent servers connected to downstream bridges from issuing transactions in the upstream direction, restricting the utilization of I/O endpoint devices.
Innovation Solution
An intercepting device with encapsulation logic is employed to intercept and encapsulate prohibited data packets within allowed transactions, enabling their routing upstream through the switch by converting configuration transactions into data transactions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If conventional PCIe switches are used to route data packets, then the switch can forward data packets between devices, but servers connected to downstream bridges cannot issue transactions in the upstream direction
Solution Approach 1:
The patent introduces an intercepting device as an intermediary component between the server and the PCIe switch. This intercepting device captures configuration transactions from the server, converts them into data transactions, and forwards them through the switch. The intercepting device acts as a mediator that enables upstream transaction routing without modifying the conventional switch architecture, thus resolving the contradiction between routing capability and transaction issuance.
Solution Approach 2:
The patent changes the fundamental parameter of transaction type by converting configuration transactions into data transactions. This parameter transformation allows the transactions to be routed through the switch in the upstream direction, which would otherwise be prohibited. The conversion of transaction type is the key mechanism that enables the desired routing capability while maintaining compatibility with conventional PCIe switch operation.
2Adaptability or versatility
If I/O endpoint devices are shared by multiple computers, then resource utilization and scalability improve, but device complexity and routing limitations increase
Solution Approach 1:
The intercepting device serves as a virtualization intermediary that enables multiple computers to share I/O endpoint devices. By converting configuration transactions into data transactions, the intercepting device facilitates virtual I/O device sharing without requiring complex modifications to the underlying PCIe switch architecture. This approach achieves device sharing capability while minimizing the increase in system complexity.
Solution Approach 2:
The patent creates a virtual copy of the I/O endpoint device through transaction conversion. By transforming configuration transactions into data transactions, the system creates a virtual representation of the physical device that can be accessed by multiple computers simultaneously. This copying mechanism enables device sharing while maintaining a relatively simple infrastructure, as it operates at the transaction level rather than requiring physical duplication or complex virtualization hardware.
Data Source
AI summary
A method for transmitting data packets from a first device through a switch to a second device is described. The method is performed at an intercepting device intermediate the first device and the switch device. The method comprises receiving a first data packet from the first device, determining that the first data packet is to be transmitted to the second device and determining whether the first data packet is of a first type that can not be transmitted from the intercepting device to the second device through the switch. If the first data packet is of the first type, the first data packet is encapsulated within a second data packet and transmitting the second data packet through the switch to the second device. If the first data packet is not of the first type, the method comprises transmitting the first data packet through the switch to the second device.


