IP Library Granted Patent US 7,284,272
Granted Patent B2
US 7,284,272 · App. 10/158,115 · Granted Oct 16, 2007

Secret hashing for TCP SYN/FIN correspondence

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,284,272
App. No.
10/158,115
Granted
Oct 16, 2007
Kind
B2
Abstract

Methods of preventing flooding-type denial-of-service attacks in a computer-based network are described. Connection establishing messages known as SYN packets are matched with connection terminating messages (FIN packets) by using a hash algorithm. The hash algorithm or message digest uses source and destination IP addresses, port numbers, and a secret key as input parameters. The SYN packets and FIN packets are mapped to buckets using the hash algorithm and statistics are maintained for each bucket. A correspondence between SYN packets and FIN packets is maintained to close a security hole.

Claims (24)

1. A method of detecting a denial of service (DoS) attack at a router in a digital communications system, the method comprising the steps of:

a) calculating, for each connection establishing and connection terminating packet received at the router, a value uniquely identifying a connection;

b) incrementing by one during a predetermined time interval a global count and a bucket count of a bucket identified uniquely by the value upon receiving a connection establishing packet, wherein said global count uses any one of a cumulative sum, a moving average, or a filter derivative to detect open connections;

c) decrementing by one during the predetermined time interval the global count and the bucket count of the bucket identified uniquely by the value upon receiving a connection terminating packet, only if the bucket count is strictly positive; and

d) identifying a DoS attack using the global count by tracking unsuccessful connection attempts over successive time intervals.

2. The method as defined in claim 1 wherein the predetermined time interval is one of a continuous sliding window or a non-overlapping sliding window.

3. The method as defined in claim 2 wherein the bucket counter is reset at the end of the predetermined time interval.

4. The method as defined in claim 1 wherein said connection establishing packet is a SYN or a SYN/ACK packet and said connection terminating packet is a FIN packet.

5. A method according to claim 1 wherein said router is connected between a LAN and a network in said digital communication system, said connection establishing packet being received from the LAN side of the router and said connection terminating packet being received from the network side of the router.

6. A method according to claim 5 wherein said connection establishing packet is a SYN packet and said connection terminating packet is a FIN packet.

7. A method according to claim 1 wherein said router is located between a LAN and a network in said digital communication system, said connection establishing packet being received from the network side of the router and said connection terminating packet being received from the LAN side of the router.

8. A method according to claim 7 wherein said connection establishing packet is a SYN packet and said connection terminating packet is a FIN packet.

9. A method according to claim 1 wherein said value is determined using a hash function with inputs of source IP address, destination IP address, port number, and a key.

10. The method of claim 1 wherein said each value is determined by hashing the data representing the source IP address and the destination IP address of said connection establishing packet and connection terminating packet, and the port number on which said connection establishing packet and connection terminating packet are received.

11. The method of claim 1 wherein said values are maintained in a hash table that includes a plurality of buckets, each bucket maintaining a respective bucket count, and each bucket further being accessed for increasing or decreasing said respective bucket count using said key.

12. The method of claim 11 wherein each bucket is a Bloom filter.

13. The method of claim 11 wherein each bucket maintains at least one additional count for distinctly counting one or more of: the number of SYN packets received in said bucket, the number of RST packets received in said bucket, and the number of FIN packets deducted from said bucket.

14. A method of detecting a denial of service (DOS) attack at a router in a digital communications system, the method comprising the steps of:

a) calculating at the router, for each connection establishing and connection terminating packet, a value using as input parameters source and destination IP addresses and port number of each said packet and a key;

b) during a predetermined time interval, incrementing by one a bucket count in a bucket identified uniquely by the value upon receiving a connection establishing packet;

c) during the predetermined time interval, decrementing by one the bucket count in the bucket identified uniquely by the value upon receiving a connection terminating packet if the bucket count is strictly positive;

d) incrementing by one a global count in a global counter upon receiving each connection establishing packet and decrementing by one the global count upon transmitting each connection terminating packet for counting all open connections at said router,

wherein said global count uses any one of a cumulative sum, a moving average, or a filter derivative to detect open connections.

15. A method according to claim 14 wherein said connection establishing packet is a SYN packet and said connection terminating packet is a FIN packet.

Assignments (11)
PATENT SECURITY AGREEMENT Recorded Apr 22, 2023
From: RPX CORPORATION
To: BARINGS FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 063429/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 28, 2021
From: PROVENANCE ASSET GROUP LLC
To: RPX CORPORATION
Reel/Frame 059352/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: NOKIA US HOLDINGS INC.
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058363/0723 →
RELEASE OF SECURITY INTEREST Recorded Nov 30, 2021
From: CORTLAND CAPITAL MARKETS SERVICES LLC
To: PROVENANCE ASSET GROUP HOLDINGS LLC; PROVENANCE ASSET GROUP LLC
Reel/Frame 058983/0104 →
ASSIGNMENT AND ASSUMPTION AGREEMENT Recorded Feb 14, 2019
From: NOKIA USA INC.
To: NOKIA US HOLDINGS INC.
Reel/Frame 048370/0682 →
MERGER Recorded Feb 7, 2019
From: ALCATEL CANADA INC
To: ALCATEL LUCENT CANADA INC
Reel/Frame 048257/0731 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 13, 2017
From: NOKIA TECHNOLOGIES OY; NOKIA SOLUTIONS AND NETWORKS BV; ALCATEL LUCENT SAS
To: PROVENANCE ASSET GROUP LLC
Reel/Frame 043877/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP LLC
To: NOKIA USA INC.
Reel/Frame 043879/0001 →
SECURITY INTEREST Recorded Sep 13, 2017
From: PROVENANCE ASSET GROUP HOLDINGS, LLC; PROVENANCE ASSET GROUP, LLC
To: CORTLAND CAPITAL MARKET SERVICES, LLC
Reel/Frame 043967/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 4, 2014
From: CREDIT SUISSE AG
To: ALCATEL-LUCENT CANADA INC.
Reel/Frame 033686/0798 →
SECURITY INTEREST Recorded Jan 30, 2013
From: ALCATEL-LUCENT CANADA INC.
To: CREDIT SUISSE AG
Reel/Frame 029826/0927 →