Fundamentals of Telecommunications and Computer Networks 04-641 Instructor: Martin Saint msaint@africa.cmu.edu Office Hours: MW 13:30 14:30, T 10:30 11:30, and by appointment Teaching Assistants: Jean Bonfils Tuyishimire jtuyishimire@africa.cmu.edu +250 788 87 08 36 Office Hours: MW 16:00 18:00, and by appointment Brian Otieno Bjotieno@africa.cmu.edu +250 739 37 41 01 Office Hours: TTh 16:00 18:00, and by appointment Class Meeting Time: MW 10:30 12:20 Recitation: Friday Section A 9:30-10:20 Section B 10:30-11:20 Course Syllabus Fall 2017 Course Web Pages Canvas and Piazza. Check both on a regular basis. Course material including class notes, readings, assignments and announcements will be posted to Canvas. Students are responsible for any information conveyed to the class via Canvas announcements. Piazza is Q&A web service. Questions and special supportive notes are posted to Piazza. Contributions to discussions and answering questions may also be considered when evaluating participation in the class. Discussion and helping your classmates is encouraged. Textbook Computer Networking: A Top-Down Approach (6th or 7th Edition), by James Kurose and Keith Ross, Pearson Education. Optional Textbook TCP/IP Tutorial and Technical Overview, by Lydia Parziale et al., IBM Redbooks (2006), ISBN: 0738494682. Available at: TCP/IP Tutorial and Technical Overview Course Description The objective of this course is to learn the fundamental principles underlying modern communication networks with a focus on the Internet. Using a top-down approach, we will cover topics in the application, 1
transport, network and link layers of the Internet protocol stack. We will also go over more advanced topics, including network management, traffic engineering, and router internals. Students will gain an understanding of the engineering tradeoffs and design principles used in communication networks. Prerequisites None. Topics During the course students will develop the skills in the following topics: 1. History of the Internet 2. Design principles 3. ISPs, Backbones and Peering 4. Application Protocols (HTTP, FTP, SMTP, POP3, IMAP, DNS, DHCP) 5. DNS and CDNs (content distribution networks) 6. Peer-to-Peer Networks 7. Queuing Theory 8. Transport Layer (UDP, TCP) 9. Congestion Control 10. Network Layer (IP addressing, subnetting, ICMP, OSPF, RIP, IPv4, IPv6) 11. Routing (Internet, Algorithms, Instability) 12. Network Measurement 13. Link Layer (Ethernet, Devices, Virtual Link Layer, ARP, MAC) 14. Wireless and Mobile Networks, and Next Generation Networks 15. Security in Computer Networks After completing this course, students should understand how modern telecommunications and computer networks function, and understand relevant protocols and the protocol stack. They should also be able to do network subnetting and explain how routing and switching is accomplished. Schedule The schedule is subject to change as the semester progresses. 2
Date Day Instructor Topic Assignments Aug 28 Mon Saint Ch 1: Overview Paper 1 assigned Readings, 6th & 7th eds: sects 1.1 thru 1.4 Aug 30 Wed Saint Ch 1: Overview Readings, 6th & 7th eds: sects 1.5 thru 1.8 Sept 1 Fri Holiday Sept 4 Mon Saint Ch 2: Application layer Paper 1 due, Paper 2 & PS 1 assigned Readings, 6th & 7th eds: sect 2.1 Sept 6 Wed Saint Ch 2: Application layer Readings, 6th & 7th eds: sect 2.2 Sept 8 Fri Jean Bonfils & Brian Recitation Sept 11 Mon Saint Ch 2: Application layer Paper 2 due, Lab 1 application assigned Readings, 6th & 7th eds: sect 2.3 Sept 13 Wed Saint Ch 2: Application layer Readings, 6th & 7th eds: sect 2.4 Sept 15 Fri Jean Bonfils & Brian Recitation Sept 18 Mon Saint Ch 2: Application layer PS 1 due, PS 2 assigned Readings, 6th & 7th eds: sects 2.5 & 2.6 Sept 20 Wed Saint Ch 2: Application layer Q 1 computer networks and the Internet Readings, 6th & 7th eds: sects 2.7 & 2.8 Sept 22 Fri Jean Bonfils & Brian Recitation Sept 25 Mon Saint Ch 3: Transport layer Lab 1 due, Paper 3 assigned Readings, 6th & 7th eds: sects 3.1 & 3.2 Sept 27 Wed Saint Ch 3: Transport layer Readings, 6th & 7th eds: sects 3.3 & 3.4 Sept 29 Fri Jean Bonfils & Brian Recitation Oct 2 Mon Saint Ch 3: Transport layer PS 2 due, Lab 2 transport & PS 3 assigned Readings, 6th & 7th eds: sects 3.5 & 3.6 Oct 4 Wed Saint Ch 3: Transport layer Q2 application layer Oct 6 Fri Jean Bonfils & Brian Recitation Oct 9 Mon Saint Ch 4: Network layer Lab 2 due, Paper 4 assigned Readings, 7th ed: sects 4.1 & 4.2 Oct 11 Wed Saint Ch 4: Network layer Readings, 7th ed: sects 4.3 & 4.4 Oct 13 Fri Jean Bonfils & Brian Recitation Oct 16 Mon Saint Ch 4: Network layer PS 3 due, Lab 3A network (DHCP & ICMP) assigned Readings, 7th ed: sects 4.5 & 5.1 Oct 18 Wed Saint Ch 4: Network layer Q3 transport layer Readings, 7th ed: sects 5.2 & 5.3 Oct 20 Fri Jean Bonfils & Brian Recitation Oct 23 Mon Saint Ch 4: Network layer Paper 4 due, PS 4 assigned Readings, 7th ed: sects 5.4 & 5.5 Oct 25 Wed Saint Ch 4: Network layer Readings, 7th ed: sects 5.6 thru 5.8 Oct 27 Fri Jean Bonfils & Brian Recitation Oct 30 Mon Saint Ch 5: Link layer Lab 3A due, Lab 3B network (IP & NAT) assigned Readings, 6th ed: sects 5.1 & 5.2., 7th ed: sects 6.1 & 6.2 Nov 1 Wed Saint Ch 5: Link layer Readings, 6th ed: sect 5.3., 7th ed: sect 6.3 Nov 3 Fri Jean Bonfils & Brian Recitation Nov 6 Mon Saint Ch 5: Link layer Lab 3B due, Paper 5 assigned Readings, 6th ed: sect 5.4, 7th ed: sect 6.4 Nov 8 Wed Saint Ch 5: Link layer Readings, 6th ed: sect 5.5. 7th ed: sect 6.5 Nov 10 Fri Jean Bonfils & Brian Recitation Nov 13 Mon Saint Ch 5: Link layer PS 4 due, Lab 4 Link & PS 5 assigned Readings, 6th ed: sect 5.6. 7th ed: sect 6.6 Nov 15 Wed Saint Ch 5: Link layer Q4 network layer Readings, 6th ed: sects 5.7 & 5.8, 7th ed: sects 6.7 & 6.8 Nov 17 Fri Jean Bonfils & Brian Recitation Nov 20 Mon Saint Ch 6: Wireless & NGN Paper 5 due, Lab 5 entire network assigned Readings, 6th ed: sects 6.1 & 6.2. 7th ed: sects 7.1 & 7.2 Nov 22 Wed Saint Ch 6: Wireless & NGN Readings, 6th ed: sects 6.3 & 6.4, 7th ed: sects 7.3 & 7.4 Nov 24 Fri Jean Bonfils & Brian Recitation Nov 27 Mon Saint Ch 6: Wireless & NGN Lab 4 due Readings, 6th ed: sects 6.5 & 6.6. 7th ed: sects 7.5 & 7.6 Nov 29 Wed Saint Ch 6: Wireless & NGN Readings, 6th ed: sects 6.7 thru 6.9. 7th ed: sects 7.7 thru 7.9 Dec 1 Fri Jean Bonfils & Brian Recitation Lab 5 due Dec 4 Mon Saint Ch 7: Security PS 5 due, Paper 5 & Lab 6 entire network assigned Readings, 6th & 7th eds: sects 8.1 thru 8.3 Dec 6 Wed Saint Ch 7: Security Q5-link layer Readings, 6th & 7th eds: sects 8.4 thru 8.6 Dec 8 Fri Jean Bonfils & Brian Recitation Paper 5 due Dec 11 Mon Saint Ch 7: Security Lab 6 due Readings, 6th & 7th eds: sects 8.7 thru 8.10 Dec 13 Wed Saint,Jean Bonfils & Brian Final examination (2.5 hrs) 3
Required Reading Readings as below are required to be completed as the topic is being discussed in class. There are slight differences in the assigned chapters/sections depending on whether you have the 6th or 7th edition of the textbook. While the chapter and section numbers are different between the two editions, the content is virtually the same. Read each chapter in it s entirety unless noted otherwise. For students with the 6th Edition of Computer Networking: A Top-Down Approach: Chapter 1: Entire Chapter 2: Skip the material on the FTP protocol and distributed hash tables. Some additional reading from the 7th edition may be provided. Chapter 3: Skip the material on asynchronous transport mode (ATM). Some additional reading on explicit congestion notification (ECN) from the 7th edition may be provided. Chapter 4: Skip the material on virtual circuit and datagram networks, and multicast and broadcast communication. Additional reading from the 7th edition will be provided. Chapter 5: Entire Chapter 6: Entire Chapter 7: Entire Chapter 8: Entire Chapter 9: Optional. This material is covered in Ch. 5 from the 7th edition, which will be provided to you. For students with the 7th Edition of Computer Networking: A Top-Down Approach: All chapters should be read in their entirety. Grading scheme Paper 1 review: The history and future of the Internet......................1.4% Problem Set 1: Computer networks and the Internet........................4.0% Quiz 1: Computer networks and the Internet............................... 5.0% Paper 2 Review: The Domain Name System Past, Present, and Future.... 1.4% Lab 1: Application layer protocols (HTTP and DNS)....................... 5.0% Problem Set 2: Application layer........................................... 4.0% Quiz 2: Application layer................................................... 5.0% Paper 3 Review: Transport-Layer Support for Multimedia Applications..... 1.4% Lab 2: Transport layer..................................................... 2.0% Problem Set 3: Transport layer............................................. 4.0% Quiz 3: Transport layer.....................................................5.0% Paper 4 Review: IPv6: The New Internet Protocol..........................1.4% Lab 3A network (DHCP & ICMP)........................................ 2.5% Lab 3B network (IP & NAT)..............................................2.5% Problem Set 4: Network layer.............................................. 4.0% Quiz 4: Network layer...................................................... 5.0% Paper 5 Review: Error Control Techniques and their Application........... 1.4% Lab 4: Link layer........................................................... 2.0% Problem Set 5: Link layer.................................................. 4.0% Quiz 5: Link layer.......................................................... 5.0% Lab 5: Entire network...................................................... 2.0% Lab 6: Entire network...................................................... 2.0% Final examination...........................................................25% Participation............................................................... 5.0% Total.....................................................................100% 4
Class Policies You are expected to attend every class and arrive on time. While in class laptops should be closed unless we are working specifically on an in-class computer assignment. Mobile phones should be silenced. No calls or messages should be taken or sent while in class. If you have an emergency or extenuating circumstance, please notify us in advance when possible. All communication in the class, with the instructors, when working in groups, or with the teaching assistant must be in English. Late work will not be accepted. Students are allowed to talk to each other, to the T.A., to the instructor, or to anyone else about any of the assignments. Any assistance, though, must be limited to discussion of the problem and sketching general approaches to a solution. Each student must write their own solutions. Consulting another student s solution is prohibited, and submitted work may not be copied from any source. Copying from someone else s work (present or past year s solutions) or allowing another student to copy his/her work will be considered as cheating. If you have any question about whether some activity would constitute cheating, please feel free to ask. If you collaborate with any other person on your assignment, list their name(s) at the top of the first page of your assignment. If you have special circumstances approved by the Disabled Student Services office, it is up to you to make arrangements with the instructor ahead of time. Academic Integrity Policy: http://www.cmu.edu/policies/student-and-student-life/academic-integrity.html The CMU policy on Academic Integrity states: Students at Carnegie Mellon are engaged in intellectual activity consistent with the highest standards of the academy. The relationship between students and instructors and their shared commitment to overarching standards of respect, honor and transparency determine the integrity of our community of scholars. The actions of our students, faculty and staff are a representation of our university community and of the professional and personal communities that we lead. Therefore, a deep and abiding commitment to academic integrity is fundamental to a Carnegie Mellon education. Honesty and good faith, clarity in the communication of core values, professional conduct of work, mutual trust and respect, and fairness and exemplary behavior represent the expectations for ethical behavior for all members of the Carnegie Mellon community. A policy of this kind may not be familiar to you or may differ from your personal notions of working with and supporting others in your community. Regardless of your background, any student caught violating academic integrity in this course will receive an R and the facts of the case and the penalty will be reported to the Dean of Student Affairs. Therefore it is important that you understand what we mean by academic integrity. Academic integrity can be broken down into three related categories: cheating, plagiarism, and unauthorized assistance. Cheating: Taking an unfair or disallowed advantage over other students. This is the usual looking at other people s work during an exam; getting unauthorized access to present or past exams and other graded materials; having others complete graded work for you; making up data; faking medical conditions to get extra time or accommodations; copying others homework solutions. Plagiarism: All work submitted in this course is expected to be the original work of the student with full references given for any sources used in preparing assignments. Plagiarism includes using the work of others without proper attribution. This is a subtle subject covered in the seminar and other classes. In short if you find yourself copying the writing of others then you better know how to cite it properly. Even if you rewrite it in your own words, it still is plagiarism if it is not properly cited. Even with proper citations, if you find yourself citing very large passages, then it can still be considered plagiarism - imagine you wrote a new paper by simply copying an older paper, adding a proper citation to the older paper, and putting your name on the cover. Unauthorized Assistance: Using sources of support that have not been specifically authorized. Your work should be your own and only draw upon materials, people, and devices specified by the instructor. Note something very important. It is an academic integrity violation to give unauthorized assistance even if the giver does not benefit and even if no specific receiver is caught or punished. There can be a lot of peer pressure to help each other out. If you are feeling that pressure, just come to any of the faculty or staff to talk about it. You may not have much experience with CMU s Academic Integrity Policy and the issues are sometimes subtle. If you have any question about what is the right thing to do, just ask. Any of the faculty 5
or teaching assistants can provide guidance. If you are uncomfortable asking then you probably already know that you are violating the academic integrity policy and should change your actions accordingly. 6