IP Library Granted Patent US 12,634,202
Granted Patent B2
US 12,634,202 · App. 18/006,708 · Granted May 19, 2026

Agentless generation of a topology of components in a distributed computing system

Inventors: Ravi Kumar Alluboyina (Santa Clara, CA); Sree Nandan Atur (Newark, CA); Stephanie Morel (East Palo Alto, CA)
Assignee: Rakuten Symphony, Inc.
H04L41/12H04L41/0853
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,634,202
App. No.
18/006,708
Granted
May 19, 2026
Kind
B2
Abstract

A computer system retrieves provisioning data and observability data (metrics, logs, events, alerts, inventory) for a plurality of components from remote servers. The computer system extracts component identifiers from the provisioning data and the log data. The computer system identifies relationships between components from the provisioning data and the log data, such as environmental variable relationships, network relationships, session relationships, access relationships, and network connection relationships. The computer system generates a topology in which nodes represent components and edges represent relationships. The topology is updated to show changes to components and relationships. A user may interact with a visual representation of the topology to change data displayed or invoke changes to the components and relationships represented by the topology.

Claims (47)

1 . An apparatus comprising:

a computing device including one or more processing devices and one or more memory devices operably coupled to the one or more processing devices, the one or more memory devices storing executable code that, when executed by the one or more processing devices, causes the one or more processing devices to:

retrieve provisioning data describing instantiation of a plurality of components on remote servers over a network;

extract component identifiers of the plurality of components from the provisioning data;

retrieve log data from the remote servers without use of an agent executing on the remote servers; and

process the provisioning data and the log data to obtain a topology of the plurality of components, the topology including nodes representing the plurality of components and edges representing relationships between pairs of components of the plurality of components.

2 . The apparatus of claim 1 , wherein the relationships include at least one of hosting relationships, environmental variable relationships, network relationships, session relationships, access relationships, and network connection relationships.

3 . The apparatus of claim 1 , wherein the relationships include hosting relationships; and

wherein the executable code, when executed by the one or more processing devices, further causing the one or more processing devices to extract the hosting relationships between the pairs of components of the plurality of components from one or both of the provisioning data and the log data.

4 . The apparatus of claim 1 , wherein the relationships include environmental variable relationships; and

wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to extract environmental variable relationships between the pairs of components of the plurality of components from one or both of the provisioning data and the log data.

5 . The apparatus of claim 1 , wherein the relationships include network relationships; and

wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to extract the network relationships between the pairs of components of the plurality of components from one or both of the provisioning data and the log data.

6 . The apparatus of claim 1 , wherein the relationships include session relationships; and

wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to extract the session relationships between the pairs of components of the plurality of components from one or both of the provisioning data and the log data.

7 . The apparatus of claim 1 , wherein the relationships include access relationships; and

wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to extract the access relationships between the pairs of components of the plurality of components from one or both of the provisioning data and the log data.

8 . The apparatus of claim 1 , wherein the relationships include network connection relationships; and

wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to extract the network connection relationships between the pairs of components of the plurality of components from one or both of the provisioning data and the log data.

9 . The apparatus of claim 1 , wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to obtain the provisioning data from a manifest ingested by an orchestrator, the manifest instructing the orchestrator to instantiate the plurality of components.

10 . The apparatus of claim 1 , wherein the executable code, when executed by the one or more processing devices, further causes the one or more processing devices to:

invoke display of a visual representation of the topology on a display device;

receive an interaction with the visual representation of the topology;

in response to the interaction, modify at least one of the visual representation of the topology and the plurality of components.

11 . A method comprising:

retrieving, by a computing device, provisioning data describing instantiation of a plurality of components on remote servers over a network;

extracting, by the computing device, component identifiers of the plurality of components from the provisioning data;

retrieving, by the computing device, log data from the remote servers without use of an agent executing on the remote servers; and

processing, by the computing device, the provisioning data and the log data to obtain a topology of the plurality of components, the topology including nodes representing the plurality of components and edges representing relationships between pairs of components of the plurality of components.

12 . The method of claim 11 , wherein the relationships include at least one of hosting relationships, environmental variable relationships, network relationships, session relationships, access relationships, and network connection relationships.

13 . The method of claim 11 , wherein the relationships include hosting 13 . relationships; and

wherein the method further comprises extracting the hosting relationships between the pairs of components of the plurality of components from one or both of the provisioning data and the log data.

14 . The method of claim 11 , wherein the relationships include environmental variable relationships; and

wherein the method further comprises extracting the environmental variable relationships between the pairs of components of the plurality of components from one or both of the provisioning data and the log data.

15 . The method of claim 11 , wherein the relationships include network relationships; and

wherein the method further comprises extracting the network relationships between the pairs of components of the plurality of components from one or both of the provisioning data and the log data.

16 . The method of claim 11 , wherein the relationships include session relationships; and

wherein the method further comprises extracting the session relationships between the pairs of components of the plurality of components from one or both of the provisioning data and the log data.

17 . The method of claim 11 , wherein the relationships include access relationships; and

wherein the method further comprises extracting the access relationships between the pairs of components of the plurality of components from one or both of the provisioning data and the log data.

18 . The method of claim 11 , wherein the relationships include network connection relationships; and

wherein the method further comprises extracting the network connection relationships between the pairs of components of the plurality of components from one or both of the provisioning data and the log data.

19 . The method of claim 11 , wherein the method further comprises obtaining, by the computing device, the provisioning data from a manifest ingested by an orchestrator, the manifest instructing the orchestrator to instantiate the plurality of components.

20 . The method of claim 11 , wherein the method further comprises

invoking, by the computing device, display of a visual representation of the topology on a display device;

receiving, by the computing device, an interaction with the visual representation of the topology;

in response to the interaction, modifying, by the computing device, at least one of the visual representation of the topology and the plurality of components.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 30, 2024
From: ROBIN SYSTEMS, INC.
To: RAKUTEN SYMPHONY, INC.
Reel/Frame 068193/0367 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 24, 2023
From: ALLUBOYINA, RAVI KUMAR; ATUR, SREE NANDAN; MOREL, STEPHANIE
To: ROBIN SYSTEMS, INC
Reel/Frame 062474/0293 →
Continuity (1)
Related Publication 20250293936A1 · Sep 18, 2025
References Cited (136)
US 7356590B2 · Wilson · 2008 [cited by applicant]
US 7516362B2 · Connelly · 2009 [cited by applicant]
US 7546609B2 · Florissi · 2009 [cited by applicant]
US 7631222B2 · Hasan · 2009 [cited by applicant]
US 7644137B2 · Bozak · 2010 [cited by applicant]
US 7782798B2 · Xu · 2010 [cited by applicant]
US 8103664B2 · Hooks · 2012 [cited by applicant]
US 8429630B2 · Nickolov · 2013 [cited by applicant]
US 8467354B1 · Jerkunica · 2013 [cited by applicant]
US 8495646B2 · Uchida · 2013 [cited by applicant]
US 8671189B2 · Cho · 2014 [cited by applicant]
US 8849987B2 · Berg · 2014 [cited by examiner]
US 8949847B2 · Kim · 2015 [cited by applicant]
US 9292353B2 · Gulati · 2016 [cited by applicant]
US 9497136B1 · Ramarao · 2016 [cited by applicant]
US 9686207B2 · Shanmuganathan · 2017 [cited by applicant]
US 9848041B2 · Einkauf · 2017 [cited by applicant]
US 9921866B2 · Ganguli · 2018 [cited by applicant]
US 9934061B2 · Deng · 2018 [cited by applicant]
US 9960958B2 · Ramachandran · 2018 [cited by applicant]
US 10061529B2 · Bobroff · 2018 [cited by applicant]
US 10079730B2 · Subramanian · 2018 [cited by applicant]
US 10129101B2 · Luo · 2018 [cited by applicant]
US 10257044B2 · Voigt · 2019 [cited by applicant]
US 10257268B2 · Cencini · 2019 [cited by applicant]
US 10326673B2 · Kulshreshtha · 2019 [cited by applicant]
US 10333820B1 · Wang · 2019 [cited by examiner]
US 10389596B2 · Strobel · 2019 [cited by examiner]
US 10404523B2 · Cencini · 2019 [cited by applicant]
US 10419437B2 · Hu · 2019 [cited by applicant]
US 10430094B2 · Waldspurger · 2019 [cited by applicant]
US 10498642B1 · Morris · 2019 [cited by applicant]
US 10521324B2 · Whitner · 2019 [cited by applicant]
US 10609129B2 · Lam · 2020 [cited by applicant]
US 10637737B2 · Whitner · 2020 [cited by examiner]
US 10659310B1 · Oren · 2020 [cited by examiner]
US 10673706B2 · Garcia · 2020 [cited by examiner]
US 10686675B2 · Cordray · 2020 [cited by examiner]
US 10693743B2 · Zhong · 2020 [cited by applicant]
US 10833940B2 · Cencini · 2020 [cited by applicant]
US 10862781B2 · Al Ramady · 2020 [cited by applicant]
US 10877865B2 · Johnsson · 2020 [cited by applicant]
US 10893100B2 · Jamjoom · 2021 [cited by examiner]
US 10999145B2 · Debolle · 2021 [cited by applicant]
US 11003502B2 · Ahmed · 2021 [cited by applicant]
US 11010197B2 · Beveridge · 2021 [cited by applicant]
US 11258688B2 · Gell · 2022 [cited by applicant]
US 11316763B1 · Chitalia et al. · 2022 [cited by applicant]
US 11425054B1 · Dunsmore et al. · 2022 [cited by applicant]
US 11431786B1 · Keren · 2022 [cited by examiner]
US 11483205B1 · Jain · 2022 [cited by applicant]
US 11615082B1 · Shrigondekar · 2023 [cited by applicant]
US 11843523B1 · Gdaliahu · 2023 [cited by examiner]
US 12039369B1 · Neelakantam · 2024 [cited by applicant]
US 12095794B1 · Karaje · 2024 [cited by examiner]
US 20040042416A1 · Ngo · 2004 [cited by applicant]
US 20040046785A1 · Keller · 2004 [cited by examiner]
US 20050038818A1 · Hooks · 2005 [cited by applicant]
US 20060020866A1 · Lo · 2006 [cited by applicant]
US 20070283194A1 · Villella · 2007 [cited by examiner]
US 20080046887A1 · Ditlow · 2008 [cited by applicant]
US 20080091806A1 · Shen · 2008 [cited by applicant]
US 20080244600A1 · Wong · 2008 [cited by applicant]
US 20090006487A1 · Gavrilov · 2009 [cited by applicant]
US 20090180399A1 · Li · 2009 [cited by applicant]
US 20090235324A1 · Griffin · 2009 [cited by examiner]
US 20090328051A1 · Maes · 2009 [cited by applicant]
US 20110071981A1 · Ghosh · 2011 [cited by applicant]
US 20120005542A1 · Petersen · 2012 [cited by examiner]
US 20120176975A1 · Choi · 2012 [cited by applicant]
US 20130111468A1 · Davis et al. · 2013 [cited by applicant]
US 20130150039A1 · Ramie · 2013 [cited by applicant]
US 20130163471A1 · Indukuri et al. · 2013 [cited by applicant]
US 20140280224A1 · Feinberg et al. · 2014 [cited by applicant]
US 20150039677A1 · Kahal · 2015 [cited by applicant]
US 20150074679A1 · Fenoglio · 2015 [cited by applicant]
US 20150163163A1 · Kato · 2015 [cited by applicant]
US 20150212856A1 · Shanmuganathan et al. · 2015 [cited by applicant]
US 20160085413A1 · Luo · 2016 [cited by applicant]
US 20160098292A1 · Boutin · 2016 [cited by applicant]
US 20160179636A1 · Fitzpatrick et al. · 2016 [cited by applicant]
US 20160234073A1 · Maes · 2016 [cited by applicant]
US 20170093645A1 · Zhong · 2017 [cited by examiner]
US 20170111440A1 · Alonzo · 2017 [cited by applicant]
US 20170257432A1 · Fu · 2017 [cited by applicant]
US 20170264493A1 · Cencini · 2017 [cited by examiner]
US 20170286518A1 · Horowitz · 2017 [cited by applicant]
US 20180097744A1 · Hu · 2018 [cited by applicant]
US 20180157511A1 · Krishnan · 2018 [cited by applicant]
US 20180219743A1 · Garcia · 2018 [cited by examiner]
US 20180267837A1 · Shan · 2018 [cited by applicant]
US 20180276266A1 · Diwakar · 2018 [cited by examiner]
US 20180278496A1 · Kulshreshtha et al. · 2018 [cited by applicant]
US 20180287876A1 · Strobel · 2018 [cited by examiner]
US 20180288129A1 · Joshi · 2018 [cited by examiner]
US 20190052659A1 · Weingarten · 2019 [cited by examiner]
US 20190068619A1 · Fan · 2019 [cited by applicant]
US 20190156681A1 · Whiting · 2019 [cited by applicant]
US 20190213044A1 · Cui et al. · 2019 [cited by applicant]
US 20190222502A1 · May et al. · 2019 [cited by applicant]
US 20190238472A1 · Anand et al. · 2019 [cited by applicant]
US 20190260829A1 · Cencini · 2019 [cited by applicant]
US 20190286504A1 · Muntes-Mulero · 2019 [cited by applicant]
US 20200183758A1 · Subramaniam · 2020 [cited by applicant]
US 20200233715A1 · Kottapalli · 2020 [cited by applicant]
US 20210111943A1 · Moser · 2021 [cited by examiner]
US 20210223923A1 · Carre · 2021 [cited by examiner]
US 20210266228A1 · Reehil · 2021 [cited by applicant]
US 20210342337A1 · Lu · 2021 [cited by examiner]
US 20210409277A1 · Jeuk et al. · 2021 [cited by applicant]
US 20220113790A1 · Doshi et al. · 2022 [cited by applicant]
US 20220114251A1 · Guim Bernat et al. · 2022 [cited by applicant]
US 20220191230A1 · Morgan · 2022 [cited by examiner]
US 20220197773A1 · Butler et al. · 2022 [cited by applicant]
US 20230045472A1 · Bansal · 2023 [cited by applicant]
US 20230168904A1 · Botti Filho · 2023 [cited by applicant]
US 20230179651A1 · Kumar · 2023 [cited by applicant]
US 20230275968A1 · Young · 2023 [cited by applicant]
US 20240095079A1 · Kumar · 2024 [cited by applicant]
CN 107809321A · 2018 [cited by examiner]
CN 109471727 · 2021 [cited by applicant]
EP 1024437 · 2010 [cited by applicant]
EP 3611619A1 · 2020 [cited by applicant]
JP 2012032877 · 2012 [cited by applicant]
JP 201856648A · 2019 [cited by applicant]
JP 201957037A · 2020 [cited by applicant]
JP 202156626A · 2021 [cited by applicant]
JP 2021179745A · 2021 [cited by applicant]
JP 202151708A · 2022 [cited by applicant]
JP 2022100620 · 2023 [cited by applicant]
WO WO2007040858A1 · 2007 [cited by examiner]
WO 2014119669 · 2014 [cited by applicant]
WO 2017010922 · 2017 [cited by applicant]
DataDog. Enrich your observability data from a CSV. [online] published Nov. 18, 2021. [retrieved on 1 O Feb. 2023] Retrieved from the Internet <URL: https://web.archive.org/web/20211127021249/https://vector.dev/highligh… [cited by applicant]
Vector; web.archive.org/web/20211127020218/https://vector.dev/docs/reference/vrl/; Internet Archive, Nov. 27, 2021 (Year: 2021). [cited by applicant]
Lowe, Scott, “Mastering VMware vSphere 5.5”, 1st edition, Shoei Co., Ltd, Mikio Sasaki, Aug. 21, 2014, pp. 710-712. [cited by applicant]