IP Library Granted Patent US 12,744,715
Granted Patent B2
US 12,744,715 · App. 18/818,092 · Granted Sep 22, 2026

Streaming telemetry data from network device to remote collector

Inventors: Nitzan Dror (Ramot Hashavim, IL); Roman Nos (Petah Tikva, IL)
Assignee: Marvell Israel (M.I.S.L) Ltd.
H04L43/065H04L43/12H04L43/16
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 12,744,715
App. No.
18/818,092
Granted
Sep 22, 2026
Kind
B2
Abstract

Hardware circuitry of a network device in a communication network collects telemetry data generated by the network device, the telemetry data providing information regarding operational status of at least one of i) the network device, and ii) one or more network links connected to the network device. The hardware circuitry generates packets that include respective sets of the telemetry data collected by the hardware circuitry. The packets are addressed to a remote network device in, or communicatively coupled to, the communication network. The hardware circuitry prompts the network device to transmit the packets to the remote network device.

Claims (65)

1 . A network device, comprising:

a switch core packet processor having a forwarding engine configured to process packets received by the network device to determine ports of the network device via which the packets are to be forwarded, the switch core packet processor further including circuitry configured to generate telemetry data that provides information regarding operational status of at least one of i) the network device, and ii) one or more network links connected to ports of the network device; and

hardware circuitry configured to:

collect telemetry data generated by the switch core packet processor,

generate packets that include respective sets of the telemetry data collected by the hardware circuitry, the packets generated by the hardware circuitry being addressed to a remote network device in, or communicatively coupled to, a communication network that includes the network device, the generating of packets including for each of at least some of the packets, monitoring a size of the packet while the hardware circuitry adds telemetry data to the packet, and

provide the packets to the switch core packet processor to prompt the switch core packet processor to transmit the packets to the remote network device via one or more ports of the network device, including for each packet amongst at least a subset of the at least some packets, provide the packet to the switch core packet processor to prompt the switch core packet processor to transmit the packet in response to determining that a size of the packet has reached a maximum size based on the monitoring of the size of the packet while the hardware circuitry adds telemetry data to the packet.

2 . The network device of claim 1 , wherein the hardware circuitry comprises a timer, and the hardware circuitry is further configured to:

determine times at which to collect the telemetry data using the timer.

3 . The network device of claim 1 , wherein the hardware circuitry is configured to, for each of the at least some of packets, as part of generating the packet:

add telemetry data to the packet as telemetry data is collected by the hardware circuitry.

4 . The network device of claim 3 , wherein the hardware circuitry is configured to, for each of at least another subset of the packets:

determine whether a time duration has reached a threshold, the time duration corresponding to a time since the network device transmitted a previous packet having telemetry data; and

in response to determining that the time duration has reached the threshold, provide the packet to the switch core packet processor even when a size of the packet has not reached the maximum size.

5 . The network device of claim 1 , wherein the hardware circuitry is configured to, for each of at least another subset of the packets:

determine whether a time duration has reached a threshold, the time duration corresponding to a time since the network device transmitted a previous packet having telemetry data; and

in response to determining that the time duration has reached the threshold, provide the packet to the switch core packet processor even when a size of the packet bas not reached the maximum size.

6 . A network device, comprising:

a switch core packet processor having a forwarding engine configured to process packets received by the network device to determine ports of the network device via which the packets are to be forwarded, the switch core packet processor further including circuitry configured to generate telemetry data that provides information regarding operational status of at least one of i) the network device, and ii) one or more network links connected to ports of the network device; and

hardware circuitry configured to:

collect telemetry data generated by the switch core packet processor,

generate packets that include respective sets of the telemetry data collected by the hardware circuitry, the packets generated by the hardware circuitry being addressed to a remote network device in, or communicatively coupled to, a communication network that includes the network device, the generating of the packets including, for each of at least some of the packets, adding telemetry data to the packet as telemetry data is collected by the hardware circuitry, and

provide the packets to the switch core packet processor to prompt the switch core packet processor to transmit the packets to the remote network device via one or more ports of the network device, including, for each packet amongst at least a subset of the at least some packets:

determining whether a time duration has reached a threshold, the time duration corresponding to a time since the network device transmitted a previous packet having telemetry data, and

in response to determining that the time duration has reached the threshold, providing the packet to the switch core packet processor.

7 . The network device of claim 1 , further comprising a central processing unit (CPU) coupled to a memory device, the CPU configured to execute machine readable instructions stored in the memory device;

wherein the hardware circuitry is configured to collect the telemetry data generated by the network device without intervention by the CPU.

8 . The network device of claim 1 , further comprising a central processing unit (CPU) coupled to a memory device, the CPU configured to execute machine readable instructions stored in the memory device;

wherein the hardware circuitry is configured to:

collect the telemetry data generated by the network device in response to prompts by the CPU, and at least one of:

generate the packets that include the respective sets of the telemetry data without intervention by the CPU, and

provide the packets to the switch core packet processor without intervention by the CPU.

9 . The network device of claim 1 , further comprising a central processing unit (CPU) coupled to a memory device, the CPU configured to execute machine readable instructions stored in the memory device;

wherein the hardware circuitry is configured to generate the packets that include the respective sets of the telemetry data without intervention by the CPU.

10 . The network device of claim 1 , further comprising a central processing unit (CPU) coupled to a memory device, the CPU configured to execute machine readable instructions stored in the memory device;

the hardware circuitry is configured to provide the packets to the switch core packet processor without intervention by the CPU.

11 . A method in a communication network for communicating telemetry data generated by a network device, the method comprising:

collecting, by hardware circuitry of the network device, the telemetry data generated by the network device, the telemetry data providing information regarding operational status of at least one of i) the network device, and ii) one or more network links connected to the network device;

generating, by the hardware circuitry, packets that include respective sets of the telemetry data collected by the hardware circuitry, the packets generated by the hardware circuitry to be addressed to a remote network device in, or communicatively coupled to, the communication network, the generating of packets including, for each of at least some of the packets, monitoring a size of the packet while the hardware circuitry adds telemetry data to the packet; and

prompting, by the hardware circuitry, the network device to transmit the packets to the remote network device, including, for each packet amongst at least a subset of the at least some packets, providing the packet to the switch core packet processor to prompt the switch core packet processor to transmit the packet in response to determining that a size of the packet has reached a maximum size based on the monitoring of the size of the packet while the hardware circuitry adds telemetry data to the packet.

12 . The method for communicating telemetry data of claim 11 , further comprising:

determining times at which to collect the telemetry data based on a timer of the hardware circuitry.

13 . The method for communicating telemetry data of claim 11 , wherein generating the packets comprises, for each of the at least some of packets:

adding telemetry data to the packet, by the hardware circuitry, as telemetry data is collected by the hardware circuitry.

14 . The method for communicating telemetry data of claim 13 , wherein prompting the network device to transmit the packets further comprises, for each of at least another subset of the packets:

determining, by the hardware circuitry, whether a time duration has reached a threshold, the time duration corresponding to a difference between i) a time corresponding to transmission of a previous packet having telemetry data, and ii) a current time; and

in response to determining that the time duration has reached the threshold, prompting the network device to transmit the packet even when a size of the packet has not reached the maximum size.

15 . The method for communicating telemetry data of claim 11 , wherein prompting the network device to transmit the packets further comprises, for each of at least another subset of the packets:

determining, by the hardware circuitry, whether a time duration has reached a threshold, the time duration corresponding to a difference between i) a time corresponding to transmission of a previous packet having telemetry data, and ii) a current time; and

in response to determining that the time duration has reached the threshold, prompting the network device to transmit the packet even when a size of the packet has not reached the maximum size.

16 . The method for communicating telemetry data of claim 11 , wherein collecting the telemetry data generated by the network device is performed in response to prompts by a central processing unit (CPU) of the network device, the CPU configured to execute machine readable instructions stored in a memory of the network device; and

wherein at least one of:

generating the packets that include the respective sets of the telemetry data is performed without intervention by the CPU; and

prompting the network device to transmit the packets to the remote network device is performed without intervention by the CPU.

17 . The method for communicating telemetry data of claim 11 , wherein the network device includes a central processing unit (CPU) that is configured to execute machine readable instructions stored in a memory of the network device; and

wherein generating the packets that include the respective sets of the telemetry data is performed without intervention by the CPU.

18 . The method for communicating telemetry data of claim 11 , wherein the network device includes a central processing unit (CPU) that is configured to execute machine readable instructions stored in a memory of the network device; and

wherein prompting the network device to transmit the packets to the remote network device is performed without intervention by the CPU.

19 . The network device of claim 6 , wherein the hardware circuitry comprises a timer configured to measure the time duration, and wherein the hardware circuitry is further configured to:

determine whether the time duration has reached the threshold using the timer.

20 . A method in a communication network for communicating telemetry data generated by a network device, the method comprising:

collecting, by hardware circuitry of the network device, the telemetry data generated by the network device, the telemetry data providing information regarding operational status of at least one of i) the network device, and ii) one or more network links connected to the network device;

generating, by the hardware circuitry, packets that include respective sets of the telemetry data collected by the hardware circuitry, the packets generated by the hardware circuitry to be addressed to a remote network device in, or communicatively coupled to, the communication network, the generating of the packets including, for each of at least some of the packets, adding telemetry data to the packet as telemetry data is collected by the hardware circuitry; and

prompting, by the hardware circuitry, the network device to transmit the packets to the remote network device, including, for each packet amongst at least a subset of the at least some packets:

determining whether a time duration has reached a threshold, the time duration corresponding to a time since the network device transmitted a previous packet having telemetry data, and

in response to determining that the time duration has reached the threshold, providing the packet to the switch core packet processor.

Continuity (2)
Provisional Application 63538796 · Sep 15, 2023
Related Publication 20250097129A1 · Mar 20, 2025
References Cited (30)
US 8582428B1 · Bishara et al. · 2013 [cited by applicant]
US 9935854B2 · Kuan · 2018 [cited by examiner]
US 10506044B1 · Volpe et al. · 2019 [cited by applicant]
US 10623285B1 · Shevade · 2020 [cited by examiner]
US 11218411B2 · Katan et al. · 2022 [cited by applicant]
US 11418420B2 · Sivaraman · 2022 [cited by examiner]
US 11438211B1 · Lyubomirsky et al. · 2022 [cited by applicant]
US 11477288B1 · Singh et al. · 2022 [cited by applicant]
US 11483229B1 · Friman · 2022 [cited by examiner]
US 11706103B2 · Huang · 2023 [cited by examiner]
US 20080052394A1 · Bugenhagen · 2008 [cited by examiner]
US 20080269841A1 · Grevious · 2008 [cited by examiner]
US 20170346714A1 · Mizrahi · 2017 [cited by applicant]
US 20190036779A1 · Bajaj · 2019 [cited by examiner]
US 20190182127A1 · Pignataro · 2019 [cited by examiner]
US 20190253250A1 · Bruner · 2019 [cited by examiner]
US 20210250265A1 · Kotadia · 2021 [cited by examiner]
US 20210266264A1 · Mizrahi et al. · 2021 [cited by applicant]
US 20210318666A1 · Brockhurst · 2021 [cited by examiner]
US 20210409221A1 · Leong · 2021 [cited by examiner]
US 20220121078A1 · Vollen · 2022 [cited by examiner]
US 20220210087A1 · Biradar et al. · 2022 [cited by applicant]
US 20220239571A1 · Rangarajan et al. · 2022 [cited by applicant]
US 20220255817A1 · Hong · 2022 [cited by examiner]
US 20230096238A1 · Hofman-bang et al. · 2023 [cited by applicant]
US 20230169019A1 · Cannata · 2023 [cited by examiner]
AU 2014218366A1 · 2015 [cited by examiner]
CA 3148517A1 · 2021 [cited by examiner]
WO 2024227123A1 · 2024 [cited by applicant]
International Search Report and Written Opinion for PCT No. PCT/IB2024/058374, mailed Dec. 5, 2025. (15 pages). [cited by applicant]