Posts Tagged ‘analyzer’

horst version 3.0

Tuesday, February 15th, 2011
horst-spec1

horst version 3.0 is now officially released. It contains various improvements over the last release (2.0-rc1):

  • Spectrum Analyzer window for an overview of all channels
  • More realistic Usage (“AirTime”) calculation
  • Improved client/server support
  • Show retries
  • Fixes for big endian platforms
  • Deal with drivers which don’t report noise (mac80211)

The most important addition is the Spectrum Analyzer window which I have written about before. In this mode horst changes channels and shows an overview of the signal level, number of stations and usage for each channel – something like a rough spectrum analyzer.

Usage (what has also been called AirTime or busy time) calculation is now much more realistic, as it takes account of inter-frame spaces and the contention window now. Before the maximum usage was around 60% on a 100% busy channel, now it shows correctly as around 100%.

Networking (client/server) support is now usable. You can start horst in server mode on the device (e.g. horst -C -q) and connect from another device to see the horst interface via the network. Only one client is allowed at a time at the moment.

I also tried to clean up the user-interface a bit by removing some useless information and added retries instead. A high number of retries are a good indication of problems in a WLAN as they can eat up the available bandwith pretty fast.

More information on my horst page and download here.

Spectrum Analyzer for ‘horst’

Saturday, December 4th, 2010

One of the main initial goals of writing the horst tool (a small wireless lan analyzer) about 5 years ago was to have something like a poor-man’s “Spectrum Analyzer”, which can show the signal strength (and noise) of each wireless channel. Of course this is not a real Spectrum Analyzer, but close enough as it can give a good overview of what is going on on each channel. This information can be used to choose a good channel for a specific site, to optimize antenna placements and to debug interference from neighbouring channels or nodes. Unfortunately, allthough making small steps into this direction, I never got around to actually implement it so far, but recently David Rowe from the Dili Village Telco and Mesh Potato project picked up horst to implement the same idea. He extended horst, sent me the patches and wrote a nice and long blog article on his Mesh Potato Spectrum Analyser. I have now integrated his ideas into the horst code and added some of my own. Finally horst has as Spectrum Analyzer window!

And here is another view, which shows the MAC and IP address of each node.

This feature is still work in progress and I expect to make a few improvements and cleanups in the near future. Ideas and suggestions welcome! And finally, with this addition and some other improvements I made in the last few month (most notably the AirTime / Usage calculation is much more realistic now) I plan to make a stable release within the next two month.

As always, the latest version of horst can be downloaded here or followed by git.

horst

Saturday, April 17th, 2010

“horst” is a small, lightweight IEEE802.11 wireless LAN analyzer with a text interface. Its basic function is similar to tcpdump, Wireshark or Kismet, but it’s much smaller and shows different, aggregated information which is not easily available from other tools. It is mainly targeted at debugging wireless LANs with a focus on ad-hoc (IBSS) mode in larger mesh networks. It can be useful to get a quick overview of what’s going on on all wireless LAN channels and to identify problems.

  • Shows signal/noise values per station
  • Calculates channel utilization (“usage”) by adding up the amount of time the packets actually occupy the medium
  • “Spectrum Analyzer” shows signal levels and usage per channel
  • Graphical packet history, with signal/noise, packet type and physical rate
  • Shows all stations per ESSID and the live TSF per node as it is counting
  • Detects IBSS “splits” (same ESSID but different BSSID – this is a common driver problem)
  • Statistics of packets/bytes per physical rate and per packet type
  • Has some support for mesh protocols (OLSR and batman)
  • Can filter specific packet types source addresses or BSSIDs
  • Client/server support for monitoring on remote nodes

“horst” is a Linux program and can be used on any wireless LAN monitor interface. The latest git version can also be compiled and used on Mac OSX.

Screenshots

Download

Usage notes

With all recent wireless drivers you can put the card into monitor mode and start horst on the default interface (wlan0):

iwconfig wlan0 mode monitor channel X
horst

Or with newer mac80211 drivers you can use the “modern” way, using ‘iw’ to add a monitor interface while you can continue to use the existing interface:

iw dev wlan0 interface add mon0 type monitor
horst -i mon0

To use the client/server mode you can start a server (-q without a user interface) with

horst -i wlan0 -C -q

and connect a client with

horst -c IP

Only one client is allowed at a time.

To go straight into “Spectrum Analyzer” mode (changing channels) you can start horst with -s:

horst -s

For older information, see the my wiki.

Development

Please contact me at (br1 at einfach dot org) if you have any problems or questions. New feature ideas, patches and feedback is always welcome.

Mac OSX support is available in the git version, but it’s pretty new and does not support changing channels at the moment. To use it compile horst with

make PCAP=1