Technical Details
Do you have any questions? Please email us at [email protected] and we will be happy to discuss any of the below with you.
This following content is boring reading and best suited for an IT administrator audience.
Operating Principle
The Nola Edge software operates by streaming RTSP (video) feeds from your locally installed cameras and delivering them to the Nola cloud processing infrastructure.
To account for variances in internet performance and drop-outs, the software stores the video feeds temporarily, until it has a chance to deliver them. Once that has happened, the data is deleted.
The result of this design is accurate, gapless data, which would not be possible without installing local hardware.
Components
The software is comprised of three primary components which are installed onto the local computer:
- GStreamer runtime libraries: a multimedia framework which enables us to process video feeds.
- Wireguard: a secure networking product which enables us to safely deliver the video streams to our cloud infrastructure.
- Nola Edge Streamer software: the program which streams the video feeds from your locally installed cameras.
Background Service
The Nola Edge software runs as a background service, through nssm.
The name of the service is NolaEdge
and it is configured to start automatically on boot. It runs as the Local System account.
The service will restart automatically if it stops for any unexpected reason.
You may control the service yourself through the standard sc.exe
command or through the "Services" app:
sc.exe stop NolaEdge
and
sc.exe start NolaEdge
The service log file is managed by nssm and is located at:
C:\Program Files\Nola\service.log
Networking, Firewall & VPN
The Nola processing infrastructure pulls data from Nola Edge, on-demand.
In order to achieve this, the Nola Edge software establishes a Wireguard VPN connection with our ingestion endpoint and then delivers video data over this channel.
The following network firewall exclusions are required:
- Outbound to
vpn.app.nolahq.com
(port 62315, UDP). This is the primary VPN connection. Its purpose is to deliver data securely. - Outbound to
https://app.nolahq.com
(port 443, TCP). The purpose of this connection is to receive initial configuration. - Outbound to
51.161.198.85
(port 51820, UDP). This is the secondary VPN connection in case if primary VPN connection goes down.
Firewall exclusions listed above also apply to Nola On-Premises deployment scenario.
In Nola Enterprise deployments, app.nolahq.com
will be whatever hostname you nominate on your network.
This can be set by modifying the NOLA_SERVER
system environment variable via "Edit the System
Environment Variables" in Windows. Take care to set a System Environment Variable, not a User
Environment Variable.
In addition, the following Windows firewall exclusions are required (The Nola Edge installer creates this Windows firewall rule by default):
- Inbound to port TCP ports
59233
and59231
over the Wireguard interface, for theai-multireceiver-slim.exe
program which is bundled as part of the Nola Edge software.
Storage
The Nola Edge software stores video streams locally (in the form of raw H.264/H.265 NALUs) on the primary hard disk of the computer where it is installed.
Once this data has been delivered to the Nola processing infrastructure, it is deleted from the local disk.
You will find the configuration data for Nola Edge in the following location:
C:\Windows\System32\config\systemprofile\AppData\Roaming\Nola Technologies Pty Ltd\multireceiver-slim\config
You will find the video data for Nola Edge in the following location:
C:\Windows\System32\config\systemprofile\AppData\Local\Nola Technologies Pty Ltd\multireceiver-slim\cache
Performance/Overhead
The Nola Edge software has minimal computational requirements.
Effectively, it is acting to recieve-store-forward without actually decoding the video stream. As a result, CPU usage should remain below at 5% (on modern hardware) at all times. Memory usage should also be minimal.
Depending on the number of video streams and the resolution of the video feeds, there may be a low impact to hard disk performance. A solid state drive (SSD) is preferred to a magnetic hard disk.
The networking upload bandwidth requirement of the software will depend on the number, resolution and I-Frame rate of the video feeds which are being processed. A rule of thumb is that an 1080p CCTV camera will generally be ingested by Nola Edge at 8 FPS, which will require around 1.5mbps upload bandwidth per camera, to keep up with real time.