Packet loss occurs when one or more
packets of data travelling across a
computer network
A computer network is a collection of communicating computers and other devices, such as printers and smart phones. In order to communicate, the computers and devices must be connected by wired media like copper cables, optical fibers, or b ...
fail to reach their destination. Packet loss is either caused by errors in data transmission, typically across
wireless network
A wireless network is a computer network that uses wireless data connections between network nodes. Wireless networking allows homes, telecommunications networks, and business installations to avoid the costly process of introducing cables int ...
s,
or
network congestion.
[Kurose, J.F. & Ross, K.W. (2010). ''Computer Networking: A Top-Down Approach''. New York: Addison-Wesley.] Packet loss is measured as a percentage of packets lost with respect to packets sent.
The
Transmission Control Protocol
The Transmission Control Protocol (TCP) is one of the main communications protocol, protocols of the Internet protocol suite. It originated in the initial network implementation in which it complemented the Internet Protocol (IP). Therefore, th ...
(TCP) detects packet loss and performs retransmissions to ensure
reliable messaging. Packet loss in a TCP connection is also used to
avoid congestion and thus produces an intentionally reduced
throughput
Network throughput (or just throughput, when in context) refers to the rate of message delivery over a communication channel in a communication network, such as Ethernet or packet radio. The data that these messages contain may be delivered ov ...
for the connection.
In real-time applications like
streaming media
Streaming media refers to multimedia delivered through a Computer network, network for playback using a Media player (disambiguation), media player. Media is transferred in a ''stream'' of Network packet, packets from a Server (computing), ...
or
online games, packet loss can affect a user's
quality of experience (QoE).
Causes
The
Internet Protocol
The Internet Protocol (IP) is the network layer communications protocol in the Internet protocol suite for relaying datagrams across network boundaries. Its routing function enables internetworking, and essentially establishes the Internet.
IP ...
(IP) is designed according to the
end-to-end principle
The end-to-end principle is a design principle in computer networking that requires application-specific features (such as reliability and security) to be implemented in the communicating end nodes of the network, instead of in the network itse ...
as a
best-effort delivery service, with the intention of keeping the logic
routers must implement, as simple as possible. If the network made
reliable delivery guarantees on its own, that would require
store and forward infrastructure, where each router devotes a significant amount of storage space to packets while it waits to verify that the next node properly received them. A reliable network would not be able to maintain its delivery guarantees in the event of a router failure. Reliability is also not needed for all applications. For example, with live
streaming media
Streaming media refers to multimedia delivered through a Computer network, network for playback using a Media player (disambiguation), media player. Media is transferred in a ''stream'' of Network packet, packets from a Server (computing), ...
, it is more important to deliver recent packets quickly than to ensure that stale packets are eventually delivered. An application or user may also decide to retry an operation that is taking a long time, in which case another set of packets will be added to the burden of delivering the original set. Such a network might also need a
command and control protocol for congestion management, adding even more complexity.
To avoid all of these problems, the Internet Protocol allows for routers to simply drop packets if the router or a network segment is too busy to deliver the data in a timely fashion. This is not ideal for speedy and efficient transmission of data, and is not expected to happen in an uncongested network.
Dropping of packets acts as an implicit signal that the network is congested, and may cause senders to reduce the amount of bandwidth consumed, or attempt to find another path. For example, using perceived packet loss as feedback to discover congestion, the
Transmission Control Protocol
The Transmission Control Protocol (TCP) is one of the main communications protocol, protocols of the Internet protocol suite. It originated in the initial network implementation in which it complemented the Internet Protocol (IP). Therefore, th ...
(TCP) is designed so that excessive packet loss will cause the sender to throttle back and stop flooding the bottleneck point with data.
Packets may also be dropped if the
IPv4 header checksum or the Ethernet
frame check sequence indicates the packet has been corrupted. Packet loss can also be caused by a
packet drop attack.
Wireless networks
Wireless network
A wireless network is a computer network that uses wireless data connections between network nodes. Wireless networking allows homes, telecommunications networks, and business installations to avoid the costly process of introducing cables int ...
s are susceptible to a number of factors that can corrupt or lose packets in transit, such as
radio frequency interference (RFI),
radio signals that are too weak due to distance or
multi-path fading, faulty networking hardware, or faulty network drivers.
Wi-Fi
Wi-Fi () is a family of wireless network protocols based on the IEEE 802.11 family of standards, which are commonly used for Wireless LAN, local area networking of devices and Internet access, allowing nearby digital devices to exchange data by ...
is
inherently unreliable and even when two identical
Wi-Fi
Wi-Fi () is a family of wireless network protocols based on the IEEE 802.11 family of standards, which are commonly used for Wireless LAN, local area networking of devices and Internet access, allowing nearby digital devices to exchange data by ...
receivers are placed within close proximity of each other, they do not exhibit similar patterns of packet loss, as one might expect.
Cellular network
A cellular network or mobile network is a telecommunications network where the link to and from end nodes is wireless network, wireless and the network is distributed over land areas called ''cells'', each served by at least one fixed-locatio ...
s can experience packet loss caused by, "high
bit error rate (BER), unstable channel characteristics, and user mobility."
TCP's intentional throttling behavior prevents wireless networks from performing near their theoretical potential transfer rates because unmodified TCP treats all dropped packets as if they were caused by
network congestion, and so may throttle
wireless network
A wireless network is a computer network that uses wireless data connections between network nodes. Wireless networking allows homes, telecommunications networks, and business installations to avoid the costly process of introducing cables int ...
s even when they aren't actually congested.
Network congestion
Network congestion is a cause of packet loss that can affect all types of networks. When content arrives for a sustained period at a given router or network segment at a rate greater than it is possible to send through, there is no other option than to drop packets.
If a single router or link is constraining the capacity of the complete travel path or of network travel in general, it is known as a
bottleneck. In some cases, packets are intentionally dropped by routing routines, or through network dissuasion technique for operational management purposes.
Effects
Packet loss directly reduces
throughput
Network throughput (or just throughput, when in context) refers to the rate of message delivery over a communication channel in a communication network, such as Ethernet or packet radio. The data that these messages contain may be delivered ov ...
for a given sender as some sent data is never received and can't be counted as throughput. Packet loss indirectly reduces throughput as some transport layer protocols interpret loss as an indication of congestion and adjust their transmission rate to avoid congestive collapse.
When reliable delivery is necessary, packet loss increases
latency due to additional time needed for retransmission. Assuming no retransmission, packets experiencing the worst delays might be preferentially dropped (depending on the
queuing discipline used), resulting in lower latency overall.
Measurement
Packet loss may be measured as ''frame loss rate'' defined as the percentage of frames that should have been forwarded by a network but were not.
Acceptable packet loss
Packet loss is closely associated with
quality of service
Quality of service (QoS) is the description or measurement of the overall performance of a service, such as a telephony or computer network, or a cloud computing service, particularly the performance seen by the users of the network. To quantitat ...
considerations. The amount of packet loss that is acceptable depends on the type of data being sent. For example, for
voice over IP
Voice over Internet Protocol (VoIP), also known as IP telephony, is a set of technologies used primarily for voice communication sessions over Internet Protocol (IP) networks, such as the Internet. VoIP enables voice calls to be transmitted as ...
traffic, one commentator reckoned that "
ssing one or two packets every now and then will not affect the quality of the conversation. Losses between 5% and 10% of the total packet stream will affect the quality significantly." Another described less than 1% packet loss as "good" for streaming audio or video, and 1–2.5% as "acceptable".
Diagnosis
Packet loss is detected by reliable protocols such as TCP. Reliable protocols react to packet loss automatically, so when a person such as a
network administrator needs to detect and diagnose packet loss, they typically use status information from network equipment or purpose-built tools.
The
Internet Control Message Protocol provides an ''echo'' functionality, where a special packet is transmitted that always produces a reply. Tools such as
ping,
traceroute,
MTR and
PathPing
The PathPing command is a command-line network utility included in Windows NT operating systems since Windows 2000 that combines the functionality of ping with that of tracert. It is used to locate spots that have network latency and network ...
use this protocol to provide a visual representation of the path packets are taking, and to measure packet loss at each
hop.
Many routers have status pages or logs, where the owner can find the number or percentage of packets dropped over a particular period.
Packet recovery for reliable delivery
Per the
end-to-end principle
The end-to-end principle is a design principle in computer networking that requires application-specific features (such as reliability and security) to be implemented in the communicating end nodes of the network, instead of in the network itse ...
, the Internet Protocol leaves responsibility for packet recovery through the retransmission of dropped packets to the endpoints - the computers sending and receiving the data. They are in the best position to decide whether retransmission is necessary because the application sending the data should know whether a message is best retransmitted in whole or in part, whether or not the need to send the message has passed, and how to control the amount of bandwidth consumed to account for any congestion.
Network transport protocols such as TCP provide endpoints with an easy way to ensure
reliable delivery of packets so that individual applications don't need to implement the logic for this themselves. In the event of packet loss, the receiver asks for retransmission or the sender automatically resends any segments that have not been acknowledged.
Although TCP can recover from packet loss, retransmitting missing packets reduces the
throughput
Network throughput (or just throughput, when in context) refers to the rate of message delivery over a communication channel in a communication network, such as Ethernet or packet radio. The data that these messages contain may be delivered ov ...
of the connection as receivers wait for retransmissions and additional bandwidth is consumed by them. In certain variants of TCP, if a transmitted packet is lost, it will be re-sent along with every packet that had already been sent after it.
Protocols such as
User Datagram Protocol
In computer networking, the User Datagram Protocol (UDP) is one of the core communication protocols of the Internet protocol suite used to send messages (transported as datagrams in Network packet, packets) to other hosts on an Internet Protoco ...
(UDP) provide no recovery for lost packets. Applications that use UDP are expected to implement their own mechanisms for handling packet loss, if needed.
Impact of queuing discipline
There are many
queuing disciplines used for determining which packets to drop. Most basic networking equipment will use
FIFO queuing for packets waiting to go through the bottleneck and they will drop the packet if the queue is full at the time the packet is received. This type of packet dropping is called
tail drop. Other full queue mechanisms include
random early detection and
weighted random early detection. Dropping packets is undesirable as the packet is either lost or must be retransmitted and this can impact real-time throughput; however, increasing the buffer size can lead to
bufferbloat which has its own impact on latency and jitter during congestion.
In cases where
quality of service
Quality of service (QoS) is the description or measurement of the overall performance of a service, such as a telephony or computer network, or a cloud computing service, particularly the performance seen by the users of the network. To quantitat ...
is
rate limiting a connection, e.g., using a
leaky bucket algorithm, packets may be intentionally dropped in order to slow down specific services to ensure available bandwidth for other services marked with higher importance. For this reason, packet loss is not necessarily an indication of poor connection reliability or signs of a bandwidth bottleneck.
See also
*
Bit slip
*
Collision (telecommunications)
*
Goodput
*
Packet loss concealment
*
Traffic shaping
Notes
References
{{Reflist
External links
Packet loss test- test your Internet connection for packet loss
Loss