IP Library Granted Patent US 9,210,074
Granted Patent B2
US 9,210,074 · App. 13/886,835 · Granted Dec 8, 2015

Low-cost flow matching in software defined networks without TCAMs

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 9,210,074
App. No.
13/886,835
Granted
Dec 8, 2015
Kind
B2
Abstract

Various exemplary embodiments relate to a method for processing data packets by a first-hop switch in a data network, including: receiving a first data packet associated with a flow; determining whether the flow associated with the first data packet is found in a flow table in the first-hop switch; modifying the first data packet by replacing a packet header field with flow definition information; and transmitting the modified first data packet based upon the flow definition information.

Claims (32)

1. A method for processing data packets by a first-hop switch in a data network, comprising:

receiving a first data packet associated with a flow;

determining whether the flow associated with the first data packet is found in a flow table in the first-hop switch;

modifying the first data packet by replacing a destination media access control (DMAC) field with flow definition information, wherein the flow definition information comprises both a network identifier and an address identifier; and

transmitting the modified first data packet based upon the flow definition information, wherein the network identifier identifies a flow and the address identifier identifies different DMACs within one flow.

2. The method of claim 1 , wherein the network identifier identifies a wildcard-based flow.

3. The method of claim 1 , further comprising:

when the flow associated with the first data packet is not found in the flow table, creating a new flow table entry for the flow associated with the first data packet.

4. The method of claim 1 , wherein determining whether the flow associated with the first data packet is found in the flow table includes wildcard matching flow data information with flow table entries.

5. The method of claim 1 , wherein transmitting the modified first data packet based upon the network identifier includes transmitting the modified first data packet to a port found in the flow table associated with the network identifier.

6. The method of claim 1 , further comprising:

receiving a second data packet associated with the flow;

matching the flow associated with the second data packet with a flow table entry;

modifying the second data packet by replacing a packet header field with flow table entry information; and

transmitting the modified second data packet based upon the flow table entry information.

7. The method of claim 1 , further comprising:

determining that the flow associated with the first data packet is a new flow; and

transmitting information regarding the new flow to a central controller.

8. The method of claim 1 , further comprising:

receiving flow table data information from a central controller.

9. The method of claim 1 , further comprising:

receiving the transmitted modified first data packet and switching the transmitted modified first data packet according to the flow definition information.

10. The method of claim 1 , wherein a combined bit length of both the network identifier and the address identifier fits within a bit length of a Destination Media Access Control (DMAC) field.

11. A method for processing data packets by a last-hop switch in a data network, comprising:

receiving a first data packet associated with a flow, the first data packet having flow definition information, wherein the flow definition information comprises both a network identifier and an address identifier;

determining whether the flow associated with the first data packet is found in a flow table in the last-hop switch;

modifying the first data packet by replacing the flow definition information in a destination media access control (DMAC) field with original header information based upon the flow definition information; and

transmitting the modified first data packet based upon the original header information, wherein the network identifier identifies a flow and the address identifier identifies different DMACs within one flow.

12. The method of claim 11 , wherein the network identifier identifies a wildcard-based flow.

13. The method of claim 11 , wherein determining whether the flow associated with this first data packet is found in the flow table includes wildcard matching flow data information with flow table entries.

14. The method of claim 11 , further comprising:

receiving flow table data information from a central controller.

Assignments (4)
RELEASE OF SECURITY INTEREST Recorded Aug 28, 2014
From: CREDIT SUISSE AG
To: ALCATEL-LUCENT USA
Reel/Frame 033647/0251 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 2, 2014
From: ALCATEL-LUCENT USA INC.
To: ALCATEL LUCENT
Reel/Frame 033231/0160 →
SECURITY AGREEMENT Recorded Jul 22, 2013
From: ALCATEL LUCENT USA, INC.
To: CREDIT SUISSE AG
Reel/Frame 030851/0364 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 3, 2013
From: HAO, FANG; LAKSHMAN, T.V.
To: ALCATEL-LUCENT USA, INC.
Reel/Frame 030347/0952 →