Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I just want to figure out which wireless client is sucking my bandwidth (it's slowing down my Starcraft games :-/).

I have a Linksys WRT54G router (Linux version). For firmware, I'm currently using Tomato but I'm willing to consider a different firmware. Anyone have recommendations?

PS: I'm aware of Bandwidth graphs in Tomato. However, it is not granular enough to give me an idea of how much bandwidth each device is using

share|improve this question
As you look for tools, remember that you're looking for who's using the most airtime, not who has the most throughput. A client getting 500kbps of throughput using the 1mbps data rate is hogging much more airtime than a client getting 5mbps of throughput using the 54mbps data rate. – Spiff Dec 1 '10 at 3:28
Have you looked at ddwrt? If I remember correctly you could actually see each clients bandwidth usage in it. – MrStatic Dec 1 '10 at 4:16
I tried ddwrt in the past but didn't see this feature. I'll look into it again. – Belmin Fernandez Dec 1 '10 at 4:19
Only the paid version of DD-WRT has granular bandwidth monitoring. All the free versions just show graphs on current usage for the WAN, LAN, and Wireless network interfaces. – Force Flow Dec 6 '10 at 6:09
@Force can you submit that as an answer please? I'm hoping for a free solution but, if nobody else gives any other suggestions, I'll choose yours. – Belmin Fernandez Dec 6 '10 at 6:23
up vote 2 down vote accepted

It seem that tomato with iptables can be used as bandwith monitor. detailed instructions

share|improve this answer

I do not understand why you cannot selectively block clients from the network, until you empirically find the guilty one.

If you are looking for a more high-tech method, you may try using a packet sniffer, also called packet analyzer, to analyze all traffic on the network from your computer instead of from your router.

A packet sniffer can capture packet information within its subnet, even if these packets are not addressed to your computer. The feasibility of this method depends on the behavior of the router and whether it broadcasts all network packets or not. Wireless networks are of course much easier to snif than wired.

See this article, Free Packet Sniffer Software, for a list of such products (not all are available for Linux). The best known sniffer is Wireshark.

See also this article : Sniffing Traffic on Your Home Router or Hub.

share|improve this answer
instructions how to use wireshark to determine bandwith… – bbaja42 Dec 6 '10 at 12:02

Only the paid version of DD-WRT has granular bandwidth monitoring. All the free versions just show graphs on current usage for the WAN, LAN, and Wireless network interfaces. (re-posted as an answer as requested)

share|improve this answer

You could use Wireshark. Wireshark's IO graph feature can show you when and where your bandwidth is going.

This document has info on using Wireshark to sniff a wireless network:

Downside is that you need to have one of a short list of certain specific adapters to do this.

share|improve this answer

wireshark or kismet could both tell you this....wireshark's traffic graph might be more precise, but grepping the pcap file from a full kismet dump for each MAC on your network with the count option works from the command-line. go command line fu. i seem to remember there being a way to view traffic percentages by MAC address in kismet, but i'll have to get back to you on that last part.

share|improve this answer
'~Wl' gives you the client list checking to see if it is sortable by bandwidth – RobotHumans Dec 11 '10 at 1:12

You must log in to answer this question.

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