Document toolboxDocument toolbox

14.1 Multiple GanttRouters

Please Note: Following the work in version 14.0 of Scheduling to improve the network layer it is no longer required or recommended to use multi-gantt-routers if the sole justification is high gantt client count.




Set Up

The meta-router

If multiple GanttRouters are to be configured one GanttRouter is designated as the "meta-router": its role is to act as the single point of contact for Gantt Clients. The meta-router will redirect the Gantt Clients to another GanttRouter via which the Gantt Client connects to the required FRU. The meta-router will not itself act as a router directly connecting a Gantt Client to an FRU unless no other GanttRouter is available.

 Configuring GanttRouter Components

Each GanttRouter, including the designated meta-router, is configured as a component in DB table database sp400_components. See section 14.1 System Start Up for more details.

 Mapping GanttRouters to FRUs

The component hierarchy determining which GanttRouters are mapped to which FRUs is defined in DB table database sp401_component_hierarchy. When setting up this mapping:

  1. The designated meta-router must be mapped to all FRUs.
  2. Each FRU must be mapped to at least one other GanttRouter as well as the meta-router.


The recommended configuration is to map all GanttRouters to all FRUs. This allows the meta-router complete flexibility when load balancing between GanttRouters and FRUs, makes it easier to add or remove FRUs, and provides maximum redundancy in the event of GanttRouter becoming unavailable. 

Advantages

Multiple Gantt Routers can give a number of advantages:

  1. An individual GanttRouter can have no more than 1000 connected Gantt Clients (see Static Data). Configuring more than one GanttRouter allows more than 1000 Gantt Clients to be connected to the ServicePower instance.
  2. An individual GanttRouter has a maximum throughput in terms of its ability to route messages between FRUs and Gantt Clients. This limit is dependent on OS, CPU, memory, number of Gantt Clients and level of scheduling activity. Configuring more than one GanttRouter allows the limit to be overcome.
  3. Spreading the Gantt Clients across more than one GanttRouter reduces the impact in the event of a GanttRouter failure: only those Gantt Clients currently connected via that GanttRouter are affected.

For example suppose the following components are configured in sp400_components:

component_id

component_no

APIAgent

100

GanttRouter1 (designated meta-router)

200

GanttRouter2

201

GanttRouter3

202

FRU_North

400

FRU_South

401

FRU_West

402

FRU_East

403

FRU_Central

404

Then the following is the recommended configuration in sp401_component_hierarchy:

component_no

is_client_of

100

400

100

401

100

402

100

403

100

404

200

400

200

401

200

402

200

403

200

404

201

400

201

401

201

402

201

403

201

404

202

400

202

401

202

402

202

403

202

404

If there is a requirement to control the load balancing between GanttRouters and FRUs, then GanttRouters (other than the meta-router) can be mapped to a subset of the FRUs. This does however make it harder to add or remove FRUs and limits redundancy. 
Following on from the previous example, the following configuration would map GanttRouter2 to just 2 FRUs and GanttRouter3 to the other 3:

component_no

is_client_of

100

400

100

401

100

402

100

403

100

404

200

400

200

401

200

402

200

403

200

404

201

400

201

401

202

402

202

403

202

404