photo: bobby bhattacharjee

About Me

I am a professor in the Department of Computer Science and UMIACS, studying Internet topology, reliability, and performance through measurements. I received my Ph.D from the University of Washington in 2004. My advisors were David Wetherall and Tom Anderson, and my thesis work won the SIGCOMM 2014 Test-of-time paper award. I received my Bachelor's degree in Computer Engineering from UC San Diego in 1997.

I was the co-chair of the departmental undergraduate honors program from 2012 to 2015, redesigning the key introduction to research class and writing a new honors web service (though only logged-in students can see the cool parts). I was the information services director (web-monkey and spam-sender) for ACM SIGCOMM 2007–2013. I am the Associate Chair of Facilities for our department, helping to ensure the design of the Iribe Center meets our needs.

In my spare time, I've 3-d printed a silverware tray, converted PWM daytime running light power to run LED lights in my CR-V, and wedged arduinos into otherwise blinkenlight-deprived toys. I write code using Rails. I commute by bike because two metro trains and a campus shuttle are too much.

Research Projects

See the pages dedicated to:

Publications

Google Scholar works too.
Philipp Richter, Ramakrishna Padmanabhan, Neil Spring, Arthur Berger, and David Clark.
Advancing the art of internet edge outage detection. In Proceedings of the ACM SIGCOMM Internet Measurement Conference (IMC), Boston, November 2018.
Zhihao Li, David Levin, Neil Spring, and Bobby Bhattacharjee.
Internet anycast: Performance, problems, and potential. In Proceedings of the ACM SIGCOMM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication (SIGCOMM), pages 59–73, Budapest, August 2018. DOI:10.1145/3230543.3230547.
Christine Alvarado and Neil Spring.
Successfully engaging early undergraduates in cs research: (abstract only). In Proceedings of the 49th ACM Technical Symposium on Computer Science Education, SIGCSE '18, pages 1050–1050. ACM, 2018. DOI:10.1145/3159450.3162365.
Youndo Lee and Neil Spring.
Identifying and analyzing broadband internet reverse DNS names. In Proceedings of the International Conference on emerging Networking EXperiments and Technologies (CoNEXT), pages 35–40, Seoul, 2017. DOI:10.1145/3143361.3143392.
Fan Du, Catherine Plaisant, Neil Spring, and Ben Shneiderman.
Finding similar people to guide life choices: Challenge, design, and evaluation. In Proceedings of the ACM Conference on Human Factors in Computing Systems (CHI), 2017. DOI:10.1145/3025453.3025777.
Fan Du, Catherine Plaisant, Neil Spring, and Ben Schneiderman.
EventAction: Visual analytics for temporal event sequence recommendation. In IEEE Conference on Visual Analytics Science and Technology (IEEE VAST 2016), Baltimore, October 2016. DOI:10.1109/VAST.2016.7883512.
Ramakrishna Padmanabhan, Amogh Dhamdhere, Emile Aben, kc claffy, and Neil Spring.
Reasons dynamic addresses change. In Proceedings of the ACM SIGCOMM Internet Measurement Conference (IMC), Santa Monica, California, November 2016. DOI:10.1145/2987443.2987461.
Youndo Lee and Neil Spring.
Identifying and aggregating homogeneous IPv4 /24 blocks with Hobbit. In Proceedings of the ACM SIGCOMM Internet Measurement Conference (IMC), Santa Monica, California, November 2016. DOI:10.1145/2987443.2987448.
Ramakrishna Padmanabhan, Patrick Owen, Aaron Schulman, and Neil Spring.
Timeouts: Beware surprisingly high delay. In Proceedings of the ACM SIGCOMM Internet Measurement Conference (IMC), pages 303–316, Tokyo, October 2015. DOI:10.1145/2815675.2815704.
Frank Cangialosi, Dave Levin, and Neil Spring.
Ting: Measuring and exploiting latencies between all Tor nodes. In Proceedings of the ACM SIGCOMM Internet Measurement Conference (IMC), pages 289–302, Tokyo, October 2015. DOI:10.1145/2815675.2815701.
Dave Levin, Youndo Lee, Zhihao Li, Luke Valenta, James Litton, Victoria Lai, Brendan Rowan, Cristian Lumezanu, Neil Spring, and Bobby Bhattacharjee.
Alibi routing. In Proceedings of the ACM SIGCOMM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication (SIGCOMM), pages 611–624, London, August 2015. DOI:10.1145/2785956.2787509.
Neil Spring.
Timeouts: Beware surprisingly high delay: Collect everything, assume nothing. AIMS 2015: Workshop on Active Internet Measurements, Apr 2015.
Aaron Schulman, David Levin, and Neil Spring.
RevCast: Fast, private certificate revocation over FM radio. In Proceedings of CCS'14: 2014 ACM SIGSAC Conference on Computer and Communications Security, pages 799–810, 2014. DOI:10.1145/2660267.2660376.
Ramakrishna Padmanabhan, Dave Levin, and Neil Spring.
UAv6: Alias resolution in IPv6 using unused addresses. In Proceedings of Passive \& Active Measurement (PAM), pages 136–148, April 2014. DOI:10.1007/978-3-319-15509-8_11.
Matthew Lentz, Dave Levin, Jason Castonguay, Neil Spring, and Bobby Bhattacharjee.
D-mystifying the d-root address change. In Proceedings of the ACM SIGCOMM Internet Measurement Conference (IMC), Barcelona, October 2013.
Aaron Schulman and Neil Spring.
Pingin' in the rain. In Proceedings of the ACM SIGCOMM Internet Measurement Conference (IMC), Berlin, November 2011. DOI:10.1145/2068816.2068819.
Dave Levin, Aaron Schulman, Katrina LaCurts, Neil Spring, and Bobby Bhattacharjee.
Making currency inexpensive with iOwe. In Workshop on the Economics of Networks, Systems and Computation, San Jose, June 2011.
Aaron Schulman, Vishnu Navda, Ramachandran Ramjee, Neil Spring, Pralhad Deshpande, Calvin Grunewald, Kamal Jain, and Venkata N. Padmanabhan.
Bartendr: A practical approach to energy-aware cellular data scheduling. In Proceedings of the International Conference on Mobile Computing and Networking (MobiCom), pages 85–96, Chicago, September 2010. DOI:10.1145/1859995.1860006.
Cristian Lumezanu, Katherine Guo, Neil Spring, and Bobby Bhattacharjee.
The effect of packet loss on redundancy elimination in cellular wireless networks. In Proceedings of the ACM SIGCOMM Internet Measurement Conference (IMC), pages 294–300, Melbourne, Australia, November 2010. DOI:10.1145/1879141.1879179.
Cristian Lumezanu, Dave Levin, Bo Han, Neil Spring, and Bobby Bhattacharjee.
Don't love thy nearest neighbor. In Proceedings of the International Workshop on Peer-to-Peer Systems (IPTPS), San Jose, CA, April 2010.
Bo Han, Aaron Schulman, Francesco Gringoli, Neil Spring, Bobby Bhattacharjee, Lorenzo Nava, Lusheng Ji, Seungjoon Lee, and Robert Miller.
Maranello: Practical partial packet recovery for 802.11. In Proceedings of the ACM/USENIX Symposium on Networked Systems Design and Implementation (NSDI), San Jose, CA, April 2010.
Taowei David Wang, Catherine Plaisant, Ben Schneiderman, Neil Spring, David Roseman, Greg Marchand, Vikramjit Mukherjee, and Mark Smith.
Temporal summaries: Supporting temporal categorical searching, aggregation and comparison. In Proceedings of the IEEE Information Visualization Conference (InfoVis), pages 1049–1056, Atlantic City, NJ, October 2009.
Randy Baden, Neil Spring, and Bobby Bhattacharjee.
Identifying close friends on the Internet. In Proceedings of the ACM Workshop on Hot Topics in Networks (HotNets), New York, October 2009.
Cristian Lumezanu, Randy Baden, Neil Spring, and Bobby Bhattacharjee.
Triangle inequality variations in the Internet. In Proceedings of the ACM SIGCOMM Internet Measurement Conference (IMC), pages 177–183, Chicago, November 2009. DOI:10.1145/1644893.1644914.
Taowei David Wang, Catherine Plaisant, Ben Schneiderman, Neil Spring, David Roseman, Greg Marchand, Vikramjit Mukherjee, and Mark Smith.
Temporal summaries: Supporting temporal categorical searching, aggregation and comparison. IEEE Transactions on Visualization and Computer Graphics, 15(6):1049–1056, November/December 2009. DOI:10.1109/TVCG.2009.187.
Dave Levin, Neil Spring, and Bobby Bhattacharjee.
Systems-compatible incentives. In Proceedings of the International Conference on Game Theory for Networks, pages 100–106, May 2009.
Dave Levin, Daniel Malter, Neil Spring, and Bobby Bhattacharjee.
Stay or go? Participation in under-provisioned video streams. In Joint Workshop on The Economics of Networked Systems and Incentive-Based Computing (NetEcon+IBC), Palo Alto, July 2009.
Randy Baden, Adam Bender, Neil Spring, Bobby Bhattacharjee, and Daniel Starin.
Persona: An online social network with user-defined privacy. In Proceedings of the ACM SIGCOMM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication (SIGCOMM), pages 135–146, Barcelona, August 2009. DOI:10.1145/1592568.1592585.
Cristian Lumezanu, Randolph Baden, Neil Spring, and Bobby Bhattacharjee.
Triangle inequality and routing policy violations in the internet. In Proceedings of Passive \& Active Measurement (PAM), pages 45–54, Seoul, April 2009. DOI:10.1007/978-3-642-00975-4_5.
Cristian Lumezanu, Randolph Baden, Dave Levin, Neil Spring, and Bobby Bhattacharjee.
Symbiotic relationships in Internet routing overlays. In Proceedings of the ACM/USENIX Symposium on Networked Systems Design and Implementation (NSDI), pages 467–480, Boston, MA, April 2009.
Adam Bender, Rob Sherwood, Derek Monner, Nathan Goergen, Samrat Bhattacharjee, and Neil Spring.
Fighting spam with the NeighborhoodWatch DHT. In Proceedings of the IEEE Joint Conference of the IEEE Computer and Communications Societies (INFOCOM), pages 1755–1763, Rio de Janeiro, Brazil, April 2009. DOI:10.1109/INFCOM.2009.5062095.
Adam Bender, Rob Sherwood, and Neil Spring.
Fixing Ally's growing pains with velocity modeling. In Proceedings of the ACM SIGCOMM Internet Measurement Conference (IMC), pages 337–342, Vouliagmeni, Greece, October 2008. DOI:10.1145/1452520.1452560.
Cristian Lumezanu and Neil Spring.
Measurement manipulation and space selection in network coordinates. In Proceedings of the 28th International Conference on Distributed Computing Systems (ICDCS 2008), pages 361–368, Beijing, June 2008. DOI:10.1109/ICDCS.2008.27.
Rob Sherwood, Adam Bender, and Neil Spring.
Discarte: A disjunctive internet cartographer. In Proceedings of the ACM SIGCOMM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication (SIGCOMM), pages 303–314, Seattle, WA, August 2008. DOI:10.1145/1402958.1402993.
Dave Levin, Katrina LaCurts, Neil Spring, and Bobby Bhattacharjee.
BitTorrent is an auction: Analyzing and improving BitTorrent's incentives. In Proceedings of the ACM SIGCOMM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication (SIGCOMM), pages 243–254, Seattle, WA, August 2008. DOI:10.1145/1402958.1402987.
Dave Levin, Randy Baden, Cristian Lumezanu, Neil Spring, and Bobby Bhattacharjee.
Motivating participation in internet routing overlays. In Joint Workshop on The Economics of Networked Systems and Incentive-Based Computing (NetEcon+IBC), pages 91–96, Seattle, WA, August 2008. DOI:10.1145/1403027.1403048.
Aaron Schulman, Dave Levin, and Neil Spring.
On the fidelity of 802.11 packet traces. In Proceedings of Passive \& Active Measurement (PAM), pages 132–141, Cleveland, OH, April 2008. DOI:10.1007/978-3-540-79232-1_14.
Cristian Lumezanu, Dave Levin, and Neil Spring.
PeerWise discovery and negotiation of faster paths. In Proceedings of the ACM Workshop on Hot Topics in Networks (HotNets), Atlanta, November 2007.
Dave Levin, Adam Bender, Cristian Lumezanu, Neil Spring, and Bobby Bhattacharjee.
Boycotting and extorting nodes in an internetwork. In Joint Workshop on The Economics of Networked Systems and Incentive-Based Computing (NetEcon+IBC), San Diego, CA, June 2007.
Adam Bender, Neil Spring, Dave Levin, and Bobby Bhattacharjee.
Accountability as a service. In Proceedings of the USENIX Workshop on Steps to Reducing Unwanted Traffic in the Internet (SRUTI), Santa Clara, CA, June 2007.
Rob Sherwood and Neil Spring.
Touring the Internet in a TCP sidecar. In Proceedings of the ACM SIGCOMM Internet Measurement Conference (IMC), pages 339–344, Rio de Janeiro, Brazil, October 2006. DOI:10.1145/1177080.1177093.
Harsha V. Madhyastha, Thomas Anderson, Aravind Krishnamurthy, Neil Spring, and Arun Venkataramani.
A structural approach to latency prediction. In Proceedings of the ACM SIGCOMM Internet Measurement Conference (IMC), pages 99–104, Rio de Janeiro, Brazil, October 2006. DOI:10.1145/1177080.1177092.
Rob Sherwood and Neil Spring.
A platform for unobtrusive measurement on PlanetLab. In Proceedings of the USENIX Workshop on Real, Large Distributed Systems (WORLDS), Seattle, WA, November 2006.
Cristian Lumezanu, Neil Spring, and Bobby Bhattacharjee.
Decentralized message ordering for publish/subscribe systems. In Proceedings of ACM/IFIP/USENIX 7th International Middleware Conference (Middleware), pages 162–179, Melbourne, Australia, November 2006.
Neil Spring, Larry Peterson, Andy Bavier, and Vivek Pai.
Using PlanetLab for network research: Myths, realities, and best practices. ACM SIGOPS Operating Systems Review, 40(1):17–24, January 2006. DOI:10.1145/1113361.1113368.
kc claffy, Mark Crovella, Timur Friedman, Colleen Shannon, and Neil Spring.
Community-oriented network measurement infrastructure (CONMI) workshop report. ACM SIGCOMM Computer Communication Review, 36(2):41–48, April 2006. DOI:10.1145/1129582.1129594.
Neil Spring, Larry Peterson, Andy Bavier, and Vivek Pai.
Using PlanetLab for network research: Myths, realities, and best practices. In Proceedings of the USENIX Workshop on Real, Large Distributed Systems (WORLDS), San Francisco, CA, December 2005.
Neil Spring.
Efficient discovery of network topology and routing policy in the Internet. PhD thesis, University of Washington, 2004.
Neil Spring, Ratul Mahajan, David Wetherall, and Thomas Anderson.
Measuring ISP topologies with Rocketfuel. IEEE/ACM Transactions on Networking, 12(1):2–16, February 2004. DOI:10.1109/TNET.2003.822655.
Ratul Mahajan, Neil Spring, David Wetherall, and Thomas Anderson.
User-level Internet path diagnosis. In Proceedings of the ACM Symposium on Operating Systems Principles (SOSP), pages 106–119, Bolton Landing, NY, October 2003. DOI:10.1145/945445.945456.
Neil Spring, David Wetherall, and Thomas Anderson.
Reverse-engineering the Internet. In Proceedings of the ACM Workshop on Hot Topics in Networks (HotNets), pages 3–8, Cambridge, MA, November 2003. DOI:10.1145/972374.972376.
Neil Spring, David Wetherall, and Thomas Anderson.
Scriptroute: A public Internet measurement facility. In Proceedings of the USENIX Symposium on Internet Technologies and Systems (USITS), pages 225–238, Seattle, WA, March 2003.
Neil Spring, David Wetherall, and David Ely.
Robust ECN signaling with nonces. IETF RFC 3540, June 2003.
Neil Spring, Ratul Mahajan, and Thomas Anderson.
Quantifying the causes of path inflation. In Proceedings of the ACM SIGCOMM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication (SIGCOMM), pages 113–124, Karlsruhe, Germany, August 2003. DOI:10.1145/863955.863970.
Fran Berman, Rich Wolski, Henri Casanova, Walfredo Cirne, Holly Dail, Marcio Faerman, Silvia Figueira, Jim Hayes, Graziano Obertelli, Jennifer Schopf, Gary Shao, Shava Smallen, Neil Spring, Alan Su, and Dmitrii Zagorodnov.
Adaptive computing on the Grid using AppLeS. IEEE Transactions on Parallel and Distributed Systems, 14(4):369–382, April 2003. DOI:10.1109/TPDS.2003.1195409.
Ratul Mahajan, Neil Spring, David Wetherall, and Thomas Anderson.
Inferring link weights using end-to-end measurements. In Proceedings of the ACM SIGCOMM Internet Measurement Workshop (IMW), pages 231–236, Marseille, France, November 2002. DOI:10.1145/637201.637237.
Neil Spring, Ratul Mahajan, and David Wetherall.
Measuring ISP topologies with Rocketfuel. In Proceedings of the ACM SIGCOMM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication (SIGCOMM), pages 133–146, Pittsburgh, PA, August 2002. DOI:10.1145/633025.633039.
Rich Wolski, John Brevik, Chandra Krintz, Graziano Obertelli, Neil Spring, and Alan Su.
Writing programs that run EveryWare on the computational grid. IEEE Transactions on Parallel and Distributed Systems, 12(10):1066–1080, October 2001. DOI:10.1109/71.963418.
David Ely, Neil Spring, David Wetherall, Stefan Savage, and Thomas Anderson.
Robust congestion signaling. In Proceedings of the IEEE International Conference on Network Protocols (ICNP), pages 332–341, Riverside, CA, November 2001. DOI:10.1109/ICNP.2001.992914.
Neil Spring, Maureen Chesire, Mark Berryman, Vivek Sahasranaman, Thomas Anderson, and Brian Bershad.
Receiver based management of low bandwidth access links. In Proceedings of the IEEE Joint Conference of the IEEE Computer and Communications Societies (INFOCOM), volume 1, pages 245–254, Tel Aviv, Israel, March 2000. DOI:10.1109/INFCOM.2000.832194.
Rich Wolski, Neil Spring, and Jim Hayes.
Predicting the CPU availability of time-shared UNIX systems. Cluster Computing: The Journal of Networks, Software Tools and Applications, 3(4):293–301, December 2000. DOI:10.1023/A:1019052825453.
Neil Spring and David Wetherall.
A protocol independent technique for eliminating redundant network traffic. In Proceedings of the ACM SIGCOMM Conference on Applications, Technologies, Architectures, and Protocols for Computer Communication (SIGCOMM), pages 87–95, Stockholm, Sweden, August 2000. DOI:10.1145/347059.347408.
Rich Wolski, Neil Spring, and Jim Hayes.
The network weather service: A distributed resource performance forecasting service for metacomputing. Future Generation Computer Systems, 15(5–6):757–768, October 1999. DOI:10.1016/S0167-739X(99)00025-4.
Rich Wolski, John Brevik, Chandra Krintz, Graziano Obertelli, Neil Spring, and Alan Su.
Running EveryWare on the computational grid. In Proceedings of the 1999 ACM/IEEE conference on Supercomputing (SC'99), Portland, OR, November 1999. DOI:10.1145/331532.331538.
Rich Wolski, Neil Spring, and Jim Hayes.
Predicting the CPU availability of time-shared UNIX systems. In Proceedings of High Performance Distributed Computing Conference (HPDC), pages 105–112, August 1999. DOI:10.1109/HPDC.1999.805288.
Neil Spring and Rich Wolski.
Application level scheduling of gene sequence comparison on metacomputers. In Proceedings of the 12th ACM International Conference on Supercomputing (ICS), pages 141–148, Melbourne, Australia, July 1998. DOI:10.1145/277830.277860.
Rich Wolski, Neil Spring, and Chris Peterson.
Implementing a performance forecasting system for metacomputing: The network weather service. In Proceedings of the 1997 ACM/IEEE conference on Supercomputing (SC'97), pages 1–19, San Jose, CA, November 1997. DOI:10.1145/509593.509600.
Ken Yasuhara, Neil Spring, Jeff Hightower, and Vibha Sazawal.
Educational materials to assist in motivating functional programming. In Proceedings of Possibly Computer Science (PoCSi), May 2003. (PoCSi is a joke conference at the University of Washington).
Vibha Sazawal, Ken Yasuhara, and Neil Spring.
Educational materials to assist in instruction of information hiding basics. In Proceedings of Possibly Computer Science (PoCSi), 2002. (PoCSi is a joke conference at the University of Washington).

Software

See my non-research software which is on a separate page.
Scriptroute
Network measurement system isolating advanced logic in Ruby from privileged operation in C.
Project page Rubygems (client)
Undns
Parses router host names to extract geographic location and other apparent information within the name.
SVN repository Rubygems
Sidecar
TCP Sidecar is a technique and associated API for embedding measurement probes into non-measurement TCP streams.
Project page
swish-e gem
Ruby gem for accessing the swish-e text indexing system
Github Rubygems

Graduate Students

My students should consult my advising notes for hints about what I expect in proposals and dissertations.

Courses

Honors Computer Systems (CMSC 216H): Spring 2018 (also S '17)
Students in 216H implement original projects using the adafruit circuit playground arduino board and explore program profiling and optimization as topics beyond the non-honors course.

Computer networks (CMSC 417): Spring 2014 (also S '06, F '06, S '08, F '10).
Students in my 417 typically implement a bittorrent client and interpret packet traces.

Operating systems (CMSC 412): Fall 2015 (also F '08, F '09, S '11, S '13, F '14).
Students in my 412 implement features in GeekOS including fork, pipes, signals, paging, and a file system.

Computer systems (CMSC 216): Fall 2013.
I helped design this course that combines C and assembly skills with fundamentals of computer systems, and built short videos covering common errors in dynamic memory allocation and object sizes.

Ruby on Rails (CMSC 389R): Winter 2011.
I built a short, one credit course on Rails, using the Agile Web Development book.

Graduate operating systems (CMSC 818s): Fall 2011

Graduate computer networks (CMSC 711): Spring 2010 (also S '05, S '07, S '09).
Grad networks relies on critical thinking around seminal papers.

UW CSE 461 (undergrad senior-level computer networks) course web when I lectured Autumn 1999 and Autumn 2000.

I am particularly proud of programming assignment 3.

Contact

Email (preferred)

nspring@cs.umd.edu
B59F CA97 55CE 8602 A5C3
048C 450E EAF5 3252 BF17

Snail mail

4133 A. V. Williams
Department of Computer Science
8223 Paint Branch Drive
University of Maryland
College Park, MD 20742
FedEx: Replace 4133 with 1105.

1870's tech

Office: 301-405-2909.

I do not check office voicemail nearly as often as email.

Fax: 301-405-6707.

Prospective graduate applicants: See the graduate catalog for information about applying to the graduate program. Our department admits students, some of those students take my class, and some of those students will work with me. If your heart is set on working with me, explain why in your statement of purpose and demonstrate your creativity and understanding of my published research. I read statements from qualified applicants.