What is network optimization?
Network optimization is a set of tools and techniques used to improve network performance and reliability. As such, it’s not a “one-and-done” operation but an ongoing process. Business requirements dictate a certain level of performance, but time and budget often limit what you can and can’t tweak. So, you optimize within those constraints. You then continuously monitor the network to ensure you maintain the desired level of performance, then its a rinse and repeat as new needs and performance requirements arise.
Given the complexity of modern networks, there’s a lot that can and does impact performance. Let’s take a closer look at network optimization tips and tricks to get you up to speed (pun intended!) on this popular network engineering topic.
How is network optimization measured?
Measuring the effectiveness of your network optimization efforts boils down to measuring improvements in your network performance. As a result, most of the metrics associated with tracking network optimization mirror those related to network performance monitoring. The big difference is when measuring network optimization you start with a baseline of performance and make changes to improve it.
Let’s look at four of the most common metrics to help set a baseline for continuous monitoring in your network optimization efforts.
1. Latency and round-trip time
Latency and round-trip time (RTT) are closely related, and both deal with the speed of a network. Latency is the time it takes data to go from source to destination. RTT is the time it takes for data to go from source to destination and back again. Common reasons for high levels of latency and long round-trip times include:
- Geographical distance
- Network device bottlenecks (e.g. an overworked router with high CPU or memory utilization)
- Network transmission mediums (e.g. satellite connections tend to have a lot more latency than fiber).
Decreasing the network latency is a key network optimization technique.
In technical terms, jitter is “the absolute value of the difference between the forwarding delay of two consecutive received packets belonging to the same stream” (source: RFC4689). In simple terms, jitter is an uneven or unpredictable flow of data packets, often calculated by taking the average of the difference in consecutive ping responses. The lower the number, the better.
For example, suppose we got the following response from a ping of a network device:
>ping pepperneggrouter.local Pinging pepperneggrouter.local with 32 bytes of data: Reply from 10.11.12.13: bytes=32 time=21ms TTL=58 Reply from 10.11.12.13: bytes=32 time=15ms TTL=58 Reply from 10.11.12.13: bytes=32 time=10ms TTL=58 Reply from 10.11.12.13: bytes=32 time=35ms TTL=58
Given response times of 21ms, 15ms, 10ms, and 35ms we get a jitter value of 12ms.
Network congestion, Wi-Fi connectivity issues, and faulty or overloaded network hardware are common causes of jitter. Too much jitter can wreak havoc on network performance. In particular, jitter can make VoIP calls or teleconferences effectively unusable.
3. Packet errors, packet discards, and packet loss
We’ve taken a deep dive into packet errors, packet discards, and packet loss before, so let’s just quickly review:
- Packet errors refer to issues with network packets that are corrupt or incorrectly formatted.
- Packet discards occur when received packets are dropped at their destination, usually because the packets have an error or the network device is overloaded.
- Packet loss occurs when a packet is dropped before it reaches its destination.
Because dropped packets either need to be retransmitted (with TCP) or are simply lost (with UDP), keeping these three related network issues to a minimum can go a long way in optimizing network performance.
4. Bandwidth and throughput
Although the terms bandwidth and throughput are often used interchangeably, they’re not the same thing. Network throughput vs bandwidth boils down to this: bandwidth is the theoretical maximum amount of data that can be transmitted, while throughput is the amount of data actually flowing between network devices.
When it comes to network optimization, your available bandwidth and actual throughput can have a major impact. For example, large file transfers, full server backups, and high-definition video streaming can all be bandwidth-intensive tasks and will slow to a crawl if your network’s throughput isn’t up to par.
While you may jump to the conclusion that more bandwidth always leads to a more optimized network, there’s actually a balance between throughput and bandwidth to get the highest ROI out of your network investments (See: “Network device bottlenecks” below).
What affects network optimization?
Now that we’ve covered what metrics matter when baselining and monitoring your network optimization efforts, let’s talk about the aspects of your network that impact them. As you might expect, there’s a wide range of variables that come into play. Understanding where to look can make your optimization efforts more effective. Here are some of the items that can affect network optimization:
- Network size. The number of network devices, endpoints, users, and applications on your network can have a major impact on bandwidth utilization and network data flows.
- Geographical distance. For networks that span large geographical distances, speed-of-light problems are very much a real thing.
- Last and middle-mile problems. With remote work, VPN, and cloud computing, network engineers have to be able to account for problems that may arise in the last and middle miles between endpoints. The last mile is the last (or first) hop between an ISP and the destination (or source) of data. The middle mile is the infrastructure (usually belonging to one or more ISPs) between the first and last mile.
- Wired and wireless connectivity issues. The physical medium used for network data transmission can impact network performance. Defective or loose cables can be a nightmare to troubleshoot and create connectivity problems. Similarly, spotty Wi-Fi coverage can impact performance and simple Wi-Fi repeaters can create network congestion.
- Network device bottlenecks. In some cases, older network devices simply don’t have the bandwidth available to match the rest of the network (e.g. a 10/100Mb switch on a gigabit network). In other cases, routers and switches can experience a variety of CPU, memory, and backplane utilization issues that can create bottlenecks. Security appliances and packet inspection can also add latency to network traffic.
- Network design and configuration. Your network design and configuration drive how your network performs. Do you use VPN, MPLS, or SD-WAN for site-to-site connectivity? Does your network gear support jumbo frames? Do you forgo a distribution layer when designing your network topology? Is all your network traffic routed through a security appliance? Did someone misconfigure the spanning tree protocol? All these variables and more can come into play from a network performance and optimization perspective.
- Types of network traffic. The type of traffic generated by the users, applications, and services on your network can impact both how your network performs and what you can do to optimize it. For example, TCP is inherently less efficient than UDP and generates more traffic. VoIP and other real-time communications are very latency-sensitive, so those apps will generate complaints quickly if your network isn’t performing well. Jumbo frames can help you optimize performance, but not everything supports them.
- Change/patch management. This one can be easy to overlook, but did you test that new hardware or those patches before you deployed them? If not, there is some risk that the changes have unintended consequences. Simply put: it’s never a good idea to test something for the first time in production.
How to measure network traffic
To effectively optimize your network, you need to monitor your traffic for two reasons:
- It allows you to get a baseline of current performance.
- It allows you to proactively identify trends, and issues, and measure improvements over time.
While manual tools like ping, TCPing, and netperf can be great ways to perform ad-hoc testing and troubleshooting, using a full-fledged network monitoring solution can help you effectively measure your network performance over time. Solutions that leverage network monitoring protocols like SNMP, WMI, and the various flow protocols can often track, report on, and alert against a wide variety of network performance metrics.
Generally, after performing network discovery with a network monitoring solution, you’ll be able to configure alerts and reports to meet your network optimization goals. In some cases, the same tools that offer network monitoring functionality also provide baked-in network documentation software that help with capacity planning, network design, and troubleshooting in the event a bottleneck or outage occurs.
Reliable network optimizations techniques
You’re now up to speed on what network optimization is, what you should measure, variables to be on the lookout for, and the tools you can use to help you optimize your network. But, from a practical perspective, where do you begin?
Once you know you want to optimize your network you can start by using networking monitoring tools to create a baseline of current network performance. Based on the metrics, reports, and network maps that come out of that exercise, you should be able to make some informed decisions about where to focus your efforts.
It often helps to have a frame of reference for what “good” metrics look like. In large part, your business goals will drive what is ultimately acceptable. For example, if all you need to do is support email and print services you can be much more tolerant of latency and jitter than a high-speed trading firm.
Remember to be realistic in your goals, as incremental gains in network optimization metrics require more budget. Optimize for your business needs, not to have the “fastest and best.”
That said, below are a few good reference points for what “good” network performance metrics look like. These stats are based on recommendations for Microsoft Teams and Zoom because applications like these are some of the most common performance-sensitive apps around:
- End-to-end latency under 50ms
- Round-trip time of less than 100ms
- Jitter of less than 30ms
- Packet loss of less than 1%
Remember, for these numbers, lower = better.
While you can get away with bandwidth of about 2Mbps for Teams, Zoom, and other similar communications tools, supporting other use cases such as large file transfers and downloads, you’ll often want to go higher than that. An inventory of the applications and use cases you need to support will help you make the right choice about bandwidth.
8 network optimization tools and techniques to try
Now that we’ve set some expectations, let’s look at specific network optimization techniques you can use to optimize network performance:
- QoS (Quality of Service). QoS allows you to prioritize certain network traffic and is one of the textbook network optimization tools. By prioritizing critical latency-sensitive services (like VoIP) over less sensitive services (like email), you can improve overall network performance and user experience.
- Load balancing. Load balancing across different network servers and network devices allows you to mitigate the likelihood of a single device becoming a bottleneck.
- TCP optimization. With TCP optimization, routing devices fine-tune how TCP traffic is processed to reduce overall RTT.
- Compression. Many network devices and optimizer appliances offer a payload compression functionality. As the name implies, payload data is compressed to reduce the amount of data that needs to be sent over the network and lowers buffer utilization.
- SD-WAN. Many SD-WAN solutions offer a variety of network optimization features that can improve the speed and efficiency of routing network traffic, particularly in the case of cloud workloads.
- Router buffer tuning. When there are bursts of network traffic, router buffers can become overloaded, leading to dropped packets. With router buffer tuning you can tweak and optimize how buffer memory is allocated to mitigate these problems.
- Data caching. The caching of frequently accessed data — like what Content Delivery Networks (CDN) do for web servers — can have a significantly positive impact on bandwidth consumption and network device resource utilization.
- Network design and hardware improvements. In some cases, you may need to change your network topology or hardware to address bottlenecks and performance issues. For example, maybe you’re inefficiently routing traffic across VLANs and need to change your network design. Or maybe an old router or switch is creating a bottleneck and just needs to be replaced. From a cabling perspective, you might need to upgrade from CAT5 to CAT5e or better to support gigabit speeds.
It’s important to keep in mind that using the right tool for the job is important when it comes to network optimization. In some cases, you may just need to make minor tweaks and implement QoS to get your network performance where you want it. In others, you may need to do a full hardware refresh. That’s why quantifying the current state of your network and monitoring it in real-time is so important, as it allows you to make informed decisions about where to optimize.
Long-Term Network Optimization Benefits
We all want our networks to be faster, but it’s important to keep the business benefits of network optimization in mind. Doing so allows you to balance the time, money, and resource investments against the upside of network optimization. Key benefits of network optimization include:
- Improved productivity and user experience. The faster users can access resources, transfer files, and connect to important meetings and video streams, the more productive they can be. Conversely, every minute spent waiting or troubleshooting connectivity issues costs money and makes everyone less productive.
- Increased network infrastructure ROI (return on investment). When you optimize your network, you’re getting more bang for your buck when it comes to your network infrastructure. Effective traffic shaping and QoS may allow you to support latency-sensitive apps without an early upgrade for your network backbone hardware.
- Enhanced reliability and predictability. While variety is the spice of life, it isn’t ideal for network performance. Network optimization can improve your network’s reliability and reduce unexpected surprises. When users can depend on reliable and predictable network connections and IT can focus on things other than triaging network issues, businesses run more smoothly. Additionally, reliable and predictable network performance can help inform network design decisions and even make it easier for network security appliances to detect malicious behavior.
Remember who and what your network was built for – to support the business and enable your end users to be productive. Network optimization is a continuous process, and following these techniques will enable you to deliver a well-performing network to the business and keep your users happy. If you’re not sure where to start, start with Auvik today to get visibility into your network infrastructure and start setting your baseline.
Your Guide to Selling Managed Network Services
Get templates for network assessment reports, presentations, pricing & more—designed just for MSPs.
Thanks a lot
This is an excellent article on network optimization. I will be looking to read additional articles by Steve Petryschuk. Thank you!