What is packet loss?
Packet loss occurs when one or more transmitted data packets fail to arrive at their destination. This can cause noticeable performance issues for all types of digital communications.
A packet is a small unit of data that a network protocol routes between an origin and a destination on the internet or any other packet-switched network. Network packets hold small amounts of data that typically include information such as the source and destination address, protocols or identification numbers. From sending emails to downloading videos, every internet activity requires the transfer of packets.
When packets fail to reach their destination, end users may experience disruptions such as slow service or loss of network connectivity. For home network users, the slower service or network loss can create a poor user experience; and for a business, network issues could affect day-to-day operations.
Typically, applications that rely on real-time packet processing -- such as video calling and audio-based programs -- will suffer the most when undergoing packet loss.
Packet loss is typically caused either by errors in data transmission or network congestion. Packet loss rate is expressed in percentages, calculated as the number of packets lost compared to the total number sent.
What are the causes of packet loss?
The causes of packet loss include inadequate signal strength at the destination, natural or human-made interference, excessive system noise, software corruption or overburdened network nodes. Often more than one of these factors is involved. Additional causes include the following:
- Network congestion. When a network reaches its maximum capacity, its connection may fall far enough behind that it will ignore or discard incoming packets so it can catch back up. An application may be able to resend the lost data packets in the case of network congestion.
- Network hardware. Old and outdated network infrastructure can slow down network traffic enough to cause packet loss. This can happen to firewalls, modems and routers. This hardware should be updated or replaced.
- Software bugs. Malfunctioning software could introduce bugs into a network, leading to unexpected behaviors, including packet loss. The software should be updated, if possible.
- Security breaches. In denial-of-service attacks, hackers may cause a sudden and sharp increase in packet loss. The hacker's goal is to flood a system with so many requests that the network crashes. The victim's resources are so overwhelmed that it makes it difficult or impossible for anyone else to access them. An unusual spike in packet loss could be a sign of a cyber attack.
In cases where the cause cannot be remedied, packet loss concealment may be used to minimize the effects of lost packets.
What are the effects of packet loss?
The effects of packet loss are felt as network performance drops and include the following:
- Lack of communication quality. Real-time applications, namely voice over IP (VoIP), experience jitter and frequent gaps in received speech. Packet losses less than 2% may be noticeable.
- Reduced throughput. Packet loss reduces throughput Some transport layer protocols interpret loss as congestion. As such, the protocol adjusts its transmission rate to avoid the perceived congestion.
- Less secure communication. Packet loss can provide low-priority backdoors so cybercriminals can attack. VoIP applications can be hacked this way.
- Loss of encrypted data. Hacked systems due to packet loss may enable cybercriminals to circumvent security measures and steal encrypted data.
- Packet drops. Packets experiencing the worst delays may be dropped, reducing overall latency.
- Incomplete data. In the worst cases, packet loss can cause severe mutilation of received data, broken-up images, unintelligible speech or even the complete absence of a received signal.
In addition, the effects of packet loss will differ depending on the protocol used:
- Transmission Control Protocol. TCP is designed to negate packet loss. If a packet is lost, TCP can retransmit it. The second transmission picks up lost packets and reconstructs the data stream. However, this does not mean there is no slowdown involved. The network may feel slower, as it still takes time to retransmit data.
- User Datagram Protocol. UDP can be used in some network architectures, but it is unable to retransmit packets, so data must be manually re-sent. Instead, UDP connections can be used to terminate the network connection when there is packet loss.
Different packet loss levels are acceptable in different scenarios. For example, less than a 2% packet loss may cause a VoIP call to be garbled, whereas up to a 10% packet loss may be acceptable for small downloads.
How can you detect packet loss?
One easy way to detect packet loss is to have TCP detect it, since TCP is designed to negate packet loss.
If a user, however, wants to detect packet loss, then they can use a diagnostic tool such as a ping (Packet Internet or Inter-Network Groper) test. The ping network utility program, which is built into every operating system, sends special packets to a given destination and then watches to see if the node at the far end responds correctly. The best way to measure packet loss is to send a large number of pings to the destination and look for the failed responses. For example, if a person pings a destination 50 times and gets only 49 responses, they can estimate packet loss at about 2%.
How do you fix packet loss?
There is no one fix-all solution to packet loss, since it can be caused by a number of issues. As such, there are different methods to fix any occurrences:
- Increase bandwidth. If the issue is only with network congestion, then increasing bandwidth enables more requests to be handled at once, avoiding further delays.
- Perform deep packet inspection. DPI is a type of packet filtering that locates, identifies, classifies, reroutes or blocks packets with specific data or code payloads. This can help network congestion by streamlining the flow of network traffic. For example, packets can be tagged as high priority and then be routed ahead of low-priority packets.
- Update hardware and software. Old hardware and software can slow down network traffic and cause packet loss. Microsoft Windows Task Manager may help a network administrator identify software that is taking up too much bandwidth. Updating hardware and software can also help avoid introducing additional bugs.
- Use wired connections. Compared to wireless networks, wired networks are less likely to have data packets get lost in transmission since the wired connection is more stable. However, be sure the wired Ethernet cables have not deteriorated, as faulty wires can adversely affect packet transmission.
- Reduce opposing obstructions. Interfering signals from Bluetooth devices, such as headphones and keyboards, could cause static. Disconnecting these devices may help.
How can you prevent packet loss?
One way to prevent packet loss or keep it at acceptable levels is by monitoring the network's performance. Some monitoring tools include sensors that isolate and fix packet loss, while others offer deep packet inspection tools. If an organization scans its devices regularly, they should be able to handle network loads at capacity.
Learn more about how packet loss tests work and how to perform one.