# US 2010/0165877 A1 · Methods and apparatus for distributed dynamic network provisioning

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

- Number: US 2010/0165877 A1
- Document ID: US20100165877A1
- Status: Published application
- Kind: A1
- Application number: 12/346,632
- Filed: 2008-12-30
- Published: 2010-07-01
- Earliest claimed: 2008-12-30
- Assignees: Juniper Networks, Inc.
- Inventors: Amit Shukla; Xiangwen Xu
- Web page: https://patentgrep.com/patent/US20100165877A1

## CPC

- H04L 41/0843: {based on generic templates}
- H04L 49/70: {Virtual switches}
- H04L 12/4641: {Virtual LANs, VLANs, e.g. virtual private networks [VPN] (LAN interconnection over a bridge based backbone H04L12/462; encapsulation techniques H04L12/4633; routing of packets H04L45/00; packet switches H04L49/00; virtual private networks for security H04L63/0272)}
- H04L 41/0895: Configuration of virtualised networks or elements, e.g. virtualised network function or OpenFlow elements
- H04L 41/22: comprising specially adapted graphical user interfaces [GUI]
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

In one embodiment, a method includes receiving a device identifier associated with a virtual resource, determining a configuration template identifier based on the device identifier, and selecting a configuration template from a library of configuration templates based on the configuration template identifier. The receiving, determining, and selecting are at a network device. The virtual resource is hosted by a host device. The device identifier is received from the host device.

## Claims

### Claim 1

A method, comprising:
receiving at a network device a device identifier associated with a virtual resource from a host device, the virtual resource hosted by the host device;
determining at the network device a configuration template identifier based on the device identifier; and
selecting at the network device a configuration template from a library of configuration templates based on the configuration template identifier.

### Claim 2 (depends on 1)

The method of claim 1, wherein the determining includes extracting the configuration template identifier from the device identifier.

### Claim 3 (depends on 1)

The method of claim 1, wherein:
the device identifier includes a first portion and a second portion, the first portion being the configuration template identifier; and
the determining includes selecting the first portion of the device identifier as the configuration template identifier.

### Claim 4 (depends on 1)

The method of claim 1, wherein the determining includes providing the device identifier to a mask module configured to produce the configuration template identifier based on a logical combination of the device identifier and a mask value.

### Claim 5 (depends on 1)

The method of claim 1, wherein the determining includes accessing the configuration template identifier from a database based on the device identifier, the database including a plurality of configuration template identifiers.

### Claim 6 (depends on 1)

The method of claim 1, wherein the determining includes accessing the configuration template identifier from a database based on a hash value, the hash value produced based on the device identifier and a hash function, the database including a plurality of configuration template identifiers.

### Claim 7 (depends on 1)

The method of claim 1, wherein the selecting includes searching a database based on the configuration template identifier, the database storing the library of configuration templates such that each configuration template from the library of configuration templates can be accessed based on a configuration template identifier associated with that configuration template.

### Claim 8 (depends on 1)

The method of claim 1, wherein the device identifier is a media access control address of the virtual resource including the configuration template identifier.

### Claim 9 (depends on 1)

The method of claim 1, wherein the device identifier is a first device identifier, and the virtual resource is a first virtual resource, the method further comprising:
receiving at the network device a second device identifier associated with a second virtual resource from the host device, the second virtual resource hosted by the second host device;
determining the configuration template identifier from the second device identifier; and
selecting the configuration template from the library of configuration templates based on the configuration template identifier.

### Claim 10 (depends on 1)

The method of claim 1, further comprising provisioning a virtual switch module in communication with the virtual resource at the host device based on the configuration template.

### Claim 11

A method, comprising:
receiving a configuration template identifier, the configuration template identifier being associated with a configuration template having a network parameter;
producing a device identifier based on the configuration template identifier and a nonce; and
uniquely associating the device identifier with a virtual resource such that the virtual resource is identifiable based on the device identifier.

### Claim 12 (depends on 11)

The method of claim 11, wherein the device identifier is a first device identifier, the virtual resource is a first virtual resource, and the nonce is a first nonce, the method further comprising:
producing a second device identifier based on the configuration template identifier and a second nonce such that the configuration template identifier is encoded in the device identifier; and
uniquely associating the second device identifier with a second virtual resource.

### Claim 13 (depends on 11)

The method of claim 11, wherein:
the virtual resource is associated with a virtual local area network; and
the network parameter is a virtual local area network identifier of the virtual local area network.

### Claim 14 (depends on 11)

The method of claim 11, wherein:
the virtual resource includes a media access control address; and
the uniquely associating includes designating the device identifier as the media access control address of the virtual resource.

### Claim 15 (depends on 11)

The method of claim 11, wherein the producing is at least partially reversible such that the configuration template identifier can be extracted from the device identifier.

### Claim 16 (depends on 11)

The method of claim 11, wherein the configuration template includes an access control list associated with access to the virtual resource over a communication network.

### Claim 17

A method, comprising:
receiving a configuration template identifier associated with a configuration template;
generating a nonce;
producing a device identifier based on a combination of the configuration template identifier and the nonce; and
storing the device identifier as a medium access control address of the virtual resource.

### Claim 18 (depends on 17)

The method of claim 17, wherein the device identifier is configured to uniquely identify the virtual resource in a network, the network including a plurality of virtual resource in communication with a switch fabric via a first access switch and a second access switch.

### Claim 19 (depends on 17)

The method of claim 17, wherein:
the configuration template identifier is represented by a first bit vector;
the nonce is represented by a second bit vector; and
the producing includes logically combining the first bit vector and the second bit vector.

### Claim 20 (depends on 17)

The method of claim 17, further comprising storing the configuration template in a memory accessible to a network device.
