Patent ID: 8813092

Claim:
A non-transient computer-readable storage medium storing computer program code that, when loaded into a computer system and executed thereon, causes the computer to: (a) compile an interface definition language (IDL) configured to provide a custom inter-orb protocol (custom-IOP); (b) configure a message header for a message in accordance with a specification in the IDL for at least a custom-IOP message header, wherein: (b-1) prior to compiling the IDL, the computer is configured to process a set of indicators defining certain features of the custom-IOP applicable to the custom-IOP message header and applicable to the message sent in accordance with the custom-IOP, the set of indicators comprising at least a first indicator defining the size of the message in the custom-IOP, the size of the message comprising one of a first message size and a second message size; and (b-2) the computer configures the custom-IOP message header to be in compliance with and convey equivalent information to the Common Object Resource Broker Architecture (CORBA) General Inter-Orb (GIOP) protocol and a corresponding respective GIOP message header; and (c) define the custom-IOP message header to replace the corresponding GIOP message header, wherein the custom-IOP message header requires fewer bits overall than the corresponding GIOP message header by changing or eliminating at least a portion of the fields in the corresponding GIOP message header, including at least: (c-1) eliminating a 4 byte (32 bit) GIOP magic number identifier field; (c-2) replacing an eight (8) bit GIOP flags field with a custom-IOP flags field having four (4) bits, the four bits comprising a one (1) bit in-use indicator field, a one (1) bit endian indicator field, a one (1) bit service context indicator field, and a one (1) bit spare field; (c-3) replacing an eight (8) bit GIOP message type field with a custom-IOP message type field having 4 bits; and (c-3) reducing the size of a GIOP message length field from four (4) bytes to two (2) bytes.