ECE 423 Computer Networks Fall 2006
Instructor: Dr. Xidong Deng
Office Hours: ECC-257, TWR 10:00am-2:00pm or by appointment
Email: xdeng@stcloudstate.edu
Phone: 308-5183
Course website: http://web.stcloudstate.edu/xdeng/ece423
Lectures: TR 2:00-3:30pm, ECC 126 Open Lab: ECC 222
Prerequisite: Programming Skills (C/C++), Basic Operating System, Computer Architecture, Statistics and Probability knowledge
Required Textbook: Computer Networking - A Top-Down Approach Featuring the Internet, third edition, James F. Kurose and Keith W. Ross
References and Resources:
- Unix Network Programming, by W. Richard Stevens,Prentice Hall, 1990, ISBN 0-13-949876-1.
- A collection of unix programming links (www.cs.buffalo.edu/~milun/unix.programming.html)
- www.google.com, search the following key words: Socket, TCP/IP, etc.
- www.isi.edu/nsnam, NS-2, the Network Simulator
- www.aw.com/kurose-ross, material provided by authors of the textbook
Description: Network architecture and protocols, fundamental of computer and communications network. The design of system software to support computer networks, layered protocol architecture. A programming project is required.
Objectives:
- Learn fundamentals of modern computer networks
- Gain hands-on experience with network software and hardware
Outcome: After the successful completion of this course, the students should, at a minimum, be able to
- Apply their knowledge of math, software and hardware to computer network engineering problems (department outcome a)
- Understand principal conceptual models of computer networks, packet switching, network protocols, and the value of a layered approach.
- Be able to apply mathematical and software principles to understand the design issues of popular application protocols such as HTTP, FTP, SMTP, and DNS,
- Be able to build client-server application using socket API.
- Be able to apply mathematical and software principles to understand the basic functionality of transport protocols, error detection and recovery, flow and congestion control, and get a grasp of the Transmission Control Protocol (TCP).
- Be able to apply mathematical and software principles to understand network routing algorithms and protocols, and be familiar with routing protocols used in operational networks, and get a grasp of the Internet Protocol (IP).
- Be able to apply mathematical and physical principles to understand link-layer protocol functionalities such as framing and media access control, be familiar with commonly used layer-2 protocols including Ethernet and IEEE 802.11.
- Demonstrate the proper use of the selected tool (department outcome b)
- Be familiar with the unix socket API library and be able to build operational client-server applications using it.
- Be able to use packet-sniffer software (Ethereal) to capture network traffic and identify various protocol components from the captured traffic.
- Be able to construct and configure a small local area network using selected networking and computing devices.
- Demonstrate the ability to design a network application protocol to meet certain system and time constraints, including: (department outcomes c and e)
- Message type and format
- Control and data flow
- User-friendliness
- Demonstrate the ability to design various components in an operational and efficient network transport protocol to achieve reliable data transfer: (department outcomes c and e)
- Demonstrate the ability to analyze a given network architecture, both qualitatively and quantitatively, including (department outcome d)
- Bandwidth/throughput.
- Latency/Response time.
- Scalability and Robustness
- Produce professional lab reports (department outcome f)
- Demonstrate full knowledge of the subject of the experiment
- Present work in a logical and easy to follow manner
Course Schedule:
Week |
Lecture |
1-2 |
Chapter 1: Introduction |
2-3 |
Chapter 2: Application Layer |
3-4 |
Chapter 2, Introduction to Socket Programming |
4-6 |
Chapter 3: Transport Layer |
6-7* |
Chapter 3: Introduction to Network Simulation Tools |
8-10 |
Chapter 4: Network Layer |
10-12 |
Chapter 5: Data link and Physical Layer |
13-14 |
Advanced Issues: Wireless, Security, Research Topics, etc. |
* Will also include one lecture for midterm review.
Lab: The lab projects provide opportunities to practice and learn what is taught in the classroom and gain hands-on experiences. More information about the lab assignments will be made available on the course website at web.stcloudstate.edu/xdeng/ece423/lab.html
Grading:
- Prereq. Check 5%
- Homework: 20%
- Lab Projects: 30%
- Midterm: 20%
- Final exam: 25%
Policies:
- Homeworks and labs are due in class on the date specified. They will be accepted after the due date until the start of the next class period with a 20% penalty. No submission will be accepted after this time (i.e., one class after the due date). Any one caught cheating will get an F.
- There will be one midterm and one final exam, both of them will be open-book and open-notes. The exams can only be made up if an excused absence is obtained from the instructor before the exam or accident. In case of a severe illness, a written note from the doctor must be handed over.
Please check the course website regularly for ANNONCEMENTS, GRADES, LECTURE NOTES, LAB ASSIGNMENTS and SOLUTIONS to homework and exam problems.

