Syllabus for CS 537, Client-Server Interfaces

Spring 2003


The chapter readings are from Comer and Stevens.

Week 1 - Introduction to Client-Sever Computing (21 & 23 January)

Readings
Chapters 1 & 2

Class notes
Distributed computing introduction
Client-server distributed computing

Week 2 - The Socket API (28 & 30 January)

Readings
Chapters 4 & 5

One-minute reviews
28 & 30 January

Class notes
The IP protocol set
The Sockets API

Week 3 - Client and Server Algorithms (4 & 6 February)

Readings
Chapters 6 & 8

Class notes
Client architectures
Server architectures

One-minute reviews
4 & 6 February

Project
Project 1 available (last modified on 12 March 2003) on Tuesday, 4 February, due on Tuesday, 11 March at 2:00 p.m.

Week 4 - Iterative Servers (11 & 13 February)

Readings
Chapters 9 & 10

Class notes
Iterative servers

One-minute reviews
11 & 13 February

Week 5 - Concurrency Issues (18 & 20 February)

Readings
Chapters 16 & 17

Class notes
Concurrency and Server Architectures
Concurrency and Client Architectures
Concurrency and Server Performance

Week 6 - Process-Based Concurrency (25 & 27 February)

Readings
Chapters 3 & 11

Class notes
Concurrency
Process concurrency

Week 7 - Thread-Based Concurrency (4 & 6 March)

Readings
Chapters 12 & 13

Class notes
Thread based concurrency
Single-threaded concurrency
Process vs threads performance

Test 1 - Tuesday, 4 March
The answers
The grades

Project
Project 2 available on Tuesday, 11 March, due on Tuesday, 8 April at 2:00 p.m.

Week 8 - Spring Recess (10-16 March)

Project
Project 1 due on Tuesday, 11 March at 2:00 p.m.
The grades

Week 9 - Remote-Procedure Calls (18 & 20 February)

Readings
Chapter 21 & 22

Class notes
Introduction to remote procedure calls
Implementing RPC

One-minute reviews
18 & 20 March

Week 10 - Data Representations and Program Generation (25 & 27 March)

Readings
Chapters 20 & 23

Class notes
RPC case studies

One-minute reviews
25 & 27 March

Week 11 - HTTP and CGI (1 & 3 April)

Drop Day - Monday, 31 March

Readings
Hypertext Transfer Protocol - HTTP/1.0 (rfc 1945)
The Common Gateway Interface (CGI)

Class notes
The Hypertext Transfer Protocol
Fun with HTTP
The Common Gateway Interface
Fun with CGI

One-minute reviews
1 & 3 April
15 & 17 April

Project
Project 2 due on Tuesday, 8 April at 2:00 p.m.
The grades

Project 3 available (last modified on 28 April 2003) on Tuesday, 8 April, due on Tuesday, 6 May at 2:00 p.m.

Test 2 - Tuesday, 1 April
The answers
The grades

Week 12 - Tunneling and Gateways (8 & 10 April)

Readings
Chapters 18 & 19

Class notes
Gateways
Tunneling

One-minute reviews
8 & 10 April

Week 13 - The Network File System (15 & 17 April)

Readings
Chapter 24

Class notes
Distributed file systems
Peer-to-peer systems

One-minute reviews
15 & 17 April

Week 14 - Multi-Protocol and Multi-Service Servers (22 & 24 April)

Readings
Chapters 14 & 15

Class notes
Multi-Protocol Servers
Multi-Service Servers

Week 15 - High-Performance Server Architectures (29 April & 1 May)

Class notes
Jini

Readings
The SEDA event-driven architecture.
The Flash web server architecture.

Project
Project 3 due on Tuesday, 6 May at 2:00 p.m.

Test 3 - Thursday, 8 May, 7:45-9:45 p.m. in Edison 120
The answers
The grades


This page last modified on 13 May 2003.