Licensing
In this chapter:
Licensing Principles
The FindFace Server licensing is granted using the following criteria:
extraction-apilicensing.Features:
Body: bags, body mideast clothes types, phone use, pose (position of a body) protective equipment, body emben, uniform, other attributes;
Car (vehicle): categories, description, dumptruck types, license plate, license plate visibility, orientation, car emben, special types, trash truck, weight types, other attributes;
Face: gender, glasses, hair, headpose, headwear, highlight, liveness, luminance uniformity, medmask, mouth attributes (occlusion, openness, smile), scars, tatoo;
Head: motohelmet;
Other: camera tampering, container number, crowd, dumpster types, fast index, garbage types, merchandise emben, pet face emben, planter damage, recording, road sign damage, snow on road, street light working, trash bin fill.
extapilimit: the total performance of theextraction-apiavailable to a user. This limit is applied by either restricting the number ofextraction-apiprocesses (which corresponds to video cards for GPU usage) or the maximum CPU core count utilized by a single extractor (based on themax_batch_sizeparameter for CPU processing).
tntapilicensing.objects_tntapilimit: the total number of objects stored in all currently runningtntapiinstances is licensed.tntapi_fast_indexfeature: this feature is required for enabling thetntapifast index / live index.
video-workerlicensing.cameras_*limits: restrict the number of concurrently active streams within thevideo-workerthat are processing detections of specific object types. For example, thecameras_facelimit restricts the number of streams performing face object detection.cameras_video_recordinglimit: limits the number of simultaneously active video recording streams in thevideo-workerfor use withvideo-storage/video-streamer. The parameter for configuring jobs isenable_recorder. See Video Object Detection.face_livenessfeature: allows the use of liveness verification at thevideo-workerlevel (the same feature as in theextraction-api), theenable_livenessparameter. See Video Object Detection.*_action_*feature: allows the use of appropriate BNCHW-models, e.g. base actions (walk, run, stand, ride, sit), car (vehicle) interactions (getting in or out the vehicle).
You can choose between the following licensing methods:
The online licensing is provided by interaction with the NtechLab Global License Manager
license.ntechlab.comand requires a stable internet connection, DNS, and open port 443 TCP. Upon being disconnected from the internet, the system will continue working off-grid for 4 hours.
Note
It is possible to prolongate the off-grid period for up to 2 days. Inform your manager if you need that.
The offline licensing via a USB dongle requires a USB port on the physical server with the
ntlsservice.The Sentinel offline software licensing via hardware fingerprint requires Sentinel drivers installed on the physical server with the
ntlsservice.The Guardant offline software licensing via hardware fingerprint requires Guardant Control Center installed on the physical server with the
ntlsservice.
Important
For the system to function, a single instance of ntls should be enough. If your system requires more license servers, contact your NtechLab manager beforehand to prevent your system from being blocked.
View and Update License
After installing FindFace Server, upload the license file you obtained from the manager into the system. Use ntls web interface http://<NTLS_IP_address>:3185.
Use General, Licenses, Intervals, Services tabs to consult current licensing information and upgrade your license.
Offline Licensing via USB dongle
To implement the licensing via a USB dongle, do the following:
Inform your manager that you intend to apply this licensing method and request your USB dongle and a license file.
Create a new udev rule.
Download the
95-grdnt.rulesfile (e.g., into the/home/username/tmp/directory).Copy the
95-grdnt.rulesfile into the/etc/udev/rules.d/directory.sudo cp /home/username/tmp/95-grdnt.rules /etc/udev/rules.d/
Reload udev rules.
udevadm control --reload udevadm trigger
Make sure the system has a device named
grdhid0./dev/grdhid0
Mount the
/dev/grdhid0device into thentlscontainer by using volume option at runtime with thedocker runcommand.-v /dev/grdhid0:/dev/grdhid0
Sentinel Offline Software Licensing via Hardware Fingerprint
Note
Sentinel is a type of offline licenses that do not require any physical media for its work.
Glossary:
Sentinel is a software protection and licensing system by Thales. It allows you to implement offline licensing without access to a global server.
The C2V file is a file, containing data about a hardware fingerprint of the client’s machine, for binding the license only to this machine. This file is generated by the sentinel library. The C2V file is generated on the client’s machine where the license key will be installed later.
To implement the Sentinel fingerprint licensing, do the following:
Inform your manager that you intend to apply this licensing method and request your unique license id. The manager will also supply you with the
sentinel-lib_*.debpackage necessary for the FindFace Server and Sentinel integration.Install the Sentinel drivers on the physical server with the
ntlscomponent.Do the following:
Download Sentinel drivers from the official website.
Unzip the downloaded archive and browse to it.
tar -xvzf Sentinel_LDK_Linux_Runtime_Installer_script.tar.gz cd Sentinel_LDK_Linux_Runtime_Installer_script/
There is another archive
aksusbd-9.15.tar.gzinside the archive. Unzip it and browse to the resulting directory.tar -xvzf aksusbd-9.15.tar.gz cd aksusbd-9.15/
Run the installation command.
sudo ./dinst
Run and check the statuses of the Sentinel services.
sudo systemctl start aksusbd.service hasplmd.service sudo systemctl status aksusbd.service hasplmd.service
Mount the
/var/hasplmand/etc/hasplmdirectories into thentlscontainer. To do so, use-voption at runtime with thedocker runcommand.-v /var/hasplm:/var/hasplm -v /etc/hasplm:/etc/hasplm
ntlsmust be running in the host’s network namespace.--net=host
Put the
sentinel-lib_*.debpackage received from your manager into some directory on the same host. Install the package.sudo dpkg -i /path/to/sentinel-lib_*.deb
Take a hardware fingerprint (C2V file) by sending the following API request to
ntls.wget <NTLS_IP_address>:3185/c2v -o sentinel.c2v
Send the License ID and the C2V file to your manager and receive your license file in return.
Upload the license file on the web interface
http://<NTLS_IP_address>:3185.
Guardant Offline Software Licensing via Hardware Fingerprint
Note
This type of license is similar to Sentinel offline software licenses, but requires the Guardant service to function instead of Sentinel services.
To implement the Guardant fingerprint licensing, follow these steps:
Inform your manager that you intend to use this licensing method and request your unique license id.
Install the Guardant Control Center on the physical server with the
ntlscomponent.Do the following:
Download Guardant Control Center from the official website. For Ubuntu/Debian, download the
grdcontrol*.debpackage. The most recent version that has been tested with is 3.27. Use later versions of Guardant Control Center, if any, at your own discretion.Install it. E.g., if you are running Ubuntu, execute:
sudo dpkg -i /path/to/grdcontrol*.deb
Make sure that the Guardant Control Center is up and running. On Ubuntu 22.04, you can do this as follows:
sudo systemctl enable grdcontrol --now sudo systemctl status grdcontrol
ntlsmust be running in the host’s network namespace.--net=host
Take a hardware fingerprint (C2V file) by sending the following API request to
ntls.wget <NTLS_IP_address>:3185/c2v/guardant -o guardant.c2v
Warning
Be aware that Sentinel c2v is not compatible with Guardant c2v and vice versa.
Note
You can also download c2v using the
ntlsweb interface.Send the License ID and the C2V file to your manager and receive your license file in return.
Upload the license file on the web interface
http://<NTLS_IP_address>:3185.
