· As you were writing the final exam, I was reading an article in IEEE Spectrum on Facebook’s Terragraph. This would be an alternative example of a multihop wireless network, similar to the MANETs we discussed in class. In the case of Facebook’s effort, the routers are wireless but not mobile, creating a wireless mesh (similar to the idea in the Microsoft video)
In the Winter 2019 term, Thomas Kunz is teaching a graduate course on Mobile Computing (course description can be found here). As more information becomes available, it will be posted on this page.
· Page with some fun/humorous takes on wireless networks
· Page with news/updates related to wireless networks
· Page with information (hopefully) helpful for doing successful research
As usual in a graduate course, no single textbook covers all the topics we will touch on. However, fairly complete coverages of the course content can be found in:
· Mobile Communications, 2nd edition, by Jochen Schiller, Pearson Education Limited 2003, ISBN 0-321-12381-6. You can download a PDF version of that textbook here.
· Ad Hoc Wireless Networks: Architectures and Protocols, by C. Siva Ram Murthy and B.S. Manoj, Prentice Hall 2004, ISBN 0-13-147023-X (despite the title, it also covers many cellular/WLAN topics briefly).
You may also want to look at the following books (in addition to the references provided in the Appendix section on the website):
Finally, here are links to three open access books on wireless networks/wireless sensor networks that also may be of interest to you:
Course handout and other information, including assignments:
· Course handout (as of January 4, 2019)
· Assignment 0 Handout, as PDF file.
· Sample awk script to extract relevant statistics from tracefile
· Sample TCL script for the second part (setting up a three-hop line topology). As discussed in class, this is basically simple-wireless.tcl, with a few changes to achieve the desired outcome.
Many papers studied the performance of IEEE 802.11 (not surprising, given its widespread use). One of the earliest work to analytically study the channel utilization is the work by Bianchi, modelling the protocol behaviour as a 2-dimensional Markov Chain. He then solves this for all sorts of parameters, including the ones we are interested in (the paper also studies, in quite some detail, how the various protocol parameter settings impact performance). Figure 6 shows the normalized saturation throughput (which is just another term for channel utilization) as a function of the number of contending nodes. Similarly, Figure 15 shows saturation throughput as a function of packet size. Note that you can use such results even when you do not completely understand the underlying math J.
· Sample Assignment 1 Submission (past students)
· Assignment 2 Handout, as PDF file. Similar to Assignment 1, there are three papers you should read as a starting point for the assignment, as they describe the problem you will be exploring. Also, one of the steps in the assignment is to re-create the results from one of the papers (a paper of your choosing). Note that I extended the assignment deadline by a week, as we have not really started talking about TCP in wireless networks yet.
· For the course assignments, you will need to design and run networking experiments and analyze the results. We will use NS2 (an older, widely used network simulator for MANET research in particular) and you need to install it on a computer of your choice. The most straightforward way to do this, if you have a Windows PC, is to run a Linux Virtual Machine I provide, see the following instructions. If you have Linux running on your PC, you can install NS2 from its source distribution.
· A guide to installing a Linux Virtual Machine (includes NS2) on Windows PCs.
· An alternative step-by-step description can be found here.
· Some comments on installing NS2 from scratch on a Linux PC.
· Working with NS2. As raised in class, NS2 is deterministic as it seeds the random number generator with the same seed by default. According to this page, to introduce some randomness, you would need to do the following before your $ns_ run command: $defaultRNG seed n, where n is an integer. If n is
· non-zero, NS2 will use n as a seed for random number generator.
· zero, NS2 will change the seed according to clock and counter. Basically, the simulation results tends to be different for every run.
So you may want to set n to 0, otherwise you’d have to change that for every single NS run (seeding the simulation consistently with the same n, say 333, would not be any different from seeding it with 1, which seems to be the default).
Sample Final Exams:
I posted below past final exams (i.e., exams I used in previous years). I also posted a sample solution, though I obviously would not expect any student submission to have exactly those answers. Also please note that the course content changes from year to year (at least a bit), so old exams may have questions that I would not ask this year for obvious reasons….
Course Material (password-protected, will be updated throughout the term):
As the slides will be updated, I will post them here for download and review, as PDF files in an easy-to-print 2 slides per page format. The set of slides includes some I adapted from Prof. Schiller's slides for his textbook.