Newsgroups: comp.parallel,comp.realtime
From: barnhill@Hudson.Stanford.EDU (Joleen Barnhill)
Subject: Stanford Short Course on Distributed Computing
Organization: Stanford University
Date: Thu, 29 Jun 1995 20:57:37 GMT
Message-ID: <3sv441$cfk@nntp.Stanford.EDU>

The Western Institute of Computer Science announces a week-long course on:

	Distributed Computing:  Concepts and Systems
	Dates: July 31-Aug. 4, 1995

Instructor: Dr. Susan Owicki
Location: Stanford University
Cost: $1440(early) / $1575 (late)
Contact: barnhill@hudson.stanford.edu

Distributed computing systems are frequently used to provide resource sharing, flexible access to computing power, high availability and improved cost performance.  Recent developments in wireless communication and multi-media systems have expanded the range of applications of distributed computing and introduced new technical problems.  This course will cover essential techniques and recent developments in the field of distributed computing.

The course presents the fundamental concepts and algorithms underlying distributed systems and illustrates them with guest lecturers by developers of commercial and research systems.  Topics to be covered include:
	% techniques for naming, distributed synchronization, and maintaining global state information;
	% networks and protocols, including wireless communication;
	% inter-processor communication techniques such as messages and remote procedure call;
	% object-oriented programming in a distributed environment;
	% techniques for making systems highly available, including state machine and master/slave replication;
	% distributed file systems;
	% distributed data and transaction management;
	% authentication, protection and security; and
	% system management

Guest speakers will include Greg Minshall of Ipsilon Networks, Inc., Jim Gray of UC Berkeley,  Jim White and Chris Helgeson of General Magic, and Michael L. Powell of Sun Microsystems.

Text:   Lecture notes and reprints of outstanding papers will comprise the written material for the course.

For Whom/Prerequisites:  Software developers or managers who want to learn about the design and implementation of distributed systems.   A degree in Computer Science or four years of industrial experience should provide sufficient background to grasp most of the material.

Instructor:

DR. SUSAN OWICKI is an independent consultant currently involved in performance analysis of interactive television networks.  She has been a researcher at Digital Equipment Corporation's Systems Research Center, where she participated in the design of the Autonet 2 network, and an Associate Professor (currently Consulting Professor) of Electrical Engineering at Stanford.  Her areas of expertise include distributed systems, parallel programming, networks, and performance analysis.  She is a Fellow of the As




sociation for Computing Machinery.


Course Outline

1. Introduction to distributed systems
   - What makes a system distributed?
   - Distributed vs. centralized systems
   - Example: interactive TV 
   - Major models of distributed computing: client/server, distributed
     virtual memory, message passing, causal broadcasts

2. Communications
   - Networks and protocols
   - Mobile computing and wireless communication
   - Messages and remote procedure call

3. Naming in distributed systems
   - Defining a global hierarchical name space
   - Name service functionality and implementation

4. Distributed algorithms
   - Reaching agreement in the presence of failures
   - Distributed synchronization
   - Taking a snapshot of a consistent global state

5. Fault-tolerance
   - Failure models: fail-stop processors, Byzantine failures
   - Replication for high availability
      + Active replication (cooperating replicas)
      + Primary/backup replication (master coordinates slave replicas)

6. Distributed data & transaction management (See Guest Lecture 2.)

7. Distributed File Systems
   - Common issues: sharing, availability, scalability, naming
   - Sample systems: NFS, AFS, Coda (support for disconnected clients)
   
8. Distributed Object-Oriented Programming (See Guest Lecture 3)

9. Security 
   - Encryption to provide secure communication channels 
   - Authentication to establish the identity of communicating principals  
   - Access control to restrict access to authorized principals

10. System management
   - Problems of managing distributed systems
   - Strategies and tools

11. Parallel computing with distributed systems
   - Using a network of workstations as a supercomputer

12. Sample Systems (See Guest Lectures 1 and 4)


Guest Lectures

1. The NetWare Operating System
Greg Minshall, Ipsilon Networks, Inc.

Novell's Netware is one of the most widely used network operating systems. It has been designed as a "server" operating system to deal with large numbers of "short" transactions coming from large numbers of clients (up to1,000).  The talk will focus on the kernel of the operating system.  Time permitting, it will include other components: the file system, the networking technologies and interfaces, and the distributed naming system, which resembles X.500.


2. The Use of Transaction Processing Techniques to Build Distributed Systems, Jim Gray, UC Berkeley

Transactions provide a simple model to mask failures in computer systems. This talk first reviews the basic concepts and techniques of fault tolerant systems.  It then shows how the concepts of commit, undo-redo, logging and replication can be used to build reliable file systems, database systems, or object-class libraries.

3. Object-Oriented Techniques for Structuring Distributed Systems 
Michael L. Powell, Sun Microsystems

Objects provide convenient programming models for an open network environment, supporting uniform access to services, transparent distribution, and first-class system extensibility.  Strong interfaces and run-time type information make the system self describing, aiding navigation and dynamic configuration.  The Spring system will be used to show how these techniques can be applied without sacrificing performance or security.

4. Telescript Technology -- The Foundation for the Electronic Marketplace, Chris Helgeson, Doug Steedman, and Jim White, General Magic

Today's networks place an insurmountable barrier in the way of third-party development of communicating applications.  Such applications need to distribute themselves among users' computers and shared servers, but cannot do so for reasons of logistics, portability, and safety.  General Magic has developed a software technology that removes this barrier. Conceived for the personal intelligent communicator, Telescript technology enables a new breed
of networks that are open platforms for software developers.

Telescript technology make possible an electronic marketplace within which mobile software agents representing the providers and consumers of arbitrary goods and services can find and interact with each other.  At present Telescript technology appears in Sony's MagicLink personal intelligent communicator, Motorola's Envoy wireless communicator, and AT&T's PersonaLink Service.  The talk will describe the technology, how it arose, and where it may lead. 
_____________________________________________________________Registration Form 
Distributed Computing:  Concepts and Systems
July 31-Aug. 4, 1995

Registration on or before July 17
[  ] Distributed Computing:  Concepts and Systems          $1,440
Registration after July 17
[  ] Distributed Computing:  Concepts and Systems         $1,575

Name____________________________________ 

Title___________________________________

Company_________________________________

Address_________________________________

________________________________________

City/State______________________________

Zip___________________

Country_________________

Work Phone (________)___________________

Home Phone (________)___________________

Electronic Mail address __________________________

 on network _____________________


Total amount enclosed: $___________

Method of payment
[  ] Check enclosed (payable to WICS)

[  ] Visa/Mastercard #________________________________ 
card exp. date__________

cardholder signature___________________________________________________

[  ] Bill my company. Purchase Order #__________________________
        Write billing address below.

Return registration form with payment to:
Western Institute of Computer Science
P.O. Box 1238
Magalia, CA 95954-1238


