Most of my research has been done in the context of
Emulab, a testbed for distributed
systems and network research. I'm one of the principal architects
and implementers of Emulab - I've been working on it since
2000. The main Emulab site is at the
University of Utah, but there are now a dozen
sites around the world running testbeds with the Emulab
software.
The work that I've done on Emulab
spans a wide range of topics, including systems, networking,
combinatorial optimization, security, and embedded systems.
I've also done some work in microprocessor architecture.
As an undergraduate, I did a Bachelor's Thesis entitled
Agile Protocols, an Application of Active Networking to Censor-
Resistant Publishing Networks. The idea was to apply active
networking techniques (ie. mobile code for network protocols) to
make it difficult for ISPs, governments, and other powers to detect
and filter peer-to-peer publishing networks such as
Freenet.
I've got a
BibTeX file of my publications for easy citing.
- (new!)Large-scale Virtualization in the Emulab Network Testbed.
Mike Hibler, Robert Ricci, Leigh Stoller, Jonathon Duerig,
Shashi Guruprasad, Tim Stack, Kirk Webb and Jay Lepreau.
At USENIX 08, Boston, Massassachusetts, June 2008.
- The Flexlab Approach to Realistic Evaluation of Networked Systems.
Robert Ricci, Jonathon Duerig, Pramod Sanaga, Daniel Gebhardt,
Mike Hibler, Kevin Atkinson, Junxing Zhang, Sneha Kasera, and Jay Lepreau
NSDI 2007, Cambridge, Massachusetts, April 2007.
- A Realistic, Controlled, and Friendly Environment for Evaluating Networked Systems.
Jonathon Duerig, Robert Ricci, Junxing Zhang, Daniel Gebhardt, Sneha Kasera and Jay Lepreau.
Appeared in HotNets V, Irvine, California, November 2006.
- Leveraging Bloom Filters for Smart Search Within NUCA Caches.
Robert Ricci, Steve Barrus, Dan Gebhardt, and Rajeev Balasubramonian.
In WCED (Workshop on Complexity-Effective Design), held in
conjunction with ICSA-33 (International Symposium on Computer Architecture), Boston, Massachusetts, June 2006.
- Lessons From Resource Allocators for Large-Scale Multiuser Testbeds.
Robert Ricci, David Oppenheimer, Jay Lepreau, Amin Vahdat.
In ACM SIGOPS Operating Systems Review, January 2006.
- Mobile Emulab: A Robotic Wireless and Sensor Network Testbed.
David Johnson, Tim Stack, Russ Fish, Daniel Flickinger, Leigh Stoller, Robert
Ricci, Jay Lepreau.
In IEEE INFOCOM 2006, Barcelona, Spain,
April 2006.
- Integrated Network Experimentation using Simulation and Emulation.
Shashi Guruprasad, Robert Ricci, Jay Lepreau.
In First International Conference on Testbeds and Research
Infrastructures for the Development of Networks and
Communities (Tridentcom 2005) Trento, Italy,
February 2005.
- Implementing the Emulab-PlanetLab Portal: Experiences and Lessons Learned.
Kirk Webb, Mike Hibler, Robert Ricci, Austin Clements,
Jay Lepreau.
In Proc. of the First Workshop on Real, Large Distributed
Systems (WORLDS 2004), San Francisco, CA,
December 2004.
- Fast, Scalable Disk Imaging with Frisbee.
Mike Hibler, Leigh Stoller, Jay Lepreau, Robert Ricci, Chad Barb.
In Proc. of the 2003 USENIX Annual Technical Conference, June 2003.
- A Solver for the Network Testbed Mapping Problem.
Robert Ricci, Chris Alfeld, Jay Lepreau.
ACM SIGCOMM Computer Communications Review, 33(2)65-81,
April 2003.
- An Integrated Experimental Environment for Distributed Systems and Networks.
White, Lepreau, Stoller, Ricci, Guruprasad, Newbold, Hibler,
Barb, Joglekar.
In Proc. of the Fifth Symposium on Operating Systems Design
and Implementation (OSDI 2002),
December 2002.
- Active Protocols for Agile Censor-Resistant Networks.
Robert Ricci and Jay Lepreau.
Presented at and appears in Proc. of the Eighth IEEE
Workshop on Hot Topics in Operating Systems,
May 2001.
- (new!)
Paper talk on Emulab virtual nodes at USENIX, June 2008. [slides:
color pdf /
6up pdf
]
- (new!)
Paper talk on Flexlab at NSDI, April 2007. [slides:
color pdf /
pdf for printing /
pdf
for printing, 6up]
- Guest lecture in
Sneha Kasera's
Network Security
class, March 26, 2007. [resources]
- Interviewed for the
BSDtalk podcast #103,
March 12, 2007.
[mp3]
- Emulab Federation Plans. Invited talk at the DETER federation
workshop, December 11, 2006 at ISI in Marina del Rey, California.
[slides: ppt]
- Leveraging Bloom Filters for Smart Search Within NUCA
Caches. Paper talk at WCED, June 18, 2006, in Boston,
Massachusetts. [slides: html/png]
- Running PlanetLab
in Emulab. PlanetLab
meeting on May 11, 2006, in Palo Alto, California. [slides:
html/png /
plp
(plp requires pointless
and my patches to it, below)
]
- Brief introduction to dnsiff. Given to CS6966, Network Security, Spring 2006.
[slides:
html/png
]
- Brief introduction to Emulab, focusing on security features. Given to CS6966, Network Security, May 2006.
[slides:
html/png /
plp
(plp requires pointless
and my patches to it, below)
]
- Invited talk on assign at INFORMS, November 2005. [slides:
html/png /
plp
(plp requires pointless
and my patches to it, below)
]
- I talked about assign as part of a colloquium on Emulab at
Boston University, May 2004. [slides: ppt]
- Paper talk on Frisbee at USENIX, June 2003. [slides:
ppt /
pdf ]
- Full-day hands-on tutorial at SIGCOMM, August 2002
[slides: ppt/pdf]
Some miscellaneous software I've written, and got around to actually
releasing...
- (new!) Powerless
is slide creation software - it's a set of Ruby modules for creating
good-looking slides with minimal effort. Some of its features include:
- Works in FreeBSD and Linux - OS X should be straightfoward, but
I've had trouble with some of the requisite packages crashing
- Export to PDF - use the fullscreen mode of your favorite PDF
viewer to do the slideshow
- Multi-level bulleted lists
- SVG figures, including selective rendering for incremental
reveal (ie. reveal your figure portion-by-portion)
- PNG figures
- Split layouts - ie. a figure on the top, a bullet list on the
bottom
- Everything is dynamically sized to fit in available space
- Automatic slide numbering
- Changing font text and color
- Centered text
- Partial support for generating printable PDFs
- External sort for IEEE floating point numbers. Written for
CS6962 (Advanced Algorithms), November 2005.
C source,
HTML-ized source.
- I've made some
patches
for pointless,
a presentation tool in the true UNIX spirit. If you want to
be able to:
- Edit your slides with vi or emacs
- Make your figures with
inkscape or
xfig
- Make graphs with
gnuplot
- Use LaTeX in your slides for formulas, etc.
- Have all of this rendered beautifully at any resolution
(Powerpoint and its clones have terrible EPS support,
and don't support SVG at all.)
- Store your slides, figures, etc. in
subversion,
CVS, or RCS
- Hack up the presentation software if it doesn't do what
you want it to
... then you really should check out pointless! To see an example
presentation, talk a look my assign/INFORMS slides above. My
patches add support for
SVG,
color EPS graphics, scaled images (new!),
and cpp-processed files. See the README
file in the patch tarball for instructions on how to apply them
to pointless 0.5 .
-
Music - I believe that when you buy music
online, it should be in a standard, DRM-free format such as mp3,
Ogg Vorbis or
flac. When you buy
music, the assumption should not be that you're a criminal who
needs to be
thwarted with DRM. You should be able to do with it what you
want, without being locked into someone's proprietary player.
The artist should be fairly compensated for their music.
-
Digital Photography - All photographs
on this page are mine. I'm currently shooting with an
Olympus
E-500,
having recently upgraded from an Olympus
C-5050Z
I quite like Olympus cameras; I started on my dad's old
OM2,
then on his IS-3000,
then on his C-720UZ.
I've put many of my photos online in two places. (I hope to
unify the two someday...) Newer photographs are at
gallery.xrob.org, and older
ones are at photos.xrob.org.
Here are some local Salt
Lake resources for amateur photographers:
- Borge
Andersen PhotoDigital is a good place
to go if you need prints in an usual size. I've done a
few panoramic prints there. They're not cheap, though.
- Framing Establishment
(5664 South 900 East, Murray, UT, 265-3500)
is where I get all of my frames. They have a good
selection of stock frames, and they do custom framing
too. All of the staff there have always been very
helpful to me.
- Pictureline
is a local camera store focusing on high-end gear.
-
Good beer - believe it or not, you actually
can get beer in Utah, and some of it is quite good.
- The
Beer Nut sells homebrewing
equipment and supplies. My roommates and I made
about a dozen batches over a few years.
[favorites: the raspberry
wheat kit was everyone's favorite, except for
perhaps the imperial stout]
- The Bayou (645 South State
Street, Salt Lake City, UT) has over 200 beers
on tap and in bottles. They have good Cajun-style
food, and live jazz some nights.
[favorites: well, I haven't
had the same beer twice here. any of the deserts
that have rum sauce are delicious]
- Wasatch
Beers is my favorite local brewery.
[favorites: I'm quite partial
to polygamy porter and the unofficial 2002 ale]
- Uinta
Brewing is another local microbrew.
[favorites: cutthroat ale]
- Eddie
McStiff's is a pub down in Moab,
Utah, the heart of Utah's red rock country. Some
of their beers can be found occasionally in some
Salt Lake grocery stores.
[favorites: they're all
good, though I would specifically recommend the
raspberry and blueberry wheat]
- Squatters
is a brewpub in downtown Salt Lake City.
They have several beers of their own, and
carry the local brews.
[favorites: captain
bastard's oatmeal stout and provo girl
pilsner. last time I was there, they had an
espresso stout that was just awesome, but
I believe it was a limited-run brew]
-
Books - I've always loved to read. It can
be almost as fun to go to a library or bookstore to pick out a
book as it is to read it! Here are some of my favorite places
to get books:
- Sam
Weller's Zion Bookstore is a great
new and used bookstore in downtown Salt Lake. The first
floor is large. The second floor is packed. The
basement is a maze in which you could easily get lost
for days. If you don't want to deal with parking, take
TRAX
- it's right next to the 3rd South stop. They're also
working on getting the more than one million books in the
store into their online catalog.
- The
Salt Lake City Main Library is
mind-blowingly beautiful. Their collection is not that
great, but it's an excellent place to hang out and
explore. Really, it's one of the coolest things about
Salt Lake. They have free wireless Internet thanks
to Xmission, so
it's a great place to take a laptop.
Also easily accessible via TRAX,
at the Library station on the University line.
- The Marriott
Library at the University of Utah
is truly vast - it's one of the biggest university
libraries in North America. And they're currently
undergoing construction, partly to increase their
capacity by another two million volumes. I'm quite
impressed with their Computer Science collection.
- King's
English is another staple
independent Utah bookstore.
- Books
of Yesterday is a great used book
store in Logan,
Utah, a small city about an hour and a half
north of Salt Lake. They have a great collection of
rare books. They claim to have over 400,000 books.
It's actually worth a few hours of driving just to
visit it.
- Every time I go to San Francisco, I have to go to
City
Lights, a cool bookstore in the North
Beach section of the city. It's a great place to look
for books on current events and politics if you're a
liberal sort of person.
- Shakespeare
and Company is an independent
bookstore with several shops in New York City. My wife
and I went into one, and didn't leave until we absolutely
had to.
- I've never actually been to Powell's,
since I've never been to Portland, Oregon, but it's
become my store of choice whenever I feel the need to
order something over Ye Olde Web.
-
Cooking - I like to do some cooking in my
spare time. My favorites are Italian foods and stir-fry. Here
are some of my favorite family recipes.
Auntie Gloria's Pizzelles
Italian waffle cookies.
A Ricci Christmas tradition - my parents make literally
hundreds of these every year to give to friends and
family.
3 eggs
3/4 cup sugar
3/4 cup melted butter
2 cups flour
1 tsp baking powder
2 tsp anise extract
1 tsp anise seed
1 tsp orange rind
2 tbsp milk
Yields approximately 20 pizzelles
Combine all ingredients in mixer, putting in the flour
last. Let the melted butter cool for a few minutes before
adding it, or it will cook the eggs. (If using a standard
KitchenAid mixer, you can double the recipe if desired.)
Place globs of dough, slightly larger than a
tablespoon, on the two halves of a
pizzelle iron.
Close iron and clip shut. After about 30 seconds, remove
pizzelles by lifting them with a fork. Set aside to
cool. Once cooled, trim excess from the edges with a
paring knife.
Alternate flavors: Lemon - substitute lemon
extract for anise extract and lemon peel for anise seed.
Orange Rum - substitute rum or rum flavoring for
anise extract, and orange peel for anise seeds.
Almond - substitute amaretto for anise extract,
and finely chopped almonds for anise seed.
- I've converted the University of Utah logo to SVG format
for use in presentations, papers, etc. You can easily make
clean-looking bitmap files in any resolution with it.
There's a version with
white text, and one with
black text. The official
source for University of Utah logos is
University
Marketing and Communications.
- I've also converted the Local
First logo to svg for easy creation of
web buttons.