# US 2019/0171471 A1 · Framework for networking and security services in virtual networks

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2019/0171471 A1
- Document ID: US20190171471A1
- Status: Published application
- Kind: A1
- Application number: 16/272,884
- Filed: 2019-02-11
- Published: 2019-06-06
- Earliest claimed: 2012-08-27
- Assignees: VMware, Inc.
- Applicants: VMware, Inc.
- Inventors: Raju KOGANTY; Alex NHU; Chi-Hsiang SU
- Web page: https://patentgrep.com/patent/US20190171471A1

## CPC

- G06F 9/45533: {Hypervisors; Virtual machine monitors}
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- G06F 9/5077: {Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455)}
- G06F 2009/45595: {Network integration; Enabling network access in virtual machine instances}
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

Methods, computer-readable storage medium and systems described herein facilitate registering and consuming network services on a virtual network. A virtual machine management server (VMMS) is configured to receive a service definition associated with a network service. The VMMS creates one or more service profiles based on the service definition. The VMMS configures a plurality of hosts based on the one or more service profiles such that the network service is usable, via a virtual network, by one or more virtual machines within the plurality of hosts.

## Claims

### Claim 1

A virtual infrastructure comprising:
a plurality of hosts each including virtual switches and at least one virtual machine executing therein, the virtual switches implementing a virtual network that can extend across multiple layer-2 domains on a physical network by causing encapsulation of layer-2 packets associated with the virtual network within a UDP encapsulation header; and
a management server configured to:
receive a service definition associated with a network service, the service definition including information about the network service and configuration instructions for configuring the plurality of hosts to enable the virtual machines connected to the virtual network to use the network service;
create a service profile describing services available from the network service, the service profile including a particular configuration of parameters of the network service; and
enable the network service for the one of the virtual machines by configuring, based on the service definition, the host on which the one of the virtual machines executes such that the network service with the particular configuration of parameters is usable, wherein the configuring of the host includes configuring the virtual switch or ports thereof in the host with rules and/or filters to forward packets from the one of the virtual machines to one or more insertion points at which the network service's software is installed to run.

### Claim 2 (depends on 1)

The virtual infrastructure of claim 1, wherein the management server is further configured to receive the service definition from the network service.

### Claim 3 (depends on 2)

The virtual infrastructure of claim 2, wherein the service definition includes service instructions for configuring the host.

### Claim 4 (depends on 3)

The virtual infrastructure of claim 3, wherein the service definition includes a reference to an insertion point, and wherein the insertion point is a virtual switch of each of the plurality of hosts.

### Claim 5 (depends on 3)

The virtual infrastructure of claim 3, wherein the insertion point referenced by the service definition is on the virtual network to which the virtual machines are connected.

### Claim 6 (depends on 3)

The virtual infrastructure of claim 3, wherein the insertion point referenced by the service definition is external to the virtual network to which the virtual machines are connected.

### Claim 7 (depends on 1)

The virtual infrastructure of claim 1, wherein the service definition includes one or more service levels.

### Claim 8 (depends on 1)

The virtual infrastructure of claim 1, wherein the network service performs operations of at least one of a load balancer, proxy, firewall, or virus scanner.

### Claim 9

At least one computer-readable storage medium having computer-executable instructions embodied thereon, wherein, when executed by at least one processor, the computer-executable instructions cause the at least one processor to:
receive a service definition associated with a network service, the service definition including information about the network service and configuration instructions for configuring the plurality of hosts, each including at least a virtual machine executing therein and a virtual switch, which implements a virtual network by causing layer 2 packets to be encapsulated within a UDP encapsulation header so that the virtual network can extend across multiple layer 2 domains on a physical network, the service definition and configuration instructions for enabling the virtual machines connected to the virtual network to use the network service;
create a service profile describing services available from the network service, the service profile including a particular configuration of parameters of the network service for use on a virtual machine of the virtual machines; and
enable the network service for the one of the virtual machines by configuring, based on the service definition, the host on which the one of the virtual machines executes such that the network service is usable, wherein the configuring of the host includes configuring the virtual switch or ports thereof in the host with rules and/or filters to forward packets from the one of the virtual machines to one or more insertion points at which the network service software is installed to run.

### Claim 10 (depends on 9)

The at least one computer-readable storage medium of claim 9, wherein the service profile is selected by a user browsing the directory of network services.

### Claim 11 (depends on 9)

The at least one computer-readable storage medium of claim 9, wherein the service definition includes a reference to an insertion point.

### Claim 12 (depends on 11)

The at least one computer-readable storage medium of claim 11, wherein the insertion point referenced by the service definition is the virtual switch of each of the plurality of hosts.

### Claim 13 (depends on 11)

The at least one computer-readable storage medium of claim 11, wherein the insertion point referenced by the service definition is on the virtual network to which the virtual machines are connected.

### Claim 14 (depends on 11)

The at least one computer-readable storage medium of claim 11, wherein the insertion point referenced by the service definition is external to the virtual network to which the virtual machines are connected.

### Claim 15 (depends on 11)

The at least one computer-readable storage medium of claim 11, wherein the computer-executable instructions further cause the at least one processor to register the network service by adding the service profile to a directory of network services, the directory indicating whether the service profile is available to the virtual machines.

### Claim 16

A method of registering a network service on a virtual network, the virtual network implemented by causing encapsulation of layer-2 packets that are associated with the virtual network within a UDP encapsulation header so that the virtual network can extend across multiple layer-2 domains on a physical network, the method comprising:
receiving a service definition associated with a network service, the service definition including information about the network service and configuration instructions for configuring a plurality of hosts, each including at least a virtual machine executing therein and a virtual switch, to enable the virtual machines connected to the virtual network to use the network service;
create a service profile describing services available from the network service, the network services comprising one or more of the following: the load balancer, the proxy, the firewall, and the virus scanner, the service profile including a particular configuration of parameters of the network service for use on a virtual machine of the plurality of virtual machines; and
enabling the network service for the one of the virtual machines by configuring, based on the service definition, the host o which the one of the virtual machines executed such that the network service with the particular configuration of parameters is usable, wherein the configuring of the host includes configuring the virtual switch or ports thereof in the host with rules and/or filters to forward packets from the one of the virtual machines to one or more insertion points at which the network srevice's software is installed to run.

### Claim 17 (depends on 16)

The method of claim 16, wherein the service profile is selected by a user browsing the directory of network services.

### Claim 18 (depends on 16)

The method of claim 16 wherein receiving a service definition comprises receiving a service definition that includes a reference to an insertion point.

### Claim 19 (depends on 16)

The method of claim 16, wherein the network service performs operations of at least one of a load balancer, proxy, firewall, or virus scanner.

### Claim 20 (depends on 16)

The method of claim 16, further comprising sending an enablement command to at least one of the plurality of hosts.
