SwiftMQ Documentation

SwiftMQ Documentation

  • Client
  • CE
  • UR
  • HA
  • Javadocs
  • Release Notes

›Swiftlets

SwiftMQ Client

  • Getting Started
  • JNDI Client
  • JMS Client
  • AMQP 1.0 Client
  • Filetransfer Client

SwiftMQ CE

  • Getting Started
  • Installation
  • Upgrade
  • Software Architecture
  • Administration

    • Preconfig
    • CLI Command Line Interface
    • JMX Administration
    • CLI Message Interface
    • routerconfig.xml Watch Dog
    • System Properties

    Swiftlets

    • AMQP Swiftlet
    • Authentication Swiftlet
    • Deploy Swiftlet
    • JMS Swiftlet
    • JNDI Swiftlet
    • Log Swiftlet
    • Management Swiftlet
    • MQTT Swiftlet
    • Network Swiftlet
    • Queue Manager Swiftlet
    • Routing Swiftlet
    • Scheduler Swiftlet
    • Store Swiftlet
    • Streams Swiftlet
    • Threadpool Swiftlet
    • Timer Swiftlet
    • Topic Manager Swiftlet
    • Trace Swiftlet
    • XA Resource Manager Swiftlet

    APIs

    • CLI Admin API

    How To

    • TLS Configuration
    • HTTP Tunneling Configuration
    • Upgrade SwiftMQ Router and Clients

    In Depth

    • Versioning
    • File Store

SwiftMQ UR

  • Getting Started
  • License
  • Installation
  • Upgrade
  • Administration

    • SwiftMQ Explorer

    Swiftlets

    • JDBC Authentication Swiftlet
    • FileCache Swiftlet
    • JMS Application Container Swiftlet
    • JMS XA Swiftlet
    • JDBC Store Swiftlet
    • AMQP Bridge Extension Swiftlet
    • JMS Bridge Extension Swiftlet
    • JavaMail Bridge Extension Swiftlet
    • Replicator Extension Swiftlet

SwiftMQ HA

  • Getting Started
  • License
  • Installation
  • Upgrade
  • HA Introduction
  • HA Deployment
  • Administration
  • JNDI/JMS under HA
  • Routing under HA
  • Advanced Configuration
  • HA Test Suite

Network Swiftlet

The Network Swiftlet is the interface for SwiftMQ Swiftlets to the network. It uses nonblocking I/O and is based on Netty.

Zombi Connection Detection

Zombi connections are those connections that are created but were no data is sent. Since the keepalive has not been started yet, these connections remain open.

Zombi connections can occur if, for example, SwiftMQ is monitored by opening telnet connections on a JMS listener port and also by DoS attacks.

To prevent that zombi connections brings the router down, attribute zombi-connection-timeout can be set to a millisecond value, e.g. 10000 (10 secs). The Network Swiftlet then starts a timer on each connect and disconnects the connection if the protocol has not been initiated when the timer fires.

Configuration

The configuration of the Network Swiftlet is defined within the element

      <swiftlet name="sys$net" .../>

of the router's configuration file. One can use the SwiftMQ Exlorer or CLI for configuration as well. They both save into that file.

Attributes of Element "swiftlet"

Definition

Attribute Type Mandatory Description
collect-interval java.lang.Long No Throughput Collect Interval
zombi-connection-timeout java.lang.Long No Zombi-Connection Timeout
dns-resolve-enabled java.lang.Boolean No Resolve DNS Names during Connect
reuse-serversockets java.lang.Boolean No Re-Use Server Sockets
set-socket-options java.lang.Boolean No Sets TCP send/receive buffer zu router in/output buffer size

Values

Attribute Values
collect-interval Default: 1000
zombi-connection-timeout Default: 0
dns-resolve-enabled Default: false
reuse-serversockets Default: false
set-socket-options Default: true

Element "multicast", Parent Element: "swiftlet"

Multicast Settings.

Definition

Attribute Type Mandatory Description
qos-flowcontrol java.lang.String No QoS Flow Control
qos-feedback java.lang.String No QoS Feedback
qos-min-datarate java.lang.Integer No QoS Minimum Data Rate (kbit/s)
qos-max-datarate java.lang.Integer No QoS Maximum Data Rate (kbit/s)
qos-send-window-size java.lang.Integer No QoS Send Window Size
qos-receive-window-size java.lang.Integer No QoS Receive Window Size
time-to-live java.lang.Integer No Packet Time-To-Live

Values

Attribute Values
qos-flowcontrol Choice: best_effort constant_throughput adapted_throughput
Default: adapted_throughput
qos-feedback Choice: no_receiver_report random_receiver_report periodic_receiver_report
Default: no_receiver_report
qos-min-datarate Default: 64
qos-max-datarate Default: 1024
qos-send-window-size Default: 1024
qos-receive-window-size Default: 1024
time-to-live Min: 0
Max: 255
Default: 1

Element List "usage", Parent Element: "swiftlet"

Active Connections. This element list contains zero or more "usage" elements with this template definition:

Definition

Attribute Type Mandatory Description
name java.lang.String Yes Name of this Connection
swiftlet java.lang.String No Attached to Swiftlet
connect-time java.lang.String No Connect Time
throughput-input java.lang.String No Input KB/s
throughput-output java.lang.String No Output KB/s

Values

Attribute Values
swiftlet
connect-time
throughput-input
throughput-output
← MQTT SwiftletQueue Manager Swiftlet →
  • Zombi Connection Detection
  • Configuration
Copyright © 2020 IIT Software GmbH