IP Library Granted Patent US 9,756,015
Granted Patent B2
US 9,756,015 · App. 14/671,120 · Granted Sep 5, 2017

Creating network isolation between virtual machines

Inventors: Randall C. Itskin (Austin, TX); Vijayalakshmi Krishnamurthy (Tamilnadu, IN); Monica J. Lemay (Cedar Park, TX); Yogesh G. Patgar (Bangalore, IN)
Assignee: International Business Machines Corporation
H04L63/0236G06F9/45558H04L45/021H04L45/72H04L45/74H04L45/745H04L61/2007H04L63/02H04L63/0209H04L63/0227H04L63/20G06F2009/45587G06F2009/45595
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,756,015
App. No.
14/671,120
Granted
Sep 5, 2017
Kind
B2
Abstract

A method, system, and program product for creating network isolation between virtual machines is provided, including receiving, by a security virtual machine (SVM), an outgoing network packet from a virtual machine (VM). The source internet protocol (IP) address and a source media access control (MAC) address is extracted from the outgoing network packet. A zone identifier table is searched for a zone id, whereby the zone identifier table includes the source IP address and the source MAC address. The outgoing network packet is sent to a physical Ethernet adapter connected to an external network switch whereby the external network switch is connected to an external network, based on the zone id not being found in the zone identifier table. The outgoing network packet is sent to a physical Ethernet adapter that is connected to an internal switch, based on the zone id being found in the zone identifier table.

Claims (64)

1. A computer program product for creating network isolation comprising a non-transitory computer readable storage medium readable by a processing circuit and storing instructions for execution by the processing circuit for performing a method comprising:

receiving, by a security virtual machine (SVM) agent in a virtual I/O server (VIOS) of a managed system, an outgoing network packet from a virtual machine (VM); virtual machine (VM),

wherein the SVM agent maintains one or more zone identifier tables, each zone identifier table in the SVM agent is associated with a logical zone in the managed system,

wherein the VM is contained within the logical zone and is associated with a specific company, organization or business membership, and

wherein the managed system is managed by a SVM manager;

extracting, by the SVM agent, source data and destination data from the outgoing network packet, wherein the source data includes at least a source internet protocol (IP) address and a source media access control (MAC) address, and wherein the destination data includes at least a destination IP address and a destination MAC address;

searching, by the SVM agent, a zone identifier table associated with a source entry matching the source data from the outgoing network packet, and extracting a source zone identifier (id) from the source entry;

searching, by the SVM agent, a zone identifier table associated with a destination entry matching the destination data from the outgoing network packet, and extracting a destination zone identifier (id) from the destination entry, based on the destination data being located in the zone identifier table associated with the source entry;

routing, by the SVM agent, the outgoing network packet to a first physical Ethernet adapter connected to an internal switch, based on the source zone id matching the destination zone id; and

routing, by the SVM agent, the outgoing network packet to a second physical Ethernet adapter connected to an external switch, based on the destination data not being located in the zone identifier table associated with the source entry, and the source zone id not matching the destination zone id,

wherein the external switch is connected to an external network, the internal switch is connected to an internal network, and an outgoing network packet routed to the internal switch is segregated from an outgoing network packet routed to the external switch.

2. The computer program product of claim 1 , further comprising:

receiving at the SVM agent, an incoming network packet for a VM;

applying, by a security firewall component of the SVM agent, one or more firewall rules;

delivering the incoming network packet to the VM through a virtual Ethernet adapter, based on the incoming network packet being allowed by the one or more firewall rules; and

rejecting the incoming network packet based on the incoming network packet not being allowed by the one or more firewall rules.

3. The computer program product of claim 1 , wherein the SVM agent comprises:

a security firewall comprising:

one or more firewall rules grouped by zone id, wherein each zone id corresponds to a logical zone in at least one of: a software defined network (SDN), a physical network, and a virtual network; and

a zone identifier table identifying the VMs belonging to the logical zones in the managed system.

4. The computer program product of claim 1 , wherein the zone identifier table comprises at least:

a zone id,

a VM identifier (id),

an IP address,

a MAC address, and

an instance identifier (id).

5. The computer program product of claim 1 , further comprising:

receiving, by the SVM agent, the zone identifier table from the SVM manager.

6. The computer program product of claim 1 , further comprising:

modifying one or more zone identifier tables, by the SVM manager;

modifying the one or more firewall rules; and

pushing the modified one or more zone identifier tables and the modified one or more firewall rules to the SVM agents, based on the VMs and logical zones resident on the VM.

7. A computer system for creating network isolation comprising a memory, a processing unit communicatively coupled to the memory, and a management module communicatively coupled to the memory and processing unit, wherein the management module is configured to perform the steps of a method comprising:

receiving, by a security virtual machine (SVM) agent in a virtual I/O server (VIOS) of a managed system, an outgoing network packet from a virtual machine (VM),

wherein the SVM agent maintains one or more zone identifier tables, each zone identifier table in the SVM agent is associated with a logical zone in the managed system,

wherein the VM is contained within the logical zone and is associated with a specific company, organization or business membership, and

wherein the managed system is managed by a SVM manager;

extracting, by the SVM agent, source data and destination data from the outgoing network packet, wherein the source data includes at least a source internet protocol (IP) address and a source media access control (MAC) address, and wherein the destination data includes at least a destination IP address and a destination MAC address;

searching, by the SVM agent, a zone identifier table associated with a source entry matching the source data from the outgoing network packet, and extracting a source zone identifier (id) from the source entry;

searching, by the SVM agent, a zone identifier table associated with a destination entry matching the destination data from the outgoing network packet, and extracting a destination zone identifier (id) from the destination entry, based on the destination data being located in the zone identifier table associated with the source entry;

routing, by the SVM agent, the outgoing network packet to a first physical Ethernet adapter connected to an internal switch, based on the source zone id matching the destination zone id; and

routing, by the SVM agent, the outgoing network packet to a second physical Ethernet adapter connected to an external switch, based on the destination data not being located in the zone identifier table associated with the source entry, and the source zone id not matching the destination zone id,

wherein the external switch is connected to an external network, the internal switch is connected to an internal network, and an outgoing network packet routed to the internal switch is segregated from an outgoing network packet routed to the external switch.

8. The computer system of claim 7 , further comprising:

receiving at the SVM agent, an incoming network packet for a VM;

applying, by a security firewall component of the SVM agent, one or more firewall rules;

delivering the incoming network packet to the VM through a virtual Ethernet adapter, based on the incoming network packet being allowed by the one or more firewall rules; and

rejecting the incoming network packet based on the incoming network packet not being allowed by the one or more firewall rules.

9. The computer system of claim 7 , wherein the SVM agent comprises:

a security firewall comprising:

one or more firewall rules grouped by zone id, wherein each zone id corresponds to a logical zone in at least one of: a software defined network (SDN), a physical network, and a virtual network; and

a zone identifier table identifying the VMs belonging to the logical zones in the managed system.

10. The computer system of claim 7 , wherein the zone identifier table comprises at least:

a zone id,

a VM identifier (id),

an IP address,

a MAC address, and

an instance identifier (id).

11. The computer system of claim 7 , further comprising:

receiving, by the SVM agent, the zone identifier table from the SVM manager.

12. The computer system of claim 7 , further comprising:

modifying one or more zone identifier tables, by the SVM manager;

modifying the one or more firewall rules; and

pushing the modified one or more zone identifier tables and the modified one or more firewall rules to the SVM agents, based on the VMs and logical zones resident on the VM.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 27, 2015
From: ITSKIN, RANDALL C.; KRISHNAMURTHY, VIJAYALAKSHMI; LEMAY, MONICA J.; PATGAR, YOGESH G.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 035275/0388 →
Continuity (1)
Related Publication 20160285913A1 · Sep 29, 2016