丢包(Packet loss)是指一个或多个数据包(packet)的资料无法透过网络到达目的地。丢包与位元错误(bit error)与噪声(noise)所造成的虚假的数据包(spurious packets)是三个最主要的数字通信错误的原因。

成因

丢包可能原因是多方面,包括在网络中由于多路径衰落(multi-path fading)所造成的信号衰减(signal degradation),或是因为通道阻塞造成的丢包(packet drop),再者损坏的数据包(corrupted packets)被拒绝通过,或有缺陷的网络硬件,网络驱动程式故障都可能造成丢包。

此外,丢包也受信号的信噪比(SNR)的影响。

影响

丢包可能造成流媒体技术、VoIP在线游戏视频会议抖动(jittering),并会一定程度上影响到其他的网络应用。要特别注意的是,丢包不一定表示有问题,在某种程度上是有可能被传输双方所接受的[1]

丢包复原

一些网络传输协议如TCP有提供可靠的数据包交付。在丢包发生时,接收器可以要求发送方重传或自动地重新发送。TCP可以复原丢包,但经常发生的重传已丢失数据包可能导致网络吞吐量下降。

用户数据报协议(UDP)协议本身没有规定恢复丢失的数据包。因此使用UDP的应用软件需要自行定义机制来处理数据包的丢失问题。

注释

  1. ^ Packet loss or latency at intermediate hops. (HTTP). [2007-02-25]. (原始内容存档于2014-11-04).