Lesson 1
CORBA Fundamentals
The (CORBA) Common Object Request Broker Architecture represents a relatively complex topic that requires effort to understand in its entirety. This is because creating software that will run across a network is complicated, but also because CORBA strives to provide standards. Consequently, CORBA represents a relatively large body of information, with varying levels of breadth.
What are the essential components which make up CORBA middleware?
The Common Object Request Broker Architecture (CORBA) is a middleware design that enables communication between software objects irrespective of whether they reside in the same system or in distributed systems, and regardless of programming languages used to implement them. It's a standard defined by the Object Management Group (OMG).
CORBA is composed of the following essential components:
- Object Request Broker (ORB): The ORB is the heart of the CORBA architecture. It's responsible for ensuring that when a client makes a request to an object, the request is delivered, and the response is returned back to the client, taking care of details such as locating the object, communication protocols, data conversions, and exceptions. This enables objects to send requests and receive responses in a distributed environment as if they were local.
- Interface Repository (IR): The IR provides a way to store interface definitions in a language-independent manner. These definitions can be queried at runtime, which aids in achieving dynamic interoperability. They're used by the ORB to ensure that the client's request matches the interface of the object implementation.
- Interface Definition Language (IDL): The IDL allows developers to describe the interfaces of objects in a language-independent manner. These descriptions include the methods an object exposes, along with their input and output parameters. The IDL provides a standard way for objects to communicate, regardless of the programming language they are implemented in.
- Portable Object Adapter (POA): The POA creates a connection between the ORB and the objects, allowing the ORB to deliver requests to them. The POA supports the creation and destruction of objects, manages object references, and handles request dispatching.
- Dynamic Invocation Interface (DII) and Dynamic Skeleton Interface (DSI): These interfaces allow for creating and handling requests at runtime, enabling dynamic method invocation. The DII is used by clients to construct a request at runtime, and the DSI allows servers to receive and process requests dynamically..
- Naming, Trading, and Other Services: The Naming Service enables objects to be located using human-readable names. The Trading Service extends this by allowing objects to be found based on their properties or capabilities. Other CORBA services include the Event Service for asynchronous communication, the Security Service to handle authentication and access control, and the Transaction Service to manage distributed transactions
- Interoperability Protocols: The General Inter-ORB Protocol (GIOP) is a standard protocol used for communication between ORBs, while the Internet Inter-ORB Protocol (IIOP) is a version of GIOP that runs over TCP/IP. These protocols ensure interoperability between different CORBA implementations.
Together, these components enable the seamless interoperability and communication capabilities of CORBA middleware, providing a robust framework for distributed object-oriented systems.
Course goals
In this course, we will focus on the core pieces of CORBA and focus on gaining an understanding of
- how CORBA works,
- what the basic CORBA architecture represents, and
- what the CORBA specification covers.
In addition, we will explore the structure of CORBA clients and CORBA servers in detail.
Discussion Topics
In this course, the following topics will be discussd.
- CORBA clients and CORBA servers
- The Object Management Group
- The CORBA specification
- CORBA's Object Management Architecture
- The CORBAservices and the CORBAfacilities
- Internet Inter-ORB Protocol
- CORBA Interface Definition Language
- Where the CORBA vendors stand on interoperability, CORBAservices, and overall compliance with the CORBA specification
Take a few moments to go over the introductory material presented in this module before jumping into the course.
The marble must be more than a wave.
The wave only describes the probability of where we will see the marble when we look at it.
Sat, 21 Dec 2024 12:09:37 +0000