CS 365: Computer Networking
Course Description:
This course provides an overview of computer networking concepts. Course
topics include (but are not limited to): protocol layer stack, circuit
switching vs. packet switching, connectionless vs. connection-oriented
services, transmission media, routing, Ethernet, LAN topologies. Optionally,
the course may include hands-on projects. For example, students may be asked
to install and configure Linux network applications or write networking
programs. Prerequisite: CS 208 and CS 219. 3:0:3.
Learning Outcomes:
Upon completion of this course the student should be able to:
- Explain and apply basic computer networking concepts including (but not limited to):
-
Basic computer networking concepts including Circuit-switching and
Packet-switching, Residential access networks (point-to-point, dialup
modem, ISDN, ADSL, cable modem), Physical media (twisted pair, coaxial
cable, fiber optic cable), Protocol layer stack, Client-Server paradigm,
and Packet-switched network delay calculation
- Application-layer applications including Telnet, FTP, DNS, HTTP, SMTP
-
Other state of art topics including Wireless and Mobile Networks, and
Security in Computer Network.
- Explain and apply these transport-layer concepts:
- UDP protocol
- TCP protocol
- Reliable data transfer
- Flow control
- Congestion control
- Explain and apply these network-layer concepts:
- IP protocol
- IPv4 addressing.
- Routing
- Explain and apply these link-layer and local area network concepts:
- Network topologies - bus, star, ring
- Error detection and correction
- ARP
- Ethernet
- Token ring
- Hubs, switches, and bridges
Assessment Measures:
| Assessment Tool |
Linkage to Learning Outcome #: |
| |
|
| Homework Assignments: |
|
| Assign a sufficient amount of homework such that all of the above objectives are covered. |
All |
|
For each homework assignment, include short answer questions that
require the student to apply the above objectives.
|
1-5 |
|
For certain homework assignments, the student will be asked to solve a problem(s)
by applying an appropriate networking algorithm (congestion control algorithm,
link state routing algorithm, error detection algorithm, etc.).
|
3-5 |
| Optional Projects (The teacher may include these projects at his/her discretion): |
|
|
Install and configure Linux network applications such as telnet, finger, FTP, DNS, Apache web server, etc.
The student must demonstrate proper functionality in his/her installed application.
|
2, 6 |
|
Write simple client and server components using Java's socket classes. The student must demonstrate proper
functionality in his/her program.
|
2, 6 |
|
Write a program that implements a transport-layer concept such as reliable data transfer, flow control,
or congestion control. The student must demonstrate proper functionality in his/her program. |
3, 6 |
|
Write a program that implements a routing algorithm. The student must demonstrate proper functionality
in his/her program.
|
4, 6 |
|
Design a LAN or WAN from a given high-level business requirements specification. Use a simple drawing
tool, such as Visio or Word, to show the design details - servers, hosts, gateways, printers, IP addresses, etc.
|
6 |
| |
|
| Exams: |
|
Include one or more of: short answer, multiple choice, mathematical calculation. |
All |
| Given a problem description, apply an appropriate networking algorithm. |
3-5 |
Textbooks
To view the approved textbook list, click
here.
Additional Information:
If the teacher would like to teach Linux networking concepts, the teacher should contact
Park's IT department for details on how to access Park's Linux server over the Internet.
^ Back to the Top
---------------------------------
University Resources
This page was last modified on Cannot perform flastmod(): Win32 Error Code = 2
|