# US 10,313,428 B2 · Multi-subnet participation for network gateway in a cloud environment

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

- Number: US 10,313,428 B2
- Document ID: US10313428B2
- Status: Granted
- Kind: B2
- Application number: 14/990,791
- Filed: 2016-01-08
- Published: 2016-08-11
- Granted: 2019-06-04
- Earliest claimed: 2015-02-07
- Assignees: VMware, Inc.
- Applicants: Vmware, Inc.
- Inventors: Sujeet Banerjee; Anirudh Agarwal; Amarjeet Singh; Sureshbabu Koyadan Chathoth
- Web page: https://patentgrep.com/patent/US10313428B2

## CPC

- H04L 67/10: in which an application is distributed across nodes in the network (software deployment G06F8/60; multiprogramming arrangements G06F9/46)
- G06F 9/45558: {Hypervisor-specific management and integration aspects}
- H04L 61/5007: Internet protocol [IP] addresses
- H04L 61/5061: Pools of addresses
- G06F 2009/45595: {Network integration; Enabling network access in virtual machine instances}
- H04L 2101/668: Internet protocol [IP] address subnets
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## Abstract

A network management server allocates network addresses to a network gateway connected to a public network after receiving an allocation request that specifies a number of network addresses to allocate to the network gateway. The network management server determines a first and second subnets of the public network having, respectively, first and second pools of available network addresses capable of being allocated to devices on the public network, and allocates one or more available network addresses from the first and second pools to the network gateway.

## Claims

### Claim 1

A method of allocating network addresses by a network management server to a network gateway connected to a public network, the method comprising:
receiving an allocation request that specifies a number of network addresses to allocate to the network gateway;
determining first and second subnets of the public network having, respectively, first and second pools of available network addresses capable of being allocated to devices on the public network;
allocating one or more available network addresses from the first and second pools to the network gateway; and
associating a first indicator with a first one of the available network addresses in the first pool, the first indicator indicating that the associated network address represents participation of the network gateway in the first subnet.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
determining that the first pool has fewer available network addresses than the number of network addresses specified in the allocation request, wherein
the allocating of the one or more network addresses from the second pool to the network gateway is carried out in response to the determining.

### Claim 3 (depends on 2)

The method of claim 2, further comprising determining that one or more network addresses in the first pool have been allocated to devices other than the network gateway.

### Claim 4 (depends on 2)

The method of claim 2, further comprising:
associating a second indicator with one of the network addresses allocated from the second pool, the second indicator indicating that the associated network address represents participation of the network gateway in the second subnet.

### Claim 5 (depends on 4)

The method of claim 4, further comprising:
associating a third indicator with one of the network addresses allocated from one of the first and second pools, the third indicator indicating that the associated network address represents the network address of the network gateway on the public network.

### Claim 6 (depends on 1)

The method of claim 1, further comprising:
determining that the first and second pools have fewer available network addresses than the number of addresses specified in the allocation request; and
in response to the determining, generating an error message that indicates that the allocation request has failed.

### Claim 7 (depends on 1)

The method of claim 1, wherein the network gateway routes network traffic between the public network and one or more virtualized data centers.

### Claim 8 (depends on 1)

The method of claim 1, wherein the network addresses are Internet Protocol (IP) addresses.

### Claim 9

A non-transitory computer-readable medium that stores instructions executable by a computer, wherein the instructions, when executed, cause the computer to perform a method of allocating network addresses by a network management server to a network gateway connected to a public network, the method comprising:
receiving an allocation request that specifies a number of network addresses to allocate to the network gateway;
determining first and second subnets of the public network having, respectively, first and second pools of available network addresses capable of being allocated to devices on the public network;
allocating one or more available network addresses from the first and second pools to the network gateway; and
associating a first indicator with a first one of the available network addresses in the first pool, the first indicator indicating that the associated network address represents participation of the network gateway in the first subnet.

### Claim 10 (depends on 9)

The computer-readable medium of claim 9, further comprising:
determining that the first pool has fewer available network addresses than the number of network addresses specified in the allocation request, wherein
the allocating of the one or more network addresses from the second pool to the network gateway is carried out in response to the determining.

### Claim 11 (depends on 10)

The computer-readable medium of claim 10, further comprising determining that one or more network addresses in the first pool have been allocated to devices other than the network gateway.

### Claim 12 (depends on 10)

The computer-readable medium of claim 10, further comprising:
associating a second indicator with one of the network addresses allocated from the second pool, the second indicator indicating that the associated network address represents participation of the network gateway in the second subnet.

### Claim 13 (depends on 12)

The computer-readable medium of claim 12, further comprising:
associating a third indicator with one of the network addresses allocated from one of the first and second pools, the third indicator indicating that the associated network address represents the network address of the network gateway on the public network.

### Claim 14 (depends on 9)

The computer-readable medium of claim 9, further comprising:
determining that the first and second pools have fewer available network addresses than the number of addresses specified in the allocation request; and
in response to the determining, generating an error message that indicates that the allocation request has failed.

### Claim 15 (depends on 9)

The computer-readable medium of claim 9, wherein the network gateway routes network traffic between the public network and one or more virtualized data centers.

### Claim 16 (depends on 9)

The computer-readable medium of claim 9, wherein the network addresses are Internet Protocol (IP) addresses.

### Claim 17

A method of deallocating network addresses by a network management server from a network gateway connected to a public network, the method comprising:
receiving a deallocation request that specifies a number of network addresses to deallocate from the network gateway;
determining a first subnet of the public network having a first set of one or more network addresses which have been allocated to the network gateway, wherein a first network address of the first set of one or more network addresses is associated with an indicator that indicates participation of the network gateway in the first subnet; and
deallocating one or more of the first set of network addresses from the network gateway and returning the deallocated network addresses to a first address pool associated with the first subnet.

### Claim 18 (depends on 17)

The method of claim 17, further comprising:
determining that fewer network addresses than the number of network addresses specified in the deallocation request have been allocated to the network gateway from the first subnet; and
in response to said determining:
determining a second subnet of the public network having a second set of one or more network addresses which have been allocated to the network gateway; and
deallocating one or more of the second set of network addresses from the network gateway and returning the deallocated network addresses to a second address pool associated with the second subnet.

### Claim 19 (depends on 18)

The method of claim 18, further comprising determining, before deallocating each network address from the network gateway, that the network address to be deallocated does not represent the network address of the network gateway on the public network.

### Claim 20 (depends on 18)

The method of claim 18, further comprising:
determining that one of the deallocated network addresses in the second set represents participation of the network gateway in the second subnet; and
associating an indicator with another network address allocated to the network gateway, the indicator indicating that the associated network address represents participation of the network gateway in the second subnet.
