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. 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; 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. 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.