# US 12,184,540 B2 · Encapsulating network performance metrics in border gateway protocol to support customer-driven path selection

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

- Number: US 12,184,540 B2
- Document ID: US12184540B2
- Status: Granted
- Kind: B2
- Application number: 17/808,090
- Filed: 2022-06-21
- Published: 2023-12-21
- Granted: 2024-12-31
- Earliest claimed: 2022-06-21
- Assignees: AT&T Intellectual Property I, L.P.
- Applicants: AT&T Intellectual Property I, L.P.
- Inventors: Israel Means; Adrian Cepleanu; Praveen Ramadenu
- Web page: https://patentgrep.com/patent/US12184540B2

## CPC

- H04L 45/42: Centralised routing
- H04L 43/12: Network monitoring probes
- H04L 45/123: {Evaluation of link metrics (techniques for monitoring network metrics H04L43/08)}
- H04L 45/24: Multipath
- H04L 45/70: {Routing based on monitoring results}
- H04L 43/08: Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L 43/10: Active monitoring, e.g. heartbeat, ping or trace-route
- H04L 43/20: the monitoring system or the monitored elements being virtualised, abstracted or software-defined entities, e.g. SDN or NFV
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

In one example, a method includes receiving a plurality of network probes originating from a first provider edge router in a service provider network, calculating a plurality of network performance metrics, based on the plurality of network probes, and storing the network performance metrics associated with each network probe of the plurality of network probes in a path metric table, wherein an entry in the path metric table for the each network probe includes a path traveled by the each network probe from the first provider edge router to the processing system, the network performance metrics associated with the each network probe, a community value associated with the each network probe, and a traffic classification value associated with the each network probe.

## Claims

### Claim 1

A method comprising:
receiving, by a processing system including at least one processor, a plurality of network probes originating from a first provider edge router in a service provider network;
calculating, by the processing system, a plurality of network performance metrics, based on the plurality of network probes; and
storing, by the processing system, the plurality of network performance metrics in a path metric table, wherein an entry in the path metric table for each network probe of the plurality of network probes includes a path traveled by the each network probe from the first provider edge router to the processing system, a subset of the plurality of network performance metrics associated with the each network probe, a community value associated with the each network probe, and a traffic classification value associated with the each network probe, wherein a first customer edge router of the service provider network inserted the traffic classification value into a header of a data packet that is to travel through the first provider edge router to a second provider edge router of the service provider network, and wherein the processing system is a part of the second provider edge router.

### Claim 2 (depends on 1)

The method of claim 1, wherein each network probe of the plurality of network probes comprises one or more data packets whose source is the first provider edge router and whose destination is the second provider edge router.

### Claim 3 (depends on 2)

The method of claim 2, wherein each network probe of the plurality of network probes traverses a different path of a plurality of possible paths between the first provider edge router and the second provider edge router.

### Claim 4 (depends on 3)

The method of claim 3, wherein each path of the plurality of possible paths is characterized by a different subset of the plurality of network performance metrics.

### Claim 5 (depends on 3)

The method of claim 3, wherein the plurality of network probes collectively traverses all possible paths between the first provider edge router and the second provider edge router.

### Claim 6 (depends on 2)

The method of claim 2, wherein the plurality of network performance metrics is calculated based on data contained in headers of the one or more data packets.

### Claim 7 (depends on 1)

The method of claim 1, wherein the plurality of network performance metrics comprises at least one of: latency, jitter, packet loss, or congestion.

### Claim 8 (depends on 1)

The method of claim 1, wherein the path metric table is stored locally on the second provider edge router.

### Claim 9 (depends on 1)

The method of claim 1, further comprising:
receiving, by the processing system, a request from a software defined networking controller of the service provider network for the path metric table; and
providing, by the processing system, the path metric table to the software defined networking controller.

### Claim 10 (depends on 9)

The method of claim 9, wherein the software defined networking controller publishes the path metric table in a border gateway protocol update.

### Claim 11 (depends on 1)

The method of claim 1, wherein the traffic classification value is inserted into the header of the data packet when the first customer edge router determines that the data packet should traverse a first path based on a subset of the plurality of network performance metrics associated with the first path.

### Claim 12 (depends on 11)

The method of claim 11, wherein, when the first provider edge router detects that the traffic classification value falls within a predefined range of traffic classification values, the first provider edge router applies a label to the data packet.

### Claim 13 (depends on 12)

The method of claim 12, wherein the label identifies the first path and allows the data packet to be steered onto the first path.

### Claim 14 (depends on 12)

The method of claim 12, wherein the label is one of a plurality of available labels, and each label of the plurality of available labels is associated with a different path from the first provider edge router to the second provider edge router.

### Claim 15 (depends on 1)

The method of claim 1, wherein the data packet is associated with a first application executing on a user endpoint device connected to the first customer edge router, and wherein another application executing on the user endpoint device utilizes a different path to travel from the first provider edge router to the second provider edge router.

### Claim 16 (depends on 11)

The method of claim 11, wherein the first path includes a plurality of network links and at least one intermediate router.

### Claim 17

A non-transitory computer-readable medium storing instructions which, when executed by a processing system including at least one processor, cause the processing system to perform operations, the operations comprising:
receiving a plurality of network probes originating from a first provider edge router in a service provider network;
calculating a plurality of network performance metrics, based on the plurality of network probes; and
storing the plurality of network performance metrics in a path metric table, wherein an entry in the path metric table for each network probe of the plurality of network probes includes a path traveled by the each network probe from the first provider edge router to the processing system, a subset of the plurality of network performance metrics associated with the each network probe, a community value associated with the each network probe, and a traffic classification value associated with the each network probe, wherein a first customer edge router of the service provider network inserted the traffic classification value into a header of a data packet that is to travel through the first provider edge router to a second provider edge router of the service provider network, and wherein the processing system is a part of the second provider edge router.

### Claim 18

An apparatus comprising:
a processing system including at least one processor; and
a computer-readable medium storing instructions which, when executed by the processing system, cause the processing system to perform operations, the operations comprising:
receiving a plurality of network probes originating from a first provider edge router in a service provider network;
calculating a plurality of network performance metrics, based on the plurality of network probes; and
storing the plurality of network performance metrics in a path metric table, wherein an entry in the path metric table for each network probe of the plurality of network probes includes a path traveled by the each network probe from the first provider edge router to the processing system, a subset of the plurality of network performance metrics associated with the each network probe, a community value associated with the each network probe, and a traffic classification value associated with the each network probe, wherein a first customer edge router of the service provider network inserted the traffic classification value into a header of a data packet that is to travel through the first provider edge router to a second provider edge router of the service provider network, and wherein the processing system is a part of the second provider edge router.

### Claim 19 (depends on 17)

The non-transitory computer-readable medium of claim 17, wherein the traffic classification value is inserted into the header of the data packet when the first customer edge router determines that the data packet should traverse a first path based on a subset of the plurality of network performance metrics associated with the first path.

### Claim 20 (depends on 18)

The apparatus of claim 18, wherein the traffic classification value is inserted into the header of the data packet when the first customer edge router determines that the data packet should traverse a first path based on a subset of the plurality of network performance metrics associated with the first path.
