Media Recorder sizing for voice, video, screen - application share recording
Voice recording CPU sizing
The table below shows the supported number of simultaneous voice calls per CPU core:
- The system was tested up to 16 core servers, where 2 cores must be reserved for the OS, leaving up to 14 CPU cores for the application.
- When certain features are enabled on the Recording Servers, the capacity numbers change:
- Encryption: when storage file encryption is enabled, capacity numbers must be decreased by 10%
- Voice quality check: when voice quality check is enabled, capacity numbers must be decreased by 15%
- Numbers in red denotes default values, should be used for server sizing
- Numbers only applicable when Receive-side scaling (RSS) is enabled in the OS
Storage Codec / Network Codec | ||||
---|---|---|---|---|
Recorded Platform | Silk | G.711 | G.722 | |
Skype for Business | GSM-FR (Wave) | 140 | 250 | 160 |
PCM (Wave) | 154 | 275 | 176 | |
MS-ADPCM (Wave) | 140 | 250 | 160 | |
Speex (Ogg) | 92 | 165 | 106 | |
G.729 | G.711 | G.722 | ||
Cisco Network-Based Recording | GSM-FR (Wave) | 120 | 175 | 113 |
PCM (Wave) | 132 | 193 | 124 | |
MS-ADPCM (Wave) | 120 | 175 | 113 | |
Speex (Ogg) | 79 | 116 | 75 | |
G.729 | G.711 / PCM | G.722 | ||
IPTrade, IPC, Speakerbus, BT ITS 1 2 | GSM-FR (Wave) | 207 | 300 | 195 |
PCM (Wave) | 228 | 330 | 215 | |
Speex (Ogg) | 137 | 198 | 129 | |
G.729 | G.711 | G.722 | ||
Cisco Proxy and Dial-in recording, ACME Packet / Oracle, Cisco CUBE, Sonus, MetaSwitch SBCs, and other SIP/SIPREC recording | GSM-FR (Wave) | 120 | 175 | 113 |
PCM (Wave) | 132 | 193 | 124 | |
MS-ADPCM (Wave) | 120 | 175 | 113 | |
Speex (Ogg) | 79 | 116 | 75 | |
G.729 | G.711 | G.722 | ||
Network port mirroring based SIP/SCCP recording | GSM-FR (Wave) | 170 | 250 | 160 |
PCM (Wave) | 187 | 275 | 176 | |
MS-ADPCM (Wave) | 170 | 250 | 160 | |
Speex (Ogg) | 112 | 165 | 106 | |
G.729 | G.711 | G.722 | ||
Avaya 1 | GSM-FR (Wave) | 207 | 300 | 195 |
PCM (Wave) | 228 | 330 | 215 | |
Speex (Ogg) | 137 | 198 | 129 |
1 Simplex stream recording, e.g recording channel mixing on turrets
2 BT ITS supports PCM streams only
Sample calculations
Scenario | CPU sizing |
---|---|
Skype for Business recording for 1000 users |
|
Trader voice recording for 500 users |
* The performance multiplier of the Encryption process |
Voice recording on co-located Proxy and Media Recorder server CPU sizing
A standalone proxy server can handle 200 concurrent sessions per CPU core in the case of Skype for Business, and 150 in the case of Cisco. The following table shows the sizing in the case of co-located proxy and recording services.
Storage Codec / Network Codec | ||||
---|---|---|---|---|
Recorded Platform | Silk | G.711 | G.722 | |
Skype for Business | GSM-FR (Wave) | 82 | 111 | 89 |
PCM (Wave) | 87 | 116 | 94 | |
MS-ADPCM (Wave) | 82 | 111 | 89 | |
Speex (Ogg) | 63 | 90 | 69 | |
G.729 | G.711 | G.722 | ||
Cisco Proxy-Based Recording | GSM-FR (Wave) | 56 | 81 | 54 |
PCM (Wave) | 60 | 74 | 57 | |
MS-ADPCM (Wave) | 56 | 70 | 54 | |
Speex (Ogg) | 43 | 55 | 41 |
Video and Screen Share recording sizing
CPU sizing
When recording video, besides the number of recorded endpoints, the video bandwidth also has to be taken into account.
With a single CPU core, 125 Mbps total video or screen share stream can be recorded. So with the minimum server requirements (4 cores, 2 cores considered as reserved for the OS), the system can record up to 250 Mbps video or screen share streams total.
Video recording
The bandwidth usage of the video endpoints can vary based on the device types, their configuration, and the available network bandwidth. The following table shows the bandwidths with different video resolutions when using fullscreen video call:
Video resolution and framerate | Bandwidth | |
---|---|---|
Skype for Business | Cisco | |
360p @ 30 fps | 300 - 800 Kbps | 300 - 600 Kbps |
480p @ 30 fps | 400 - 1500 Kbps | 600 - 800 Kbps |
720p @ 30 fps | 700 - 2500 Kbps | 1300 - 2000 Kbps |
1080p @ 30 fps | 1500 - 4400 Kbps | 2000 - 4000 Kbps |
However, when using a smaller client window size, or the default, the video resolution changes, therefore the bandwidth as well. The following table shows the bandwidths with different client window sizes in the case of 1080p video call:
Skype for Business client window size | Average bitrate | Maximum bitrate |
---|---|---|
Default | 115 Kbps | 500 Kbps |
Resized | 600 Kbps | 815 Kbps |
Maximized | 1730 Kbps | 2770 Kbps |
Full Screen | 2890 Kbps | 4415 Kbps |
For more information, refer to the following articles:
https://docs.microsoft.com/en-us/skypeforbusiness/plan-your-deployment/network-requirements/network-requirements
https://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cucm/srnd/collab12/collab12/cac.html
It is important to note, that the numbers above have to be multiplied by two because there is always an incoming and an outgoing stream.
Calculating with 2*2 Mbps video streams per endpoint, with a single CPU core, 31 concurrent video sessions can be recorded. Therefore, a 4-core Recording Server (2 cores considered as reserved for OS) can record 62 concurrent video sessions.
Numbers only applicable when Receive-side scaling (RSS) is enabled in the OS
Screen Sharing recording
While in the case of the Video calls the bandwidth depends on the resolution and the client window size, in the case of Screen Sharing, the bandwidth depends only on the resolution.
The following table shows the bandwidths with different resolutions, depending on the available network bandwidth:
Screen Resolution | Available network bandwidth | |
---|---|---|
Acceptable | Optimal | |
1280*800 | 385 Kbps | 1500 Kbps |
1440*900 | 515 Kbps | 2000 Kbps |
1680*1050 | 770 Kbps | 2750 Kbps |
1920*1200 | 1000 Kbps | 3500 Kbps |
Acceptable bandwidth provides a decent user experience. When the optimal bandwidth is available, the screen-sharing experience will be much smoother.
Calculating with 2 Mbps screen share streams per endpoint, with a single CPU core, 62 concurrent video sessions can be recorded. Therefore, a 4-core Recording Server (2 cores considered as reserved for OS) can record 124 concurrent video sessions.
Video recording and storage devices
In the case of a high number of recorded video endpoints, the type of the storage device also has to be considered. An HDD usually has a write speed of 50-120 MB/s, while an average SSD has 200-520 MB/s, or even more in the case of high-end devices. The disk utilization for the recording shouldn't be more than 60% and the disk must provide sustained I/O performance at this rate. Numbers only applicable when Receive-side scaling (RSS) is enabled in the OS.
The following table shows some examples for maximum total video bandwidth per Recording Server:
Storage type and | Maximum video bandwidth at 60% disk utilization | Maximum number of recorded video endpoints |
---|---|---|
HDD - 50 MB/s | 240 Mbps / 2 cores | 48 endpoints |
HDD - 80 MB/s | 384 Mbps / 4 cores | 76 endpoints |
HDD - 120 MB/s | 576 Mbps / 5 cores | 115 endpoints |
SSD - 200 MB/s | 960 Mbps / 8 cores | 192 endpoints |
SSD - 350 MB/s | 1680 Mbps / 14 cores | 336 endpoints |