CORBA communication protocols (GIOP/IIOP)

The CORBA architecture provides the General Inter-ORB Protocol (GIOP) to define message formats between objects in a distributed environment. The Internet Inter-ORB Protocol (IIOP) is an implementation of GIOP.

GIOP includes a Common Data Representation (CDR) that resolves differences between native hardware architectures within such an environment. Different hardware architectures can have variations in byte ordering and alignment for multi-byte data types within the address space. GIOP provides the means for resolving the differences across platforms. GIOP supports a number of simple data types, compound data types, object references, exceptions, and other features, depending upon the version of the specification (as shown in the following table). Nevertheless, early ORBs can encounter interoperability problems related to byte ordering.

If you suspect a GIOP-related interoperability problem, it is reasonably safe to adopt GIOP Version 1.0, as all of the major ORBs support GIOP at this level. WebSphere Application Server supports client ORBs that use GIOP Version 1.0, 1.1, or 1.2. The WebSphere ORB accepts fragmented GIOP messages, but it does not send fragmented messages.

GIOP feature Data types GIOP version WebSphere ORB
1.0 1.1 1.2 Java C++
Simple data types octet, char, short, unsigned short, long, unsigned long long long, unsigned long long, float, double, boolean, string Yes Yes Yes Yes Yes
long double Yes Yes Yes - -
fixed Yes Yes Yes - -
wchar, wstring - Yes Yes (Footnote 1: There are differences in the wchar and wstring encoding between GIOP 1.1 and 1.2, which creates interoperability challenges. For detailed information, review the portion of the CORBA specification relating to GIOP and CDR.) 1.1 1.1, 1.2
enum Yes Yes Yes Yes Yes
Compound data types struct, union, array, sequence Yes Yes Yes Yes Yes
valuetype - - Yes Yes Yes
CORBA::Object Yes Yes Yes Yes Yes
any Yes Yes Yes Yes Yes
context Yes Yes Yes Yes Yes
exception Yes Yes Yes Yes Yes
GIOP Message types Request, Reply, CancelRequest, LocateRequest, LocateReply, CloseConnection, MessageError Yes Yes Yes Yes Yes
Fragment Yes Yes Yes Yes Yes
Bi-directional - - - Yes - -



Related concepts
CORBA programming model
Resolving unsupported CORBA data types



Searchable topic ID:   ccor_iogiop
Last updated: Jun 21, 2007 8:07:48 PM CDT    WebSphere Business Integration Server Foundation, Version 5.0.2
http://publib.boulder.ibm.com/infocenter/wasinfo/index.jsp?topic=/com.ibm.wasee.doc/info/ee/corba/concepts/ccor_iogiop.html

Library | Support | Terms of Use | Feedback