Top-Down Network Design
Chapter Twelve
Testing Your Network Design
Copyright 2010 Cisco Press & Priscilla Oppenheimer
Reasons to Test
Verify that the design meets key business and
technical goals
Validate LAN and WAN technology and
device selections
Verify that a service provider provides the
agreed-up service
Identify bottlenecks or connectivity problems
Determine optimization techniques that will be
necessary
Testing Your Network Design
Use industry testing services
Build and test a prototype system
Use third-party and Cisco tools
Industry Testing Services
The Interoperability Lab at the University of
New Hampshire (IOL)
ICSA Labs
Miercom Labs
AppLabs
The Tolly Group
Scope of a Prototype System
Its not generally practical to implement a
full-scale system.
A prototype should verify important
capabilities and functions that might not
perform adequately.
Risky functions include complex, intricate
functions and functions that were influenced
by the need to make tradeoffs.
Components of a Test Plan
Test objectives and acceptance criteria
The types of tests that will be run
Network equipment and other resources
required
Testing scripts
The timeline and milestones for the testing
project
Test Objectives and Acceptance
Criteria
Specific and concrete
Based on business and technical goals
Clear criteria for declaring that a test passed
or failed
Avoid biases and preconceived notions
about outcomes
If appropriate, reference a baseline
Types of Tests
Application response-time tests
Throughput tests
Availability tests
Regression tests
Resources Needed for Testing
Scheduled time in a lab either at your site or
the customers site
Power, air conditioning, rack space, and
other physical resources
Help from coworkers or customer staff
Help from users to test applications
Network addresses and names
Example Test Script
Network A Network B
Server 1
Firewall
Protocol
Analyzer
Workstations
Protocol
Analyzer
Example Test Script (continued)
Test objective. Assess the firewalls capability to
block Application ABC traffic, during both light
and moderately heavy load conditions.
Acceptance criterion. The firewall should block
the TCP SYN request from every workstation on
Network A that attempts to set up an Application
ABC session with Server 1 on Network B. The
firewall should send each workstation a TCP RST
(reset) packet.
Example Test Script (continued)
1. Start capturing network traffic on the protocol analyzer
on Network A.
2. Start capturing network traffic on the protocol analyzer
on Network B.
3. Run Application ABC on a workstation located on
Network A and access Server 1 on Network B.
4. Stop capturing network traffic on the protocol analyzers.
5. Display data on Network As protocol analyzer and
verify that the analyzer captured a TCP SYN packet
from the workstation. Verify that the network layer
destination address is Server 1 on Network B, and the
destination port is port 1234 (the port number for
Application ABC). Verify that the firewall responded to
the workstation with a TCP RST packet.
Example Test Script (continued)
6. Display data on Network Bs protocol analyzer and
verify that the analyzer did not capture any Application-
ABC traffic from the workstation.
7. Log the results of the test in the project log file.
8. Save the protocol-analyzer trace files to the project trace-
file directory.
9. Gradually increase the workload on the firewall, by
increasing the number of workstations on Network A
one at a time, until 50 workstations are running
Application ABC and attempting to reach Server 1.
Repeat steps 1 through 8 after each workstation is added
to the test.
Tools for Testing a Network
Design
Network-management and monitoring tools
Traffic generation tools
Modeling and simulation tools
QoS and service-level management tools
http://www.topdownbook.com/tools.html
Summary
An untested network design probably wont
work.
Its often not practical to test the entire design.
However, by using industry testing services
and tools, as well as your own testing scripts,
you can (and should) test the complex, risky,
and key components of a network design.
Review Questions
Why is it important to test your network
design?
Why is regression testing important?
What are some characteristics of well-written
acceptance criteria?
What are some characteristics of a good
network simulation tool?