Appearance
Destinations
What Is a Destination?
A destination is the output side of a channel pair — it defines where messages are delivered to. After a message is received by the source and buffered, ioBufferPro delivers it to the configured destination.
ioBufferPro supports the same five protocol types for destinations as it does for sources, giving you full flexibility in how you route your data.
Delivery Behavior
All destination types share the same reliable delivery guarantees:
- FIFO ordering — Messages are delivered in the exact order they were received (first in, first out).
- Automatic retry — Failed deliveries are buffered and retried automatically with exponential backoff.
- Automatic reconnection — If the destination becomes unreachable, ioBufferPro continuously attempts to reconnect.
- Zero message loss — Messages are never discarded. They remain safely in the buffer until they are successfully delivered.
TIP
You do not need to worry about losing messages if a destination goes offline. ioBufferPro holds every message in its disk-backed buffer and delivers them as soon as the destination is available again.
TCP Server
A TCP Server destination listens for the remote system to connect and then delivers messages over that connection.
Use when: The receiving system initiates connections to ioBufferPro (e.g., a downstream application that polls for data).
Configuration:
| Setting | Description |
|---|---|
| Host | Bind address. Use 0.0.0.0 for all interfaces, or 127.0.0.1 for localhost only |
| Port | The port number to listen on |
| TLS | Enable encrypted connections with certificate and key file paths |
json
{
"type": "tcp_server",
"host": "0.0.0.0",
"port": 7000,
"tls": {
"enabled": false
}
}TCP Client
A TCP Client destination connects to a remote server and delivers messages over that connection.
Use when: ioBufferPro needs to push messages to an existing server (e.g., sending data to a central system or integration engine).
Configuration:
| Setting | Description |
|---|---|
| Host | Remote server hostname or IP address |
| Port | Remote server port number |
| TLS | Enable encrypted connections |
json
{
"type": "tcp_client",
"host": "192.168.1.200",
"port": 8000,
"tls": {
"enabled": true,
"cert": "/path/to/cert.pem",
"key": "/path/to/key.pem"
}
}Serial Port (RS232/RS485)
A Serial Port destination writes data to a serial device connected to the system.
Use when: You need to send data to serial-connected devices such as printers, displays, medical instruments, or industrial controllers.
Configuration:
| Setting | Description | Common Values |
|---|---|---|
| Port | Serial port identifier | COM1, COM3 (Windows) or /dev/ttyUSB0, /dev/ttyS0 (Linux) |
| Baud Rate | Communication speed | 9600, 19200, 38400, 57600, 115200 |
| Data Bits | Number of data bits per byte | 7, 8 |
| Parity | Error detection method | None, Even, Odd |
| Stop Bits | Number of stop bits | 1, 2 |
| Flow Control | Flow control method | None, RTS/CTS, XON/XOFF |
json
{
"type": "serial",
"port": "COM5",
"baud_rate": 115200,
"data_bits": 8,
"parity": "None",
"stop_bits": 1,
"flow_control": "None"
}Remote ioBufferPro
A Remote ioBufferPro destination sends messages to another ioBufferPro instance. This enables forwarding data across sites or chaining ioBufferPro deployments together.
Use when: You need to relay messages to a remote ioBufferPro instance in another location, network segment, or environment.
Configuration:
| Setting | Description |
|---|---|
| URL | The remote ioBufferPro instance address |
| Channel ID | The target channel on the remote instance |
| Authentication | Credentials for the remote instance |
json
{
"type": "remote_icombuffer",
"url": "http://remote-server:8080",
"channel_id": "channel-002",
"auth": {
"username": "relay_user",
"password": "********"
}
}UDP
A UDP destination sends UDP datagrams to a specified host and port.
Use when: The receiving system expects UDP data, such as a syslog collector, SNMP manager, or lightweight monitoring endpoint.
Configuration:
| Setting | Description |
|---|---|
| Host | Destination hostname or IP address |
| Port | Destination port number |
json
{
"type": "udp",
"host": "192.168.1.50",
"port": 514
}INFO
UDP is a connectionless protocol. Messages are sent without establishing a connection. While this makes UDP very fast, there is no built-in delivery confirmation from the transport layer. ioBufferPro still buffers and tracks each message internally.