IP Library Granted Patent US 12,445,369
Granted Patent B2
US 12,445,369 · App. 18/462,051 · Granted Oct 14, 2025

Systems and methods for replicating traffic statistics on redundant packet forwarding engine system

Inventors: Pawankumar Harode (Bangalore, IN); Parag Dubey (Bangalore, IN); Anup Yellur Rao (Bengaluru, IN)
Assignee: Juniper Networks, Inc.
H04L45/16H04L45/22
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,445,369
App. No.
18/462,051
Granted
Oct 14, 2025
Kind
B2
Abstract

In some implementations, a first processing component of a network device may receive first traffic data obtained by a second processing component of the network device. The first processing component may store the first traffic data as residual statistics. The first processing component may obtain second traffic data associated with a copy of a traffic stream processed by the first processing component based on storing the first traffic data as the residual statistics. The first processing component may perform a switchover from the second processing component to the first processing component. The first processing component may determine current traffic data based on the residual statistics and the second traffic data. The current traffic data may be determined based on performing the switchover from the second processing component to the first processing component.

Claims (48)

1. A method, comprising:

storing, by a device, current traffic data received from a primary processing component as residual data associated with a backup processing component;

incrementing, by the device, a counter when a packet, from host transmitted traffic data generated by the primary processing component, is forwarded to the backup processing component;

removing, by the device, the host transmitted traffic data from the residual data when the host transmitted traffic data is larger than a threshold;

performing, by the device, a switchover from the primary processing component to the backup processing component to cause the backup processing component to operate as the primary processing component; and

determining, by the device and based on performing the switchover, switchover traffic data based on reading the counter and modifying the residual data with the host transmitted traffic data.

2. The method of claim 1 , wherein the counter is a first counter and a second counter is associated with the primary processing component.

3. The method of claim 1 , further comprising:

monitoring traffic data associated with traffic transmitted through the device after the switchover.

4. The method of claim 1 , wherein the switchover traffic data corresponds to traffic data determined by the primary processing component prior to performing the switchover.

5. The method of claim 1 , further comprising:

obtaining, by the backup processing component, duplicated traffic; and

incrementing the counter based on obtaining the duplicated traffic.

6. The method of claim 1 , further comprising:

determining a failure of the primary processing component.

7. A device, comprising:

one or more memories; and

one or more processors to:

store current traffic data received from a primary processing component as residual data associated with a backup processing component;

increment a counter when a packet, from host transmitted traffic data generated by the primary processing component, is forwarded to the backup processing component;

remove the host transmitted traffic data from the residual data when the host transmitted traffic data is larger than a threshold;

determine a failure of the primary processing component;

perform, based on determining the failure of the primary processing component, a switchover from the primary processing component to a backup component to cause the backup component to operate as the primary processing component; and

determine, based on performing the switchover, switchover traffic data based on reading the counter and subtracting the residual data from the host transmitted traffic data obtained from the primary processing component.

8. The device of claim 7 , wherein the host transmitted traffic data includes packets generated by the primary processing component and transmitted through the device.

9. The device of claim 7 , wherein the backup processing component is implemented in the device as a component module that is configured to be received by a port, a connector, or a bay of the device.

10. The device of claim 7 , wherein the one or more processors are further to:

transmit multiple requests for traffic data associated with the primary processing component.

11. The device of claim 7 , wherein the backup processing component includes a group of backup processing components and the primary processing component includes a group of primary processing components.

12. The device of claim 7 , wherein the one or more processors are further to:

transmit, via the backup processing component, a first request for traffic data; and

transmit, via the backup processing component, a second request for traffic data based on an expiration of a time period.

13. The backup component of claim 7 , wherein the one or more processors are further to:

request traffic data from the primary processing component based on the backup processing component being instantiated in the device.

14. A non-transitory computer-readable medium storing a set of instructions, the set of instructions comprising:

one or more instructions that, when executed by one or more processors of a device, cause the device to:

store current traffic data received from a primary processing component as residual data associated with a backup processing component;

increment a counter when a packet, from host transmitted traffic data generated by the primary processing component, is forwarded to the backup processing component;

remove the host transmitted traffic data from the residual data when the host transmitted traffic data is larger than a threshold;

perform a switchover from the primary processing component to a backup processing component to cause the backup processing component to operate as the primary processing component; and

determine, based on performing the switchover, switchover traffic data based on reading the counter and modifying the residual data with the host transmitted traffic data.

15. The non-transitory computer-readable medium of claim 14 , wherein the host transmitted traffic data includes the packet generated by the primary processing component and transmitted through the device to a peer network device.

16. The non-transitory computer-readable medium of claim 14 , wherein the primary processing component is associated with a primary counter that is incremented each time a packet is transmitted via a particular interface.

17. The non-transitory computer-readable medium of claim 14 , wherein the host transmitted traffic data is stored in a memory associated with the backup processing component.

18. The non-transitory computer-readable medium of claim 14 , wherein the one or more instructions further cause the device to:

store the switchover traffic data in a memory associated with the backup processing component based on determining the switchover traffic data.

19. The non-transitory computer-readable medium of claim 14 , wherein the one or more instructions further cause the device to:

determine a failure of the primary processing component.

Assignments (1)
NUNC PRO TUNC ASSIGNMENT Recorded May 6, 2026
From: JUNIPER NETWORKS, INC.
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 075513/0034 →
Continuity (2)
Continuation 17645820 · Dec 23, 2021
Related Publication 20230421484A1 · Dec 28, 2023
References Cited (34)
US 5854786A · Henderson · 1998 [cited by examiner]
US 7558981B2 · Ashmore · 2009 [cited by examiner]
US 7912075B1 · Holland · 2011 [cited by examiner]
US 7940650B1 · Sandhir · 2011 [cited by examiner]
US 8363549B1 · Zhu · 2013 [cited by examiner]
US 8667177B2 · Doshi · 2014 [cited by examiner]
US 9491107B1 · Scudder · 2016 [cited by examiner]
US 10033667B1 · Ghosh · 2018 [cited by examiner]
US 10425870B2 · Theogaraj et al. · 2019 [cited by applicant]
US 11381505B2 · Cherukuru · 2022 [cited by examiner]
US 11792111B2 · Harode · 2023 [cited by examiner]
US 20040100899A1 · Mahamuni · 2004 [cited by examiner]
US 20040208527A1 · Mantin · 2004 [cited by examiner]
US 20050213498A1 · Appanna · 2005 [cited by examiner]
US 20060062142A1 · Appanna · 2006 [cited by examiner]
US 20080068986A1 · Maranhao · 2008 [cited by examiner]
US 20090006879A1 · Haag · 2009 [cited by examiner]
US 20100107154A1 · Brahmavar · 2010 [cited by examiner]
US 20120239804A1 · Liu · 2012 [cited by examiner]
US 20140169154A1 · Chen · 2014 [cited by examiner]
US 20150032904A1 · Zhang · 2015 [cited by examiner]
US 20150237069A1 · Rochon · 2015 [cited by examiner]
US 20160149789A1 · Lang · 2016 [cited by examiner]
US 20210044476A1 · Zilbershtein · 2021 [cited by examiner]
US 20210124682A1 · Chanler et al. · 2021 [cited by applicant]
US 20220210005A1 · Keane · 2022 [cited by examiner]
US 20220263706A1 · Seth · 2022 [cited by examiner]
US 20230208747A1 · Harode et al. · 2023 [cited by applicant]
US 20230412512A1 · Madajczak · 2023 [cited by examiner]
CN 107438981A · 2017 [cited by applicant]
EP 1584165A2 · 2005 [cited by applicant]
EP 2521335A2 · 2012 [cited by applicant]
WO 2004062820A2 · 2004 [cited by applicant]
Extended European Search Report for Application No. EP22156611.0, mailed on Jul. 12, 2022, 9 pages. [cited by applicant]