Features

Supported Operating Systems

OS Identifier Exact Build (and Test) Platform
RHEL7 Red Hat Enterprise Linux 7.2 x86_64
RHEL8 Red Hat Enterprise Linux 8.8 x86_64
RHEL9 Red Hat Enterprise Linux 9.2 x86_64
Rocky9 Rocky Linux 9.2 x86_64
Alma9 AlmaLinux 9.2 x86_64
Debian11 Debian 11.3.0 amd64
Debian12 Debian 12.1.0 amd64
Ubuntu20 Ubuntu 20.04.6 LTS amd64
Ubuntu22 Ubuntu 22.04.3 LTS amd64
macOS macOS 12 x86_64

General features

  • Layer 2 (Ethernet) “switching engine” based software load balancer.
  • Running under macOS (BPF API), Linux (Using the PF_PACKET socket API) and Solaris (STREAMS/DLPI API).
  • full IPv6 support
  • Backup targets (hosts) specifiable in case of failure of all primary targets.
  • “Alert” and “Upalert” notification script interface.
  • Direct Server Return (DSR) operation support.
  • Unchanged client addresses on IP-level.
  • Small, very fast and reliable.
  • Simple to implement and administer.
  • Simple “init script style” arguments like “start”, “stop” and “status” (and “control” for interactive configuration and control).
  • Interactive communications mode with command line editing.
  • Pcap packet dumping with automated dumpfile rotation (e.g. to implement a “transparent forensic logging bridge”).
  • Multi-Node High Availability capability using standard VRRP (Virtual Router Redundancy Protocol).
  • “All service load balancing” based on client IP address allows generic load balancing independent of specific ports.
  • SNMP support integrating into Net-SNMP with the BalanceNG MIB.
  • Up to 128 parallel instances (fully independent BalanceNG load balancers) on the same host machine.
  • Up to 1024 load balancing target servers (hard limit) per instance.
  • Up to 512 virtual servers (hard limit) per instance.
  • NAT state replication between master and backup node.
  • VRRP tracking supported to allow automatic resource tracking and failover.
  • Location-based server load-balacing utilizing a very fast in-memory IP-to-location database (IPDB/LGRP).
  • DNS-based GSLB (Global Server Load-Balancing).

Session Table Features

  • Session table capable to hold 10 million sessions per 512MByte of main memory.
  • Support of session table state replication / session synchronisation between VRRP master and backup.
  • Session persistence based on client address and optional source port.

Available Load Balancing Methods

  • agent: based on bngagent returned value (system load or user supplied script return). Bngagent supplied as open source and precompiled binaries.
  • bw: based on overall bandwidth
  • bwin: based on incoming bandwidth
  • bwout: based on outgoing bandwidth
  • hash: based on hash function called with source IP address
  • plugin: based on user supplied plugin script or program
  • random: based on pseudo randomness (optionally weighted)
  • rndagent: based on agent returned value, but randomized
  • rr: based on simple round robin
  • session: based on the least number of current sessions

Available Health Check Methods

  • agent: Target server side user supplied script or program functionality
  • ping: ICMP echo request/reply health check
  • script: user supplied health check script or program (Mon monitoring daemon scripts and other tools like “wget” are supported for many common protocols like HTTP, SNMP, LDAP, POP3, IMAP, FTP, DNS and many more).
  • tcpopen: TCP open health check for IPv4 and IPv6 with a tcp-halfopen option

 

Explore the BalanceNG Datasheet