IP Library Granted Patent US 11,184,267
Granted Patent B2
US 11,184,267 · App. 16/670,258 · Granted Nov 23, 2021

Intelligent in-band telemetry auto-configuration for IP networks

Inventors: Radu M. Iorga (Bucharest, RO); Roberto Jacob Da Silva (Oak Park, CA); Corneliu-Ilie Calciu (Bucharest, RO)
Assignee: LENOVO Enterprise Solutions (Singapore) PTE. LTD.
H04L43/0858H04L43/10H04L45/72H04L45/745
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,184,267
App. No.
16/670,258
Granted
Nov 23, 2021
Kind
B2
Abstract

An apparatus for in-band telemetry includes a node type identifier circuit that, in response to receiving an ingress/egress ID command, determines that the network node is an ingress node in response to the network node having a direct connection to a source and determines that the network node is an egress node in response to the network node having a direct connection to a destination. The apparatus includes a telemetry packet circuit that creates a telemetry packet in response to the node type identifier circuit determining that the network node is an ingress node. The apparatus includes a telemetry transmission circuit that transmits the telemetry packet in response to the telemetry packet circuit creating the telemetry packet and a packet re-router circuit that, in response to the node type identifier circuit determining that the network node is an egress node, routes a received telemetry packet to a network controller.

Claims (46)

1. An apparatus for in-band telemetry comprising:

a node type identifier circuit in a network node that, in response to receiving an ingress/egress ID command, is configured to:

determine that the network node is an ingress node in response to the network node comprising a direct connection to a source identified by the ingress/egress ID command; and

determine that the network node is an egress node in response to the network node comprising a direct connection to a destination identified by the ingress/egress ID command;

a telemetry packet circuit in the network node that is configured to, in response to the node type identifier circuit determining that the network node is an ingress node, create a telemetry packet separate from data packets with information being transmitted from the source to the destination, the telemetry packet comprising a header with an indicator that the telemetry packet is for telemetry, a source internet protocol (“IP”) address of the source and a destination IP address of the destination;

a telemetry transmission circuit in the network node that is configured to transmit the telemetry packet in response to the telemetry packet circuit creating the telemetry packet; and

a packet re-router circuit in the network node that is configured to, in response to the node type identifier circuit determining that the network node is an egress node and in response to determining that a received packet is a telemetry packet, route a received telemetry packet to a network controller without transmitting any data of the telemetry packet to the destination.

2. The apparatus of claim 1 , wherein the apparatus is configured to add latency information to the telemetry packet in response to the node type identifier circuit determining that the network node is the ingress node or the egress node.

3. The apparatus of claim 1 , further comprising a transit node circuit in the network node that is configured, in response to receiving an ingress/egress ID command, to:

determine that the network node is a transit node in response to determining that the network node is in a data path between the source and the destination and is not directly connected to the source or to the destination;

add latency information to a received telemetry packet in response to the network node being a transit node; and

transmit the telemetry packet to a next network node.

4. The apparatus of claim 1 , wherein the source is a computing device configured for user access with a direct data connection to the ingress node and the destination is a computing device configured for user access with a direct connection to the egress node.

5. The apparatus of claim 4 , wherein the source and/or the destination are servers connected to one or more clients.

6. The apparatus of claim 1 , wherein the telemetry packet circuit is configured to create the telemetry packet by receiving a packet and copying the packet and adding the indicator to a header of the copied data packet that the telemetry packet is for telemetry.

7. The apparatus of claim 1 , wherein the network controller is configured to transmit the ingress/egress ID command to each network node in a network.

8. The apparatus of claim 1 , wherein the ingress/egress ID command comprises the source IP address, the destination IP address, a level 4 protocol type, a source port number and a destination port number.

9. The apparatus of claim 1 , further comprising an identification transmission circuit that is configured to transmit a notification to the network controller, the notification comprising information identifying a network node type in response to the node type identifier circuit determining that the network node is the ingress node or the egress node.

10. The apparatus of claim 1 , wherein the telemetry packet circuit creates the telemetry packet by creating a new packet without data for transmission from the source to the destination.

11. A program product comprising a non-volatile computer readable storage medium that stores code executable by a processor, the executable code comprising code to:

in response to receiving an ingress/egress ID command:

determine that the network node is an ingress node in response to the network node comprising a direct connection to a source identified by the ingress/egress ID command; and

determine that the network node is an egress node in response to the network node comprising a direct connection to a destination identified by the ingress/egress ID command;

in response to determining that the network node is an ingress node, create a telemetry packet separate from data packets with information being transmitted from the source to the destination, the telemetry packet comprising a header with an indicator that the telemetry packet is for telemetry, a source internet protocol (“IP”) address of the source and a destination IP address of the destination;

transmit the telemetry packet in response to creating the telemetry packet; and

in response to determining that the network node is an egress node and in response to determining that a received packet is a telemetry packet, route a received telemetry packet to a network controller without transmitting any data of the telemetry packet to the destination.

12. The computer program product of claim 11 , further comprising code to add latency information to the telemetry packet in response to determining that the network node is the ingress node or the egress node.

13. The computer program product of claim 11 , further comprising code, in response to receiving an ingress/egress ID command, to:

determine that the network node is a transit node in response to determining that the network node is in a data path between the source and the destination and is not directly connected to the source or to the destination;

add latency information to a received telemetry packet in response to the network node being a transit node; and

transmit the telemetry packet to a next network node.

14. The computer program product of claim 11 , wherein the source is a computing device configured for user access with a direct data connection to the ingress node and the destination is a computing device configured for user access with a direct connection to the egress node.

15. The computer program product of claim 14 , wherein the source and/or the destination are servers connected to one or more clients.

16. The computer program product of claim 11 , wherein the code configured to create a telemetry packet further comprises code to create the telemetry packet by receiving a packet and copying the packet and adding the indicator to a header of the copied data packet that the telemetry packet is for telemetry.

17. The computer program product of claim 11 , wherein the network controller is configured to transmit the ingress/egress ID command to each network node in a network and wherein the ingress/egress ID command comprises the source IP address, the destination IP address, a level 4 protocol type, a source port number and a destination port number.

18. A network node for in-band telemetry, the network node comprising:

a node type identifier circuit that, in response to receiving an ingress/egress ID command is configured to:

determine that the network node is an ingress node in response to the network node comprising a direct connection to a source;

determine that the network node is an egress node in response to the network node comprising a direct connection to a destination; and

determine that the network node is a transit node in response to the network node being in a data path between the source and the destination and not being directly connected to the source or to the destination;

a telemetry packet circuit that is configured to, in response to the node type identifier circuit determining that the network node is an ingress node, create a generated telemetry packet separate from data packets with information being transmitted from the source to the destination, the generated telemetry packet comprising a header with an indicator that the generated telemetry packet is for telemetry, a source internet protocol (“IP”) address of the source, a destination IP address of the destination;

a latency information circuit that is configured to add latency information to a generated or received telemetry packet;

a telemetry transmission circuit that is configured to transmit the generated or received telemetry packet to a next network node in response to the node type identifier circuit determining that the network node is an ingress node or a transit node; and

a packet re-router circuit that, in response to the node type identifier circuit determining that the network node is an egress node and in response to determining that a received packet is a telemetry packet, is configured to route the received telemetry packet to a network controller without transmitting the received telemetry packet to the destination.

19. The network node of claim 18 , wherein the telemetry packet circuit is configured to create the telemetry packet by receiving a packet and copying the packet and adding the indicator to a header of the copied data packet that the telemetry packet is for telemetry.

20. The network node of claim 18 , wherein the ingress/egress ID command comprises the source IP address, the destination IP address, a level 4 protocol type, a source port number and a destination port number.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2025
From: LENOVO GLOBAL TECHNOLOGIES INTERNATIONAL LIMITED
To: LENOVO GLOBAL TECHNOLOGIES SWITZERLAND INTERNATIONAL GMBH
Reel/Frame 069869/0614 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 13, 2022
From: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE LTD
To: LENOVO GLOBAL TECHNOLOGIES INTERNATIONAL LTD
Reel/Frame 060490/0668 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 30, 2019
From: IORGA, RADU M.; JACOB DA SILVA, ROBERTO; CALCIU, CORNELIU-ILIE
To: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE. LTD.
Reel/Frame 051385/0519 →