IP Library Granted Patent US 7,729,240
Granted Patent B1
US 7,729,240 · App. 11/173,752 · Granted Jun 1, 2010

Method and system for identifying duplicate packets in flow-based network monitoring system

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 7,729,240
App. No.
11/173,752
Granted
Jun 1, 2010
Kind
B1
Abstract

A network monitoring device configured to collect a new packet from one or more observation points of a network and to compare the new packet with a list of a number of received packets based on a packet arrival rate and to identify a duplicate packet. In particular, the number of received packets in the list is equivalent to a number of packets received within a time period, i.e. the packet arrival rate. Stated differently, the network monitoring device is to compare the new packets with received packets stored in a queue of a buffer and wherein the queue has a size based on a packet arrival rate collected at one or more observation points. In addition, the time period is further adjusted according to a threshold value. The threshold value is a variable parameter that can be adjusted to compensate for different network deployment. In one embodiment, the threshold value is a time value that is not more than a transmission time of a TCP retransmitted packet.

Claims (45)

1. A method for identifying a duplicate packet, the method comprising:

collecting a plurality of received packets at a network monitoring device;

storing a plurality of packet values corresponding to the plurality of received packets at the network monitoring device;

determining, at the network monitoring device, a current packet arrival rate based on two or more of the plurality of received packets;

receiving a new packet at the network monitoring device;

comparing a new packet value corresponding to the new packet with each of a number of samples of the plurality of packet values at the network monitoring device, wherein the number of samples is determined based on the current packet arrival rate;

determining, at the network monitoring device, whether the new packet is a duplicate based on the comparing.

2. The method of claim 1 , wherein the number of samples corresponds to a determined number of packets received within a given time period.

3. The method of claim 2 , wherein the time period is adjusted according to a threshold value.

4. The method of claim 3 , wherein the threshold value is a variable parameter.

5. The method of claim 3 , wherein the threshold value is a time value that is less than a retransmission time of a TCP retransmitted packet.

6. The method of claim 1 , wherein the comparing includes performing a hash value comparison of a header of the new packet prior to a byte-by-byte comparison of the header.

7. The method of claim 6 , wherein performing the hash value comparison includes calculating and comparing a first hash value and second hash value, the first and second hash values based on header information of the new packet and header information of each sample of the plurality of packet values, respectively.

8. The method of claim 7 , including performing the byte-by-byte comparison of the header of the new packet and the header of the received packet when the first hash value corresponds to the second hash value.

9. The method of claim 8 , wherein the new packet is determined to be the duplicate in response to a successful byte-by-byte comparison.

10. A network monitoring device configured to:

collect a plurality of packets from one or more observation points of a network,

store a plurality of packet values corresponding to the plurality of received packets in a buffer,

determine a current packet arrival rate based on two or more of the plurality of packets, collect a new packet,

compare a new packet value corresponding to the new packet with each of a number of samples of the plurality of packet values, wherein the number of samples is determined based on the current packet arrival rate; and

determine, based on the comparison, whether the new packet is a duplicate packet.

11. The network monitoring device of claim 10 , wherein the number of samples corresponds to a number of packets received within a defined time period.

12. The network monitoring device of claim 11 , wherein the time period is adjusted according to a threshold value.

13. The network monitoring device of claim 12 , wherein the threshold value is a variable parameter.

14. The network monitoring device of claim 12 , wherein the threshold value is a time value that is less than a retransmission time of a TCP retransmitted packet.

15. The network monitoring device of claim 10 , wherein the monitoring device is configured to perform a hash value comparison of headers of the new packet and the received packet prior to a byte-by-byte comparison of the headers.

16. The network monitoring device of claim 15 , wherein the network monitoring device is configured to perform the hash value comparison by calculating and comparing a first hash value and second hash value, the first and second hash values being based on header information of the new packet and header information of each sample of the plurality of packet values, respectively.

17. The network monitoring device of claim 16 , wherein the network monitoring device is configured to perform the byte-by-byte comparison of the headers of the new packet and the received packet when the first hash value corresponds to the second hash value.

18. The network monitoring device of claim 17 , wherein the network monitoring device is configured to identify the new packet as a duplicate packet in response to a successful byte-by-byte comparison.

19. A network monitoring device configured to:

collect a plurality of received packets from one or more observation points of a network,

store a queue of packet values corresponding to the plurality of received packets in an order in which the received packets are collected,

determine a current packet arrival rate based on the plurality of received packets,

determine a number of samples based on the current packet arrival rate,

collect a new packet, compare a new packet value of the new packet with each packet value of the queue of packet values until at least one stop limit of a plurality of stop limits is reached, wherein the plurality of stop limits includes a first stop limit of finding a matching packet value in the queue of packet values that corresponds to the new packet value, and a second stop limit of comparing the new packet value with the number of samples of the queue of packet values, and

determine, based on the comparison, whether the new packet is a duplicate packet.

20. The network monitoring device of claim 19 , wherein the number of samples corresponds to a number of packets received within a given time period.

21. The network monitoring device of claim 20 , wherein the time period is adjusted according to a threshold value.

22. The network monitoring device of claim 21 , wherein the threshold value is a variable parameter.

23. The network monitoring device of claim 21 , wherein the threshold value is a time value that is less than a retransmission time of a TCP retransmitted packet.

24. The network monitoring device of claim 19 , wherein the network monitoring device is configured to compare the new packet value with each packet value of the queue of packet values by:

comparing a hash value of the new packet value with a hash value of each packet value, and,

if a matching hash value is found, comparing each byte of the new packet value to each byte of the packet value corresponding to the matching hash value.

25. The network monitoring device of claim 19 , wherein the network monitoring device is configured to store the new packet value in the queue of packet values if the new packet is not a duplicate packet.

26. The network monitoring device of claim 19 , wherein the network monitoring device is configured with a maximum queue size for storing the queue of packet values, and the number of samples is less than the maximum queue size.

Assignments (18)
RELEASE OF SECURITY INTEREST Recorded Aug 11, 2023
From: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.; ATERNITY LLC; RIVERBED HOLDINGS, INC.
Reel/Frame 064673/0739 →
CHANGE OF NAME Recorded Feb 18, 2022
From: RIVERBED TECHNOLOGY, INC.
To: RIVERBED TECHNOLOGY LLC
Reel/Frame 059232/0551 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 27, 2021
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS U.S. COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
Reel/Frame 058593/0169 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 27, 2021
From: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
Reel/Frame 058593/0046 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Dec 27, 2021
From: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
Reel/Frame 058593/0108 →
SECURITY INTEREST Recorded Dec 10, 2021
From: RIVERBED TECHNOLOGY LLC (FORMERLY RIVERBED TECHNOLOGY, INC.); ATERNITY LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS U.S. COLLATERAL AGENT
Reel/Frame 058486/0216 →
PATENT SECURITY AGREEMENT Recorded Oct 27, 2021
From: RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 057943/0386 →
PATENT SECURITY AGREEMENT SUPPLEMENT - FIRST LIEN Recorded Oct 14, 2021
From: RIVERBED HOLDINGS, INC.; RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 057810/0502 →
PATENT SECURITY AGREEMENT SUPPLEMENT - SECOND LIEN Recorded Oct 14, 2021
From: RIVERBED HOLDINGS, INC.; RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
To: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
Reel/Frame 057810/0559 →
RELEASE OF SECURITY INTEREST IN PATENTS RECORED AT REEL 056397, FRAME 0750 Recorded Oct 13, 2021
From: MACQUARIE CAPITAL FUNDING LLC
To: RIVERBED HOLDINGS, INC.; RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
Reel/Frame 057983/0356 →
SECURITY INTEREST Recorded May 26, 2021
From: RIVERBED HOLDINGS, INC.; RIVERBED TECHNOLOGY, INC.; ATERNITY LLC
To: MACQUARIE CAPITAL FUNDING LLC
Reel/Frame 056397/0750 →
PATENT SECURITY AGREEMENT Recorded Mar 5, 2021
From: RIVERBED TECHNOLOGY, INC.
To: ALTER DOMUS (US) LLC, AS COLLATERAL AGENT
Reel/Frame 055514/0249 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYING PARTY NAME PREVIOUSLY RECORDED ON REEL 035521 FRAME 0069. ASSIGNOR(S) HEREBY CONFIRMS THE RELEASE OF SECURITY INTEREST IN PATENTS. Recorded Jun 2, 2015
From: JPMORGAN CHASE BANK, N.A.
To: RIVERBED TECHNOLOGY, INC.
Reel/Frame 035807/0680 →
SECURITY INTEREST Recorded May 1, 2015
From: RIVERBED TECHNOLOGY, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 035561/0363 →
RELEASE OF SECURITY INTEREST IN PATENTS Recorded Apr 28, 2015
From: BARCLAYS BANK PLC
To: RIVERBED TECHNOLOGY, INC.
Reel/Frame 035521/0069 →
PATENT SECURITY AGREEMENT Recorded Dec 27, 2013
From: RIVERBED TECHNOLOGY, INC.
To: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 032421/0162 →
RELEASE OF PATENT SECURITY INTEREST Recorded Dec 26, 2013
From: MORGAN STANLEY & CO. LLC, AS COLLATERAL AGENT
To: RIVERBED TECHNOLOGY, INC.
Reel/Frame 032113/0425 →
SECURITY AGREEMENT Recorded Dec 20, 2012
From: RIVERBED TECHNOLOGY, INC.; OPNET TECHNOLOGIES, INC.
To: MORGAN STANLEY & CO. LLC
Reel/Frame 029646/0060 →