CommandFusion Wiki

Documentation Resources

User Tools

Site Tools


Sidebar

software:system-commander:tcp-socket-multiplexing

This is an old revision of the document!


TCP Socket Multiplexing

One very useful functionality offered by the CommandFusion LAN Bridge is the ability to multiplex a TCP server socket to allow multiple client connections.

Basically this means devices that traditionally only accept a single connection at a time over TCP can be extended to allow multiple clients (iPads, control systems, etc) to connect simultaneously.

Examples of Uses

Allowing multiple TCP Client connections to:

  • Clipsal CNI (ethernet interface to the Clipsal C-Bus network)
  • Global Cache GC-100 units (iTach units allow multiple connections natively).

How To Configure Multiplexing

Once you have the LAN Bridge discovered in System Commander, select the 'Slots' tab.
This tab page contains all the settings to configure communication slots and bridges required to configure multiplexing.

Configure the Communication Slots

The first step is to create the configuration slots. You will need two slots defined for each TCP Socket you wish to multiplex:

  1. The TCP Client slot - this is used to communicate from the LAN Bridge to the target device (Clipsal CNI for example).
  2. The TCP Server slot - this is used to communicate from the LAN Bridge to the multiple devices (iPads, etc) wanting to communicate to the target device.

  1. Slot #13 configured as a TCP Client - the connection to the target device
  2. Enter the IP address of the target device
  3. Enter the port number of the TCP server socket the target device is listening on
  4. The LAN Bridge shares a maximum of 25 simultaneous connections across any defined slots. Each TCP Client counts as 1 connection, whilst each incoming connection to TCP Server slots counts as another connection.
  5. Slot #14 configured as a TCP Server - the connection to each iPad, etc
  6. Enter IP address of 0.0.0.0 to allow any client IP address to connect
  7. Enter a port number that all clients (iPads, etc) will use to connect

Bridge the Communication Slots

Now that we have both the communication slots defined, we need to bridge their communications. This means any data sent to the TCP Server slot will be forwarded to the TCP Client slot, and vice-versa.

In the Slot Bridging grid, find the slot number for the two communication slots defined earlier. Then in the destination slot, choose the slot number for the corresponding communication slot.
Both slots need to be bridged, otherwise data will only be bridged one way, and not the other.

  1. Bridging data coming from slot #13 (Clipsal CNI in this case)
  2. Data received on slot #13 will be bridged (forwarded) to slot #14 (any TCP Clients connected to the server, iPads, etc)
  3. Bridging data coming from slot #14 (TCP Clients, iPads, etc)
  4. Data received on slot #14 will be bridged (forwarded) to slot #13 (Clipsal CNI in this case)
software/system-commander/tcp-socket-multiplexing.1351685815.txt.gz · Last modified: 2012/10/31 12:16 by jarrod