Past Academic year: bottom page
Welcome to the 2012/2013 edition of this course. It is one of the core courses characterizing the "Internet Technolgy" area, but also in general the "Systems and Networks" curricula, and it is fundamental to undestand, e.g., how embedded systems interact with the rest of the world.
Indeed, networkin is toda at the core of almost all informatics and computer science, as a PC isolated from the internet or special purpose computers (embedded systems) unable to communicate are simply unconceivable. The topic of the course is the Internet itself, its architecture, its technologies, its limitations, its strengths and ... its bugs; but we also make "incursions" in other networking and communications realms.
We will explore some topics in the three main layers:
I will teach most of the classes, but we will have the opportunity to have some in-depth seminars by other researchers.
Please, refer to ESSE3 for the formalities and the official program.
Our program this year will conduct us from IP routing and Multicast to TCP congestion problems up to some fundamental multimedia protocols in the internet like SIP (and some H.323), to NATting techniques, and P2P IPTV systems.
We do not have, as usual, a single official textbook. The reason is that finding 'advanced' topics in textbooks is not easy, if at all possible.
Some good basic networking books exist that cover all the material you are supposed to know from basic networking courses and also some of the material we cover.
Here are a couple of them:
Douglas Comer also wrote several advanced books on many different facets of the Internet.These books are very good and cover all our material ... indeed much more than we actually do, but the material is sparse over several books, and it is not "efficient" to buy 3-4 books to exploit 20-30 pages each.
A written "network design" plus oral complement.The written will consist in 1-2 "large" exercises or themes, where you have to demonstrate a global understanding of the material studied, and also the maturity to use it, or simply to organize material you know in a suitable way for the time assigned (which is short, just 1.5 hours). In general there is not a single correct solution, but several alternatives can be taken, some smarter than others. The oral will be 2-4 days after the written part, and to access the oral the written part must be sufficient. The oral is the same as for those doing a project.
As an alternative (advisable for all who liked this sourse and have interest in networking) to the written part of the exam, you can undertake a project. Projects are "practical", i.e., they either require to develope something (e.g., an improvement to our P2P real-time video streaming application PeerStreamer ), or to experiment with different alternatives, e.g., measure the performance of different protocol alternatives. They can be done in groups. The effort per person should be around 2-3 weeks work. After the project is finished you can have the oral part.
The oral will cover all we did in class, and is normally in form of a discussion, often joining together different parts and taking the notions there as an excuse to broaden the subject and investigate how familiar you have become with networking concepts.
There is nothing like a "list of projects". Projects are assigned on-demand, based on your interests and attitudes. So:
Please remember to register for the exam BEFORE taking the exam, otherwise we can't register the grade.
Refer to ESSE3 for the remaining bureaucracy.
This summer (2013) I'm mostly not in Trento for work reasons, thus you should take the oral exam before June 9, between June 24 and June 29, between July 29 and August 1 or in September.
Advice: RFCs pointers are offered for additional in-depth study, the ones indicated are normally not the only one related to one argument, but they are the "founding" ones. Study is expected to complement lessons, not to "learn by hart" the RFCs, which is useless since they are full of details not really necessary to understand a protocol, but necessary to guarantee interoperability in implementation.
Internet pointers, when appropriate and given, can be used to complements the notes taken in class. Please, try to avoid "googling around" with keywords of the lessons, because you end up finding tons of bad (often wrong!!) material and wasting a lot of time.
The most obvious place to query, ask for clarifications, rise doubts and so on is the class, so that everybody can intervene and be aware of clarifications. Moreover, our lessons can be influenced by your questions and curiosities, so expressign them in class can lead to a "personalized" course in the end.
Further minor queries can be done at the end (or before) the lesson.
If additional time is needed for complex queries or long problems send me an e-mail for an appointment. Try to specify the reason in the e-mail, this helps me preparing the answer and helps you formalizing it. Please, avoid dropping-by the office. Normally I cannot receive you on the fly and the only result is a waste of time. I do not set up a formal receiving hour: you can come at any time, just take an appointment.
If you have small quick doubts I can also try to solve them via e-mail, so that you don't need to come to my office for a 30 second answer!