Dynamically bypassing a peripheral component interconnect switch
US-10387349-B1 · Aug 20, 2019 · US
US12468564B1 · US · B1
| Field | Value |
|---|---|
| Publication number | US-12468564-B1 |
| Application number | US-202217956585-A |
| Country | US |
| Kind code | B1 |
| Filing date | Sep 29, 2022 |
| Priority date | Sep 29, 2022 |
| Publication date | Nov 11, 2025 |
| Grant date | Nov 11, 2025 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Cloud services, such as a storage service, are able to communicate through a virtual PCI request over a non-PCI bus by using a modified device driver that communicates with a network interface. One or more cloud services can execute on a same board or within a same Integrated Circuit (IC) as the network interface. The network interface adapts communications from the one or more services by allowing the services to use a PCI protocol despite that the services are not communicating with the network interface over a PCI bus.
Opening claim text (preview).
What is claimed is: 1 . A method of executing a service within a server computer, the method comprising: executing the service of a compute service provider using a processor within the server computer; transmitting a request to a device driver executed by the processor; using the device driver, storing the request in a base address register of a network interface positioned between the service and a host that executes a virtual machine without transferring the request over a Peripheral Component Interconnect (PCI) bus; and using control logic in the network interface, reading the request from the base address register and transmitting the request towards a destination address. 2 . The method of claim 1 , wherein the processor and the network interface are on a network interface card within the server computer. 3 . The method of claim 1 , wherein the service is a storage service. 4 . The method of claim 1 , wherein the host is coupled to the network interface using a PCI bus. 5 . The method of claim 1 , wherein the network interface is assigned an Internet Protocol (IP) address and is attached to the virtual machine. 6 . A method, comprising: receiving a request from a service of a compute service provider for transmission over a Peripheral Component Interconnect (PCI) bus; receiving the request in a device driver that stores the request in a base address register of a network interface without transmitting the request over a PCI bus; and processing the request by the network interface as if it were received over a PCI bus. 7 . The method of claim 6 , wherein the service executes on a processor that is positioned on a same printed circuit board as the network interface. 8 . The method of claim 6 , further including executing a virtual machine on a host that is coupled to the network interface through a PCI bus. 9 . The method of claim 8 , wherein the service is a storage service that attaches volumes to the virtual machine. 10 . The method of claim 6 , wherein the service is a storage service and the method further includes using the network interface to store data associated with the PCI request in a memory of the storage service. 11 . The method of claim 6 , wherein the network interface is assigned an Internet Protocol (IP) address. 12 . The method of claim 6 , wherein the device driver uses a write command to write the request to the base address registers of the network interface. 13 . The method of claim 6 , wherein the request is an Application Programming Interface (API) request to be transmitted over a PCI bus. 14 . The method of claim 6 , wherein the processing of the request includes generating a PCI request corresponding to the request and transmitting the PCI request to a host over a PCI bus. 15 . A server computer, comprising: a host; a network interface coupled to the host using a first bus type; a processor couped to the network interface through a second bus type, the processor configured to execute a service of a compute service provider; and a device driver configured to execute on the processor and to receive messages from the service that are for transmission over the first bus type and storing the messages in a memory of the network interface using the second bus type. 16 . The server computer of claim 15 , wherein first bus type is a Peripheral Component Interconnect (PCI) bus and the second bus type is an internal bus on a plug-in board on the server computer. 17 . The server computer of claim 15 , wherein the memory of the network interface includes base address registers of the network interface. 18 . The server computer of claim 15 , wherein the service is a storage service and the host is configured to execute virtual machines coupled to storage volumes of the storage service. 19 . The server computer of claim 15 , the network interface includes an Internet Protocol (IP) address and is logically attached to a virtual machine executing on the host. 20 . The server computer of claim 15 , wherein the service executes on the processor that is positioned on a same printed circuit board as the network interface.
on a serial bus, e.g. I2C bus, SPI bus (on daisy chain buses G06F13/4247) · CPC title
Peripheral component interconnect [PCI] · CPC title
Hypervisor-specific management and integration aspects · CPC title
Network integration; Enabling network access in virtual machine instances · CPC title
I/O management, e.g. providing access to device drivers or storage · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.