Hypervisor routing between networks in a virtual networking environment
First Claim
Patent Images
1. A data processing system, comprising:
- a network interface having a connection to a physical next hop router of an external network;
a processor; and
data storage, coupled to the processor, that includes program code executable by the processor, the program code including a virtual machine monitor (VMM) that when executed causes the data processing system to perform;
instantiating a source virtual machine (VM);
in one or more data structures of the VMM, maintaining (1) address-based route information of network elements including the source VM and at least one physical network element in the external network and (2) additional information identifying one or more destination addresses as belonging to one or more virtual machines to which the VMM can communicate packets without the packets being routed by a default gateway;
in response to the VMM receiving from the source VM a packet specifying a first destination address of a destination VM and a second destination address of the default gateway, said first and second destination addresses being at different network layers, the VMM determining by reference to the first destination address and the additional information whether the packet can be communicated to the destination VM without the packet being routed by the default gateway; and
in response to the VMM determining that the packet can be communicated to the destination VM without the packet being routed by the default gateway, the VMM forwarding the packet to the destination VM such that the packet bypasses routing by the default gateway.
1 Assignment
0 Petitions
Accused Products
Abstract
A physical host executes a virtual machine monitor (VMM) that instantiates a source virtual machine (VM). In response to the VMM receiving from the source VM a packet specifying a first destination address of a destination VM and a second destination address of a default gateway, the VMM determines whether the packet can be communicated to the destination VM without the packet being routed by the default gateway. In response to the VMM determining that the packet can be communicated to the destination VM without the packet being routed by the default gateway, the VMM forwards the packet to the destination VM such that the packet bypasses routing by the default gateway.
-
Citations
26 Claims
-
1. A data processing system, comprising:
-
a network interface having a connection to a physical next hop router of an external network; a processor; and data storage, coupled to the processor, that includes program code executable by the processor, the program code including a virtual machine monitor (VMM) that when executed causes the data processing system to perform; instantiating a source virtual machine (VM); in one or more data structures of the VMM, maintaining (1) address-based route information of network elements including the source VM and at least one physical network element in the external network and (2) additional information identifying one or more destination addresses as belonging to one or more virtual machines to which the VMM can communicate packets without the packets being routed by a default gateway; in response to the VMM receiving from the source VM a packet specifying a first destination address of a destination VM and a second destination address of the default gateway, said first and second destination addresses being at different network layers, the VMM determining by reference to the first destination address and the additional information whether the packet can be communicated to the destination VM without the packet being routed by the default gateway; and in response to the VMM determining that the packet can be communicated to the destination VM without the packet being routed by the default gateway, the VMM forwarding the packet to the destination VM such that the packet bypasses routing by the default gateway. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13)
-
-
14. A program product, comprising:
-
a data storage device; and program code stored within the data storage device, the data storage device including a virtual machine monitor (VMM) that when executed causes a physical host to perform; instantiating a source virtual machine (VM); in one or more data structures of the VMM, maintaining (1) address-based route information of network elements including the source VM and at least one physical network element in the external network and (2) additional information identifying one or more destination addresses as belonging to one or more virtual machines to which the VMM can communicate packets without the packets being routed by a default gateway; in response to the VMM receiving from the source VM a packet specifying a first destination address of a destination VM and a second destination address of the default gateway, said first and second destination addresses being at different network layers, the VMM determining by reference to the first destination address and the additional information whether the packet can be communicated to the destination VM without the packet being routed by the default gateway; and in response to the VMM determining that the packet can be communicated to the destination VM without the packet being routed by the default gateway, the VMM forwarding the packet to the destination VM such that the packet bypasses routing by the default gateway. - View Dependent Claims (15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26)
-
Specification