TCP/IP over Bongo Drums
Michael500 writes "In an attempt to show that primitive communications can still function in modern networks, a friend of mine took up a challenge from his professor to replace the lowest layer of the OSI networking model with a set of bongo drums!"
link
New year Resolution: Don't change sig this year
It's called a drum circle.
This is humourous and illustrates a point! Well done that man :-)
I'm out of my tree just now but please feel free to leave a banana.
"Local professor brings local area networking to pygmy tribe."
props to gnaa.
it's already slashdotted.
Done already, in near record time
All I could get I'm afraid...
At Algoma University the mature students in the fast track accelerated second degree program are not quick to accept theory without proof. As a result, Professor George Townsend offered extra credit to anyone in his forth year Computer Networks course who could take up the challenge of implementing internet based protocols over a new form of medium - Bongo Drums.
Eight weeks later, the first public demonstration was given to the class by using a simple ping packet. With a blinding 2bps speed, the class sat patiently as the packet was received in roughly 140 seconds.
Whats the point you may ask? We aren't trying to set any speed records here (actually, we have been developing some ideas for "highspeed" bongos), but rather we're showing that the lower layers of the OSI model can be replaced with any form of media without affecting the layers above it.
Look at those bongos fly! - classmate
Due to a busy semester and a Microcoded M6800 Emulator project, work on the final phase of the project has slowed. The design plans for the actual bongo hook up have been completed, and now only a few more hours are required for total completion. The demonstrations that have been conducted have used synthesized bongo beats played through desktop speakers. Due to summer work, time has ran out and the final implementation will have to wait until september.
I have over 70 freaks, do you?
a copy of his slashdotted site to the rest of us.
"It's not your information. It's information about you" - John Ford, Vice President, Equifax
a new slashdotting record.
This paid my last vacation, it mi
Their net connection must be using TCP/IP over bongo drums; it's already slashdotted. :P
Are the drums really more primitive than say the guitar or wheel?
So that explains the speed!
Alas... the death tune is being played now.
/insert verious jokes about running their server on bongo drums if you wish...
Yes, the server is slashdotted.
To me, the death of another little server is just sad.
Davak
Do you think he still think so once he realize what you did to his server by posting this on slashdot?
Do you care about the security of your wireless mouse?
Well if he can achieve that then I'm gonna work doubly hard on Sex Over IP
MoFscker
One improvised drum solo and you take down the whole LAN...
is a Token Ringo....
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
I bet that would make a fine fortune cookie. "Linux, the ability to communicate even with bongo drums"
Slashdot Sig. version 0.1alpha. Use at your own risk.
At Algoma University the mature students in the fast track accelerated second degree program are not quick to accept theory without proof. As a result, Professor George Townsend offered extra credit to anyone in his forth year Computer Networks course who could take up the challenge of implementing internet based protocols over a new form of medium - Bongo Drums.
Eight weeks later, the first public demonstration was given to the class by using a simple ping packet. With a blinding 2bps speed, the class sat patiently as the packet was received in roughly 140 seconds.
Whats the point you may ask? We aren't trying to set any speed records here (actually, we have been developing some ideas for "highspeed" bongos), but rather we're showing that the lower layers of the OSI model can be replaced with any form of media without affecting the layers above it.
OK, but what is the RFC for this physical layer?
Is anybody working on a bridge between TCP over bongos and TCP over avian carriers?
Which has the greater bandwidth?
www.eFax.com are spammers
This adds a whole new dimension to that old joke about /dev/drum ....
Wow. That was really funny. You, and all of your toothless, redneck friends must be rolling in the pig sh*t with that one. Jackass.
At Algoma University the mature students in the fast track accelerated second degree program are not quick to accept theory without proof. As a result, Professor George Townsend offered extra credit to anyone in his forth year Computer Networks course who could take up the challenge of implementing internet based protocols over a new form of medium - Bongo Drums. Eight weeks later, the first public demonstration was given to the class by using a simple ping packet. With a blinding 2bps speed, the class sat patiently as the packet was received in roughly 140 seconds. Whats the point you may ask? We aren't trying to set any speed records here (actually, we have been developing some ideas for "highspeed" bongos), but rather we're showing that the lower layers of the OSI model can be replaced with any form of media without affecting the layers above it. Look at those bongos fly! - classmate Due to a busy semester and a Microcoded M6800 Emulator project, work on the final phase of the project has slowed. The design plans for the actual bongo hook up have been completed, and now only a few more hours are required for total completion. The demonstrations that have been conducted have used synthesized bongo beats played through desktop speakers. Due to summer work, time has ran out and the final implementation will have to wait until september.
Can you imagine drumming your way through a slashdotting?
Banaaaana!
First thing that came into my mind: Richard Feynman
It's more like implementing short distance multicasting
Heh, well at least we can expect the Massai not to send spam. Oh gosh... ...can you imagine someone getting DDoS'ed?
The following non-technical story has appeared in school magazines and many other news sources from around the world.
Modern and Centuries Old Technologies Meet at AUC
Daniel Reid, senior computer science student at Algoma University finished explaining his project to a room full of his peers. The room fell silent as everyone waited in eager anticipation of the demonstration that was about to begin. Danny sat down in front of an ordinary windows computer and typed a simple command, ping www.sony.co.jp This command sends a test message to the specified computer, namely a webserver on the other side of the planet in Japan.
Ah yes the humble ping test, used to test for connectivity between your computer and another. But this was no ordinary test. It would couple together one of the most primitive centuries old technologies known to man together with the one of the fastest fiber-optic backbones in the Internet.
It all began several months earlier when Professor George Townsend was lecturing to a group of computer science students taking his fourth year Computer Networks course. The topic of the day was the OSI networking model, which describes a layered method of combining different types of technologies together to form functional networking systems. During the lecture, Professor Townsend made the claim that the design of the model permits different types of technologies to be transparently connected together. He suddenly stopped in mid lecture, and stared off into space stroking his beard thoughtfully. After a short moment of silent thought, he suggested to the class, that in theory, this should permit us to use any technology we like to connect a computer to the Internet without compromising its ability to participate in the Internet. Furthermore, he exclaimed, his voice rising in excitement, we could use a set of bongo drums to communicate as our technology of choice!
This was a dangerous claim to make at Algoma University where a unique blend of students exist as a result of the very successful Second Degree Accelerated programs it offers in Computer Science and Information Technology. These fast-track programs allow completion of an accredited university degree for people that already have a university degree in another discipline in only one calendar year. The program attracts many mature students who often bring a great deal of real world experience with them. So, of course, it was not surprising that there were many who doubted professor Townsend's words. We demand proof, they shouted!
The next morning, Professor Townsend sent out a challenge to the students in the course offering bonus marks to the first student to volunteer to attempt to connect a standard windows PC to the internet using a system of bongo drums. Danny eagerly took up the challenge. Now, several weeks later, under the guidance and direction of Professor Townsend, Danny had a working prototype.
After typing the ping command, Danny tapped smartly on the enter key, and a hush fell upon the room as the students waited to see what would happen. There was a short pause, and then suddenly the primitive sounds of a message being beaten out on a set of bongos filled the air. Several minutes passed, and yet the class remained quiet not wanting to disturb the communication. Having passed through the bongo-link and out onto the Internet, the ping message then raced to its destination in Japan.
Sony's web server in Japan was none the wiser concerning the source of the communication, and obediently responded to the ping request. The silence was broken by another set of bongos at the opposite side of the classroom as they began relaying their response back to Danny's computer. Several more minutes passed, and the class remained attentive, spellbound by what they were witnessing. Finally, the bongos stopped, and suddenly the successful ping response appeared on the screen of Dannys computer.
The classroom filled with cheers! History had been made! For the very first time, a computer had successfully communicated over the Internet using Bongo drums!
With two drums one could do binary transmission quite easily. When adding time-based stuff even more complex patterns could be achieved.
From the article: Whats the point you may ask? We aren't trying to set any speed records here (actually, we have been developing some ideas for "highspeed" bongos), but rather we're showing that the lower layers of the OSI model can be replaced with any form of media without affecting the layers above it.
Now I wonder... when will someone actually do TCP/IP over smoke signals?
Apart from obvious decoding and wind issues, it should work just as well!
.: Max Romantschuk
One suspects that the bong played a bigger role in this project than the drums did.
Sheesh, evil *and* a jerk. -- Jade
From the Background section:
During a lecture about the layers of the OSI model in our fourth year Computer Networks Course, Prof. Townsend was discussing the fact that the lower layers of the model could be replaced with any form of media. Despite this change, the upper layers would function as normal. In fact, others have implemented network protocols over "non-standard" media, including CPIP (carrier pigeon internet protocol) which was implemented using RFC1149, and reached speeds of 0.08bps. Prof. Townsend jokingly suggested that Internet Protocols could even run over forms of primitive communication (i.e. bongo drums, or even smoke signals). In an email sent out after class he offered extra credit to anyone who succesfully implemented TCP/IP via. Bongo Drums. I was the only one crazy enough to sign up, and thus began what was deamed as "The Bongo Project".
The next morning, wondering what I had gotten myself into, I discussed the game plan with Prof. Townsend. It was suggested to whip up a couple Linux boxes to form a transparent bridge that would serve as the Bongo Link itself. Each Linux box would then have a microphone and a pair of bongos, with each microphone "listening" to the appropriate pair of bongos (based on pitch). The pitch recognition would be a project in itself, but luckily both Prof. Townsend and Dr. Keppel-Jones from the Mathematics Department had already developed an interesting method called SAW (Sliding Averaging Window) for me to base some of my work from. With the bridge constructed, the Bongo Link could then be placed anywhere, and in testing cases it was between my PC and the residence LAN.
I had little socket programming experience, and even less experience with devices in UNIX. Jason Tackaberry, the university system administrator, offered some source code from a network monitoring project for me to scan over for some coding help. The gesture was appreciated greatly.
Weekly meetings with Prof. Townsend were scheduled to discuss my progress, as well as online chat sessions which often led to hours of debugging and perfecting pitch recognition algorithms.
By the end of the semester, the project was not 100% completed, so a demonstration was given to the class which used a set of desktop speakers which played recorded bongo beats to simulate the real thing. Since the theory had been proven, I was granted my extra credit and somehow wound up with a 99% in the class.
The final phase is almost near completion.
From the overview:
The following non-technical story has appeared in school magazines and many other news sources from around the world.
Modern and Centuries Old Technologies Meet at AUC
Daniel Reid, senior computer science student at Algoma University finished explaining his project to a room full of his peers. The room fell silent as everyone waited in eager anticipation of the demonstration that was about to begin. Danny sat down in front of an ordinary windows computer and typed a simple command, ping www.sony.co.jp This command sends a test message to the specified computer, namely a webserver on the other side of the planet in Japan.
Ah yes the humble ping test, used to test for connectivity between your computer and another. But this was no ordinary test. It would couple together one of the most primitive centuries old technologies known to man together with the one of the fastest fiber-optic backbones in the Internet.
It all began several months earlier when Professor George Townsend was lecturing to a group of computer science students taking his fourth year Computer Networks course. The topic of the day was the OSI networking model, which describes a layered method of combining different types of technologies together to form functional networking systems. During the lecture, Professor Townsend made the claim that the design of the model permits different types of technologies to be transparently connected together. He suddenly stopped in mid lecture, and stared off into space stro
This will go great with my "file sharing over trumpets" project. Together they could be called "Samba"
[ducks]
std::disclaimer<std::legalese> sig=new std::disclaimer; sig->dump(); delete sig;
Seems pretty pointless. Might as well chisel yer data on rocks, call them packets, and throw them at each other. You'll have the same bandwidth. And lessons that cause pain stand out in your mind...Of course, the same effect might be achieved if he's a bad enough bongo player.
ad logicam Claiming a proposition is false because it was presented as the conclusion of a fallacious argument.
I went ahead and put up a mirror of this poor Slashdotted site. I'm not sure if I've got it all but it looks nicer than just the text people have posted. Hopefully my machine's up to the task. :-)
How To Get Humans To Mars
The site is itself obviously also using bongo-drums to communicate with us...
Modern and Centuries Old Technologies Meet at AUC
Daniel Reid, senior computer science student at Algoma University finished explaining his project to a room full of his peers. The room fell silent as everyone waited in eager anticipation of the demonstration that was about to begin. Danny sat down in front of an ordinary windows computer and typed a simple command, ping www.sony.co.jp This command sends a test message to the specified computer, namely a webserver on the other side of the planet in Japan.
Ah yes the humble ping test, used to test for connectivity between your computer and another. But this was no ordinary test. It would couple together one of the most primitive centuries old technologies known to man together with the one of the fastest fiber-optic backbones in the Internet.
It all began several months earlier when Professor George Townsend was lecturing to a group of computer science students taking his fourth year Computer Networks course. The topic of the day was the OSI networking model, which describes a layered method of combining different types of technologies together to form functional networking systems. During the lecture, Professor Townsend made the claim that the design of the model permits different types of technologies to be transparently connected together. He suddenly stopped in mid lecture, and stared off into space stroking his beard thoughtfully. After a short moment of silent thought, he suggested to the class, that in theory, this should permit us to use any technology we like to connect a computer to the Internet without compromising its ability to participate in the Internet. Furthermore, he exclaimed, his voice rising in excitement, we could use a set of bongo drums to communicate as our technology of choice!
This was a dangerous claim to make at Algoma University where a unique blend of students exist as a result of the very successful Second Degree Accelerated programs it offers in Computer Science and Information Technology. These fast-track programs allow completion of an accredited university degree for people that already have a university degree in another discipline in only one calendar year. The program attracts many mature students who often bring a great deal of real world experience with them. So, of course, it was not surprising that there were many who doubted professor Townsend's words. We demand proof, they shouted!
The next morning, Professor Townsend sent out a challenge to the students in the course offering bonus marks to the first student to volunteer to attempt to connect a standard windows PC to the internet using a system of bongo drums. Danny eagerly took up the challenge. Now, several weeks later, under the guidance and direction of Professor Townsend, Danny had a working prototype.
After typing the ping command, Danny tapped smartly on the enter key, and a hush fell upon the room as the students waited to see what would happen. There was a short pause, and then suddenly the primitive sounds of a message being beaten out on a set of bongos filled the air. Several minutes passed, and yet the class remained quiet not wanting to disturb the communication. Having passed through the bongo-link and out onto the Internet, the ping message then raced to its destination in Japan.
Sony's web server in Japan was none the wiser concerning the source of the communication, and obediently responded to the ping request. The silence was broken by another set of bongos at the opposite side of the classroom as they began relaying their response back to Danny's computer. Several more minutes passed, and the class remained attentive, spellbound by what they were witnessing. Finally, the bongos stopped, and suddenly the successful ping response appeared on the screen of Dannys computer.
The classroom filled with cheers! History had been made! For the very first time, a computer had successfully communicated over the Internet using Bongo drums!
the server's still alive!
IT's college . You know.
Does it rain? Snow.. What kind of cerimonial dance does a misplaced letter make. ;)
*There's Klingons on the starboard bow, scrape em off Jim!*
The following non-technical story has appeared in school magazines and many other news sources from around the world.
Modern and Centuries Old Technologies Meet at AUC
Daniel Reid, senior computer science student at Algoma University finished explaining his project to a room full of his peers. The room fell silent as everyone waited in eager anticipation of the demonstration that was about to begin. Danny sat down in front of an ordinary windows computer and typed a simple command, ping www.sony.co.jp This command sends a test message to the specified computer, namely a webserver on the other side of the planet in Japan.
Ah yes the humble ping test, used to test for connectivity between your computer and another. But this was no ordinary test. It would couple together one of the most primitive centuries old technologies known to man together with the one of the fastest fiber-optic backbones in the Internet.
It all began several months earlier when Professor George Townsend was lecturing to a group of computer science students taking his fourth year Computer Networks course. The topic of the day was the OSI networking model, which describes a layered method of combining different types of technologies together to form functional networking systems. During the lecture, Professor Townsend made the claim that the design of the model permits different types of technologies to be transparently connected together. He suddenly stopped in mid lecture, and stared off into space stroking his beard thoughtfully. After a short moment of silent thought, he suggested to the class, that in theory, this should permit us to use any technology we like to connect a computer to the Internet without compromising its ability to participate in the Internet. Furthermore, he exclaimed, his voice rising in excitement, we could use a set of bongo drums to communicate as our technology of choice!
This was a dangerous claim to make at Algoma University where a unique blend of students exist as a result of the very successful Second Degree Accelerated programs it offers in Computer Science and Information Technology. These fast-track programs allow completion of an accredited university degree for people that already have a university degree in another discipline in only one calendar year. The program attracts many mature students who often bring a great deal of real world experience with them. So, of course, it was not surprising that there were many who doubted professor Townsend's words. We demand proof, they shouted!
The next morning, Professor Townsend sent out a challenge to the students in the course offering bonus marks to the first student to volunteer to attempt to connect a standard windows PC to the internet using a system of bongo drums. Danny eagerly took up the challenge. Now, several weeks later, under the guidance and direction of Professor Townsend, Danny had a working prototype.
After typing the ping command, Danny tapped smartly on the enter key, and a hush fell upon the room as the students waited to see what would happen. There was a short pause, and then suddenly the primitive sounds of a message being beaten out on a set of bongos filled the air. Several minutes passed, and yet the class remained quiet not wanting to disturb the communication. Having passed through the bongo-link and out onto the Internet, the ping message then raced to its destination in Japan.
Sony's web server in Japan was none the wiser concerning the source of the communication, and obediently responded to the ping request. The silence was broken by another set of bongos at the opposite side of the classroom as they began relaying their response back to Danny's computer. Several more minutes passed, and the class remained attentive, spellbound by what they were witnessing. Finally, the bongos stopped, and suddenly the successful ping response appeared on the screen of Dannys computer.
The classroom filled with cheers! History had been made! For the very first time, a computer had successfully communicated over the Internet using Bongo drums!
Your hair look like poop, Bob! - Wanker.
It looks like the Bongo's can't hold up the Slashdot effect :(
-- Cliff Albert
Don't click!!!
...does that make Neil Peart a webserver?
Ceci n'est pas une sig.
In other news, visitors to the Mountain View cemetery in Altadena, CA were startled when the grave of Richard P. Feynman began to bounce up and down.
"I was walking through the cemetery, trying to figure out where those mountains had disapeared to in the Pasadena smog, when lo and behold I saw this grave just bouncing up and down," said witness Quin El Dorado.
"Well we suspected some strange resonance effect was at work here," said groundskeeper Willie McScottie. "So we noted the dimensions of the grave and did a calculation, and lo and behold, it seems Feynman's grave is in perfect resonance with sounds produced from Bongo drums."
You're the 10,000,000th person to make a "site is slashdotted, must be running on whatever the site's about" joke!
You're probably the 10th in this thread alone!
A winner is you!
Bridging Ethernet
s 1=socket(AF_INET,SOCK_PACKET,htons(0x0003));d (s0, &from, sizeof(struct sockaddr));
t sockaddr *)&to,sizeof(to));
The first step in the Bongo Link was to get most of the socket programming out of the way. To make things as transparent as possible, a bridge was determined to be the best way to implement the Bongo Link. For starters, two network cards were thrown in two Linux boxes for testing purposes, with a patch cable from the wall to the first Linux box, and cross cables between the others. Without having addressable boxes, data taken in from one network card was to be spit out through the other, and vise versa. C programming makes this very simple. Lets take a look at some code to make things clearer.
int s0, s1;
struct sockaddr from, to;
memset(&from, '\0', sizeof(from));
from.sa_family = AF_INET;
strcpy(from.sa_data, "eth0");
memset(&to, '\0', sizeof(to));
to.sa_family = AF_INET;
strcpy(to.sa_data, "eth1");
s0=socket(AF_INET,SOCK_PACKET,htons(0x0003));
bin
bind(s1, &to, sizeof(struct sockaddr));
We first declare two file descriptors that will address each network card in the Linux box, s0 and s1. We'll also create some sockaddr structures that we will bind to our sockets later that will hold information such as which ethernet cards they'll be associated with, and the family type. The sockaddr structures are first cleared with the memset function, and then the family type and ethernet card device are copied into them. The file descriptors are then set to point to two corresponding sockets, which are created using the same family type as the structures and a special argument number which allows the sockets to be placed in promiscuous mode (they'll look at every packet on the wire). These sockets are then bound to the corresponding sockaddr structure. As soon as the two sockets are setup, we can simple use read() and write() calls to the sockets as shown below to read packets and send packets:
read(s0,buf,count);
write(s1,buf,size,0,(struc
The buffer (buf) will be an unsigned char array (8 bits) which contain the packet that is to be sent, or the packet that has been received. Now we have all the coding required to make a bridge! All that has to be done is read everything from eth0 and write it to eth1, and read everything from eth1 and write it to eth0. Pretty easy. There's only one more catch... Since the users should not be aware of such a bridge, we don't want the Linux box to have any IP addresses associated with them (i.e. non- addressable since we want transparency) we must issue a simple unix command to remove any possibility of addressing before running the bongo link. Along with removing our addressable presence on the network, we also set the network cards themselves to promiscuous mode at the same time. We issue a ifconfig command like below:
ifconfig eth0 -arp promisc up 10.1.1.0
ifconfig eth1 -arp promisc up 10.1.1.1
We now have all the tools to make a transparent bridge as shown here:
Since we will require two linux boxes for the final implementation it's just as easy to set up:
There we go, everything's all set. With the above, you could experiment making your own personal firewalls or filters at a very low layers. In fact you could play around a bit too including re-writing packets as they're sent out - just make sure to recalculate checksums or the packet will be garbage. You could also try your skills at some sort of spoofing depending on how the local routers/bridges/switches are set up.
Your hair look like poop, Bob! - Wanker.
you're aware that the server will be back online in twenty minutes when everyone here has lost interest, no?
All new protocols, from Carrier Pigeons onward, need to be documented in an RFC.
This isn't as silly an idea os it might seem. IP over Morse Code, or even IP over smoke signals should also be considered.
I propose the author compose an RFC for the entire class of lowest layer communication, as IP Over Primitive Carriers.
I, in the mean time, will get busy on the IP Over Body-Language RFC.
The REAL jabber has the user id: 13196
What you do today will cost you a day of your life
They call me
The D A Double-D Y M A C
'cause there ain't another brother as bad as me
The Serial and Audio Cable
/dev/ttyS0 (which refers to the serial port). Then you're just a read() and write() away from sending and receiving data. This is shown below:
/dev/dsp file and do simple read() and write() commands to the file descriptor pointing to the device.
In order to simulate a Bongo Link, a cross-over 9-pin serial cable was constructed to connect the two linux boxes together. This was used for testing, as there was a concern for buffer overruns and packet dumping with such slow speeds between the two Linux boxes. A network card was ripped out of each Linux box, and the serial cable was placed inbetween instead of the crossover cable.
Even easier to harness the network card, are the serial ports. Under Linux we're taught that files are devices, and devices are files. To read and write to the serial ports we first make our file descriptor and make it point to the device
int serial_fd;
serial_fd=open("/dev/ttyS0", O_RDWR, 0);
read(serial_fd, &buf, size);
write(serial_fd, &buf, size);
Now we just have to read packets from eth0 and write them to our serial ports on both machines. Some difficulties arose while testing, but it was found that the machines were able to keep up with the demand even at extremely slow speeds.
Since the Bongo Link would eventually be "sound driven", more testing was done, but instead of the serial ports, soundcards were placed in each box and an audio cable (male-male stereo headphone) was placed beween as shown below:
To access the soundcard under Linux, we open the
int sound_fd=open("/dev/dsp", O_RDONLY, 0);
read(sound_fd0, &buf, size);
write(sound_fd0, &buf, size);
By setting the bitrates with the ioctl function, we could increase and decrease the "bandwidth". Testing with the audio cable turned out better than with the serial link. We now have the tools to replace the audio cable with some speakers and microphones which was Phase III.
Your hair look like poop, Bob! - Wanker.
The Serial and Audio Cable
/dev/ttyS0 (which refers to the serial port). Then you?re just a read() and write() away from sending and receiving data. This is shown below:
/dev/dsp file and do simple read() and write() commands to the file descriptor pointing to the device.
In order to simulate a Bongo Link, a cross-over 9-pin serial cable was constructed to connect the two linux boxes together. This was used for testing, as there was a concern for buffer overruns and packet dumping with such slow speeds between the two Linux boxes. A network card was ripped out of each Linux box, and the serial cable was placed inbetween instead of the crossover cable.
Even easier to harness the network card, are the serial ports. Under Linux we?re taught that files are devices, and devices are files. To read and write to the serial ports we first make our file descriptor and make it point to the device
int serial_fd;
serial_fd=open(?/dev/ttyS0?, O_RDWR, 0);
read(serial_fd, &buf, size);
write(serial_fd, &buf, size);
Now we just have to read packets from eth0 and write them to our serial ports on both machines. Some difficulties arose while testing, but it was found that the machines were able to keep up with the demand even at extremely slow speeds.
Since the Bongo Link would eventually be ?sound driven?, more testing was done, but instead of the serial ports, soundcards were placed in each box and an audio cable (male-male stereo headphone) was placed beween as shown below:
To access the soundcard under Linux, we open the
int sound_fd=open(?/dev/dsp?, O_RDONLY, 0);
read(sound_fd0, &buf, size);
write(sound_fd0, &buf, size);
By setting the bitrates with the ioctl function, we could increase and decrease the ?bandwidth?. Testing with the audio cable turned out better than with the serial link. We now have the tools to replace the audio cable with some speakers and microphones which was Phase III.
The text for the Home, Overview, Background, and Phase I-IV pages is here. Home Page(There are a number of pages on the site)
Dial-up has never looked so good! - classmate
At Algoma University the mature students in the fast track accelerated second degree program are not quick to accept theory without proof. As a result, Professor George Townsend offered extra credit to anyone in his forth year Computer Networks course who could take up the challenge of implementing internet based protocols over a new form of medium - Bongo Drums. Eight weeks later, the first public demonstration was given to the class by using a simple ping packet. With a blinding 2bps speed, the class sat patiently as the packet was received in roughly 140 seconds. Whats the point you may ask? We aren't trying to set any speed records here (actually, we have been developing some ideas for "highspeed" bongos), but rather we're showing that the lower layers of the OSI model can be replaced with any form of media without affecting the layers above it. Look at those bongos fly! - classmate Due to a busy semester and a Microcoded M6800 Emulator project, work on the final phase of the project has slowed. The design plans for the actual bongo hook up have been completed, and now only a few more hours are required for total completion. The demonstrations that have been conducted have used synthesized bongo beats played through desktop speakers. Due to summer work, time has ran out and the final implementation will have to wait until september. *Yes I know that isn't a bongo drum at the to Overview Page The following non-technical story has appeared in school magazines and many other news sources from around the world. Modern and Centuries Old Technologies Meet at AUC Daniel Reid, senior computer science student at Algoma University finished explaining his project to a room full of his peers. The room fell silent as everyone waited in eager anticipation of the demonstration that was about to begin. Danny sat down in front of an ordinary windows computer and typed a simple command, ping www.sony.co.jp This command sends a test message to the specified computer, namely a webserver on the other side of the planet in Japan.
Ah yes the humble ping test, used to test for connectivity between your computer and another. But this was no ordinary test. It would couple together one of the most primitive centuries old technologies known to man together with the one of the fastest fiber-optic backbones in the Internet.
It all began several months earlier when Professor George Townsend was lecturing to a group of computer science students taking his fourth year Computer Networks course. The topic of the day was the OSI networking model, which describes a layered method of combining different types of technologies together to form functional networking systems. During the lecture, Professor Townsend made the claim that the design of the model permits different types of technologies to be transparently connected together. He suddenly stopped in mid lecture, and stared off into space stroking his beard thoughtfully. After a short moment of silent thought, he suggested to the class, that in theory, this should permit us to use any technology we like to connect a computer to the Internet without compromising its ability to participate in the Internet. Furthermore, he exclaimed, his voice rising in excitement, we could use a set of bongo drums to communicate as our technology of choice!
This was a dangerous claim to make at Algoma University where a unique blend of students exist as a result of the very successful Second Degree Accelerated programs it offers in Computer Science and Information Technology. These fast-track programs allow completion of an accredited university degree for people that already have a university degree in another discipline in only one calendar year. The program attracts many mature students who often bring a great deal of real world experience with them. So, of course
"I would give my right hand to be ambidextrous."
would these be a set of african bongo drums? or a set of mechanical digital drums?
while(1) { fork(); };
During a lecture about the layers of the OSI model in our fourth year Computer Networks Course, Prof. Townsend was discussing the fact that the lower layers of the model could be replaced with any form of media. Despite this change, the upper layers would function as normal. In fact, others have implemented network protocols over "non-standard" media, including CPIP (carrier pigeon internet protocol) which was implemented using RFC1149, and reached speeds of 0.08bps. Prof. Townsend jokingly suggested that Internet Protocols could even run over forms of primitive communication (i.e. bongo drums, or even smoke signals). In an email sent out after class he offered extra credit to anyone who succesfully implemented TCP/IP via. Bongo Drums. I was the only one crazy enough to sign up, and thus began what was deamed as "The Bongo Project".
The next morning, wondering what I had gotten myself into, I discussed the game plan with Prof. Townsend. It was suggested to whip up a couple Linux boxes to form a transparent bridge that would serve as the Bongo Link itself. Each Linux box would then have a microphone and a pair of bongos, with each microphone "listening" to the appropriate pair of bongos (based on pitch). The pitch recognition would be a project in itself, but luckily both Prof. Townsend and Dr. Keppel-Jones from the Mathematics Department had already developed an interesting method called SAW (Sliding Averaging Window) for me to base some of my work from. With the bridge constructed, the Bongo Link could then be placed anywhere, and in testing cases it was between my PC and the residence LAN.
I had little socket programming experience, and even less experience with devices in UNIX. Jason Tackaberry, the university system administrator, offered some source code from a network monitoring project for me to scan over for some coding help. The gesture was appreciated greatly.
Weekly meetings with Prof. Townsend were scheduled to discuss my progress, as well as online chat sessions which often led to hours of debugging and perfecting pitch recognition algorithms.
By the end of the semester, the project was not 100% completed, so a demonstration was given to the class which used a set of desktop speakers which played recorded bongo beats to simulate the real thing. Since the theory had been proven, I was granted my extra credit and somehow wound up with a 99% in the class.
The final phase is almost near completion.
Your hair look like poop, Bob! - Wanker.
I actually implemented TCP/IP using a morse code connection many years ago. The morse code was generated, transmitted, captured and decyphered automatically -- and it ran quite swifty (swiftly here being a *very* relative term). You could actually listen into the transmision with a loudspeaker -- it souded quite suprisingly different from a analog modem "squeal" just prior to connection. Must see if I can did out the design and implementation notes and sling them online. (Also considered TCP/IP over wet string using tin-cans as the Tx and Rx devices. Came up with some quite entertaining math -- but it never got past the "let's have another beer" stage.....)
Rich people are eccentric. Poor people are strange. Me, I'd be happy with odd.
C:\DOCUME~1\SYN>ping -n 1 -l 1 -w 1000000000 199.212.55.
Pinging 199.212.55.2 with 1 bytes of data:
Reply from 199.212.55.2: bytes=1 time=139274ms TTL=254
Ping statistics for 199.212.55.2:
Packets: Sent = 1, Received = 1, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds: Minimum = 139274ms, Maximum = 139274ms, Average = 139274ms
These type of exercises and examples are always great. Especially for education on computers. It really help people understand what is happening underneath. Sometimes working with computers we tend to not think much as in the Binary but in what the programmers have already visualized. But this really helps the person to see the protocol in action and marvel on what is actually going on. Plus it is can be seen in real life. Giving a good foundation of what is happening. Plus it is just really cool.
If something is so important that you feel the need to post it on the internet... It probably isn't that important.
This development phase implements synthesized bongo beats that are played out through speakers, and microphones that 'listen' for the data being sent by the other computers. Each computer has two different bongo beats (based on pitch) associated with each, making a total of 4 distinct beats. Each computer listens for the other's beats, while ignoring itself. The actual output of the bongo beats is not a big deal, and only takes the following code to implement:
for(i=0; i = 0; h--)
{
if((1ping -n 1 -l 1 -w 1000000000 199.212.55.2
Pinging 199.212.55.2 with 1 bytes of data:
Reply from 199.212.55.2: bytes=1 time=139274ms TTL=254
Ping statistics for 199.212.55.2:
Packets: Sent = 1, Received = 1, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
Minimum = 139274ms, Maximum = 139274ms, Average = 139274ms
Didn't think it was THAT easy did you?
Actually a little bit of cheating was required. Since we have high latency and bandwidth, it was found that the ARP requests were flooding the bongo link. The ARP requests allow the router and my machine to resolve IP addresses (i.e. convert MAC addresses to IP addresses). To solve this problem, when the Bongo Link is first brought up, the preamble discussed above actually sends the appropriate IP address (from either the router or the PC on the other side of the Bongo Link) to the other Linux box base on the ARP request it receives. These addresses are then taken, and appropriate generic packets are generated with their appropriate checksums. From this point, any further ARP requests are not sent through the Bongo Link, but instead the generic packet is sent back acting as a ARP reply.
Your hair look like poop, Bob! - Wanker.
Haha. :D
which was originally written as a joke but actually implemented a few years ago. The RFC is officially titled "A Standard for the Transmission of IP Datagrams on Avian Carriers" (note the date of publication : April 1). In short it's a method of IP transmission using carrier pigeon. The Bergen Linux Users Group in Norway actually performed the first documented transmission of CPIP (Carrier Pigeon Internet Protocol) back in 2001 and has a pretty detailed writeup of the event, including quite a number of pictures.
in Soviet Russia....
Hey lucy I'm online!
I like replies better than Karma, even if they are flames, because that tells me I got someone thinking.
I bet we can actually physically destroy the building if we make the bongos beat fast enough!
An Education is the Font of All Liberty
Some time you _do_ need to hear Dierdre McCarthy playing Wipeout on bodhran....
Bill Stewart
New Fast-Compression-only CPR http://preview.tinyurl.com/dy575ks
Back in the old days no one would have thought about the implications, now we could have BongoChat!
For whatever reason, Slashdot stripped the trailing / on the link of a mirror I posted, so people aren't getting the site. Please try this link instead.
PS, for whoever modded my other link as a Troll...I wasn't trying to be mean when I said the mirror looked better than posts of the text, I just meant it had the graphics too.
How To Get Humans To Mars
What's next? UPD over bagpipes?
I want sound files! For this story, I think hearing is believing.
Chaos is Divine *
if i evar meet you i will fd$k your anus.
The operation timed out when attempting to contact eagle.auc.ca
% ping 192.168.0.2
ICMP Destination Unreachable: Host taking a rest.
Since the site will likely be
echo '[q]sa[ln0=aln80~Psnlbx]16isb572CCB9AE9DB03273snlbxq' |dc
but do they honor the evil bit as specified in RFC 3514?
Ehum. Being the general jackass-know-it-all that I've always been, I'd say TCP/IP is layer 3 & 4 respectively, of the OSI model. ...but that's just me, right?
Now, I'm not only a jackass-know-it-all. I also can't read.
He must have obviously wanted to stress test it. Hit it a _little_ too hard.
- Sherman
Being mirrored here
actually, it's one of those cases where the 'pong' reply makes sense.
http://www.kirknet.net/bongos/EXAMPLE.WAV - 148K
Wouldn't you suppose that they would measure bandwidth by the type of music played? Like...
Dude, my reggae connection is sooooo slow! I can't wait until the telco rolls out the grunge-death-metal next month!
I've got a mirror being built from the site as it currently stands. That is, not just the main page, but the linked pages that give information.
:-)
Connections to the server are too slow for most web browsers, but wget handles it just fine.
We're looking for alternate link layers, not new applications...
So someone needs to implement IP over sex.
STDs already use it to transmit their "data"...
- Peter
INsigNIFICANT
Yet another 'TCP/IP over (insert inconventional medium)' article. As with all such articles, note that there will be responses regarding its Slashdotting, and subsequent replies to said responses regarding how the server housing the article is using (insert inconventional medium) to host the page(s).
I dont see why this is so special since we had TCP/IP over pigeons already.
/. two years ago.
5 21 8&mode=nocomment
It was covered by
http://slashdot.org/article.pl?sid=01/04/30/055
Prior art eh?
100mbit/sec transmission speeds for drums.
Hate me!
goatse link in parent, do not use
Support Israeli punk bands. Man Alive.
Replacing the tortilla with wood, metal and hide? That HAS to be rough on the teeth, gums and digestive system.
--
"Outlook not so good." That magic 8-ball knows everything! I'll ask about Exchange Server next.
In an effort to provide some standard to the way networking should work, a model was developed by the International Standards Organization (ISO). This is a theoretical layered model in which the notion of networking is divided into several layers, each of which has specific functions and features. The model is known as the Open Systems Interconnect (OSI) model and represents only a general guideline for developing usable network interfaces and protocols. Sometimes the distinctions between layers become fuzzy, and some systems do not adhere rigorously to the model. Despite all this, it has earned the honour of being the model upon which all good network protocols are based.
Physical Layer
The physical later is primarily concerned with transmitting raw bits over a communication channel and other physical aspects of the media being used to transmit the data. These characteristics include modulation and encoding of data bits on carrier signals, and ensure bit synchronization. Typical questions asked are:
How many volts should be used to represent a 1 and how many for a 0?
How many microseconds does a bit last?
Can transmission proceed simultaneously in both directions?
Data Link Layer
This layer deals with receiving data across a specific medium and individual links by supplying one or more data link connections between two network entities. The data link layer takes a raw transmission facility and transforms it into a line that appears free of transmission errors in the network layer. It accomplishes this task by having the sender break the input data up into data frames, transmit the frames sequentially, and process the acknowledgment frames sent back by the receiver. The Data Link Later is also subdivided into two layers: The Media Access Control Layer (MAC), which concerns itself with the access control method and determines how use of the physical transmission is controlled. The second sub layer is the Logical Link Layer (LLC) which shields the higher level layers from concerns with the specific LAN implementation.
The Data link layer also performs error checking using the Frame Check Sequence (FCS) located at the end of the frame, and discards it if an error is detected. The data between the header and the Frame Check Sequence is then passed to the Network Later.
Network Layer
The Network Layer is responsible for delivery of packets and implements an addressing scheme to accomplish this. Also defined at this layer is the routing of packets through a network, and a method to fragment large packets into smaller ones. The network layer is also concerned with controlling the operation of the subnet. If too many packets are present in the subnet all at once, they will get in each other's way, forming bottlenecks. The control of such congestion also belongs to the network layer. Once the data from layer 2 has been received, the Network Layer examines the destination address and if it is the address of its own host, it passes all the data after the header up to the next layer.
Transport Layer
This layer is responsible for the ordering and reassembly of packets that may have been broken up to travel across certain media. Some protocols in this layer also perform error recovery. The transport layer also decides which type of service to provide to the session layer, as well as establishing and deleting connections across the network. The most popular type of transport connection is an error-free virtual circuit channel that delivers messages in the order in which they were sent. Other possible kinds of transport exist that transport isolated messages with no guarantee about the order of delivery, and the broadcasting of messages to multiple destinations. This type of service is determined when the connection is established. This requires some kind of naming mechanism, so that processes have a way to describe with whom it wishes to communicate with. There must also be a method to regulate the flow of information, so that a fast host will not ove
their website's screaming speed.
Sig it.
Must go to evergreen
if instead of using the different pitches for 1 and 0, they converted the packet into trinary and used a timing system so they could count the two pitches as well as a period of silence, then the process could in theory be sped up. 64 --> 1000000 --> 2101
Esoteric reference.
Boombom! Boom! Boom pock! pock! pock!
mod parent post down. It's a google cache of goatse.cx.
The first step in the Bongo Link was to get most of the socket programming out of the way. To make things as transparent as possible, a bridge was determined to be the best way to implement the Bongo Link. For starters, two network cards were thrown in two Linux boxes for testing purposes, with a patch cable from the wall to the first Linux box, and cross cables between the others. Without having addressable boxes, data taken in from one network card was to be spit out through the other, and vise versa. C programming makes this very simple. Lets take a look at some code to make things clearer.
We first declare two file descriptors that will address each network card in the Linux box, s0 and s1. We'll also create some sockaddr structures that we will bind to our sockets later that will hold information such as which ethernet cards they'll be associated with, and the family type. The sockaddr structures are first cleared with the memset function, and then the family type and ethernet card device are copied into them. The file descriptors are then set to point to two corresponding sockets, which are created using the same family type as the structures and a special argument number which allows the sockets to be placed in promiscuous mode (they'll look at every packet on the wire). These sockets are then bound to the corresponding sockaddr structure. As soon as the two sockets are setup, we can simple use read() and write() calls to the sockets as shown below to read packets and send packets:
The buffer (buf) will be an unsigned char array (8 bits) which contain the packet that is to be sent, or the packet that has been received. Now we have all the coding required to make a bridge! All that has to be done is read everything from eth0 and write it to eth1, and read everything from eth1 and write it to eth0. Pretty easy. There's only one more catch... Since the users should not be aware of such a bridge, we don't want the Linux box to have any IP addresses associated with them (i.e. non- addressable since we want transparency) we must issue a simple unix command to remove any possibility of addressing before running the bongo link. Along with removing our addressable presence on the network, we also set the network cards themselves to promiscuous mode at the same time. We issue a ifconfig command like below:
We now have all the tools to make a transparent bridge as shown here:
Since we will require two linux boxes for the final implementation it's just as easy to set up:
There we go, everything's all set. With the above, you could experiment making your own personal firewalls or filters at a very low layers. In fact you could play around a bit too including re-writing packets as they're sent out - just make sure to recalculate checksums or the packet will be garbage. You could also try your skills at some sort of spoofing depending on how the local routers/bridges/switches are set up.
The Serial and Audio Cable
In order to simulate a Bongo Link, a cross-over 9-pin serial cable was constructed to connect the two linux boxes together. This was used for testing, as there was a concern for buffer overruns and packet dumping with such slow speeds between the two Linux boxes. A network card was ripped out of each
Interestingly enough the RIAA has filed a lawsuit against the student for copyright infringment as they think that the Bongos sounded a little to familar to another song that they believe they have the copyright for. They also are lead to believe that the user has not bought this cd and is holding other copyrighted mp3s on his computer in which they have already scanned completely and are holding all evidence in secret until his official military tribunal. SCO also has filed a lawsuit against him as they claim that he is also using a version of Linux that has some of there Legacy Unix code in it. Since finding out that this user was not using an M$ product, Microsoft has been pushing the defense department to move on this individual as they feel that he is a threat to national security and as the story winds down he is now being held in Guantanamo Bay as an enemy combatant awaiting military tribunal for connection to worldwide terrorism.
I feel we could at least make this concept work using our animal friends...... sure, the latency may be several days, and lost packets may occur due to internet predators, such as hunters, power lines, and cats........
The obvious choice to promote this standard, bongo boy himself:
Matthew McConaughey!
But will it handle VOIP? I can talk slowly if it'll help.
Looks like now I can use Bongo Drums and show them the article. This is great...
Good security is based upon reality and common sense. Common sense is a function of having common knowledge.
That Bongo player must have exhausted himself to death.
What time is it/will be over there? Check with my iPhone app!
You realize, of course, the whole process violates both Amazon.com and SCO IP...
You gotta admit, it's clever. I'm still trying to figure out how that link shows goatse.
Hey, cool! I'm working on a packet sniffer for this. It logs network traffic using MP3's.
Hey - can you guys possible imagine the noice level when this site - connected via tcp/ip over bongo drums - gets slashdotted? Amazing :) I'll bet you anything the system administrator does NOT need a fancy SNMP based netmon tool to realize he's got a problem.
Run TCP/IP over a cowbell and I'll be impressed.
What happens when drums stop?
TCP/IP over bass fiddle.
Please see Internet RFC 1149 which was written in 1990. Not drums, but carrier pigeons. I understand there is a linux implementation of this important, but for some reason ignored protocol. See also http://www.faqs.org/rfcs/rfc1149.html for important news.
Deep thoughts....
A collision is hearing drum beats at the same pitch/tone.
If the FCC has any jurisdiction in the 20 Hz - 16000 Hz range, you'd need to get a license to transmit wireless data.
It would be an excellent way for VanJacobsen to do network debugging compared to 300bps modem. "That didn't sound quite right. You sure you set the right TCP options?"
Can you multiplex bongos pitched at different frequencies or transmit asynchronously? Eg: High pitch (snare) versus low pitch (bass) bongo?
I can imagine that one can get much better bandwidth with less range using the same concept from other musical instruments (like a piano).
A bongo is at the physical ISO layer. One can do PPP negotiation at layer 1/2 between two differently pitched drums, or use CMSA/CD (like AlohaNet or Ethernet) at layers 1/2 if all of the drums have the same pitch.
A musician makes a better router than a Cisco.
I graduated in the spring with Dan. I was in that class and the demonstration was pretty nifty( if somewhat lost on some of the less enthusiastic students). Dan is a smart kid and professor Townsend was one of the cooler more accesible profs in computer science. I talked with dan over a year ago about submitting this to Slashdot, so it's very cool to see. :) It is somehow gratifying to see your former school get Slashdotted.
Kudos to Dan, and i imagine Tack was very unpleased with the sudden increase in traffic
Not your friend's professor but 'The Professor' himself, Neil Peart.
to be able to surf wirelessly from within the Tiki Room at Disneyland within 2 years. LOL
might be a good idea for a couple local public libraries to get a set -- i'm sure they'd be popular.
Considering that it's a Google cache of http://eagle.auc.ca/~dreid, I'm thinking that http://eagle.auc.ca/~dreid is a mirror of goatse.cx.
But my proposal actually let the network traffic create a nice rhythm by not requiring the data to arrive linearly.
Site here
Extend your wireless network range without worrying about those pesky fcc transmission strength regulations. Use a subwoofer and get your signals to pass through aluminum siding or metal floors in buildings. Rice mobiles could have a field day.
The Bergen Linux User Group actually implemented RFC 1149 during 2001. See http://www.blug.linux.no/rfc1149/ .
"That TanyaPorn06.jpg transfered in bongo matches the sound of the new 'Bongos from Africa'-album. SUE THEM!"
Insert `fortune -o` here
Cisco introduces the new 'Carl Palmer' router line
They are called Olodum
It's enough to drive you mad, but Psion 3a's could communicate by beeping at each other. Package here.
I believe that picture shows Feynman a conga drum, rather than the smaller bongo drum.
-kgj
Run TCP/IP over a cowbell and I'll be impressed.
Who could forget this Saturday Night Live sketch? One of the best:
Transcript | Windows Media Video Capture (4.3MB)
You just can't get a good sharp beat off the electrical cables unless they're strung nice and tight. But each time the drumstick hits them, they tend to sag. You'd be better off using a traditional snare drum.
Peart had lots of drums, but couldn't keep the speed up for those multi-megabyte MP3 downloads.
oh brave new world, that has such people in it!
wonder how long it would haven taken if they had used a swallow...
What do you mean? An African or European swallow?
(sorry, but it had to be asked.)
Tequila: It's not just for breakfast anymore!
now i wanna hear how a jabber sounds like on those bongos! another unit to add to the Hacker's Dictionary: bps == bongos per second