IP Library Granted Patent US 8,880,732
Granted Patent B1
US 8,880,732 · App. 13/035,114 · Granted Nov 4, 2014

Method and system for application isolation

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 8,880,732
App. No.
13/035,114
Granted
Nov 4, 2014
Kind
B1
Abstract

Method and system for application isolation is provided. A computing system executes a plurality of processor executable applications and each application is assigned an address by an adapter that is operationally coupled to the computing system. The adapter also assigns a unique identifier to each construct generated by the plurality of applications; maintains a data structure associating the address with the unique identifier assigned to each construct; receives a request having an address and a unique identifier from an application from among the plurality of applications; retrieves the address and the unique identifier from the request; compares the retrieved address and the unique identifier with information maintained by the data structure; and processes the request if the retrieved address and the unique identifier matches with information of the data structure.

Claims (32)

1. A machine implemented method for processing requests from a plurality of processor-executable applications executed by a computing system coupled to a network device used for communicating with another device, comprising:

the network device assigning an address to each of the plurality of applications to access a register that is associated with a storage device used for storing a plurality of commands for the plurality of applications;

the network device assigning a unique identifier to each construct generated by each of the plurality of applications for sending information to the another device;

maintaining a data structure at the network device for associating the address assigned to each of the plurality of applications with the unique identifier assigned to each construct;

the network device receiving a request having an address and a unique identifier from an application from among the plurality of applications;

the network device retrieving the address and the unique identifier from the request;

the network device comparing the retrieved address and the unique identifier with information maintained by the data structure; and

the network device processing the request when the retrieved address and the unique identifier matches with information of the data structure.

2. The method of claim 1 , wherein the network device is a network adapter that assigns the address to each of the plurality of applications and the unique identifier to each of the plurality of constructs.

3. The method of claim 1 , wherein the assigned address is to access a register that is used by the plurality of applications for sending requests.

4. The method of claim 1 , wherein the network device is a network adapter for processing storage traffic complying with a storage protocol and network traffic complying with a network protocol.

5. The method of claim 1 , wherein the network device is an adapter configured to process information complying with a storage protocol.

6. The method of claim 3 , wherein the register is used by a plurality of constructs and is associated with another storage location for storing commands from the plurality of applications.

7. The method of claim 1 , wherein the data structure is stored at a memory device of the network device.

8. A machine implemented method, comprising:

a device interfacing with a computing system for receiving a request having an address for a storage location and a unique identifier assigned by the device to an application from among a plurality of processor executable applications executed by the computing system;

the device comparing the received address and the unique identifier with information maintained by a data structure at the device for associating unique identifiers assigned to a plurality of constructs with unique addresses assigned to the plurality of applications; and

the device processing the request when the received address and the unique identifier matches the information maintained by the data structure.

9. The method of claim 8 , wherein the device is a network adapter that assigns the address to each of the plurality of applications and the unique identifier to each of the plurality of constructs.

10. The method of claim 8 , wherein the storage location is a register that is used by the plurality of applications for sending requests.

11. The method of claim 8 , wherein the device is a network adapter for processing storage traffic complying with a storage protocol and network traffic complying with a network protocol.

12. The method of claim 8 , wherein the device is an adapter configured to process information complying with a storage protocol.

13. The method of claim 10 , wherein the register is used by a plurality of constructs and is associated with another storage location for storing commands from the plurality of applications.

14. A system, comprising:

a computing system having a processor for executing a plurality of applications, where each application is assigned an address by an adapter operationally coupled to the computing system to access a register that is associated with a storage device used for storing a plurality of commands for the plurality of applications;

wherein the adapter having a processor assigns a unique identifier to each construct generated by each of the plurality of applications for sending information to another device; maintains a data structure associating the address assigned to each application with the unique identifier assigned to each construct; receives a request having an address and a unique identifier from an application from among the plurality of applications; retrieves the address and the unique identifier from the request; compares the retrieved address and the unique identifier with information maintained by the data structure; and processes the request when the retrieved address and the unique identifier matches with information of the data structure.

15. The system of claim 14 , wherein the assigned address is to access a register that is used by the plurality of applications for sending requests.

16. The system of claim 14 , wherein the adapter is configured for processing both network and storage traffic.

17. The system of claim 14 , wherein the adapter is network interface card.

18. The system of claim 14 , wherein the adapter includes a module for maintaining the data structure and assigning the unique handle.

19. The system of claim 15 , wherein the register is used by a plurality of constructs and is associated with another storage location for storing commands from the plurality of applications.

20. The system of claim 14 , wherein the data structure is stored at a memory device of the adapter.

Assignments (7)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 15, 2020
From: CAVIUM INTERNATIONAL
To: MARVELL ASIA PTE, LTD.
Reel/Frame 053179/0320 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 17, 2020
From: CAVIUM, LLC
To: CAVIUM INTERNATIONAL
Reel/Frame 051948/0807 →
CHANGE OF NAME Recorded Oct 8, 2018
From: CAVIUM, INC.
To: CAVIUM, LLC
Reel/Frame 047205/0953 →
RELEASE OF SECURITY INTEREST Recorded Jul 6, 2018
From: JP MORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: CAVIUM, INC; CAVIUM NETWORKS LLC; QLOGIC CORPORATION
Reel/Frame 046496/0001 →
MERGER Recorded Oct 18, 2017
From: QLOGIC CORPORATION
To: CAVIUM, INC.
Reel/Frame 044812/0504 →
SECURITY AGREEMENT Recorded Mar 1, 2017
From: QLOGIC CORPORATION
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 041854/0119 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 25, 2011
From: SARCAR, KANOJ
To: QLOGIC, CORPORATION
Reel/Frame 025865/0400 →