Duplexed PGs are usually implemented to provide fault tolerance in
Unified ICM software communication with peripherals. The duplexed PGs use a
private network. The PG private network synchronizes certain processes within a
duplexed PG pair. It also conducts
"heartbeat detection", a process by which each PG sends a
heartbeat packet every 100ms to keep track of the
"health" of the other PG.
PGs use a combination of the hot standby and synchronization
approaches to fault tolerance. In the hot standby approach, one set of
processes is called the primary, and the other is called the backup. In this
model, the primary process performs the work at hand while the backup process
is idle. In the event of a primary process failure, the backup process is
activated and takes over. In a duplexed PG system, the Peripheral Interface
Manager (PIM) processes use the hot standby approach to fault tolerance.
In the synchronization approach, the critical process is duplicated on
separate computers. There is no primary and backup. Both process sets run in a
synchronized fashion, processing duplicate input and producing duplicate
output. Each synchronized process is an equal peer. Cisco refers to these equal
peers as a synchronized process pair. In a duplexed PG system, the Open
Peripheral Controller (OPC) process operates as a synchronized process pair.
The following figure shows how hot standby and synchronization are
employed in a duplexed Peripheral Gateway.
Figure 2. PG Fault ToleranceACD2PG
The OPC processes communicate with each other through a private
network connection and the Cisco Message Delivery Service (MDS). The MDS
provides a synchronizer service which combines the input streams from the PIMs
and PG Agents on both sides of the PG to ensure that both OPC processes see
exactly the same input.
The OPC process activates PIMs and PG Agents on each side of the
duplexed PG. The OPC process also supplies uniform message sets from various PG
types to the Unified ICM central controller.
The PIMs manage the interface between different types of ACDs and the
OPC. PIMs are duplicated on each side of the system and operate in hot standby
mode. A PIM can be active on either side of the duplexed PG, but not on both
sides at the same time. For example, in the preceding figure PIMs 1 and 2 are
active on Side A; PIM 3 is active on Side B. The duplexed OPCs communicate with
each other through the MDS to ensure that a PIM is active only on one side at a
time.
The duplexed PG architecture protects against a failure on one side of
the PG. For example, if an adapter card controlling access to an ACD fails, a
hot standby PIM can use the alternate PIM activation path. As shown in the
preceding figure, PIM3 was activated from Side B of the PG. This might be in
response to an adapter failure between the Side A PIM3 and ACD3. In this type
of failure scenario, the PG can maintain communication with the attached ACD.
Only one PG Agent actively communicates with a side of the central
controller. When messages arrive at the central controller, they are delivered
to both sides by the central controller Synchronizer process. The PG maintains
idle communication paths to both sides of the central controller in case a
switch-over to the other side of the central controller or PG is necessary.