21

I'm seeing very high RX dropped packets in the output of ifconfig: Thousands of packets per second, an order of magnitude more than regular RX packets.

wlan0     Link encap:Ethernet  HWaddr 74:da:38:3a:f4:bb  
          inet addr:192.168.99.147  Bcast:192.168.99.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:31741 errors:0 dropped:646737 overruns:0 frame:0
          TX packets:18424 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:90393262 (86.2 MiB)  TX bytes:2348219 (2.2 MiB)

I'm testing WiFi dongles. Both have this problem, and the one with the higher drop rate actually performs better in ping floods. The one with low dropped packets suffers from extreme Ping RTTs, while the other never skips a beat.

  • What does Linux consider a dropped packet?
  • Why am I seeing so many of them?
  • Why doesn't it seem to affect performance?

There are lots of questions around with answers that say a dropped packet could be one of the following but that doesn't help me very much, because those possibilities don't seem to make sense in this scenario.

1
  • The reason you are seeing dropped can be various. The most obvious one is that packets went through the hardware filtering, and still ended up not intended for the host. Multicast for instance.
    – ardje
    Jul 12, 2018 at 11:44

2 Answers 2

15

Packet Dropped seen from ifconfig could be due to many reasons, you should dig deeper into NIC statistics to figure out real reason. Below are some general reasons

  • NIC ring buffers getting full and unable to cope-up with incoming bursts of traffic
  • CPU receiving NIC interrupts is very busy and unable to process
  • some cable/hardware/duplex issues
  • some bug in NIC driver

Look at the output of

  • ethtool -S wlan0
  • iwconfig wlan0

and the content of /proc/net/wireless for any further information.

5
  • 2
    iwconfig wlan0 does not mention anything related to dropped packets, and all of its information seems normal, ethtool -S wlan0 says no stats available, and /proc/net/wireless does not exist.
    – PythonNut
    May 26, 2015 at 0:26
  • what distribution of Linux are you running and what card/driver?
    – VenkatC
    May 26, 2015 at 0:49
  • I'm running Debian/Raspbian on a Raspberry Pi. The driver is Realtek Semiconductor Corp. RTL8188CUS 802.11n WLAN Adapter.
    – PythonNut
    May 26, 2015 at 0:50
  • Thanks, could you post output of iwconfig here? The issue here could be specific to that driver. I have not worked with this card/driver,hence I could not provide any insight. but looking at the driver, some tuning related to power management has helped others achieve better performance .. for ex: like raspberrypi.stackexchange.com/questions/11713/…
    – VenkatC
    May 26, 2015 at 2:02
  • Google points to some issues with driver github.com/OpenELEC/OpenELEC.tv/issues/3042 and some more useful info blog.stuffedcow.net/2014/04/rtl8192cu-and-linux-3-13-10 - it more sounds like driver related
    – VenkatC
    May 26, 2015 at 2:16
-1

For our case with the same issue with RX dropping packets due to IP address value is larger than Netmask value (ex: 17.229.24.266 vs 255.255.255.0, 266 > 255)

BBui 3/3/2020

2
  • Welcome to the site. Are you really sure about the example you have given? IPv4 addresses can not contain any field with value larger than 255 as they are decimal representation of single bytes. Also, please add a few words of explanation why such a configuration would result in RX dropped packets instead of a different error behaviour.
    – AdminBee
    Mar 4, 2020 at 8:01
  • Old thread but IP addresses are just 32-bit ints. The dotted-decimal representation is a convenience. 17.229.24.266 is just another way to say 17.229.25.10. Try ping 2130706433.
    – doneal24
    Jan 22, 2022 at 18:48

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .