Rest API provided by a local agent to detect network path of a request
Systems and methods implemented by a user device include receiving a request, from an application executed on the user device, to identify a network path for a destination; determining the network path to the destination including ports, addresses, and inline proxies; and providing details of the network path to the application.
1. A method implemented by a user device for operation with a cloud-based system, the method comprising:
receiving a request via a Representational State Transfer (REST) Application Programming Interface (API) of a connector application implemented on the user device, from a unified agent application executed on the user device, to identify a network path for a destination;
determining the network path to the destination including ports, addresses, and inline proxies, wherein the determining includes computing system networking rules at the connector application executed on the user device, and wherein the network rules include a routing table, networking drivers, tunnel configuration, and policy; and
providing details of the network path to the unified agent application.
2. The method of claim 1 , wherein the details are provided via JavaScript Object Notation (JSON).
3. The method of claim 1 , further comprising
subsequent to the determining, caching the network path for future requests.
4. The method of claim 1 , wherein the unified agent application utilizes the details to avoid failures in a request to the destination by enabling the request to follow the network path.
5. The method of claim 1 , further comprising
sending a request to the destination with additional information in a request header based on the details of the network path.
6. The method of claim 5 , wherein the request is a synthetic probe to measure statistics.
7. A user device for operation with a cloud-based system configured to execute a unified agent application for service discovery and connectivity, the user device comprising:
a network interface, a data store, and a processor communicatively coupled to one another; and
memory storing computer-executable instructions, and in response to execution by the processor, the computer-executable instructions cause the processor to
receive a request via a Representational State Transfer (REST) Application Programming Interface (API) of a connector application implemented on the user device, from the unified agent application executed on the user device, to identify a network path for a destination;
determine the network path to the destination including ports, addresses, and inline proxies, wherein the network path is determined via computing system networking rules at the connector application on the user device, and wherein the network rules include a routing table, networking drivers, tunnel configuration, and policy; and
provide details of the network path to the unified agent application.
8. The user device of claim 7 , wherein the details are provided via JavaScript Object Notation (JSON).
9. The user device of claim 7 , wherein the computer-executable instructions cause the processor to
subsequent to the network path being determined, cache the network path for future requests.
10. The user device of claim 7 , wherein the unified agent application utilizes the details to avoid failures in a request to the destination.
11. The user device of claim 7 , wherein the computer-executable instructions cause the processor to
send a request to the destination with additional information in a request header based on the details of the network path.
12. The user device of claim 11 , wherein the request is a synthetic probe to measure statistics.
13. A non-transitory computer-readable medium storing computer-executable instructions, and in response to execution by a processor, the computer-executable instructions cause the processor to perform steps of
receiving a request via a Representational State Transfer (REST) Application Programming Interface (API) of a connector application implemented on the user device, from a unified agent application executed on the user device, to identify a network path for a destination;
determining the network path to the destination including ports, addresses, and inline proxies, wherein the determining includes computing system networking rules at the connector application executed on the user device, and wherein the network ruleds include a routing table, networking drivers, tunnel configuration, and policy; and
providing details of the network path to the unified agent application.
14. The non-transitory computer-readable medium of claim 13 , wherein the steps include
subsequent to the determining, caching the network path for future requests.
15. The non-transitory computer-readable medium of claim 13 , wherein the steps include
sending a request to the destination with additional information in a request header based on the details of the network path.