CSE515 Distributed Computing Systems


Department of Computer Science & Engineering, OGI School of Science & Engineering OHSU, Oregon Health & Science University

 



Course Schedule

Section 1: Introduction and Foundational Concepts Reading Homework
1:

Introduction (Slides 1up, 4up)
- course overview
- definitions
- different types of distributed systems
. tightly vs. loosely coupled systems
. centralized vs. decentralized control
. sequential vs. concurrent processing
. various transparencies
. distribution for availability vs. performance
- intro. to formal notions
- naming, addressing, name servers
- basics of message passing and group communication

Veríssimo & Rodrigues pages 1-35 and 89-108 Homework #1 assigned
2: Time, Clocks & the Ordering of Events (Slides 1up, 4up)
- properties of clocks
- local vs. global clocks
- synchronism and TDMA
- ordering, FIFO, causal, total
- causal and total order algorithms
Veríssimo & Rodrigues pages 35-60.  
3:

Coordination, Synchronization and Consistency
- distributed mutual exclusion
- leader election
- consistent global states (snapshots)
- distributed consensus
- membership and view synchrony
- atomic broadcast
- replication, partitions etc
- sequential consistency, transaction

Veríssimo & Rodrigues pages 60-87  


Section 2: Models of Distributed Computing Reading Homework
4:

Client-Server & RPC (Slides 1up, 4up)
- RPC Architecture
- Exceptions
- Underlying proto cols
- IDL, Marshalling etc

Veríssimo & Rodrigues pages 104-115

Homework #2 assigned (RPC performance test)

5:

Group Models and Peer to Peer (Slides PowerPoint, PDF)
- groups for service replication/reliability
- groups for parallelism/performance
- client-server vs peer-to-peer
- multicast
- membership and view synchrony
- applications of message ordering
- atomic broadcast
- data and service replication with or without partitions

Veríssimo & Rodrigues pages 115-122  
6:

Distributed Shared Memory (Slides)
- DSM architectures
- consistency models and relation to caching
- release consistency
- comparison with message passing and RPC

Veríssimo & Rodrigues pages 123-129  
7:

Message busses (Slides)
- message bus architecture
- publish-subscribe system
- content-based addressing
- case study: Linda tuple space
- compare and contrast with message passing and shared memory

Veríssimo & Rodrigues pages 129-132 Homework #3 assigned (Implement distribution middleware)
8:

Distributed Object Systems (Slides)

Emerald paper, Hermes paper

 


Section 3: Fault Tolerant Distributed Systems Reading Homework
9:

Intro to Fault Tolerant Systems (Slides 1up, 4up)
- dependability
- faults vs errors vs failures
- space, time and value redundancy
- fault tolerant architectures & networks
- failure detection algorithms

Veríssimo & Rodrigues pages 169-199  
10: Continue with Paradigms for Fault Tolerance (Slides 1up, 4up)
- partitioning
- FT consensus
- FT membership
- FT communication, causal and total ordering
- byzantine failures
- replication management with and without partitions
- voting schemes
- exact and inexact agrement
- recovery
. stable storage
. checkpointing
. logging
. two phase commit protocol
. state transfer
Veríssimo & Rodrigues pages 200–234 Homework #4 assigned
11:

Models of Distributed Fault-tolerant Computing.(Slides on 2PC and 3PC 1up 4up)
- Failure semantics
- Fault tolerance strategies
- Fault tolerance for RPC and RMS
- Fault tolerant event services
- Transactions
Case studies
- Tandem
- Stratus
- Isis
- Arjuna
- Delta-4
- Information Bus
- CICS
- Encina
- Clusters

Veríssimo & Rodrigues pages 235–270  


Section 5: Case Studies and Research Projects Reading Homework
12: Class Project Design Discussion The on-going online discussion

Read design submissions from other groups

Homework #5 assigned

13:

Name Servers (Slides)
- DNS
- Grapevine, Clearinghouse, GNS
- X.500 Directory Service

Veríssimo & Rodrigues pages 133-139 and Coulouris Ch 9

 
14:

Distributed File Systems (Slides)
- NFS
- AFS
- Coda

Veríssimo & Rodrigues pages 139-146.

 
15:

Distributed Systems Middleware (Slides)
- DCE
- CORBA

Veríssimo & Rodrigues pages 146-151.  
16:

World Wide Web (Slides)
- clients, servers, proxies
- protocols
- naming
- proxy caching and content distribution networks
- akami case study

Veríssimo & Rodrigues pages 151-154 and Akami paper  
17:

Media Streaming Architectures
- Qstream and PPS (Slides)

   
18:

Infopipes (Slides 1up, 4up)

   
19:

Project Demonstrations

  Final exam (text, pdf) assigned