![[AIX]](ngaix.gif)
![[Windows]](ngwin.gif)
![[Linux]](nglinux.gif)
DEFINE CHANNEL (MQTT)
使用 DEFINE CHANNEL 指令時遙測通道的語法圖。
使用 MQSC 指令
如需如何使用 MQSC 指令的相關資訊,請參閱 使用 MQSC 指令執行本端管理作業。
使用注意事項
當您發出此指令時,遙測 (MQXR) 服務必須在執行中。 如需如何啟動遙測 (MQXR) 服務的指示,請參閱 在 Linux® 上配置遙測的佇列管理程式 或 在 Windows 上配置遙測的佇列管理程式 。
DEFINE CHANNEL 的參數說明 (MQTT)
- (通道名稱)
新通道定義的名稱。
- BACKLOG (integer)
這是遙測通道在任何時刻可支援的未完成連線要求數目。 達到待辦事項限制時,將會拒絕嘗試連接的任何進一步的用戶端連線,直到已處理現行待辦事項為止。
- CHLTYPE
通道類型。 MQTT (遙測) 通道。
- JAASCFG (string)
JAAS 配置檔中段落的名稱。
- LOCLADDR (ip-addr)
LOCLADDR 是通道的本端通訊位址。 如果您要強制用戶端使用特定 IP 位址,請使用此參數。 LOCLADDR 也有助於強制通道使用 IPv4 或 IPv6 位址 (如果有選項可用) ,或在具有多個網路配接卡的系統上使用特定網路配接卡。
- MCAUSER (string)
訊息通道代理程式使用者 ID。
- 埠 (integer)
遙測 (MQXR) 服務在其上接受用戶端連線的埠號。 遙測通道的預設埠號是 1883; 使用 SSL 保護的遙測通道的預設埠號是 8883。 指定埠值 0 會導致 MQTT 動態配置可用的埠號。
- PROTOCOL
- 通道支援下列通訊協定:
- MQTTV311
- 通道會使用 MQTT 3.1.1 Oasis 標準所定義的通訊協定來接受來自用戶端的連線。 此通訊協定提供的功能幾乎與預先存在的 MQTTV3 通訊協定提供的功能相同。
- MQTTV3
- 通道接受來自用戶端使用 mqtt.org中 MQTT V3.1 通訊協定規格 的連線。
- HTTP
- 通道接受頁面的 HTTP 要求,或 MQ Telemetry的 WebSockets 連線。
若要接受來自使用不同通訊協定之用戶端的連線,請以逗點定界清單指定可接受的值。 例如,如果您指定 MQTTV3,HTTP ,則通道會接受使用 MQTTV3 或 HTTP 來自用戶端的連線。 如果您未指定任何用戶端通訊協定,通道會使用任何支援的通訊協定來接受來自用戶端的連線。
如果您是使用 IBM MQ 8.0.0 Fix Pack 3 或更新版本,且您的配置包括前次在舊版產品中修改的 MQTT 通道,則必須明確變更通訊協定設定,以提示通道使用 MQTTV311 選項。 即使通道未指定任何用戶端通訊協定,也是如此,因為配置通道時會儲存與通道搭配使用的特定通訊協定,且舊版產品沒有 MQTTV311 選項的狀態提示。 若要提示處於此狀態的通道使用 MQTTV311 選項,請明確新增該選項,然後儲存變更。 通道定義現在知道該選項。 如果您隨後再次變更設定,且未指定任何用戶端通訊協定,則 MQTTV311 選項仍包含在受支援通訊協定的儲存清單中。
- SSLCAUTH
- 定義 IBM MQ 是否需要來自 TLS 用戶端的憑證。 通道的起始端會作為 TLS 用戶端,因此此參數會套用至接收起始流程 (作為 TLS 伺服器) 的通道結尾。
- Never
- IBM MQ 絕不會從 TLS 用戶端要求憑證。
- 必要
- IBM MQ 需要並驗證來自 TLS 用戶端的憑證。
- 選用項目
- IBM MQ 可讓 TLS 用戶端決定是否提供憑證。 如果用戶端傳送憑證,則會正常驗證此憑證的內容。
- SSLCIPH(字串)
當 SSLCIPH 與遙測通道搭配使用時,它表示「TLS 密碼組合」。 TLS 密碼組合是執行遙測 (MQXR) 服務的 JVM 所支援的密碼組合。 如果 SSLCIPH 參數空白,則不會嘗試在通道上使用 TLS。
- SSLKEYP (string)
TLS 金鑰儲存庫的通行詞組。
- SSLKEYR (string)
TLS 金鑰儲存庫檔案的完整路徑名稱,數位憑證及其相關聯私密金鑰的儲存庫。 如果未指定金鑰檔,則不使用 TLS。
字串長度上限為 256 個字元;在 AIX® 和 Linux上,名稱的格式為 pathname/keyfile。
在 Windows上,名稱的格式為 pathname\keyfile。
- TRPTYPE
(string)
- 要使用的傳輸通訊協定:
- TCP
- TCP/IP。
- USECLTID
決定是否要使用新連線的 MQTT 用戶端 ID 作為該連線的 IBM MQ 使用者 ID。 如果已指定此內容,則會忽略用戶端提供的使用者名稱。