February 22, 2007

Etherboot's leaders are breaking new ground

Author: Robin 'Roblimo' Miller

Etherboot is an open source project that gets little public notice, but is essential to almost any other open source project that relies on thin clients or network booting. Here's a lightly edited log of an IRC conversation with Etherboot project leader Marty Connor and primary Etherboot developer Michael Brown.Linux.com: Marty, how did you originally get involved with Etherboot?

Connor: I went to a Red Hat trade show back around 1999. I was looking for something interesting. The deal was that I was going to wander around and find the coolest thing that I could at the show. Turned out the network booting was it! :)

So I found my way to the Etherboot project, which was a fork of the Netboot project. I joined the mailing list, started trying to do useful things, and became part of the project.

Linux.com: How did you rise to the lofty status of Project Leader?

Connor: Well, that's a bit harder to explain. One day Ken said he no longer wanted it, and I kind of picked up the ball.

Linux.com: Ken (?)

Connor: There have been three leaders of Etherboot: Markus Gutschke, Ken Yap, and Marty Connor.

Brown: You decided you wanted to take Etherboot in a new direction.

Linux.com: Did you lose developers over the change?

Connor: We lost a developer or two, but not too many. The fundamental disagreement had to do with whether to embrace the industry standard specification for network booting, PXE.

Linux.com: Which side were you on?

Connor: I felt that unless we did that, we would be limited to a niche role, and so I strongly supported the move -- so much so that I provided initial funding for it, and forked the project in order to allow it to grow.

Linux.com: This was in what year?

Connor: 2004 I think. Basically, when I say "fund," I mean that I paid Michael to do the work. The core work on Etherboot and gPXE has always been done by usually one or two people, with others doing drivers, testing, and associated work.

Linux.com: Michael, were you already working on the project as a volunteer?

Brown: Yes, I'd been with the project since 2002.

Linux.com: So suddenly you were getting paid to do what you were doing for free. How did that feel?

Brown: My first contact with Etherboot was paid work (although not by Marty).

Linux.com: How so?

Brown: I was working with schools implementing diskless Linux clients, and one school wanted wireless diskless clients, which meant finding a wireless network booting solution. No such thing existed, so I wrote a driver for Etherboot for one of the early 802.11b chipsets, which was paid for by the school in question.

But the project was so welcoming that I stayed around. I now manage to work almost full-time on Etherboot.

Linux.com: Marty, how about project growth? Has it gotten more use/downloads since 2002?

Connor: Oh yes. I run a site called ROM-o-matic.net where people can dynamically generate Etherboot images. It's the easiest way. And growth has been quite strong. We generate now about 3,000 to 4,000 images a week. It is pretty much where most people get Etherboot ROMs. They can, of course, download the source and do make bin/rtl8139.zdsk.

Linux.com: What other projects make use of Etherboot?

Brown: Grub uses some version of our drivers. LTSP, of course.

Connor: link:http://etherboot.org in Google returns 337 sites linking to us. Not huge, but pretty good. Pretty much anybody who advertises thin-client booting mentions us. We get mentioned in articles all the time in Linux magazines, both in print and online. When we're at LinuxWorld we get tons of people wandering up saying they use our stuff to boot their supercomputers, or clusters, or POS systems or LTSP machines, or library terminals.

We were also shocked how many applications we got last year when we participated in Google Summer of Code. I think it was around 30 applications, which was astonishingly high for such an obscure area of computing. We picked 12, but were only allocated 4 slots.

Brown: And we did get some good code out of it.

Connor: Yes, two of the students were exceptional. (Don't want to insult the other two.)

We were very pleased to see so many people who were interested in bare-metal programming. We have severe constraints on memory and other resources, so it is a kind of programming that requires attention to detail. We have around 64KB total to play with.

We hope to participate this year as well, and are really excited about it. We had a good time helping students -- they were neat to get to know. I think last summer working with the GSoC students was really rewarding. It's really true that you don't know what you know until you try to explain it to someone else!

Linux.com: You've casually mentioned that you have some new stuff coming. Want to tell the world?

Brown:iSCSI and AoE boot are the features that seemed to interest most people at LWE, i.e. booting directly from NAS boxes, which means being able to diskless-boot Windows Server 2003.

Connor: gPXE (our newest code) is cutting-edge. It is quite possibly the most advanced network booting code around.

Brown: Storage virtualization seems to be becoming more and more common, and we provide the boot component of that, which means that the end user doesn't need to have a separate boot server just to provide the OS images to the servers which otherwise use wholly virtualized storage.

Connor: It's a natural evolution, really.

Linux.com: You mention diskless booting of Windows Server 2003. What about licensing?

Brown: You need a Windows 2003 licence.

Connor: Forever, sysadmins have hated the idea of disks being in workstations. There are so many things that can go wrong.

Linux.com: Can you boot more than one instance?

Brown: I don't know the precise terms of the licence, but I imagine that it doesn't make any difference whether you store it on an iSCSI disk rather than on a local disk. What we are allowing is for people to keep their workstations, and put their disks someplace more secure. You're mounting the iSCSI disk directly as a block device, rather than using a file-level protocol such as NFS, so it's not technically possible to mount the same iSCSI disk from two machines simultaneously -- at least, not without a cluster-aware file system.

Connor: This is really quite a useful technology. AoE (ATA over Ethernet) is a lower cost version -- iSCSI tends to be higher-end.

Brown: But iSCSI boot does allow you to boot several machines from the same image, provided that you have only one of those machines booted at any one time.

Connor: In another area, we are also enabling people to boot their machines from Web servers, instead of tftp servers (which have become very rare). We are truly breaking new ground in network booting. The industry has been very stagnant for the most part for many years, mostly because of the license issues you allude to. With FOSS, we can actually do what the technology allows and encourages, which is sharing.

AoE is a very lightweight, efficient LAN protocol. Coraid, the company that promotes it, funded the development of our AoE boot code.

Linux.com: Who else works on/helps with Etherboot development?

Connor: We have various people who contribute driver code, and fixes from time to time..

Linux.com: Any other corporate sponsors deserve mention?

Brown: Solarflare Communications deserve a mention. They funded development of an Etherboot driver for their NIC, and then all the iSCSI work.

Linux.com: How do you find corporate sponsors, or do they find you?

Connor: I think both things happen.

Brown: Yes; I occasionally get contacted by people who have found my name on the Etherboot mailing list and who want some work done.

Connor: We get leads at LinuxWorld. We also really enjoy getting together with Donald Becker (Linux kernel network drivers) and H. Peter Anvin (SYSLINUX author) and other network booting people.

Brown: With Coraid, I just emailed the CEO and said, "I'm working on iSCSI boot support; would you like to fund the tiny bit of work required to add AoE as an extra protocol?"

Linux.com: Marty, does the project still cost you money out of pocket?

Connor: Sure it does, but I love doing it. I pay for a dedicated SDSL line for rom-o-matic.net, and LinuxWorld Expo is a pretty big expense, but I really enjoy doing it.

Linux.com: Would you like the project to become self-supporting? Think it ever will?

Connor: It's possible; I don't worry much about it, though I have dreams sometimes. As long as it's fun to do, and does some good, I'm happy to do my part. Michael is the one who make the money. :)

Brown: I regard Etherboot as pretty much my full-time job now.

Linux.com: Do you have any thoughts on finding new funding?

Connor: Well, commercial interests do fund a lot of development. In terms of business planning, it's just now getting to the point where I think we have something embeddable -- something that business customers can use as a component technology.

I believe we are on the verge of that, and that funding for development will become easier to come by (though Michael is doing very well even now).

gPXE was only a dream 2.5 years ago, and now it is a reality, thanks to Michael. I believe we're on the verge of changing the way people think of network booting. The amazing bandwidth available now means that people can boot devices at will, even over the Internet.

(I get excited over network booting! :)

Click Here!