I just had lunch at Bungalow Billiards in Sterling, Virginia, with a guy named Vint. Yeah, we're talking about "The Father of the Internet" Vint Cerf, the one with the "Cerf's Up" license plate on his Jaguar, ICANN Chairman, head tech honcho for WorldCom, holder of more honorary degrees and academic awards than most people have pairs of socks. You run into all kinds of people at Linux User Group meetings. I ran into Vint at a meeting of the Northern Virginia LUG, as did 70 or 80 others.
This wasn't a day or time to discuss ICANN's problems, and Vint wasn't the only guy at the meeting caught in WorldCom's bankruptcy. Indeed, he was speaking at the LUG meeting courtesy of WorldCom co-worker Tim Bogart, who is a major Linux advocate both at and outside of work, and the topic of the day was extending the Internet beyond the Earth, to take it where no TCP/IP has gone before, you might say, and how Linux and Open Source are moving into space along with the Internet.
In between his day-to-day work, which takes him all over the world, from Massachussetts to Morocco, Vint is also a major space buff, and his big personal pet project is the InterPlanetary Internet Project. This is not a SETI-type search for alien life, but a practical vision of linking human-launched space exploration devices -- especially those NASA plans to send to Mars in the near future -- with each other and with their home planet via an Internet-style network.
A Wired News story talked of how Vint and Tim Berners-Lee got "blank stares" when they talked about building an interplanetary Internet at a Telluride, Colorado, tech conference last month. There were no blank stares at the LUG meeting. In this room -- a plush auditorium at DynCorp's headquarters -- there were nods, note taking, and serious questions about implementation. This was not "Dr. Cerf, Corporate Honcho," speaking, but Vint the Geek in a room full of fellow geeks, discussing the problems of building networks that may have latency measured in minutes or hours, nodes that can't always contact each other because they are in orbit around assorted planets and moons that constantly move in relation to one another, plus wildly asymmetrical bandwidth capability on the main interplanetary backbone, plus different communication speeds and abilities within the networks on (and surrounding) each planet.
You don't just run some fiberoptic cable to Mars and hook up a couple of routers to make an Interplanetary Internet. It's a little more complicated than that. You need to worry a lot about what Vint calls "delay tolerant networks" that can store and retransmit data to each other, and worry about routing that can't be done with the typical Earthside, "Did you get that packet?" "Yup. Now send the next packet, please," protocol we are so used to using (and which was developed in large part by Vint Cerf, don't forget). Instead, Vint says, you end up dealing with "predictive routing protocols," and using a system more like email than like HTTP information transfers, in that the device sending data may not know whether the receiving device has gotten it for minutes -- or hours or days, depending on the locations of the various Earth stations, satellites, Mars Rovers, and assorted sensors the Rovers may scatter on the Martion surface. Perhaps, once in a while, when the moon is in the summer sky, and Jupiter aligns with Mars, all the various parts of the Interplanetary Internet will be able to talk to each other at the same time, but this is going to be rare. More commonly, small sensors on Mars will send weak but high bandwith signals to either a Mars Rover or a satellite in Mars orbit, which can relay those signals quickly to other devices on or near Mars if this is necessary, but must also transmit them comparatively slowly to Earth. And a reply from Earth can take 40 minutes if the satellite orbiting Mars happens to be on the side of Mars facing Earth at the moment the return signal from Earth reaches it, and might take much longer if the Earth station has to wait for the satellite to be in the right position to receive its signal.
Suddenly, signal timing has a meaning far beyond what it has when you are working with Earth-to-Earth communications, and you get whole working groups and email lists that deal with nothing else. There is also the question of resource use. The NASA Deep Space Network (DSN) has three main locations that handle communications with all off-planet probes. If at least one DSN dish antenna isn't pointed in the right direction at the right time to receive signals from a given project, essential data from that project might not be received. Right now, Vint says, they rely on humans for most of the dish scheduling, but as the number of off-planet projects increases this is going to become less and less practical, and the process is going to need to be automated as part of the overall communications protocol.
Where Linux and Open Source fit in
Most current space-going devices rely on custom, real time embedded operating systems designed for each mission. As you can imagine, coming up with a complete new OS for each device is both time-consuming and expensive. If the next words out of your mouth are, "Why don't they just use Linux?" you are not saying anything NASA and JPL people haven't said already. This is where they are going on the operating system front. They like Linux because it can be installed on very small systems like static probes that sit on a planet or asteroid's surface and do nothing but measure heat and sunlight and a few other variables, then send the information they collect to a Rover or satellite, but can also be used to run more complex devices, like Mars Rovers and multiple planet fly-by spacecraft, that must be able to operate with a high degree of autonomy.
Reliability is also a factor. There are no MCSEs on Mars to reboot computers that crash. Indeed, half way through his sophisticated, heavily animated PowerPoint presentation, Vint's Windows 2000 laptop crashed. You can be the Father of the the Internet all day long, but when you're in a room full of Linux people, and you use Windows and it crashes on you, the room will inevitably break out in laughter. Maybe it's time for Vint to start running Linux on his laptop, eh? (He sure as heck expects Linux, not Windows, to run the next generation of spacecraft, so it would be a logical move.)
On the "Open Source in general" side, think about all the applications it takes to run assorted spacecraft, satellites, plantetary probes, and whatnot, plus the communications systems needed to link them all together. Why not Open Source all their code, and not only share it between projects to save money, but also let the rest of the world look at it and suggest improvements? There are plenty of space buffs out there who write or play with Open Source software, right? Many pieces of the Interplantery Internet are already being developed in public. There are newsgroups, email lists, grad student projects and that sort of thing all over the place. If you are interested, there are all kinds of links on the InterPlanetary Internet Project site you can follow to learn more about getting involved. Not all of the APIs and code for the whole delay tolerant network have been released yet, but Vint says their release is "planned for this year." Open Source, baby. Yeah!
Security is being designed into the system right from the start. Not "security through obscurity," but the real thing. This is an important factor. It may be great for lots of people to follow interplanetary data collection, but Vint says he and others spend a lot of time worrying about intruders taking control of the network. "We're building in security from end to end," he says, "because we don't need headlines saying, '15 year old takes over Mars.'"
Lunch with Vint
The presentation started an hour after the planned 10 a.m. start time due to a schedule screwup, but people are tolerant of this sort of thing at most LUGs. There's always plenty to talk about while waiting for the main speaker, like the future of UnitedLinux, plus announcements, plus discussion of those announcements, and so on. But eventually things get under way, go well, and after a spirited Q&A session it's time for NoVaLUG's usual post-meeting "equipment swap in the parking lot" (quite an event, let me tell you -- some very nice stuff changed hands), followed by adjournment to the nearby Bungalow Billiards & Brew Club, where Vint Cerf perches on a stool at a high table and eats a hamburger like everyone else, and yaks with the young ex-Marine sysadmin next to him, and with Tim Bogart, and with the rest of the crowd, a geek among geeks, talking about the same things that all geek gatherings everywhere talk about.
Beer is ordered and consumed. Internet matters and car preferences are discussed. Anecdotes about the early days of the Internet and FidoNet and pre-TCP/IP protocols are told and chuckled over. Vint wistfully admires the ultra-cool Red Hat install the young ex-Marine has on his new, totally slick Toshiba laptop. Heck, we all admire it. Vint is jealous, I'm jealous, we all suddenly want one of the things. You can give a geek like Vint a bunch of titles and honors, and he may be 59 years old, but when he sees a cool new feature-laden laptop running Linux, his eyes light up as brightly as any college-age gadget junkie's.
We can talk about Vint Cerf's involvement with ICANN and ISOC another time. He and I are on opposite sides of most arguments about both groups, but this is a LUG meeting, and a LUG meeting is not the place for that sort of conflict. LUGs are where technical matters are discussed, where Linux hints and tips are shared, where people come to learn from each other. They are not good places for religious or political arguments.
So join your local LUG, already!
Maybe Vint Cerf won't speak at your local LUG's next meeting, but you never know. All kinds of tech luminaries seem to pop up at LUGs, and even if a LUG doesn't get a constant string of notable speakers it's still the best place to ask and answer Linux questions, whether in person at a meeting or on the email list almost every LUG maintains to keep members in contact with each other between face-to-face meetings.
There is almost certainly a LUG near you. Even if there's not one close enough to attend physical meetings all the time, there's certainly one within email range. The best worldwide LUG list we've found is at the Linux Users Groups WorldWide site.
Your move! :)