Presentation is loading. Please wait.

Presentation is loading. Please wait.

© City University London, Dept. of Computing Distributed Systems / Revision - 1 Distributed Systems - Revision - Christos Kloukinas Dept. of Computing.

Similar presentations


Presentation on theme: "© City University London, Dept. of Computing Distributed Systems / Revision - 1 Distributed Systems - Revision - Christos Kloukinas Dept. of Computing."— Presentation transcript:

1 © City University London, Dept. of Computing Distributed Systems / Revision - 1 Distributed Systems - Revision - Christos Kloukinas Dept. of Computing City University London

2 © City University London, Dept. of Computing Distributed Systems / Revision - 2 How To  First get the past exam(s), to get a better idea of what the exam will be like.  Fast revision: For each session, read: »Its introduction; »Its summary; and »Its summary that is at the beginning of the next session!  Then read each session and try to come up with questions for them of your own.  Answer these questions & those in the past exam(s)  Feel free to collaborate on this – use Moodle. »I will be correcting any wrong answers in Moodle (but not providing correct answers to begin with) »Won’t post for a few days before the exam – don’t leave it for too late!

3 © City University London, Dept. of Computing Distributed Systems / Revision - 3 Session 1 – Motivation 1.What is a Distributed System 2.Why bother with them? Non-Functional Reqs 3.Examples of Distributed Systems 4.Common Characteristics 5.Summary »What is a distributed system and how does it compare to a centralised system? »What are the characteristics of distributed systems? »What are the different dimensions of transparency? »How do they depend on each other?

4 © City University London, Dept. of Computing Distributed Systems / Revision - 4 Session 2 – Distributed SW Eng.  Distributed Systems consist of multiple components.  Components are heterogeneous.  Components still have to be interoperable.  There has to be a common model for components, which expresses »component states, »component services, and »interaction of components with other components.

5 © City University London, Dept. of Computing Distributed Systems / Revision - 5 Session 3 – Communication in DS  What communication primitives do distributed systems use? (OSI stack)  How are differences between application and communication layer resolved? (XDR/ASN)  What quality of service do the client/server protocols achieve? (M/LO/MO/EO)  What quality of services are involved in group communication? (Best Eff./K-Rel/Tot. Ord./Atomic)  The CORBA event management. (Push vs Pull)

6 © City University London, Dept. of Computing Distributed Systems / Revision - 6 Session 4 – RMI  Motivation and Introduction to Java RMI  Conceptual Framework  RMI Details  Example Implementation  Summary & Critique of RMI

7 © City University London, Dept. of Computing Distributed Systems / Revision - 7 Session 5 – CORBA  Introduction  Object Management Architecture  CORBA Communication  Implementation, “Hello World” Example  RMI vs CORBA Comparison

8 © City University London, Dept. of Computing Distributed Systems / Revision - 8 Session 6 – Programming in CORBA 1.Poly-lingual applications 2.Standardisation of bindings 3.What bindings need to address 4.An example: IDL/Java  How does each IDL construct map to Java? 5.Object LifeCycle

9 © City University London, Dept. of Computing Distributed Systems / Revision - 9 Session 7 – Naming & Trading 1 Location Transparency: A reminder 2 Naming 3 Trading  Location Transparency requires other forms of identification than physical addresses.  Naming services provide facilities to give external names to components.  Trading services match service types requested by clients to servers that can satisfy them.

10 © City University London, Dept. of Computing Distributed Systems / Revision - 10 Session 8 – Concurrency  Lost updates and inconsistent analysis.  Pessimistic vs. optimistic concurrency control »Pessimistic control: –higher overhead for locking. +works efficiently in cases where conflicts are likely »Optimistic control: +small overhead when conflicts are unlikely. –distributed computation of conflict sets expensive. –requires global clock. »Can you compute validation sets and conflicts?  CORBA uses pessimistic two-phase locking.

11 © City University London, Dept. of Computing Distributed Systems / Revision - 11 Session 9 – Transactions  Transaction concepts: »ACID – Can’t do without it… »Transaction commands (begin, (vote), commit, abort) »Roles of distributed components in transactions  Two-phase commit »phase one: voting »phase two: completion  CORBA Transaction Service »implements two-phase commit »needs resources that are transaction aware.

12 © City University London, Dept. of Computing Distributed Systems / Revision - 12 Session 10 – Security  Threats, Methods of Attack, Infiltration  Cryptography: »Symmetric (Secret) Keys (e.g., DES, AES) »Asymmetric (Public-Private) Keys (e.g., RSA)  Authentication: Needham/Schroeder Protocol  Systems: »Kerberos, CORBA


Download ppt "© City University London, Dept. of Computing Distributed Systems / Revision - 1 Distributed Systems - Revision - Christos Kloukinas Dept. of Computing."

Similar presentations


Ads by Google