US 12,289,165 B2
Counting packet loss in sequence recovery method
Bernard Francois St-Denis, Ottawa (CA); Allen Lengacher, Kanata (CA); and Feng Xian, Kanata (CA)
Assigned to NXP B.V., Eindhoven (NL)
Filed by NXP B.V., Eindhoven (NL)
Filed on Jun. 22, 2022, as Appl. No. 17/808,189.
Claims priority of application No. 21182604 (EP), filed on Jun. 29, 2021.
Prior Publication US 2022/0416947 A1, Dec. 29, 2022
Int. Cl. H04L 47/34 (2022.01); H04L 1/00 (2006.01); H04L 1/1607 (2023.01); H04L 1/20 (2006.01); H04L 43/0829 (2022.01); H04L 47/32 (2022.01)
CPC H04L 1/1628 (2013.01) [H04L 1/003 (2013.01); H04L 1/203 (2013.01); H04L 43/0829 (2013.01)] 18 Claims
OG exemplary drawing
 
1. A sequence recovery method executed by a node in a time-sensitive network configured to transmit and receive packets, the node having therein:
a history vector, wherein a first bit of the history vector represents a current highest sequence number accepted by the node and a remaining M bits represent M consecutive sequence numbers lower than the current highest sequence number accepted by the node;
a packet loss counter; and
a state variable, having a first state in which the packet loss counter is disabled and a second state in which the packet loss counter is enabled;
the method comprising:
setting the packet loss counter to an initial value and setting the state variable to the first state;
receiving a first packet having a first sequence number;
configuring the history vector such that the first bit representing the first sequence number is set and the remaining M bits are unset;
individually receiving a plurality of packets each having a respective sequence number, and for each received sequence number:
in response to the sequence number being within a future range, wherein the future range defines a set of consecutive sequence numbers higher than the current highest sequence number accepted by the node:
storing the sequence number as the current highest sequence number accepted by the node and updating the history vector accordingly;
in response to a set bit being shifted out of the updated history vector when the state variable is in the first state, setting the state variable to the second state; and
in response to an unset bit being shifted out of the updated history vector, incrementing the packet loss counter only if the state variable is in the second state.