ShaoLin General Parallel Cluster Infrastructure
ShaoLin General Parallel Cluster Infrastructure (SGPCI) is a kernel-level system software to deliver a generic cluster infrastructure (CI) which provides a highly available and high performance multi-channel cluster communication infrastructure to be used in distributed systems and applications. The SGPCI provides cluster membership facilities such as node heartbeat failure detection, online node join-in, and socket-level communication interface.
The SGPCI is a driver that provide a POSIX-compliance socket communication interface for user level applications. And it is a completely transparent CI expected to be used by many cluster applications; for example, ShaoLin InfiniCluster uses this for inter-node communication and node monitoring. The immune CI design of SGPCI works in low memory situations, and is self invulnerable to prevent split brain. The split brain prevention of a cluster is the most critical point in a cluster management system, self vulnerabilities can cause split brain and result in severe damage to shared data. Thus, motivating ShaoLin developed this state-of-the-art SGPCI.
SGPCI Features:
Exists as a kernel module (driver), work completely transparent from the user space
Multiple cluster communication channel for heartbeat and communication with no limitation of number of channels
Provide cluster membership service, unlimited number of cluster members
Bandwidth aggregation with weighted round robin load balancing for large frame communications
Provide simple logic to cluster membership node failure detection according to heartbeat status
Automatic cluster failure/join event generation
Supports both datagrams and stream connections
Packets delivered with multi-way sliding window protocol
Transmission control with error correction
Kernel to kernel context heartbeat and monitoring
GPCI messages support raw Ethernet and work as a layer 2 protocol for highest performance with least overheads in LAN environments
GPCI messages support UDP packets to allow GPCI messages to work over any IP networks
Low memory safe design and implementation, guarantee data delivery to the second level protocol stack
Multiple and unlimited cluster domains, allow a node to exists in many clusters
Fully tunable socket buffers and window size
A transparent IP to GPCI port/address pair socket mapping table
Cluster domain to cluster domain routing for large scale cluster implementation
|