Remote shared server peripherals over an ethernet network for resource virtualization
First Claim
Patent Images
1. A method to facilitate virtualizing I/0 resources, the method comprising:
- communicatively connecting a plurality of Ethernet network interfaces to a plurality of servers via a first Ethernet network, each server of the plurality of servers comprising one or more processors and memory;
communicatively connecting a first plurality of output ports of an I/0 director to a first plurality of external devices over a second Ethernet network;
mapping with a network processor a plurality of virtual network interface cards with the first plurality of output ports;
maintaining a plurality of media access control (MAC) addresses for the plurality of servers with the network processor; and
facilitating, with the I/O director, sharing of one or more common, shared Network Interface Controllers (NICs) and Host Bus Adapters (HBAs) to the plurality of servers at least in part by;
associating the plurality of servers with a plurality of virtual network interface cards executed by the I/0 director;
communicating with each of the plurality of servers using a management protocol over the first Ethernet network;
processing multicast discovery packets transmitted from virtual network interface card drivers of the plurality of servers according to the management protocol to facilitate discovery of remote I/0 resources of the second Ethernet network by the plurality of servers, the multicast discovery packets comprising server identifiers and corresponding server attributes;
creating server objects based at least in part on the multicast discovery packets;
determining whether the I/O director retains corresponding server profiles;
responding to the plurality of servers with unicast packets containing first information facilitating establishment of connections with a session manager of the I/O director;
establishing with learning logic a mapping of the plurality of virtual network interface cards to the plurality of MAC addresses, at least in part by storing mapping specifications as data packets arrive from one or more servers of the plurality of servers; and
in response to a connection being established with one server of the plurality of servers using the first information of the unicast packets, uploading, to the one server of the plurality of servers, second information on one or more of the plurality of virtual network interface cards and/or a plurality of virtual host bus adapters allocated to the one server.
2 Assignments
0 Petitions
Accused Products
Abstract
Provided is a novel approach for connecting servers to peripherals, such as NICs, HBAs, and SAS/SATA controllers. Also provided are methods of arranging peripherals within one or more I/O directors, which are connected to the servers over an Ethernet network. Such arrangement allows sharing the same resource among multiple servers.
280 Citations
20 Claims
-
1. A method to facilitate virtualizing I/0 resources, the method comprising:
-
communicatively connecting a plurality of Ethernet network interfaces to a plurality of servers via a first Ethernet network, each server of the plurality of servers comprising one or more processors and memory; communicatively connecting a first plurality of output ports of an I/0 director to a first plurality of external devices over a second Ethernet network; mapping with a network processor a plurality of virtual network interface cards with the first plurality of output ports; maintaining a plurality of media access control (MAC) addresses for the plurality of servers with the network processor; and
facilitating, with the I/O director, sharing of one or more common, shared Network Interface Controllers (NICs) and Host Bus Adapters (HBAs) to the plurality of servers at least in part by;associating the plurality of servers with a plurality of virtual network interface cards executed by the I/0 director; communicating with each of the plurality of servers using a management protocol over the first Ethernet network; processing multicast discovery packets transmitted from virtual network interface card drivers of the plurality of servers according to the management protocol to facilitate discovery of remote I/0 resources of the second Ethernet network by the plurality of servers, the multicast discovery packets comprising server identifiers and corresponding server attributes; creating server objects based at least in part on the multicast discovery packets; determining whether the I/O director retains corresponding server profiles; responding to the plurality of servers with unicast packets containing first information facilitating establishment of connections with a session manager of the I/O director; establishing with learning logic a mapping of the plurality of virtual network interface cards to the plurality of MAC addresses, at least in part by storing mapping specifications as data packets arrive from one or more servers of the plurality of servers; and in response to a connection being established with one server of the plurality of servers using the first information of the unicast packets, uploading, to the one server of the plurality of servers, second information on one or more of the plurality of virtual network interface cards and/or a plurality of virtual host bus adapters allocated to the one server. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. One or more non-transitory, machine-readable media having machine-readable instructions thereon, which, when executed by one or more processing devices, cause the one or more processing devices to:
cause communicatively connecting of a plurality of Ethernet network interfaces to a plurality of servers via a first Ethernet network, each server of the plurality of servers comprising one or more processors and memory; cause communicatively connecting of a first plurality of output ports of an I/O director to a first plurality of external devices over a second Ethernet network; map a plurality of virtual network interface cards with the first plurality of output ports; maintain a plurality of media access control (MAC) addresses for the plurality of servers; and facilitate, with the I/0 director, sharing of one or more common, shared Network Interface Controllers (NICs) and Host Bus Adapters (HBAs) to the plurality of servers at least in part by; associate the plurality of servers with the plurality of virtual network interface cards executed by the I/0 director; causing communicating with each of the plurality of servers using a management protocol over the first Ethernet network; processing multicast discovery packets transmitted from virtual network interface card drivers of the plurality of servers according to the management protocol to facilitate discovery of remote I/0 resources of the second Ethernet network by the plurality of servers, the multicast discovery packets comprising server identifiers and corresponding server attributes; creating server objects based at least in part on the multicast discovery packets; determining whether the I/O director retains corresponding server profiles; causing responding to the plurality of servers with unicast packets containing first information facilitating establishment of connections with a session manager of the I/O director; establishing with learning logic a mapping of the plurality of virtual network interface cards to the plurality of MAC addresses, at least in part by storing mapping specifications as data packets arrive from one or more servers of the plurality of servers; and in response to a connection being established with one server of the plurality of servers using the first information of the unicast packets, causing uploading, to the one server of the plurality of servers, of second information on one or more of the plurality of virtual network interface cards and/or a plurality of virtual host bus adapters allocated to the one server. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
15. A device to facilitate virtualizing I/O resources, the device comprising:
-
an I/O director communicatively connectable with a first Ethernet network and a second Ethernet network, the I/O director comprising; a plurality of Ethernet network interfaces communicatively connectable to a plurality of servers over the first Ethernet network; a first plurality of output ports communicatively connectable to a first plurality of external devices over the second Ethernet network; and a network processor operable to map a plurality of virtual network interface cards with the first plurality of output ports, wherein the network processor is further operable to maintain a plurality of media access control (MAC) addresses for the plurality of servers; the I/O director to facilitate sharing of one or more common, shared Network Interface Controllers (NICs) and Host Bus Adapters (HBAs) to the plurality of servers at least in part by; associating the plurality of servers with the plurality of virtual network interface cards executed by the I/O director; communicating with each of the plurality of servers using a management protocol over the first Ethernet network; processing multicast discovery packets transmitted from virtual network interface card drivers of the plurality of servers according to the management protocol to facilitate discovery of remote I/O resources of the second Ethernet network by the plurality of servers, the multicast discovery packets comprising server identifiers and corresponding server attributes; creating server objects based at least in part on the multicast discovery packets; determining whether the I/O director retains corresponding server profiles; responding to the plurality of servers with unicast packets containing first information facilitating establishment of connections with a session manager of the I/O director; establishing with learning logic a mapping of the plurality of virtual network interface cards to the plurality of MAC addresses, at least in part by storing mapping specifications as data packets arrive from one or more servers of the plurality of servers; and in response to a connection being established with one server of the plurality of servers using the first information of the unicast packets, uploading, to the one server of the plurality of servers, second information on one or more of the plurality of virtual network interface cards and/or a plurality of virtual host bus adapters allocated to the one server. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification