GSoC/GCI Archive
Google Summer of Code 2015

Boston University / XIA

License: GNU General Public License version 2.0 (GPLv2)

Web Page:

Mailing List:

Interested in finding out what will come after TCP/IP? Finding TCP/IP's successor is the ultimate goal of our project. We do not assume that our project will derive the answer per se, but that the platform we are building can help crowdsource the future Internet. Linux XIA, our interoperable, meta network architecture implemented in the Linux kernel, offers an evolvable, collaborative framework, in which old and new designs can coexist and enrich each other. Does it sound far fetched? Check out our exemplifying demo.

Established in 2010, the XIA project is a collaboration between Carnegie Mellon University, Boston University, University of Wisconsin - Madison, and Duke University. Linux XIA is developed at Boston University (BU) under the supervision of Computer Science Professor John W. Byers, one of the principal investigators of the XIA project. Michel Machado developed Linux XIA as part of his Ph.D. thesis, and continues the development as a postdoc at BU. The team at BU also includes the Ph.D. students Cody Doucette and Qiaobin Fu, the Masters student Alexander Breen, computer engineer Yuguang Li, and high-school senior Aaron Handleman.

The suggested projects that we have in our ideas list cater to a wide set of backgrounds, so you can join our quest for the future Internet. On your journey, you will have plenty of opportunities to learn new technologies, and, perhaps, create a few too.

In case you have a personal question that you don't feel comfortable posting in our mailing list, e-mail me: michel dot machado at gmail dot com. Please use your discretion and don't e-mail me directly if your question can be read by others.


  • Andre Eleuterio GSoC Proposal for the Linux XIA team at Boston University Proposal regarding the project Extending OVS to support XIA's headers from the Ideas List of the Linux XIA team at Boston University. In this proposal, I explain my academic background in detail, followed by an explanation of my responsibilities and availability during the summer. I conclude by explaining my approach to the project and how I am preparing to complete it successfully.
  • Extending XLXC to support arbitrary network topologies Developing a ruby library defining topology and parameters of the nodes and links. Replacing Linux bridges with OVS. Extend XIA Linux Container(LXC) support for topologies other than star and complete topologies. Using yED to represent complex topologies. Importing topologies from RocketFuel.
  • Implementing perfect hashing for mapping XID types to loaded principals Linux XIA needs to hash XID types to unique buckets in a couple of places of its codebase. This mapping must be highly efficient because it affects the speed of routing packets, so if there is a guarantee that no two XID types hash to the same bucket, the code can make fewer memory accesses. This problem is called perfect hashing in the literature.