CA2881149C - Dynamically allocating network addresses - Google Patents
Dynamically allocating network addresses Download PDFInfo
- Publication number
- CA2881149C CA2881149C CA2881149A CA2881149A CA2881149C CA 2881149 C CA2881149 C CA 2881149C CA 2881149 A CA2881149 A CA 2881149A CA 2881149 A CA2881149 A CA 2881149A CA 2881149 C CA2881149 C CA 2881149C
- Authority
- CA
- Canada
- Prior art keywords
- network address
- address allocation
- computing device
- subdivision
- computing devices
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5007—Internet protocol [IP] addresses
- H04L61/5014—Internet protocol [IP] addresses using dynamic host configuration protocol [DHCP] or bootstrap protocol [BOOTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5061—Pools of addresses
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L61/00—Network arrangements, protocols or services for addressing or naming
- H04L61/50—Address allocation
- H04L61/5038—Address allocation for local use, e.g. in LAN or USB networks, or in a controller area network [CAN]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
Description
CROSS REFERENCE TO RELATED APPLICATION
[0001] The following application claims priority to, and the benefit of, U.S. Patent Application entitled "DYNAMICALLY ALLOCATING NETWORK ADDRESSES" filed on September 18, 2012 having application number 13/621,891.
BACKGROUND
Internet protocol (IP) network addresses are associated with subnet masks, which indicate the portion of the network address that corresponds to a routing prefix and the portion of the network address that corresponds to a host identifier for a subnet. A subnet is a logically visible subdivision of an IP network. Subnets may be arranged logically in a hierarchical architecture, thereby partitioning network address space into a tree-like routing structure.
Network address exhaustion is a potential problem for IP version 4, given that the network addresses are just 32 bits in length. IP version 6 uses 128-bit addresses and thus is not as easily susceptible to address exhaustion. Nonetheless, in spite of the address exhaustion issues, IP version 4 remains in common use.
SUMMARY
[0002a] In one embodiment there is provided a non-transitory computer-readable medium embodying computer-readable instructions executable in at least one computing device, including: instructions that direct the at least one computing device to initially assign a first network address allocation to a subdivision of a network including a plurality of computing devices based at least in part on a respective computing device type for individual ones of the plurality of computing devices; instructions that direct the at least one computing device to configure a router for the subdivision to implement the first network address allocation; instructions that direct the at least one computing device to obtain data indicating a reconfiguration of the plurality of computing devices to host an increased quantity of virtualized machine instances; instructions that direct the at least one computing device to dynamically assign a second network address allocation to the subdivision of the network based at least in part on the reconfiguration of the plurality of computing devices;
instructions that direct the at least one computing device to reconfigure the router for the subdivision to implement the second network address allocation; instructions that direct the at least one computing device to obtain data indicating a subsequent reconfiguration of the plurality of computing devices included in the subdivision to host a reduced quantity of virtualized machine instances; instructions that direct the at least one computing device to release a third network address allocation assigned to the subdivision based at least in part on the subsequent reconfiguration of the plurality of computing devices; and instructions that direct the at least one computing device to reconfigure the router for the subdivision to exclude advertising of the third network address allocation.
[0002b] In another embodiment there is provided a system, including at least one computing device and an address allocation service executable by the at least one computing device. The address allocation service is configured to: initially assign a first network address allocation to a subdivision of a network, the subdivision including a plurality of computing devices; configure a router for the subdivision to implement the first network address allocation; obtain data indicating a reconfiguration of the plurality of computing devices, wherein the reconfiguration changes a quantity of virtualized machine instances hosted by the plurality of computing devices; dynamically assign a second network address allocation to the subdivision of the network based at least in part on the reconfiguration of the plurality of computing devices; and reconfigure the router for the subdivision to implement the second network address allocation.
la [0002c] In another embodiment there is provided a method, involving:
obtaining, by at least one computing device, data indicating a reconfiguration of at least one of a plurality of computing devices included in a subdivision of a network, the subdivision being assigned a network address allocation, wherein the reconfiguration changes a quantity of virtualized machine instances hosted by the at least one of the plurality of computing devices;
determining, by the at least one computing device, whether to release an assignment of a first subset of the network address allocation based at least in part on the reconfiguration of the at least one of the plurality of computing devices; dynamically releasing, by the at least one computing device, the assignment of the first subset of the network address allocation in response to the determining; and reconfiguring, by the at least one computing device, a router for the subdivision to advertise a second subset of the network address allocation instead of the network address allocation.
[0002d] In another embodiment there is provided a system, including at least one computing device and at least one service executable in the at least one computing device.
When executed the at least one service causes the at least one computing device to at least: determine that a quantity of virtualized machine instances executed on a plurality of computing devices has changed; dynamically assign an updated network address allocation to a subdivision of a network in response to the quantity of virtualized machine instances, the subdivision including the plurality of computing devices; and reconfigure a router for the subdivision to implement the updated network address allocation.
[0002e] In another embodiment there is provided a system, including at least one computing device and at least one service executable in the at least one computing device.
When executed the at least one service causes the at least one computing device to at least: determine that a quantity of virtualized machine instances hosted by a computing device included in a subdivision of a network has changed, the subdivision being assigned a 1 b network address allocation; dynamically release an assignment of a first subset of the network address allocation in response to the quantity of virtualized machine instances; and reconfigure a router for the subdivision to advertise a second subset of the network address allocation instead of the network address allocation.
[0002f] In another embodiment there is provided a method, involving:
determining, by at least one computing device, that a quantity of virtualized machine instances executed on a plurality of computing devices has changed; dynamically assigning, by the at least one computing device, an updated network address allocation to a subdivision of a network in response to the quantity of virtualized machine instances, the subdivision including the plurality of computing devices; and reconfiguring, by the at least one computing device, a router for the subdivision to implement the updated network address allocation.
BRIEF DESCRIPTION OF THE DRAWINGS
1c
DETAILED DESCRIPTION
Publicly accessible IP
addresses are difficult to come by, and their allocation is carefully managed.
Even private IP
networks may face address exhaustion issues. Large private networks typically use, for example, the "10Ø0.0/8" address space (represented in classless inter-domain routing (CIDR) notation), which uses an eight-bit network prefix and a 24-bit host identifier and provides for nearly 17 million addresses (approximately 224 addresses).
However, if network address allocations are not managed well, address exhaustion issues may arise. For example, an organization may naively choose to allocate address space for a 722"
network for each rack in the data centers of the organization. A "/22" network provides for approximately 1024 (i.e., 210) addresses. An organization using such an allocation scheme would be limited to 16,384 (or 214) racks having 722" allocations within the "10Ø0.0/8" address space. Such a limitation may present a real problem for large organizations.
To illustrate, there may be some number of aggregation routers in the network, with some quantity of racks behind each of the aggregation routers. Suppose a "/15"
network were allocated to each aggregation router. This provides for an allocation of approximately 131,072 (or 217) addresses to each router, which could be further divided into 128 (or 27) rack allocations of 1024 addresses each. Also, within the "10Ø0.0/8" address space, there could be 128 (or 27) such aggregation routers. Scalability problems may arise with the total number of aggregation routers and/or the number of racks per aggregation router.
large quantity such as 1024 may be selected as an upper bound, thereby leading to inefficiencies in allocation. Further, in some cases, the upper bound may be too low for racks that are densely configured.
The network 109 includes, for example, the Internet, intranets, extranets, wide area networks (WANs), local area networks (LANs), wired networks, wireless networks, or other suitable networks, etc., or any combination of two or more such networks.
112N, which may be provided connectivity to the network 109 by way of one or more aggregation routers 115. Although described as "racks," the racks 112 may correspond to other subdivisions of a hosted computing environment 103, e.g., data centers, rooms within data centers, groupings of racks, groupings of computing equipment, and so on. Each of the racks 112 may include a plurality of computing devices 118a ... 118N and a router 121. The router 121 may correspond to a top-of-rack (TOR) router or other device that provides connectivity to the network 109 for the respective rack 112. The routers 121 may employ a routing protocol such as routing information protocol (RIP), open shortest path first (OSPF) or other routing protocols.
Routers 121 may in some cases be constrained by the number of separate network address allocations that can be advertised.
A given computing device 118 may be reconfigured dynamically to have any number of the machine instances 124.
The hosted computing environment 103 may have multiple aggregation routers 115 servicing different racks 112 or subdivisions of the network 109. The aggregation routers 115 may employ a routing protocol such as OSPF or other routing protocols. Aggregation routers 115 may in some cases be constrained by the number of separate network address allocations that can be advertised.
Such computing devices may be located in a single installation or may be distributed among many different geographical locations. For example, the computing environment 106 may include a plurality of computing devices that together may comprise a cloud computing resource, a grid computing resource, and/or any other distributed computing arrangement. In some cases, the computing environment 106 may correspond to an elastic computing resource where the allotted capacity of processing, network, storage, or other computing-related resources may vary over time.
In various embodiments, the address allocation service 127 may be split into two or more services, e.g., where one service includes the business logic to determine whether to assign or release allocations, and another service performs the implementation in the hosted computing environment 103.
have been assigned to a particular router 121 associated with a rack 112.
Us) that provide graphics processing resources, system memory, data storage characteristics such as capacity, storage bandwidth, and storage input/output operations per second (10PS), network bandwidth, and/or other hardware characteristics. In one embodiment, all computing devices 203a, 203b 203n may have a first hardware configuration, while all computing devices 206a, 206b ... 206n may have a second hardware configuration.
Although only two sets of computing devices 203 and 206 are shown, it is understood that there may be any number of sets of computing devices 203 and 206 having different hardware configurations.
The data backup archive may not respond to many requests, but when a request is received, a large quantity of bandwidth may be preferred to transfer data from the data backup archive.
A machine instance may correspond to an actual machine or to a virtual machine. A virtual machine instance is a virtualized computer system, or a software implementation of a physical computing system. Virtual machines may provide for multiple and/or different operating system environments to run concurrently on a single system having a processor circuit and a memory.
As a non-limiting example, multiple instances of a Linux operating system environment may execute concurrently with multiple instances of a Microsoft Windows operating system environment on a single system. Each machine instance may be controlled by different customers, who may have administrative access only to their own instance(s) and no access to the instances of other customers. Multiple machine instances may in fact execute concurrently on a computer system including parallel processors, although multiple instances may appear to execute concurrently on a multithreaded computer system with fewer processors than instances.
As a non-limiting example, each MI large 212 instance may have four CPU-equivalent units, 15 GB of system memory, and 1,000 GB of data storage. Each MI medium 215 instance may have two CPU-equivalent units, 10 GB of system memory, and 600 GB of data storage.
Also, each MI
small 218 instance may have one CPU-equivalent unit, 5 GB of system memory, and 250 GB of data storage. In the example of FIG. 2, computing devices 206 may also support three types of machine instances, namely, MI large 221, MI medium 224, and MI small 227. MI
large 221, MI
medium 224, and MI small 227 may have the same respective configurations as MI
large 212, MI
medium 215, and MI small 218 or may have different configurations as desired.
As a non-limiting example, a MI large 221 instance may have four CPU-equivalent units, 20 GB of system memory, and 1,000 GB of data storage.
medium 224a, 224b, 224c instances are executing on computing device 206b, and one MI
medium 224d instance and four MI small 227a, 227b, 227c, 227d instances are executing on computing device 206n. Each machine instance may be associated with a customer, though any customer may be associated with any number of machine instances.
The data store 209 may be representative of a plurality of data stores 209 as can be appreciated.
The data stored in the data store 209 includes, for example, machine image data 230, customer data 233, and potentially other data.
Machine image data 230 may include one or more disk images of an operating system environment. Some of the disk images may be preconfigured for use by any customer or subset of customers, while others may be customized for a particular customer or subset of customers.
In one embodiment, one disk image may be loaded by multiple machine instances.
rack 112 or other subdivision may be configured for the hosted computing environment 103 behind the aggregation router 115. Multiple other routers and networking hardware may be interposed between the rack 112 and the aggregation router '115 in various embodiments. In some embodiments, the router 121 in the rack 112 may be coupled to the network 109 without an aggregation router 115.
Various addresses in the block may be reserved as a network number, gateway address, broadcast address, and so on. As the rack 112 is reconfigured, address utilization may rise.
Additional computing devices 118 may be added to the rack 112, additional machine instances 124 may be added to the computing devices 118, customers may request additional network addresses for their machine instances 124 or computing devices 118, and/or other reconfigurations may take place. The network monitor service 130 may monitor the network topology, address allocations, device usage including address utilization, and/or other , information regarding the hosted computing environment 103. Data associated with and indicating the reconfiguration may be stored in the network topology data 133, the address allocation history '139, the device type data 142, the device usage data 145, etc. Such data indicating a reconfiguration may be provided directly to the address allocation service 127 in some embodiments. Thresholds may be established to ensure that address allocations are performed in advance of address exhaustion.
Consequently, the address allocation service 127 may decide to assign another 727" block of network addresses to the particular rack 112. The block of network addresses in some cases may be selected as a subset of the addresses allocated to the aggregation router 115. Upon assignment, the address allocation service 127 may automatically reconfigure the router 121 to implement the additional address allocation.
networks are contiguously allocated, the address allocation service 127 may be configured to roll up the two 727" allocations into one "/26" allocation. Likewise, if four "/27" networks are contiguously allocated, the address allocation service 127 may be configured to roll up the four 727"
allocations into one "/25" allocation. In one embodiment, by combining contiguous allocations, additional addresses that were previously reserved addresses for the smaller allocations (e.g., network number, broadcast address, etc.) may become assignable to computing devices 118.
By performing this route aggregation or summarization, the routing demands on the routers 121 and aggregation routers 115 may be reduced.
blocks may be assigned to a particular rack 112. The address allocations 136 may be aggregated into a single 725" block in spite of including one unassigned 727" block within the 725" block in order to simplify routing advertisements. The unassigned 727" block may be reserved for future use by the rack 112 or may be split off later for use by another rack 112 depending on demand.
For example, a rack 112 that was previously assigned an address allocation 136 of a 722"
block may now only be using 400 addresses, which could fit within a 723" block. Such reduced utilization may occur when fewer machine instances 124 are being hosted on gaining computing devices 118 that have become relatively underpowered. Consequently, the address allocation service 127 may release another 723" block from the original 722"
allocation.
Thresholds may be used to provide hysteresis. Hysteresis may be desirable to avoid releasing an allocation that could be used within a short while. For example, address utilization might temporarily dip below 512 for a 722" block, but a 723" might not be released until address utilization is below 450.
The address allocation service 127 then proceeds to box 324.
1) obtains data, e.g., from the network monitor service 130 (FIG. 1), that indicates a reconfiguration of the computing devices 118 (FIG. 1) in a subdivision of a network 109 (FIG. 1) (e.g., rack 112 (FIG.
1), a portion of a hosted computing environment 103 (FIG. 1) behind an aggregation router 115 (FIG. 1), etc.). For example, computing devices 118 may be removed, computing devices 118 may be reconfigured with fewer machine instances 124, computing devices 118 may be reconfigured for customers who tend to use fewer network addresses, and so on.
In the case of FIG. 4, the reconfiguration indicates a reduction in actual or predicted address utilization.
If the address allocation 136 is not releasable, the address allocation service 127 continues to box 409.
lf, instead, active address assignments are to be moved, the address allocation service 127 continues from box 415 to box 421 and migrates active address assignments away from a releasable subset of the address allocation 136. This may involve automatic reconfiguration of the computing devices 118 that are involved, notifying the customers associated with the computing devices 118, etc.
address assignments may be migrated away from "10.1.1.0/24" and "10.1.1.0/24"
may be released. The route to "10.1Ø0/24" may subsequently be advertised. If the released subset of the address allocation 136 is not aggregated with another subset, then it may be the case that no new route is advertised as a result. The address allocation service 127 proceeds to box 409.
The machine code may be converted from the source code, etc. If embodied in hardware, each block may represent a circuit or a number of interconnected circuits to implement the specified logical function(s).
For example, the order of execution of two or more blocks may be scrambled relative to the order shown. Also, two or more blocks shown in succession in FIGS. 3 and 4 may be executed concurrently or with partial concurrence. Further, in some embodiments, one or more of the blocks shown in FIGS. 3 and 4 may be skipped or omitted. In addition, any number of counters, state variables, warning semaphores, or messages might be added to the logical flow described herein, for purposes of enhanced utility, accounting, performance measurement, or providing troubleshooting aids, etc. It is understood that all such variations are within the scope of the present disclosure.
Claims (44)
ARE DEFINED AS FOLLOWS:
non-transitory computer-readable medium embodying computer-readable instructions executable in at least one computing device, comprising:
instructions that direct the at least one computing device to initially assign a first network address allocation to a subdivision of a network including a plurality of computing devices based at least in part on a respective computing device type for individual ones of the plurality of computing devices;
instructions that direct the at least one computing device to configure a router for the subdivision to implement the first network address allocation;
instructions that direct the at least one computing device to obtain data indicating a reconfiguration of the plurality of computing devices to host an increased quantity of virtualized machine instances;
instructions that direct the at least one computing device to dynamically assign a second network address allocation to the subdivision of the network based at least in part on the reconfiguration of the plurality of computing devices;
instructions that direct the at least one computing device to reconfigure the router for the subdivision to implement the second network address allocation;
instructions that direct the at least one computing device to obtain data indicating a subsequent reconfiguration of the plurality of computing devices included in the subdivision to host a reduced quantity of virtualized machine instances;
instructions that direct the at least one computing device to release a third network address allocation assigned to the subdivision based at least in part on the subsequent reconfiguration of the plurality of computing devices; and instructions that direct the at least one computing device to reconfigure the router for the subdivision to exclude advertising of the third network address allocation.
at least one computing device; and an address allocation service executable by the at least one computing device, the address allocation service being configured to:
initially assign a first network address allocation to a subdivision of a network, the subdivision including a plurality of computing devices;
configure a router for the subdivision to implement the first network address allocation;
obtain data indicating a reconfiguration of the plurality of computing devices, wherein the reconfiguration changes a quantity of virtualized machine instances hosted by the plurality of computing devices;
dynamically assign a second network address allocation to the subdivision of the network based at least in part on the reconfiguration of the plurality of computing devices; and reconfigure the router for the subdivision to implement the second network address allocation.
predict the quantity of virtualized machine instances for at least one of the plurality of computing devices based at least in part on the respective computing device type; and wherein the first network address allocation is based at least in part on the quantity of virtualized machine instances that is predicted.
obtaining, by at least one computing device, data indicating a reconfiguration of at least one of a plurality of computing devices included in a subdivision of a network, the subdivision being assigned a network address allocation, wherein the reconfiguration changes a quantity of virtualized machine instances hosted by the at least one of the plurality of computing devices;
determining, by the at least one computing device, whether to release an assignment of a first subset of the network address allocation based at least in part on the reconfiguration of the at least one of the plurality of computing devices;
dynamically releasing, by the at least one computing device, the assignment of the first subset of the network address allocation in response to the determining; and reconfiguring, by the at least one computing device, a router for the subdivision to advertise a second subset of the network address allocation instead of the network address allocation.
obtaining, in the at least one computing device, data indicating a subsequent reconfiguration of at least one of the plurality of computing devices included in the subdivision;
assigning, in the at least one computing device, another network address allocation to the subdivision based at least in part on the subsequent reconfiguration of the at least one of the plurality of computing devices; and automatically reconfiguring, in the at least one computing device, the router for the subdivision to advertise the other network address allocation in addition to the second subset of the network address allocation.
at least one computing device; and at least one service executable in the at least one computing device, wherein when executed the at least one service causes the at least one computing device to at least:
determine that a quantity of virtualized machine instances executed on a plurality of computing devices has changed;
dynamically assign an updated network address allocation to a subdivision of a network in response to the quantity of virtualized machine instances, the subdivision including the plurality of computing devices; and reconfigure a router for the subdivision to implement the updated network address allocation.
determine a network address assignment velocity associated with the plurality of computing devices; and determine the updated network address allocation based at least in part on the network address assignment velocity.
determine a respective computing device type associated with each of the plurality of computing devices; and determine the updated network address allocation based at least in part on the respective computing device type associated with each of the plurality of computing devices.
at least one computing device; and at least one service executable in the at least one computing device, wherein when executed the at least one service causes the at least one computing device to at least:
determine that a quantity of virtualized machine instances hosted by a computing device included in a subdivision of a network has changed, the subdivision being assigned a network address allocation;
dynamically release an assignment of a first subset of the network address allocation in response to the quantity of virtualized machine instances; and reconfigure a router for the subdivision to advertise a second subset of the network address allocation instead of the network address allocation.
determine that the quantity of virtualized machine instances has changed again;
assign another network address allocation to the subdivision in response to the quantity of virtualized machine instances that has changed again; and reconfigure the router for the subdivision to advertise the other network address allocation in addition to the second subset of the network address allocation.
determining, by at least one computing device, that a quantity of virtualized machine instances executed on a plurality of computing devices has changed;
dynamically assigning, by the at least one computing device, an updated network address allocation to a subdivision of a network in response to the quantity of virtualized machine instances, the subdivision including the plurality of computing devices; and reconfiguring, by the at least one computing device, a router for the subdivision to implement the updated network address allocation.
determining, by the at least one computing device, a network address assignment velocity associated with the plurality of computing devices; and determining, by the at least one computing device, the updated network address allocation based at least in part on the network address assignment velocity.
determining, by the at least one computing device, a respective computing device type associated with each of the plurality of computing devices; and determining, by the at least one computing device, the updated network address allocation based at least in part on the respective computing device type associated with each of the plurality of computing devices.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US13/621,891 US9055112B2 (en) | 2012-09-18 | 2012-09-18 | Dynamically allocating network addresses |
| US13/621,891 | 2012-09-18 | ||
| PCT/US2013/059631 WO2014046975A2 (en) | 2012-09-18 | 2013-09-13 | Dynamically allocating network addresses |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CA2881149A1 CA2881149A1 (en) | 2014-03-27 |
| CA2881149C true CA2881149C (en) | 2017-08-22 |
Family
ID=50275645
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CA2881149A Active CA2881149C (en) | 2012-09-18 | 2013-09-13 | Dynamically allocating network addresses |
Country Status (11)
| Country | Link |
|---|---|
| US (2) | US9055112B2 (en) |
| EP (1) | EP2898423B1 (en) |
| JP (1) | JP5989907B2 (en) |
| CN (1) | CN104769573B (en) |
| AU (1) | AU2013318330B2 (en) |
| BR (1) | BR112015006005B1 (en) |
| CA (1) | CA2881149C (en) |
| IN (1) | IN2015DN00539A (en) |
| RU (1) | RU2606557C9 (en) |
| SG (1) | SG11201502056RA (en) |
| WO (1) | WO2014046975A2 (en) |
Families Citing this family (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN104661250B (en) * | 2015-02-03 | 2018-03-20 | 河海大学 | The route of Wind turbines wireless senser condition monitoring system substitutes self-healing method |
| CN105120013B (en) * | 2015-08-28 | 2019-08-13 | 西安理邦科学仪器有限公司 | The distribution method and system of the network address of probe, central station |
| CN105306617B (en) * | 2015-09-22 | 2019-07-09 | 广州昂宝电子有限公司 | For distributing the method and the network equipment of network address |
| US10142284B2 (en) * | 2015-09-30 | 2018-11-27 | Vmware, Inc. | Faster IP address allocation in a hybrid cloud environment using subnet selective randomization |
| CN108886475B (en) * | 2016-02-18 | 2022-03-04 | 熔合层公司 | Server computer, network management method, and computer-readable memory |
| CN107707380B (en) * | 2017-07-31 | 2018-10-23 | 贵州白山云科技有限公司 | A kind of monitoring alarm method and apparatus |
| US10534351B1 (en) * | 2018-10-08 | 2020-01-14 | Quest Automated Services, LLC | Automation system network |
| CN110290228B (en) * | 2019-06-03 | 2022-03-11 | 网宿科技股份有限公司 | Internet protocol IP address allocation method and device |
| US11509626B2 (en) * | 2020-01-29 | 2022-11-22 | Jpmorgan Chase Bank, N.A. | System and method for network IP address capacity analytics and management |
| US11436092B2 (en) * | 2020-04-20 | 2022-09-06 | Hewlett Packard Enterprise Development Lp | Backup objects for fully provisioned volumes with thin lists of chunk signatures |
| US12568015B2 (en) | 2023-03-16 | 2026-03-03 | Oracle International Corporation | Techniques for building cloud regions at a prefab factory |
| US12481795B2 (en) | 2023-03-16 | 2025-11-25 | Oracle International Corporation | Techniques for validating cloud regions built at a prefab factory |
| US12483530B2 (en) * | 2023-06-28 | 2025-11-25 | Oracle International Corporation | Techniques for rotating network addresses in prefab regions |
| US12425300B2 (en) | 2023-11-27 | 2025-09-23 | Oracle International Corporation | Techniques for rotating resource identifiers in prefab regions |
| US12541355B2 (en) | 2024-01-19 | 2026-02-03 | Oracle International Corporation | Techniques for image-based region build |
Family Cites Families (27)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5835723A (en) | 1995-12-28 | 1998-11-10 | Intel Corporation | Dynamic assignment of multicast addresses |
| JPH10308763A (en) * | 1997-05-09 | 1998-11-17 | Toshiba Corp | Communications system |
| US7299294B1 (en) * | 1999-11-10 | 2007-11-20 | Emc Corporation | Distributed traffic controller for network data |
| US7079511B2 (en) * | 2000-12-06 | 2006-07-18 | Qualcomm, Incorporated | Method and apparatus for handoff of a wireless packet data services connection |
| US8359377B2 (en) | 2001-04-30 | 2013-01-22 | Hewlett-Packard Development Company, L.P. | Interface for automated deployment and management of network devices |
| US7197549B1 (en) * | 2001-06-04 | 2007-03-27 | Cisco Technology, Inc. | On-demand address pools |
| US7788345B1 (en) | 2001-06-04 | 2010-08-31 | Cisco Technology, Inc. | Resource allocation and reclamation for on-demand address pools |
| WO2004044732A1 (en) * | 2002-11-12 | 2004-05-27 | Zetera Corporation | Electrical devices with improved communication |
| US7383340B2 (en) | 2003-06-30 | 2008-06-03 | Intel Corporation | System and method for programmatically changing the network location of a network component |
| DE10330471A1 (en) * | 2003-07-05 | 2005-02-03 | Alstom Technology Ltd | Device for separating foreign particles from the cooling air that can be fed to the moving blades of a turbine |
| US20050027778A1 (en) * | 2003-07-29 | 2005-02-03 | Arthur Dimitrelis | Automatic configuration of an address allocation mechanism in a computer network |
| US7624445B2 (en) | 2004-06-15 | 2009-11-24 | International Business Machines Corporation | System for dynamic network reconfiguration and quarantine in response to threat conditions |
| US7940694B2 (en) * | 2005-11-14 | 2011-05-10 | Juniper Networks, Inc. | Intelligent filtering of redundant data streams within computer networks |
| US7929552B2 (en) * | 2006-10-26 | 2011-04-19 | At&T Intellectual Property I, L.P. | Automated IP pool management |
| US8972547B2 (en) * | 2007-10-18 | 2015-03-03 | International Business Machines Corporation | Method and apparatus for dynamically configuring virtual internet protocol addresses |
| WO2010041996A1 (en) * | 2008-10-09 | 2010-04-15 | Telefonaktiebolaget L M Ericsson (Publ) | A virtualization platform |
| US7921197B2 (en) * | 2008-11-19 | 2011-04-05 | Vmware, Inc. | Dynamic configuration of virtual machines |
| CN101409689B (en) * | 2008-11-25 | 2011-05-11 | 清华大学 | Method for exchanging internet address |
| WO2010094047A1 (en) * | 2009-02-14 | 2010-08-19 | Bvisual S.A. | Method and system for videoconferencing or data transfer between clients behind different network address translators |
| US8838473B2 (en) * | 2009-02-25 | 2014-09-16 | Microsoft Corporation | Services advertisement in a wireless mesh |
| GB2485876A (en) * | 2009-09-17 | 2012-05-30 | Ibm | Address server |
| CN102143239B (en) * | 2010-02-02 | 2015-01-28 | 华为技术有限公司 | Method and device for realizing communication between different networks |
| US20110239291A1 (en) * | 2010-03-26 | 2011-09-29 | Barracuda Networks, Inc. | Detecting and Thwarting Browser-Based Network Intrusion Attacks For Intellectual Property Misappropriation System and Method |
| US8631100B2 (en) * | 2010-07-20 | 2014-01-14 | Juniper Networks, Inc. | Automatic assignment of hardware addresses within computer networks |
| US9384030B2 (en) * | 2011-08-11 | 2016-07-05 | Ca, Inc. | System and method for deploying a dynamic virtual network address translation appliance |
| EP2864875B1 (en) * | 2012-06-20 | 2019-08-07 | FusionLayer Oy | Method and apparatus for ip commissioning and decom-missioning in orchestrated computing environments |
| US9390055B2 (en) * | 2012-07-17 | 2016-07-12 | Coho Data, Inc. | Systems, methods and devices for integrating end-host and network resources in distributed memory |
-
2012
- 2012-09-18 US US13/621,891 patent/US9055112B2/en active Active
-
2013
- 2013-09-13 IN IN539DEN2015 patent/IN2015DN00539A/en unknown
- 2013-09-13 RU RU2015114530A patent/RU2606557C9/en active
- 2013-09-13 CN CN201380048537.9A patent/CN104769573B/en active Active
- 2013-09-13 JP JP2015527685A patent/JP5989907B2/en active Active
- 2013-09-13 CA CA2881149A patent/CA2881149C/en active Active
- 2013-09-13 BR BR112015006005-6A patent/BR112015006005B1/en active IP Right Grant
- 2013-09-13 WO PCT/US2013/059631 patent/WO2014046975A2/en not_active Ceased
- 2013-09-13 EP EP13838493.8A patent/EP2898423B1/en active Active
- 2013-09-13 AU AU2013318330A patent/AU2013318330B2/en active Active
- 2013-09-13 SG SG11201502056RA patent/SG11201502056RA/en unknown
-
2015
- 2015-06-05 US US14/731,999 patent/US9705741B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| RU2015114530A (en) | 2016-11-10 |
| EP2898423A4 (en) | 2016-06-01 |
| IN2015DN00539A (en) | 2015-06-26 |
| CN104769573A (en) | 2015-07-08 |
| US9055112B2 (en) | 2015-06-09 |
| EP2898423B1 (en) | 2020-02-26 |
| US9705741B2 (en) | 2017-07-11 |
| RU2606557C9 (en) | 2017-02-22 |
| AU2013318330A1 (en) | 2015-02-19 |
| US20150271018A1 (en) | 2015-09-24 |
| CA2881149A1 (en) | 2014-03-27 |
| SG11201502056RA (en) | 2015-04-29 |
| JP5989907B2 (en) | 2016-09-07 |
| WO2014046975A2 (en) | 2014-03-27 |
| WO2014046975A3 (en) | 2014-05-30 |
| EP2898423A2 (en) | 2015-07-29 |
| RU2606557C2 (en) | 2017-01-10 |
| BR112015006005A2 (en) | 2017-07-04 |
| BR112015006005B1 (en) | 2023-01-17 |
| JP2015529417A (en) | 2015-10-05 |
| CN104769573B (en) | 2018-07-27 |
| US20140082164A1 (en) | 2014-03-20 |
| AU2013318330B2 (en) | 2016-04-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CA2881149C (en) | Dynamically allocating network addresses | |
| JP5919609B2 (en) | Multi-tenant access to multi-desktops on host machine partitions in a service provider network | |
| US20250254132A1 (en) | Provisioning network services in a software defined data center | |
| JP6670025B2 (en) | Multi-tenant-aware Dynamic Host Configuration Protocol (DHCP) mechanism for cloud networking | |
| US9749145B2 (en) | Interoperability for distributed overlay virtual environment | |
| US9992077B2 (en) | Optimizing allocation of on-demand resources using performance zones | |
| CN108924268B (en) | A container cloud service system and pod creation method and device | |
| US9417900B2 (en) | Method and system for automatic assignment and preservation of network configuration for a virtual machine | |
| CN105939264A (en) | Routing management method and device | |
| JP6669807B2 (en) | Computer system and computer | |
| US12341747B1 (en) | Self-service management of network address allocations in a cloud provider network | |
| US12335230B1 (en) | Self-service management of network address allocations using hierarchical allocation pools |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| EEER | Examination request |
Effective date: 20150205 |
|
| MPN | Maintenance fee for patent paid |
Free format text: FEE DESCRIPTION TEXT: MF (PATENT, 11TH ANNIV.) - STANDARD Year of fee payment: 11 |
|
| U00 | Fee paid |
Free format text: ST27 STATUS EVENT CODE: A-4-4-U10-U00-U101 (AS PROVIDED BY THE NATIONAL OFFICE); EVENT TEXT: MAINTENANCE REQUEST RECEIVED Effective date: 20240906 |
|
| U11 | Full renewal or maintenance fee paid |
Free format text: ST27 STATUS EVENT CODE: A-4-4-U10-U11-U102 (AS PROVIDED BY THE NATIONAL OFFICE); EVENT TEXT: MAINTENANCE FEE PAYMENT DETERMINED COMPLIANT Effective date: 20240906 |