Interest in distributed network architectures is growing by the day for several reasons. For one, distributed networks allow enterprise architects to create a highly reliable foundation on which mission-critical applications can continue to function even in the event of a major network or server failure.
Another reason distributed architectures are gaining traction is their ability to easily scale and adapt to rapid changes in application and service flows. These advantages translate into network infrastructures that can adapt to technological changes in business practices without the need to constantly “rip and replace” expensive hardware.
In this comprehensive getting started guide, we cover the following:
- define a distributed network;
- providing examples of common use cases;
- compare the distributed network architecture model to centralized and decentralized networks; and
- Highlighting the benefits and challenges of a typical distributed network deployment.
What is a distributed network?
A distributed network is a collection of multiple, independently operated networks that are managed together. In most cases, these networks are geographically separated to provide better reliability and provide multiple entry points, called points of presence, to provide better performance to users spread across multiple physical locations. Each network within a distributed network architecture can interact with others to provide service resiliency, performance gains, and automated resource sharing.
While each network can operate independently within a distributed network architecture, management and monitoring are centralized. Thus, different network and network security guidelines can be created once and passed on to the entire network. This ensures a consistent policy across the entire network infrastructure. Likewise, all monitoring and alerting is performed from a single NetOps management panel for true end-to-end visibility.
Examples and use cases of distributed networks
The number of use cases for distributed networks seems to be growing by the day. Here are two popular examples:
- Secure Access Service Edge (SASE). Globally distributed SaaS architectures are an example of a distributed network. SASE is a SaaS use case that’s growing in popularity thanks to the explosion of remote workers. With SASE, end users can connect to remote applications and services through one of several independent SASE gateways that provide network security services for all business traffic flows. Each SASE node operates independently of all others, redirecting users to alternative head-end locations when a more preferred node is identified.
- Edge computing for IoT. The explosion of IoT to monitor various city, campus, building or facility operations is forcing the need for edge computing services. IoT deployments that require low-latency network access for IoT data collection and analysis often require a distributed network model composed of multiple edge compute nodes.
Central vs. decentralized vs. distributed networks
When comparing distributed network architectures to centralized and decentralized alternatives, some differences are obvious – while others remain a bit vague. Let’s first compare the similarities and differences between distributed and centralized networks and then proceed to the analysis of decentralized vs. distributed networks.
Centralized vs. Distributed
A centralized network architecture looks like a traditional network. In this model, endpoints connect to a single application or resource in a client-server fashion. If the central server or the network on which the server works were to fail, an outage would occur. Therefore, from a redundancy perspective, centralized architectures can be deficient in maintaining network and application services in the event of a major outage.
For remote workers, legacy VPN architectures often use a centralized network model for remote access. This is because the design requires all remote users to connect to a single VPN headend at the edge of the corporate network, creating a single point of failure.
Unlike centralized networks, a distributed architecture uses a clustered model to serve business applications. These network and server clusters are in constant communication with each other and can share resources and redirect users to different cluster groups to ensure reliability and improve application performance.
Decentralized vs. distributed
While it’s easy to understand the difference between centralized and distributed networks, things get more difficult when comparing decentralized vs. distributed networks. In fact, many people conflate decentralized and distributed assuming they mean the same thing. In fact, the two models have significant differences.
A decentralized network distributes workloads and data across multiple networks and systems, much like distributed systems. In contrast to distributed networks, where each node in a cluster contains all the applications and data required for operation, a decentralized network architecture distributes different services, functions and data in specific locations. Therefore, decentralized networks are highly interdependent and cannot operate independently like a distributed network can.
Additionally, decentralized networks typically do not have a central control plane from which to manage all systems. Instead, these separate workloads are controlled independently.
Visualization of central, decentralized and distributed networks
To better conceptualize centralized, decentralized, and distributed architectures, take a look at the following network diagrams.
Note that in a centralized model, all servers are connected to a single centralized network from which they operate. Servers on decentralized networks, on the other hand, are connected as needed depending on the specific application/service function that is required and the physical location of that resource. Finally, a distributed network operates as fully independent nodes within a full mesh design for maximum reliability and performance.
Advantages and challenges of distributed networks
The use of technology to achieve business goals is at an all-time high. Compared to a decade ago, we have seen monumental shifts in how organizations are digitally transforming their operations. This often requires radical architectural changes to the underlying network infrastructure.
Common examples of these business and technical changes include the following:
- Network and server virtualization
- cloud computing
- Containers and serverless architectures
- edge computing
- Work from Home Policy
Therefore, at a time when rapid business and technology changes go hand in hand, distributed networks offer the following advantages:
- Application and service security. Since each node in a distributed network cluster can operate independently of all others, failures of large parts of the network do not lead to a loss of service.
- scalability. Nodes can be added or removed as needed depending on the redundancy and performance required.
- Reshape traffic flows based on business changes. New applications or changes in application usage can be addressed quickly as traffic rates and loads are adjustable from north to south and east to west, reducing congestion.
- Centralized control. Both network performance configuration and network security are managed centrally. This ensures that the policy is consistent from end to end.
However, as with any new technology, there are also disadvantages to consider. Currently, these disadvantages include the following:
- complexity of the architecture. Compared to centralized networks, distributed network architectures have more layers of software abstraction. Therefore, these layers add to the overall complexity from a deployment and management perspective.
- skills gap. Internal NetOps staff need to acquire new skills and knowledge to keep a distributed network running at its best. These skills are in high demand – so attracting and retaining technical talent at a company could be a challenge for the foreseeable future.
- Migration and administration costs. Migrating from traditional, centralized networks—the most common architecture today—to a distributed architecture requires a significant investment in designing and implementing the new infrastructure. However, once the network is operational, this investment can pay for itself if the use of network automation and machine learning is properly implemented.
Applications, services and network architectures are evolving
While today we can pinpoint exactly what an optimal network architecture looks like and consists of, understand that future advances are inevitable. This is an ongoing process driven by business goals and the applications and services required to achieve them. Therefore, note that this is a never-ending cycle in which network performance, reliability, and scalability are constantly improving and evolving, much like the changes in the past that have brought us to where we are today from an architectural perspective.