Stephane is a customer of Packet Design. In this three-part blog series, he discusses how traditional approaches to network optimization can be improved upon with automation. In this first post, he explains two temporary network optimization scenarios requiring traffic engineering.
Network optimization is a critical piece of the work of capacity planning teams. It includes not only mid- and long-term planning by analyzing traffic pattern trends but also reactive actions when something goes wrong in the live network. Consider this example: Service provider “A” operates an IP/MPLS international network, leasing long-haul links to underlay carriers (e.g., WDM, EoMPLS). The quality of the links provided by those carriers may change. For instance, the latency may change due to a rerouting on the underlay network or some packet loss may occur due to errors on the underlay network. As a consequence, the SLA provided by operator “A” may not be guaranteed anymore, requiring the engineering/capacity planning team to find a solution as quickly as possible to restore the quality of experience for its customers.
Traffic engineering techniques are usually used in this kind of situation to reroute the traffic on a more suitable path that will guarantee the SLA. Due to the complexity of the network design and of the customers’ flow matrices, placing traffic engineering tunnels in the network is not an easy task. It should be done with real care to prevent any side effects that would make the situation even worse. Online or offline planning tools are often required to simulate the placement of the traffic engineering tunnels. And to make the simulation accurate, it is necessary to import the network traffic matrix and the performance metrics (link delay, loss, jitter, etc.).
Typically, human engineers perform multiple simulations with the goal of finding the best solution. The definition of the best solution may depend on the operator constraints, but it is often a tradeoff between performance achieved and the number of tunnels to be implemented. From an operational point of view, each added tunnel brings more complexity in the network. People need to keep track of the tunnels that have been implemented and, when the issue has been solved, remove those tunnels from the network. Otherwise they may cause some trouble in the future.
When the solution has been found, an order is usually sent to the network provisioning/support teams to set up the tunnels in the network. This global process takes a lot of time, from the detection of the issue to the resolution after the implementation of the new tunnels, to the removal of the tunnels.
Another example of temporary network optimization is a request from a customer to increase the bandwidth between two of its sites, just for the duration of an event. To accommodate the bandwidth requirement, the operator may implement a traffic engineering tunnel following a particular path. Bandwidth-based routing is always tricky, because it requires an accurate view of the bandwidth used on the network links: This is particularly true of networks mixing LDP traffic and RSVP-TE traffic.
To improve these scenarios, the operator will need to automate the processes involved, from the detection of the problem or the initiation of the customer request, to the implementation of the solution. In my next post, I will discuss a prototype to automate network optimization.