Network server having hardware-based virtual router integrated circuit for virtual networking
First Claim
1. A server comprising:
- a multi-core processor having a plurality of processing cores;
a plurality of virtual machines configured to execute on the multi-core processor;
a physical network interface to connect the server to a switch fabric comprising a plurality of switches that provide switching for packets through a physical network, wherein the physical network interface is coupled to the multi-core processor by a data path provided by an input/output (I/O) interface; and
a hardware-based virtual router executing within one or more integrated circuits positioned on the data path of the I/O interface between the physical network interface and the multi-core processor, the virtual router configured to apply routing information of a plurality of virtual networks to route packets between the physical network interface and the virtual machines configured to execute on the multi-core processor,wherein the virtual router is configured to receive outbound packets from the server by the I/O interface and construct outbound tunnel packets in accordance with an overlay network extending across the switch fabric, wherein the outbound tunnel packets encapsulate the outbound packets, andwherein the virtual router is configured to receive inbound tunnel packets from the switch fabric by the physical network interface, extract inner packets encapsulated within the inbound tunnel packets and route the inner packets to the virtual machines via the I/O interface in accordance with routing information for the virtual networks.
0 Assignments
0 Petitions
Accused Products
Abstract
A high-performance, scalable and drop-free data center switch fabric and infrastructure is described. The data center switch fabric may leverage low cost, off-the-shelf packet-based switching components (e.g., IP over Ethernet (IPoE)) and overlay forwarding technologies rather than proprietary switch fabric. In one example, host network accelerators (HNAs) are positioned between servers (e.g., virtual machines or dedicated servers) of the data center and an IPoE core network that provides point-to-point connectivity between the servers. The HNAs are hardware devices that embed virtual routers on one or more integrated circuits, where the virtual router are configured to extend the one or more virtual networks to the virtual machines and to seamlessly transport packets over the switch fabric using an overlay network. In other words, the HNAs provide hardware-based, seamless access interfaces to overlay technologies used for communicating packet flows through the core switching network of the data center.
-
Citations
19 Claims
-
1. A server comprising:
-
a multi-core processor having a plurality of processing cores; a plurality of virtual machines configured to execute on the multi-core processor; a physical network interface to connect the server to a switch fabric comprising a plurality of switches that provide switching for packets through a physical network, wherein the physical network interface is coupled to the multi-core processor by a data path provided by an input/output (I/O) interface; and a hardware-based virtual router executing within one or more integrated circuits positioned on the data path of the I/O interface between the physical network interface and the multi-core processor, the virtual router configured to apply routing information of a plurality of virtual networks to route packets between the physical network interface and the virtual machines configured to execute on the multi-core processor, wherein the virtual router is configured to receive outbound packets from the server by the I/O interface and construct outbound tunnel packets in accordance with an overlay network extending across the switch fabric, wherein the outbound tunnel packets encapsulate the outbound packets, and wherein the virtual router is configured to receive inbound tunnel packets from the switch fabric by the physical network interface, extract inner packets encapsulated within the inbound tunnel packets and route the inner packets to the virtual machines via the I/O interface in accordance with routing information for the virtual networks. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A method comprising:
-
receiving, from a processor of a server and by an input/output (I/O) interface coupled to the processor, a plurality of outbound packets; selecting, with a hardware-based virtual router executing on one or more integrated circuits of a network interface card, destinations within virtual networks for the outbound packets, wherein the one or more integrated circuits of the network interface card are positioned on a data path between the I/O interface and a physical network interface provided by the network interface card; constructing, with the virtual router, outbound tunnel packets based on the selected destinations and in accordance with an overlay network extending across a physical network to a plurality of other virtual routers executing within network interface cards deployed within other servers coupled to the physical network, wherein the outbound tunnel packets encapsulate the outbound packets; and forwarding, by the physical network interface of the network interface card, the outbound tunnel packets to the physical network. - View Dependent Claims (15, 16, 17, 18, 19)
-
Specification