For network design, there is no one "good network design," and there is certainly no "one size fits all." A good network design is based on many concepts, some of which are summarized by the following key general principles:
Examine for single points of failure carefully? There should be redundancy in your network, so that a single link or hardware failure does not isolate any portion of the network resulting in those users losing access to network resources. The amount of redundancy required varies from network to network. Some networks might require a backup link between two sites, and some networks might require redundant links, routers, and switches. The amount of redundancy depends on how much money you want to spend on the extra equipment and what level of risk you are willing to accept by not having the redundancy.
- Two aspects of redundancy need to be considered: backup and load sharing. A backup path should be available as an alternative to the primary path so that if the primary path fails, traffic will automatically run across the backup path; sort of like a detour in your network. Load sharing happens when two or more paths to a destination exist and both can be used to share the network load.
Characterize application and protocol traffic? The application data flow profiles the client/server communication across your network and this profile is essential to allocate sufficient resources for your users. Some examples might be reducing the number of workstations using a particular server or the number of client workstations on a segment.
Analyze available bandwidth? There should not be significant difference in available bandwidth between the different layers of the hierarchical model. It is important to keep in mind that the hierarchical model refers to conceptual layers providing functionality in your network, not an actual physical separation. In a small network, for example, a single switch might provide both core and distribution layer services; the switch backplane would be the core layer and the switch port being the distribution layer, and the network segment itself being the access layer.
Build networks using a hierarchical or modular model? Hierarchy in your network enables separate segments to be networked together. A hierarchical network design gives you three conceptual layers in your network?core, distribution, and access with each layer providing different functionality.