CSC 456: Distributed Systems

Course Objective:

Understanding the main characteristics of distributed systems and the various design choices required for building a distributed system such as: the architectural models varying from client/server to peer-to-peer, grid-computing; the communication models varying from client-pull (RPC/RMI, Message Queuing, …) to server-push models (publish-subscribe, …); the synchronization techniques based on system clock, on logical clock(timestamp) and on token ring; the communication standards such as RPC, RMI, Corba and SOAP.

Grading Policy:

Midterm 1      20%
Midterm 2      20%
Final Exam    40%
Project           20%

Tentative Schedule:

Week  Topic                                      Course Materials Assignments
Week 1-2
  • Definition of a distribute system (DS)
  • Main charachterisitics of a DS.
  • Main properties of a DS
  • Quality of DS
     

       Introduction

 

 Tutorial
Week 3-4
  • Architectural models
  • Generations of archterctural models
  • Main architectural models
  • Communication models
  • Main communication models
  • Coupling/Decoupling dimensions
        Chapter 2: Models 
        Architectural Models
Tutorial
Week 5-6
  • Architecture of RPC
  • Passing parameter with RPC
  • rpcgen
  • Client/Server with RPC
        Remote Procedure Call

        RPC

        RPC demo

Tutorial
Week 7      Common Object Request Broker Architecture       CORBA 
      CORBA demo
Tutorial
                                                     Mid Term 1 Exam: Wednesday April 9, 2014 at 4pm  (Past Exams)
Week 9-11
  • Remote Meth
  • od Invocation (RMI)
  • Remote and local objects
  • Passing parameter in RMI
  • Client/Server with RMI
  • Serialization
  • Discovering available servers
  • Distributed systems with RMI
Chapter 4: Remote Method Invocation: RMI Tutorial
Week 12-13
  • CPU clocks
  • CPU clock based Synchronization algorithms
  • Logical clock: definition and properties
  • Timestap based Synchronization techniques
Chapter 5: Synchronization  
                                                            Mid Term 2 Exam: Sunday May 11, 2014 at 4pm (past exams)
Week 14,15
  •  Parallel Programming
  • Project Presentation
   
Final Exam
 

Project:

Textbook:

  • Distributed Systems: Concepts and Design by G. Coulouris, J. Dollimore and T. Kindberg. 5th Edition
ملف مرفق: 
المرفقالحجم
Office presentation icon chapter_1_slides.ppt516 كيلوبايت
PDF icon chap1_introductiontods.pdf586.71 كيلوبايت
PDF icon chap2-architecturalmodels.pdf904.43 كيلوبايت
Office presentation icon chapter_2_slides.ppt930.5 كيلوبايت
PDF icon tutorial_1_chapter_1.pdf228.9 كيلوبايت
PDF icon tutorial_2_chapter_2.pdf404.86 كيلوبايت
Office presentation icon rpc-pan.ppt118.5 كيلوبايت
PDF icon rpc.pdf621.32 كيلوبايت
PDF icon corba.pdf304.1 كيلوبايت
PDF icon project.pdf67.57 كيلوبايت
ملف pastmidterm1.docx16.61 كيلوبايت
PDF icon rmi.pdf129.51 كيلوبايت
PDF icon synchronization.pdf219.93 كيلوبايت
ملف tutorialrmi.docx13.34 كيلوبايت
ملف mt2spring2011.docx20.66 كيلوبايت
ملحقات المادة الدراسية