IP Library Granted Patent US 9,338,128
Granted Patent B2
US 9,338,128 · App. 14/473,296 · Granted May 10, 2016

Controlling the status of network address space

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,338,128
App. No.
14/473,296
Granted
May 10, 2016
Kind
B2
Abstract

Methods, computer systems, and computer readable media provide for automated control of the status of network address space. Blocks of networking address space assigned to a network may be allocated from a free status to a new status based upon a request to allocate a particular size block. Blocks of networking address space assigned to a network that have been allocated to a new status may be deallocated to return to a free status based upon a request to deallocate the chosen block. Blocks of networking address space assigned to a network that have been allocated and otherwise manipulated such as through a lend from another network may be reclaimed for the original network upon a request to reclaim the chosen block.

Claims (59)

1. A computer-implemented method of allocating a portion of a network address space, comprising:

receiving from a user a request of a block size to allocate;

selecting from a definitional listing for the network address space a block having a free status and sufficient size to cover the block size to allocate;

determining whether the selected block is at least as large as a minimum lending limit set;

adjusting the selected block so that the selected block is at least as large as the minimum lending limit set; and

assigning a new status to the selected block within the definitional listing indicating the block is allocated.

2. The computer-implemented method of claim 1 , wherein selecting the block from the definitional listing further comprises selecting the block using one or more of a utilization fit methodology or a rated fit methodology according to a preference specified for the network address space in the definitional listing.

3. The computer-implemented method of claim 2 , wherein selecting the block utilizing the rated fit methodology comprises:

identifying a plurality of blocks that have a same rating; and

selecting the block from the plurality of blocks, wherein the block containing a highest numbered address.

4. The computer-implemented method of claim 2 , wherein selecting the block utilizing the rated fit methodology comprises:

identifying a plurality of blocks that have a same rating; and

selecting the block from the plurality of blocks, wherein the block containing a lowest numbered address.

5. The computer-implemented method of claim 1 , wherein receiving from the user the request of the block size to allocate comprises receiving a beginning network address and also receiving an ending network address.

6. The computer-implemented method of claim 1 , wherein receiving from the user the request of the block size to allocate comprises receiving a mask size or a netmask and also receiving a minimum starting network address.

7. The computer-implemented method of claim 1 , wherein receiving from the user the request of the block size to allocate comprises receiving a mask size or a netmask and also receiving a maximum ending network address.

8. The computer-implemented method of claim 1 , wherein selecting from the definitional listing for the network address space the block size to allocate comprises:

determining whether lending the block from a second network includes receiving a rated fit selection;

in response to determining that lending the block from the second network does include receiving a rated fit selection, rate each block of the second network of at least the requested size according to the block size and whether there is aggregation with child descendant aggregate blocks of a requesting or other child network;

reserving blocks by adjusting the rating for the blocks; and

selecting a block with the best rating.

9. The computer-implemented method of claim 8 , wherein reserving the blocks by adjusting the rating for the blocks comprises utilizing a weighting factor that is multiplied by the block size of the blocks and an aggregate child utilization factor.

10. A non-transitory computer storage medium containing computer-executable instructions that, when executed by a computer, cause the computer to:

receive from a user a request of a block size to allocate;

select from a definitional listing for the network address space a block having a free status and sufficient size to cover the block size to allocate;

determine whether the selected block is at least as large as a minimum lending limit set;

adjust the selected block so that the selected block is at least as large as the minimum lending limit set; and

assign a new status to the selected block within the definitional listing indicating the block is allocated.

11. The non-transitory computer storage medium of claim 10 , wherein selecting the block from the definitional listing further comprises selecting the block using one or more of a utilization fit methodology or a rated fit methodology according to a preference specified for the network address space in the definitional listing.

12. The non-transitory computer storage medium of claim 11 , wherein selecting the block utilizing the rated fit methodology comprises:

identifying a plurality of blocks that have a same rating; and

selecting the block from the plurality of blocks, wherein the block containing a highest numbered address.

13. The non-transitory computer storage medium of claim 11 , wherein selecting the block utilizing the rated fit methodology comprises:

identifying a plurality of blocks that have a same rating; and

selecting the block from the plurality of blocks, wherein the block containing a lowest numbered address.

14. The non-transitory computer storage medium of claim 10 , comprising further computer-executable instructions that cause the computer to return a fail notification when the block is not selected.

15. The non-transitory computer storage medium of claim 10 , wherein receiving from the user the request of the block size to allocate comprises receiving a mask size or a netmask and also receiving a minimum starting network address.

16. The non-transitory computer storage medium of claim 10 , wherein receiving from the user the request of the block size to allocate comprises receiving a mask size or a netmask and also receiving a maximum ending network address.

17. The non-transitory computer storage medium of claim 10 , wherein selecting from the definitional listing for the network address space the block size to allocate comprises:

determine whether lending the block from a second network includes receiving a rated fit selection;

in response to determining that lending the block from the second network does include receiving a rated fit selection, rate each block of the second network of at least the requested size according to the block size and whether there is aggregation with child descendant aggregate blocks of a requesting or other child network;

reserve blocks by adjusting the rating for the blocks; and

select a block with the best rating.

18. The non-transitory computer storage medium of claim 17 , wherein reserving the blocks by adjusting the rating for the blocks comprises utilizing a weighting factor that is multiplied by the block size of the blocks and an aggregate child utilization factor.

19. A system for managing a network address space, comprising:

a computer;

a definitional listing defining the network address space and accessible by the computer;

a user interface configured to allow a user to request allocation of an address for a device; and

a manager application executing on the computer and configured to

receive from a user via the user interface a request of a block size to allocate, the request comprising a mask size, a minimum starting network address and a maximum ending network address,

select from the definitional listing for the network address space a block having a free status and sufficient size to cover the block size to allocate,

determine whether the selected block is at least as large as a minimum lending limit set,

adjust the selected block so that the selected block is at least as large as the minimum lending limit set, and

assign a new status to the selected block within the definitional listing indicating the block is allocated.

20. The system of claim 19 , wherein select from the definitional listing for the network address space a block comprises:

determine whether lending the block from a second network includes receiving a rated fit selection;

in response to determining that lending the block from the second network does include receiving a rated fit selection, rate each block of the second network of at least the requested size according to the block size and whether there is aggregation with child descendant aggregate blocks of a requesting or other child network;

reserve blocks by adjusting the rating for the blocks utilizing a weighting factor that is multiplied by the block size of the blocks and an aggregate child utilization factor; and

select a block with the best rating.

Assignments (7)
RELEASE OF FIRST LIEN SECURITY INTEREST IN PATENTS (RELEASES RF 040575/0549) Recorded Dec 3, 2020
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: INFOBLOX INC.
Reel/Frame 054585/0914 →
FIRST LIEN SECURITY AGREEMENT Recorded Dec 2, 2020
From: INFOBLOX INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054615/0317 →
SECOND LIEN SECURITY AGREEMENT Recorded Dec 2, 2020
From: INFOBLOX INC.
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 054615/0331 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS (RELEASES RF 040579/0302) Recorded Oct 23, 2019
From: ROYAL BANK OF CANADA, AS COLLATERAL AGENT
To: INFOBLOX, INC.
Reel/Frame 050809/0980 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Nov 8, 2016
From: INFOBLOX INC.
To: ROYAL BANK OF CANADA, AS COLLATERAL AGENT
Reel/Frame 040579/0302 →
FIRST LIEN PATENT SECURITY AGREEMENT Recorded Nov 7, 2016
From: INFOBLOX INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 040575/0549 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 17, 2015
From: BOYLAN, DENNIS JOSEPH; DRUN, SEAN MING; BURROUGHS, KENNETH DOUGLAS; LEE, JOHN LELAND; SCHNEIDER, ANGELA KRISTINE
To: INFOBLOX INC.
Reel/Frame 036117/0562 →