The network design process should be driven by a set of objectives. This tip, reposted courtesy of SearchNetworking.com, helps value-added resellers (VARs) and networking consultants set and achieve objectives when designing IP-based networks.
It is imperative to set clear objectives at the outset of the network design process. These objectives relate to the parameters by which a network design is evaluated.
Key performance parameters must be identified and have target values assigned to them. These performance targets are ultimately dictated by the application requirements. To assign these targets in a meaningful manner the application must be understood at both a quantitative and qualitative level. The bandwidth consumption associated with the application must be evaluated in order to provide the capacity necessary to meet performance targets. The sensitivity of the application to packet loss, packet delay and variation in delay must be clearly understood. This is particularly important on modern IP networks where multiple heterogeneous applications are supported. Data applications that employ UDP transport are more seriously affected by packet loss than reliable connection-oriented TCP-based applications. Conversely, real-time applications such as voice, video and multi-media are more tolerant of packet loss than they are of delay and variations in delay. Thus, the different network applications may require that different quality parameters be prioritized.
Target values should be set for network availability or downtime. This target, like the performance targets, serves as a quality benchmark during the design process. The tolerable level of network downtime is heavily related to the nature of your customer's business. The effect of application unavailability can vary from the loss of tens-of-thousands of dollars per hour in the financial sector, to the potential loss of human life in the medical sector.
An estimate should be provided for the scale to which the network is likely to grow. This should entail a projected estimate for growth in the number of users, network nodes, geographically dispersed sites and, arguably most important, growth in application traffic. It then becomes the designer's task to put a network plan in place that will serve to accommodate this growth. Designing a network to the performance, resilience and scalability specifications is of little use if it is not a cost-effective solution. The designers must be keenly aware of the budgetary constraints in order to make intelligent cost versus availability trade-off decisions.
Achieving the design objectives
Network design requires extensive practical experience combined with a theoretical understanding of the technologies and how they relate to one and other. Hands-on experience is particularly critical, and this is often overlooked. An engineer who lacks extensive network support experience is, in my view, not yet equipped to work in design. The tools that enable you to achieve design goals are encompassed in the technology itself. You need to have a good knowledge and understanding of this; for example, scalable routing protocols, cost-effective WAN transport technology, network management and so on. I would always recommend laboratory work in performing proof-of-concept tests. Design must be performed in a lab rather than as a theoretical paper exercise. The multitude and interaction of so much technology is simply too complex to verify in anything other than a real-life test bed. The following steps provide an approximate guideline that can be used to approach the fundamental tasks to be followed during the design process:
- Determine the performance parameters that best specify each of the design goals; for example, application response time, percentage packet loss, latency and application availability.
- Identify any design constraints. The most obvious constraint is budget. Other constraints may include implementation timescale, support of legacy equipment, incorporation of specialized departments that require unique network specification and policy.
- After considering the constraints, set targets for the relevant network performance parameters.
- Commence a high-level design. This is intended to resolve major issues such as the choice of WAN technology and equipment, the IP addressing plan, the degree to which routing is used instead of switching and so on.
- This high level design should then be compared to the constraints. If the constraints are not met, then an iterative step backwards is required. In the event of the constraints being met the design process can proceed.
- A specific network design plan can now begin to be formulated. This addresses all technical details and alternatives for the design.
- Each major aspect of the technical solution should be lab tested. The application response and availability characteristics should be tested in a lab. This will facilitate an iterative refinement of the technical solution.
- The design is complete when the technical design is fully refined. In some cases the final lab tests may indicate that the fundamental performance targets or constraints are unrealistic and may have to be revised and compromised. It is, however, an aspiration to tentatively finalize these parameters at the high level design stage.
About the author
Cormac Long is the author of IP Network Design and Cisco Internetworking and Troubleshooting.
This tip originally appeared on SearchNetworking.com.