CSCI.4220/CSCI.6964 Network Programming -- Fall 2002

Meeting Place:  Darrin 324
Meeting Hours:  Mon, Thu 12:00pm-1:50pm
Home pagehttp://www.cs.rpi.edu/courses/fall02/netprog
WebCT page:  http://webct.rpi.edu/public/CSCI_4220_01_0209/index.html 

Instructor:  Carlos Varela
Office/Phone:  109 Amos Eaton, x6912
Office Hours:  Mon, Thu 2-3pm

Teaching Assistants:  Kaoutar El Maghraoui, Robin Toll
Office/Phone: 206 Amos Eaton, x8275
Office Hours

Kaoutar: Wed, Thu 10am-12noon

Robin: Tue, Fri 12-2 pm

 For course questions, please email: netprog@cs.rpi.edu


Course Objectives

An overview of the principles of computer networks, including a detailed look at the OSI reference model and an overview of various popular network protocol suites. The course will focus on network programming using Java, and distributed computing using remote method invocation technologies, peer-to-peer protocols, and mobile code.  Furthermore, we will critically present selected papers on network programming research topics, including coordination, mobility, ad-hoc networks, multimedia, security, and quality of service.

Prerequisites: CSCI-4210.  Familiarity with at least one object-oriented programming language.


Course Contents


Textbook

Java Network Programming and Distributed Computing.  Reilly and Reilly.  Addison-Wesley, 2002.


Tentative Course Syllabus

Date

Topics

Notes

Chapters

Grade

08/26

Introduction to Networking Theory 

·        Network Terminology (.PPT) (.PDF) (.HTML) (.HTML.ZIP)

·        OSI Reference Model (.PPT) (.PDF) (.HTML) (.HTML.ZIP)  

§1, 3

 

08/29

09/05

JAVA Overview -- Programming Assignment 0, Due 09/10

·        Java Overview Part 1(.PPT) (.PDF)  (.HTML) (.HTML.ZIP)

·        Java Overview Part 2 (.PPT) (.PDF) (.HTML) (.HTML.ZIP)

·        (Sample Code)

§2 ,4, 7

 

09/09

09/12

UDP

·        IP (.PPT) (.PDF) (.HTML) (.HTML.ZIP)

·        UDP/IP in Java (.PPT) (.PDF) (.HTML) (.HTML.ZIP)

·        Sample Code

§5

 

09/16

TCP-- Programming Assignment 1, Due 09/17

·        TCP/IP Part 1(.PPT) (.PDF) (.HTML) (.HTML.ZIP)

·        TCP/IP Part 2 (.PPT) (.PDF) (.HTML) (.HTML.ZIP)

·        (Sample Code)

§6, 8

5% 

09/19

09/23

FTP, TELNET, DNS -- Programming Assignment 2, Due 09/24

·       Protocols (.PPT)  (.PDF) (.HTML) (.HTML.ZIP)

·       (Sample Code)

 

5%

09/26

HTTP -- Programming Assignment 3, Due 10/01

·       Web Programming (.PPT) (.PDF) (.HTML) (.HTML.ZIP)

·     Web Sessions (.PPT) (.PDF) (.HTML) (.HTML.ZIP) 

·       A simple HTTP server

·       HTML Form examples

§9

5%

09/30

Servlets

·     Servlets (.PPT) (.PDF) (.HTML) (.HTML.ZIP)

·       (Sample Code)

§10

 

10/03

RMI -- Programming Assignment 4, Due 10/08

·    RMI (.PPT) (.PDF) (.HTML) (.HTML.ZIP)

·   (Sample Code)

·    RMI Part II (.PPT) (.PDF) (.HTML) (.HTML.ZIP)

·    (Sample Code)

§11

 

10%

 

10/07

10/10

CORBA -- Programming Assignment 5, Due 10/15 ·   CORBA (.PPT) (.PDF) (.HTML) (.HTML.ZIP)

· (Sample Code)

·  CORBA Part II (.PPT) (.PDF) (.HTML) (.HTML.ZIP)

 ·  Overview of OMG CORBA (.PDF)

§12

 

10%

 

10/14

10/17

Web Services-- Programming Assignment 6, Due 10/22 ·  Web Services (.PPT) (.PDF) (.HTML) (.HTML.ZIP)

· (Sample Code) (Tutorial)

  10%

10/21

SALSA/WWC-- Programming Assignment 7, Due 10/29

· SALSA (.PPT) (.PDF) (.HTML)  (.HTML.ZIP)

· SALSA slides (.PDF) (.PS) (Sample Code)

· Code Samples

 

 

10%

10/24

10/28

Peer-to-Peer Computing

· Peer to Peer (.PPT) (.PDF) (.HTML) (.HTML.ZIP)

· Gnutella (.PPT) (.PDF) (.HTML) (.HTML.ZIP) 

· JXTA (Home Page) (.PDF)

 

 

10/31

 

Research Topics  --  Selected Paper Critiques and Presentations by Student Groups

 

 

 

 

15%

 

11/04 Peer to Peer Computing

11/07

No Class

11/11

Wireless and Ad Hoc Networking

11/14

Mobility

11/18

Security

11/21

Multimedia and Active Networks

11/25

Grid Computing
Final Project Presentations

 

 

20%

12/02

 

12/05

 

Class Participation

 

 

10%


Important Deadlines


Software Links, Papers, and Tutorials


Research Papers

Student groups will critique and present selected papers from recent journal and conference publications, including but not limited to:

You may also search papers in CiteSeer, but make sure the paper is approved by the instructor.  Follow these paper critique and presentation guidelines.

Schedule for Paper Presentations

Schedule for Final Project Presentations


Academic Integrity

The Rensselaer Handbook of Student Rights and Responsibilities defines several types of academic dishonesty, all of which are applicable to this class.  Students found in violation of academic dishonesty policies may receive a failing grade for this course.

Please contact the instructor if there is any question about academic (dis)honesty.


Last Updated -- November 2nd, 2002.