DEV Community

Cover image for Zero Assumption's Proxy Architecture
Falon Darville for Zero Assumptions

Posted on

Zero Assumption's Proxy Architecture

Zero Assumptions (ZA) is a simple to configure proxy that's minimal invasive to engineers, and maximally beneficial to business. After on-prem installation, Zero Assumptions requires engineers to log in, and it monitors their activity within a private network - all in the background while they work. For businesses, there's no need to set up complex logins as ZA can leverage existing identity providers.

In this article, we'll go into Zero Assumption's logical proxy architecture. This architecture won't impact configuration, though it'll help businesses understand what's happening behind the scenes. We use a control plane and data plane separation, though ZA can be run from a single virtual machine. The two planes are mainly used for ease of maintenance and build.

Access our Design Principles documentation for more information.

Control Plane

The Zero Assumptions control plane can be considered the brain of the product. Here, information is inputted, retained, and used. The control plane holds definitions for identity management, including the business's preferred, ZA-compatible identity provider.

The control plane also holds ACLs (Access Control Lists), which define how engineers can interact with the software within scope of Zero Assumptions monitoring. Admins update ACLs through the configuration file or admin UI.

Now that we've mentioned configuration, there's a distinction between the configuration file written in UCL or JSON and data plane node configuration. The data plane node configuration defines how network traffic is routed, while the admin configuration defines how the product is configured for the engineer end users.

Data Plane

While the control plane handles the logic of the application, the data plane runs the overlay network's traffic. The data plane is low maintenance. Zero Assumptions has opted to keep it simple so businesses don't have to bother with continuously handling. Businesses using ZA are responsible for connecting the control plane to the data plane, and periodically
installing updates.

Altogether, Zero Assumption's proxy architecture is separated for the sake of keeping the codebase clean and easy to maintain on our end. Businesses benefit from this simplicity because they don't have to spend significant time learning how to use our product to get it up and running.

Stay Connected to Zero Assumptions

Follow us here on DEV, Twitter, and LinkedIn.

Read more about Zero Assumptions.

Top comments (0)