IP Library Patent Application 13672830
Patent Application
App. No. 13/672,830

HANDLING OUT-OF-SEQUENCE PACKETS IN A CIRCUIT EMULATION SERVICE

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 None
App. No.
13/672,830
Abstract

Various exemplary embodiments relate to a method and related network node having a playout buffer including one or more of the following: receiving, at the network device, a first packet belonging to a first flow, the first packet including a first sequence number (SN); receiving, at the network device, a second packet belonging to the first flow, the second packet including a second SN; determining that the second SN is not in sequence with the first SN; waiting to receive, at the network device, a third packet belonging to the first flow, the third packet including a third SN; and determining that a jump in SNs has occurred for the first flow between the first packet and the second packet based on determining that the third SN is in sequence with the second SN.

Claims (80)

1 . A method performed by a network device for handling out-of-sequence packets, the method comprising:

receiving, at the network device, a first packet belonging to a first flow, the first packet including a first sequence number (SN);

receiving, at the network device, a second packet belonging to the first flow, the second packet including a second SN;

determining that the second SN is not in sequence with the first SN;

waiting to receive, at the network device, a third packet belonging to the first flow, the third packet including a third SN; and

determining that a jump in SNs has occurred for the first flow between the first packet and the second packet based on determining that the third SN is in sequence with the second SN.

2 . The method of claim 1 , further comprising:

waiting to receive, at the network device, a fourth packet belonging to the first flow, the fourth packet including a fourth SN,

wherein determining that a jump in SNs has occurred for the first flow between the first packet and the second packet based on determining that the third SN is in sequence with the second SN comprises determining that a jump in SNs has occurred for the first flow between the first packet and the second packet based on:

determining that the third SN is in sequence with the second SN, and

determining that the fourth SN is in sequence with the third SN.

3 . The method of claim 1 , wherein determining that the third SN is in sequence with the second SN comprises determining that the third SN is equal to the sum of the second SN and an expected increment value.

4 . The method of claim 1 , further comprising:

normalizing a playout buffer of the network device based on a determination that a jump in SNs has occurred for the first flow between the first packet and the second packet.

5 . The method of claim 1 , further comprising:

receiving, at the network device, a fourth packet belonging to a second flow, the fourth packet including a fourth sequence number (SN);

receiving, at the network device, a fifth packet belonging to the second flow, the fifth packet including a fifth SN;

determining that the fifth SN is not in sequence with the fourth SN;

waiting to receive, at the network device, a sixth packet belonging to the second flow, the sixth packet including a sixth SN; and

determining that the fifth packet was received out of order based on determining that the sixth SN is in sequence with the fourth SN.

6 . The method of claim 1 , further comprising:

receiving, at the network device, a fourth packet belonging to a second flow, the fourth packet including a fourth sequence number (SN);

receiving, at the network device, a fifth packet belonging to the second flow, the fifth packet including a fifth SN;

determining that the fifth SN is not in sequence with the fourth SN;

waiting to receive, at the network device, a sixth packet belonging to the second flow, the sixth packet including a sixth SN; and

determining that the fifth packet included an incorrect SN based on determining the sixth SN is equal to the sum of the fourth SN and two times an expected increment value.

7 . The method of claim 1 , further comprising reinitializing a playout buffer of the network device based on a determination that:

the third SN is not in sequence with the second SN,

the third SN is not in sequence with the first SN, and

the third SN does not equal the sum of the first SN and two times an expected increment value.

8 . A method performed by a network device for handling out-of-sequence packets, the method comprising:

receiving, at the network device, a first packet;

determining that the first packet has been received out of sequence;

entering an Out-Of-Sync state based on determining that the first packet has been received out of sequence;

receiving, at the network device, a second packet;

detecting an In Sequence condition based on the second packet;

exiting the Out-Of-Sync state based on detecting the In Sequence condition.

9 . The method of claim 8 , wherein:

the network device has previously received a packet having a first sequence number (SN),

the first packet includes a second SN,

the second packet includes a third SN, and

detecting the In Sequence condition comprises determining that a jump in SNs has occurred based on determining that the third SN is in sequence with the second SN.

10 . The method of claim 8 , wherein exiting the Out-Of-Sync state comprises entering a Sync state based on a determination that the first packet represented at least one of: a sequence number anomaly and an incorrect sequence number.

11 . The method of claim 8 , wherein exiting the Out-Of-Sync state comprises entering a Normalize state based on a determination that the first packet represented a jump in sequence numbers.

12 . The method of claim 11 , further comprising transitioning to a Sync state from the Normalize state based on completion of a normalization operation.

13 . The method of claim 11 , wherein completion of the normalization operation comprises:

discarding at least one packet received while in the Normalize state;

determining that a current fill level of a playout buffer is lower than a target fill level; and

inserting at least one dummy packet into the playout buffer.

14 . A network device for handling out-of-sequence packets, the network device comprising:

a memory; and

a processor communicatively connected to the memory, the processor being configured to:

receive a first packet belonging to a first flow, the first packet including a first sequence number (SN),

receive a second packet belonging to the first flow, the second packet including a second SN,

determine that the second SN is not in sequence with the first SN,

wait to receive a third packet belonging to the first flow, the third packet including a third SN, and

determine that a jump in SNs has occurred for the first flow between the first packet and the second packet based on determining that the third SN is in sequence with the second SN.

15 . The network device of claim 14 , wherein the processor is further configured to:

wait to receive a fourth packet belonging to the first flow, the fourth packet including a fourth SN,

wherein, in determining that a jump in SNs has occurred for the first flow between the first packet and the second packet based on determining that the third SN is in sequence with the second SN, the processor is configured to determine that a jump in SNs has occurred for the first flow between the first packet and the second packet based on:

determining that the third SN is in sequence with the second SN, and

determining that the fourth SN is in sequence with the third SN.

16 . The network device of claim 14 , wherein, in determining that the third SN is in sequence with the second SN, the processor is configured to determine that the third SN is equal to the sum of the second SN and an expected increment value.

17 . The network device of claim 14 , wherein the processor is further configured to normalize a playout buffer of the network device based on a determination that a jump in SNs has occurred for the first flow between the first packet and the second packet.

18 . The network device of claim 14 , wherein the processor is further configured to:

receive a fourth packet belonging to a second flow, the fourth packet including a fourth sequence number (SN);

receive a fifth packet belonging to the second flow, the fifth packet including a fifth SN;

determine that the fifth SN is not in sequence with the fourth SN;

wait to receive a sixth packet belonging to the second flow, the sixth packet including a sixth SN; and

determine that the fifth packet was received out of order based on determining that the sixth SN is in sequence with the fourth SN.

19 . The network device of claim 14 , wherein the processor is further configured to:

receive a fourth packet belonging to a second flow, the fourth packet including a fourth sequence number (SN);

receive a fifth packet belonging to the second flow, the fifth packet including a fifth SN;

determine that the fifth SN is not in sequence with the fourth SN;

wait to receive a sixth packet belonging to the second flow, the sixth packet including a sixth SN; and

determine that the fifth packet included an incorrect SN based on determining the sixth SN is equal to the sum of the fourth SN and two times an expected increment value.

20 . The network device of claim 14 , wherein the processor is further configured to reinitialize a playout buffer of the network device based on a determination that:

the third SN is not in sequence with the second SN,

the third SN is not in sequence with the first SN, and

the third SN does not equal the sum of the first SN and two times an expected increment value.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded May 21, 2019
From: OCO OPPORTUNITIES MASTER FUND, L.P. (F/K/A OMEGA CREDIT OPPORTUNITIES MASTER FUND LP
To: WSOU INVESTMENTS, LLC
Reel/Frame 049246/0405 →
SECURITY INTEREST Recorded Sep 21, 2017
From: WSOU INVESTMENTS, LLC
To: OMEGA CREDIT OPPORTUNITIES MASTER FUND, LP
Reel/Frame 043966/0574 →
RELEASE OF SECURITY INTEREST Recorded Sep 30, 2014
From: CREDIT SUISSE AG
To: ALCATEL LUCENT
Reel/Frame 033868/0555 →
CORRECTIVE ASSIGNMENT TO CORRECT THE INVENTOR/ASSIGNOR'S NAME FROM "ANDRIAN ELLSWORTH" TO -ADRIAN ELLSWORTH- PREVIOUSLY RECORDED ON REEL 029269 FRAME 0017. ASSIGNOR(S) HEREBY CONFIRMS THE RIGHTFUL SPELLING OF INVENTOR'S NAME TO ADRIAN ELLSWORTH. Recorded Mar 12, 2013
From: POULIN, ANDRE; ELLSWORTH, ADRIAN; ROCHON, MICHEL; GROFF, WAYNE
To: ALCATEL-LUCENT CANADA INC.
Reel/Frame 029971/0552 →
SECURITY AGREEMENT Recorded Jan 30, 2013
From: ALCATEL LUCENT
To: CREDIT SUISSE AG
Reel/Frame 029821/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2012
From: ALCATEL-LUCENT CANADA INC.
To: ALCATEL-LUCENT
Reel/Frame 029269/0099 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 9, 2012
From: POULIN, ANDRE; ELLSWORTH, ANDRIAN; ROCHON, MICHEL; GROFF, WAYNE
To: ALCATEL-LUCENT CANADA INC.
Reel/Frame 029269/0017 →