Networks and Mobile Systems


Spring 2014

Prof. Lakshminarayanan Subramanian

Wed 7:10-9:00, CIWW 312

Office Hours:  Thu 5:00- 6:00, 715 Broadway, Room 706




This is a graduate level course on computer networks and mobile systems. This is a capstone class which will be programming and network analysis intensive. In this class, we will teach the design and implementation techniques essential for engineering both robust networks and mobile systems. There's no textbook, you need read many research papers (with our guidance) to learn the current challenges and solutions in networking, wireless and mobile systems. If you have been exposed to a networking course in your undergrad (i.e. you know the basics of TCP/IP, socket programming), we highly encourage you to take this class.  


The goal of this class is to guide students so that they can:

    •    initiate and critique research ideas in networks and mobile systems.

    •    implement and evaluate a working system that can handle real world workload.


This course will have three components

1.    reading/lecture/discussion of papers (summary + discussion  30% weightage)

2.    a series of labs (40% weightage)

3.    final class project (30% weightage)




The class will cover 3 sets of topics. The first part of the class will focus on core networking concepts pertaining to the Internet. The second part will cover concepts in wireless communications and the third part will cover research topics pertaining to mobile systems. The rough flow of the topics is as follows:


Week 1: Internet evolution: Naming, IP, DNS

Week 2: Routing protocols (BGP, OSPF)

Week 3: Transport and Congestion Control (TCP, UDP and its variants)

Week 4: Overlay Networks and Network Services (QoS, Multicast, Anycast

Week 5: P2P Network Services and Content Distribution

Week 6: Software Defined Networks

Week 7: Data Center Networks: Topology and Network management

Week 8: Data Center Networks: Flow management and Congestion Control

Week 9: Wireless Basics: Signals, Interference and 802.11 MAC protocols

Week 10: Cellular networks: Design and Evolution

Week 11: Advances in Wireless (Phased Arrays, Cognitive radios, Analog Coding)

Week 12: Mobile Web and Application Platforms

Week 13: Mobile Clouds

Week 14: Mobile and Wireless Security


We will read about 40-50 research papers on various aspects of networks and mobile systems. Students are expected to read papers before the class and participate in the discussion during the class. The lecture will be conducted in an interactive fashion. We will lead the discussion, but we expect everyone to participate. You will be graded for class discussion and paper summaries. Each student will be individually responsible for writing up a short summary of every paper. The summaries are due before 3 PM on the day of the corresponding class. Submission instructions will be posted before class begins.


The labs in this course will expose the students to the essential topics of networking. This course will strongly encourage a “learning by doing it yourself” approach to networking, where the students will implement or measure different concepts learnt in class. The final course project (conducted in a group of 2 students) should be a research-oriented project which should be a design/implementation of a new concept in networking or wireless/mobile systems. Several suggested projects may build on the labs for the class and will be a natural continuation of a specific lab.  Your goal in the labs and the final projects is to understand how networks work and how to build systems.  Research projects may be presented either in class or as a poster in a departmental mini-conference in the Spring Showcase.  Suggested project ideas will be provided by the instructor.



1.    Undergraduate Networks and/or Operating Systems

2.    Capstone class requirements

3.    Programming experience in C/C++/Java is helpful for the labs and final project.



Lecture 1: Internet Structure and Key Architectural Components


J. Saltzer, D. Reed, and D. Clark, "End-to-end Arguments in System Design". ACM Transactions on Computer Systems (TOCS), Vol. 2, No. 4, 1984, pp. 195-206.[pdf]


P. Mockapatris, K.J. Dunlap, "Development of the Domain Name System",ACM SIGCOMM 1988. [pdf]


W. B. Norton, "Internet Service Providers and Peering", Draft paper, 2000. [pdf]


Lecture 2: Internet routing (BGP and OSPF)


T. Griffin, "An Introduction to Interdomain Routing and BGP", ICNP 2002 Tutorial. [ppt]


T. G. Griffin, F. B. Shepherd and G. Wilfong, "The Stable Paths Problem and Interdomain Routing", IEEE Transactions on Networking, April 2002.


A. Shaikh and A. Greenberg, "OSPF Monitoring: Architecture, Design and Deployment Experience", Proc. USENIX Symposium on Networked System Design and Implementation (NSDI), March 2004.[pdf]


Lecture 3: TCP and Congestion Control


V. Jacobson, "Congestion Avoidance and Control", SIGCOMM '88, Sept. 1988, pp. 314-329.[PDF]


D. Katabi, M. Handley, C. Rohr, "Congestion Control for High Bandwidth-Delay Product Networks". ACM SIGCOMM 2002. [PDF]


TCP ex Machina: Computer-Generated Congestion Control.
Keith Winstein, Hari BalakrishnanSIGCOMM, Hong Kong, , August 2013.


Additional Reading: Alan Demers, Srinivasan Keshav and Scott Shenker. Analysis and Simulation of a Fair Queuing Algorithm. SIGCOMM 1989


Lecture 4: Overlay networks


Lakshminarayanan Subramanian, Ion Stoica, Hari Balakrishnan and Randy H. Katz. OverQoS: An Overlay based Architecture for Enhancing Internet QoS , First Symposium on Networked Systems Design and Implementation (NSDI'04), March, 2004.[pdf]


John Janotti et al. Overcast: Reliable Multicasting with an Overlay Network. OSDI 2000.


"Understanding the Impact of Video Quality on User Engagement", F. Dobrian, A. Awan, I. Stoica, V. Sekar, A. Ganjam, D. Joseph, J. Zhan and H. Zhang, SIGCOMM 2011, August 2011 [.pdf]



Lecture 5: P2P Services and Content Distribution


Ion Stoica, Robert Morris, David Liben-Nowell, David R. Karger, M. Frans Kaashoek, Frank Dabek, Hari Balakrishnan, "Chord: A Scalable Peer-to-peer Lookup Protocol for Internet Applications", IEEE/ACM Transactions on Networking '02 PDF


M. J. Freedman, E. Freudenthal and D. Mazieres, "Democratizing Content Publication using Coral. NSDI 2004. PDF



Lecture 6: Software Defined Networks


The Click modular router.

Eddie Kohler, Robert Morris, Benjie Chen, John Jannotti, and M. Frans Kaashoek. ACM Transactions on Computer Systems 18(3), August 2000, pages 263-297.


OpenFlow: enabling innovation in campus networks.

Nick McKeown, Tom Anderson, Hari Balakrishnan, Guru M. Parulkar, Larry L. Peterson, Jennifer Rexford, Scott Shenker, Jonathan S. Turner. Computer Communication Review 38(2): 69-74 (2008)


NOX: towards an operating system for networks.

Natasha Gude, Teemu Koponen, Justin Pettit, Ben Pfaff, Martin Casado, Nick McKeown, Scott Shenker:. Computer Communication Review 38(3): 105-110 (2008)


Lecture 7: Data Centre Networks


VL2: A Scalable and Flexible Data Center Network

Albert Greenberg, Navendu Jain, Srikanth Kandula, Changhoon Kim, Parantap Lahiri, Dave Maltz, Parveen Patel, and Sudipta Sengupta. SIGCOMM 2009.


PortLand: A Scalable Fault-Tolerant Layer 2 Data Center Network Fabric, Radhika Niranjan Mysore, Andreas Pamboris, Nathan Farrington, Nelson Huang, Pardis Miri, Sivasankar Radhakrishnan, Vikram Subramanya, and Amin Vahdat, Proceedings of the ACM SIGCOMM Conference, Barcelona, Spain, August 2009


Lecture 7: Flow Management in Data Centers


Data Center TCP (DCTCP) Mohammad Alizadeh, Albert Greenberg, David A. Maltz, Jitendra Padhye, Parveen Patel, Balaji Prabhakar, Sudipta Sengupta, and Murari Sridharan. SIGCOMM 2010.


Better Never than Late: Meeting Deadlines in Datacenter Networks. Christo Wilson, Hitesh Ballani, Thomas Kargiannis, Ant Rowstron. SIGCOMM 2011

Lecture 9: Wireless Networks Basics: Signals, Interference, 802.11 MAC


David Tse: Basics of Wireless Signals.


Vaduvur Bhargavan, Alan Demers, Scott Shenker, Lixia Zhang. MACAW: A Media Access Protocol for Wireless LANs. SIGCOMM.


Douglas S. J. De Couto, Daniel Aguayo, John Bicket, and Robert Morris, "A High-Throughput Path Metric for Multi-Hop Wireless Routing", Mobicom '03 PDF


Lecture 10: Cellular Networks


CellSDN: Software Defined Cellular Networks


A Close Examination of Performance and Power Characteristics of 4G LTE Networks. Junxian Huang, Feng Qian, Alexandre Gerber, Z. Morley Mao, Subhabrata Sen, and Oliver SpatscheckProceedings of ACM Mobisys 2012.



Lecture 11: Advances in Wireless


Sachin Katti, Shyamnath Gollakota, and Dina Katabi, "Embracing Wireless Interference: Analog Network Coding," ACM SIGCOMM, 2007.


Shyamnath Gollakota and Dina Katabi, "ZigZag Decoding: Combating Hidden Terminals in Wireless Networks," ACM SIGCOMM, 2008.



Lecture 12: Mobile Web and Application Platforms


Android Programming Tutorial.


Demystifying Page Load Performance with WProf. 
Xiao Sophia Wang, Aruna Balasubramanian, Arvind Krishnamurthy, David Wetherall. Usenix NSDI 2013. [pdf]


Stochastic Forecasts Achieve High Throughput and Low Delay over Cellular Networks.
Keith Winstein, Anirudh Sivaraman, Hari BalakrishnanUSENIX Symposium on Networked Systems Design and Implementation, Lombard, IL, April 2013



Lecture 13: Mobile Clouds


Byung-Gon Chun, Sunghwan Ihm, Petros Maniatis, Mayur Naik, Ashwin Patti. CloneCloud: Elastic Execution between Mobile Device and Cloud. 6th European Conference on Computer Systems (EuroSys 2011), April 2011.


AppInsight: Mobile App Performance Monitoring in the Wild
 Lenin Ravindranath, Jitu Padhye, Sharad Agarwal, Ratul Mahajan, Ian Obermiller, Shahin Shayandeh
. OSDI 2012


Timecard: Controlling User-Perceived Delays in Server-Based Mobile Applications
 Lenin Ravindranath, Jitu Padhye, Ratul Mahajan, Hari Balakrishnan.
SOSP 2013




Lecture 14: Mobile and Wireless Security


William Enck, Peter Gilbert, Byung-Gon Chun, Landon P. Cox, Jaeyeon Jung, Patrick McDaniel, Anmol N. Sheth. TaintDroid: An Information-Flow Tracking System for Realtime Privacy Monitoring on Smartphones. 9th USENIX Symposium on Operating Systems Design and Implementation (OSDI 2010).


Michael Farb et al. Safe-Slinger: Easy to Use and Secure Public-Key Exchange. Mobicom 2013.