Computer Networks

CMSC 417: Spring 2020

banner
Time: Tu-Th, 2:00pm - 3:15pm
Location: CSI 1115



Instructor: Nirupam Roy
Email: nirupam@cs.umd.edu
Office: IRB 5240

General Information


Office Hours:


Description:
The goal of this course is to introduce students to the core concepts of wired and wireless networking. The primary focus will be on the layered architecture and the protocol stacks. At the end of the semester, students will well understand several concepts, including the Internet architecture, HTTP, DNS, P2P, Sockets, TCP/IP, BGP, Routing protocols, wireless and sensor networking, WiFi, cellular and satellite networks, and security.

Topics:
Prerequisite: Minimum grade of C- in CMSC351 and CMSC330; and permission of CMNS-Computer Science department. Or must be in the (Computer Science (Doctoral), Computer Science (Master's)) program.

Grading:
(1) Final exam (20%) - One closed book exam at the end of the semester covering the entire syllabus.
(2) Third-term exams (30%) - Two closed book in-class exams covering selected topics from the syllabus.
(3) Programming assignments(25%) - Five programming assignments.
(4) Project (20%) - One semester-long project in a group of four students.
(5) Class participation (5%) - Participation in discussions, and asking meaningful questions.

Textbook:

(1) Computer Networks: A Systems Approach
by Larry Peterson and Bruce Davie
Morgan Kaufmann, 5th Edition, 2011. ISBN 978-0123850591

Recommended books for reference:

(1) Computer Networking: A Top-Down Approach Featuring the Internet
by Jim Kurose and Keith Ross.
Addison-Wesley, 5th edition, 2009. ISBN: 978-0136079675

(2) TCP/IP Sockets in C: A Practical Guide for Programmers
by Michael J. Donahoo, Kenneth L. Calvert
Morgan Kaufmann, 2nd edition, 2009. ISBN 978-0123745408

Course Schedule

(This schedule may change due to unforeseen events and students' evolving interests)

Date

Topics of discussions

Study materials


28-Jan-2020

Lecture 0: Course overview and logistics


30-Jan-2020

Lecture 1: Foundations of networks and overview
(Textbook chapter 1)


04-Feb-2020

Lecture 2: Foundations of networks and overview (continued)
(Textbook chapter 1)


06-Feb-2020

Lecture 3: Distance vector routing
(Textbook chapter 3.3.1 and 3.3.2)


10-Feb-2020

Assignment_0 is released.
Due: February 24th, 11:59:59 pm


11-Feb-2020

Lecture 4: Distance vector routing (cont.) and Link state routing
(Textbook chapter 3.3.2 and 3.3.3)


13-Feb-2020

Lecture 5: Basic internetworking (IP)
(Textbook chapter 3.2)


18-Feb-2020

Lecture 6: IPv4 addresses, Subnets, CIDR, DHCP
(Textbook chapter 3.2)


20-Feb-2020

Lecture 7: Private address spaces, NAT protocol
(Textbook chapter 3.2)


25-Feb-2020

Lecture 8: ARP, ICMP, Virtual networks and tunnels
(Textbook chapter 3.2)


27-Feb-2020

In-term review and discussions
(Textbook chapters 1, 3.2, and 3.3)


03-Mar-2020

Third-term exam# 1
Here is the syllabus.
This is an in-class exam. Please bring your university ID card.


05-Mar-2020

Lecture 9: Transport layer protocols
(Textbook chapter 5)


10-Mar-2020

Lecture 10: Stop-and-wait protocol
(Textbook chapter 5)


12-Mar-2020

Lecture 11: Sliding window protocol
(Textbook chapter 5)


15-Mar-2020
to 29-Mar-2020

Extended spring break


31-Mar-2020

Lecture 12: TCP flow control
(Textbook chapter 5)

Slides:
12_TCP_flowcontrol_2.ppt
March 31st, 6:00pm: Lectures are available in the shared folder.


02-Apr-2020

Lecture 13: TCP congestion control
(Textbook chapter 6)

Slides:
13_TCP_CongestionControl.ppt
April 2nd, 8:46pm: Lectures are available in the shared folder.


07-Apr-2020

Lecture 14: Evolution of TCP congestion control and router-assisted congestion control
(Textbook chapter 6)

Slides:
14_TCP_variants_and_routerCC.ppt
April 7th, 9:03pm: Lectures are available in the shared folder.


09-Apr-2020

Lecture 15: Link layer: Ethernet and MAC protocols
(Textbook chapter 2)

Slides:
15_LinkLayer_ethernet.ppt
April 10th, 12:54am: Lectures are available in the shared folder.


14-Apr-2020

Lecture 16: Hubs/Switches and Wireless LAN (WiFi)-I
(Textbook chapter 2)

Slides:
16_wireless_LAN_1.ppt
April 15th, 12:55am: Lectures are available in the shared folder.


16-Apr-2020

Lecture 17: Wireless LAN (WiFi)-II, Bluetooth, and other wireless networks
(Textbook chapter 2)

Slides:
17_wireless_LAN_2.ppt
April 17th, 02:26am: Lectures are available in the shared folder.


21-Apr-2020

Lecture 18: Cellular networks and mobility in Wireless networks
(Textbook chapter 2)

Slides:
18_cellular_mobility.ppt
April 22th, 03:30am: Lectures are available in the shared folder.


28-Mar-2020

Third-term exam# 2


28-Apr-2020

Lecture 19: Advanced networking: BGP protocol - I
(Textbook chapter 4)

Slides:
19_BGP_part1.pptx
Lectures are available in the shared folder.


30-Apr-2020

Lecture 20: BGP protocol - II
(Textbook chapter 4)

Slides:
20_BGP_part2.pptx
Lectures are available in the shared folder.


05-May-2020

Lecture 21: Application layer: Web, Email, DNS
(Textbook chapter 9)

Slides:
21_ApplicationLayer_part_1_and_2.pptx
Part-1 of the lecture-21 is available in the shared folder.


07-May-2020

Lecture 21 - part 2: Application layer: Web, Email, DNS - II
(Textbook chapter 9)

Part-2 of the lecture-21 is available in the shared folder.


12-May-2020

Lecture 22: Network security: Ciphers, RSA, Authentication, SSL
(Textbook chapter 8)

Slides:
22_NetworkSecurity.pptx
Lectures are available in the shared folder.


18-May-2020 (MONDAY)

Final exam

Location: CSI 1115
Time: 10:30pm-12:30pm