Presentation is loading. Please wait.

Presentation is loading. Please wait.

CORBA Antonio Vasquez, John Shelton, Nidia, Ruben.

Similar presentations


Presentation on theme: "CORBA Antonio Vasquez, John Shelton, Nidia, Ruben."— Presentation transcript:

1 CORBA Antonio Vasquez, John Shelton, Nidia, Ruben

2 What is CORBA? Common Object Request Broker Architecture Common Object Request Broker Architecture Provides framework for development/execution of distributed applications Provides framework for development/execution of distributed applications OMG (Object Management Group) OMG (Object Management Group) Non-profit organization created in 1989 Non-profit organization created in 1989 Created UML specification Created UML specification Distributed Applications: shared on multiple computers Distributed Applications: shared on multiple computers Data Distribution Data Distribution Data exists on multiple computers Data exists on multiple computers Computation Distribution Computation Distribution Take advantage of multiple processors Take advantage of multiple processors User Distribution User Distribution Communicate/Interact with each other through application Communicate/Interact with each other through application

3 What is CORBA? continued… Advantages of Distributed Applications Advantages of Distributed Applications Concurrent access Concurrent access Failure handling Failure handling Disadvantages of Distributed Applications Disadvantages of Distributed Applications Slow communication Slow communication Multiple security handling Multiple security handling Distributed Object Systems Distributed Object Systems All entities modeled as objects All entities modeled as objects

4 What is CORBA? continued… CORBA CORBA Standard architecture for distributed object systems Standard architecture for distributed object systems Basics operations Basics operations Service request from distributed object Service request from distributed object Objects provide service through interface Objects provide service through interface Identified by object references Identified by object references Both identified in IDL Both identified in IDL

5 IDL Interface Definitions Language Interface Definitions Language Base interface specification for objects to build upon Base interface specification for objects to build upon No implementation No implementation Purpose of IDL Purpose of IDL Create a standard interface specification Create a standard interface specification Strict interface description of each object Strict interface description of each object Object-orientated language neutral Object-orientated language neutral Create language bindings for different programming languages Create language bindings for different programming languages Enables interaction between objects Enables interaction between objects

6 IDL continued… Benefits of IDL Benefits of IDL Common description among programming languages Common description among programming languages Modular object interfaces Modular object interfaces Object support of operations and attributes Object support of operations and attributes Operation exception Operation exception Data types of operation’s return value, parameters, and attributes Data types of operation’s return value, parameters, and attributes

7 IDL continued… IDL data types IDL data types Basic data types Basic data types long, short, string, float, etc… long, short, string, float, etc… Constructed data types Constructed data types struct, union, enum, sequence struct, union, enum, sequence Typed object reference Typed object reference The any type The any type Takes on any legal IDL typed value given at runtime Takes on any legal IDL typed value given at runtime

8 IDL continued… IDL Compiler IDL Compiler Implement language mappings in software Implement language mappings in software Each ORB has it’s on language IDL compiler Each ORB has it’s on language IDL compiler Compiler produces at least 2 files Compiler produces at least 2 files Server Skeleton and client Stub Server Skeleton and client Stub Used for server/client communication Used for server/client communication Client stub fits perfects with server skeleton Client stub fits perfects with server skeleton

9 IDL continued…

10 Remote Invocation Definition: Definition: Standardized method of remote communication between ORB’s Standardized method of remote communication between ORB’s

11 IIOP GIOP (General Inter-ORB Protocol) GIOP (General Inter-ORB Protocol) Describes how ORB’s communicate in standard way Describes how ORB’s communicate in standard way Internet Inter-ORB Protocol Internet Inter-ORB Protocol Definition: Definition: TCP/IP specific mapping of GIOP messages TCP/IP specific mapping of GIOP messages All ORB’s must “speak” IIOP to be CORBA compliant All ORB’s must “speak” IIOP to be CORBA compliant

12 IIOP continued… OSI 7-Layer Reference Model OSI 7-Layer Reference Model Physical layer Physical layer Data-link layer Data-link layer Network layer Network layer Transport layer Transport layer Session layer Session layer Presentation layer Presentation layer Application layer Application layer

13 IIOP continued… CORBA network 7-layer structure CORBA network 7-layer structure Physical device Physical device Ethernet Ethernet IP IP TCP TCP IIOP IIOP ORB ORB Application Objects Application Objects

14 IIOP continued… IIOP IIOP Directs requests between ORB’s Directs requests between ORB’s Servers make known their location, listen, and respond to requests Servers make known their location, listen, and respond to requests Clients initiate requests Clients initiate requests Advantages over HTTP/CGI Advantages over HTTP/CGI No additional instance for each request No additional instance for each request Supports more robust data-types than strings Supports more robust data-types than strings Ability to access any IDL object Ability to access any IDL object Persistence of state Persistence of state

15 ORB Object Request Broker Object Request Broker Manages communication and data exchange between objects Manages communication and data exchange between objects Central component of CORBA Central component of CORBA Responsibilities Responsibilities Locates object in network Locates object in network Communication Communication Waits for results Waits for results

16 ORB continued… Other features Other features Same request mechanism by client and CORBA objects Same request mechanism by client and CORBA objects Defined by its interfaces Defined by its interfaces Programming language independent Programming language independent ORB translates between programming languages ORB translates between programming languages Advantages Advantages Hide implementation details Hide implementation details Maintainability Maintainability Appears that an object is local to client Appears that an object is local to client

17 ORB continued… 2 major ORB technologies 2 major ORB technologies OMG CORBA OMG CORBA Microsoft’s COM (Component Object Model) Microsoft’s COM (Component Object Model) Example: Example: DCOM (Distributed Component Object Model) by Microsoft DCOM (Distributed Component Object Model) by Microsoft Set of Microsoft concepts and program interfaces for service requests between client program objects and server program objects of computers in network Set of Microsoft concepts and program interfaces for service requests between client program objects and server program objects of computers in network

18 ORB continued… More useful information on DCOM More useful information on DCOM Based on COM Based on COM Works on public internet Works on public internet Uses TCP/IP and HTTP Uses TCP/IP and HTTP Comes as part of Windows OS Comes as part of Windows OS Replaces OLE Remote Automation Replaces OLE Remote Automation Equivalent to CORBA Equivalent to CORBA Network-wide environment Network-wide environment

19 Conclustion


Download ppt "CORBA Antonio Vasquez, John Shelton, Nidia, Ruben."

Similar presentations


Ads by Google