portrait
Associate Professor Philip Levis
(he/him/his)
Office: 206 Packard, Stanford University, Stanford, CA, 94305
Office hours: 001 Packard (basement) Wednesday, 3-4PM
Phone: +1 650 725 9046
email: pal at cs stanford edu

Biography

I'm an Associate Professor in the Computer Science and Electrical Engineering Departments of Stanford University. I head the Stanford Information Networking Group (SING) and co-direct lab64, the EE maker space at Stanford. I'm the faculty director of CURIS, the CS undergraduate research program. I research operating systems, networks, and software design, especially for embedded systems. I appreciate excellent engineering and have a self-destructive aversion to low hanging fruit.

The results of my research are used by thousands of people, run on hundreds of thousands of devices, and are the basis for Internet standards. I written some papers. I've been awarded an NSF CAREER Award and a Microsoft New Faculty Fellowship. In 2010, three of my advisees, Kannan, Mayank, and Jung Il, had the bold idea that it's possible to build a full duplex radio and co-founded Kumu Networks to commercialize it. I place all of my work funded industrially in the public domain.

Research Projects

Engineering Efforts

  • FLIGHT: a mechatronic art installation at Stanford
  • Tock: a secure embedded multitasking OS
  • TinyOS: an operating system for mote-class networks
  • RPL: the sensornet routing protocol for the Internet

Current Courses

EE185/EE285/CS241: Interactive Light Sculpture Project
CS107E: Computer Systems from the Ground Up
CS114/CS214: Selected Reading of CS Research

Past Courses

CS144: Introduction to Computer Networks
CS240E: Embedded Wireless Systems
CS349G: Selected Reading of Ph.D. Dissertations
CS244E: Wireless Networking
CS303: Designing Computer Science Experiments
CS340V: Networked Systems for Virtual Worlds
EE108A: Digital Systems Design
CS344E: Wireless Networking Research
CS67N: The Computer of History, the Computer of Fiction

Advisees, Past and Present (Ph.D.)

  • Kannan Srinivasan: quantifying wireless networks (EE 2010), Ohio State
  • Jung Woo Lee: mesh routing to a mobile node (EE 2010), Verizon
  • Jung Il Choi: network protocol isolation (EE 2011), Kumu Networks
  • Mayank Jain: wireless physical/link boundary (EE 2011), Kumu Networks
  • Ewen Cheslack-Postava: planetary-scale virtual worlds (CS 2013), Confluent
  • Maria Kazandjieva: green enterprise computing (CS 2013), Netflix
  • Tahir Azim: instance-aware simplification (CS 2013), Amazon
  • Jae-Young Kim: full duplex link layers (EE 2013), Samsung
  • Behram Mistree: transaction defined networking (EE 2015), Forward Networks
  • Omid Mashayekhi: fast distributed cloud computing control planes (EE 2017), Google
  • Judson Wilson: architectures for network transparency (EE, on leave), Google
  • Chinmayee Shah: distributed multi-resolution and sparse data structures (EE 2018), Waymo
  • Hang Qu: scheduling microtask analytics (EE 2018), Facebook
  • Amit Levy: securing networks and systems with languages (CS 2018), Princeton
  • Sergio Benitez: secure systems with safe languages (CS)
  • Holly Chiang: embedded system power management (EE 2020), Apple
  • Francis Yu Yan: machine learning in network protocols (CS 2020), Microsoft Research
  • Luke Hsiao: automatic datasheet extraction (EE 2021), Google
  • Raejoon Jung: distributed wireless desynchronization (EE 2021), Facebook
  • Kevin Kiningham: hardware acceleration of cryptography and learning (EE 2021), Waymo
  • Kexin Rong: analytics on IoT data (CS 2021), Georgia Tech
  • Hudson Ayers: secure real time systems (EE, expected 2023)
  • Deepti Raghavan: distributed systems (CS)

Advisees, Past and Present (M.S.)

  • Bhupesh Chandra: virtual world scripting (CS)
  • Arjun Roy: mobile phone operating systems (CS), Ph.D. at UCSD
  • Shane Leonard: hardware/software IoT platforms (EE), SpaceX
  • Jean-Luc Watson: low-power IPv6 networking (CS), Ph.D. program at UC Berkeley
  • Yancheng Ou: programming grid-connected battery storage (CS)

Selected Publications

You can generally find more up-to-date and detailed information for the complete list on the SING website.

  • Luke Hsiao, Sen Wu, Nicholas Chiang, Christopher Ré, and Philip Levis.
    Creating Hardware Component Knowledge Bases with Training Data Generation and Multi-task Learning. In ACM Transactions on Embedded Computing Systems (TECS), 2020.
  • Amit Levy, Bradford Campbell, Branden Ghena, Daniel Giffin, Pat Pannuto, Prabal Dutta, and Philip Levis.
    Multiprogramming a 64 kB Computer Safely and Efficiently. In Proceedings of the The 26th ACM Symposium on Operating Systems Principles (SOSP 2017).
  • Chinmayee Shah, David Hyde, Hang Qu, and Philip Levis.
    Distributing and Load Balancing Sparse Fluid Simulations. In Proceedings of the 17th Annual Symposium on Computer Animation (SCA 2018).
  • Omid Mashayekhi, Chinmayee Shah, Hang Qu, Andrew Lim, and Philip Levis.
    Automatically Distributing Eulerian and Hybrid Fluid Simulations in the Cloud. In ACM Transactions on Graphics 37, 2, Article 24, 2018.
  • Judson Wilson, Riad S. Wahby, Henry Corrigan-Gibbs, Dan Boneh, Philip Levis and Keith Winstein.
    Trust but Verify: Auditing Secure Internet of Things Devices. In Proceedings of the The 15th ACM International Conference on Mobile Systems, Applications, and Services (MobiSys 2017).
  • Philip Levis.
    Experiences from a Decade of TinyOS Development. In Proceedings of the 10th USENIX Symposium on Operating Systems Design and Implementation (OSDI), 2012.
  • Mayank Jain, Jung Il Choi, Taemin Kim, Dinesh Bharadia, Siddharth Seth, Kannan Srinivasan, Philip Levis, Sachin Katti and Prasun Sinha.
    Practical, Real-time, Full-Duplex Wireless. In Proceedings of the 17th Annual International Conference on Mobile Computing and Networking (Mobicom 2011).
  • Philip Levis, Neil Patel, David Culler, and Scott Shenker.
    Trickle: A Self-Regulating Algorithm for Code Propagation and Maintenance in Wireless Sensor Networks. In Proceedings of the First USENIX/ACM Symposium on Networked Systems Design and Implementation (NSDI 2004). Received best paper award (2004), test of time award (2014).
  • David Gay, Philip Levis, Robert von Behren, Matt Welsh, Eric Brewer, and David Culler.
    The nesC Language: A Holistic Approach to Network Embedded Systems. In Proceedings of the ACM SIGPLAN 2003 Conference on Programming Language Design and Implementation (PLDI). Received PLDI 2003 most influential paper award (2013).

TinyOS Programming Manual

I wrote a short book on programming TinyOS. Programming TinyOS digs into nesC and how you can use it to build TinyOS applications. A second version of the text, co-written with David Gay, is available for purchase as of April 2009. We tried to keep the cost down by making it softcover and having very tiny royalties. Unfortunately, though, TinyOS programming is not a blockbuster topic, so the book is a bit pricier than I'd like. You can download the first half of the published version for free. The first half covers the basics: this version does not include advanced topics like asynchronous code, writing generics, or the hardware abstraction architecture. There's a short errata page.

Education and Job Opportunties in STEM, 2008

Education and Job Opportunties in STEM, 2018

Service

2023: OSDI
2022: OSDI
2021: OSDI (external review)
2020: MobiSys, ATC
2016: IPSN, OSDI, SenSys (general chair)
2015: HotNets (co-chair)
2014: SenSys
2013: NSDI, SOSP, HotMobile
2012: CCR, SenSys
2011: CCR, IP+SN, MobiSys, HotPower, SOSP, SenSys (co-chair)
2010: TOSN, CCR, NSDI, MobiSys, DMSN
2009: TOSN, IPSN (co-chair, IP track), SenSys, SOSP, HotPower (co-chair)
2008: TOSN, MODUS, IPSN, ICDCS, NSDR, SIGCOMM, OSDI
2007: IPSN, EmNets (co-chair), SIGCOMM, DMSN, SenSys, MidSens
2006: NetDB, IPSN, DCOSS, SenSys, RTSS

Quote

"Solving a problem simply means representing it so as to make the solution transparent."

- Herbert Simon, Sciences of the Artificial

Funding

My work has been supported by generous gifts from Intel Research, DoCoMo Capital, Foundation Capital, the Secure Internet of Things Project, SDSI, the National Science Foundation under grants #1505728, #1409847, #0832820, #0831163, #0846014, #0615308 and #0546630, the Department of Energy ARPA-E program under award number DE-AR0000018, the King Abdullah University of Science and Technology (KAUST), Microsoft Research, scholarships from the Samsung Scholarship Foundation and a Stanford Terman Fellowship. My scientific research was supported by a National Science Foundation awards BCS-0947132, DE-AR-0000018, grants #0615308 and #0846014, a Branco Weiss fellowship, National Institute of Child Health and Human Development Award 1K01HD051494, and National Institutes of Health Grant GM28016.