Course Syllabus
Please note that some content linked on this page may only be available to registered students.
Course Introduction
Introductory course on computer security with the objective to introduce concepts and principles of computer systems security. Notions of security, basic cryptographic primitives and their application, basics of authentication and access control, basics of key-management, basics of malware and software security.
What CS 372 is about
The theme of CS 372 is “How Computer Networks Work”. We will begin with an overview of the basic concepts of networking technologies. We will then delve deeper into these concepts by exploring networking functionality at each of the layers of the Internet Protocol Stack. Along the way, we will learn about the hardware and software that enable network communication, the protocols that control network communication, and some of the applications that make it possible for the general public to use and enjoy the Internet.
Computer networking is complicated. There is an enormous body of knowledge that encompasses multiple areas of specialization. We will attempt to handle the complexity by concentrating on theory, abstractions, and general concepts, and then using a few example technologies to illustrate the concepts. In addition, we will have some hands-on lab experience to reinforce the concepts.
CS 372 is an introduction to computer networking. As such, we chose a mostly theoretical approach to the materials, with some hands-on lab and programming work. It offers an overview of several aspects of networking (breadth), with details about a few networking technologies (depth). It can be a first step in earning certification in networking.
CS 372 is not a network administration course. It is not a certification course in any area of specialization. Additional courses are required in order to qualify for a CNA/CNE or other networking or systems administration professional certifications.
The university catalog description for CS 372 is:
"Computer network principles, fundamental networking concepts, packet-switching and circuit switching, TCP/IP protocol layers, reliable data transfer, congestion control, flow control, packet forwarding and routing, MAC addressing, multiple access techniques."
The prerequisites for this course are CS 261 and CS 271 or equivalents.
Oregon State University does have a System Administration course available, CS312, but only currently in an on-campus offering (although, depending on the instructor, the course can be completed entirely remotely).
Course Introduction
Course / Designer Introduction
Meet the Instructors
Bram Lewis
Communication Policy
Please post all course-related questions in the Ed Discussions discussion boards so that the whole class may benefit from our conversations. Not all posts require a reply from the instructor or learning assistants and often it is better for students to work on an answer to a question themselves, helping cement understanding or locate resources to answer questions.
To contact the learning assistants, open Canvas Inbox, compose a new message, select this course, then next to the ‘To’ box click the address book, select “Teaching Assistants”, then choose the name(s) of learning assistants you wish to contact.
Please DM in Teams or email the instructor only for matters of a personal or private (grading) nature. The instructor or a learning assistant will reply to most course-related questions within 48 hours.
If there are questions about grading, please contact your assigned grader first but feel free to reach out to an instructor directly if there are still questions afterward.
Office Hours Schedule
See the course home page for list of office hours.
Below is a list of the instructional staff and grading assignments.
Name | Role | Grading range (last name) | |
Bram Lewis | Instructor (400) | Bram.Lewis@OregonState.edu | |
Yashwanthi Anand | GTA | anandy@OregonState.edu | Askari Zadeh to Khan |
Peiyuan Chen | GTA | chenpeiy@OregonState.edu | Kim to Miller |
Dongjun Lee | GTA | leedongj@OregonState.edu | Mingeaud to Zheng |
The best place to ask questions and get help is on Ed discussions or Teams. If you'd like direct, personal help, our Office Hours for this course will be held on our Teams channel or on Zoom. The up to date list of office hours is provided on the Home page.
Note: Office hours will not be held during Finals Week, or on days that the University has off (holidays, inclement weather days, etc.). The Instructors and TAs reserve the right to cancel or move office hours, but will give appropriate warning, if possible.
Teams
Office Hours are held via Teams (https://teams.microsoft.com). See the Start Here - Teams page for access code.
Discussion Board
Discussion Board via Ed Discussions (https://edstem.org/us/dashboard).
General Resources
eCampus Resources (Links to an external site.) - These resources will be useful for all of your classes throughout the term... Library Information, Helpdesk Contact Info, Canvas Tech Support, etc...
What you will need for CS 372
Required software is available for free download. It doesn’t matter if you are using a Mac or a PC, though there are sometimes hiccups with Macs and Wireshark; we will help you get set up.
- an Internet connection
- Wireshark Packet Analyzer (free online at http://www.wireshark.org/ )
- (Note: Do not download until asked by a lab) Pingplotter Standard Edition (free online at http://www.pingplotter.com/download.html )
- a system for implementing Python (and possibly C++) programs.
Additional Resources: These online resources may be helpful during various parts of the CS372 course:
- Hall, Brian, “Beej’s Guide to Network Programming: Using Internet Sockets” (free online at http://beej.us/guide/bgnet/) .
- Python Socket Programming Documentation: http://docs.python.org/3/library/socket.html
Course Summary:
Date | Details | Due |
---|---|---|