Sender Channels

The sender channel (CHLTYPE SDR) is the outbound engine of distributed IBM MQ. When routing decides a message belongs on another queue manager, the local queue manager places it on a transmission queue; the sender channel wakes up, dials CONNAME, and pushes batches to the partner receiver. Every hub-and-spoke integration, every QREMOTE target, and every cluster outbound path ultimately depends on senders configured correctly. This page goes deeper than the sender/receiver concept overview: DEFINE and ALTER SDR attributes, XMITQ binding, automatic versus manual start, batching and MCAUSER, monitoring CHSTATUS, and distinguishing SDR from CLUSSDR for beginners building their first cross-queue-manager route.

Role of the Sender in the Message Path

Application MQPUT to a local queue stays on-box. MQPUT through QREMOTE or cluster resolution may internally target an XMITQ. The sender is the only component that reads that XMITQ for inter-manager transfer over message channels. If SDR is misconfigured, depth on XMITQ grows while applications believe they successfully put—downstream systems see nothing. Monitoring pairs XMITQ CURDEPTH with CHSTATUS for the matching SDR name.

Essential SDR attributes explained
AttributePurpose
CHLTYPE(SDR)Identifies sender message channel
XMITQTransmission queue to read
CONNAMEhost(port) of partner listener
TRPTYPE(TCP)TCP transport (typical)
MCAUSERUser context at receiver for authority
BATCHSZ / BATCHLIMBatch size tuning
SHORTRTY / SHORTTMRRetry after failure

Defining a Sender Channel

shell
1
2
3
4
5
6
7
8
DEFINE QLOCAL('XMIT.TO.LONDON') USAGE(XMITQ) MAXDEPTH(500000) DEFINE CHANNEL('PARIS.TO.LONDON') CHLTYPE(SDR) TRPTYPE(TCP) + CONNAME('london.mq.corp(1414)') XMITQ('XMIT.TO.LONDON') + MCAUSER('mqm') BATCHSZ(50) HBINT(300) + SHORTRTY(10) SHORTTMR(30) DEFINE QREMOTE('ORDERS.LON') RNAME('ORDERS.IN') RQMNAME('QM_LONDON') + XMITQ('XMIT.TO.LONDON') * Put to ORDERS.LON routes to XMITQ; SDR forwards

The channel name PARIS.TO.LONDON must match the RCVR definition name on QM_LONDON. CONNAME must reach a running LISTENER on London. XMITQ name is arbitrary but must be unique per sender path in most designs.

Starting and Stopping Senders

START CHANNEL('PARIS.TO.LONDON') creates an instance if none exists. Automatic triggering starts senders when XMITQ depth transitions from zero—behavior depends on queue manager and platform settings. STOP CHANNEL ends the instance; messages remain on XMITQ. PING CHANNEL tests connectivity without requiring application messages. RESET CHANNEL clears instance state when coordinated with partner—use cautiously.

Explainer: Outbound Mail Truck

The transmission queue is the loading dock pile. The sender channel is the truck that only drives to one partner warehouse (CONNAME). If the truck never leaves, the pile grows—that is your alert. The truck does not decide business logic; it only hauls what routing placed on the dock.

MCAUSER and Security

MCAUSER on SDR tells the receiver which user ID to use when putting messages to target queues. Mismatch with OAM on the target causes messages to land on DLQ or channel errors. Prefer dedicated service IDs per route. TLS and CHLAUTH on both ends authenticate the connection before MCAUSER applies at the protocol layer.

Batching and Performance

BATCHSZ limits messages per batch; BATCHLIM limits bytes. Larger batches improve throughput on high-latency links; smaller batches reduce recovery work after failure (see sequence numbers). HBINT and DISCINT tune keepalive and idle disconnect. Tune on representative message sizes, not empty tests.

SDR vs CLUSSDR

CLUSSDR supports cluster repository traffic and inter-member forwarding. Point-to-point integrations between two named queue managers use SDR/RCVR. Do not point application QREMOTE at cluster channels without understanding cluster workload—use the cluster queues tutorial for application puts.

Operations Checklist

  1. DISPLAY CHSTATUS SDR — STATUS, XMITQ depth correlation.
  2. DISPLAY QLOCAL(xmitq) CURDEPTH — backlog age.
  3. Verify CONNAME DNS and firewall rules.
  4. Partner RCVR name and listener port match.
  5. Review LASTCHLERR on RETRY.

Explain Like I'm Five: Sender Channels

The sender channel is the delivery van that takes packages from your house's outgoing pile to your friend's house—you need the right address on the van door (CONNAME).

Practice Exercises

Exercise 1

Write full MQSC for SDR, XMITQ, and QREMOTE for one remote application queue.

Exercise 2

XMITQ depth 10,000, SDR INACTIVE—is that always an error?

Exercise 3

Compare one SDR per partner versus shared XMITQ designs.

Frequently Asked Questions

Frequently Asked Questions

Test Your Knowledge

Test Your Knowledge

1. Sender channel CHLTYPE is:

  • SDR
  • RCVR
  • SVRCONN
  • TOPIC

2. Sender reads messages from:

  • XMITQ
  • DLQ only
  • INITQ only
  • Topic tree

3. CONNAME on SDR specifies:

  • Partner host and port
  • Local queue name
  • COBOL program
  • JCL class

4. Applications start sender channels by:

  • They do not—QM or operator does
  • MQOPEN SDR
  • SQL
  • FTP
Published
Read time16 min
AuthorMainframeMaster
Verified: IBM MQ 9.3 documentation