Multicast topic topology issues
Use these examples to understand why certain IBM® MQ Multicast topic topologies are not recommended.
As was mentioned in IBM MQ Multicast topic topology, IBM MQ Multicast support requires that each subtree has its own multicast group and data stream within the total hierarchy. Do not use a different multicast group address for a subtree and its parent.
The classful network IP addressing scheme has designated
address space for multicast address. The full multicast range of IP address is
224.0.0.0 to 239.255.255.255, but some of these addresses are
reserved. For a list of reserved address either contact your system administrator or see https://www.iana.org/assignments/multicast-addresses for
more information. It is recommended that you use the locally scoped multicast address in the range
of 239.0.0.0 to 239.255.255.255.
Recommended multicast topic topology
DEF COMMINFO(MC1) GRPADDR(
227.20.133.1)
DEF COMMINFO(MC2) GRPADDR(227.20.133.2)
where 227.20.133.1 and 227.20.133.2 are valid multicast addresses.
DEFINE TOPIC(FRUIT) TOPICSTRING('Price/FRUIT') MCAST(ENABLED) COMMINFO(MC1)
DEFINE TOPIC(FISH) TOPICSTRING('Price/FISH') MCAST(ENABLED) COMMINFO(MC2)

Each multicast communication information (COMMINFO) object represents a different stream of data because their group addresses are different. In this example, the topic FRUIT is defined to use COMMINFO object MC1 , and the topic FISH is defined to use COMMINFO object MC2 .
IBM MQ Multicast has a 255 character limit for topic strings. This limitation means that care must be taken with the names of nodes and leaf-nodes within the tree; if the names of nodes and leaf-nodes are too long, the topic string might exceed 255 characters and return the MQRC_TOPIC_STRING_ERROR reason code.
Non-recommended multicast topic topology
DEF COMMINFO(MC1) GRPADDR(227.20.133.1
)
DEF COMMINFO(MC2) GRPADDR(227.20.133.2)
DEF COMMINFO(MC3) GRPADDR(227.20.133.3)
where 227.20.133.1,
227.20.133.2, and
227.20.133.3 are valid multicast addresses. DEFINE TOPIC(FRUIT) TOPICSTRING('Price/FRUIT') MCAST(ENABLED) COMMINFO(MC1)
DEFINE TOPIC(FISH) TOPICSTRING('Price/FISH') MCAST(ENABLED) COMMINFO(MC2)
DEFINE TOPIC(ORANGES) TOPICSTRING('Price/FRUIT/ORANGES') MCAST(ENABLED) COMMINFO(MC3)

While this kind of multicast topology is possible to create, it is not recommended because applications might not receive the data that they were expecting.
An application subscribing on 'Price/FRUIT/#' receives multicast transmission on
the COMMINFO MC1 group address. The application expects to receive publications on
all topics at or below that point in the topic tree.
However, the messages created by an application publishing on
'Price/FRUIT/ORANGES/Small' are not received by the subscriber because the messages
are sent on the group address of COMMINFO MC3.