Control the size of multicast messages

Use this information to learn about the IBM MQ message format, and reduce the size of IBM MQ messages.

IBM MQ messages have a number of attributes associated with them which are contained in the message descriptor. For small messages, these attributes might represent most of the data traffic and can have a significant detrimental effect on the transmission rate. IBM MQ Multicast enables the user to configure which, if any, of these attributes are transmitted along with the message.

The presence of message attributes, other than topic string, depends on whether the COMMINFO object states that they must be sent or not. If an attribute is not transmitted, the receiving application applies a default value. The default MQMD values are not necessarily the same as the MQMD_DEFAULT value, and are described in Table 1.

The COMMINFO object contains the MCPROP attribute which controls how many of the MQMD fields and user properties flow with the message. By setting the value of this attribute to an appropriate level, we can control the size of the IBM MQ Multicast messages:

    MCPROP
    The multicast properties control how many of the MQMD properties and user properties flow with the message.

      ALL
      All user properties and all the fields of the MQMD are transmitted.

      REPLY
      Only user properties, and MQMD fields that deal with replying to the messages, are transmitted. These properties are:

      • MsgType
      • MessageId
      • CorrelId
      • ReplyToQ
      • ReplyToQmgr

      USER
      Only the user properties are transmitted.

      NONE
      No user properties or MQMD fields are transmitted.

      COMPAT
      This value causes the transmission of the message to be done in a compatible mode to RMM, which allows some inter-operation with the current XMS applications and IBM Integration Bus RMM applications.
      XMS .NET Multicast messaging (using RMM) is deprecated from Version 9.2 and will be removed in a future release of XMS .NET.


Multicast message attributes

Message attributes can come from various places, such as the MQMD, the fields in the MQRFH2, and message properties.

The following table shows what happens when messages are sent subject to the value of MCPROP (described previously in this section), and the default value used when an attribute is not sent.

Attribute Action when using multicast Default if not transmitted
TopicString Always Included Not applicable
MQMQ StrucId Not transmitted Not applicable
MQMD Version Not transmitted Not applicable
Report Included if not default 0
MsgType Included if not default MQMT_DATAGRAM
Expiry Included if not default 0
Feedback Included if not default 0
Encoding Included if not default MQENC_NORMAL(equiv)
CodedCharSetId Included if not default 1208
Format Included if not default MQRFH2
Priority Included if not default 4
Persistence Included if not default MQPER_NOT_PERSISTENT
MsgId Included if not default Null
CorrelId Included if not default Null
BackoutCount Included if not default 0
ReplyToQ Included if not default Blank
ReplyToQMgr Included if not default Blank
UserIdentifier Included if not default Blank
AccountingToken Included if not default Null
PutAppIType Included if not default MQAT_JAVA
PutAppIName Included if not default Blank
PutDate Included if not default Blank
PutTime Included if not default Blank
ApplOriginData Included if not default Blank
GroupID Excluded Not applicable
MsgSeqNumber Excluded Not applicable
Offset Excluded Not applicable
MsgFlags Excluded Not applicable
OriginalLength Excluded Not applicable
UserProperties Included Not applicable
Parent topic: Administer multicast


Related information