Your SlideShare is downloading. ×
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Corba
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Corba

1,653

Published on

CORBA architecture and details …

CORBA architecture and details
distributed computing

Published in: Technology, Education
0 Comments
4 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,653
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
104
Comments
0
Likes
4
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 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.
  • 14. Process { Client- simple one Server
  • 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
  • 22.   Object reference Character based Naming
  • 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
  • 27. Indirect binding example
  • 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.
  • 32. An example architecture
  • 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.

×