This chapter serves as an introduction to the rest of the book by describing top-down network design. The first section explains how to use a systematic, top-down process when designing computer networks for your customers. Depending on your job, your customers might be other departments within your company, those to whom you are trying to sell products, or clients of your consulting business.
After describing the methodology, this chapter focuses on the first step in top-down network design: analyzing your customer's business goals. Business goals include the capability to run network applications to meet corporate business objectives, and the need to work within business constraints, such as budgets, limited networking personnel, and tight timeframes.
This chapter also covers an important business constraint that some people call the eighth layer of the Open Systems Interconnection (OSI) reference model: workplace politics. To ensure the success of your network design project, you should gain an understanding of any corporate politics and policies at your customer's site that could affect your project.
The chapter concludes with a checklist to help you determine if you have addressed the business issues in a network design project.
Using a Top-Down Network Design Methodology
According to Albert Einstein:
The world we've made as a result of the level of thinking we have done thus far creates problems that we cannot solve at the same level at which we created them.
To paraphrase Einstein, networking professionals have the ability to create networks that are so complex that when problems arise they can't be solved using the same sort of thinking that was used to create the networks. Add to this the fact that each upgrade, patch, and modification to a network can also be created using complex and sometimes convoluted thinking, and you realize that the result is networks that are hard to understand and troubleshoot. The networks created with this complexity often don't perform as well as expected, don't scale as the need for growth arises (as it almost always does), and don't match a customer's requirements. A solution to this problem is to use a streamlined, systematic methodology in which the network or upgrade is designed in a top-down fashion.
Many network design tools and methodologies in use today resemble the "connect-the-dots" game that some of us played as children. These tools let you place internetworking devices on a palette and connect them with local-area network (LAN) or wide-area network (WAN) media. The problem with this methodology is that it skips the steps of analyzing a customer's requirements and selecting devices and media based on those requirements.
Good network design must recognize that a customer's requirements embody many business and technical goals including requirements for availability, scalability, affordability, security, and manageability. Many customers also want to specify a required level of network performance, often called a service level. To meet these needs, difficult network design choices and tradeoffs must be made when designing the logical network before any physical devices or media are selected.
When a customer expects a quick response to a network design request, a bottom-up (connect-the-dots) network design methodology can be used, if the customer's applications and goals are well known. However, network designers often think they understand a customer's applications and requirements only to discover, after a network is installed, that they did not capture the customer's most important needs. Unexpected scalability and performance problems appear as the number of network users increases. These problems can be avoided if the network designer uses top-down methods that perform requirements analysis before technology selection.
Top-down network design is a methodology for designing networks that begins at the upper layers of the OSI reference model before moving to the lower layers. It focuses on applications, sessions, and data transport before the selection of routers, switches, and media that operate at the lower layers.
The top-down network design process includes exploring divisional and group structures to find the people for whom the network will provide services and from whom you should get valuable information to make the design succeed.
Top-down network design is also iterative. To avoid getting bogged down in details too quickly, it is important to first get an overall view of a customer's requirements. Later, more detail can be gathered on protocol behavior, scalability requirements, technology preferences, and so on. Top-down network design recognizes that the logical model and the physical design may change as more information is gathered.
Because top-down methodology is iterative, some topics are covered more than once in this book. For example, this chapter discusses network applications. Network applications are discussed again in Chapter 4, "Characterizing Network Traffic," which covers network traffic caused by application- and protocol-usage patterns. A top-down approach lets a network designer get "the big picture" first and then spiral downward into detailed technical requirements and specifications.
Using a Structured Network Design Process
Top-down network design is a discipline that grew out of the success of structured software programming and structured systems analysis. The main goal of structured systems analysis is to more accurately represent users' needs, which are unfortunately often ignored or misrepresented. Another goal is to make the project manageable by dividing it into modules that can be more easily maintained and changed.
Structured systems analysis has the following characteristics:
The system is designed in a top-down sequence.
During the design project, several techniques and models can be used to characterize the existing system, new user requirements, and a structure for the future system.
A focus is placed on understanding data flow, data types, and processes that access or change the data.
A focus is placed on understanding the location and needs of user communities that access or change data and processes.
A logical model is developed before the physical model. The logical model represents the basic building blocks, divided by function, and the structure of the system. The physical model represents devices and specific technologies and implementations.
With large network design projects, modularity is essential. The design should be split functionally to make the project more manageable. For example, the functions carried out in campus LANs can be analyzed separately from the functions carried out in remote-access networks, virtual private networks (VPNs), and WANs.
Cisco Systems recommends a modular approach with its three-layer hierarchical model. This model divides networks into core, distribution, and access layers. Cisco's Secure Architecture for Enterprises (SAFE) and Enterprise Composite Network Model (ECNM), which are discussed in Part II of this book, "Logical Network Design," are also modular approaches to network design.
With a structured approach to network design, each module is designed separately, yet in relation to other modules. All the modules are designed using a top-down approach that focuses on requirements, applications, and a logical structure before the selection of physical devices and products to implement the design.
Systems Development Life Cycles
Systems analysis students are familiar with the concept that typical systems are developed and continue to exist over a period of time, often called a systems development life cycle. Many systems analysis books use the acronym SDLC to refer to the life cycle, which may sound strange to networking students who know SDLC as Synchronous Data Link Control, a bit-oriented, full-duplex protocol used on synchronous serial links, often found in a legacy Systems Network Architecture (SNA) environment. Nevertheless, it's important to realize that most systems, including network systems, follow a cyclical set of phases, where the system is planned, created, tested, and optimized.
Feedback from the users of the system causes the system to then be re-created or modified, tested, and optimized again. New requirements arise as the network opens the door to new uses. As people get used to the new network and take advantage of the services it offers, they soon take it for granted and expect it to do more.
In this book, network design is divided into four major phases that are carried out in a cyclical fashion:
Analyze requirements. In this phase, the network analyst interviews users and technical personnel to gain an understanding of the business and technical goals for a new or enhanced system. The task of characterizing the existing network, including the logical and physical topology and network performance, follows. The last step in this phase is to analyze current and future network traffic, including traffic flow and load, protocol behavior, and quality of service (QoS) requirements.
Develop the logical design. This phase deals with a logical topology for the new or enhanced network, network layer addressing, naming, and switching and routing protocols. Logical design also includes security planning, network management design, and the initial investigation into which service providers can meet WAN and remote access requirements.
Develop the physical design. During the physical design phase, specific technologies and products to realize the logical design are selected. Also, the investigation into service providers, which began during the logical design phase, must be completed during this phase.
Test, optimize, and document the design. The final steps in top-down network design are to write and implement a test plan, build a prototype or pilot, optimize the network design, and document your work with a network design proposal.
These major phases of network design repeat themselves as user feedback and network monitoring suggest enhancements or the need for new applications. Figure 1-1 shows the network design and implementation cycle.
Figure 1-1 Network Design and Implementation Cycle
The Plan Design Implement Operate Optimize (PDIOO) Network Life Cycle
Cisco Systems teaches the Plan Design Implement Operate Optimize (PDIOO) set of phases for the life cycle of a network. It doesn't matter exactly which life cycle you use, as long as you realize that network design should be accomplished in a structured, planned, modular fashion, and that feedback from the users of the operational network should be fed back into new network projects to enhance or redesign the network. Learning the Cisco steps is important if you are studying for a Cisco design certification. For that reason, the steps are listed here:
Plan. Network requirements are identified in this phase. This phase also includes an analysis of areas where the network will be installed and an identification of users who will require network services.
Design. In this phase, the network designers accomplish the bulk of the logical and physical design, according to requirements gathered during the plan phase.
Implement. After the design has been approved, implementation begins. The network is built according to the design specifications. Implementation also serves to verify the design.
Operate. Operation is the final test of the effectiveness of the design. The network is monitored during this phase for performance problems and any faults, to provide input into the optimize phase of the network life cycle.
Optimize. The optimize phase is based on proactive network management which identifies and resolves problems before network disruptions arise. The optimize phase may lead to a network redesign if too many problems arise due to design errors or as network performance degrades over time as actual use and capabilities diverge. Redesign may also be required when requirements change significantly.
Retire. When the network, or a part of the network, is out-of-date, it may be taken out of production. Although Retire is not incorporated into the name of the life cycle (PDIOO), it is nonetheless an important phase.
Figure 1-2 shows a graphical representation of the Cisco PDIOO network life cycle.
Figure 1-2 PDIOO Network Life Cycle