Software
Some of the open source research software that I've written in the past.
Wireless
SlyFi [home
page]
Our Linux implementation of SlyFi, an identifier-free wireless link layer
similar to 802.11. Compatable with Atheros chipsets. (Used in our MobiSys 2008
paper.)
This software was developed in collaboration with Intel Research
with Ben Greenstein.
Wifipcap [source 20080201]
A C++ wrapper around libpcap that parses 802.11 frames, and the
most common layer 2 (IPv4, IPv6, ARP) and layer 3 protocols
(TCP, UDP, ICMP) contained within them. Also works without link-layer
headers. Works in Linux and Windows.
Wifi-Profiler [source 20070909]
Wi-Fi fingerprinting library and tools used in our MobiCom 2007
paper. These tools take in 802.11 pcap traces, generate Baysian classifiers
for identified users in those traces, and classifies users by their
traffic in unidentified 802.11 pcap traces. This package depends on
wifipcap (above) and R.
Wifi-Scanner [source 20090415]
Wi-Fi network scanner/wardriving tool used in our MobiSys 2009 paper.
The main difference between Wifi-Scanner and other war driving
tools is that it has a more complete Wi-Fi Network Manager that
supports logging into WEP/WPA networks, remembering passwords for
these networks, supports login through AP portal/splash pages, and
performs a battery of measurement tests after you login.
This software was developed in collaboration with Intel Research
with Ben Greenstein and Michael Kaminsky.
Network Games
Colyseus [home page]
Our distributed architecture for multiplayer games and distributed
versions of Quake II
and Quake III. (Used in our NSDI 2006 paper.)
Donnybrook [source 20080817]
Our peer-to-peer architecture to enable hundreds of players in the
same FPS game with no dedicated server and a version of Quake III
implemented on Donnybrook.
(A full implementation of our SIGCOMM 2008 paper.)
This software was developed in collaboration with Microsoft Research
with Jacob R. Lorch and John Douceur.
Utility
GCrypt Kernel Module [source 20071026]
A quick and dirty port of libgcrypt to a Linux kernel module. The userlevel
API is maintained, so you can use this module to compile crypto code both
for the kernel and in userspace. I ported this since I couldn't find any
other kernel level implementations of public key crypto algorithms. This
includes RSA, DSA, and ElGamal.
Travertine [source 20070315]
A Perl module that includes
routines for parallel execution, remote script execution,
serialization, and other functions useful for deploying and managing
distributed applications. This module is part of the Colyseus project,
but it has been useful in its own right in many other projects and
works as a standalone module. It is also fairly mature, as we've been
using it for several years now.
WaspNet2 [source 20070315]
A simple Linux kernel module that emulates bandwidth, loss, and
delays. WaspNet2 was primarily designed to emulate topologies of
typical peer-to-peer applications: thousands of nodes where each
physical machine emulates multiple virtual nodes, each pair of nodes
has a unique RTT, and each node has access link bandwidth
bottlenecks. It has been used on 2.4 and 2.6 kernels. WaspNet2 is
based on Eric Nahum's WaspNet, which is originally based on
rshaper.
Data
Wi-Fi Hotspot Performance [crawdad]
Wi-Fi hotspot performance measurements from our MobiSys 2009 paper.
We have measurements for all Wi-Fi networks visible at hotspots in the
U-District in Seattle, WA over a one week period. We also recorded some
information about the clients on each Wi-Fi network (anonymized).
These measurements were performed in collaboration with Intel Research
with Ben Greenstein and Michael Kaminsky.
DNS Usage and Availability [failure trace archive]
Data from our IMC 2004 paper. LDNS data has IP addresses anonimized.
(Available at the failure trace archive as pang_imc04)
Other
Some non-research open source software that I wrote in a former life.
JASS Tools [home page]
Tools for parsing and analyzing the JASS scripting language, which
used for scripting Maps and AI files in Warcraft III.
Starcraft Tools [Arsenal
ZERO]
[IceCC]
Tools for decompiling and editing internal Starcraft data files to
create mods.
Last modified: Nov 28, 2011