Home > Articles > Cisco Network Technology > General Networking > The Art of Network Architecture: Applying Modularity

The Art of Network Architecture: Applying Modularity

Chapter Description

This chapter focuses on why we use specific design patterns to implement modularity, discussing specifically why we should use hierarchical design to create a modular network design, why we should use overlay networks to create virtualization, and the results of virtualization as a mechanism to provide modularity.

Final Thoughts on Applying Modularity

Network modularization provides clear and obvious points at which to configure and manage policy, clear trade-offs between state and stretch, and predictable reactions within the network to specific changes in the network topology. The general rules for using hierarchical design are as follows:

  • Break the network into modules, using information hiding to divide module from module. Layer edges exist only where information is hidden.
  • Assign each module as few functions as possible to promote clarity and repeatability in configurations, and reduce the unintended consequences of complex policy interactions.
  • Build networks using hub-and-spoke configurations of modules.
  • All modules at a given layer within a network should have similar functionality to promote ease of troubleshooting and reduce configuration complexity.
  • Build solid redundancy at module interconnection points.

Overall, remember to be flexible with the modularization. Rather than focusing on a single design pattern as the solution to all design problems, focus on finding the best fit for the problem at hand.