IP Library Granted Patent US 9,240,945
Granted Patent B2
US 9,240,945 · App. 12/406,613 · Granted Jan 19, 2016

Access, priority and bandwidth management based on application identity

Inventors: Srinivas Kumar (Cupertino, CA); Vijayashree S. Bettadapura (Campbell, CA); Shadab Munam Shah (Sunnyvale, CA)
Assignee: CITRIX SYSTEMS, INC.
H04L47/10H04L47/2458H04L63/0227H04L63/102
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,240,945
App. No.
12/406,613
Granted
Jan 19, 2016
Kind
B2
Abstract

A method or system for managing packet flow is disclosed. The packets each include an inserted application identifier identifying a registered application. The method includes receiving packets destined for one or more resources, determining, by a packet processor, the inserted application identifier for each of the respective packets received and managing the packet flow of each received packet sent from a security node based at least in part on the inserted application identifier of the received packet.

Claims (45)

1. A method of controlling packet flow, comprising:

receiving, from a sending node by a packet processor of a security node, packets destined for one or more resources, the sending node inserting an application identifier into a respective one of the packets responsive to determining that the respective one of the packets is sent from a first application registered with the security node and that the first registered application is invoked for execution by a second application registered with the security node;

determining, by the packet processor for each of the received packets, whether a respective application identifier has been inserted by the sending node; and

controlling, by the packet processor for the received packets determined to have an inserted application identifier, a packet flow of the corresponding packets being sent from the security node by establishing one or more of a priority or a bandwidth of the corresponding packets to the one or more resources.

2. The method of claim 1 , wherein the determining of the inserted application identifier occurs in the security node in an Open Systems Interconnect (OSI) layer below an application layer.

3. The method of claim 1 , wherein the determining of the inserted application identifier occurs in a network layer.

4. The method of claim 1 , further comprising:

establishing, by the security node, a list of registered applications and unique application identifiers associated therewith; and

securely sending, by the security node to the sending node, the list of registered applications and the associated unique application identifiers.

5. The method of claim 1 , further comprising:

inserting, by a program processor of the sending node, the application identifier identifying the registered application into packets to be sent from sending node; and

sending the packets destined for the one or more resources via the security node.

6. The method of claim 1 , wherein the inserting of the application identifier includes:

embedding at least the application identifier and a user identifier in a security tag; and

inserting the security tag into each of the packets sent by the sending node, as an in-band metadata tag.

7. The method of claim 6 , wherein the determining of the inserted application identifier for each of the respective packets received by the security node includes:

scanning for the embedded security tag in each of the packets received by the security node; and

extracting the inserted application and user identifiers from the scanned security tags of the packets received by the security node.

8. The method of claim 1 , wherein the inserting of the application identifier into packets to be sent from the sending node includes:

selectively inserting a respective application identifier into each packet: (1) associated with an application in a list of registered applications; and (2) destined for one of the one or more resources such that application identifiers are prevented from being inserted into packets that are associated with an application not in the list of registered applications or that are not destined for one of the one or more resources.

9. The method of claim 1 , wherein the adjustment of one or more of a priority or a bandwidth of the corresponding packets to the resource is based on at least the application identifier in the corresponding packets.

10. The method of claim 1 , further comprising:

blocking, by the security node, the flow of packets without an inserted application identifier to the one or more resources.

11. The method of claim 1 , further comprising:

generating audit logs from the received packets that include at least information to watermark an application associated with the received packets.

12. A security node for managing packet flow between a sending node and one or more resources on a network, comprising:

a registration unit configured for registering applications that are authorized to access the one or more resources on the network; and

a packet processor comprising circuitry configured for:

receiving, from the sending node, packets destined for the one or more resources, the sending node inserting an application identifier into a respective one of the packets responsive to determining that the respective one of the packets is sent from a first application registered with the security node and that the first registered application is invoked for execution by a second application registered with the security node;

determining, for each of the received packets, whether a respective application identifier has been inserted by the sending node;

controlling, for the received packets determined to have an inserted application identifier, a packet flow of the packets being sent from the security node by establishing one or more of a priority or a bandwidth of the corresponding packets to the one or more resources.

13. The security node of claim 12 , further comprising:

an event logger configured for generating audit logs from the received packets that includes at least information to watermark an application associated with the received packets.

14. The security node of claim 12 , wherein the packet processor is configured to determine presence of the respective application identifier in an Open Systems Interconnect (OSI) layer below an application layer.

15. The security node of claim 12 , wherein the packet processor is configured to determine presence of the respective application identifier in a network layer.

16. The security node of claim 12 , wherein the packet processor is configured to establish a list of registered applications and unique application identifiers associated therewith, and to securely send, to the sending node, the list of registered applications and the associated unique application identifiers.

17. The security node of claim 12 , wherein a program processor of the sending node inserts the application identifier identifying the registered application into packets to be sent from sending node, and sends the packets destined for the one or more resources via the security node.

18. The security node of claim 17 , wherein the inserting of the application identifier includes:

embedding at least the application identifier and a user identifier in a security tag; and

inserting the security tag into each of the packets sent by the sending node, as an in-band metadata tag.

19. The security node of claim 18 , wherein the packet processor is configured to determine a presence of an application identifier in each of the respective packets received by the security node by:

scanning for the embedded security tag in each of the packets received by the security node; and

extracting the inserted application from the scanned security tags of the packets received by the security node.

20. The security node of claim 17 , wherein the inserting of the application identifier into packets to be sent from the sending node includes:

selectively inserting a respective application identifier into each packet: (1) associated with an application in a list of registered applications; and (2) destined for one of the one or more resources such that application identifiers are prevented from being inserted into packets that are associated with an application not in the list of registered applications or that are not destined for one of the one or more resources.

Assignments (10)
PATENT SECURITY AGREEMENT Recorded Aug 15, 2025
From: CLOUD SOFTWARE GROUP, INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 072488/0172 →
SECURITY INTEREST Recorded May 24, 2024
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 067662/0568 →
RELEASE AND REASSIGNMENT OF SECURITY INTEREST IN PATENT (REEL/FRAME 062113/0001) Recorded Apr 14, 2023
From: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
To: CITRIX SYSTEMS, INC.; CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.)
Reel/Frame 063339/0525 →
PATENT SECURITY AGREEMENT Recorded Apr 14, 2023
From: CLOUD SOFTWARE GROUP, INC. (F/K/A TIBCO SOFTWARE INC.); CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 063340/0164 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 062113/0470 →
PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 062112/0262 →
SECOND LIEN PATENT SECURITY AGREEMENT Recorded Oct 7, 2022
From: TIBCO SOFTWARE INC.; CITRIX SYSTEMS, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 062113/0001 →
SECURITY INTEREST Recorded Sep 30, 2022
From: CITRIX SYSTEMS, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 062079/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2010
From: APPLIED IDENTITY INCORPORATED
To: CITRIX SYSTEMS, INC.
Reel/Frame 024252/0566 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 5, 2010
From: KUMAR, SRINIVAS; BETTADAPURA, VIJAYASHREE S.; SHAH, SHADAB MUNAM
To: APPLIED IDENTITY
Reel/Frame 023735/0220 →
Continuity (2)
Provisional Application 61037874 · Mar 19, 2008
Related Publication 20090241170A1 · Sep 24, 2009