  In this paper, we present a new traffic engineering (TE) software framework
to analyze, configure, and optimize (with the aid of a linear programming
solver) a network for service provisioning. The developed software tool is
based on our new data-driven traffic engineering approach that analyzes a large
volume of network configuration data generated given the user input. By
analyzing the data, one can then make efficient decisions later when designing
a traffic engineering solution. We focus on three well-known traffic
engineering objective functions: minimum cost routing (MCR), load balancing
(LB), and average delay (AD). With this new tool, one can answer numerous
traffic engineering questions. For example, what are the differences among the
three objective functions? What is the impact of an objective function on link
utilization? How many candidate paths are enough to achieve optimality or
near-optimality with respect to a specific objective. This new software tool
allows us to conveniently perform various experiments and visualize the results
for performance analysis. As case studies, this paper presents examples that
answer the questions for two traffic engineering problems: (1) how many paths
are required to obtain a solution that is within a few percent from the optimal
solution and whether that number is fixed for any network size? (2) how the
choice of single-path/multi-path routing affects the load in the network? For
the first problem, it turns out that the number of paths needed to achieve
optimality increases as the number of links in the network increases.
