Research Issues in CORBA What keeps CORBA people

Research Issues in CORBA What keeps CORBA people awake at Night! Peter de Jong H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

Contents h CORBA Introduction h Issues 0 1. Language Heterogeneity 0 2. Components 0 3. Transports 0 4. Application Coordination 0 5. Reuse of Services 0 6. Interoperability 0 7. Interworking 0 8. Tracking Computation 0 9. Tracking Resources 0 10. Scale H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

Software Bus H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

CORBA 2. 0 Architecture Object Services Naming Trading Transactions Security Interface Repository Object Adapter Client DII H Stub Server O R B RPC IIOP-RPC DCE-RPC IDL Compiler O R B Skeleton DSI Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

OMG IDL h C++ like h Mappings to multiple languages 0 C 0 C++ 0 Java 0 Ada 0 Small. Talk 0 Cobol h ILU (Xerox Parc) 0 Common Lisp 0 Python H h Basic types 0 long, unsigned long 0 short, unsigned short 0 long, unsigned long 0 fixed 0 float, double, long double 0 char, wchar 0 boolean 0 octet 0 any h Constructed types 0 union, enum, structure 0 sequence, string, array, Research Issues in CORBA Peter de Jong Hewlett-Packard wstring Usenix 8/12/97

IDL Operations and Inheritance h h h Operation Attribute Return value Operation Parameter direction User exception H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

IIOP Transport Client ORB Locator ORB Server ORB Type (hint) Host: port Object_key Java ORB H Object Reference (IOR) IIOP Wire Format C++ ORB Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

Object References Client Server Object = H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

Issue 1 - Language Heterogeneity h IDL to Java Mapping 0 Multiple Inheritance 4 Class slot - corba object class 4 Rest are interfaces 0 Out parameters 4 Holder classes 0 Any 4 Helper classes 0 Exceptions 4 java exceptions 0 Object Reference 4 Java class reference H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

Binary Compatibility in Java Mapping H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

Other Language Issues h Pseudo Code (Almost IDL) 0 Local Objects (ORB API's) 0 Native Language Constructs h Local By-Pass (inproc) h Direct to IDL 0 Java to IDL rather than IDL to Java h Objects by Value 0 Object state (Not described in IDL) 0 Migrating implementations h Scripting Languages 0 Language specification rather than IDL specification H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

Issue 2 - Components h Component CORBA 0 Absorb Java Soft RMI into CORBA 4 4 Java to IDL mapping (OMG RFP) Objects-by-Value (OMG Submissions being merged) Distributed Garbage Collection Migration of object implementation (Information in java serialization, not in IIOP) 0 Component RFP 4 4 4 Component identity Properties Interfaces for component-events Introspection Mapping to Java Beans h Related Object Services 0 IIOP Firewall (OMG RFP) 0 Scripting Language (OMG RFP) 4 Java Script 0 Object locality constrains (getting rid of PIDL) 0 Multiple interfaces H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

Issue 3 - Transports h Type 0 RPC 0 Async Message 0 Streams 0 Multi-cast h Quality 0 Load Balance 0 Highly Available 0 Transactional 0 Secure 0 Real-time 0 Embedded H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

The Next IIOP? h IIOP 2. 0? (Proposals by Bill Janssen, Xerox Parc) 0 Minimize information transfer via Caching 0 Efficient type negotiation 0 Port Mapper 0 Transfer Syntax changes (alignment, any) h MUX (http: //www. w 3. org. pub/Protocols/MUX) 0 Multiple protocols multiplexed over the same connection 4 IIOP, HTTP run over the socket built over protocol 0 128 sessions per TCP/IP connection 0 MUX handles fragmentation for all protocols h HTTP-NG (http: //www. w 3. org. pub//Protocols/HTTP-NG) 0 Possible future replacement for IIOP H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

Issue 4 - Application Coordination H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

Issue 5 - Reuse of Services H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

Issue 6 - Interoperability/Portability h Interoperability (CORBA 2. 0) 0 IIOP (Compliance point) 0 Transactions 0 Security 4 General Architecture 4 Kerberos (compliance point ) 4 SSL h Portability 0 Pseudo Objects 4 Portable Object Adaptor 0 Language Mappings h Research Problems 0 Implementations more detailed then specs 4 Revision Task Forces 4 Compliance tests written by XOPEN 4 Proposals for Semantic specifications 0 Balance between implementation freedom and conformance 4 Special purpose ORBs h Profiles and Conformance 0 Embedded ORBs H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

Issue 7 - Interworking H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

Issue 8 - Tracking Computation h Distributed debugging h Distributed profiling h Distributed Administration 0 Bootstrap 0 Install and Configure 4 Object Locator, Persistent servers 4 CORBA object services servers - Naming, Event, Trading, Security, Transactions 0 Discover distributed executing objects 0 Monitor execution 0 Start, Stop, Modify object operation H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

Issue 9 - Tracking Resources h Distributed Garbage Collection h Distributed Scheduling 0 Real-Time constraints 0 Parallel searching h Agents 0 Copy and transmission constraints 0 Killing h Error handling 0 At most once semantics 0 Network partitioning 4 Computation continuing in one partition 4 Error recovery in the other h Versioning H Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97

Issue 10 - Scale h Integration of all Services 0 Security, Transactions, Fault tolerant, Real-Time, Persistent storage, Messaging, . . . 0 One Object distributed system which does everything well h Massively Distributed Systems 0 Integrate with the organizational Applications 0 Track organizational change h Goal of Object Bus - Integration vs execution 0 Integration 4 Legacy applications, multiple - object models, standards, OS, languages 0 Execution H 4 High performance, secure distributed computation Research Issues in CORBA Peter de Jong Hewlett-Packard Usenix 8/12/97
- Slides: 21