IP Library › Granted Patent US 9,197,548
Granted Patent B2
US 9,197,548 · App. 13/586,550 · Granted Nov 24, 2015

Network switching system using software defined networking applications

Inventors: Cuong Nguyen (Austin, TX); Rabah S. Hamdi (Spring, TX); Joseph B. Farrell (Austin, TX)
Assignee: Dell Products L.P.
H04L45/38H04L45/306
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,197,548
App. No.
13/586,550
Filed
Aug 15, 2012
Granted
Nov 24, 2015
Kind
B2
Art Unit
2452
USPC
709/223
Abstract

A network switching system includes a storage device including a plurality of application-provided flow-based rules provided by a plurality of applications. A packet processor is coupled to the storage device and includes a flow-based handler that is operable to receive a packet, determine that the packet is associated with a flow session, and associate a plurality of the application-provided flow-based rules with the packet based the association of the packet with the flow session. The packet processor also includes a flow-based rule processing engine that is operable to determine a priority for the plurality of application-provided flow-based rules and apply at least one of the plurality of application-provided flow-based rules to the packet according to the priority. The system allows a plurality of SDN applications to operate in a network switching system independently and without knowledge of each other.

Claims (39)

1. A network switching system, comprising:

a storage device including a plurality of application-provided flow-based rules provided by a plurality of applications; and

a packet processor coupled to the storage device, wherein the packet processor includes:

a flow-based handler that is configured to receive a packet, determine that the packet is associated with a flow session, and associate a plurality of the application-provided flow-based rules with the packet based the association of the packet with the flow session; and

a flow-based rule processing engine that is configured to determine a priority for the plurality of application-provided flow-based rules that are associated with the packet, determine a conflict with the plurality of application-provided flow-based rules that are associated with the packet, and apply at least two of the plurality of application-provided flow-based rules to the packet according to the priority such that the conflict is resolved.

2. The system of claim 1 , wherein the applying the at least two of the plurality of application-provided flow-based rules to the packet according to the priority such that the conflict is resolved includes modifying at least one lower priority of the at least two of the plurality of application-provided flow-based rules such that conflict is resolved when the at least one lower priority of the plurality of application-provided flow-based rules is applied to the packet along with the others of the at least two of the plurality of application-provided flow-based rules.

3. The system of claim 1 , where the plurality of applications include a plurality of software defined networking applications that include at least one of a security application, a packet modification application, and a traffic redirection application.

4. The system of claim 1 , wherein the priority for the application-provided flow-based rules is based on which of the plurality of applications provided each application-provided flow-based rule.

5. The system of claim 1 , wherein the priority for the application-provided flow-based rules is based on an action required by each application-provided flow-based rule.

6. The system of claim 1 , wherein each of the plurality of applications defines at least one application-provided flow-based rule for each of a plurality of flow sessions that are determinable by the flow-based handler to be associated with the packet.

7. The system of claim 1 , wherein each of the plurality of applications are configured to run independently and without knowledge of the other of the plurality of applications.

8. An information handling system (IHS) network, comprising:

a control IHS that includes a plurality of application that each provide at least one flow-based rule;

a first IHS coupled to the network, wherein the first IHS is to generate and send a plurality of packets over the network; and

a second IHS coupled to the control IHS and the first IHS through the network and including a storage device storing a plurality of the flow-based rules provided by the plurality of applications, wherein the second IHS is to:

assemble the plurality of packets received from the first IHS;

determine that a flow session is associated with each of the plurality of packets;

associate a plurality of the flow-based rules provided by the plurality of applications with each of the plurality of packets based on the association of that packet and the flow session;

for each of the plurality of packets, determine a priority for the plurality of flow-based rules that are associated with that packet; and

for each of the plurality of packets, determine a conflict with the plurality of flow-based rules that are associated with the packet, and apply at least two of the plurality of flow-based rules to that packet based on the priority such that the conflict is resolved.

9. The IHS of claim 8 , wherein the applying the at least two of the plurality of flow-based rules to the packet according to the priority such that the conflict is resolved includes modifying at least one lower priority of the at least two of the plurality of flow-based rules such that conflict is resolved when the at least one lower priority of the plurality of flow-based rules is applied to the packet along with the others of the at least two of the plurality of flow-based rules.

10. The IHS of claim 8 , wherein the plurality of applications include a plurality of software defined networking applications that include at least one of a security application, a packet modification application, and a traffic redirection application.

11. The IHS of claim 8 , wherein, for each of the plurality of packets, the priority for the flow-based rules is based on which of the plurality of applications defined each flow-based rule.

12. The IHS of claim 8 , wherein, for each of the plurality of packets, the priority for the flow-based rules is based on an action required by each flow-based rule.

13. The IHS of claim 8 , wherein each of the plurality of applications defines at least one flow-based rule for each of a plurality of flow sessions that are determinable to be associated with any of the plurality of packets.

14. The IHS of claim 8 , wherein each of the plurality of applications are configured to run independently and without knowledge of the other of the plurality of applications.

15. A method for processing packets, comprising:

assembling a packet received from an IHS over a network;

determining that a flow session is associated with the packet; and

associating a plurality of flow-based rules defined by a plurality of applications with the packet based on the association of the packet and the flow session;

determining a priority for the plurality of flow-based rules that are associated with the packet;

determining a conflict with the plurality of flow-based rules that are associated with the packet; and

applying at least two of the plurality of flow-based rules to the packet based on the priority such that the conflict is resolved.

16. The method of claim 15 , wherein the applying the at least two of the plurality of flow-based rules to the packet according to the priority such that the conflict is resolved includes:

modifying at least one lower priority of the at least two of the plurality of flow-based rules such that conflict is resolved when the at least one lower priority of the plurality of flow-based rules is applied to the packet along with the others of the at least two of the plurality of flow-based rules.

17. The method of claim 15 , wherein the priority for the flow-based rules is based on which of the plurality of applications defined each flow-based rule.

18. The method of claim 15 , wherein the priority for the flow-based rules is based on an action required by each flow-based rule.

19. The method of claim 15 , wherein each of the plurality of applications defines at least one flow-based rule for each of a plurality of flow sessions that are determinable to be associated with the packet.

20. The method of claim 15 , wherein each of the plurality of applications are configured to run independently and without knowledge of the other of the plurality of applications.

Assignments (15)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040040/0001 →
RELEASE OF SECURITY INTEREST Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0618 →
RELEASE OF SECURITY INTEREST Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL MARKETING L.P.; ASAP SOFTWARE EXPRESS, INC.; APPASSURE SOFTWARE, INC.; COMPELLANT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL PRODUCTS L.P.; DELL USA L.P.; DELL SOFTWARE INC.; FORCE10 NETWORKS, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040065/0216 →
PATENT SECURITY AGREEMENT (ABL) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 031898/0001 →
PATENT SECURITY AGREEMENT (TERM LOAN) Recorded Jan 2, 2014
From: DELL INC.; APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 031899/0261 →
PATENT SECURITY AGREEMENT (NOTES) Recorded Jan 2, 2014
From: APPASSURE SOFTWARE, INC.; ASAP SOFTWARE EXPRESS, INC.; BOOMI, INC.; COMPELLENT TECHNOLOGIES, INC.; CREDANT TECHNOLOGIES, INC.; DELL INC.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL USA L.P.; FORCE10 NETWORKS, INC.; GALE TECHNOLOGIES, INC.; PEROT SYSTEMS CORPORATION; SECUREWORKS, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT
Reel/Frame 031897/0348 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 15, 2012
From: NGUYEN, CUONG; HAMDI, RABAH S.; FARRELL, JOSEPH B.
To: DELL PRODUCTS L.P.
Reel/Frame 028793/0242 →
Continuity (1)
Related Publication 20140052836A1 · Feb 20, 2014