From Fedora Project Wiki


GNU/Linux systems have often come under attack for the difficulty involved with setting-up and configuring various wireless devices. Thanks to NetworkManager we now have a system that allows us to quickly and easily connect to different networks. As a result of improvements made to NetworkManager during the Fedora 8 release cycle the developers are ready to deliver some incredible new features, including ad-hoc networking, multiple active devices and internet connection sharing. To find out more we talked with Dan Williams, Fedora project member and NetworkManager developer.

Digg It

If you enjoy this interview, please feel free to give it a digg :)

Developer Interview

File:Interviews DanWilliams Picture1.jpg

Dan Williams

Occupation: Software Engineer, Red Hat inc

Location: Boston, MA

IRC Nick: dcbw


Age: 27

Interviewed by: JonathanRoberts

Fedora 8 saw a big push to get NetworkManager 0.7 included. What were the benefits of doing this for Fedora 8?

Dan Williams: The point of including NM 0.7 in F8 was current and future functionality. The big thing we did with 0.7 was to rewrite the configuration interface to be much more flexible, specifically to allow things users wanted like:

  • static IPs, multiple IPs per interface
  • connections before login (just landed)
  • multiple active devices
  • internet connection sharing
  • mobile broadband card and better PPP support

None of this is really possible with 0.6.x, and where some of it is (dial-up connections) it's an ugly inflexible hack. We tried to match feature parity of NetworkManager in F8 with that of F7, and we mostly hit that goal. Since then each update to NetworkManager has brought additional functionality to users of F8.

Presumably, with the rewritten architecture in 0.7 and Fedora 8, there are now a lot of possibilities for what can be achieved with NetworkManager. What are you specifically hoping to see delivered in Fedora 9, and what are the potential benefits for end-users?

Dan Williams: The multiple active device rework is on track for F9. This will enable connection sharing and make for smoother connectivity since NM won't take the wireless device down right away when you plug in the cable.

We'll also probably land a rewrite of the of the applet just after F9 to better support multiple active devices. The current applet menu doesn't scale well here. Brian Clark has some pretty awesome mockups for what the applet might look like, which would make it much more functional for users.

Driver are also getting a lot better for F9. Since most new hardware is supported by mac80211, there's so much more consistency there than when we had 3 or 4 different implementations of Wireless Extensions that NM and the supplicant had to talk to. Many of the issues people have with connecting to wireless networks can be traced to poor, inconsistent driver implementations.

All of the NetworkManager-specific improvements should also land in F8 as updates, simply because we pushed to get NM 0.7 into F8 in the first place.

To me, ad-hoc networking and connection sharing sound like particularly exciting benefits - would you like to talk about these a bit?

Dan Williams: These depend on multiple active devices, of course. NM supports three device types right now, mobile broadband cards, wired, and wifi. Ideally you'll be able to share any of these connections with any one other connection.

So you bring up your mobile broadband card and tell NM to share that connection over wireless. NM might create a new Ad-Hoc wireless network, get an automatic IPv4 address, set up NAT, and advertise itself as a router for other wireless clients like Mac OS X does. Magic.

Is NetworkManager going to be the default across the whole of the Fedora Project for this release? With the plans to use PolicyKit to allow for system-wide configuration changes from nm-applet, will this replace system-config-network?

Dan Williams: I expect it will replace system-config-network for a large class of users. I don't expect NM will soon replace advanced networking use cases like bonding, vlans, or really complex routing configuration. There's enough work to make NM solid without irresponsibly expanding its use-cases to things we can't yet handle well. At some point I'd like to see ifup/ifdown poke NM to do the right thing instead of running a pile of shell.

KDE 4 is shaping up to be a major feature, for all the next major distribution releases, yet KNetworkManager hasn't been functioning with NetworkManager 0.7. Has this problem been resolved, or will it be by the release of Fedora 9?

Dan Williams: While I don't directly work on KNetworkManager (I have enough to do with NM itself), I'm excited about having it solid for KDE users. Newer snapshots that work for wired & wireless devices have hit rawhide and are in-process for update in F8. There's more work going on upstream to whack it into shape too. I'd expect that the KNetworkManager situation will be significantly better for F9 than it is for F8.

And finally, could you tell us a little bit about yourself? What got you interested in free software originally? What do you like to do with your spare time when not at a computer!?

Dan Williams: I did a lot of Mac development before and during college. I worked on the PennMUSH Mac port for a few years, and got involved in the Mac port after that, helping to release the first usable, packaged version for Mac OS X. I got hired by Red Hat originally to work on in late 2003.

Outside of work, I enjoy cooking, playing with electronic gadgets, watching movies, reading & buying cellular telephony and used archaeology books, and hacking on NetworkManager :) I sometimes suck it up in various Half-Life-based games (CS, TF, DoD, etc) as 'fa'.