CS447 Networks and Data Communications
Spring, 2024 (SECTION 002)
This is the home of CS447 Computer Networks, Spring 2024 (SECTION 002)
Instructor: Dr. Hiroshi Fujinoki
Office: EB 2067
Office Phone: 650-3727
E-mail: hfujino@siue.edu
Instructor's HP: www.siue.edu/~hfujino
Notice: when you are sending me e-mail, please specify "Network" in the subject field of your e-mail.
Office Hours:
For any non-urgent issues, please try to drop by my office during my office hours.
Class Meeting Room: EB-1170
Class Meeting Days: T and R
Class Meeting Time: 2:00-3:15 p.m. (for T and R)
Required textbook:
Title: Computer Networking: A Top-Down Approach, Addison-Wesley Data and Computer Communications
Edition: Seventh Edition
Authors: James F. Kurose and Keith W. Ross
ISBN: 9780133594140
Course Objectives:
This course is an undergraduate level introduction to computer networks.
There are three primary objectives in this course.
The first objective is to acquire fundamental knowledge about underlying mechanisms in today's computer networks.
The second objective is to become proficient in essential network programming technique using socket interface
with TCP/IP through programming projects.
The third objective is to be familiar with theoretical methods to analyze system performance of various aspects
in today's computer networks.
Course Syllabus:
Course Project:
To be announced in the class.
Reference books for our project:
(1) For Win-32 Environment:
Title: Programming Winsock/Book and Disk
Edition: N.A.
ASIN: 0672305941
Author: Arthur Dumas
Publisher: SAMS Publishing (http://www.samspublishing.com)
You can buy a used-copy from Amazon.com.
Editorial Reviews (Quoted from amazon.com):
This tutorial provides coverage of the WinSock Library,
which is one of several Windows Open Services Architecture (WOSA) standards being used to add TCP/IP
connectivity to applications.
"Disk includes source code, 16-bit and 32-bit executable programs, and shareware programs.
All major vendors of TCP/IP protocol stacks for Windows 3.1 use WinSock.
Shows how the WinSock Library makes software programs network aware". Covers Version 1.1 for Windows 3.11 & Windows NT.
(2) For UNIX Environment:
Title: UNIX Network Programming
Edition: 1st edition (January 23, 1990)
ISBN: 0139498761
Author: W. Richard Stevens
Publisher: Prentice Hall (URL: www.prenhall.com/stallings)
You can buy a used-copy from Amazon.com.
Editorial Reviews (Quoted from amazon.com):
Focuses on design, development, and coding of networking software under the UNIX operating system.
Begins by showing that a fundamental basic for networking programming is inter-process communication (IPC),
and a requisite for understanding IPC is a knowledge of what constitutes a process.
Throughout, the text provides both description and examples of how and why a particular solution is implemented.
The above two books will be available at the library.
Helpful hints to avoid plagiarism:
Here is a list of links to SIUE's definition for plagiarism (I got this in an e-mail from SIUE). Prevention is always better than cure. Please everyone take a look.
How to contact the instructor?
There are two ways to contact Dr. Fujinoki:
(1) Through e-mail: You can contact the instructor by e-mail. E-mail: hfujino@siue.edu
(2) Drop-by during the office hours.
(3) By appointment (please send e-mail to Dr. Fujinoki).
Past Exams
For the first midterm exams (sample and real exam questions):
- Sample Midterm #1 in Fall 2001: download
- Real Midterm #1 in Fall 2001: download
- Real Midterm #1 in Spring 2002: download
- Real Midterm #1 in Fall 2002: download
- Real Midterm #1 in Spring 2003: download
- Real Midterm #1 (Makeup) in Spring 2003: download
- Real Midterm #1 in Summer 2003: download
- Real Midterm #1 in Spring 2004: download
- Real Midterm #1 in Fall 2004: download
- Real Midterm #1 in Spring 2005: download
- Real Midterm #1 in Summer 2006: download
- Real Midterm #1 in Spring 2008: download
- Real Midterm in Fall 2013: download
- Real Midterm in Fall 2015: download
- Real Midterm in Fall 2016: download
For the second midterm exams (real exam questions):
- Real Midterm #2 in Fall 2001: download
- Real Midterm #2 in Spring 2002: download
- Real Midterm #2 in Fall 2002: download
- Real Midterm #2 (Makeup) in Fall 2002: download
- Real Midterm #2 in Spring 2003: download
- Real Midterm #2 in Summer 2003: download
- Real Midterm #2 in Spring 2004: download
- Real Midterm #2 in Fall 2004: download
- Real Midterm #2 in Spring 2005: download
- Real Midterm #2 in Summer 2006: download
- Real Midterm #2 in Spring 2008: download
For the final exams (real exam questions):
- Real Final Exam in Fall 2001: download
- Real Final Exam in Spring 2002: download
- Real Final Exam in Fall 2002: download
- Real Final Exam in Spring 2003: download
- Real Final Exam in Summer 2003: download
- Real Final Exam in Spring 2004: download
- Real Final Exam in Fall 2004: download
- Real Final Exam in Spring 2005: download
- Real Final Exam in Summer 2006: download
- Real Final Exam in Spring 2008: download
- Real Final Exam in Fall 2013: download
- Real Final Exam in Fall 2015: download
- Real Final Exam in Fall 2016: download
Notice: The subjects covered in each semester were different. Some of the questions that appear in the past
exams may not appear, while some other questions that did not appear in the past exams could appear. Use your
own judgement.
Notice: The subjects covered in each semester were different. Some of the questions that appear in the past quizzes may not appear
this semester, while some other questions that did not appear in the past quizzes could appear. Every student is responsible for reviewing and studying the subjects
covered in this semester. The instructor will NOT loan the instructor's lecture note to anyone in the classroom.
Textbook Reading List:
Weekly Notices:
Week 4:
January 29 (lecture note):
(5) The followings are the C/C++ source code files (for VC 2015) everyone can use for Project #1:
- the server process
- the client process
Compile: the above cpp source code files can be compiled using the same method for the web server (demonstrated in the classroom).
How to run server: after you successfully compile the source code file, Go to "Debug" and "Start Without Debugging" (then your server starts)
How to run server: after you successfully compile the source code file, first copy "client.exe" in "Debug" directory in your project directory to somehere easy to access (e.g., C:\"
Then, type "client 1 146.163.150.56 1080" (you need to replace the IP address)
- a sample screen shot of the server and the client processes
(4) Here is the suggested internal organization of your web proxy.
(3) Here is the PPT for more about technical details in socket connections.
(2) Here is the PPT for socket programming fundamentals.
(1) Here are the list of the possible quiz questions for Quiz #3
(MS Word version).
Week 3:
Week 2:
January 17 (lecture note):
(4) Quiz #2 covers #1 - #9 and #11 - #13.
(3) Here are the PPT slides for the concept of packet encapsulation.
(2) Here are the PPT slides for OSI (Open Systems Interconnection) seven-layer reference model.
(1) Here are the exercise questions on January 11th
(MS Word version).
Week 1:
January 10 (lecture note):
(1) Quiz #2 has been postponed to 1/22 (Monday).
January 8 (lecture note):
(5) Here are the list of the possible quiz questions for Quiz #2
(MS Word version).
(4) Here are the list of the possible quiz questions for Quiz #1
(MS Word version).
(3) Here are the PPT slides for switching networks.
(2) Here are the PPT slides for network protocols.
(1) Here are the PPT slides for the course introduction.
Last updated at 12:40 p.m., January 29, 2024.