The pigeon protocol

How the Talmud, hacker whimsy and a love of Linux inspired a group of Norwegian programmers to attach packets of computer code to birds' legs.


Peter Meyers
May 10, 2001 11:00PM (UTC)

At first it sounds like the setup to a joke: "One day, a group of Norwegian computer programmers takes a handful of carrier pigeons and heads into the hills." But late last month that's exactly what happened and, for a few hours at least, everyone -- pigeons included -- got serious trying to prove that birds could deliver data between computers.

Why? "More or less because it was a fun thing to do and no one had done it before," says Vegard Engen, one of the group's organizing members.

Advertisement:

The Norwegians, based in the town of Bergen, were implementing an American programmer's idea from more than a decade earlier. It jokingly proposed that Internet data that normally travels over copper wire and fiber-optic cable could instead be printed out from one computer, attached to a carrier pigeon's leg and flown to another computer.

"This is the way the Internet actually works. You output a packet and you put it in something -- something that transports it," says Peter Hansteen, another team member. Hansteen's voice is low, almost conspiratorial, and he sniffs just before he laughs, which is often, as though he is a villain in a Batman movie. But he is actually very friendly, giddy even, especially when he is talking about pigeons. "To the computer that sends that packet it actually makes no difference what the actual transport is. It could be a pigeon."

What's interesting about the whole episode -- from the apparent pointlessness to the collaborative effort to the whimsy -- is that it provides a glimpse not only into what quirky Norwegians do for fun but also into the equally quirky way the Internet was created and continues to develop. But first, back to the pigeons.

As with most encounters between pigeons and people, this one started because the people had been drinking. After a meeting in February of the Bergen Linux Users Group, a number of members, including Engen and Hansteen, went off to a bar. They got to talking about things. Things like whether they should invite an eminent Linux figure to visit later that spring, whether, one of these days, they should maybe get around to implementing that crazy pigeon proposal and whether to order more beer. Yes, yes and yes.

Two months later, on April 28, the group -- including the distinguished guest -- assembled, ready to begin the experiment. A few of them went to the house where the pigeons would be released; the others went to another house a few miles away.

Technically what they were going to attempt was something known as a ping, which is a method used by one computer to check for the presence of another computer on a network. (The word, which is an acronym for Packet Internet Groper, was chosen because, among submariners, it refers to a returned sonar pulse.) One computer pings another by sending a small message that says, in effect, Hello, do you hear me? If yes, please send this message back.

Advertisement:

Engen was appointed the role of pinger. Hunched over a laptop that had been set up on a table outside the house with the pigeons, he began typing commands. Next to the laptop, eyeing him, was perched a 2-inch-tall toy penguin, the mascot of the Linux movement. The message he composed was printed and cut, using scissors, into "packets" -- small portions of computer code, nine of which would eventually be sent using separate pigeons.

The first packet was rolled up and attached with a rubber band to the bird's white-feathered leg. There was a short delay when the pigeon stopped on the railing of the deck from which it had been released. It stared at the Norwegians, then flew off.

Besides the drinking in the bar, the reason the Norwegians were there at all was David Waitzman. Eleven years earlier, Waitzman, now 35, had written a document titled "A Standard for the Transmission of IP Datagrams on Avian Carriers" -- IP datagrams being the small packets that information gets broken into as it traverses the Internet. (IP stands for Internet Protocol, the method by which data is sent between computers.)

"What inspired it was someone [who said], 'Do you know the old tin can connected by string?'" says Waitzman, who works for BBN Technologies, now a unit of Verizon and one of the companies originally involved in building the Internet. "Someone mentioned that and then I thought about homing pigeons, carrier pigeons. Now that's a pretty obvious idea, trying to do networking with them."

Advertisement:

Obvious, of course, is a relative term. Most people who hear talk of tin cans and string think of elementary school. Waitzman sat down and wrote his proposal, technically called a "Request for Comments" or, as it's known among techies, an RFC, which was published online by the Information Sciences Institute (ISI) at the University of Southern California on April 1, 1990. The ISI assigned Waitzman's proposal the number 1149.

What Waitzman did was actually part of a larger tradition of practical jokes that technologists have long been staging. Eric Raymond, a veteran observer of hacker culture and author of the open-source manifesto "The Cathedral and the Bazaar," calls it "the artful hack." "There's a sort of grand tradition of the artful hack that is intertwined with the history of the Internet and the hacker culture," says Raymond.

High points include the MIT students who, in 1982, just before a Harvard-Yale game, planted an electric-powered weather balloon under the 40-yard line of Harvard's football field. Released after a Harvard touchdown during the first quarter, the balloon expanded to about 6 feet in diameter, proudly sporting the message "MIT," then burst into a cloud of white smoke.

Advertisement:

"The ideal artful hack is clever, technically sweet and harmless and has a sort of glorious pointlessness about it," says Raymond. "And the RFC 1149 implementation is absolutely perfect in this respect."

There's an odd mixture of pointlessness and purposefulness in both Waitzman's document and the Norwegians' implementation. Waitzman wrote the proposal essentially on a lark -- because someone had mentioned tin cans and string and because he wanted to contribute to the long-standing tradition of April Fools' Day RFCs. (He wrote another pigeon-related RFC in 1999.) But he took great pains to write it carefully, even using as a model the well-honed language of the Talmud, which, as a religious Jew, he's familiar with.

Waitzman says "the Talmud is fascinating because of the precision -- especially in the oldest pieces that the rest of it is a commentary on. Every single word is weighed so precisely and if a word is missing it means something ... If there's redundancy in some phrase, you have to learn something from both pieces of the redundant text. And in a very weak way, when I was writing these documents I was weighing words and trying to get the maximum value from each word."

Advertisement:

This careful attention to language is key to the proposal's humor. At one point Waitzman writes that "audit trails are automatically generated, and can often be found on logs and cable trays," which is an RFC way of saying that pigeon poop can help track the bird's path.

The Norwegians in their own way were having fun, but also seemed keen on demonstrating craftsmanship worthy of the hacker tradition. "Of course it was done for joke purposes but the project itself was pretty serious. We have been serious about it. We had an appropriate implementation," says Engen, sounding sternly humorous in a way that perhaps only Scandinavians can.

About an hour had passed since the first pigeon's takeoff. The crew awaiting the ping signal's arrival was getting fidgety, since the flight should have taken only about 10 minutes. Hansteen explains: "What happened was they joined up with a few other pigeons and were having a ball flying around over the valley, and after about an hour they broke off. And then of course there was a slight delay when the first pigeon landed on top of the roof ... and started cleaning its wings."

Eventually the pigeon descended and from there things progressed quickly. The packet was removed and scanned into the computer, and, the ping having been made, the steps performed on the trip's outbound leg were reversed: The return message was printed, rolled up, attached to the pigeon and carried back home. In 6,165,731.1 milliseconds -- or about an hour and a half after the pigeon departed on the return journey -- the code was scanned back into the original computer and registered a successfully completed ping. Message accomplished.

Advertisement:

Explaining -- perhaps the better word is justifying -- all this to outsiders turned out to be tough for the team. "I haven't actually found the right way to explain this to a nontechnical person," says Hansteen. His experience is reminiscent of beginning computer science students who, emerging from a sleepless, Mountain Dew-fueled code-writing binge, can't communicate the joyful accomplishment they feel at having written a program that, say, adds all even numbers between one and 50. The invention is so much more important than its output.

One reason computer people are often a cloistered, close-knit bunch is that they don't have to justify to one another their will to create. To noncomputer people, they do. Hanseen says that when he tries to explain what his group did, there's a pretty clear dividing line among his listeners. From "technical people, usually I get a grin and 'Oh yeah, that sounds cool.' And the other category: 'Yeah, then what's the point?'"

Raymond, the hacker observer, says the point is that the Internet was more or less built upon a foundation of informal collaboration, of individuals proposing ideas to the larger community much in the way that Waitzman proposed RFC 1149 and the Norwegians implemented it. The ideas that make sense to enough people get codified into the standards that everyone agrees to abide by. The Internet Protocol, for instance, began as an RFC.

What makes the writing and implementation of Waitzman's pigeon proposal more than just a few guys having fun is how it serves as a reminder that the spirit that created the Internet is alive and well -- immune to the NASDAQ's ups and downs.

Advertisement:

"I think that people can stand to be reminded that the Internet was created by a spirit of playfulness," says Raymond. "The playfulness in the original joke RFC and the really high-level playfulness that these guys have displayed in getting carrier pigeons to do a ping for them are really inseparable from the kind of creativity that produced that technology in the first place."

Will carrier pigeons ever be used to deliver information packets between computers on a regular basis? Probably not.

Will technology lovers continue to have fun with their tools and toys? Engen, one of the Norwegians, says: "Oh yes, I will still be playing with computers. I'm actually more certain that I will be playing with computers in the future than I am that I will be working with computers. Work can be real boring, but play is always fun. There's just too much fun to be had with computers that you'd run out of it."


Peter Meyers

Peter Meyers is a freelance writer.

MORE FROM Peter Meyers

BROWSE SALON.COM
COMPLETELY AD FREE,
FOR THE NEXT HOUR

Read Now, Pay Later - no upfront
registration for 1-Hour Access

Click Here
7-Day Access and Monthly
Subscriptions also available
No tracking or personal data collection
beyond name and email address

•••





Fearless journalism
in your inbox every day

Sign up for our free newsletter

• • •