Skip to content

A suite of utilities simplilfying linux networking stack performance troubleshooting and tuning.

License

Notifications You must be signed in to change notification settings

strizhechenko/netutils-linux

Repository files navigation

netutils-linux

travis landscape pypi license

It's a useful utils to simplify Linux network troubleshooting and performance tuning, developed in order to help Carbon Reductor techsupport and automate the whole linux performance tuning process out of box (ok, except the best RSS layout detection). It's now in production usage with 300+ deployment and save us a lot of time with hardware and software settings debugging. Should work well with Python 2.6 and Python 2.7. Inspired by packagecloud's blog post.

Installation

pip install netutils-linux

Utils

Monitoring

All these top-like utils don't require root priveledges or sudo usage. So you can install and use them as non-priveledged user if you care about security.

pip install --user netutils-linux

Brief explanation about highlighting colors for CPU and device groups: green and red are for NUMA-nodes, blue and yellow for CPU sockets. Screenshots are taken from different hosts with different hardware.

network-top

Most useful util in this repo that includes all top-like utils and allow to monitor interrupts, soft interrupts, network processing statistic for devices and CPUs.

https://cloud.githubusercontent.com/assets/3813830/26570951/acacf18c-452c-11e7-8fe7-5d0952f39d8b.gif

irqtop

  • Show you a rate of interrupts
  • based on /proc/interrupts file
  • Hides the interrupts with small rate to show a better picture.

https://user-images.githubusercontent.com/3813830/26898412-470d2ddc-4be5-11e7-9b57-8bb3248db896.gif

softirq-top

  • Show you a rate of receiving/transmitting packets
  • Based on /proc/softirqs

https://user-images.githubusercontent.com/3813830/26898413-470e6b98-4be5-11e7-8e11-c0caabfb8f5f.gif

link-rate

  • Shows how many packets/bytes network interface receives/transmite and how many errors happened
  • Based on /sys/class/net/XXX/statistic/YYY files

https://user-images.githubusercontent.com/3813830/26898411-4707ebec-4be5-11e7-8013-aff315bc07d0.gif

softnet-stat-top

Shows various statistic of packets processing per CPU.

https://user-images.githubusercontent.com/3813830/26898415-4726de3a-4be5-11e7-8003-7b4bb358111c.gif