MODIFYING VIRTUAL MACHINE COMMUNICATIONS
First Claim
Patent Images
1. A system comprising:
- a first computing device to;
host a first virtual machine, andimplement a first host platform to;
determine that a communication generated by the first virtual machine that includes an indication that it is intended for a second virtual machine is to be transmitted to a network appliance, andas a consequence of determining that the communication generated by the first virtual machine is to be transmitted to the network appliance, modify the communication generated by the first virtual machine to include an indication that a computing device that hosts the network appliance is the destination for the communication generated by the first virtual machine; and
a second computing device communicatively coupled to the first computing device to;
host the second virtual machine, andimplement a second host platform to;
determine that a communication received at the second computing device that includes an indication that it is intended for the second virtual machine and an indication that it was transmitted by the computing device that hosts the network appliance originated from the first virtual machine, andas a consequence of determining that the communication received at the second computing device originated from the first virtual machine, overwrite the indication in the communication received at the second computing device that it is was transmitted by the computing device that hosts the network appliance with an indication that it originated from the first virtual machine.
2 Assignments
0 Petitions
Accused Products
Abstract
In one implementation, a host platform implemented on a computing device hosting one or more virtual machines determines that a communication generated by a virtual machine and intended for another virtual machine is to be transmitted to a network appliance. Consequently, the host platform modifies the communication generated by the virtual machine.
30 Citations
15 Claims
-
1. A system comprising:
-
a first computing device to; host a first virtual machine, and implement a first host platform to; determine that a communication generated by the first virtual machine that includes an indication that it is intended for a second virtual machine is to be transmitted to a network appliance, and as a consequence of determining that the communication generated by the first virtual machine is to be transmitted to the network appliance, modify the communication generated by the first virtual machine to include an indication that a computing device that hosts the network appliance is the destination for the communication generated by the first virtual machine; and a second computing device communicatively coupled to the first computing device to; host the second virtual machine, and implement a second host platform to; determine that a communication received at the second computing device that includes an indication that it is intended for the second virtual machine and an indication that it was transmitted by the computing device that hosts the network appliance originated from the first virtual machine, and as a consequence of determining that the communication received at the second computing device originated from the first virtual machine, overwrite the indication in the communication received at the second computing device that it is was transmitted by the computing device that hosts the network appliance with an indication that it originated from the first virtual machine. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method comprising:
-
receiving, at a host platform executing on a computing device, a network packet including an IP packet generated by a sender virtual machine executing on the computing device, the Network packet being intended for a recipient virtual machine; comparing, using the host platform executing on the computing device, information in an IP header of the Network packet to a network policy; based on a result of comparing the information in the IP header to the network policy, determining, using the host platform executing on the computing device, that the Network packet is to be transmitted to a network appliance; as a consequence of determining that the Network packet is to be transmitted to the network appliance, marking, using the host platform executing on the computing device, the Network packet with an IP address for the network appliance; identifying, using the host platform executing on the computing device, a Media Access Control (MAC) address for a computing device corresponding to the IP address for the network appliance; and rewriting, using the host platform executing on the computing device, a destination address of an Ethernet header of the Network packet specifying a MAC address for the recipient virtual machine with the MAC address identified as corresponding to the IP address for the network appliance. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A non-transitory, computer-readable storage medium storing instructions that, when executed by a host computer hosting a virtual machine, cause the computer to implement a host platform to:
-
receive a communication generated by the virtual machine hosted by the computing device that includes; first layer address information identifying the virtual machine hosted by the computing device as the source of the communication and a recipient virtual machine as the destination for the communication, and second layer address information identifying the virtual machine hosted by the computing device as the source of the communication and the recipient virtual machine as the destination for the communication; determine that the communication is to be transmitted to a network appliance; and as a consequence of determining that the communication is to be transmitted to a network appliance, rewrite the second layer address information identifying the recipient virtual machine as the destination for the communication with address information associated with the network appliance while preserving the first layer address information.
-
Specification