There are two possibilities to host the services: Hosting by NSION or on premises installation.
Hosted by NSION
- Chrome / Edge / Firefox browser
Mobile and drone apps:
- Android phones and tablets, (version. 5.0+)
- iPad and iPhone devices with iOS (version 13.0+) Phones and tablets.
User has full control of all data which is transmitted or handled in platform. Content is accessible only to user and NSION has no access to it.
Chain of custody of data and content is always in user control.
All communication between NSC3 SDKs and NSC3 backend is encrypted. Broadcasting devices form sockets between terminals and backend. Firstly, communication inside socket is secured on application level using AES-256 encryption.
TLS / HTTPS connections are terminated on backend gateway, making certificate change an easy operation. Headers specified in detail at Stream-In TCP Sockets.
Communication inside websocket is secured using TLS1.2 / HTTPS. In order for terminal to open websocket, one must have proper access token from NSC Auth Service. Access is checked with each request inside socket against provided access token. Connections with invalid access token are terminated. Communication over REST apis with server, Http requests are transferred over TLS1.2 / HTTPS. Each request must have valid access token from NSC Auth Service. Platform gateway forwards requests to appropriate services, denying all requests for undetermined locations.
On premises installation
Hosted service specification are valid, in addition:
Recommended OS: Ubuntu 18.04 LTS. CPU, RAM, Disk according to usage.
SMALL PRODUCTION REFERENCE SERVER SETUP
|Server network access||1 GB/ 1 GB|
|CPU||8vCPU cores or dedicated 8 core processor|
|Disk||10TB + 1TB allocations preferably SSD grade|
|Operating system||Ubuntu 18.04 LTS|
|Installation tools||Ansible controller node|
|Capacity||around 100-200 video sources (Devices)|
- Manual installation: Instructions, scripts and NSC3 Core SW package from NSION
- Automated installation by Ansible: Instruction, Ansible tools and NSC3 Core SW package from NSION
Ansible requirements for dedicated controller host:
- Linux OS, Verified with Ubuntu 20.04 or later version
- Python 3
- Python3 PIP
- Ansible versions from 2.8 to 2.11
Ansible requirements for target host (NSC3 Core):
- Ubuntu 18.04 LTS with apt package manager.
- Instruction has been verified with Ubuntu 18.04 LTS standard distribution.
- Python 3 (by default included to Ubuntu distribution)
- Python3 PIP, via apt
- docker.io, via apt
- "docker" python interface, via PIP
Storage space estimation table:
Raw Frame size / Bytes
(Bytes / device)*
- Calculation rule* (Compressed frame size x Framerate x 3600s/h x 24h)
- Average H.264 Compression rate**
Video quality parameters are configurable by end users on NSC3 apps
Hardware estimation table (single node configuration):
Below estimation table is based on following video broadcast parameters and assumption that all devices are broadcasting full day.
- Resolution 480p (24 bits color depth)
- Framerate 25 fps
4 vCPU / 8 GB RAM
8 vCPU / 16 GB RAM
16 vCPU / 32 GB RAM
64 vCPU / 128 GB RAM
Number of devices
Daily estimated storage capacity
Disk write speed requirements (Bytes/sec)
Above estimations are designed for single node / on-premise installation purposes with vertical scalability by adding more HW resources. For larger configurations the NSC3 clustering solution is offering horizontal scalability options where M-size node units are stretching capacity according to needs.
Network latency estimation:
- Sub-150-millisecond delivery and return in 4G and faster networks
- Sub-500-millisecond delivery and return in 3G networks
- Sub-2000-millisecond delivery and return in 2G networks
Client network preferences
Mobile network adapts to all network conditions, frame rate of data transmission is set according to actual network capacity. You can manually adjust and optimize the settings. In poor network conditions real time data is assured by always sensing the latest image (last in first out).