This is a PG elective course open to PG and UG students who have
taken a previous introductory networking course. We will cover
interesting topics across a variety of mobile systems (wireless LANs,
cellular systems, and sensor networks), and revisit the design of the
various layers of the networking stack in the context of wireless
communication. The course will comprise of lectures, four problem sets,
exams (midsem and endsem), and a course project.
- Problem Sets (20%). You will be given four problem sets / assignments during the course of the semester. You will be given approximately a week each to solve them. Each problem set will account for 5% of your grade. Please submit hand-written answers. You can discuss the problems with other students in the class, but you must each write your own answers. In case you work with your friends to solve a problem, please list their names in your answer sheet.
- Mid-semester examination (20%).
- End-semester examination (30%).
- Project (30%). There will be a
comprehensive course project involving wireless simulations and
experiments. You will work in teams of 3. I will have a monthly review
of the progress of your project (thrice during the semester) with each
team individually. Your grade will be determined by your progress at
these monthly reviews (10%), along with your final project report (10%) and
individual vivas (10%) at the end of the semester.
Auditing: I expect some effort and commitment from students auditing the course. Therefore I require that you attempt and submit at least 2 out of the 4 problem sets, and attend at least one of the two exams (midsem or endsem). Of course, you are welcome to do more, but you must meet this minimum requirement.
- Overview of wireless and mobile systems (wireless LANs, cellular systems, sensor networks, etc.) and the challenges therein.
- The radio channel and wireless physical layer design.
- Medium access, multiplexing, link adaptation.
- Multihop routing protocols, routing metrics.
- Multicast, multihop data forwarding, opportunistic routing.
- Solutions to handle mobility at various layers of the networking stack.
- TCP behavior over wireless, other transport layer issues.
- Energy efficiency, localization, security.
- Smartphone-based platform architectures and applications.
- Future directions: dynamic spectrum access, heterogenuous networks, internet of things.
(Note: I use the whiteboard during lecture, and the slides below summarize the content covered in class. Please do not depend solely on the slides to understand the material in the lecture. The slides are only meant to supplement your class notes.)
- Jan 6 (Mon): Course overview [slides]. Introduction [slides].
- Jan 9 (Thu): Wireless physical layer, wireless channel capacity. [slides].
- Jan 13 (Mon): Wireless physical layer: modulation techniques, OFDM. [slides].
- Jan 16 (Thu): Wireless physical layer: channel coding. [slides].
- Jan 20 (Mon): Wireless physical layer: recap, common PHY designs, PHY bit rates, introduction to MIMO. [slides].
- Jan 23 (Thu): Wireless link layer, MAC protocols, CSMA. [slides].
- Jan 27 (Mon): Wireless link layer: centralized MAC protocols, TDMA, CDMA etc. [slides].
- Jan 30 (Thu): Wireless link layer: link adaptation, bit rate adaptation protocols. [slides].
- Feb 3 (Mon): Wireless link layer: error control, wrap up. [slides].
- Feb 6 (Thu): Link layer multicast. [slides].
- Feb 10 (Mon): Energy and security considerations in the wireless PHY and link layers. [slides].
Feb 13 (Thu): Midsem review.
Feb 17-21: Midsem week. NO CLASSES.
- Feb 24 (Mon): Network layer: mobility management, Mobile IP, cellular hand offs. [slides].
Feb 27 (Thu): Midsem paper discussion.
- Mar 3 (Mon): Multihop networks: routing protocols, routing security. [slides].
- Mar 6 (Thu): Data transfer over multihop networks, opportunistic routing. [slides].
- Mar 13 (Thu): Transport layer: TCP over wireless, performance issues. [slides].
- Mar 20 (Thu): Transport layer mobility, application layer design for mobility and disconnected operations. [slides].
- Mar 24 (Mon): Mobile computing platforms, Android architecture and security principles. [slides].
- Mar 27 (Thu): Localization algorithms. [slides].
- Apr 3 (Thu): Energy efficiency, energy usage in apps, code offload. [slides].
- Apr 7 (Mon): Future of mobile systems: some upcoming hot topics. [slides].
Apr 10 (Thu): Endsem review and course wrapup.
- Problem set 1, solutions.
- Problem set 2, solutions.
- Problem set 3, solutions.
- Problem set 4, solutions.
The course material is not taken from one single book or
resource. I will put up slides after each lecture (as far as
possible), which should give you a rough idea of what was covered in
class. The textbook and research papers below will also form a very
good reference material if you want to clarify some of the concepts
taught in class, or learn more about them.
Papers and articles
- Mobile Communications (2nd ed.). Jochen Schiller.
- Physical layer design and MIMO: 802.11 with Multiple Antennas for Dummies
- Wireless link characteristics: Link-level Measurements from an 802.11b Mesh Network
- Bit rate adaptation (SampleRate algorithm): Bit-rate Selection in Wireless Networks
- 802.11 link-layer throughput calculations: When Is 54 Not Equal to 54? A Look at 802.11a, b, and g Throughput
- A WiFi multicast proposal: DirCast: A Practical and Efficient Wi-Fi Multicast System
- Proposals to minimize energy spent in idle state in wireless networks. One deals with WiFi-like networks, and the other with cellular networks. Both papers have some interesting insights into energy consumption in practice. E-MiLi: Energy-Minimizing Idle Listening in Wireless Networks, RadioJockey: Mining Program Execution to Optimize Cellular Radio Usage.
- Mobile IP: Mobile Networking through Mobile IP.
- Multihop routing protocols: DSDV, DSR, AODV.
- Data transfer over multihop networks: Flush: A Reliable Bulk Transport Protocol for Multihop Wireless Networks, PIP: A Connection-Oriented, Multi-Hop, Multi-Channel TDMA-based MAC for High Throughput Bulk Transfer.
- Opportunistic routing: ExOR: Opportunistic MultiHop Routing for Wireless Networks, Trading Structure for Randomness in Wireless Opportunistic Routing.
- TCP performance over wireless links: A Comparison of Mechanisms for Improving TCP Performance over Wireless Links.
- Buffer bloat problem: Bufferbloat: Dark Buffers in the Internet.
- TCP buffer sizing: see section 2 of Sizing Router Buffers.
- Transport layer mobility schemes. MSOCKS: An Architecture for Transport Layer Mobility, Migrate: An End-to-End Approach to Host Mobility.
- Android architecture. Understanding Android Security and slides based on this tutorial.
- Energy saving techniques at the application layer. Energy profiling tool and case studies of popular apps: Fine Grained Energy Accounting on Smartphones with Eprof. Power consumption in browsers: Who Killed My Battery: Analyzing Mobile Browser Energy Consumption. Code offloading and remote execution: MAUI: Making Smartphones Last Longer with Code Offload.