This course introduces fundamental concepts of telecommunication networks. Underlying engineering principles of telephone networks, computer networks, and integrated networks are discussed. Topics in the course include: telephone and data networks overview; OSI layers; physical layer and coding; data link protocol; flow control, congestion control, routing; local area networks (Ethernet, Wireless, etc.); transport layer; introduction to high-speed networks (MPLS, ATM, Gigabit Ethernet); performance evaluation techniques. More detailed information can be in the course syllabus.
This course does not use Blackboard. All information will be made available on this web site. The course also has a bboard (cyrus.academic.ece.18-345.discuss) that will be used for announcements and questions/answers for the projects.
Prerequisites: Probability Theory (36-217 or sequence of 36-211,212 or 36-225,226) and C/C++ programming skill (15-213).
Prof. Peter Steenkiste
E-mail: prs@cs.cmu.edu
Office: Gates 9107
Office Hours: Wednesday, 10-11am
|
Amandianeze Nwana
|
Xiaoran Wang
|
Communication Networks, Second Edition, by A. Leon-Garcia and I. Widjaja, McGraw-Hill, ISBN 0-07-246352-X.
Lectures will be held Monday and Wednesday in 12:30-2:20PM, in PH 125b. Recitations will be held Friday, 10:30-11:20AM, in PH 125c. Note that we only have recitation sessions when there is something listed on the schedule for that Friday.
The lecture notes listed are for this semester for past lectures, but from Fall 2008 for future lectures.
| Week from | Monday (PH 125b) | Wednesday (PH 125b) | Friday (PH 125c) | |
| Jan 10 | Recitation: sockets, svn, P1 | 1. Introduction | 2. Packets versus circuits | |
| Jan 17 | No class - MLK | 3. Protocol stack | P1 Q&A | |
| Jan 24 | 4. Physical layer 1 | 5. Physical layer 2 + Q | no session | |
| Jan 31 | 6. Physical layer 4 | 7. Datalink layer 1 | P1 Q&A | |
| Feb 7 | 8. Datalink 2 | 9. Datalink 3 + Q | - | |
| Feb 14 | 10. Datalink 4 | 11. Virtual circuits | - | |
| Feb 21 | 12. Network layer | 13. Network + Q | - | |
| Feb 28 | Exam 1 | 14. Network | Mid-semester break | |
| Mar 7 | Mid-semester break | Mid-semester break | Mid-semester break | |
| Mar 14 | 15. Network | No class | 16. Network | |
| Mar 21 | 17. Network | 18. Transport protocols + Q | - | |
| Mar 28 | 19. Transport protocols | 20. Transport protocols | - | |
| Apr 4 | No class | 21. The Web + Q | 22. Peer-to-Peer | |
| Apr 11 | 23. Security - crypto | 24. Security - availability | No class - carnival | |
| Apr 18 | 25. Future Internet | 26. Wireless + Q | - | |
| Apr 25 | 27. Review | Exam 2 | - |
There will be 6 quizzes and 2 exams in the course.
Quizzes: Your best 5 out of 6 quizzes will be counted 3% each toward the final grade, for a total of 15%. Each quiz will be given in the last 30 minutes of the lecture on the given date. There will be NO "make-up" quiz if you miss any of these. They will be held in the lecture room.
| Quiz | Date | Description | Solution | TA in charge |
| 1 | Wednesday Jan 26 | Covers lectures 1-4 | solution | Xiao |
| 2 | Wednesday Feb 9 | Covers lectures 5-8 | solution | Amandy |
| 3 | Wednesday Feb 23 | Covers lectures 9-12 | solution | Xiao |
| 4 | Wednesday Mar 23 | Lectures 13-17 | solution | Xiao |
| 5 | Wednesday Apr 6 | Lecture 18-21 | solution | Xiao |
| 6 | Wednesday Apr 18 | Lecture 22-25 | solution | Xiao |
Exams: The two exams are each 110 minutes long and worth 25% each. Both will be held in the lecture room. Both exams are closed book.
Exam 1 will cover lectures 1-13. It will be given on Monday Feb 28. The solutions are posted here.
Exam 2 will be on the last day of classes. It will cover the entire courses, but with emphasis on lectures 14-26.
Problem sets will be assigned throughout the course. These assignments will be collected but will NOT be graded. They are provided to help you understand the material and will not be counted toward the final grade. The solutions will be provided. Homeworks will typically be handed out the week before a quiz, covering the same material as the quiz.
| Homeworks | Description | Out | Due | Solution | TA in charge |
| HW 1 | Lectures 1-3 | Monday Jan 17 | Monday Jan 24 | hw1 solution | Xiao |
| HW 2 | Lectures 4-7 | Monday Jan 31 | Monday Feb 7 | hw2 solution | Amandy |
| HW 3 | Lectures 8-11 | Monday Feb 14 | Monday Feb 21 | hw3 solution | Xiao |
| HW 4 | Lectures 13-16 | Monday Mar 14 | Monday Mar 21 | hw4 solution | Amandy |
| HW 5 | Lectures 17-20 | Monday Mar 28 | Monday Apr 4 | hw5 solution | Amandy |
| HW 6 | Lecture 21-24 | Monday Apr 11 | Monday Apr 18 | hw6 solution | Xiao |
The course includes a series of four network software projects. The objective of the projects is to expose students to network software programming and to reinforce key networking concepts in a hands-on fashion. The four projects combined are worth 35% of the total grade.
Please use the course bboards (cyrus.academic.ece.18-345.discuss) for questions regarding the projects. The course will have a limited number of recitations in which we discuss the projects, and tips and tools that may be useful. The document Dave's Notes on Software Engineering for Systems Hackers may also be useful.
| Project | Out | Due | Description | Comments | TA in charge |
| Pr 1 | Friday Jan 14 | Friday Feb 4, now Feb 14 | HTTP server | Demos TBD | Amandy |
| Pr 2 | Friday Feb 4 | Monday Mar 21 (new date) | Transport | Demos TBD | Xiao |
| Pr 3 | Monday Mar 21 | Wednesday Apr 20 | Routing | Demos TBD | Amandy |
Grades will be determined based on 5 quizzes (15% total), 3 projects (35% total), and 2 exams (50% total). A distribution of grades for assignments returned so far can be found here.