# US 12,009,997 B2 · Cell-based architecture for an extensibility platform

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

- Number: US 12,009,997 B2
- Document ID: US12009997B2
- Status: Granted
- Kind: B2
- Application number: 18/129,448
- Filed: 2023-03-31
- Published: 2023-10-05
- Granted: 2024-06-11
- Earliest claimed: 2022-03-31
- Assignees: Cisco Technology, Inc.
- Applicants: Cisco Technology, Inc.
- Inventors: Sergey Sergeev; Anna Igorevna Bokhan-Dilawari; Geoffrey R. Hendrey
- Web page: https://patentgrep.com/patent/US12009997B2

## CPC

- H04L 41/0896: Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities (flow or congestion control using dynamic resource allocation, e.g. in-call renegotiation, H04L47/76)
- H04L 41/5003: Managing SLA; Interaction between SLA and QoS
- H04W 16/18: Network planning tools
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

According to one or more embodiments of the disclosure, an example method herein may comprise: managing a particular cell of a multi-celled architecture for an extensibility platform having one or more tenants served by datastores of the particular cell; connecting to a global cell manager for global cell management of all cells of the multi-celled architecture; identifying a consumption limit indicating a maximum amount of system resources that a particular tenant of the one or more tenants is allowed to consume of the particular cell; enforcing the consumption limit on the particular tenant; and ensuring that the particular tenant is provided system resources of the particular cell up to the consumption limit without limitation.

## Claims

### Claim 1

A method, comprising:
managing, by a cell controller, a particular cell of a multi-celled architecture for an extensibility platform having one or more tenants served by datastores of the particular cell;
connecting, by a cell controller, to a global cell manager for global cell management of all cells of the multi-celled architecture;
identifying, by the cell controller, a consumption limit indicating a maximum amount of system resources that a particular tenant of the one or more tenants is allowed to consume of the particular cell;
enforcing, by the cell controller, the consumption limit on the particular tenant; and
ensuring, by the cell controller, that the particular tenant is provided system resources of the particular cell up to the consumption limit without limitation.

### Claim 2 (depends on 1)

The method as in claim 1, further comprising:
expanding the particular cell by increasing datastores and message busses of the particular cell.

### Claim 3 (depends on 2)

The method as in claim 2, further comprising:
receiving a request from the global cell manager to expand.

### Claim 4 (depends on 2)

The method as in claim 2, further comprising:
rebalancing datastores of the particular cell after expanding.

### Claim 5 (depends on 2)

The method as in claim 2, wherein expanding is based on one or both of horizontal scaling or vertical scaling.

### Claim 6 (depends on 2)

The method as in claim 2, wherein expanding is based on selecting from a plurality of tiers of consumption limits and corresponding datastores and message busses.

### Claim 7 (depends on 6)

The method as in claim 6, wherein expanding is based on configuring the particular cell for a particular tier of the plurality of tiers.

### Claim 8 (depends on 6)

The method as in claim 6, wherein a corresponding consumption limit of each tier doubles that of a previous tier of the plurality of tiers.

### Claim 9 (depends on 1)

The method as in claim 1, wherein the consumption limit is based on one or both of amounts or percentages of resource utilization.

### Claim 10 (depends on 1)

The method as in claim 1, wherein system resources are selected from a group consisting of: storage capacity; compute capacity; number of queries; queries per time period;
amount of data stored per time period; amount of data returned per time period; and number of entries of data per time period.

### Claim 11 (depends on 1)

The method as in claim 1, wherein the maximum amount of system resources that the particular tenant of the one or more tenants is allowed to consume of the particular cell comprises service rate limits on ingest.

### Claim 12 (depends on 1)

The method as in claim 1, further comprising:
receiving tenant assignments from the global cell manager.

### Claim 13 (depends on 1)

The method as in claim 1, further comprising:
requesting, from the global cell manager, cell expansion of the particular cell.

### Claim 14 (depends on 13)

The method as in claim 13, wherein requesting cell expansion is based on one of either reaching a threshold capacity or a maximum capability of the particular cell.

### Claim 15 (depends on 1)

The method as in claim 1, wherein enforcing is based on a token-based schedule with a number of tokens granted to the particular tenant for a given time period.

### Claim 16 (depends on 1)

The method as in claim 1, wherein connecting to the global cell manager is based on a domain event topic.

### Claim 17 (depends on 1)

The method as in claim 1, wherein the particular cell is originally provisioned by the global cell manager with minimum system resources.

### Claim 18

A tangible, non-transitory, computer-readable medium having computer-executable instructions stored thereon that, when executed by a processor on a computer, cause the computer to perform a cell controller process comprising:
managing a particular cell of a multi-celled architecture for an extensibility platform having one or more tenants served by datastores of the particular cell;
connecting to a global cell manager for global cell management of all cells of the multi-celled architecture;
identifying a consumption limit indicating a maximum amount of system resources that a particular tenant of the one or more tenants is allowed to consume of the particular cell;
enforcing the consumption limit on the particular tenant; and
ensuring that the particular tenant is provided system resources of the particular cell up to the consumption limit without limitation.

### Claim 19 (depends on 18)

The tangible, non-transitory, computer-readable medium as in claim 18, wherein the cell controller process further comprises:
expanding the particular cell by increasing datastores and message busses of the particular cell.

### Claim 20

An apparatus, comprising:
one or more network interfaces to communicate with a network;
a processor coupled to the one or more network interfaces and configured to execute one or more processes; and
a memory configured to store a cell controller process that is executable by the processor, the cell controller process, when executed, configured to:
manage a particular cell of a multi-celled architecture for an extensibility platform having one or more tenants served by datastores of the particular cell;
connect to a global cell manager for global cell management of all cells of the multi-celled architecture;
identify a consumption limit indicating a maximum amount of system resources that a particular tenant of the one or more tenants is allowed to consume of the particular cell;
enforce the consumption limit on the particular tenant; and
ensure that the particular tenant is provided system resources of the particular cell up to the consumption limit without limitation.
