SlideShare uma empresa Scribd logo
1 de 37
CORBA

{

Common Object Request Broker Architecture

Vishal Singh (205111043)
Sanjeev Singh (205111046)




The Common Object Request Broker
Architecture is a
Standard defined by the object management
group that Enables software components
written in multiple computer languages and
running
on multiple computers to
work together.

CORBA


Fig - The global architecture of CORBA.

Overview
•

ORB is core of any COBRA Distributed System.

•

ORB is responsible for enabling communication
Between objects and their clients while hiding
issues related to distribution and heterogeneity.




Object Request Broker
CORBA use the remote object model in which
 the implementation of an object reside in the
address space of a server.
•

Objects and services are specified in the CORBA
Interface Definition Language(IDL).
•

Object Model


Fig - The general organization of a
CORBA system.

Object Model
Service

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

Corba Services

Persistence

Relationship

Facilities for expressing relationships between objects

Security

Mechanisms for secure channels, authorization, and auditing

Time



Facilities for persistently storing objects

Provides the current time within specified error margins

Fig - Overview of CORBA services.
Communication
Object Invocation Models
Request type

Failure semantics

Description

Synchronous

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



At-most-once

At-most-once

Caller continues immediately
and can later block until
response is delivered

Fig - Invocation models supported in CORBA.
1.

Event and Notification
Services
Fig - The logical organization of suppliers
and
 consumers of events, following the push-style
model.

2.

Event and Notification
Services



Fig - The pull-style model for event delivery in CORBA.
1.


Fig - CORBA's callback model for
asynchronous method invocation.

Messaging
2.

Messaging


Fig - CORBA'S polling model for asynchronous method
invocation.
Message type

Originator

Description

Request

Client

Contains an invocation request

Reply

Server

Contains the response to an invocation

LocateRequest

Client

Contains a request on the exact location of an object

LocateReply

Server

Contains location information on an object

CancelRequest

Client

Indicates client no longer expects a reply

CloseConnection

Both

Indication that connection will be closed

Interoperability

MessageError

Contains information on an error

Fragment



Both
Both

Part (fragment) of a larger message

Fig - GIOP message types.
Process

{

Client- simple one
Server





IDL specification are compiled into a proxy
Marshall invocation info
Un-Marshall corresponding reply
Proxies are just to connect to underlying ORB

Client Process


It is a mechanism by which an invocation can
intercepted on its way from client to server and
adopt it



Request level interceptor
Message level interceptor



Interceptor
Logical placement of interceptor









It is just like a wrapper
Responsible for providing consistent image of
what an object is
It provides mechanism such that client can see
that program is just an object
POA are responsible to show server-side code
as object to client
Server side code need not to worry about
underlying ORB

Object adapter
Portable object adapter

a) POA supporting multiple servant
b) POA supporting single servant







To facilitate agent based system CORBA adopts a model in which
different kind of system can co-operate
CORBA provides standard interface that has to be followed
Agent system - creation, execution, transfer, termination
Each agent system has its profile
Region, finder

Agents
CORBA's overall model of agents,
agent systems, and regions



Object reference
Character based

Naming









How objects are referenced?
Client side object reference and ORB object
reference are different
A reference of X can not be passed to Y because
of address space
So marshaling is used by underlying ORB for
this
ORB has language independent reference
called IOR ( interoperable object reference)

Object reference
The organization of an IOR with
specific information for IIOP








Starts with repository identifier
Most important part is tagged profile
Profile ID
Host field
Port field
Object key
components

IOR details




Binding request is first sent to implementation
repository
It acts as a registry by which reference objects
can be located and activated

Indirect binding
Indirect binding example
CORBA naming service(char
based)





Offered by CORBA to lookup object reference using characterbased names
(id,kind) pair where both are string
(vishal,dir) as an example






Object groups - replicate objects into object
groups
Identical copies of same object
Replication is transparent to client
But how object group are referenced ?

Fault tolerance
IOGR (interoperable object group reference)





IOGR contains multiple reference to different
objects (of same type)
IOR contains multiple reference to same object
ORB binds IOGR to one of the replicas
A possible organization of an IOGR for an
object group having a primary and backups.
An example architecture
Security
The general organization for secure object invocation in CORBA.







Application level objects are unaware of
security mechanism
At binding time ORB decides which security
service is to be used at client side
Selection of service is done by security policy
Security policies are done by policy objects

Secure object invocation

1.
2.

Two different interceptors
Access control interceptor- checks the rights
Secure invocation interceptor- message
protection and it is able to encrypt the
request and response also

Replaceable security
service
The role of security interceptors in
CORBA.
Corba

Mais conteúdo relacionado

Mais procurados

82159587 case-study-on-corba
82159587 case-study-on-corba82159587 case-study-on-corba
82159587 case-study-on-corbahomeworkping3
 
Multiprotocol label switching (mpls) - Networkshop44
Multiprotocol label switching (mpls)  - Networkshop44Multiprotocol label switching (mpls)  - Networkshop44
Multiprotocol label switching (mpls) - Networkshop44Jisc
 
6 Data Modeling for NoSQL 2/2
6 Data Modeling for NoSQL 2/26 Data Modeling for NoSQL 2/2
6 Data Modeling for NoSQL 2/2Fabio Fumarola
 
Mobile computing unit-5
Mobile computing unit-5Mobile computing unit-5
Mobile computing unit-5Ramesh Babu
 
Synchronization in distributed systems
Synchronization in distributed systems Synchronization in distributed systems
Synchronization in distributed systems SHATHAN
 
Major and Minor Elements of Object Model
Major and Minor Elements of Object ModelMajor and Minor Elements of Object Model
Major and Minor Elements of Object Modelsohailsaif
 
Mobile transportlayer
Mobile transportlayerMobile transportlayer
Mobile transportlayerRahul Hada
 
Multi Processors And Multi Computers
 Multi Processors And Multi Computers Multi Processors And Multi Computers
Multi Processors And Multi ComputersNemwos
 
Clock synchronization in distributed system
Clock synchronization in distributed systemClock synchronization in distributed system
Clock synchronization in distributed systemSunita Sahu
 
RPC: Remote procedure call
RPC: Remote procedure callRPC: Remote procedure call
RPC: Remote procedure callSunita Sahu
 
8 secure distributed data storage in cloud computing
8 secure distributed data storage in cloud computing8 secure distributed data storage in cloud computing
8 secure distributed data storage in cloud computingMajid Hajibaba
 
Introduction to Data-Link Layer
Introduction to Data-Link LayerIntroduction to Data-Link Layer
Introduction to Data-Link LayerAbdullaziz Tagawy
 
Distributed file system
Distributed file systemDistributed file system
Distributed file systemAnamika Singh
 
Distributed Computing system
Distributed Computing system Distributed Computing system
Distributed Computing system Sarvesh Meena
 
Mobile transport layer - traditional TCP
Mobile transport layer - traditional TCPMobile transport layer - traditional TCP
Mobile transport layer - traditional TCPVishal Tandel
 

Mais procurados (20)

Temporal databases
Temporal databasesTemporal databases
Temporal databases
 
82159587 case-study-on-corba
82159587 case-study-on-corba82159587 case-study-on-corba
82159587 case-study-on-corba
 
Multiprotocol label switching (mpls) - Networkshop44
Multiprotocol label switching (mpls)  - Networkshop44Multiprotocol label switching (mpls)  - Networkshop44
Multiprotocol label switching (mpls) - Networkshop44
 
6 Data Modeling for NoSQL 2/2
6 Data Modeling for NoSQL 2/26 Data Modeling for NoSQL 2/2
6 Data Modeling for NoSQL 2/2
 
Chapter 6 synchronization
Chapter 6 synchronizationChapter 6 synchronization
Chapter 6 synchronization
 
Mobile computing unit-5
Mobile computing unit-5Mobile computing unit-5
Mobile computing unit-5
 
Synchronization in distributed systems
Synchronization in distributed systems Synchronization in distributed systems
Synchronization in distributed systems
 
Major and Minor Elements of Object Model
Major and Minor Elements of Object ModelMajor and Minor Elements of Object Model
Major and Minor Elements of Object Model
 
Mobile transportlayer
Mobile transportlayerMobile transportlayer
Mobile transportlayer
 
Multi Processors And Multi Computers
 Multi Processors And Multi Computers Multi Processors And Multi Computers
Multi Processors And Multi Computers
 
Clock synchronization in distributed system
Clock synchronization in distributed systemClock synchronization in distributed system
Clock synchronization in distributed system
 
Google File System
Google File SystemGoogle File System
Google File System
 
RPC: Remote procedure call
RPC: Remote procedure callRPC: Remote procedure call
RPC: Remote procedure call
 
8 secure distributed data storage in cloud computing
8 secure distributed data storage in cloud computing8 secure distributed data storage in cloud computing
8 secure distributed data storage in cloud computing
 
Introduction to Data-Link Layer
Introduction to Data-Link LayerIntroduction to Data-Link Layer
Introduction to Data-Link Layer
 
Distributed file system
Distributed file systemDistributed file system
Distributed file system
 
Distributed objects
Distributed objectsDistributed objects
Distributed objects
 
Distributed Computing system
Distributed Computing system Distributed Computing system
Distributed Computing system
 
Replication in Distributed Systems
Replication in Distributed SystemsReplication in Distributed Systems
Replication in Distributed Systems
 
Mobile transport layer - traditional TCP
Mobile transport layer - traditional TCPMobile transport layer - traditional TCP
Mobile transport layer - traditional TCP
 

Semelhante a Corba

ADVANCED JAVA MODULE III & IV.ppt
ADVANCED JAVA MODULE III & IV.pptADVANCED JAVA MODULE III & IV.ppt
ADVANCED JAVA MODULE III & IV.pptrani marri
 
corba-151024114450-lva1-app6891.pptx
corba-151024114450-lva1-app6891.pptxcorba-151024114450-lva1-app6891.pptx
corba-151024114450-lva1-app6891.pptxAasimAbdul
 
Corba and-java
Corba and-javaCorba and-java
Corba and-javaafreen58
 
85305524 i-t-case-study
85305524 i-t-case-study85305524 i-t-case-study
85305524 i-t-case-studyhomeworkping3
 
corbaintroductionandexample-140703005744-phpapp02.pdf
corbaintroductionandexample-140703005744-phpapp02.pdfcorbaintroductionandexample-140703005744-phpapp02.pdf
corbaintroductionandexample-140703005744-phpapp02.pdfBesAli1
 
CORBA Basic and Deployment of CORBA
CORBA Basic and Deployment of CORBACORBA Basic and Deployment of CORBA
CORBA Basic and Deployment of CORBAPriyanka Patil
 
Corba in power system
Corba in power systemCorba in power system
Corba in power systemPROTIM PAUL
 
Middleware1
Middleware1Middleware1
Middleware1bhumi109
 
Inter ORB Protocol and Object Persistence & Object Serialization
Inter ORB Protocol and Object Persistence & Object SerializationInter ORB Protocol and Object Persistence & Object Serialization
Inter ORB Protocol and Object Persistence & Object SerializationAnkit Mulani
 
05 rpc-case studies
05 rpc-case studies05 rpc-case studies
05 rpc-case studieshushu
 
Rpc Case Studies (Distributed computing)
Rpc Case Studies (Distributed computing)Rpc Case Studies (Distributed computing)
Rpc Case Studies (Distributed computing)Sri Prasanna
 
Distributed System by Pratik Tambekar
Distributed System by Pratik TambekarDistributed System by Pratik Tambekar
Distributed System by Pratik TambekarPratik Tambekar
 
Distributed systems corba remote connection
Distributed systems corba remote connectionDistributed systems corba remote connection
Distributed systems corba remote connectionMohammedAkramMohiudd
 
Lecture4 corba
Lecture4   corbaLecture4   corba
Lecture4 corbapoovi117
 
Remote Method Innovation (RMI) In JAVA
Remote Method Innovation (RMI) In JAVARemote Method Innovation (RMI) In JAVA
Remote Method Innovation (RMI) In JAVAPrankit Mishra
 

Semelhante a Corba (20)

ADVANCED JAVA MODULE III & IV.ppt
ADVANCED JAVA MODULE III & IV.pptADVANCED JAVA MODULE III & IV.ppt
ADVANCED JAVA MODULE III & IV.ppt
 
corba-151024114450-lva1-app6891.pptx
corba-151024114450-lva1-app6891.pptxcorba-151024114450-lva1-app6891.pptx
corba-151024114450-lva1-app6891.pptx
 
C O R B A Unit 4
C O R B A    Unit 4C O R B A    Unit 4
C O R B A Unit 4
 
Corba and-java
Corba and-javaCorba and-java
Corba and-java
 
85305524 i-t-case-study
85305524 i-t-case-study85305524 i-t-case-study
85305524 i-t-case-study
 
corbaintroductionandexample-140703005744-phpapp02.pdf
corbaintroductionandexample-140703005744-phpapp02.pdfcorbaintroductionandexample-140703005744-phpapp02.pdf
corbaintroductionandexample-140703005744-phpapp02.pdf
 
CORBA Basic and Deployment of CORBA
CORBA Basic and Deployment of CORBACORBA Basic and Deployment of CORBA
CORBA Basic and Deployment of CORBA
 
MIDELWARE TECH
MIDELWARE TECHMIDELWARE TECH
MIDELWARE TECH
 
CORBA.ppt
CORBA.pptCORBA.ppt
CORBA.ppt
 
Corba in power system
Corba in power systemCorba in power system
Corba in power system
 
Middleware1
Middleware1Middleware1
Middleware1
 
Unit iv
Unit ivUnit iv
Unit iv
 
Inter ORB Protocol and Object Persistence & Object Serialization
Inter ORB Protocol and Object Persistence & Object SerializationInter ORB Protocol and Object Persistence & Object Serialization
Inter ORB Protocol and Object Persistence & Object Serialization
 
05 rpc-case studies
05 rpc-case studies05 rpc-case studies
05 rpc-case studies
 
Rpc Case Studies (Distributed computing)
Rpc Case Studies (Distributed computing)Rpc Case Studies (Distributed computing)
Rpc Case Studies (Distributed computing)
 
Distributed System by Pratik Tambekar
Distributed System by Pratik TambekarDistributed System by Pratik Tambekar
Distributed System by Pratik Tambekar
 
Distributed systems corba remote connection
Distributed systems corba remote connectionDistributed systems corba remote connection
Distributed systems corba remote connection
 
Corba model ppt
Corba model pptCorba model ppt
Corba model ppt
 
Lecture4 corba
Lecture4   corbaLecture4   corba
Lecture4 corba
 
Remote Method Innovation (RMI) In JAVA
Remote Method Innovation (RMI) In JAVARemote Method Innovation (RMI) In JAVA
Remote Method Innovation (RMI) In JAVA
 

Último

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Angeliki Cooney
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...apidays
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdfSandro Moreira
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontologyjohnbeverley2021
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 

Último (20)

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 

Corba

  • 1. CORBA { Common Object Request Broker Architecture Vishal Singh (205111043) Sanjeev Singh (205111046)
  • 2.   The Common Object Request Broker Architecture is a Standard defined by the object management group that Enables software components written in multiple computer languages and running on multiple computers to work together. CORBA
  • 3.  Fig - The global architecture of CORBA. Overview
  • 4. • ORB is core of any COBRA Distributed System. • ORB is responsible for enabling communication Between objects and their clients while hiding issues related to distribution and heterogeneity.   Object Request Broker
  • 5. CORBA use the remote object model in which  the implementation of an object reside in the address space of a server. • Objects and services are specified in the CORBA Interface Definition Language(IDL). • Object Model
  • 6.  Fig - The general organization of a CORBA system. Object Model
  • 7. Service 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 Corba Services Persistence Relationship Facilities for expressing relationships between objects Security Mechanisms for secure channels, authorization, and auditing Time  Facilities for persistently storing objects Provides the current time within specified error margins Fig - Overview of CORBA services.
  • 8. Communication Object Invocation Models Request type Failure semantics Description Synchronous 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  At-most-once At-most-once Caller continues immediately and can later block until response is delivered Fig - Invocation models supported in CORBA.
  • 9. 1. Event and Notification Services Fig - The logical organization of suppliers and  consumers of events, following the push-style model. 
  • 10. 2. Event and Notification Services  Fig - The pull-style model for event delivery in CORBA.
  • 11. 1.  Fig - CORBA's callback model for asynchronous method invocation. Messaging
  • 12. 2. Messaging  Fig - CORBA'S polling model for asynchronous method invocation.
  • 13. Message type Originator Description Request Client Contains an invocation request Reply Server Contains the response to an invocation LocateRequest Client Contains a request on the exact location of an object LocateReply Server Contains location information on an object CancelRequest Client Indicates client no longer expects a reply CloseConnection Both Indication that connection will be closed Interoperability MessageError Contains information on an error Fragment  Both Both Part (fragment) of a larger message Fig - GIOP message types.
  • 15.     IDL specification are compiled into a proxy Marshall invocation info Un-Marshall corresponding reply Proxies are just to connect to underlying ORB Client Process
  • 16.  It is a mechanism by which an invocation can intercepted on its way from client to server and adopt it  Request level interceptor Message level interceptor  Interceptor
  • 17. Logical placement of interceptor
  • 18.      It is just like a wrapper Responsible for providing consistent image of what an object is It provides mechanism such that client can see that program is just an object POA are responsible to show server-side code as object to client Server side code need not to worry about underlying ORB Object adapter
  • 19. Portable object adapter a) POA supporting multiple servant b) POA supporting single servant
  • 20.      To facilitate agent based system CORBA adopts a model in which different kind of system can co-operate CORBA provides standard interface that has to be followed Agent system - creation, execution, transfer, termination Each agent system has its profile Region, finder Agents
  • 21. CORBA's overall model of agents, agent systems, and regions
  • 23.      How objects are referenced? Client side object reference and ORB object reference are different A reference of X can not be passed to Y because of address space So marshaling is used by underlying ORB for this ORB has language independent reference called IOR ( interoperable object reference) Object reference
  • 24. The organization of an IOR with specific information for IIOP
  • 25.        Starts with repository identifier Most important part is tagged profile Profile ID Host field Port field Object key components IOR details
  • 26.   Binding request is first sent to implementation repository It acts as a registry by which reference objects can be located and activated Indirect binding
  • 28. CORBA naming service(char based)    Offered by CORBA to lookup object reference using characterbased names (id,kind) pair where both are string (vishal,dir) as an example
  • 29.     Object groups - replicate objects into object groups Identical copies of same object Replication is transparent to client But how object group are referenced ? Fault tolerance
  • 30. IOGR (interoperable object group reference)    IOGR contains multiple reference to different objects (of same type) IOR contains multiple reference to same object ORB binds IOGR to one of the replicas
  • 31. A possible organization of an IOGR for an object group having a primary and backups.
  • 33. Security The general organization for secure object invocation in CORBA.
  • 34.     Application level objects are unaware of security mechanism At binding time ORB decides which security service is to be used at client side Selection of service is done by security policy Security policies are done by policy objects Secure object invocation
  • 35.  1. 2. Two different interceptors Access control interceptor- checks the rights Secure invocation interceptor- message protection and it is able to encrypt the request and response also Replaceable security service
  • 36. The role of security interceptors in CORBA.