Peep: The Network Auralizer
Manuka writes "I have just returned from LISA 2000 in New Orleans (it was a blast), where Michael Gilfix of Tufts University presented a best-of-LISA paper on his creation, called Peep. This has got to be one of the coolest networking tools I've seen - it generates sound events based on network traffic. Really neat stuff like a bird chirping when mail comes in, or an owl hooting when your web server dishes up a page (you can actually use any sound for any event). Neat little way to generate background noise, and you can see (hear) what the network is up to and if it's doing anything weird - if the owl sounds like it's on speed, you're being slashdotted, or if the birds sound a little too hitchcockian, you're being spammed. " But what is the sound of one cracker scanning?
You can find it here as well (not sure if this is the most recent version though):
http://www.eecs.tufts.edu/peep/download.html
The only true currency in this bankrupt world is what we share with someone else when we're uncool. -Crowe
Doesn't anybody remember when computers were hooked up to TVs where you could faintly hear sounds of the computer crunching away?
It works better if you have an FM radio nearby and tune it to an unused frequency range. Did that on my TI-994/A a lot.
Am I the only one who remembers the sysadmin who hooked the output of ping(1) into a text-to-speech program, turned his speakers up to full, and started pinging a machine at the other end of the building?
"PING... PING... PING..." on each successfully returned packet.
He then started wandering the halls, tweaking cables. When he bumped a cable and the noise stopped coming from his office, he knew he had found the fault. :-)
You cannot apply a technological solution to a sociological problem. (Edwards' Law)
I managed to get apache to play a sound whever someone hits my website, I wrote a little program called Cliplay that plays a .wav speced in the command line, then used apache's exec SHTML command. The only problem is that the page stops loading untill the wave has finished playing, so you need to use something pretty short.
ReadThe ReflectionEngine, a cyberpunk style n
I doubt it. It's pretty centric to his network, meaning that it's got a lot of sensitive info in it (not just ip addresses but comments like # ok, this next line indicates someone sniffing at the db server, telling you what IP the db server is running on) and that porting it to a generic network would be a bitch.
But basically all you need is a perl script that reads from stdin, filters those lines (regexps), and has a sort of function table or callback mechanism (e.g. if /someMatch/ then somefunc() ). Redirecting the output from ipmon to the script isn't hard (direct pipe in the case of running ipmon from the shell without the -d daemonize flag, the -f flag (iirc) that specifies log file combined with a named pipe pointing at the script, that sort of thing). I don't know about linux firewalls (iptable, ipchains, ipfwadm, whatever) and logging methods, so that may require a different solution.
The callback funcs are where the action is (i.e. pass the line on to syslog(open a filehandle to syslog on LOG then "print LOG $line;"), drop it on the floor, do something else; sort of a syslog firewall ;-) ). The command to play the mp3 was something like
system("/usr/local/bin/mpg123","/path/to/thunk.mp3 "). (using the split arg form of system is more secure b/c IIRC that way you aren't subject to shell interpretation)
The mp3 itself is a pretty trivial matter. Buy a cantaloupe (I think that's what he used) and let it get more than overripe but not enough to be gross. Put mic next to cantaloupe, recording to a wav, then hit cantaloupe with board. Convert wav to mp3 using any number of tools. Viola. :-) If you didn't mind the extra disk space you could leave it a wav and use some other tool (or maybe still mpg123, I've never tried to play a wav with it so it might support that (much simpler) format). Of course if you don't want to DIY I'm sure there are plenty of funny wav files out on the internet to use (movie quotes, tv clips (beavis and butthead anyone?), random sounds, etc).
--
News for Geeks in Austin, TX
Sorry.
Bugrit! Millenium hand and shrimp!
I'm in the middle of doing a computer speech mini-project at my company. After many, many times of going down to the computer room and finding printers jammed and communications errors unchecked due to our operators not hearing the warning beeps over the noise of the computer room, we came up with a solution.
We were in desperate need of re-writing our network/database/communications monitoring software, so I figured...why not add voice to it? So I added a soundcard and speakers to the new system, and used some text-to-speed software. Result? Pissed off operators!
Printer alert! Printer 1 is jammed!
Communications alert! Dialer 2 is hung!
Printer alert! Printer 2 is out of paper!
Oh well...at least the printer's don't sit around jammed for more than 1 minute now =)
Okay, maybe it's slightly more useful than that -- but it's usually not necessary or even helpful. If you are scrolling, the really useful feedback is the fact the window is scrolling. Or the button is depressed, or whatever. I haven't found that sound adds anything useful to that.
The nice thing about a sense that's entirely seperated from vision, is that it can be used for something entirely unrelated to what you are looking at. The sound I hear when walking down the street doesn't effect my understanding of what I see very much -- I can see the street and the other people just fine. But I can hear things going on outside my field of vision and my field of attention, and that can be very useful (for instance, if I hear someone walking up behind me).
Sound seems to be particularly appropriate for background events. People are very good at filtering it out -- I can be on a train and listen to one person over the sound of the train and other people's conversation. But if someone else says my name -- even though I'm actively listening to something else -- I will notice that. That's really pretty damned impressive when you think about it, and yet a nearly universal skill.
This reminds me of a story told me by friends working at a network card company. The MIS chap decided that he was going to enforce tight security, and added lots of layers of passwords and authentication to make sure he was in control of the network. However, the card driver engineers weren't impressed with this disruption to their work, so they hooked up a machine to scan packets for passwords and record them for later use. Every time it found a password it played a fanfare. The MIS chap couldn't work out why the engneers kept smiling at he sound of trumpets.
If you've used a recent Mac OS, you'll notice it has the options to make sounds that reinforce what you're doing.
For instance, whenever you're scrolling, there is a "scrolling" sound. Very soft and subtle -- but continuous for as long as you're holding down the mouse button. There is a "window dragging" sound. Again, soft and subtle. But it strongly reinforces what you're doing. Grab the scroll-thumb and drag it rapidly, and the sound changes to match.
Using sounds to notify you of very frequent, non-user initiated, events, such as web server hits (or on some systems, frequent events, such as blue screens), seems to be potentially annoying.
I'll see your senator, and I'll raise you two judges.
It WAS ugly, but damn you could see it. :-)
Oldies might remember that AM radios used to get placed next to mini-computers to serve as monitoring devices. The hiss, crackle and pop emanating from radio would be a good indication of the activity on the machine. After a while you would be able to listen to the sound and say, for instance, that the backup job was running, etc. Current machines being much faster and better shielded are probably not amenable to such monitoring.
What a wonderful way to customize the office. You can have a jungle theme, or an ocean theme. That would be just amazing -- and not to mention quite in tune with our evolution. In a server room for example, it could sound like a bunch of birds in a jungle (for web pages serving up) and for "bizarre" operations like connections to arbitrary ports (ie. portscan) have a tiger roar. It's amazing how well the human ear can pinpoint the location of our natural (ancient) predators. (I can speak for this through experience!)
Great, Now I can apply themes to my network
The emphasis is on 'non-critical'. I recall that an investigation into the Chernobly nuclear disaster pointed to audible alarms as one of the contributing factors. Basically, when the reactor started malfunctioning, so many alarms were going off that the techs were unable to identify which was the most important alarm and hence they didn't respond appropriately to the situation.
how come i'm always hearing birds chirping at work and i don't have this thing installed?
I did this, albeit much more crudely, with my home FreeBSD server, a few shell scripts monitoring log files, and a sound player.
It's fun if you have sounds for a small set of events that happen infrequently enough to be worthwhile. It's noise otherwise.
Personally, I disable all the noises on my computer. How many times can you stand to hear the same noise again and again?
Somebody in our office has it set up where it says "You have email, Master". Across the room it sounds like "You have email, Bastard".
love is just extroverted narcissism
If you want to test it, what better was is there than slashdot?
"Titanic was 3hr and 17min long. They could have lost 3hr and 17min from that."
IBM had PL/1, with syntax worse than JOSS,
And everywhere the language went, it was a total loss...
I agree this would be helpful. Another study (don't have the reference, sorry) dealt with the absence of sound. Kittens could be conditioned to expect food when sounds (in this case a clicking noise) stopped.
(Of course that doesn't mean it's going to be aesthetically pleasing to humans. NASA also researched the high-visibility color scheme for VDTs that was later adopted by Amiga -- black, white, dull blue, garish orange. Ugh!)
Corollary to Moore's Law: The IQ of new computer owners is declining.
error lpt: the printer is on fire
Put that one in text to speech and tell us what the reaction is!
"Titanic was 3hr and 17min long. They could have lost 3hr and 17min from that."
IBM had PL/1, with syntax worse than JOSS,
And everywhere the language went, it was a total loss...
The PHB (technically clueless) decided it would be a good idea for us to remotely manage customer sites via Managewise (over a single ISDN line - natch!). He got hold of some 3rd party speech software for Managewise, and installed it on the managewise console which incidentally was next to my desk. Why me - I had nothing to do with the Netware side of things. Both the soundcard (an el-cheapo 8-bit jobbie from 1990) and speakers (very low quality - bundled with another card) were mine - I had brought them in for some other project and they were still hanging around.
Whenever a user logged in or out I'd here some speech indicating what had happened, or some other noises. No-one was actually monitoring the machine (too much effort), and I'd get thoroughly annoyed by this thing blasting out noises and messages all day.
Eventually I trashed the speakers by disconnecting the cables inside - peace at last!
The PHB left shortly afterwards - Managewise was a disaster over ISDN.
The administraters redirected this site to the SourceForge website a few hours after this was posted. Presumably, because they didn't like to get slashdotted.
---
---
I'm just an ordinary man with nothing to lose.
Here:
Wednesday, 12 October 1994, midnight -- at the base of the entire web document.
Yep, Wes, it sure does! Go to the thing you shit in, and press the lever that's on it. The sound you'll then hear is the very same sound made whenever anything goes to /dev/null. Unfortunately, stdout and stderr are redirected to /dev/null as well (it's hardcoded in stdio.h), so you can't hear it.
--
Does it make a Penis Bird noise every time a troll posts?
Pax Digitalia
Yes! snoop was the SVr4 replacement for etherfind.
You can tell it to concentrate on one or two machines etc. But the coolest feature is activated
using the -a option. This causes snoop to output a
click on the speaker for each packet.Different
packet lengths are given different modulation.
It's been said that you can get used to the different sounds and actually tune the network
"by ear".
I would prefer a utility that created a crying advertiser sound every time my proxy server nailed an incoming cookie.
- I don't care if they globalize against free speech. All my best free thoughts are done in my head.
I posted about this (or at least it was a tangent in a post about something else) a few days ago. A friend of mine wrote a perl script to moniter the ipmon-generated output of his OpenBSD firewall. When teh script recognized common script kiddie scans, it would play an mp3 of a ripe melon hitting a board (or a board hitting a ripe melon, either way a rather satisfying, moist thunk), represent a kiddie fruitlessly hitting his/her head against the firewall.
(Common scans like the port 135-140 range of MSFT shit, that sort of thing.)
--
News for Geeks in Austin, TX
See the original idea for mapping network traffic to the physical world, done 4 years ago at Xerox PARC. It's called the Dangling String, and it's a wire that shakes around. The more network traffic, the more it moves.
This is precisely the reasoning behind the project. I encourage everyone to read the paper; it's a far more complicated piece of software than is being suggested here with the usual 'snoop -a' and 'cat foo.au > /dev/audio' responses.
ObPlug: Tufts University is looking to fill positions for sysadmins with developer tendencies to work on this and similar bleeding-edge projects. We presented two papers at LISA this year. Please email me for details.
This idea has been around for a long time.
Particularly, Sensorium highlighted this back in '96: NetSound
satire, n: 1) witty language used to convey insults or scorn; 2) a form of humor lost on most slashdot moderators.
I was actually going to implement this using midi. Sigh.... :(
Is to make a program that generates netowkr traffic to play a song. :)
MG: "Yeah, there's a problem with system XYZ..."
Me: "How so?"
MG: "Well, usually is goes 'ree-ree-tinktinktinktink', you know? But right now it's going 'ree-ree-tinktink-bong-bong-tink'!"
Me: "Is that 'bong' like a doorbell chime, or more like a big chinese gong?"
MG: "In between but more like a gong, I think."
Me: "Well, shit."
cheers,
mike
Here's a cool link to the Tangible Media Lab.
This stuff is really interesting in this age of info overload. Being able to convey more information to the user immediately and effectively will become even more useful.
--
The sound of a sonar ping for a ping packet.
For port scans, I'd use basic tones, the pitch corresponding to the port being scanned -- your ear might detect something better than your firewall. Of course, the obvious thing that would follow, once it's known that someone uses tones to listen for port scans, would be to scan the ports in such a fashion as to generate music.
cb
cb
Oooh! What does this button do!?
..if some spam-mail gets routed to /dev/null, and there is nobody there to hear it, does it make a sound?
--
Do daemons dream of electric sleep()?
my boss must have something like this set up. i think it makes a high pitched "uh oh" noise. it must do this whenever he gets something done. man, he must be busy because that's all i hear from his office.
--
Mr. Gilfix musta just heard a whole mega-flock of owls....
---
Good judgment comes from experience.
Experience comes from bad judgment.
Makes me wish I was a Sytems Administrator
at one of them "adult" web-hosting companies.
My server room never sounded so good!
Would you like to pet my Penguin? The Linux Pimp
--It's Pimptastic!--
Why not go all the way and use the sounds of vehicular traffic to represent the various kinds of net traffic? Imagine mapping these vehicles to common web traffic:
If your network is quiet, it will sound like a country road. If your network is busy, it will sound like a major highway in a major city. If you're getting a lot of script kiddies doing port scans, it will sound a bit like a Hell's Angels convention. And if you're hearing a lot of police sirens, you'd better go to the server room and get ready to hit the Big Red Switch!
--
The only thing necessary for the triumph of evil is for good men to do nothing. - Edmund Burke
Mirror of the source and sounds: http://while1.org/~xm/peep/
Time to get out my sfx cd from ST:TOS. Guess there was a reason the bridge sounded like that!
This post hit it on the money. Peep is based on this very idea. Something to note for all of you: Peep doesn't use beeps or tones, but mixes together sounds that occur in natural environments to create sound "ambiances". The point behind Peep was to create an audio interface that was pleasing to listen to, as well as informative. Hence the reason why we avoided beeps =) Peep also does some other stuff that's non-trivial such as using auto-discovery and leasing to manage distributed clients. I encourage people to read the paper because there's a lot of thought behind the psychology of how it works and how we can provide a large amount of information in a compact and easy to digest way. Just my heads up =)
NASA did a study back in the '60s that showed that using tones for status information was a very effective method for important (but non-critical) information. This technique was used on the Apollo program. After a while the normal sounds become part of the background noise but when something changes, the brain picks up on it very quickly. It has the advantage that the human does it as a background task.
Snoop (Solaris, IRIX, etc.) has the wonderful feature: /dev/audio (warning: can be noisy).
;-)
-a Listen to packets on
I've heard of someone nearly strangling their officemate though after they left it running on their system while they were out of the office all day. Talk about driving you nuts. Definitely NOT birds chirping or owls hooting.. more like screeching.
They set it up such that an explosion would sound every time someone downloaded a copy of Netscape when they released 0.9 (I think that was the version). It's described somewhere on JWZ's page.
Last year a group called UBSB came out with a noise album, Traceroute, on Ash International records. The music was created by taking a dump of backbone traffic and turning it into sound. Here's a review I found:
"UBSB
-Traceroute (ash) LP SFR 21.-
Great collaboration between Ulf Bilting, Edwin van der Heide, Zbigniew Karkowski and Atau Tanaka. The concept : "Data harvested from the internet in early 1999, from a research center in Scandinavia. This data is rendered to analog to protect the original data from being reverse engineered or reconstructed. We created a Unix software agent that sat along a high bandwidth backbone pipe, essentially eavesdropping, gathering data, writing out a soundfile of everything it saw. Ethernet datapackets were consecutively written out to a file with no timestamp. Later the file header was hacked to open it in an audio editor." A succession of digital noises and loops manipulated to create a hypnotical and intense work. Really good in the field of digital noise. Recommended."
It's pretty good.
WildPackets (previously known as the AG Group) NetMeter product has been able to do this (and much much more) for years now. It is nice to see someone taking someone else's idea and getting credit for it. Not.
http://www.wildpackets.com/products/netmeter
Well, seeing that the site is slashdotted, you can find it here for now:
http://www.eecs.tufts.edu/peep/download.html
The only true currency in this bankrupt world is what we share with someone else when we're uncool. -Crowe