# US 12,118,484 B2 · Automated services exchange

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 12,118,484 B2
- Document ID: US12118484B2
- Status: Granted
- Kind: B2
- Application number: 17/379,387
- Filed: 2021-07-19
- Published: 2023-01-19
- Granted: 2024-10-15
- Earliest claimed: 2021-07-19
- Assignees: EMC IP Holding Company LLC
- Applicants: EMC IP Holding Company LLC
- Inventors: Victor Salamon
- Web page: https://patentgrep.com/patent/US12118484B2

## CPC

- G06Q 10/06313: {Resource planning in a project environment}
- G06F 9/5072: {Grid computing}
- G06F 9/541: {via adapters, e.g. between incompatible applications}
- G06Q 10/06395: {Quality analysis or management}
- H04L 41/50: Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L 67/562: Brokering proxy services
- H04L 67/60: Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources (admission control or resource allocation H04L47/70)
- G06F 2209/5015: Service provider selection
- H04L 67/1097: for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

Methods, apparatus, and processor-readable storage media for providing an automated services exchange are described herein. An example computer-implemented method includes obtaining provider requests from one or more service providers, wherein each of the provider requests comprises an indication of at least one type of service provided by the corresponding service provider and attributes associated with the at least one type of the service; processing the provider requests, wherein the processing for a respective one of the provider requests comprises generating a corresponding set of metrics associated with the at least one type of service and the attributes of the respective provider request; and matching a given one of the provider requests to at least one consumer request based at least in part on: the processing and constraints identified in the at least one consumer request with respect to at least a portion of the attributes of the given provider request.

## Claims

### Claim 1

A computer-implemented method comprising:
obtaining, by a services exchange system, provider requests from one or more service providers, wherein each of the provider requests comprises an indication of at least one type of service provided by the corresponding service provider and one or more attributes associated with the at least one type of the service;
processing, by the services exchange system, the provider requests, wherein the processing for a respective one of the provider requests comprises testing the at least one type of service and the one or more attributes of the respective provider request and generating a corresponding set of metrics associated with the at least one type of service and the one or more attributes of the respective provider request based at least in part on results of the testing; and
matching, by the services exchange system, a given one of the provider requests to at least one consumer request based at least in part on: the processing and one or more constraints identified in the at least one consumer request with respect to at least a portion of the one or more attributes of the given provider request;
wherein the method is performed by at least one processing device comprising a hardware processor.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the service corresponding to the given provider request is consumed by at least one consumer associated with the at least one consumer request in response to the matching.

### Claim 3 (depends on 2)

The computer-implemented method of claim 2, further comprising:
translating an application programming interface that is specific to the service corresponding to the given provider request to a standardized application programming interface, wherein the at least one consumer consumes the service via the standardized application programming interface.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, wherein the at least one type of service comprises at least one of:
providing cloud storage resources;
providing cloud network resources; and
providing cloud computing resources.

### Claim 5 (depends on 1)

The computer-implemented method of claim 1, wherein the one or more attributes comprise one or more service characteristics that distinguish between different services having a same type.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1, wherein said processing comprises:
ranking the provider requests based at least in part on the results of the testing.

### Claim 7 (depends on 6)

The computer-implemented method of claim 6, wherein said matching comprises:
filtering the obtained provider requests in response to the one or more constraints identified in the at least one consumer request; and
outputting the filtered provider requests to at least one consumer associated with the at least one consumer request based on said ranking.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1, wherein a given one of the provider requests is received at a first computing node of a set of computing nodes, and wherein the first computing node communicates the given provider request to one or more other computing nodes in the set.

### Claim 9 (depends on 1)

The computer-implemented method of claim 1, further comprising:
automatically generating an alert to at least one of: the service provider associated with the given one of the provider requests and at least one consumer associated with the at least one consumer request based on said matching.

### Claim 10

A non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device:
to obtain, by a services exchange system, provider requests from one or more service providers, wherein each of the provider requests comprises an indication of at least one type of service provided by the corresponding service provider and one or more attributes associated with the at least one type of the service;
to process, by the services exchange system, the provider requests, wherein the processing for a respective one of the provider requests comprises testing the at least one type of service and the one or more attributes of the respective provider request and generating a corresponding set of metrics associated with the at least one type of service and the one or more attributes of the respective provider request based at least in part on results of the testing; and
to match, by the services exchange system, a given one of the provider requests to at least one consumer request based at least in part on: the processing and one or more constraints identified in the at least one consumer request with respect to at least a portion of the one or more attributes of the given provider request.

### Claim 11 (depends on 10)

The non-transitory processor-readable storage medium of claim 10, wherein the program code further causes the at least one processing device:
to translate an application programming interface that is specific to the service corresponding to the given provider request to a standardized application programming interface, wherein the at least one consumer consumes the service via the standardized application programming interface.

### Claim 12 (depends on 10)

The non-transitory processor-readable storage medium of claim 10, wherein the at least one type of service comprises at least one of:
providing cloud storage resources;
providing cloud network resources; and
providing cloud computing resources.

### Claim 13 (depends on 10)

The non-transitory processor-readable storage medium of claim 10, wherein the one or more attributes comprise one or more service characteristics that distinguish between different services having a same type.

### Claim 14 (depends on 10)

The non-transitory processor-readable storage medium of claim 10, wherein the processing comprises:
ranking the provider requests based at least in part on the results of the testing.

### Claim 15 (depends on 10)

The non-transitory processor-readable storage medium of claim 10, wherein a given one of the provider requests is received at a first computing node of a set of computing nodes, and wherein the first computing node communicates the given provider request to one or more other computing nodes in the set.

### Claim 16

An apparatus comprising:
at least one processing device comprising a processor coupled to a memory;
the at least one processing device being configured:
to obtain, by a services exchange system, provider requests from one or more service providers, wherein each of the provider requests comprises an indication of at least one type of service provided by the corresponding service provider and one or more attributes associated with the at least one type of the service;
to process, by the services exchange system, the provider requests, wherein the processing for a respective one of the provider requests comprises testing the at least one type of service and the one or more attributes of the respective provider request and generating a corresponding set of metrics associated with the at least one type of service and the one or more attributes of the respective provider request based at least in part on results of the testing; and
to match, by the services exchange system, a given one of the provider requests to at least one consumer request based at least in part on: the processing and one or more constraints identified in the at least one consumer request with respect to at least a portion of the one or more attributes of the given provider request.

### Claim 17 (depends on 16)

The apparatus of claim 16, wherein the at least one processing device is further configured:
to translate an application programming interface that is specific to the service corresponding to the given provider request to a standardized application programming interface, wherein the at least one consumer consumes the service via the standardized application programming interface.

### Claim 18 (depends on 16)

The apparatus of claim 16, wherein the at least one type of service comprises at least one of:
providing cloud storage resources;
providing cloud network resources; and
providing cloud computing resources.

### Claim 19 (depends on 16)

The apparatus of claim 16, wherein the one or more attributes comprise one or more service characteristics that distinguish between different services having a same type.

### Claim 20 (depends on 1)

The computer-implemented method of claim 1, wherein the testing the at least one type of service and the one or more attributes of the respective provider request is performed between at least a portion of the services exchange system and the at least one type of service.
