Welcome to CS 457 Fall 2025

CS457: Computer Networks and the Internet is a senior level undergraduate course that covers the principles of data communications, local area networks, communications protocols, TCP/IP, and the Internet. We will discuss topics from client/server computing to multimedia streaming, as well as network considerations for the IoT (Internet of Things). The course covers architectural principles from the basic networking stack through Software Defined Networking (SDN) and aspects of Network Function Virtualization (NFV).

If you want to learn how the Internet and its applications work, you should take this class. Note, however, that this is not an easy class as there is a wide variety of material that will be covered. This class includes theory (e.g., solving problems related to delay) and programming (using sockets). The programming will be mostly in Python, but also in C/C++. Please read the syllabus and policies.

The course is open to Computer Science and Applied Computing Technology students only. Other majors need to satisfy the prerequisites and have the permission of the instructor to register. 

The course is also offered as an online course for distance-learning students (class section 801). 

PREREQUISITES

  • CS 214 with a minimum grade of C or CS 253 with a minimum grade of C; and
  • CS 370 with a minimum grade of C; and
  • STAT 301 with a minimum grade of C or STAT 303 with a minimum grade of C or ECE 303 with a minimum grade of C or STAT 307 with a minimum grade of C or ERHS 307 with a minimum grade of C or STAT 311 with a minimum grade of C or STAT 315 with a minimum grade of C

REQUIRED TEXTBOOK

  • Computer Networking: A Top-Down Approach, 9th Edition

FALL 2025 SEMESTER

This is a four-credit that is taught both on-campus and on-line. The on-campus course is scheduled as three 50-minute lectures per week. For the on-line course, These lectures are recorded and distributed via Echo360 a few hours after the end of the on-campus lecture. On-line students can also follow a live stream of the on-campus class via Echo360. More information about the course is available under CANVAS. 

The course includes a lab component for which various programming assignments and homework exercises will be given. Many of these lab exercises will use Jupyter Notebooks as well as Python’s SCAPY module, Wireshark, and other network tools and utilities. 

On Campus Section Schedule and Location

SectionTimeLocation
CS 457 Section 001Monday, Wednesday and Friday, 2:00 pm – 2:50 pmPhysiology 103
L01 – Lab #1 Monday, 3:30 pm – 5:30 pmCSB 325 / MS Teams
L01 – Lab #2Wednesday, 11:00 am – 1:00 pmCSB 315 / MS Teams
L01 – Lab #3Thursday, 10:00 am – 12:00 pmCSB 315 / MS Teams

The table below lists the Instructor and Teaching Assistants along with their office hours. The instructor is also available by appointment

Instructor and TA Information

NameRoleOffice HoursLocation
Dr. Indrajit RayInstructorMondays and Fridays, 12:30 pm – 1:30 pmCSB 344
Rakesh PodderGraduate Teaching AssistantTBACSB XXX / MS Teams
Rakibul TalukderGraduate Teaching AssistantTBACSB XXX / MS Teams

GRADING

Succeeding in this course requires the student to demonstrate a grasp of the concepts via homework, lab exercises, exams, and programming projects.

  • There will be five in-class exams spread out during the semester, one on each of the core concept areas in networking – Basic concepts, Application layer, Transport layer, Network layer and Data-link layer. There would be no final exam or makeup exams.
  • There will be three programming projects on Unix Socket Programming assigned during the semester. Languages used are Python.
  • There are also some Wireshark lab assignments to strengthen various network concepts and protocols like TCP, UDP, ICMP, and others.

A final numeric grade is determined by adding up all the weighted scores in each activity area, computed according to the table below.

Grade Assessment Basis

ActivityWeight
Programming Homework10%
Wireshark and Lab Assignments15%
In class exam on chapters 1 & 2 15%
In class exam on chapter 315%
In class exam on chapter 415%
In class exam on chapter 515%
In class exam on chapters 6 & 715%
Total100%

The final letter grades for the course are based on your final class average. Grades will be assigned according to the table below. Note that while I will not be cutting higher for these grade ranges, I reserve the right to cut lower. (In other words, while I will not make an A to be 96 – 98 for example, I can make it 90 – 92.)

Grading Scheme

Grade RangeLetter GradeGrade RangeLetter Grade
96 and upA+80 to 82B-
92 to 96A78 to 80C+
90 to 92A-70 to 78C
88 to 90B+60 to 70D
82 to 88Bbelow 60F

Note: CSU does not use grades C-, D+ or D-

GRADING RE-EVALUATION

If you believe you have been graded unfairly in an exam, project, homework or assignment, talk with your teaching assistants before meeting with the instructor.

LATE & MAKE-UP

We expect students to complete all work on time – there is no late period for this course.

Excused absences may cause a student to miss a lecture or exam. Students must consult with the instructor as soon as possible to make other arrangements, preferably before the event.

Need for make-up for emergencies would be considered and dealt with on a case-by-case basis.

IMPORTANT DATES

EventDate
First Day of ClassMonday, August 25
End Restricted DropFriday, August 29
End Regular AddSunday, August 31
Labor Day, No ClassesMonday, September 1
Registration ClosesWednesday, September 10
End Course Withdrawal (“W”)Friday, November 14
Thanksgiving BreakSaturday, November 22 – Sunday, November 30
Last Day of ClassesFriday, December 12

For any accessibility issue, please contact the instructor:

Instructor: Indrajit Ray

Room Number: CSB 344

Email: Indrajit.Ray@colostate.edu

Phone: (970) 491-7097