Technical Specifications

Video Chat Technical Specifications

This document outlines the network requirements, software architecture, and hosting infrastructure for the Video Chat module.


1. Network Configuration

To ensure successful connectivity and media transmission, specific ports must be allowed through the firewall. The solution relies on STUN/TURN protocols to negotiate connections through NATs and firewalls.

Firewall Rules

The following ports must be open for both inbound and outbound traffic to allow Peer-to-Peer (P2P) and relayed connections.

ServicePortProtocolDescription
STUN/TURN3478TCP & UDPDefault port for NAT traversal and signaling.
STUN/TURN (TLS)5349TCP & UDPSecure (TLS/DTLS) port for NAT traversal.
TURN Relay49152–65535TCP & UDPEphemeral port range used for relaying media streams when P2P fails.

Note: Failure to open the Relay port range (49152–65535) may result in connection failures for users behind strict corporate firewalls or symmetric NATs.


2. Software Architecture

The video chat functionality is built upon standard WebRTC protocols using open-source libraries for signaling and ICE (Interactive Connectivity Establishment) handling.

  • WebRTC Implementation:
    • Library: PeerJS
    • Component: Client-side WebRTC handling and PeerJS Server for signaling.
    • License: MIT License
  • NAT Traversal (STUN/TURN):
    • Library: Coturn
    • Component: COTURN implementation acting as the STUN and TURN server.
    • License: BSD 3-Clause License

3. Hosting & Infrastructure

The infrastructure is deployed across distinct environments depending on the customer region to ensure low latency and data residency compliance.

  • Standard Hosting: On-premises data center located in Oslo, Norway.
  • UK Region: Hosted via Microsoft Azure (UK region) specifically for UK-based customers.

Published

Last updated

0
0