One of the most common enterprise network architectures is the Cisco modular enterprise architecture depicted in the figure below
With this architecture the enterprise network is divided in to multiple functional domains. Furthermore, each domain is constructed of different components.
The typical question someone may ask is, on what basis should we build this architecture? The most common technical answer is: look at the areas where you can place a logical domain boundary to optimize control plan, which offers more scalable and simplified design!
Although this is a valid answer, it did not provide enough explanation of the basis to build a modular enterprise architecture. In fact, the answer should focus more on the functional modularity aspect rather than only focusing on the control plane modularity aspect.
So, how should you explain this modular “functional” architecture in a more holistic approach?
To simplify the answer to this question, let’s look at the context of a city architecture and correlates it to the enterprise network architecture. (This is driven from the common enterprise architecture and city planning analogy)
In a very simplified way, a city can consist of at least three primary organizing contexts:
Let’s define each of these contexts/architectures and see how it can correlate to the enterprise network architecture
Mapping this to the enterprise architecture, you can think of it as the end to end network architecture, capacity, layout (single site, multiple sites), type and number of modules, and how to interconnect and integrate all these different domains.
Mapping this to the enterprise architecture, you can think of it as the specific functions/services you are expecting from a certain module within the enterprise architecture such as WAN connectivity, Data Center or users access module. Each of these modules serves different functions in which requires different specifications, however, each of these modules need to integrate back to the overall enterprise network architecture to provide a cohesive design and not “design in isolation”.
Mapping this to the enterprise architecture, you can think of it as the specific/specialized functions/capabilities you are expecting from network nodes (platforms) within a module such as WAN acceleration within the WAN block/module, Firewalls and IPS within the internet edge, POE access switches within the users’ access module. Again, each of these components need to integrate back within its module.
In summary the context of a city architecture sets the basis for the district architecture, in turns the district architecture set the basis of the buildings architecture within a district. Similarly, the enterprise architecture set the basis for the modules architecture/functions (for example you may decide to combine both WAN and Internet edge functions/services in a single module based on the network capacity and available budget). Also the overall enterprise architecture set the basis to glue these different modules to provide a cohesive architecture (avoiding “isolated communication islands”). Likewise, each module set the basis/requirements of the used platforms and architecture within each enterprise module and provide the interconnection with the enterprise network (e.g. core network). on the other hand, the platforms’ architecture/capabilities need to comply with each module specifications/needs to deliver the intended functions/services.
Thanks alot Marwan , this was very helpful
wonderful explanation and examples to simplify the principle of mudularity , Thank you