Presentation on Distributed Object-Based Systems

Slides:



Advertisements
Similar presentations
COM vs. CORBA.
Advertisements

Dr. Kalpakis CMSC 621, Advanced Operating Systems. Fall 2003 URL: Distributed System Architectures.
CORBA Architecture Nitin Prabhu. Outline CORBA Object Model CORBA Architecture Static Invocation Dynamic Invocation CORBA Communication Model.
Seminarium on Component-based Software Engineering Jan Willem Klinkenberg CORBA.
Computer Science Lecture 24, page 1 CS677: Distributed OS Today: More Case Studies DCOM Jini.
CS 501: Software Engineering Fall 2000 Lecture 16 System Architecture III Distributed Objects.
Distributed Service Architectures Yitao Duan 03/19/2002.
OCT 1 Master of Information System Management Organizational Communications and Distributed Object Technologies Lecture 5: Distributed Objects.
EEC-681/781 Distributed Computing Systems Lecture 3 Wenbing Zhao Department of Electrical and Computer Engineering Cleveland State University
Hands-On Microsoft Windows Server 2003 Networking Chapter 6 Domain Name System.
Integration case study Week 8 – Lecture 1. Enrolment request (Workstation) Application server Database server Database New University Student Record System.
Object Based Operating Systems1 Learning Objectives Object Orientation and its benefits Controversy over object based operating systems Object based operating.
70-293: MCSE Guide to Planning a Microsoft Windows Server 2003 Network, Enhanced Chapter 7: Planning a DNS Strategy.
Beyond DHTML So far we have seen and used: CGI programs (using Perl ) and SSI on server side Java Script, VB Script, CSS and DOM on client side. For some.
Understanding the CORBA Model. What is CORBA?  The Common Object Request Broker Architecture (CORBA) allows distributed applications to interoperate.
OASIS ebXML Registry Standard Open Forum 2003 on Metadata Registries 10:30 – 11:15 January 20, 2003 Kathryn Breininger The Boeing Company Chair, OASIS.
CS 390- Unix Programming Environment CS 390 Unix Programming Environment Topics to be covered: Distributed Computing Fundamentals.
9.23 Overview of DCOM The general organization of ActiveX, OLE, and COM.
CS 603 DCOM April 5, DCOM – What is it? Start with COM – Component Object Model –Language-independent object interface Add interprocess communication.
Distributed Systems Principles and Paradigms Chapter 09 Distributed Object-Based Systems 01 Introduction 02 Communication 03 Processes 04 Naming 05 Synchronization.
Information Management NTU Interprocess Communication and Middleware.
Advanced Computer Networks Topic 2: Characterization of Distributed Systems.
SCALABLE EVOLUTION OF HIGHLY AVAILABLE SYSTEMS BY ABHISHEK ASOKAN 8/6/2004.
Distributed Object Frameworks DCE and CORBA. Distributed Computing Environment (DCE) Architecture proposed by OSF Goal: to standardize an open UNIX envt.
CORBA Common Object Request Broker Architecture. Basic Architecture A distributed objects architecture. Logically, an object client makes method calls.
Electronic Payment Systems (1)
GLOBE DISTRIBUTED SHARED OBJECT. INTRODUCTION  Globe stands for GLobal Object Based Environment.  Globe is different from CORBA and DCOM that it supports.
Netprog: Corba Object Services1 CORBA 2.0 Object Services Ref: The Essential Distributed Objects Survival Guide: Orfali, Harky & Edwards.
CS 501: Software Engineering Fall 1999 Lecture 12 System Architecture III Distributed Objects.
Tom Meyer, Iowa State SCT/Pixel Online Workshop June, 2001 CORBA Common Object Request Broker Architecture.
Lecture 4 Mechanisms & Kernel for NOSs. Mechanisms for Network Operating Systems  Network operating systems provide three basic mechanisms that support.
1 Distributed Systems Distributed Object-Based Systems Chapter 10.
The overview How the open market works. Players and Bodies  The main players are –The component supplier  Document  Binary –The authorized supplier.
CORBA: Object Adapter, Services, Inter-ORB Protocols - Balaprasuna Chennupati.
CEN6502, Spring Understanding the ORB: Client Side Structure of ORB (fig 4.1) Client requests may be passed to ORB via either SII or DII SII decide.
Business Process Execution Language (BPEL) Pınar Tekin.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Object Interaction: RMI and RPC 1. Overview 2 Distributed applications programming - distributed objects model - RMI, invocation semantics - RPC Products.
CORBA Antonio Vasquez, John Shelton, Nidia, Ruben.
Tanenbaum & Van Steen, Distributed Systems: Principles and Paradigms, 2e, (c) 2007 Prentice-Hall, Inc. All rights reserved DISTRIBUTED SYSTEMS.
Distributed Coordination-Based Systems
Java Distributed Object System
WEB SERVICES From Chapter 19 of Distributed Systems Concepts and Design,4th Edition, By G. Coulouris, J. Dollimore and T. Kindberg Published by Addison.
Prof. Leonardo Mostarda University of Camerino
Definition of Distributed System
What is RMI? Remote Method Invocation
Distribution and components
Out-of-Process Components
Knowledge Byte In this section, you will learn about:
Programming Models for Distributed Application
The OMG Approach (continued)
DISTRIBUTED SYSTEMS Principles and Paradigms Second Edition ANDREW S
DISTRIBUTED COMPUTING
Lecture 4: RPC Remote Procedure Call Coulouris et al: Chapter 5
Distributed Systems Bina Ramamurthy 11/30/2018 B.Ramamurthy.
Inventory of Distributed Computing Concepts
Distributed Systems Bina Ramamurthy 12/2/2018 B.Ramamurthy.
Lecture 4: RPC Remote Procedure Call CDK: Chapter 5
Bina Ramamurthy Chapter 9
Bina Ramamurthy Chapter 9
Remote method invocation (RMI)
Bina Ramamurthy Chapter 9
Prof. Leonardo Mostarda University of Camerino
Message Queuing.
COM, DCOM and Software Components
Outline Review of Classical Operating Systems - continued
Today: Distributed File Systems
Out-of-Process Components
WEB SERVICES From Chapter 19, Distributed Systems
A Scripting Server for Domain Automation Tasks
Presentation transcript:

Presentation on Distributed Object-Based Systems Submitted by WWW.ASSIGNMENTPOINT.COM www.assignmentpoint.com

The global architecture of CORBA. Overview of CORBA The global architecture of CORBA. www.assignmentpoint.com

The general organization of a CORBA system. Object Model The general organization of a CORBA system. www.assignmentpoint.com

Overview of CORBA services. Description Collection Facilities for grouping objects into lists, queue, sets, etc. Query Facilities for querying collections of objects in a declarative manner Concurrency Facilities to allow concurrent access to shared objects Transaction Flat and nested transactions on method calls over multiple objects Event Facilities for asynchronous communication through events Notification Advanced facilities for event-based asynchronous communication Externalization Facilities for marshaling and unmarshaling of objects Life cycle Facilities for creation, deletion, copying, and moving of objects Licensing Facilities for attaching a license to an object Naming Facilities for systemwide name of objects Property Facilities for associating (attribute, value) pairs with objects Trading Facilities to publish and find the services on object has to offer Persistence Facilities for persistently storing objects Relationship Facilities for expressing relationships between objects Security Mechanisms for secure channels, authorization, and auditing Time Provides the current time within specified error margins www.assignmentpoint.com Overview of CORBA services.

Object Invocation Models Request type Failure semantics Description Synchronous At-most-once Caller blocks until a response is returned or an exception is raised One-way Best effort delivery Caller continues immediately without waiting for any response from the server Deferred synchronous Caller continues immediately and can later block until response is delivered Invocation models supported in CORBA. www.assignmentpoint.com

Event and Notification Services (1) The logical organization of suppliers and consumers of events, following the push-style model. www.assignmentpoint.com

Event and Notification Services (2) The pull-style model for event delivery in CORBA. www.assignmentpoint.com

CORBA's callback model for asynchronous method invocation. Messaging (1) CORBA's callback model for asynchronous method invocation. www.assignmentpoint.com

CORBA'S polling model for asynchronous method invocation. Messaging (2) CORBA'S polling model for asynchronous method invocation. www.assignmentpoint.com

Interoperability GIOP message types. Message type Originator Description Request Client Contains an invocation request Reply Server Contains the response to an invocation LocateRequest Contains a request on the exact location of an object LocateReply Contains location information on an object CancelRequest Indicates client no longer expects a reply CloseConnection Both Indication that connection will be closed MessageError Contains information on an error Fragment Part (fragment) of a larger message GIOP message types. www.assignmentpoint.com

Logical placement of interceptors in CORBA. Clients Logical placement of interceptors in CORBA. www.assignmentpoint.com

Portable Object Adaptor (1) Mapping of CORBA object identifiers to servants. The POA supports multiple servants. The POA supports a single servant. www.assignmentpoint.com

Portable Object Adaptor (2) My_servant *my_object; // Declare a reference to a C++ object CORBA::Objectid_var oid; // Declare a CORBA identifier my_object = new MyServant; // Create a new C++ object oid = poa ->activate_object (my_object); // Register C++ object as CORBA OBJECT Changing a C++ object into a CORBA object. www.assignmentpoint.com

CORBA's overall model of agents, agent systems, and regions. www.assignmentpoint.com

The organization of an IOR with specific information for IIOP. Object References (1) The organization of an IOR with specific information for IIOP. www.assignmentpoint.com

Indirect binding in CORBA. Object References (2) Indirect binding in CORBA. www.assignmentpoint.com

Caching and Replication The (simplified) organization of a DCS. www.assignmentpoint.com

Object Groups A possible organization of an IOGR for an object group having a primary and backups. www.assignmentpoint.com

An Example Architecture An example architecture of a fault-tolerant CORBA system. www.assignmentpoint.com

The general organization for secure object invocation in CORBA. Security (1) The general organization for secure object invocation in CORBA. www.assignmentpoint.com

The role of security interceptors in CORBA. www.assignmentpoint.com

The general organization of ActiveX, OLE, and COM. Overview of DCOM The general organization of ActiveX, OLE, and COM. www.assignmentpoint.com

The difference between language-defined and binary interfaces. Object Model The difference between language-defined and binary interfaces. www.assignmentpoint.com

Tape Library and Registry The overall architecture of DCOM. www.assignmentpoint.com

Overview of DCOM services in comparison to CORBA services. DCOM/COM+ Service Windows 2000 Service Collection ActiveX Data Objects - Query None Concurrency Thread concurrency Transaction COM+ Automatic Transactions Distributed Transaction Coordinator Event COM+ Events Notification Externalization Marshaling utilities Life cycle Class factories, JIT activation Licensing Special class factories Naming Monikers Active Directory Property Trading Persistence Structured storage Database access Relationship Security Authorization SSL, Kerberos Time www.assignmentpoint.com Overview of DCOM services in comparison to CORBA services.

Event processing in DCOM. Events Event processing in DCOM. www.assignmentpoint.com

Passing an object reference in DCOM with custom marshaling. Clients Passing an object reference in DCOM with custom marshaling. www.assignmentpoint.com

Binding to a DCOM object by means of file moniker. Monikers (1) Step Performer Description 1 Client Calls BindMoniker at moniker 2 Moniker Looks up associated CLSID and instructs SCM to create object 3 SCM Loads class object 4 Class object Creates object and returns interface pointer to moniker 5 Instructs object to load previously stored state 6 Object Loads its state from file 7 Returns interface pointer of object to client Binding to a DCOM object by means of file moniker. www.assignmentpoint.com

DCOM-defined moniker types. Monikers (2) Moniker type Description File moniker Reference to an object constructed from a file URL moniker Reference to an object constructed from a URL Class moniker Reference to a class object Composite moniker Reference to a composition of monikers Item moniker Reference to a moniker in a composition Pointer moniker Reference to an object in a remote process DCOM-defined moniker types. www.assignmentpoint.com

The general organization of Active Directory. www.assignmentpoint.com

Transaction attribute values for DCOM objects. Fault Tolerance Attribute value Description REQUIRES_NEW A new transaction is always started at each invocation REQUIRED A new transaction is started if not already done so SUPPORTED Join a transaction only if caller is already part of one NOT_SUPPORTED Never join a transaction DISABLED Never join a transaction, even if told to do so Transaction attribute values for DCOM objects. www.assignmentpoint.com

Declarative Security (1) Authentication level Description NONE No authentication is required CONNECT Authenticate client when first connected to server CALL Authenticate client at each invocation PACKET Authenticate all data packets PACKET_INTEGRITY Authenticate data packets and do integrity check PACKET_PRIVACY Authenticate, integrity-check, and encrypt data packets Authentication levels in DCOM. www.assignmentpoint.com

Declarative Security (2) Impersonation level Description ANONYMOUS The client is completely anonymous to the server IDENTIFY The server knows the client and can do access control checks IMPERSONATE The server can invoke local objects on behalf of the client DELEGATE The server can invoke remote objects on behalf of the client Impersonation levels in DCOM. www.assignmentpoint.com

Programmatic Security Service Description NONE No authentication DCE_PRIVATE DCE authentication based on shared keys DCE_PUBLIC DEC authentication based on public keys WINNT Windows NT security GSS_KERBEROS Kerberos authentication (a) No authorization NAME Authorization based on the client's identity DCE Authorization using DEC Privilege Attribute Certificates (PACs) (b) Default authentication services supported in DCOM. Default authorization services supported in DCOM. www.assignmentpoint.com

The organization of a Globe distributed shared object. Globe Object Model (1) The organization of a Globe distributed shared object. www.assignmentpoint.com

Globe Object Model (2) The general organization of a local object for distributed shared objects in Globe. www.assignmentpoint.com

Globe Object Model (3) Document Interface Method Description AddElement Add an element to the current set of elements DeleteElement Remove an element from the Web document AllElements Return a list of the elements currently in the document SetRoot Set the root element GetRoot Return a reference to the root element Content Interface GetCotent Return the content of an element as an array of bytes PutContent Replace the content of an element with a given array of bytes PutAllContent Replace the content of an entire document Interfaces implemented by the semantics subobject of a GlobeDoc object. www.assignmentpoint.com

Globe Object Model (4) Property Interface Method Description GetProperties Return the list of (attribute, value)-pairs of an element SetProperties Provide a list of (attribute, value)-pairs for an element Lock Interface CheckOutElements Check out a series of elements that require modification CheckInElements Check in a series of modified elements GetCheckedElements Get a list of elements that are currently checked out Interfaces implemented by the semantics subobject of a GlobeDoc Object. www.assignmentpoint.com

Process-to-Object Binding Binding a process to an object in Globe. www.assignmentpoint.com

Possible Implementation in Globe Globe Services Service Possible Implementation in Globe Available Collection Separate object that holds references to other objects No Concurrency Each object implements its own concurrency control strategy Transaction Separate object representing a transaction manager Event/Notification Separate object per group of events (as in DCOM) Externalization Each object implements its own marshaling routines Yes Life cycle Separate class objects combined with per-object implementations Licensing Implemented by each object separately Naming Separate service, implemented by a collection of naming objects Property/Trading Separate service, implemented by a collection of directory objects Persistence Implemented on a per-object basis Security Implemented per object, combined with (local) security services Replication Fault tolerance Implemented per object combined with fault-tolerant services Overview of possible Globe implementations of typical distributes-systems services. www.assignmentpoint.com

Invoking an object in Globe that uses active replication. Communication Invoking an object in Globe that uses active replication. www.assignmentpoint.com

Operations on a Globe object server. Globe Server Method Description Bind Lets the server bind to a given object, unless it is already bound AddBinding Lets the server bind to an object, even if it is already bound CreateLR Lets the server create a local object for a new distributed object RemoveLR Lets the server remove a local object of a given object UnbindDSO Lets the server remove all local objects of a given object ListAll Returns a list of all local objects ListDSO Returns a list of all local objects for a given objects StatLR Get the status of a specific local object Operations on a Globe object server. www.assignmentpoint.com

Object References and Contact Addresses (1) Field Description Protocol identifier A constant representing a (known) protocol Protocol address A protocol-specific address Implementation handle Reference to a file in a class repository The representation of a protocol layer in a stacked contact address. www.assignmentpoint.com

Object References and Contact Addresses (2) Field Description Implementation handle Reference to a file in a class repository Initialization string String that is used to initialize an implementation The representation of an instance contact address. www.assignmentpoint.com

Iterative DNS-based name resolution in Globe. Globe Naming Service Iterative DNS-based name resolution in Globe. www.assignmentpoint.com

Replication (1) Method Description Start Indicate that a new method invocation has been locally requested Send Pass the marshaled invocation request to the replication subobject Invoked Indicate that the invocation on the semantics object has completed The interface of the replication subobject as made available to the control subobject. www.assignmentpoint.com

The behavior of the control subobject as a finite state machine. Replication (2) The behavior of the control subobject as a finite state machine. www.assignmentpoint.com

Examples of Replication in Globe (1) Read method State Action to take Method call Next state START None Start INVOKE Invoke local method Invoked RETURN Return results to caller Modify method SEND Pass marshaled invocations Send invoke local method State transitions and actions for active replication. www.assignmentpoint.com

Examples of Replication in Globe (2) Read method State Action to take Method call Next state START None Start INVOKE Invoke local method Invoked RETURN Return results to caller Modify method at backup replica SEND Pass marshaled invocation Send Modify method at primary replica none invoke local method State transitions and actions with primary-backup replication. www.assignmentpoint.com

The position of a security subobject in a Globe local object. www.assignmentpoint.com

Security (2) Using Kerberos to establish secure distributed shared objects. www.assignmentpoint.com

Comparison of CORBA, DCOM, and Globe. Summary (1) Issue CORBA DCOM Globe Design goals Interoperability Functionality Scalability Object model Remote objects Distributed objects Services Many of its own From environment Few Interfaces IDL based Binary Sync. communication Yes Async. communication No Callbacks Events Messaging Object server Flexible (POA) Hard-coded Object dependent Directory service Trading service yes Continued … Comparison of CORBA, DCOM, and Globe. www.assignmentpoint.com

Comparison of CORBA, DCOM, and Globe. Summary (2) Issue CORBA DCOM Globe Naming service Yes Location service No Object reference Object's location Interface pointer True identifier Synchronization Transactions Only intra-object Replication support Separate server None Separate subobject Fault tolerance By replication By transactions Recovery support Security Various mechanisms More work needed Comparison of CORBA, DCOM, and Globe. www.assignmentpoint.com