[V8.0.0.4 Oct 2015][Windows][UNIX][Linux]

AMQP 1.0 support

AMQP channels provide a level of support for AMQP 1.0-compliant applications.

AMQP channels support a subset of the AMQP 1.0 protocol. You can connect either MQ Light clients or other AMQP 1.0 compatible clients to an IBM® MQ AMQP channel. To use all of the messaging features supported by AMQP channels, you must correctly set the value of certain AMQP 1.0 fields.

This information outlines the way AMQP fields must be formatted and lists the features of the AMQP 1.0 specification that are not supported by AMQP channels.

The following features of the AMQP 1.0 specification are either not supported or are limited in their use:

Link names

AMQP channels expect the name of an AMQP link to follow one of three formats:
  • A plain topic (for publishing and subscribing)
    • Publishing messages: a plain topic string (for example, a link name of "/sports/football") causes a message to be published on the /sports/football topic.
    • Subscribing to a topic to receive messages: a plain topic string (for example, a link name of "/sports/football" causes a subscription to be defined on the /sports/football topic.
  • A private verbose topic (for subscribing)
    • A verbose topic string that describes a private subscription in the form: "private:<topic string>" (for example: "private:/sports/football"). The behavior is identical to a plain topic string. The private declaration differentiates a subscription specific to a particular AMQP client from a subscription shared between clients.
  • A shared verbose topic (for subscribing)
    • A verbose topic string that describes a shared subscription in the form: "share:<share name>:<topic string>" (for example: "share:bbc:/sports/football").
For more information about the way AMQP messages are mapped to and from IBM MQ messages see Mapping AMQP fields onto IBM MQ fields (incoming messages).

Maximum lengths for topic strings, share names, and client IDs

The topic string, share name, and client ID must be contained within 10237 bytes. In addition, the maximum length of a client ID is 256 characters.

These maximum lengths mean that you can have one of the following:
  • a very long topic string, provided that the share name is short
  • a long share name, but a short topic string

Container IDs

AMQP channels expect the container-id of an AMQP Open performative to contain a unique MQ Light client ID. The maximum length of an MQ Light client ID is 256 characters and the ID can contain alphanumeric characters, percent sign (%), slash (/), period (.) and underscore (_).

Sessions

AMQP channels support only a single AMQP session. An AMQP client that attempts to create more than one AMQP session receives an error message and is disconnected from the channel.

Transactions

AMQP channels do not support AMQP transactions. An AMQP attach frame that attempts to coordinate a new transaction or an AMQP transfer frame that attempts to declare a new transaction is rejected with an error message.

Delivery state

AMQP channels only support a delivery state for disposition frames of Accepted.