Chapter 5. insight parastation5, Parastation5 pscom communication library, Parastation5 protocol p4sock – PAR Technologies PARASTATION5 V5 User Manual

Page 21: Insight parastation5, Parastation5, Pscom, Communication library

Advertising
background image

ParaStation5 Administrator's Guide

17

Chapter 5. Insight ParaStation5

This chapter provides more technical details and background information about ParaStation5.

5.1. ParaStation5

pscom

communication library

The ParaStation communication library

libpscom

offers secure and reliable end-to-end connectivity. It

hides the actual transport and communication characteristics from the application and higher level libraries.

The

libpscom

library supports a wide range of interconnects and protocols for data transfers. Using a

generic plug-in system, this library may open connections using the following networks and protocols:

TCP:

uses standard TCP/IP sockets to transfer data. This protocol may use any interconnect. Support

for this protocol is built-in to the

libpscom

.

P4sock:

uses an optimized network protocol for Ethernet (see Section 5.2, “ParaStation5 protocol

p4sock”, below). Support for this protocol is built-in to the

libpscom

.

InfiniBand:

based on a vapi kernel layer and a

libvapi

library, typically provided by the hardware

vendor, the

libpscom

may use InfiniBand to actually transfer data. The corresponding plug-in library

is called

libpscom4vapi

.

Myrinet:

using the GM library and kernel level module, the

libpscom

library is able to use Myrinet for

data transfer. The particular plug-in library is called

libpscom4gm

.

Shared Memory:

for communication within a SMP node, the

libpscom

library uses shared memory.

Support for this protocol is built-in to the

libpscom

.

DAPL:

The

libpscom

supports a DAPL transport layer. Using the

libpscom4dapl

plug-in, it may

transfer data across various networks like Infiniband or 10G Ethernet using a vendor-provided

libdapl

.

QsNet:

The

libpscom

supports the QsNetII transport layer. Using the

libpscom4elan

plug-in, it may

transfer data using the

libelan

.

The interconnect and protocol used between two distinct processes is chosen while opening the connection
between those processes. Depending on available hardware, configuration (see Section 4.1, “Configuration
of the ParaStation system”)
and current environment variables (see Section 5.8, “Controlling ParaStation5
communication paths”
), the library automatically selects the fastest available communication path.

The library routines for sending and receiving data handle arbitrary large buffers. If necessary, the buffers
will be fragmented and reassembled to meet the underlying transport requirements.

The application is dynamically linked with the

libpscom.so

library. At runtime, this library loads plug-

ins for various interconnects, see above. For more information on controlling ParaStation communication
pathes, refer to Section 5.8, “Controlling ParaStation5 communication paths”.

5.2. ParaStation5 protocol p4sock

ParaStation5 provides its own communication protocol for Ethernet, called p4sock. This protocol is
designed for extremely fast and reliable communication within a closed and homogeneous compute cluster
environment.

The protocol implements a reliable, connection-oriented communication layer, especially designed for very
low overhead. As a result, it delivers very low latencies.

The p4sock protocol is encapsulated within the kernel module p4sock.ko. This module is loaded on system
startup or whenever the ParaStation5 daemon psid(8) starts up and the p4sock protocol is enabled within
the configuration file parastation.conf(5).

Advertising