• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar
  • Skip to footer navigation

The Geek Diary

  • OS
    • Linux
    • CentOS/RHEL
    • VCS
  • Interview Questions
  • Database
    • MariaDB
  • DevOps
    • Docker
    • Shell Scripting
  • Big Data
    • Hadoop
    • Cloudera
    • Hortonworks HDP

‘nestat -s’ showing a large number for “packet reassembles failed” errors in CentOS/RHEL

by admin

The Problem

System exhibits some performance degradation. Checking with netstat shows very large (and rising) numbers of “packet reassembles failed” similar to:

# netstat -s | fgrep reassembles
353357449 packet reassembles failed
353359152 packet reassembles failed
353360314 packet reassembles failed
353361547 packet reassembles failed
353363020 packet reassembles failed
353364064 packet reassembles failed

The Solution

In general, IP packet reassembles may fail if:

  1. There is not enough memory to reassemble the IP fragments.
  2. A timeout occurs while waiting for the remaining ip fragments.
  3. The IP fragments get dropped or corrupted.

This post addresses issues #1 and #2.

Regarding Timeouts

Check the current ipfrag_time:

# cat /proc/sys/net/ipv4/ipfrag_time
30

Consider increasing this to 60:

# echo "60" > /proc/sys/net/ipv4/ipfrag_time

If this is successful, it can be made permanent by adding the above echo command to /etc/rc.local

Regarding Memory

The documentation says:

ipfrag_high_thresh - INTEGER
  Maximum memory used to reassemble IP fragments. When
  ipfrag_high_thresh bytes of memory is allocated for this purpose,
  the fragment handler will toss packets until ipfrag_low_thresh
  is reached.

ipfrag_low_thresh - INTEGER
  See ipfrag_high_thresh

Check the current ipfrag_high_thresh and ipfrag_low_thresh values:

ipfrag_high_thresh
4194304

ipfrag_low_thresh
3145728

In this case start by increasing ipfrag_high_thresh to double the current value. i.e:

# echo "8388608" > /proc/sys/net/ipv4/ipfrag_high_thresh

Again, if the result is satisfactory, add this to /etc/rc.local.

Filed Under: CentOS/RHEL 5, CentOS/RHEL 6, Linux

Some more articles you might also be interested in …

  1. fprintd-delete Command Examples in Linux
  2. CentOS / RHEL : How to view the commands executed in yum history command output
  3. Examples of creating command alias in different shells
  4. How to interpret Linux martian source messages
  5. Upgrading from CentOS/RHEL 7 to CentOS/RHEL 8 using Leapp
  6. lvcreate: command not found
  7. mount: command not found
  8. kscreen-console Command Examples in Linux
  9. repo-add: command not found
  10. How to Disable rpc.quotad Service in CentOS/RHEL

You May Also Like

Primary Sidebar

Recent Posts

  • gixy Command Examples
  • gitsome Command Examples
  • gitmoji Command Examples
  • gitlint Command Examples

© 2023 · The Geek Diary

  • Archives
  • Contact Us
  • Copyright