CPE 401/601 Computer Network Systems

Department of Computer Science & Engineering

UNR, Spring 2017

Course Information - Description - Objective - Prerequisites - Textbooks - Syllabus - Organization - Grading - Learning Outcomes - Resources - Schedule - Announcements

Course Information

Class hours Monday & Wednesday, 1:00 - 2:15pm, University of Nevada, Reno
Class Room EJCH 265 SEM 201
Instructor Dr. Mehmet H. Gunes
E-mail mgunes (at) unr (dot) edu
Phone (775) 784 - 4313
Web page http://www.cse.unr.edu/~mgunes
Office SEM 238 (Scrugham Engineering-Mines)
Office hours Monday & Wednesday 11:00 - 12:30 pm or by appointment

Catalog Description

Packet switching, routing, congestion control, network layer, Internet, transport layer, sessions, FTP, telnet, rlogin, SMTP, NFS, NetBIOS, WWW, security, data compression.
Internet (design principles, architecture, measurement), network management (such as QoS, QoE, TE), overlay networks (such as p2p, CDN, DCN, Cloud, anonymity), modern network ecosystems, and network programming.


To develop an understanding of the various aspects of modern computer networking systems.

To become familiar with the state of the art in computer networks including architectures, protocols and systems.

To implement networked systems and gain experience with network programming.

You may look at earlier courses from Spring 2009, Spring 2010, Spring 2011, Spring 2012, Spring 2014, and Spring 2015.




Syllabus (Tentative)

This is a tentative list of topics, subject to modification and reorganization.
  1. Network Programming
  2. Internet
  3. Network Management
  4. Overlay Networks
  5. Modern Network Ecosystems


Grading (Tentative)

Both grading policy and scale are subject to change. Failure in either the assignments or the tests will result in failure in the course.

Grading Policy

Grading Scale (Tentative)

Important Note: You will have one week to appeal for your grades after the graded assignments/tests are returned. So, please keep this in mind if you think that there is a problem/issue with the grading of your work.

Student Learning Outcomes

ABET Accreditation Criterion 3 Program Outcomes that are relevant to this course are:

  1. Students will have an ability to apply knowledge of computing, mathematics, science, and engineering.
  2. Students will have an ability to design and conduct experiments, as well as to analyze and interpret data.
  3. Students will have an understanding of professional, ethical, legal, security and social issues and responsibilities.
  4. Students will have an ability to communicate effectively with a range of audiences.
  5. Students will have the broad education necessary to analyze the local and global impact of computing and engineering solutions on individuals, organizations, and society.
  6. Students will have a knowledge of contemporary issues.
  7. Students will have an ability to use current techniques, skills, and tools necessary for computing and engineering practice.

Useful Resources

Schedule (Tentative), Notes & Assignments

This is a tentative schedule including the exam dates. It is subject to readjustment depending on the time we actually spend in class covering the topics.

Permanent reading assignment: it is assumed that you are familiar with the contents of the slides of all past meetings.

Date Lectures Assignments & Notes
Mon, Jan 23 Lecture #1: Internet Brief History of the Internet
Wed, Jan 25 Lecture #2: Internet
Mon, Jan 30 Lecture #3: Internet
Wed, Feb 1 Lecture #4: Internet
Mon, Feb 6 Lecture #5: Introduction to Python
Wed, Feb 8 Lecture #6: Socket Programming in Python Assignment 1: Network Measurement due
Mon, Feb 13 Lecture #7: Socket Programming in Python
Wed, Feb 15 Lecture #8: Advanced Networking in Python
Mon, Feb 20 President's Day (No class)
Wed, Feb 22 Lecture #9: Internet Measurements
Mon, Feb 27 Lecture #10: Internet Measurements
Wed, Mar 1 Lecture #11: Internet of Things Assignment 2: IoT Proxy due
Mon, Mar 6 Lecture #12: Threads in Python @ EJCH 265
Wed, Mar 8 Lecture #13: Internet of Things
Mon, Mar 13 Lecture #14: Internet of Things
Wed, Mar 15 Midterm Exam
Mon, Mar 20 Spring break (no class)
Wed, Mar 22 Spring break (no class)
Mon, Mar 27 Lecture #15: Cloud computing @ EJCH 265 Assignment 3: IoT Interaction due
Wed, Mar 29 Lecture #16: Cloud computing
Mon, Apr 3 Lecture #17: Cloud computing @ EJCH 265
Wed, Apr 5 Lecture #18: Overlay Networks
Mon, Apr 10 Lecture #19: Peer-to-Peer Networks
Wed, Apr 12 Lecture #20: Distributed Hash Tables
Mon, Apr 17 Lecture #21: Distributed Hash Tables Assignment 4: IoT Cloud Interaction due
Wed, Apr 19 Lecture #22: Content Distribution Networks
Mon, Apr 24 Lecture #23: Anonymity
Wed, Apr 26 Lecture #24: Anonymity
Mon, May 1 Lecture #25: Digital Currencies
Wed, May 3 Lecture #26: Software Defined Networks
Mon, May 8 Lecture #27: Network Function Virtualization Assignment 5: IoT Ecosystem due
Mon, May 15 Final Exam @ 10:15am, EJCH 265 (Exam covers post-midterm material. However, you are expected to remember important pre-midterm concepts.)


Announcements regarding the course will be posted on this web page and WebCampus. Please check your WebCampus e-mail daily.

Course Information - Description - Objective - Prerequisites - Textbooks - Syllabus - Organization - Grading - Learning Outcomes - Resources - Schedule - Announcements
Last updated on May 14, 2017