ISE 437 - Distributed Information Systems
Semester 1 5771
Topics Reading Projects
Quizzes Grading
Lectures Policies
Time: Monday 9:00 - 12:00 in Caravan 514
Targil: Wednesday 8:00 - 10:00 in Room 202 in the Triguboff Sciences
Building
Instructor:
Michael
J.
May
e-mail: mjmay (AT) kinneret,ac,il
office hours: Wednesday 12:45-13:45 (and by
appointment)
The full detailed syllabus
for the course is available here.
Reminder: Sample final exam on Telem. Final Exam A on 30 Jan 2011.
Topics:
The course is a followup to previous courses on network communication
and system programming. The goal of this course is to introduce a
design and implementation study of \emph{distributed information
systems}, where data, computation, and resources are distributed across
a network. We will study several internet based applications
which illustrate good distributed systems design.
The topics for the course include some or all of the following:
- Distributed Computation
- Primitives for Distributed Computation
- Common Problems (and Solutions) for Distributed Systems
- Techniques and Algorithms
- Distributed Information Systems
- The Internet and Internet Applications as a Distributed
Information System
- The Internet Environment (TCP/IP)
- Existing Internet Applications
- Client-Server Applications
- Peer-to-Peer Applications
- Coding Internet Applications Using TCP and UDP
- Distributed Computing Using Java
The material for the course is taken from a variety of sources include
Tanenbaum, Kurose and Ross, Coulouris, et. al, Tanenbaum and Van Steen,
and research papers from the academic literature on the topic.
Reading
The following books contains useful course material, and much
of
the lecture content is derived from them (and other sources). Copies
of these books are on reserve in the Kinneret Library.
- Jean Dollimore George Coulouris and Tim Kindberg. Distributed
Systems: Concepts and Design. Addison
Wesley, 4th edition, June 2005.
- James F. Kurose and Keith W. Ross. Computer Networking: A
Top-Down Approach. Addison-Wesley,
4/E edition, 2008.
- Andrew S. Tanenbaum. Computer Networks.
Prentice-Hall, 4th
edition, 2003.
- Andrew S. Tanenbaum and Maarten Van Steen. Distributed
Systems: Principles and Paradigms. Prentice
Hall, 2nd edition, October 2006.
In addition, the following books, papers, and web sites provide
supplementary
material. Reading selections from these sources will be announced in
class.
- C.A.R. Hoare. Communicating
Sequential
Processes.
Prentice-Hall, electronic edition, 21 June 2004. [pdf]
- Sylvia Ratnasamy, et al. A
Scalable
Content-Adressable
Network. In SIGCOMM2001. [pdf]
- Ion Stoica, et al. Chord:
A
Scalable
Peer-to-peer
Lookup
Service
for
Internet
Applications.
In SIGCOMM2001 [pdf]
Assignments
Assignment 1: Client and
Server Communication. Due: 1
November 2010; Extended to 8 November
2010.
Sample key. גרסא בעברית
Assignment 2: POP and SMTP
client/servers. Due 21
December 2010.
Assignment 3: Student
Research. Due 11 January
2011.
Assignment 4: RMI in Java.
Due
15 January 2011.
Test. Logins. Server-Config.
Quizzes
There will be (a maximum of) four in class short quizzes at the
beginning of lectures during the course of
the semester. The quizzes will take place from 2:00-2:10pm.
Students may skip or drop the grade of one of the quizzes without
penalty. Students who miss a quiz due to Miluim duty will be allowed to
(additionally) drop the missed quiz.
Tentative Quiz Schedule
#
|
Date
|
Topic
|
Source
(TV)
|
1
|
25 Oct
|
Distributed architectures
and transparency
|
1-2.2
|
2
|
15
Nov
|
RPC
|
3.5
|
3
|
6 Dec
|
Naming
|
5
|
4
|
3
Jan
|
Consistency
|
7
|
Grading Criteria
- 4% Quizzes
- 16% Assignments
- 80% Final Exam
Lecture Slides and Notes
Schedule
|
Date
|
Topic
|
Notes
|
| 11Oct |
Intro to Distributed
Systems
|
[pdf][targil, networks]
|
18Oct
|
Distributed Systems Types
and Architectures |
[pdf][targil, inserts]
|
25 Oct
|
Processes and Threads
|
[pdf][targil]
|
1 Nov
|
Migration and Communication
|
[pdf][targil]
|
8 Nov
|
RPC and Communication 2
|
[pdf][targil]
|
15 Nov
|
Epidemic Algorithms, Naming
|
[pdf][targil]
|
22 Nov
|
Naming 2
|
[pdf][targil]
|
| 29 Nov |
Synchronization 1 |
[pdf][targil]
|
6 Dec
|
Vector Clocks, Mutual
Exclusion, Node Positioning |
[pdf][targil]
|
13 Dec
|
Synchronization Examples,
Elections |
[pdf][targil]
|
20 Dec
|
Consistency Models |
[pdf][targil]
|
| 27 Dec |
Replication Mechanisms and
Consistency Protocols, Web Services Intro
|
[pdf][targil]
|
3 Jan
|
XML and Web Services
|
[pdf][targil]
|
10 Jan
|
XML Security, Distributed
DBs |
[pdf]
|
30 Jan
|
Final Exam A from 9:00am -
12:00pm in Room ק18 |
|
9 Feb
|
Final Exam B from
8:30am-11:30am in Room TBA
|
|
Note
that the lecture schedule is likely to change during the
course of the semester as we choose to focus on different topics over
the course of the semester. Check back often for updates.
Academic Integrity
Since Kinneret College does not have a unified code of academic
integrity, this course will abide by the University of Pennsylvania's Code of Academic
Integrity. In particular, for individual projects and group
projects, the following guidelines should be followed:
- For individual projects, you must type in and edit
your own code, documentation, and any other materials submitted for
grading.
- Copying someone else's file is not allowed.
- Allowing someone else to copy a file of yours, either
explicitly or implicitly by leaving your code unprotected, is not
allowed.
- Editing each other's files is not allowed
- Regarding the ethics of what you may or may not
discuss with others:
- If there is any doubt about the use of external
sources or collabortation, please ask for clarification by the course
staff.
|