Remote direct memory access adapter state migration in a virtual environment
First Claim
Patent Images
1. An apparatus comprising:
- a network adapter that includes an onboard memory;
a processor to execute a virtual machine monitor to;
partition an onboard memory space of the network adapter into a plurality of regions to distribute a plurality of remote direct memory access (RDMA) context objects among a plurality of virtual functions;
assign a first region of the plurality of regions to a first virtual function of the plurality of virtual functions;
store a segment table in a segment table space of the network adapter;
store at least a first RDMA context object of the plurality of RDMA context objects in the first region, at a location referenced by a first entry in the segment table; and
assign the first entry to the first virtual function.
1 Assignment
0 Petitions
Accused Products
Abstract
In an embodiment of the present invention, a method includes partitioning a plurality of remote direct memory access context objects among a plurality of virtual functions, establishing a remote direct memory access connection between a first of the plurality of virtual functions, and migrating the remote direct memory access connection from the first of the plurality of virtual functions to a second of the plurality of virtual functions without disconnecting from the remote peer.
18 Citations
24 Claims
-
1. An apparatus comprising:
-
a network adapter that includes an onboard memory; a processor to execute a virtual machine monitor to; partition an onboard memory space of the network adapter into a plurality of regions to distribute a plurality of remote direct memory access (RDMA) context objects among a plurality of virtual functions; assign a first region of the plurality of regions to a first virtual function of the plurality of virtual functions; store a segment table in a segment table space of the network adapter; store at least a first RDMA context object of the plurality of RDMA context objects in the first region, at a location referenced by a first entry in the segment table; and assign the first entry to the first virtual function. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. One or more non-transitory machine-readable storage media comprising a plurality of instructions stored thereon that, when executed, cause an apparatus to:
-
partition, with a virtual machine monitor, an onboard memory space of a network adapter of the apparatus into a plurality of regions for use in distributing a plurality of remote direct memory access (RDMA) context objects among a plurality of virtual functions; assign, with the virtual machine monitor, a first region of the plurality of regions to a first virtual function of the plurality of virtual functions; store, with the virtual machine monitor, a segment table in a segment table space of the network adapter; store, with the virtual machine monitor, at least a first RDMA context object of the plurality of RDMA context objects in the first region, at a location referenced by a first entry in the segment table; and assign, with the virtual machine monitor, the first entry to the first virtual function. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. An apparatus comprising:
-
circuitry to; partition an onboard memory space of a network adapter into a plurality of regions for use in distributing a plurality of remote direct memory access (RDMA) context objects among a plurality of virtual functions; assign a first region of the plurality of regions to a first virtual function of the plurality of virtual functions; store a segment table in a segment table space of the network adapter; store at least a first RDMA context object of the plurality of RDMA context objects in the first region, at a location referenced by a first entry in the segment table; and assign the first entry to the first virtual function. - View Dependent Claims (16, 17, 18, 19, 20)
-
-
21. A method comprising:
-
partitioning, by a virtual machine monitor, an onboard memory space of a network adapter into a plurality of regions for use in distributing a plurality of remote direct memory access (RDMA) context objects among a plurality of virtual functions; assigning, by the virtual machine monitor, a first region of the plurality of regions to a first virtual function of the plurality of virtual functions; storing, by the virtual machine monitor, a segment table in a segment table space of the network adapter; storing, by the virtual machine monitor, at least a first RDMA context object of the plurality of RDMA context objects in the first region, at a location referenced by a first entry in the segment table; and assigning, by the virtual machine monitor, the first entry to the first virtual function. - View Dependent Claims (22, 23, 24)
-
Specification