LoDi can direct traffic to any number of downstream devices using a range of predefined algorithms. Predefined algorithms include round robin (send an arriving call to the next device in order), waterfall (sending all calls to the current device until it runs out of capacity, then overflow to the next device), count equalization (send calls to keep all devices with an equal call count), fractional capacity equalization (send calls to keep all devices with an equal percentage of call capacity), lowest count (send calls to the device with the lowest call count), lowest fraction capacity (send calls to the device with the lowest percentage of available call capacity fraction), and more.
User Defined Load Distribution Algorithms
LoDi can direct traffic to any number of downstream devices using user-defined algorithms. LoDi can determine call destinations based on simple or complex rules the administrator defines (even interacting with external services to calculate the optimal downstream target). LoDi can also coordinate distribution with HTTP/HTTPS load balancers to ensure call and browser traffic are sent to associated destinations.
High Availability / Clustering
LoDi can monitor the health of endpoints (target servers) and if they fail or their health drops below a predetermined level, then LoDi can transfer that endpoint’s traffic to a standby endpoint. Calls in progress continue uninterrupted, and full PBX state information is transferred to the newly activated node. The result is a load balanced high-availability network of VoIP servers. For carrier class high availability, the entire LoDi server can be clustered to guarantee uninterrupted service.
Hacking and Fraud Prevention
LoDi servers can protect downstream telephony devices by screening traffic for fraud and hacking activity. Using the SecAst engine, LoDi can detect a wide range of hacking and fraud related activities and then block this traffic at the network edge.
Codec Conversion / Transcoding
LoDi can offload codec conversion (i.e. transcoding) from downstream devices by converting between a variety of codec’s including: G.711 ulaw, G.711 alaw, G.722, G.726, G.729, GSM, iLBC, LPC10, and Speex. The administrator can control permitted codec’s by inbound and outbound trunk, allowing LoDi to offload transcoding work from downstream devices.
Protocol Conversion / Gateway
LoDi can serve as a protocol converter or gateway, enabling businesses to integrate incompatible trunk technologies. LoDi can intelligently extract/insert header information (for VoIP protocols) to facilitate downstream processing, and ensure capture of critical information from the original trunk protocol. LoDi supports SIP, IAX2, H.323, and PRI (T1/E1/J1) and BRI trunking technologies.
LoDi can query downstream devices to determine their capacity and dynamically adjust the call destination accordingly. LoDi includes an intelligent agent which runs on the same platform as a Digium Asterisk based PBX. The agent keeps LoDi up-to-date on destination capacity(ies), CPU load, IO load, etc. to ensure each PBX operates at optimal capacity (critical where calls can enter the downstream device from multiple sources).
When sending calls to downstream devices using a VoIP protocol (eg: SIP), LoDi can manipulate the header to provide additional information or change the destination of any call. Rules allow LoDi to intelligently change extensions, insert SIP header data from other sources, etc.
Event Handler Systems
One of the more advanced features of LoDi is the event handler system, which lets administrators hook any program/script into events generated by or detected by LoDi. For example, events related to up/downstream trunk loss, destination at capacity, etc. can trigger scripts which take remedial action, notify administrators, change routes, etc.
End users and administrators will appreciate the ability to quickly view the status and health of LoDi from an LCD panel directly on the front of the PBX chassis. Administrators can optionally enable control of LoDi from the panel as well, allowing end-users to enable/disable trunks, or even shutdown LoDi with the push of a button on the front of the chassis.
Administrators will be immediately comfortable with the simple and powerful telnet interface to LoDi. The LoDi server can be managed and controlled from a telnet interface, whether from a PC, a tablet, or a cell phone. The interface includes online help and user-friendly, rich terminal output.
Seasoned administrators and novices alike will be comfortable with the simple and powerful browser (web) interface to LoDi. The LoDi server can be managed and controlled from any browser including a PC, a tablet, or a cell phone. The interface includes simple control over trunks, viewing of event logs, and more.
Socket, PHP, and REST Interfaces
Developers will appreciate the socket, PHP, and REST (Representational State Transfer) interfaces to LoDi, as the power and control of LoDi can be easily expanded and integrated with other system administration and monitoring tools. LoDi includes sample code to demonstrate how to extract data and control LoDi via a web service, via a PHP class, and via the socket interface.