Channels

Queues hold messages; channels move them between queue managers and bring remote clients to the server. A channel is not a queue—it is a configured path with a name, type, partner address, and behavior under failure. Enterprise MQ diagrams are dotted with SDR, RCVR, CLUSSDR, and SVRCONN lines. This overview explains message channel types, MQI client channels, how channels bind to transmission queues, sequence numbers and retry, cluster channels, and the attributes operators tune first. Channel-specific property tutorials follow later in this curriculum.

Message Channel Types

Sender (SDR) initiates outbound delivery from an XMITQ. Receiver (RCVR) accepts inbound partner connections. Server (SERVER) and requester (RQSTR) pair for pull-oriented designs where the side with messages uses requester to ask the server to start sender. Cluster sender (CLUSSDR) and cluster receiver (CLUSRCVR) are specialized for cluster auto-routing. Each type has a CHLTYPE in MQSC; mismatched pairs on two queue managers prevent binding.

Common CHLTYPE values
CHLTYPERuns onRole
SDRSource QM (has XMITQ)Sends messages outbound
RCVRTarget QMReceives inbound messages
SVRCONNQueue manager serverClient MQI connections
CLNTCONNClient definitionClient-side partner def
CLUSSDR / CLUSRCVRCluster membersCluster inter-QM traffic

Explainer: Binding and Sequence Numbers

When a sender and receiver channel connect successfully, they are “bound.” Messages flow in order per channel for that path; sequence numbers detect gaps after network blips. If sequence mismatch occurs, the channel may stop until RESET CHANNEL or administrative fix—never ignore AMQ messages about sequence errors in production. BATCHSZ and BATCHINT trade latency for throughput by grouping messages.

SVRCONN and Client Connectivity

Remote Java, .NET, and C applications use client mode: they connect to a queue manager through an SVRCONN channel defined on the server. The client channel table (CCDT) or MQSERVER variable names the channel and connection. MCAUSER on SVRCONN can set the OS user for authority checking. TLS and CHLAUTH protect SVRCONN the same as message channels.

Channels and XMITQ

DEFINE CHANNEL(CH1) CHLTYPE(SDR) XMITQ(QM2.XMIT) CONNAME(...) ties the channel to one transmission queue. All remote queues using that XMITQ share the channel path unless you define multiple channels and routes. DISPLAY CHSTATUS shows whether the channel is RUNNING, STOPPED, or RETRY and how many messages are outstanding.

Retry and Housekeeping Attributes

SHORTTMR, LONGTMR, SHORTRTY, and LONGRTY control retry timing. HBINT and KAINT implement heartbeats to detect dead TCP. DISCINT influences disconnect intervals. SSLCIPH and SSLCAUTH secure the transport. Beginners should learn DISPLAY CHSTATUS before tuning—changing retry without understanding partner outage prolongs RETRY storms.

Tutorial: Define SDR and RCVR Pair

shell
1
2
3
4
5
6
7
8
9
10
11
12
* On QM1 (sender side) DEFINE QLOCAL('QM2.XMIT') REPLACE DEFINE CHANNEL('QM1.TO.QM2') CHLTYPE(SDR) TRPTYPE(TCP) + CONNAME('qm2.example.com(1414)') XMITQ('QM2.XMIT') REPLACE START CHANNEL('QM1.TO.QM2') * On QM2 (receiver side) DEFINE CHANNEL('QM1.TO.QM2') CHLTYPE(RCVR) TRPTYPE(TCP) REPLACE DEFINE LISTENER('LISTENER.TCP') TRPTYPE(TCP) PORT(1414) REPLACE START LISTENER('LISTENER.TCP') DISPLAY CHSTATUS('QM1.TO.QM2') ALL

Explain Like I'm Five: Channels

A channel is a designated road between two post offices. Trucks (messages) only use that road when the gate opens (channel started) and both ends agree on the same road name (matching channel names).

Practice Exercises

Exercise 1

SDR RUNNING on QM1, RCVR STOPPED on QM2. Where do messages accumulate?

Exercise 2

List differences between SDR and SVRCONN.

Exercise 3

Channel in RETRY—five checks in order.

Frequently Asked Questions

Frequently Asked Questions

Test Your Knowledge

Test Your Knowledge

1. SDR channel reads messages from:

  • Transmission queue
  • Topic object
  • DLQ only
  • CCDT file

2. Matching channel names are required on:

  • Both queue managers in a pair
  • Only the client
  • Only z/OS
  • DNS server

3. SVRCONN is for:

  • Remote MQ clients
  • Only batch JCL
  • Only intra-QM routing
  • Log replication

4. CONNAME specifies:

  • Partner host and port
  • Message format
  • Queue depth
  • Syncpoint ID
Published
Read time15 min
AuthorMainframeMaster
Verified: IBM MQ 9.3 documentation