![]() |
Harry C. Li - Ph.D. student
|
| research |
paper
pdfs |
python
& systems |
||||||||
LasrWiki Dr. Hamming's Research Advice |
|
Python PyCrypto PyOpenSSL Twisted |
| About my research |
||
| I am
broadly interested in fault-tolerant distributed systems. |
||
| Current |
||
| I currently pursue
research in peer-to-peer (p2p) systems. P2P has become an increasingly
popular way to deploy services. We see it in IPTV, Internet radio, and
file-sharing. A p2p approach has the potential to be more
fault-tolerant, scalable, adaptive, and less expensive than a
centralized one. However, these benefits don't come for free; we have
to carefully engineer these systems to reap these rewards in the face
of peers crashing and misbehaving. As witnessed in the file-sharing
community, p2p systems also have to encourage participants to
contribute their fair share. However, many users prefer to free-ride, for example, by
downloading without uploading. Recent works, both commercial and academic, have seen the need to deal with such selfish actions by incorporating incentives and punishments into protocols. However, almost no existing work provides any rigorous justification that users would indeed obey a protocol, a loophole that is often exploited by clever hackers to contribute as little as possible while obtaining maximum benefit. My first work, BAR Gossip, is the first p2p live streaming system that tolerates both Byzantine and selfish peers in a rigorous manner. The key technical pieces behind BAR Gossip are a verifiable pseudo-random partner selection algorithm and a fair enough exchange mechanism. My most recent work, FlightPath, improves upon BAR Gossip both qualitatively and quantitatively. The improvements are made possible by approximate equilibria, a solution target that allows a rigorous justification for peer obedience and flexibility to engineer practical solutions. I hope that approximate equilibria demonstrates a new and better way to design robust p2p systems in the future. |
||
| Less Current |
||
| Prior to working in
peer-to-peer systems, I was looking into Paxos protocols. My research
there stemmed from two observations. First, very few people actually
understood how Castro and Liskov's PBFT protocol worked. Second,
despite calling PBFT by the name Byzantine Paxos, no one really
understood in what ways PBFT was similar and different from the
original Paxos. Further, despite many claims that various protocols
were a Byzantine-version or disk-variant of Lamport's seminal Paxos
algorithm, no one could say why a protocol was 'Paxos-like'. What were
the similarities? And why were those similarities enough to make
something a Paxos derivative? These observations led to the creation of the Paxos Register, a new and intuitive abstraction that captures the similarities across Paxos variants. We showed our abstraction could capture three very different Paxos-like protocols. Our deepening understanding of Paxos also led to the creation of an information-theoretically secure Byzantine Paxos that uses secret sharing instead of cryptography. We believe this insight shows not just the flexibility of the Paxos Register, but also its power. |
||
| Undergraduate days |
||
| As an undergraduate at Brown University, I worked with Shriram Krishnamurthi and Kathi Fisler on identifying some problems in modular feature verification and proposing some initial solutions based upon three-valued model checking. | ||
| Journals: |
||
| How
Robust Are Gossip-Based Communication Protocols? (with Lorenzo
Alvisi, Jeroen Doumen,
Rachid Guerraoui, Boris Koldehofe, Robbert van Renesse,
and Gilles Tredan) In SIGOPS
Operating Systems Review 41,
5 (Oct. 2007), 14-18. |
||
| Compositional Gossip: A Conceptual Architecture for Designing Gossip-Based Applications (with Étienne Riviere, Roberto Baldoni, and José Pereira. In SIGOPS Operating Systems Review 41,5 (Oct. 2007), 43-50. | ||
Conferences: |
||
| FlightPath: Obedience vs. Choice in Cooperative Services (with Allen Clement, Mirco Marchetti, Manos Kapritsos, Luke Robison, Lorenzo Alvisi, and Mike Dahlin). To appear in Operating Systems Design and Implementation (OSDI 2008), San Diego, California, December 2008. pdf | ||
| BAR Primer (with Allen Clement, Jeff Napper, J.P. Martin, Lorenzo Alvisi, and Mike Dahlin). In Proceedings of the International Conference on Dependable Systems and Networks (DSN 2008), DCC Symposium, Anchorage, Alaska, June 2008. pdf | ||
| The Paxos Register (with Allen Clement, Amitanand Aiyer, and Lorenzo Alvisi). In Proceedings of the 26th IEEE International Symposium Reliable Distributed Systems (SRDS '07), Beijing, China, October 2007. pdf | ||
| BAR Gossip (with Allen Clement, Edmund Wong, Jeff Napper, Indrajit Roy, Lorenzo Alvisi, and Mike Dahlin). In Proceedings of the 7th Symposium on Operating System Design and Implementation (OSDI '06), Seattle, WA, November 2006. pdf | ||
| Interfaces for modular feature verification (with Shriram Krishnamurthi and Kathi Fisler). In ASE '02: Proceedings of the 17th IEEE International Conference on Automated Software Engineering (ASE'02), page 195, Washington, DC, USA, 2002. IEEE Computer Society. | ||
| Verifying cross-cutting features as open systems (with Shriram Krishnamurthi and Kathi Fisler). SIGSOFT Software Engineering Notes, 27(6):89--98, 2002. | ||
Interesting Technical Reports: |
||
| Information-Theoretically Secure Byzantine Paxos (with Amitanand S. Aiyer, Lorenzo Alvisi, and Allen Clement). The University of Texas at Austin, Department of Computer Sciences. Technical Report TR-07-21. May 18, 2007. pdf | ||
| The Game of Paxos (with Lorenzo Alvisi and Allen Clement. The University of Texas at Austin, Department of Computer Sciences. Technical Report TR-05-24. May 16, 2005. pdf | ||
| Awards: |
||
| MCD Fellowship awarded by UT Austin (2002) | ||
| NSF Graduate Fellowship Honorable Mention (2002) | ||
| CRA Outstanding Undergraduate Award Honorable Mention (2001) | ||