CPS 472: Computer Networking
Winter Semester 2003         3 credits
Meets: T,Th 12:00pm-1:15pm
214 Miriam Hall

Dr. Jennifer Seitzer

OFFICE HOURS WINTER 2003:
Monday:  1:30pm – 3:30pm

Tuesday 10:30 - 11:30am, 3pm-4:00pm

Thursday:  10:30am - 11:30am, 3pm-4:00pm

Friday 11:30am - 1:30pm, or by appointment


 

Syllabus

Syllabus Addendum

 

Description and Motivation


Our study of computer networking will center on the Internet.  We will study the underlying hardware and software, the services it offers, and the applications it runs. Some believe that an "internet" is a nominalization; it is an entity that exists by name only.  Universal service, the prime goal of an internetwork, exists by deftly combining software and hardware into a virtual network system, where the communication system is an abstraction. The Internet is characterized by its ability to provide universal end-to-end service worldwide.


In this course, we study what is required to make the illusion of an internetwork a reality. We review the functionality of routers, the TCP/IP reference model and its protocols.   Interestingly, we will study the TCP/IP model from the top down.  We will start by studying the application level.  This is the level of current growth in networking.  Many recent innovations such as video and audio streaming take place at the application level.  We will study the underlying paradigm of client-server interaction, and how transport level protocols realize this. We will learn how to code clients and servers as well as spend some time looking at E-mail, FTP, and World Wide Web clients and servers. We will perform socket programming in both C++ and Java, and then discuss some of the underlying activities at the network and data link levels.  We will culminate our pursuits by exploring some advanced topics of networking including network simulation, multimedia networking, network security, and network management.


Objectives:

 

·         To acquire a general knowledge of networking parlance.  This includes the plethora of of terms and acronyms that permeate the field.

·         To have the following programming skills:

·         to program  clients and  (iterative and concurrent) servers that work together in C++

·         to write a web server and client in Java

·         to simulate packet reassembly from fragments and fragments of fragments

·         to  successfully use and program the networking simulation  tool OPNET

·         To understand the intricacies and complexity of translating location identifiers including DNS names, IP addresses, and physical addresses

·         To compare and contrast the underlying transmission techniques of multimedia networking with data networking

Text Book

Computer Networking A Top-Down Approach Featuring the Internet;  2nd Edition
By, James F. Kurose and Keith W. Ross  ISBN: 0-201-97699-4

Lectures

·        Lecture 1:  Introduction 

·        Lecture 2:  Client Server Paradigm

·        Lecture 3:  Client Server Programming

·         Generic Client

·         Generic Server

·        Lecture 4:  Hyper Text Transfer Protocol

·        Lecture 5:  Persistent HTTP

·        Lecture 6:  FTP, Email, and DNS

·        Lecture 7:  Programming with Sockets in Java

·        Lecture 8:  The Transport Protocol;  Reliable Transmission

·        Lecture 9: TCP;  Congestion Control:  Go Back N and Sliding Window

·        Lecture 10: More TCP

·        Lecture 11: Review for Midterm;  The Third Layer -- Internetworking in IP and in ATM

·        Class 12  (Tuesday, February 18, 2003) :  Midterm 1

·        Lecture 13:  Hierarchical Routing

·        Lecture 14:  Routing Issues at UD – Mike Skelton, Guest Speaker

·        Class 15:  Hands on Networking

·        Lecture 16:   Multicast Routing

·        Lecture 17:  Introduction to Network Performance Evaluation

·        Lecture 18:  Using OPNET

·        Lecture 19:  Introduction to Multimedia Networking

·        SPRING BREAK  (No class on 3/18/2032 and 3/20/2003)

·        Lecture 20:  Multimedia Protocols: Real Time Protocol (RTP) and Reserving Resources on the Internet (RSVP);  

·        Lecture 21:  Scheduling Policies and Differentiated Services;  Review for Midterm

·        Class 22:  Midterm 2

·        Lecture 23:  Computer Security- Cryptography

·        Lecture 24:  Computer Security- Authentication

·        Lecture 25:  Computer Security- Access Control :  Firewalls

·        Lecture 26:  Network Management

·        Lecture 27:  Graduate Student Presentations

·        Lecture 29:  Graduate Student Presentations;  Review for (Cumulative) Final

·        Class 30:  Final Examination [Monday, April 28, 2003;  12-1:15pm  MH 214]; 
Review Sheet for Final

 

Programming and Homework Assignments

1.      IP Decoder                       
Test Data for IP Decoder
Helpful Hints on  IP Decoder

2.      Beginning Clients and Servers

3.       Programming Web Client and Server --
Implementing a Multithreaded Web Server in Java -- Textbook Page 180

1.      Use Guidelines presented at:  http://www.awl.com/kurose-ross
Choose Protected Student Resources, Programming Assignments, Assignment 1

2.      Part A:  Due Date:  Thursday, February 13, 2003
Part B:  Due Date:  Tuesday, March 4, 2003

3.      Code Demonstration to be performed Tuesday, March 4, 2003

4.      Use the submission requirements indicated for Projects 1 and 2 above

4.      Problem Set on Internetwork Layer – Chapter 4, Page 409 #3, 4a, 4g, 10, 12

5.      .  Using OPNET Network Modeler;  Assigned Wednesday, March 26, 2003;   Due Thursday, April 24, 2003
 

Graduate Students

·        Graduate Project Description

Upcoming Deadlines

·         4/28/2003   Final Examination  (12noon-1:50pm)

                                                                                                                                                                    

 Helpful Materials