IP Library Granted Patent US 11,693,716
Granted Patent B2
US 11,693,716 · App. 17/469,609 · Granted Jul 4, 2023

Independent datastore in a network routing environment

Inventors: Pushpasis Sarkar (Bangalore, IN); Keyur Patel (San Jose, CA); Derek Man-Kit Yeung (Fremont, CA); Alpesh Patel (San Ramon, CA); Lawrence Rolfe Kreeger (Fremont, CA)
Assignee: ARRCUS INC.
G06F9/542G06F9/45558G06F9/4881G06F9/54G06F16/2272G06F16/2379G06F16/27G06F16/278H04L12/2881H04L12/44H04L12/462H04L12/4633H04L12/4641H04L12/66H04L45/02H04L45/22H04L45/24H04L45/26H04L45/28H04L45/48H04L45/50H04L45/586H04L45/66H04L45/745H04L47/125H04L63/0272H04L67/1097H04L67/55G06F2009/45595H04L49/25H04L2012/4629
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 11,693,716
App. No.
17/469,609
Granted
Jul 4, 2023
Kind
B2
Abstract

Systems, methods, and devices for offloading network data to a datastore. A system includes a publisher device in a network computing environment. The system includes a subscriber device in the network computing environment. The system includes a datastore independent of the publisher device and the subscriber device, the datastore comprising one or more processors in a processing platform configurable to execute instructions stored in non-transitory computer readable storage media. The instructions includes receiving data from the publisher device. The instructions include storing the data across one or more of a plurality of shared storage devices. The instructions include providing the data to the subscriber device.

Claims (42)

1. A datastore comprising:

a database directory tree comprising a leaf node;

a database content tree comprising a table, wherein the leaf node is in communication with the table;

a plurality of host servers; and

one or more processors for executing instructions stored in non-transitory computer readable storage media, the instructions comprising:

receiving data from a publisher device;

partitioning the data into a plurality of data partitions;

assigning the plurality of data partitions to be stored across two or more independent host servers;

wherein the table stores information for a plurality of objects; and

wherein the leaf node is accessible by way of a database Universal Resource Locator (URL).

2. The datastore of claim 1 , further comprising a host library and a host server, wherein the host library enables a computer-executed application to pose as the host server for data produced by the computer-executed application.

3. The datastore of claim 2 , wherein the computer-executed application is a producer device embedded on the host server such that an InterProcess Communication (IPC) hop is avoided between the producer device and the host server, and wherein the datastore enables a one-hop direct path from the producer device to a subscriber device.

4. The datastore of claim 1 , wherein the datastore is operable in a network computing environment and further comprises:

shared disk storage for storing a plurality of datapoints received from a plurality of publisher devices, wherein the shared disk storage stores best path data and state information for the network computing environment; and

an index server configured to receive a request for data from a subscriber device in the network computing environment.

5. The datastore of claim 1 , further comprising one or more processors configurable to execute instructions stored in non-transitory computer readable storage media, the instructions comprising:

receiving data from a publisher device of a plurality of publisher devices;

writing the data on shared disk storage local to a switch or router within a network computing environment; and

providing the data to a subscriber device in lieu of the subscriber device communicating directly with the publisher device.

6. The datastore of claim 5 , wherein one or more of:

the publisher device is a switch or router; and

the data comprises one or more of state information for the publisher device or best path information determined by the publisher device.

7. The datastore of claim 5 , wherein the instructions further comprise offloading the data received from the publisher device to cloud-based storage.

8. The datastore of claim 1 , wherein data is stored in the database directory tree, and wherein the datastore responds to a wildcard subscription of data with the data stored on the database directory tree, and wherein the wildcard subscription of data comprises one or more of an ad hoc, unexpected, or singular event in which a subscriber device requests data from a publisher device.

9. The datastore of claim 1 , wherein the assigning the plurality of data partitions to be stored across the two or more independent host servers enables parallel data paths to be created between producer devices and subscriber devices while allowing for horizontal scaling.

10. The datastore of claim 1 , wherein:

the database directory tree further comprises an intermediate node;

the table is accessible by way of a table URL; and

each of the plurality of objects stored on the table are accessible by way of one or more object URLs.

11. The datastore of claim 1 , wherein the datastore is local to a switch or a router in a network computing environment, and where in the switch or router further comprises:

hardware providing a physical connection that enables transmission of data packets over the network computing environment; and

a software stack comprising instructions for determining best paths and forwarding data packets.

12. The datastore of claim 1 , wherein the datastore is a cloud-based database accessible over a global network, and wherein a plurality of routing applications provide data to the datastore by way of the global network.

13. The datastore of claim 1 , wherein the datastore communicates with producer devices, producer consumer devices, and consumer devices, and wherein the datastore further comprises:

a database index server; and

a plurality of database host servers.

14. The datastore of claim 1 , wherein the datastore receives and partitions state information to be stored across a plurality of shared storage devices, and wherein the datastore provides the state information to one or more monitoring devices that have subscribed to the state information.

15. The datastore of claim 1 , wherein the datastore comprises a plurality of datastore nodes connected to one another by an internal fabric.

16. The datastore of claim 15 , wherein each of the plurality of datastore nodes comprises a local datastore for storing state information, wherein the local datastore on each of the plurality of datastore nodes comprises a database index and a plurality of database hosts.

17. The datastore of claim 16 , wherein the local datastore on each of the plurality of datastore nodes is in communication with a replicator agent, and wherein the replicator agent is in communication with a datastore client comprising one or more of a producer device, a producer consumer device, or a consumer device.

18. The datastore of claim 1 , wherein the datastore is local to a switch or a router in a network computing environment, and wherein the network computing environment comprises a plurality of switches or routers each comprising its own independent datastore.

19. The datastore of claim 18 , wherein the independent datastores for the plurality of switches or routers in the network computing environment do not replicate data between one another, and wherein each of the independent datastores offloads data to a cloud network, and wherein each of the independent datastores is controlled by remote controller logic in communication with the cloud network.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 8, 2021
From: SARKAR, PUSHPASIS; PATEL, KEYUR; YEUNG, DEREK MAN-KIT; PATEL, ALPESH; KREEGER, LAWRENCE ROLFE
To: ARRCUS INC.
Reel/Frame 057416/0853 →
Continuity (3)
Continuation 16549315 · Aug 23, 2019
Provisional Application 62722003 · Aug 23, 2018
Related Publication 20210406101A1 · Dec 30, 2021