# US 12,603,842 B2 · On-demand virtual routing and forwarding table creation

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

- Number: US 12,603,842 B2
- Document ID: US12603842B2
- Status: Granted
- Kind: B2
- Application number: 17/729,189
- Filed: 2022-04-26
- Published: 2023-10-26
- Granted: 2026-04-14
- Earliest claimed: 2022-04-26
- Assignees: AT&T Intellectual Property I, L.P.
- Applicants: AT&T Intellectual Property I, L.P.
- Inventors: Israel Means; Praveen Ramadenu
- Web page: https://patentgrep.com/patent/US12603842B2

## CPC

- H04L 45/76: Routing in software-defined topologies, e.g. routing between virtual machines
- H04L 41/0843: {based on generic templates}
- H04L 45/033: by updating distance vector protocols
- H04L 45/04: {Interdomain routing, e.g. hierarchical routing}
- H04L 45/586: of virtual routers
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Aspects of the subject disclosure may include, for example, network device(s) capable of on-demand virtual routing and forwarding (VRF) table creation. A network device may receive a request from a customer device requesting on-demand VRF creation, and may instantiate and provision a VRF in response. The request made by the customer device may be made by announcing an attribute in a border gateway protocol (BGP) message. Other embodiments are disclosed.

## Claims

### Claim 1

A device, comprising:
a processing system including a processor; and
a memory that stores executable instructions that, when executed by the processing system, facilitate performance of operations, the operations comprising:
storing a table on the device, the table mapping a plurality of community values (CVs) to a plurality of route targets;
assigning a customer-specific community value to a customer edge (CE) router;
subsequent to the storing and the assigning, receiving a first border gateway protocol (BGP) attribute from the CE router, wherein the first BGP attribute includes the customer-specific community value;
determining that the customer-specific community value matches one of a plurality of known community values;
responsive to the determining, instantiating a virtual routing and forwarding (VRF) instance to route traffic received from the CE router;
populating the VRF instance by mapping the customer-specific community value to a route target using the table stored on the device; and
tracking an amount of time that the VRF instance is in place, in order to determine an amount to charge for use of the VRF instance.

### Claim 2 (depends on 1)

The device of claim 1, wherein the device comprises a provider edge (PE) router.

### Claim 3 (depends on 1)

The device of claim 1, wherein the receiving the first BGP attribute comprises:
receiving a BGP update message from the CE router; and
detecting a community value within the BGP update message.

### Claim 4 (depends on 1)

The device of claim 1, wherein the instantiating the VRF instance comprises copying a VRF template to create the VRF instance.

### Claim 5 (depends on 4)

The device of claim 4, wherein the operations further comprise mapping the value of the first BGP attribute to a route target to populate the VRF instance.

### Claim 6 (depends on 5)

The device of claim 5, wherein the operations further comprise receiving updates to the table.

### Claim 7 (depends on 5)

The device of claim 5, wherein the operations further comprise tracking the amount of data that traverses a VPN using an on-demand VRF to determine an amount to charge a user or enterprise for the secure connection.

### Claim 8

A non-transitory, machine-readable medium, comprising executable instructions that, when executed by a processing system including a processor, facilitate performance of operations, the operations comprising:
assigning a customer-specific community value to a customer edge (CE) router;
receiving a first border gateway protocol (BGP) attribute directly from the CE router, wherein the first BGP attribute includes the customer-specific community value;
determining that the customer-specific community value matches one of a plurality of known community values;
responsive to the determining, instantiating a virtual routing and forwarding (VRF) instance to route traffic received from the CE router;
populating the VRF instance by mapping the customer-specific community value to a route target using a table stored in the processing system; and
tracking an amount of data movement, in order to determine an amount to charge for use of the VRF instance.

### Claim 9 (depends on 8)

The non-transitory, machine-readable medium of claim 8, wherein the processing system comprises a provider edge (PE) router.

### Claim 10

A method, comprising:
assigning, by a processing system including a processor, a customer-specific community value to a customer edge (CE) router;
receiving, by the processing system, a first border gateway protocol (BGP) attribute from the CE router, wherein the first BGP attribute comprises the customer-specific community value;
comparing, by the processing system, a value of the customer-specific community value to a plurality of known attribute values;
responsive to the comparing, instantiating, by the processing system, a virtual routing and forwarding (VRF) instance to route traffic received from the CE router;
populating the VRF instance by mapping the value of the customer-specific community value to a route target using a table stored in the processing system, the table mapping a plurality of community values to a plurality of route targets; and
subsequent to the instantiating, receiving, by the processing system, a second community value from the CE router, wherein the second community value is indicative of a request to return to a default routing context.

### Claim 11 (depends on 10)

The method of claim 10, wherein the receiving the first BGP attribute comprises:
receiving, by the processing system, a BGP update message from the CE router; and
detecting, by the processing system, the customer-specific community value within the BGP update message.

### Claim 12 (depends on 10)

The method of claim 10, wherein the instantiating the VRF instance comprises copying, by the processing system, a VRF template to create the VRF instance.

### Claim 13 (depends on 12)

The method of claim 12, wherein the method further comprises receiving, by the processing system, updates to the table stored in the processing system.

### Claim 14 (depends on 12)

The method of claim 12, wherein the receiving the first BGP attribute includes directly receiving, by the processing system, the first BGP attribute from the CE router.

### Claim 15 (depends on 2)

The device of claim 2, wherein the plurality of known community values corresponds to a list of VPNs that are authorized to be used by the PE router.

### Claim 16 (depends on 1)

The device of claim 1, wherein the customer-specific community value is associated with a route target for a specific VPN connection.

### Claim 17 (depends on 1)

The device of claim 1, wherein the operations further comprise tracking an amount of data that traverses the VRF instance, in order to determine an amount to charge for use of the VRF instance.

### Claim 18 (depends on 9)

The non-transitory, machine-readable medium of claim 9, wherein the plurality of known community values corresponds to a list of VPNs that are authorized to be used by the PE router.

### Claim 19 (depends on 8)

The non-transitory, machine-readable medium of claim 8, wherein the customer-specific community value is associated with a route target for a specific VPN connection.

### Claim 20 (depends on 8)

The non-transitory, machine-readable medium of claim 8, wherein the operations further comprise tracking an amount of time that the VRF instance is in place or an amount of data that traverses the VRF instance, in order to determine an amount to charge for use of the VRF instance.
