Host Application Software

The diagram shows that the host application’s need to understand the particular implementation aspects of the platform’s system management is reduced by placing an intermediary layer that in effect interfaces and translates only the system management information that the host application cares about. The host application should usually care about only those issues that would degrade performance or cease operations, such as:

Access to peripherals

System performance

Integrity of operations

The platform interface can be more than a wrapper around exposed system functionality: It could act as a filter with a level of intelligence. The platform interface could be designed so that the module could monitor system health and take proactive actions like initiating a handover, when circumstances dictate. The platform interface might also be responsible for translating system- particular messages and alerts into a normalized format that the application understands. The events that a host application most likely requires notification of are:

Switchover situations

Warnings of system failures

The availability of system resources

All these events should be handled first by the platform interface and relayed to the host application only when they might impede performance.

3.3Development Issues

There are several issues that an application developer of a High Availability system architecture must be aware of:

Redundancy

Graceful switchover

Hardened applications

Code modularity

3.3.1Redundancy

Redundancy, or at least the awareness of redundancy, must be designed into the application. This requires that data be constantly normalized. The term data could mean anything from state information to an entire database. The ultimate goal is to have a system that appropriately responds to a switchover while maintaining the integrity of all system data.

The trade-off for maintaining a high level of synchronization is required overhead. The amount of bandwidth required for data normalization can be effectively reduced by:

Utilizing intelligent peripherals that internally maintain state

Creating innovative methods of database sharing through shared RAID architectures

These are just examples of data synchronization; there are numerous ways to share data that are dependant on your actual implementation.

High Availability Software for the Intel® NetStructureTM ZT 4901 Technical Product Specification

23

Page 23
Image 23
Intel ZT 4901 manual Development Issues