IP Library Granted Patent US 10,599,473
Granted Patent B2
US 10,599,473 · App. 15/395,610 · Granted Mar 24, 2020

Apparatus and method for matching offers and requests for sharing of resources

Inventors: Ramesh Viswanathan (Manalapan, NJ); Adiseshu Hari (Holmdel, NJ); Yuh-Jye Chang (Bridgewater, NJ); Tirunell V. Lakshman (Morganville, NJ)
Assignee: PROVENANCE ASSET GROUP LLC
G06F9/5005G06F9/50H04L67/10
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 10,599,473
App. No.
15/395,610
Granted
Mar 24, 2020
Kind
B2
Abstract

A resource assignment capability is presented. A resource specification associated with a plurality of elements is received. The resource specification includes, for each of the elements, a resource request including an indication of a quantity of resources requested by the element and a resource offer including an indication of a quantity of resources offered by the element for use by one or more other elements. A resource assignment, including an indication of an association between the resources requests and the resource offers, is determined using a resource assignment process. The resource assignment process may be a greedy assignment process or a maximum flow resource assignment process. The maximum flow resource assignment process includes constructing a maximum flow resource graph based on the one or more resource specifications and applying a maximum flow process to the maximum flow resource graph to determine thereby the resource assignment.

Claims (51)

1. An apparatus, comprising:

a processor and a memory communicatively coupled to the processor, the processor configured to:

send, by a first element toward a controller, a resource request comprising an indication of a quantity of resources requested by the first element;

receive, by the first element from the controller, resource assignment information comprising an indication of a quantity of granted resources granted to the first element and an identification of a second element from which the granted resources are to be provided, the resource assignment information determined by (i) a greedy assignment process configured to assign as many remaining resources as possible to the second element as a hosting node or (ii) a maximum flow resource assignment process configured to assign resources based on an integral maximum flow of a maximum flow graph; and

send, by the first element toward the second element, a request by the first element to use at least a portion of the granted resources granted to the first element.

2. The apparatus of claim 1 , wherein the resources comprise processing resources or storage resources.

3. The apparatus of claim 1 , wherein the resource request of the first element comprises upper-bound constraint information indicative of an upper-bound constraint on an amount of resources to be hosted at the second element as the hosting node for the first element.

4. The apparatus of claim 1 , wherein the identification of the second element from which the granted resources are to be provided comprises an address of the second element.

5. The apparatus of claim 1 , wherein the request by the first element to use at least a portion of the granted resources granted to the first element comprises an identification of the portion of the granted resources granted to the first element.

6. The apparatus of claim 5 , wherein the identification of the portion of the granted resources granted to the first element comprises at least one of an identification of processing resources or an identification of storage resources.

7. The apparatus of claim 1 , wherein the processor is configured to:

send, by the first element toward the controller, a resource offer comprising an indication of a quantity of resources offered by the first element for use by one or more other elements;

receive, by the first element from the controller, resource assignment information comprising:

an indication of a quantity of assigned resources of the first element, from the quantity of resources offered by the first element, that have been assigned for use by a third element; and

an identification of the third element to which the assigned resources of the first element have been assigned; and

receive, by the first element from the third element, a request for use of at least a portion of the assigned resources of the first element that have been assigned for use by the third element.

8. An apparatus, comprising:

a processor and a memory communicatively coupled to the processor, the processor configured to:

send, by a first element toward a controller, a resource offer comprising an indication of a quantity of resources offered by the first element for use by one or more other elements;

receive, by the first element from the controller, resource assignment information comprising:

an indication of a quantity of assigned resources of the first element, from the quantity of resources offered by the first element, that have been assigned for use by a second element, and

an identification of the second element to which the assigned resources of the first element have been assigned,

wherein the resource assignment information is determined by (i) a greedy assignment process configured to assign as many remaining resources as possible to the first element as a hosting node or (ii) a maximum flow resource assignment process configured to assign resources based on an integral maximum flow of a maximum flow graph; and

receive, by the first element from the second element, a request for use of at least a portion of the assigned resources of the first element that have been assigned for use by the second element.

9. The apparatus of claim 8 , wherein the resources comprise processing resources or storage resources.

10. The apparatus of claim 8 , wherein the resource offer comprises cost information indicative of a cost charged by the first element for hosting resources for the second element.

11. The apparatus of claim 8 , wherein the identification of the second element to which the assigned resources of the first element have been assigned comprises an address of the second element.

12. The apparatus of claim 8 , wherein the processor is configured to:

dedicate, by the first element for the second element based on the resource assignment information, the assigned resources of the first element that have been assigned for use by the second element.

13. The apparatus of claim 8 , wherein the processor is configured to:

provide, by the first element to the second element based on the request for use of at least a portion of the assigned resources of the first element that have been assigned for use by the second element, at least a portion of the assigned resources of the first element that have been assigned for use by the second element.

14. The apparatus of claim 13 , wherein the resources comprise processing resources or storage resources.

15. The apparatus of claim 8 , wherein the processor is configured to:

send, by the first element toward the controller, a resource request comprising an indication of a quantity of resources requested by the first element;

receive, by the first element from the controller, resource assignment information comprising an indication of a quantity of granted resources granted to the first element and an identification of a third element from which the granted resources are to be provided; and

send, by the first element toward the third element, a request by the first element to use at least a portion of the granted resources granted to the first element.

16. An apparatus, comprising:

a processor and a memory communicatively coupled to the processor, the processor configured to:

send, by an element toward a controller, at least one of a resource request comprising an indication of a quantity of resources requested by the element or a resource offer comprising an indication of a quantity of resources offered by the element for use by one or more other elements; and

receive, by the element from the controller, resource assignment information comprising at least one of:

an indication of a quantity of granted resources granted to the element and an identification of one or more providing elements from which the granted resources are to be provided, or

an indication of a quantity of offered resources offered by the element that are to be used by one or more other elements and an identification of the one or more other elements to which the offered resources are to be provided,

the resource assignment information determined by (i) a greedy assignment process configured to assign as many remaining resources as possible to a hosting node comprising the element or the one or more providing elements or (ii) a maximum flow resource assignment process configured to assign resources based on an integral maximum flow of a maximum flow graph.

17. The apparatus of claim 16 , wherein the resource request of the element comprises upper-bound constraint information indicative of an upper-bound constraint on an amount of resources at the hosting node comprising the one or more providing elements for the element.

18. The apparatus of claim 16 , wherein the resource offer comprises cost information indicative of a cost charged by the element as the hosting node for hosting resources of one or more other elements.

19. The apparatus of claim 16 , wherein the processor is configured to:

send, by the element toward a given providing element of the one or more providing elements, a request for at least a portion of the granted resources granted for use by the element, wherein the request for at least a portion of the granted resources granted for use by the element comprises an identification of the portion of the granted resources granted for use by the element, wherein the identification of the portion of the granted resources granted for use by the element comprises at least one of an identification of processing resources or an identification of storage resources.

20. The apparatus of claim 16 , wherein the processor is configured to:

dedicate, by the element, a set of resources of the element for use by the one or more other elements to which the offered resources are to be provided;

receive, by the element from a given element of the one or more other elements to which the offered resources are to be provided, a communication of the given element that includes the address of the given element; and

provide, by the element, at least a portion of the offered resources to the given element.

Assignments (9)
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 →
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 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 13, 2017
From: VISWANATHAN, RAMESH; HARI, ADISESHU; CHANG, YUH-JYE; LAKSHMAN, T.V.
To: ALCATEL-LUCENT USA INC.
Reel/Frame 041240/0434 →
Continuity (2)
Continuation 13370443 · Feb 10, 2012
Related Publication 20170147403A1 · May 25, 2017