# US 11,122,491 B2 · In-situ best path selection for mobile core network

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

- Number: US 11,122,491 B2
- Document ID: US11122491B2
- Status: Granted
- Kind: B2
- Application number: 16/561,634
- Filed: 2019-09-05
- Published: 2021-03-11
- Granted: 2021-09-14
- Earliest claimed: 2019-09-05
- Assignees: Cisco Technology, Inc.
- Applicants: Cisco Technology, Inc.
- Inventors: Carlos M. Pignataro; Om Prakash Suthar; Nagendra Kumar Nainar; Rajiv Asati
- Web page: https://patentgrep.com/patent/US11122491B2

## CPC

- H04L 45/24: Multipath
- H04L 43/0817: by checking functioning
- H04L 43/0829: Packet loss
- H04L 43/0852: Delays
- H04L 45/124: {using a combination of metrics}
- H04L 45/22: {Alternate routing}
- H04L 45/70: {Routing based on monitoring results}
- H04L 47/115: {using a dedicated packet}
- H04L 47/125: by balancing the load, e.g. traffic engineering
- H04L 47/28: in relation to timing considerations
- H04L 47/283: in response to processing delays, e.g. caused by jitter or round trip time [RTT]
- H04L 47/31: by tagging of packets, e.g. using discard eligibility [DE] bits
- H04L 47/35: by embedding flow control information in regular packets, e.g. piggybacking
- H04W 24/08: Testing, {supervising or monitoring} using real traffic
- H04W 40/12: based on transmission quality or channel quality
- H04W 40/248: {Connectivity information update}
- H04W 40/28: for reactive routing
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

Techniques are provided that leverage inband metadata techniques for use in a mobile core network in order to create relevant third generation 3rd Generation Partnership Project (3GPP) control plane interfaces between virtual control plane and virtual user plane elements that can be used to instruct the virtual entities to perform various functions, collect telemetry and other data from the virtual entities and signal maintenance messages between control plane and user plane entities. One control plane interface can be used to perform holistic performance analysis functionalities and identify the better performing path and accordingly use primary path and warm paths for control plane exchanges.

## Claims

### Claim 1

A method comprising:
at a control plane node, establishing at least a first path and a second path through a network for communications between the control plane node and a user plane node, the first path and the second path being disjoint from each other, wherein the first path is designated as a primary path and the second path is designated as a warm path;
generating first messages which include entropy that causes the first messages to traverse the first path, wherein the first messages include first inband metadata, that includes timestamp and sequence information, control plane message information, and a flag to indicate that the first messages are sent via the primary path and carry real control plane message information;
generating second messages which include entropy that causes the second messages to traverse the second path, wherein the second messages include second inband metadata, that includes timestamp and sequence information, dummy control plane message information, and a flag to indicate that the second messages are sent via the warm path and carry dummy control plane message information to be ignored by the user plane node; and
sending the first messages and the second messages as data packets into the network.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
at the user plane node, obtaining the first inband metadata from the first messages and the second inband metadata from the second messages; and
at the user plane node, providing the first inband metadata and the second inband metadata to a performance analysis process.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
analyzing performance of the first path and of the second path based on the first inband metadata and the second inband metadata;
based on the analyzing, determining whether to toggle a state of the first path and of the second path such that the first path is the warm path and the second path is the primary path; and
when it is determined that performance of the second path is better than performance of the first path, providing a trigger at least to the control plane node to cause the control plane node to generate the first messages to include the dummy control plane message information and to set the flag of the first messages to indicate that the first messages are sent via the warm path, and to cause the control plane node to generate the second messages to include the real control plane message information and to set the flag of the second messages to indicate that the second messages are sent via the primary path.

### Claim 4 (depends on 3)

The method of claim 3, wherein analyzing performance comprises:
computing one or more of latency, jitter and packet loss for the first path based on the first inband metadata and computing one or more of latency, jitter and packet loss for the second path based on the second inband metadata; and
comparing one or more of latency, jitter and packet loss for the first path with corresponding one or more of latency, jitter and packet loss for the second path.

### Claim 5 (depends on 3)

The method of claim 3, wherein the performance analysis process is executed on an node that is separate from, but in communication with, the control plane node and the user plane node.

### Claim 6 (depends on 3)

The method of claim 3, wherein the performance analysis process is executed on the user plane node.

### Claim 7 (depends on 1)

The method of claim 1, wherein establishing the first path and the second path is based on commands obtained from a path computation node or a network controller node.

### Claim 8 (depends on 1)

The method of claim 1, wherein the control plane message information is in accordance with a Packet Forwarding Control Protocol (PFCP) of a 3rd Generation Partnership Project.

### Claim 9 (depends on 1)

The method of claim 1, wherein the first inband metadata and the second inband metadata is formatted in accordance with one of: in-situ Operations, Administration and Management (iOAM) standard, Inband Flow Analytics (IFA) standard and Inband Network Telemetry (INT) standard.

### Claim 10 (depends on 1)

The method of claim 1, wherein the flag of the first messages is included either as part of the first inband metadata or as part of the control plane message information, and the flag of the second messages is included either as part of the second inband metadata or as part of the dummy control plane message information.

### Claim 11 (depends on 1)

The method of claim 1, wherein the entropy in the first messages comprises transport source port and transport destination port information.

### Claim 12 (depends on 1)

The method of claim 1, wherein the user plane node obtains the first inband metadata and the second inband metadata using a virtual network function that runs proximate to the user plane node, and the method further comprising:
based on determining that performance of the second path is better than performance of the first path, providing a trigger at least to the control plane node to cause the control plane node to generate the first messages to include the dummy control plane message information and to set the flag of the first messages to indicate that the first messages are sent via the warm path, and to cause the control plane node to generate the second messages to include the real control plane message information and to set the flag of the second messages to indicate that the second messages are sent via the primary path, wherein the first messages and the second messages further include telemetry metrics.

### Claim 13

A method comprising:
obtaining first inband metadata included in first messages sent, as first data packets, between a control plane node and a user plane node through a first path in a network, the first inband metadata including timestamp and sequence information for the first messages sent through the first path, the first messages further including a flag to indicate that the first messages are sent via a primary path and carry real control plane message information;
obtaining second inband metadata included in second messages sent, as second data packets, between the control plane node and the user plane node through a second path in the network, wherein the first path and the second path are disjoint from each other, and wherein the second inband metadata including timestamp and sequence information for the second messages sent through the second path, the second messages further including a flag to indicate that the second messages are sent via a warm path and carry dummy control plane message information;
analyzing performance of the first path and of the second path based on the first inband metadata on and the second inband metadata;
based on the analyzing, determining whether to toggle a state of the first path and of the second path such that the first path is the warm path and the second path is the primary path; and
when it is determined that performance of the second path is better than performance of the first path, providing a command at least to the control plane node to cause the control plane node to generate the first messages to include the dummy control plane message information and to set the flag of the first messages to indicate that the first messages are sent via the warm path, and to cause the control plane node to generate the second messages to include the real control plane message information and to set the flag of the second messages to indicate that the second messages are sent via the primary path.

### Claim 14 (depends on 13)

The method of claim 13, wherein analyzing comprises:
computing one or more of latency, jitter and packet loss for the first path based on the first inband metadata and computing one or more of latency, jitter and packet loss for the second path based on the second inband metadata; and
comparing one or more of latency, jitter and packet loss for the first path with corresponding one or more of latency, jitter and packet loss for the second path.

### Claim 15 (depends on 13)

The method of claim 13, wherein obtaining the first inband metadata, obtaining the second inband metadata, analyzing, determining and providing are performed on a node that is separate from, but in communication with, the control plane node and the user plane node.

### Claim 16 (depends on 13)

The method of claim 13, wherein obtaining the first inband metadata, obtaining the second inband metadata, analyzing, determining and providing are performed on the user plane node.

### Claim 17 (depends on 13)

The method of claim 13, wherein the first inband metadata and the second inband metadata is formatted in accordance with one of: in-situ Operations, Administration and Management (iOAM) standard, Inband Flow Analytics (IFA) standard and Inband Network Telemetry (INT) standard.

### Claim 18

A system comprising:
a control plane node configured to:
establish at least a first path and a second path through a network for communications between the control plane node and a user plane node, the first path and the second path being disjoint from each other, wherein the first path is designated as a primary path and the second path is designated as a warm path;
generate first messages which include entropy that causes the first messages to traverse the first path, wherein the first messages include first inband metadata that includes timestamp and sequence information, control plane message information, and a flag to indicate that the first messages are sent via the primary path and carry real control plane message information;
generate second messages which include entropy that causes the first messages to traverse the second path, wherein the second messages include second inband metadata, that includes timestamp and sequence information, dummy control plane message information, and a flag to indicate that the second messages are sent via the warm path and carry dummy control plane message information to be ignored by the user plane node;
send the first messages and the second messages as data packets into the network; the user plane node configured to:
obtain the first inband metadata from the first messages and second the inband metadata from the second messages; and
send the first inband metadata and the second inband metadata to a performance analysis server;
the performance analysis server configured to:
analyze performance of the first path and of the second path based on the first inband metadata and the second inband metadata; and
determine whether to toggle a state of the first path and of the second path such that the first path is the warm path and the second path is the primary path.

### Claim 19 (depends on 18)

The system of claim 18, wherein the performance analysis server is configured to:
when a determination is made that performance of the second path is better than performance of the first path, provide a command at least to the control plane node to cause the control plane node to generate the first messages to include the dummy control plane message information and to set the flag of the first messages to indicate that the first messages are sent via the warm path, and to cause the control plane node to generate the second messages to include the real control plane message information and to set the flag of the second messages to indicate that the second messages are sent via the primary path.

### Claim 20 (depends on 19)

The system of claim 19, wherein the performance analysis server is configured to analyze by:
computing one or more of latency, jitter and packet loss for the first path based on the first inband metadata and computing one or more of latency, jitter and packet loss for the second path based on the second inband metadata; and
comparing one or more of latency, jitter and packet loss for the first path with corresponding one or more of latency, jitter and packet loss for the second path.
