Client Support

An event broker offers clients on the end of an AMQP connection the same degree of support as other types of event broker clients except for the limitations or restrictions noted in the following table. For information about conformance with respect to the AMQP 1.0 specification, see AMQP 1.0 Protocol Conformance.

 

Solace Event Broker Feature Level of Client Support for AMQP
Access Control Lists (ACLs) Special rules with respect to the reply-to #P2P topic prefix reserved by Solace for each individual client are of limited use for clients, which have no means to learn their assigned #P2P reply-to prefix.
Guaranteed Messaging

The event broker supports client publishing and subscribing with the following exceptions:

  • When Guaranteed Messaging is not enabled, clients will receive a close frame with an indication of amqp:not-implemented and appropriate descriptive text.
  • Endpoint creation: Clients create arbitrary durable queues and topic endpoints when they bind as consumers, or bind to any existing queue or topic endpoint created through some other means, and create temporary queue and topic endponts.
  • Queue subscription management: Clients cannot add or remove subscriptions on queues they bind to.
  • Transactions: Both local and XA transactional messaging are not supported.
  • DMQ eligible: All messages published by clients are treated as if DMQE (Dead Message Queue Eligible) is true.
  • Retransmission of an unacknowledged message sent to a client will only happen on client reconnect, and never due to a retransmit timeout as done for an SMF client.
Direct Messaging

The event broker supports client direct publishing, but not subscribing.

TCP Transport The event broker supports AMQP over TCP.
WebSocket Transport WebSocket transport is not supported for AMQP.
Authentication

AMQP uses the Simple Authentication and Security Layer (SASL) for authentication. The event broker supports ANONYMOUS, PLAIN, and EXTERNAL SASL mechanisms.

  • The ANONYMOUS mechanism must be used for the Solace basic authentication type of none.
  • The PLAIN mechanism must be used for Solace basic authentication types of internal, ldap, or radius. In this case the authcid and password fields of the sasl.init frame are used to establish identity.
  • The EXTERNAL mechanism must be used for Solace client-certificate authentication. In this case the identity is established through the fields of the provided client certificate in the normal manner.

If an client attempts to connect without a SASL exchange, and thus not provide any identity, the event broker will accept the connection only in the basic/none case, and assign the client to the “default” client-username.

Kerberos is not supported.

Compression Compressed client connections are not supported.
Deliver-To-One The Deliver-To-One feature is not supported for AMQP.
Eliding All messages published by a client are treated as non-eligible for eliding.
Keepalive The event broker uses the client-profile TCP keepalives on the connection. The event broker never imposes an AMQP keepalive requirement on the client, although it respects AMQP keepalives requested by the client.
Sequenced-Topics Sequenced-topics are not supported for clients.
PubSub+ Cache PubSub+ Cache query functionality is provided by Solace APIs.
Subscription Managers Clients cannot manage subscriptions on behalf of other clients.
SSL/TLS The event broker supports TLS negotiation by the broker exposing a separate, encrypted-only port with the expectation that every connection starts with a TLS exchange. After this, the client and broker continue with the normal AMQP frame exchange.
JMS Message Types StreamMessage and MapMessage are not supported.