IP Library Granted Patent US 12,652,192
Granted Patent B2
US 12,652,192 · App. 18/322,340 · Granted Jun 9, 2026

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.
H04L12/44G06F9/45558G06F9/4881G06F9/54G06F9/542G06F16/2272G06F16/2379G06F16/27G06F16/278H04L12/2881H04L12/462H04L12/4633H04L12/4641H04L12/66H04L45/02H04L45/08H04L45/22H04L45/24H04L45/26H04L45/28H04L45/48H04L45/50H04L45/586H04L45/66H04L45/745H04L47/125H04L63/0272H04L67/1097H04L67/55G06F2009/45595H04L2012/4629H04L49/25
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 12,652,192
App. No.
18/322,340
Granted
Jun 9, 2026
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 (41)

1 . A system comprising:

a publisher device in a network computing environment, the publisher device being a switch or router and executing a first border gateway protocol (BGP) instance;

a subscriber device in the network computing environment; and

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 non-transitory computer readable storage media storing instructions that, when executed by the one or more processors, causes the one or more processors to perform a method comprising:

receiving data from the publisher device, the data comprising one or more of state information for the publisher device or best path information determined by the publisher device;

storing the data across one or more of a plurality of shared storage devices by storing the one or more of the state information for the publisher device or the best path information in a database in the datastore, the one or more of the state information for the publisher device or the best path information being partitioned according to a database schema; and

providing the data to the subscriber device;

wherein the publisher device is configured to not locally store the state information for the publisher device or the best path information.

2 . The system of claim 1 , wherein:

the data comprises paths learned by the publisher device for a prefix; and

the instructions, when executed by the one or more processors, further cause the one or more processors to determine a best path from among the paths and return the best path to the publisher device.

3 . The system of claim 2 , wherein the subscriber device is configured to retrieve the best path from the datastore.

4 . The system of claim 2 , wherein the publisher device is configured to advertise the best path to one or more neighbors in the network computing environment.

5 . The system of claim 2 , wherein the publisher device is a BGP route reflector.

6 . The system of claim 1 , wherein the subscriber device executes a second BGP instance.

7 . The system of claim 1 , wherein the subscriber device executes at least one of system to intermediate system (ISIS) routing, a routing information base (RIB), and open shortest path first (OSPF).

8 . The system of claim 1 , wherein:

the data comprises paths learned by the publisher device for a prefix; and

the instructions, when executed by the one or more processors, further causes the one or more processors to modify a next-hop of one or more of the paths.

9 . The system of claim 1 , wherein the method further comprises offloading the data to cloud-based storage, and wherein the datastore itself is a cloud-based database instance.

10 . The system of claim 1 , wherein a copy of at least a portion of the datastore is stored in the publisher device.

11 . The system of claim 1 , wherein the publisher device is configured to communicate directly with the subscriber device by way of inter-process communication (IPC).

12 . A method comprising:

executing, by a publisher device in a network computing environment, a first border gateway protocol (BGP) instance, the publisher device being a switch or router;

receiving, by a controller device, data from the publisher device, the data comprising one or more of state information for the publisher device or best path information determined by the publisher device, the publisher device not locally storing the state information for the publisher device or the best path information;

storing, by the controller device, the data in a datastore across one or more of a plurality of shared storage devices by storing the one or more of the state information for the publisher device or the best path information in a database in the datastore, the one or more of the state information for the publisher device or the best path information being partitioned according to a database schema; and

providing, by the controller device, the data to a subscriber device in the network computing environment.

13 . Method of claim 12 , wherein:

the data comprises paths learned by the publisher device for a prefix; and

the method further comprises:

determining, by the controller device, a best path from among the paths; and

returning, by the controller device, the best path to the publisher device.

14 . The method of claim 13 , further comprising retrieving, by the subscriber device, the best path from the datastore.

15 . The method of claim 13 , further comprising advertising, by the publisher device, the best path to one or more neighbors in the network computing environment.

16 . The method of claim 13 , wherein the publisher device is a BGP route reflector.

17 . The method of claim 12 , wherein the subscriber device executes a second BGP instance.

18 . The method of claim 12 , wherein the subscriber device executes at least one of system to intermediate system (ISIS) routing, a routing information base (RIB), and open shortest path first (OSPF).

19 . The method of claim 12 , wherein:

the data comprises paths learned by the publisher device for a prefix; and

the method further comprises modifying, by the controller device, a next-hop of one or more of the paths.

20 . The method of claim 12 , further comprising offloading, by the controller device, the data to cloud-based storage, and wherein the datastore itself is a cloud-based database instance.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 23, 2023
From: SARKAR, PUSHPASIS; PATEL, KEYUR; YEUNG, DEREK MAN-KIT; PATEL, ALPESH; KREEGER, LAWRENCE ROLFE
To: ARRCUS INC.
Reel/Frame 063734/0392 →
Continuity (4)
Continuation 17469609 · Sep 8, 2021
Continuation 16549315 · Aug 23, 2019
Provisional Application 62722003 · Aug 23, 2018
Related Publication 20230367658A1 · Nov 16, 2023
References Cited (177)
US 5873076A · Barr · 1999 [cited by applicant]
US 6874010B1 · Sargent · 2005 [cited by applicant]
US 6879594B1 · Lee · 2005 [cited by applicant]
US 6970561B1 · Obana · 2005 [cited by applicant]
US 7274869B1 · Pan · 2007 [cited by applicant]
US 7593320B1 · Cohen et al. · 2009 [cited by applicant]
US 7945813B1 · Watson · 2011 [cited by applicant]
US 7970918B2 · Thompson et al. · 2011 [cited by applicant]
US 8060533B1 · Wheeler · 2011 [cited by applicant]
US 8537840B1 · Raszuk · 2013 [cited by examiner]
US 8756656B1 · Hartmann · 2014 [cited by applicant]
US 8849955B2 · Prahlad · 2014 [cited by applicant]
US 9288101B1 · Dalal · 2016 [cited by applicant]
US 9330154B2 · Di · 2016 [cited by applicant]
US 9331940B2 · Balus · 2016 [cited by applicant]
US 9507856B1 · Camplejohn · 2016 [cited by examiner]
US 9544185B1 · Yadav · 2017 [cited by applicant]
US 9652483B1 · Cao et al. · 2017 [cited by applicant]
US 10200274B1 · Suryanarayana · 2019 [cited by applicant]
US 10530873B1 · Arya · 2020 [cited by applicant]
US 10785296B1 · Allison · 2020 [cited by examiner]
US 10931530B1 · Rzehak · 2021 [cited by applicant]
US 11074300B1 · Falco · 2021 [cited by applicant]
US 20030012133A1 · Jappinen · 2003 [cited by applicant]
US 20030012193A1 · Novaes · 2003 [cited by applicant]
US 20040003064A1 · Astley · 2004 [cited by applicant]
US 20040264460A1 · Yoshimoto · 2004 [cited by applicant]
US 20050021622A1 · Cullen · 2005 [cited by examiner]
US 20060136256A1 · Roots · 2006 [cited by applicant]
US 20060233322A1 · Allman · 2006 [cited by applicant]
US 20070074150A1 · Jolfaei et al. · 2007 [cited by applicant]
US 20070086429A1 · Lawrence · 2007 [cited by applicant]
US 20070091796A1 · Filsfils · 2007 [cited by examiner]
US 20070104192A1 · Yoon · 2007 [cited by applicant]
US 20070214280A1 · Patel · 2007 [cited by examiner]
US 20070291773A1 · Khan · 2007 [cited by applicant]
US 20090043911A1 · Flammer · 2009 [cited by applicant]
US 20090257439A1 · Xu · 2009 [cited by examiner]
US 20090296579A1 · Dharwadkar · 2009 [cited by applicant]
US 20100046531A1 · Louati · 2010 [cited by applicant]
US 20100061366A1 · DelRegno · 2010 [cited by applicant]
US 20100125574A1 · Navas · 2010 [cited by applicant]
US 20100189115A1 · Kitada · 2010 [cited by applicant]
US 20100189117A1 · Gowda et al. · 2010 [cited by applicant]
US 20100211781A1 · Auradkar et al. · 2010 [cited by applicant]
US 20100250867A1 · Bettger · 2010 [cited by examiner]
US 20100293235A1 · Cadoret · 2010 [cited by applicant]
US 20110004913A1 · Nagarajan · 2011 [cited by applicant]
US 20110320550A1 · Lawson · 2011 [cited by examiner]
US 20120201124A1 · Marques · 2012 [cited by applicant]
US 20120213218A1 · Yilmaz · 2012 [cited by applicant]
US 20120281700A1 · Koganti · 2012 [cited by applicant]
US 20120300782A1 · Farinacci · 2012 [cited by applicant]
US 20130028073A1 · Tatipamula · 2013 [cited by applicant]
US 20130054763A1 · Van der Merwe · 2013 [cited by examiner]
US 20130188521A1 · Jain · 2013 [cited by applicant]
US 20130286846A1 · Atlas et al. · 2013 [cited by applicant]
US 20130301522A1 · Krishna · 2013 [cited by examiner]
US 20130329584A1 · Ghose et al. · 2013 [cited by applicant]
US 20130336164A1 · Yang · 2013 [cited by applicant]
US 20140044126A1 · Sabhanatarajan et al. · 2014 [cited by applicant]
US 20140075184A1 · Gorbach · 2014 [cited by applicant]
US 20140092901A1 · Kapadia · 2014 [cited by applicant]
US 20140112122A1 · Kapadia et al. · 2014 [cited by applicant]
US 20140188840A1 · Agarwal · 2014 [cited by applicant]
US 20140207991A1 · Kaushik · 2014 [cited by applicant]
US 20140233399A1 · Mann · 2014 [cited by applicant]
US 20140258485A1 · Yang · 2014 [cited by applicant]
US 20140317616A1 · Chu · 2014 [cited by applicant]
US 20140366037A1 · Berretta · 2014 [cited by applicant]
US 20140372748A1 · Dixon et al. · 2014 [cited by applicant]
US 20150010002A1 · Duda · 2015 [cited by applicant]
US 20150124590A1 · Chu · 2015 [cited by applicant]
US 20150172172A1 · DeCusatis · 2015 [cited by applicant]
US 20150188753A1 · Anumala et al. · 2015 [cited by applicant]
US 20150188808A1 · Ghanwani · 2015 [cited by applicant]
US 20150195136A1 · Mermoud · 2015 [cited by applicant]
US 20150195368A1 · Bandyopadhyay · 2015 [cited by examiner]
US 20150199415A1 · Bourbonnais · 2015 [cited by applicant]
US 20150263899A1 · Tubaltsev · 2015 [cited by applicant]
US 20150304206A1 · Filsfils et al. · 2015 [cited by applicant]
US 20150312134A1 · Kapadia · 2015 [cited by applicant]
US 20150355946A1 · Kang · 2015 [cited by applicant]
US 20150370644A1 · Graefe · 2015 [cited by applicant]
US 20160014025A1 · Wang · 2016 [cited by applicant]
US 20160028613A1 · Haramaty · 2016 [cited by applicant]
US 20160065498A1 · Harper · 2016 [cited by applicant]
US 20160112821A1 · Raleigh · 2016 [cited by applicant]
US 20160134116A1 · Carlson · 2016 [cited by examiner]
US 20160142313A1 · Devireddy et al. · 2016 [cited by applicant]
US 20160196320A1 · Borowiec · 2016 [cited by applicant]
US 20160218917A1 · Zhang · 2016 [cited by examiner]
US 20160234326A1 · Camplejohn · 2016 [cited by examiner]
US 20160248658A1 · Patel et al. · 2016 [cited by applicant]
US 20160248663A1 · Patel · 2016 [cited by examiner]
US 20160277210A1 · Lin et al. · 2016 [cited by applicant]
US 20160294608A1 · Biswal · 2016 [cited by applicant]
US 20160321341A1 · Ramamurthi · 2016 [cited by examiner]
US 20160337231A1 · Dixon · 2016 [cited by applicant]
US 20160337464A1 · Eriksson · 2016 [cited by examiner]
US 20160352619A1 · Gattani · 2016 [cited by applicant]
US 20160357778A1 · MacKenzie et al. · 2016 [cited by applicant]
US 20170032011A1 · Song · 2017 [cited by applicant]
US 20170041239A1 · Goldenberg · 2017 [cited by applicant]
US 20170109369A1 · Feng · 2017 [cited by applicant]
US 20170126486A1 · Prieto · 2017 [cited by applicant]
US 20170155542A1 · Fang · 2017 [cited by applicant]
US 20170171057A1 · Dong et al. · 2017 [cited by applicant]
US 20170180797A1 · Splaine · 2017 [cited by applicant]
US 20170244657A1 · Baldwin · 2017 [cited by examiner]
US 20170285882A1 · Hidinger · 2017 [cited by applicant]
US 20170310548A1 · Jailani · 2017 [cited by applicant]
US 20170331669A1 · Ganesh · 2017 [cited by applicant]
US 20180034665A1 · Nguyen et al. · 2018 [cited by applicant]
US 20180048591A1 · Sellappa et al. · 2018 [cited by applicant]
US 20180062914A1 · Boutros · 2018 [cited by applicant]
US 20180062993A1 · Wu · 2018 [cited by applicant]
US 20180121433A1 · Nevrekar · 2018 [cited by examiner]
US 20180124163A1 · Abali · 2018 [cited by applicant]
US 20180167475A1 · Agarwal · 2018 [cited by applicant]
US 20180167476A1 · Hoffner · 2018 [cited by applicant]
US 20180183706A1 · Przygienda et al. · 2018 [cited by applicant]
US 20180205634A1 · Avci et al. · 2018 [cited by applicant]
US 20180219953A1 · Arra · 2018 [cited by applicant]
US 20180220283A1 · Condeixa · 2018 [cited by applicant]
US 20180351857A1 · Vairavakkalai · 2018 [cited by applicant]
US 20180367400A1 · Pani · 2018 [cited by applicant]
US 20190028465A1 · Allen · 2019 [cited by examiner]
US 20190034313A1 · Prasad · 2019 [cited by applicant]
US 20190073419A1 · Dong · 2019 [cited by applicant]
US 20190079948A1 · Ye · 2019 [cited by examiner]
US 20190089575A1 · Pundir · 2019 [cited by applicant]
US 20190104438A1 · Mittal · 2019 [cited by applicant]
US 20190124013A1 · Murugesan · 2019 [cited by applicant]
US 20190141112A1 · Kalathur · 2019 [cited by applicant]
US 20190149361A1 · Sarwar · 2019 [cited by applicant]
US 20190149896A1 · Grammel · 2019 [cited by applicant]
US 20190155741A1 · Linke · 2019 [cited by applicant]
US 20190207844A1 · Kodavanty · 2019 [cited by applicant]
US 20190212968A1 · Walmsley · 2019 [cited by applicant]
US 20190260670A1 · Kulkarni · 2019 [cited by applicant]
US 20190297000A1 · Dutta · 2019 [cited by examiner]
US 20190327166A1 · Thubert · 2019 [cited by applicant]
US 20190342389A1 · Bono · 2019 [cited by applicant]
US 20190349426A1 · Smith · 2019 [cited by examiner]
US 20190349733A1 · Nolan · 2019 [cited by applicant]
US 20190363975A1 · Djernaes · 2019 [cited by applicant]
US 20190373073A1 · John · 2019 [cited by examiner]
US 20200036787A1 · Gupta · 2020 [cited by applicant]
US 20200044963A1 · Kwok · 2020 [cited by applicant]
US 20200084103A1 · Miller et al. · 2020 [cited by applicant]
US 20210075630A1 · Immidi · 2021 [cited by applicant]
US 20210149752A1 · Burroughes · 2021 [cited by examiner]
CA 2279845A1 · 1998 [cited by applicant]
CN 101848236A · 2010 [cited by applicant]
CN 101960426A · 2011 [cited by applicant]
CN 103984694A · 2014 [cited by applicant]
CN 104486124 · 2015 [cited by applicant]
CN 105556502A · 2016 [cited by applicant]
CN 105991432 · 2016 [cited by applicant]
CN 106878065 · 2017 [cited by applicant]
CN 107547402 · 2018 [cited by applicant]
CN 108075969A · 2018 [cited by applicant]
EP 3070877 · 2016 [cited by applicant]
JP 2003204332 · 2003 [cited by applicant]
JP 2015515809 · 2015 [cited by applicant]
JP 2016536690 · 2016 [cited by applicant]
WO 2015070236 · 2015 [cited by applicant]
Cisco Documentation: “Internet Engineering Task Force (IETF) Network Working Group draft-ietf-idr-bgp4-24.txt document.”, Apr. 28, 2011 (Apr. 28, 2011), pp. 1-166, XP093187495, Retrieved from the Internet: URL:https://w… [cited by applicant]
“Husseman. ““A Beginner's Guide to Understanding the Leaf-Spine Network Topology.”” In: West Monroe Partners. Mar. 23, 2015 (Mar. 23, 2015) Retrieved on Oct. 13, 2019 (Oct. 13, 2019) from <https://blog.westmonroepartner… [cited by applicant]
“Internet Engineering Task Force (IETF) Request for Comments: 7432 Category: Standards Track ISSN: 2070-1721, BGP MPLS-Based Ethernet VPN, A. Sajassi, Ed.” [cited by applicant]
Juniper Networks, Understanding EVPN Pure Type 5 Routes, Sep. 16, 2022. [cited by applicant]
Juniper, Understanding EVPN Pure Route Type-5 on QFX Series Switches, Jul. 2017 (Year: 2017). [cited by applicant]
“SAMMAN et al. ““Multicast parallel pipeline router architecture for network-on-chip.”” In: Proceedings of the conference on Design, automation and test in Europe. Mar. 2008 (Mar. 2008) Retrieved on Oct. 18, 2019 (Oct. … [cited by applicant]
“Saurav Haloi: ““Introduction to Apache ZooKeeper””, Internet Citation, Feb. 5, 2015 (Feb. 5, 2015), XP002806551, Retrieved from the Internet: URL:https://hub.packtpub.com/introduction-apache-zookeeper/ [retrieved on Ma… [cited by applicant]
VXLAN Tutorial, Ohira Shinichi, Cisco Systems G.K., Jan. 20, 2016, p. 1 to 49 https://www.janog.gr.jp/meeting/janog37/download_file/vxlan.pdf. [cited by applicant]
“WU et al. ““A new multi-channel MAC protocol with on-demand channel assignment for multi-hop mobile ad hoc networks.”” In: Proceedings International Symposium on Parallel Architectures, Algorithms and Networks. Dec. 9,… [cited by applicant]