Upload
venu-gopal-p
View
218
Download
0
Embed Size (px)
Citation preview
7/30/2019 Corba Part 1
1/17
Distributed Object-Based System : CORBA
(Common Object Request Broker Architecture )
7/30/2019 Corba Part 1
2/17
CORBA was developed by the OMG (Object Management Group)
The Object Request Broker (ORB) forms the core of any CORBAdistributed system.
It has the following Horizontal (User & System Support) facilities
User interface
Information management
System management
Task management
It has Vertical (application support) facilities in the application
domain such as as electronic commerce, banking, manufacturing
7/30/2019 Corba Part 1
3/17
CORBAs Interface with Other Services
All CORBA specifications are given by means of interface
descriptions, expressed in an Interface Definition Language
(IDL).
An interface is a collection ofmethods, and objects specify
which interfaces they implement.
It provides a precise syntax for expressing methods and their
parameters.
7/30/2019 Corba Part 1
4/17
The GeneralArchitecture of a CORBA System.
7/30/2019 Corba Part 1
5/17
CORBA Architecture
ORB core
DynamicInvocation
IDLStubs
ORBInterface
Object
Adapter
Static IDL
Skeleton
Dynamic
Skeleton
Client Object Implementation
Standard Interface Per-Object Type
Generated Interface
ORB Dependent
Interface
Interface
Repository
Implementatio
Repository
7/30/2019 Corba Part 1
6/17
CORBA Basic Architecture
o b j e c t c l i e n tn a m i n g s e r v i c e
n a m i n g
l o o k u p
s t u b
O R B
n e t w o r k
o p e r a t i n gs y s t e m
o b j e c t
i m p l e m e n t a t i o n
s k e l e t o n
O R B
n e t w o r k
o p e r a t i n gs y s t e m
l o g i c a l d a t a f l o w
p h y s i c a l d a t a f l o w
7/30/2019 Corba Part 1
7/17
As a distributed objects architecture, it resembles to the RMI
architecture:
Logically an object client makes method calls todistributed objects.
An object client interfaces with a proxy a stub while
the object implantation interfaces with the server-side
proxy a skeletonCORBA is not bound to a particular programming language
and hence an interface definition language (IDL) has been
introduced. IDL is an universal language with a distinct syntax
Though the syntax of CORBA IDL resembles to Java and C++, an object defined in a CORBA IDL file can be implemented
in a large number programming languages, including C, C++,
Java, COBOL, Smalltalk, Ada, Lisp, Python, and IDL Script
7/30/2019 Corba Part 1
8/17
Language Independence in CORBA
For each of these languages, OMG has a standardized
mapping from CORBA IDL to the programming language A compiler can be used to process a CORBA interface to
generate the proxy files
Object clients can be written in any of the CORBA-
compatible languages.
7/30/2019 Corba Part 1
9/17
Cross-language, cross-vendor interoperability is achieved via
the Internet Inter-ORB Protocol, or IIOP. IIOP is a transport
protocol for distributed applications written in either IDL or
Java RMI.
To allow ORBs to be interact and operate, the OMG specified
a protocol known as the General Inter-ORB Protocol(GIOP)
GIOP protocol specification provides a general framework to
be built on top of specific transport layers
IIOP is a special case of GIOP to make use of the TCP/IP
transport layer.
Inter-ORB Protocols
7/30/2019 Corba Part 1
10/17
Object Bus
An ORB which adheres to the specifications of the IIOP may
interoperate with any other IIOP-compliant ORBs over the
Internet. This gives rise to the term object bus, where the
Internet is seen as a bus that interconnects CORBA objects
7/30/2019 Corba Part 1
11/17
The IIOP specification includes the following elements:
Transport management requirements which
specifies the connection and disconnection
requirements for the object client and object server
Definition of common data representation: a coding
scheme for marshalling and un-marshalling data of
each IDL data type.
Message formats: Formats for different types ofsend/receive messages are defined. The messages allow
clients to send requests to object servers and receive
replies.
7/30/2019 Corba Part 1
12/17
The modelling standards belonging to the OMG include:
Unified Modelling Language (UML)
Model Driven Architecture (MDA)
Systems Modelling Language (SysML)
Business Process Modelling Notation (BPMN)
The Object Management Group (OMG) is a consortium created
to set common standards for distributed object-oriented systems
and develop enterprise integration standards for a wide range oftechnologies
OMGs middleware standards are based on the Common
Object Request Broker Architecture (CORBA)
OMG has also developed a core set of standards adapting
CORBA for embedded and real-time systems
7/30/2019 Corba Part 1
13/17
Object Management Architecture
Object Request Broker(ORB) component that enables clients
and objects to communicate in a distributed environment.
In CORBA, the Object Request Broker or ORB takes care of all
of the details involved in routing a request from client to object,and routing the response to its destination.
The ORB guaranteesportability and interoperability of objects
over a network of heterogeneous systems
7/30/2019 Corba Part 1
14/17
An Object Request Broker (ORB) provides a communication
infrastructure for invoking operations on objects
It enables to perform the operation transparently with respect to
where they are located on the network, the types of hardware and
operating system platforms on which they execute, differences indata representations between platforms, the languages in which
objects are implemented, and network transports used to
communicate with them.
CORBA specifies all of the functions that must be provided by an
ORB and a set of standard interfaces to those functions.
7/30/2019 Corba Part 1
15/17
OMA
(Object Management Architecture)
COMMON OBJECT SERVICES
APPLICATION OBJECTSCOMMON FACILITIES
OBJECT REQUEST BROKER
persistencenaming trading
security
HorizontalUser InterfaceMailPrinting
VerticalTelecomFinanceHealth Care
7/30/2019 Corba Part 1
16/17
Naming Services:An URL facilitates the localization of a resource exposed
on the Web. e.g., abc.net.in means it is likely to be an Indian
entity?A consistent and uniform naming helps processes in a
distributed system to interoperate and manage resources.
e.g., commercials use .com; non-profit organizations use .orgNaming Services are not only useful to locate resources but
also to gatheradditional information about them such as
attributes
Trading Services:Trading presents a global information repository. The global
repository can be updated by independent information
producers throughout the world-wide network, and the
information users can create effective and large information
searches.
7/30/2019 Corba Part 1
17/17
CORBA Facilities
CORBA Facilities are useful for constructing applications across a wide range
of application domains. They are divided into Horizontal CORBA Facilities,
which are typically more user-oriented, and Vertical CORBA Facilities, whichsupport specific application domains.
The Horizontal CORBA Facilities currently identified by OMG are grouped
into four areas:
User Interface Facilities: Desktop Management, Rendering Management,
Scripting, and User Support Facilities.
Information Management Facilities: Data Encoding and Representation, Data
Interchange, Information Exchange, Information Modeling,
Information Storage and Retrieval
System Management Facilities: Collection Management, Consistency,
Customization, Data Collection, Event Management, InstanceManagement, Policy Management, Process Launch, Quality
of Service Management, Scheduling Management, and
Security Facilities.
Task Management Facilities: Agent, Automation, Rule Management, and
Workflow Facilities.