Using concurrent coordination modules

OpenSwitch allows you to run multiple CMs concurrently against one OpenSwitch server to create a redundant environment where a CM is not a single point of failure.

NoteThe RCM does not support concurrent coordination modules. When the RCM establishes a connection to OpenSwitch, OpenSwitch sets the COORD_TIMEOUT to zero (0), which turns off the coordinated CM functionality. COORD_TIMEOUT must be set to zero (0) for the RCM to start.

When multiple CMs connect to one OpenSwitch, the following activities occur, which are transparent to the end user:

  1. Each CM registers its unique name with OpenSwitch using the Client-Library™ CS_APPNAME parameter. The unique name is generated by combining the host name and the process ID.

  2. When the OpenSwitch server accepts a CM connection, it assigns the CM a unique ID number (CM ID) and sends that CM ID back to the CM as a message before the connection event is completed. OpenSwitch maintains an internal list of inactive CMs that are currently available.

  3. If a CM becomes unresponsive for the period of time specified for the COORD_TIMEOUT configuration parameter, OpenSwitch retrieves the next CM ID from the internal list of inactive CMs. All future notifications include the new CM ID as part of the notification.

Figure 2-1: Concurrent coordination modules

Concurrent coordination modules

NoteSee “Creating a minimal coordination module” for basic instructions on creating CMs.