Citrix Virtual Apps and Desktops

Ottimizzazione di Microsoft Teams

Importante:

Il motore multimediale WebRTC nell’app Workspace per Windows 2009.6 e Linux 2009 è stato rinominato da HdxTeams.exe a HdxRtcEngine.exe

Citrix offre ottimizzazione per Microsoft Teams basato su desktop (1.2.00.31357 o versioni successive) utilizzando Citrix Virtual Apps and Desktops e l’app Citrix Workspace. Per impostazione predefinita, tutti i componenti necessari vengono raggruppati nell’app Citrix Workspace e nel Virtual Delivery Agent (VDA).

L’ottimizzazione di Citrix per Microsoft Teams contiene servizi HDX lato VDA e un’API per interfacciarsi con l’app ospitata Microsoft Teams per ricevere comandi. Questi componenti aprono un canale virtuale di controllo (CTXMTOP) verso il motore multimediale sul lato dell’app Citrix Workspace. L’endpoint decodifica i contenuti multimediali e ne esegue il rendering localmente, spostando nuovamente la finestra dell’app Citrix Workspace nell’app Microsoft Teams ospitata.

L’autenticazione e la segnalazione si verificano in modo nativo nell’app ospitata Microsoft Teams, proprio come gli altri servizi Microsoft Teams (ad esempio chat o collaborazione). Il reindirizzamento audio/video non influisce.

CTXMTOP è un canale virtuale di comando e controllo. Ciò significa che i contenuti multimediali non vengono scambiati tra l’app Citrix Workspace e il VDA.

È disponibile solo il recupero dal client e il rendering sul client.

Questa demo video dà un’idea di come Microsoft Teams funziona in un ambiente virtuale Citrix.

Demo dell'ottimizzazione per Microsoft Teams

Installazione di Microsoft Teams

Nota:

Si consiglia di installare il VDA prima di installare Microsoft Teams nell’immagine golden. Questo ordine di installazione è necessario perché il flag ALLUSER=1 abbia effetto. Se è stato installato Microsoft Teams sulla macchina virtuale prima di installare il VDA, disinstallare e reinstallare Microsoft Teams. Se si utilizza App Layering, consultare Per App Layering per ulteriori dettagli.

Si consiglia di seguire le Linee guida per l’installazione di Microsoft Teams a livello di macchina e di evitare di utilizzare il programma di installazione .exe che installa Microsoft Teams in AppData. Installare invece in C:\Program Files (x86)\Microsoft\Teams utilizzando il flag ALLUSER = 1 dalla riga di comando.

msiexec /i <path_to_msi> /l*v <install_logfile_name> ALLUSER=1 ALLUSERS=1

In questo esempio viene utilizzato anche il parametro ALLUSERS=1. Quando si imposta questo parametro, il programma di installazione di Teams a livello di macchina viene visualizzato in Programmi e funzionalità nel Pannello di controllo e in App e funzionalità nelle impostazioni di Windows per tutti gli utenti del computer. Tutti gli utenti possono quindi disinstallare Microsoft Teams se dispongono di credenziali di amministratore.

È importante capire la differenza tra ALLUSERS=1 e ALLUSER=1. È possibile utilizzare il parametro ALLUSERS=1 in ambienti non VDI e VDI. Utilizzare il parametro ALLUSER=1 solo negli ambienti VDI per specificare un’installazione per ogni macchina.

In modalità ALLUSER=1, l’applicazione Microsoft Teams non si aggiorna automaticamente ogni volta che è disponibile una nuova versione. Questa modalità è consigliata per ambienti non persistenti, come app o desktop condivisi ospitati di Windows Server o cataloghi random/in pool di Windows 10. Per ulteriori informazioni, vedere Installare Microsoft Teams utilizzando MSI (sezione Installazione VDI).

Supponiamo che si disponga di ambienti VDI persistenti Windows 10 dedicati. Si desidera che l’applicazione Microsoft Teams si aggiorni automaticamente e si preferisce che Microsoft Teams si installi per ciascun utente in Appdata/Local. In questo caso, utilizzare il programma di installazione di .exe o il file MSI senza ALLUSER=1.

Per PC remoto

Consigliamo di installare Microsoft Teams versione 1.4.00.22472 o successiva. Questa versione include la logica aumentata per il rilevamento VDA e le sessioni HDX attive o connesse localmente alla macchina client. Le versioni precedenti di Teams potrebbero non riuscire a rilevare che un utente è connesso localmente e disabilitare determinate funzionalità o elementi dell’interfaccia utente.

In alcuni scenari di PC remoto, quando un utente si riconnette a una sessione da un endpoint che non supporta l’ottimizzazione HDX, potrebbe essere necessario riavviare Teams perché possa essere ottimizzato per HDX.

Per App Layering

Se si utilizza Citrix App Layering per gestire le installazioni VDA e Microsoft Teams in diversi livelli, distribuire questa chiave del Registro di sistema nei VDI Windows prima di installare Microsoft Teams con ALLUSER=1. Per informazioni, vedere Ottimizzazione per Microsoft Teams con Citrix App Layering nell’elenco delle funzionalità gestite tramite il Registro di sistema.

Consigli per la gestione dei profili

Si consiglia di utilizzare il programma di installazione a livello di macchina per ambienti Windows Server e Windows 10 VDI in pool.

Quando il flag ALLUSER=1 viene trasferito all’MSI dalla riga di comando (il programma di installazione a livello di macchina), l’app Microsoft Teams viene installata in C:\Program Files (x86) (~300 MB). L’app utilizza AppData\Local\Microsoft\TeamsMeetingAddin per i log e AppData\Roaming\Microsoft\Teams (~ 600-700 MB) per configurazioni specifiche dell’utente, memorizzazione nella cache degli elementi nell’interfaccia utente e così via.

Importante:

Se non si trasferisce il flag ALLUSER=1, il file MSI inserisce il programma di installazione Teams.exe e setup.json in C:\Program Files (x86)\Teams Installer. Una chiave del Registro di sistema (TeamsMachineInstaller) viene aggiunta in: HKEY_LOCAL_MACHINE \SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run

Un successivo accesso utente attiva invece l’installazione finale in AppData.

Programma di installazione a livello di macchina

Di seguito è riportato un esempio di cartelle, collegamenti sul desktop e chiavi del Registro di sistema creati installando il programma di installazione di Microsoft Teams a livello di macchina in una macchina virtuale Windows Server 2016 a 64 bit:

Cartella:

  • C:\Program Files (x86)\Microsoft\Teams
  • C:\Users\<username>\AppData\Roaming\Microsoft\Teams

Collegamento sul desktop:

C:\Program Files (x86)\Microsoft\Teams\current\Teams.exe

Chiavi del Registro di sistema:

  • HKEY_LOCAL_MACHINE \SOFTWARE\WOW6432Node\Microsoft\Windows\CurrentVersion\Run
  • HKEY_LOCAL_MACHINE \SOFTWARE\Microsoft\Windows\CurrentVersion\Run
  • HKEY_CURRENT_USER \SOFTWARE\Microsoft\Windows\CurrentVersion\Run

Consigli

  • Si consiglia di disabilitare l’avvio automatico eliminando le chiavi del Registro di sistema di Microsoft Teams. Ciò impedisce che molti accessi che si verificano contemporaneamente (ad esempio, all’inizio della giornata lavorativa) sovraccarichino la CPU della VM.
  • Se il desktop virtuale non dispone di una GPU/vGPU, si consiglia di impostare l’opzione Disable GPU hardware acceleration (Disabilita l’accelerazione hardware della GPU) nelle impostazioni di Microsoft Teams per migliorare le prestazioni. Questa impostazione ("disableGpu":true) è memorizzata in %Appdata%\Microsoft\Teams in desktop-config.json. È possibile utilizzare uno script di accesso per modificare tale file e impostare il valore su true.
  • Se si utilizza Citrix Workspace Environment Management (WEM), abilitare CPU Spikes Protection (Protezione dai picchi di utilizzo della CPU) per gestire il consumo del processore per Microsoft Teams.

Programma di installazione per ciascun utente

Quando si utilizza il programma di installazione di .exe, il processo di installazione è diverso. Tutti i file sono inseriti in AppData.

Cartella:

  • C:\Users\<username>\AppData\Local\Microsoft\Teams
  • C:\Users\<username>\AppData\Local\Microsoft\TeamsPresenceAddin
  • C:\Users\<username>\AppData\Local\Microsoft\TeamsMeetingAddin
  • C:\Users\<username>\AppData\Local\SquirrelTemp
  • C:\Users\<username>\AppData\Roaming\Microsoft\Teams

Collegamento sul desktop:

C:\Users\<username>\AppData\Local\Microsoft\Teams\Update.exe --processStart "Teams.exe"

Chiavi del Registro di sistema:

HKEY_CURRENT_USER \SOFTWARE\Microsoft\Windows\CurrentVersion\Run

Procedure consigliate

I consigli sulle procedure consigliate si basano sugli scenari di utilizzo. L’utilizzo di Microsoft Teams con una configurazione non persistente richiede un gestore di memorizzazione nella cache dei profili per una sincronizzazione efficiente dei dati di runtime di Microsoft Teams. Con un gestore di memorizzazione nella cache dei profili, le informazioni appropriate specifiche dell’utente (ad esempio dati utente, profilo e impostazioni) vengano memorizzate nella cache durante la sessione utente. Sincronizzare i dati in queste due cartelle:

  • C:\Users\<username>\AppData\Local\Microsoft\IdentityCache
  • C:\Users\<username>\AppData\Roaming\Microsoft\Teams

Elenco di esclusione dei contenuti di Microsoft Teams memorizzati nella cache per la configurazione non persistente

Escludere i seguenti elementi dalla cartella di memorizzazione nella cache di Microsoft Teams, %AppData%/Microsoft/Teams. L’esclusione di questi elementi consente di ridurre le dimensioni della memorizzazione nella cache dell’utente per ottimizzare ulteriormente la configurazione non persistente.

Elenco di esclusione - file

  • Roaming\Microsoft\Teams\* .txt

Elenco di esclusione - directory

  • Roaming\Microsoft\Teams\Logs
  • Roaming\Microsoft\Teams\media-stack
  • Roaming\Microsoft\Teams\Service Worker\CacheStorage
  • Roaming\Microsoft\Teams\Application Cache
  • Roaming\Microsoft\Teams\Cache
  • Roaming\Microsoft\Teams\GPUCache
  • Roaming\Microsoft\Teams\meeting-addin\Cache (fondamentale per i problemi in cui il componente aggiuntivo è mancante in Outlook)

Caso d’uso: scenario con sessione singola

In questo scenario, l’utente finale utilizza Microsoft Teams in una posizione alla volta. Non è necessario eseguire Microsoft Teams in due sessioni Windows contemporaneamente. Ad esempio, in una distribuzione di desktop virtuale comune, ogni utente viene assegnato a un desktop e Microsoft Teams viene distribuito all’interno del desktop virtuale come un’unica applicazione. Si consiglia di abilitare il contenitore Citrix Profile e di reindirizzare le directory per utente elencate in Programma di installazione per ciascun utente nel contenitore.

  1. Distribuire il programma di installazione a livello di macchina di Microsoft Teams (ALLUSER=1) nell’immagine golden.
  2. Abilitare Citrix Profile Management e configurare l’archivio dei profili utente con le autorizzazioni appropriate.
  3. Abilitare la seguente impostazione dei criteri di Profile Management (Gestione profili): File system > Synchronization (Sincronizzazione) > Profile container – List of folders to be contained in profile disk (Contenitore profilo - Elenco delle cartelle che devono essere contenute nel disco del profilo).

    Contenitore profilo

    Elencare tutte le directory per ciascun utente in questa configurazione. È anche possibile configurare queste impostazioni utilizzando il servizio Citrix WEM (Workspace Environment Management).

  4. Applicare le impostazioni al gruppo di consegna corretto.
  5. Accedere per convalidare la distribuzione.

Requisiti di sistema

Versione minima consigliata - Delivery Controller (DDC) 1906.2

Se si utilizza una versione precedente, vedere Abilitare l’ottimizzazione di Microsoft Teams.

Sistemi operativi supportati:

  • Windows Server 2019, 2016, 2012R2 Standard e Datacenter Edition e con l’opzione Server Core

Versione minima - Virtual Delivery Agent (VDA) 1906.2

Sistemi operativi supportati:

  • Windows 10 a 64 bit, versioni 1607 e successive. Le app in hosting su VM non sono supportate.
  • Windows Server 2022, 2019, 2016 e 2012 R2 (edizioni Standard e Datacenter).

Requisiti:

  • BCR_x64.msi: file MSI che contiene il codice di ottimizzazione di Microsoft Teams e viene avviato automaticamente dalla GUI. Se si utilizza l’interfaccia della riga di comando per l’installazione del VDA, non escluderlo.

Versione consigliata: versione corrente più recente dell’app Citrix Workspace per Windows e versione minima: app Citrix Workspace 1907 per Windows

  • Windows 8 e 10 (edizioni a 32 e 64 bit, incluse le edizioni Embedded) (il supporto per Windows 7 è stato interrotto alla versione 2006)
  • Windows 10 IoT Enterprise 2016 LTSB (v1607) e 2019 LTSC (v1809)
  • Architetture di processore (CPU) supportate: x86 e x64 (ARM non è supportato)
  • Requisiti endpoint: CPU dual core di circa 2,2-2,4 GHz in grado di supportare una risoluzione HD a 720p durante una chiamata in videoconferenza peer-to-peer.
  • CPU dual o quad-core con velocità base più basse (~1,5 GHz) dotate di Intel Turbo Boost o AMD Turbo Core con possibile aumento fino ad almeno 2,4 GHz.
  • Thin client HP verificati: t630/t640, t730/t740, mt44/mt45.
  • Thin client Dell verificati: 5070, 5470 Mobile TC.
  • Thin Client 10Zig verificati: 4510 e 5810q.
  • Per un elenco completo degli endpoint verificati, vedere Thin client.
  • L’app Citrix Workspace richiede almeno 600 MB di spazio libero su disco e 1 GB di RAM.
  • Il requisito minimo di Microsoft .NET Framework è la versione 4.6.2. L’app Citrix Workspace scarica e installa automaticamente .NET Framework se non è presente sul sistema.

Gli amministratori possono abilitare/disabilitare Microsoft Teams a partire dalla modalità ottimizzata modificando il criterio di ottimizzazione di Teams. Gli utenti che iniziano in modalità ottimizzata nell’app Citrix Workspace non hanno la possibilità di disabilitare Microsoft Teams.

Versione minima: app Citrix Workspace 2006 per Linux

Per ulteriori informazioni, vedere Ottimizzazione per Microsoft Teams in Novità della versione 2006.

Software:

  • GStreamer 1.0 o versioni successive o Cairo 2
  • libc++-9.0 o versioni successive
  • libgdk 3.22 o versioni successive
  • OpenSSL 1.1.1d
  • Distribuzione Linux x64

Hardware:

  • CPU dual-core da almeno 1,8 GHz in grado di supportare una risoluzione HD a 720p durante una chiamata in videoconferenza peer-to-peer
  • CPU dual o quad-core con una velocità base di 1,8 GHz e un’alta velocità Intel Turbo Boost di almeno 2,9 GHz

Per un elenco completo degli endpoint verificati, vedere Thin client.

Per ulteriori informazioni, vedere Prerequisiti per l’installazione dell’app Citrix Workspace.

È possibile disabilitare l’ottimizzazione di Teams modificando il valore del campo VDWEBRTC in Off nel file /opt/Citrix/ICAClient/config/module.ini. Il valore predefinito è VDWEBRTC=On. Dopo aver eseguito l’aggiornamento, riavviare la sessione (è richiesta l’autorizzazione root).

Versione minima: app Citrix Workspace 2012 per Mac

Sistemi operativi supportati:

  • macOS Catalina (10.15).
  • macOS Big Sur 11.0.1 o superiore.

Funzionalità supportate:

  • Audio
  • Video
  • Ottimizzazione della condivisione dello schermo (in entrata e in uscita)

Nota:

L’app Citrix Viewer richiede l’accesso alle preferenze di sicurezza e privacy di macOS perché la condivisione dello schermo possa funzionare. Gli utenti configurano questa preferenza accedendo al menu Apple > Preferenze di sistema > Sicurezza e privacy > scheda Privacy > Registrazione dello schermo e selezionando Citrix Viewer.

L’ottimizzazione di Microsoft Teams funziona per impostazione predefinita se l’utente dispone dell’app Citrix Workspace 2012 o versioni successive e macOS 10.15.

Se si desidera disabilitare l’ottimizzazione di Microsoft Teams, eseguire questo comando nel terminale e riavviare l’app Workspace:

defaults write com.citrix.receiver.nomas mtopEnabled -bool NO

Versione minima: app Citrix Workspace 2105.5 per ChromeOS

Funzionalità supportate:

  • Audio
  • Video
  • Ottimizzazione della condivisione dello schermo (in entrata e in uscita): disabilitata per impostazione predefinita. Consultare queste impostazioni per istruzioni su come abilitarla.

Supporto delle funzionalità e versioni supportate

Funzione Windows CR Windows 1912 LTSR (e CU1-CU4) Windows 1912 CU5 (o superiore) Mac Linux ChromeOS
Audio/Video (P2P e conferenza) 1907 2009 2004 2105.5
Condivisione dello schermo 1907 2012 2006 2105.5 (1)
i. Indicatore schermo Bordo rosso 2002 2012 2006 X
ii. Limita l’acquisizione in Desktop Viewer 2009.5 X 2012 2006 X
iii. Multimonitor 2106 (2) X X 2106 2106 X
DTMF 2102 X Sì (5) 2101 2101 X
Supporto per server proxy 2012 (3) X Sì (3) (5) 2104 (4) 2101 (4) X
  1. Disabilitato per impostazione predefinita, richiede l’abilitazione da parte dell’amministratore.
  2. Visualizzatore CD solo in modalità a schermo intero. MAIUSC+F2 non supportato.
  3. Negotiate/Kerberos, NTLM, Basic e Digest. Sono supportati anche i file Pac.
  4. Solo anonimo.
  5. Solo su sistema operativo client Windows 10.

Abilitare l’ottimizzazione di Microsoft Teams

Per abilitare l’ottimizzazione per Microsoft Teams, utilizzare il criterio Manage console (Gestisci console) descritto nel criterio di reindirizzamento di Microsoft Teams. È ON (Abilitato) per impostazione predefinita. Oltre all’abilitazione di questo criterio, HDX verifica che la versione dell’app Citrix Workspace corrisponda almeno alla versione minima richiesta. Se il criterio è stato abilitato e la versione dell’app Citrix Workspace è supportata, la chiave del Registro di sistema HKEY_CURRENT_USER\Software\Citrix\HDXMediaStream\MSTeamsRedirSupport viene impostata automaticamente su 1 sul VDA. Microsoft Teams legge la chiave per caricarsi in modalità VDI.

Nota:

Se si utilizzano VDA versione 1906.2 o superiore con versioni precedenti del controller (ad esempio, versione 7.15) che non dispongono del criterio disponibile in Manage console (Gestione console) (Studio), il VDA può comunque essere ottimizzato. L’ottimizzazione HDX per Microsoft Teams è abilitata per impostazione predefinita nel VDA.

Se si fa clic su About (Informazioni) > Version (Versione), viene visualizzata la legenda Citrix HDX Optimized (Ottimizzato per Citrix HDX):

Leganda Optimized for Citrix (Ottimizzato per Citrix)

Se viene visualizzato il messaggio Citrix HDX Not Connected (Citrix HDX non connesso), l’API Citrix viene caricata in Microsoft Teams. Il caricamento dell’API è il primo passo verso il reindirizzamento. Ma c’è un errore nelle parti successive dello stack. L’errore è molto probabilmente nei servizi VDA o nell’app Citrix Workspace.

Legenda Not optimized for Citrix (Non ottimizzato per Citrix)

Se non viene visualizzata alcuna legenda, Microsoft Teams non è riuscito a caricare l’API Citrix. Uscire da Microsoft Teams facendo clic con il pulsante destro del mouse sull’icona dell’area di notifica e riavviare l’applicazione. Assicurarsi che il criterio Manage console (Gestisci console) non sia impostato su Prohibited (Non consentito) e che la versione dell’app Citrix Workspace sia supportata.

Nessuna legenda Citrix

Requisiti di rete

Microsoft Teams si affida ai server del processore di contenuti multimediali in Office 365 per riunioni o chiamate con più partecipanti. Microsoft Teams si basa sui relè di trasporto di Office 365 per questi scenari:

  • Due peer in una chiamata point-to-point non hanno connettività diretta
  • Un partecipante non dispone di connettività diretta al processore multimediale.

Di conseguenza, l’integrità della rete tra il peer e il cloud di Office 365 determina le prestazioni della chiamata.

Si consiglia di valutare l’ambiente per identificare eventuali rischi e requisiti che possono influenzare la distribuzione globale di voce e video nel cloud. Utilizzare lo Strumento di valutazione della rete di Skype for Business per verificare se la rete è pronta per Microsoft Teams. Per informazioni sul supporto, vedere Supporto.

Riepilogo delle principali raccomandazioni di rete per il traffico RTP (Real Time Protocol)

  • Connettersi alla rete Office 365 il più direttamente possibile dalla filiale.
  • Se è necessario utilizzare uno dei seguenti elementi presso la filiale, assicurarsi che il traffico RTP/UDP di Teams non sia ostacolato. HdxTeams.exe non rispetta i proxy espliciti configurati sull’endpoint.
    • Ignorare i server proxy
    • Intercettazione SSL di rete
    • Dispositivi di ispezione profonda dei pacchetti
    • Hairpin VPN (utilizzare lo split tunneling se possibile)
  • Pianificare e fornire una larghezza di banda sufficiente.
  • Verificare la connettività e la qualità della rete di ogni filiale.

Il motore multimediale WebRTC nell’app Workspace (HdxTeams.exe o HdxRtcEngine.exe) utilizza il protocollo SRTP (Secure Real-Time Transport Protocol) per i flussi multimediali di cui viene eseguito l’offloading nel client. SRTP fornisce riservatezza e autenticazione a RTP utilizzando chiavi simmetriche (128 bit) per crittografare i contenuti multimediali e controllare i messaggi e utilizza la crittografia AES in modalità contatore.

Le seguenti metriche sono consigliate per un’esperienza utente positiva:

Metrica Endpoint verso Office 365
Latenza (a senso unico) < 50 msec
Latenza (RTT) < 100 msec
Perdita di pacchetti <1% durante ogni intervallo di 15 secondi
Jitter inter-arrivo dei pacchetti <30 ms durante ogni intervallo di 15 secondi

Per ulteriori informazioni, vedere Preparare la rete dell’organizzazione per Microsoft Teams.

In termini di requisiti di larghezza di banda, l’ottimizzazione per Microsoft Teams può utilizzare un’ampia gamma di codec per audio (OPUS/G.722/PCM G711) e video (H264).

I peer negoziano questi codec durante il processo di creazione delle chiamate utilizzando l’offerta/risposta SDP (Session Description Protocol). Le raccomandazioni minime di Citrix per utente sono:

Tipo Larghezza di banda Codec
Audio (tutte le direzioni) ~ 90 kbps G.722
Audio (tutte le direzioni) ~ 60 kbps Opus*
Video (tutte le direzioni) ~ 700 kbps H264 360p @ 30 fps 16:9
Condivisione dello schermo ~ 300 kbps H264 1080p @ 15 fps

* Opus supporta la codifica dei bitrate costante e variabile da 6 kbps fino a 510 kbps.

Opus è il codec preferito per le chiamate peer-to-peer tra due utenti VDI ottimizzati.

G.722 e H264 sono i codec preferiti per un utente VDI che partecipa a una riunione.

Importante:

Per quanto riguarda le prestazioni, la codifica è più costosa della decodifica in termini di utilizzo della CPU sul computer client. È possibile codificare la massima risoluzione di codifica nell’app Workspace per Linux e Windows. Vedere Stima delle prestazioni dell’encoder e Ottimizzazione per Microsoft Teams.

Server proxy

A seconda della posizione del proxy, considerare quanto segue:

  • Configurazione proxy sul VDA:

    Se si configura un server proxy esplicito nel VDA e si instradano le connessioni all’host locale tramite un proxy, il reindirizzamento non riesce. Per configurare correttamente il proxy, è necessario selezionare l’impostazione Bypass proxy servers for local address (Ignora i server proxy per l’indirizzo locale) in Opzioni Internet > Connessioni > Impostazioni LAN > Server proxy e assicurarsi che 127.0.0.1:9002 venga ignorato.

    Se si utilizza un file PAC, lo script di configurazione del proxy VDA del file PAC deve restituire DIRECT per wss://127.0.0.1:9002. In caso contrario, l’ottimizzazione non riesce. Per assicurarsi che lo script restituisca DIRECT, utilizzare shExpMatch(url, "wss://127.0.0.1:9002/*").

  • Configurazione proxy sull’app Citrix Workspace:

    Se la filiale è configurata per accedere a Internet tramite un proxy, queste versioni supportano i server proxy:

    • App Citrix Workspace per Windows versione 2012 (Negotiate/Kerberos, NTLM, Basic e Digest. Sono supportati anche i file Pac)
    • App Citrix Workspace per Windows versione 1912 CU5 (Negotiate/Kerberos, NTLM, Basic e Digest. Sono supportati anche i file Pac)
    • App Citrix Workspace per Linux versione 2101 (autenticazione anonima)
    • App Citrix Workspace per Mac versione 2104 (autenticazione anonima)

I dispositivi client con versioni precedenti dell’app Citrix Workspace non possono leggere le configurazioni proxy. Questi dispositivi inviano il traffico direttamente ai server TURN di Office 365.

Importante:

Verificare che il dispositivo client possa connettersi al server DNS per eseguire le risoluzioni DNS. Un dispositivo client deve essere in grado di risolvere tre FQDN del server TURN di Microsoft Teams: worldaz.turn.teams.microsoft.com, usaz.turn.teams.microsoft.com e euaz.turn.teams.microsoft.com.

Percorsi per l’avvio di chiamate e il flusso di contenuti multimediali

Quando possibile, il motore multimediale HDX WebRTC nell’app Citrix Workspace (HdxTeams.exe o HdxRtcEngine.exe) tenta di stabilire una connessione SRTP (Secure Real-Time Transport Protocol) di rete diretta tramite UDP (User Datagram Protocol) in una chiamata peer-to-peer. Se le porte UDP sono bloccate, il motore multimediale torna a TCP 443.

Il motore multimediale HDX supporta ICE, STUN (Session Traversal Utilities for NAT) e TURN (Traversal Using Relays around NAT) per individuare candidati e stabilire connessioni.

Si noti che questo significa che l’endpoint deve essere in grado di eseguire risoluzioni DNS.

Supponiamo che non vi sia un percorso diretto tra i due peer o tra un peer e un server di conferenza, ad esempio se l’utente sta partecipando a una chiamata o una riunione con più persone. HdxTeams.exe utilizza un relay server di trasporto Microsoft Teams in Office 365 per raggiungere l’altro peer o il processore multimediale, dove sono ospitate le riunioni. Il computer client dell’utente deve avere accesso a due intervalli di indirizzi IP della subnet di Office 365 e a 4 porte UDP. Per ulteriori informazioni, vedere il diagramma Architettura in Configurazione delle chiamate e URL di Office 365 e intervalli di indirizzi IP ID 11

ID Categoria Indirizzi Porte di destinazione
11 Ottimizzazione richiesta 13.107.64.0/18, 52.112.0.0/14, 52.120.0.0/14 UDP: 3478, 3479, 3480, 3481, TCP: 443 (fallback)

Questi intervalli contengono sia i relè di trasporto che i processori multimediali. I relè di trasporto di Microsoft Teams forniscono funzionalità STUN e TURN, ma non sono endpoint ICE. Inoltre, i relè di trasporto di Microsoft Teams non interrompono elementi multimediali e non eseguono alcuna transcodificazione. Possono collegare TCP (se HdxTeams.exe utilizza TCP) a UDP quando inoltrano il traffico ad altri peer o processori multimediali.

Il motore multimediale WebRTC dell’app Workspace contatta il relè di trasporto di Microsoft Teams più vicino nel cloud di Office 365. Il motore multimediale utilizza IP anycast e le porte UDP 3478-3481 (porte UDP diverse per carico di lavoro, anche se può verificarsi il multiplexing) o 443 TCP TLSv1.2 per i fallback. La qualità delle chiamate dipende dal protocollo di rete sottostante. Poiché UDP è sempre consigliato su TCP, si consiglia di progettare le reti in modo da supportare il traffico UDP nella filiale.

Se Microsoft Teams è stato caricato in modalità ottimizzata e HdxTeams.exe è in esecuzione sull’endpoint, gli errori ICE potrebbero causare un errore di configurazione delle chiamate o audio/video monodirezionale. Quando una chiamata non può essere completata o i flussi multimediali non sono full duplex, controllare prima la traccia Wireshark sull’endpoint. Per ulteriori informazioni sul processo di raccolta dei candidati ICE, vedere “Raccolta dei log” nella sezione Supporto.

Nota:

Se gli endpoint non hanno accesso a Internet, potrebbe comunque essere possibile per gli utenti effettuare una chiamata peer-to-peer se si trovano entrambi sulla stessa LAN. Non è possibile tenere riunioni. In questo caso, c’è un timeout di 30 secondi prima dell’inizio della configurazione della chiamata.

Configurazione delle chiamate

Utilizzare questo diagramma di architettura come riferimento visivo per la sequenza del flusso di chiamata. I passaggi corrispondenti sono indicati nel diagramma.

Architettura

Come funziona l'ottimizzazione per Microsoft Teams

  1. Avviare Microsoft Teams.
  2. Microsoft Teams si autentica in O365. I criteri tenant vengono spostati al client Microsoft Teams e le informazioni pertinenti relative a TURN e al canale di segnalazione vengono inoltrate all’app.
  3. Teams rileva che è in esecuzione in un VDA ed effettua chiamate API all’API JavaScript Citrix.
  4. Il JavaScript Citrix in Microsoft Teams apre una connessione WebSocket sicura a WebSocketService.exe in esecuzione sul VDA, che genera WebSocketAgent.exe all’interno della sessione utente.
  5. WebSocketAgent.exe crea un’istanza di un canale virtuale generico chiamando il servizio di reindirizzamento di Teams Citrix HDX (CtxSvcHost.exe).
  6. wfica32.exe (motore HDX) dell’app Citrix Workspace genera un nuovo processo chiamato HdxTeams.exe o HdxRtcEngine.exe, che è il nuovo motore WebRTC utilizzato per l’ottimizzazione di Microsoft Teams.
  7. Il motore multimediale Citrix e Teams.exe hanno un percorso di canale virtuale a 2 vie e possono iniziare a elaborare le richieste multimediali.

    —–Chiamate dell’utente——

  8. Il peer A fa clic sul pulsante di chiamata. Teams.exe comunica con i servizi Microsoft Teams in Office 365 stabilendo un percorso di segnalazione end-to-end con il peer B. Microsoft Teams chiede a HdxTeams una serie di parametri di chiamata supportati (codec, risoluzioni e così via, questo è noto come offerta SDP [Session Description Protocol]). Questi parametri di chiamata vengono quindi inoltrati utilizzando il percorso di segnalazione ai servizi Microsoft Teams in Office 365 e da lì all’altro peer.
  9. L’offerta/risposta SDP (negoziazione a passaggio singolo) avviene attraverso il canale di segnalazione e vengono completati i controlli di connettività ICE (attraversamenti NAT e firewall utilizzando le richieste di associazione STUN). Quindi, i contenuti multimediali SRTP (Secure Real-time Transport Protocol) vanno direttamente da HdxTeams.exe all’altro peer e viceversa (o i Conference Server Office 365 se si tratta di una riunione).

Microsoft Phone System

Phone System è la tecnologia Microsoft che consente il controllo delle chiamate e PBX nel cloud di Office 365 con Microsoft Teams. L’ottimizzazione per Microsoft Teams supporta Phone System, utilizzando i piani di chiamata di Office 365 o il routing diretto. Con il routing diretto è possibile connettere il session border controller supportato da Microsoft Phone System direttamente senza alcun software locale aggiuntivo. Sono supportati code di chiamata, trasferimento, inoltro, messa in pausa, disattivazione dell’audio e ripresa di una chiamata.

DTMF:

DTMF (Dual Tone Multi Frequency) è supportata con queste versioni dell’app Citrix Workspace (o superiore):

  • App Citrix Workspace per Windows versione 2102
  • App Citrix Workspace per Windows LTSR 1912 CU5 (solo sistema operativo Windows 10)
  • App Citrix Workspace per Linux versione 2101
  • App Citrix Workspace per Mac versione 2101

Considerazioni sul firewall

Quando gli utenti avviano una chiamata ottimizzata utilizzando il client Microsoft Teams per la prima volta, potrebbero notare un avviso nelle impostazioni del firewall di Windows. L’avviso richiede agli utenti di consentire la comunicazione per HdxTeams.exe o HdxRtcEngine.exe (HDX Overlay Teams).

Avviso del firewall

Le quattro voci seguenti vengono aggiunte in Regole in entrata nella console Windows Defender Firewall > Sicurezza avanzata. Se si desidera, è possibile applicare regole più restrittive.

Regole in ingresso del firewall

Coesistenza di Microsoft Teams e Skype for Business

È possibile distribuire Microsoft Teams e Skype for Business fianco a fianco, come due soluzioni separate con funzionalità sovrapposte. Per ulteriori informazioni, vedere Comprendere la coesistenza e l’interoperabilità di Microsoft Teams e Skype for Business.

Citrix RealTime Optimization Pack e l’ottimizzazione HDX per i motori multimediali di Microsoft Teams rispettano quindi la configurazione impostata nell’ambiente. Alcuni esempi includono le modalità isola, la collaborazione Skype for Business con Microsoft Teams e la collaborazione e le riunioni Skype for Business con Microsoft Teams.

L’accesso alle periferiche può essere concesso solo a una singola applicazione alla volta. Ad esempio, l’accesso alla webcam da parte di RealTime Media Engine durante una chiamata blocca il dispositivo di imaging durante una chiamata. Quando il dispositivo viene rilasciato, diventa disponibile per Microsoft Teams.

Coesistenza di Teams e Skype

Citrix SD-WAN: connettività di rete ottimizzata per Microsoft Teams

La qualità audio e video ottimale richiede una connessione di rete al cloud di Office 365 con bassa latenza, basso jitter e bassa perdita di pacchetti. Il backhauling del traffico RTP audio-video di Microsoft Teams dagli utenti dell’app Citrix Workspace nelle sedi delle filiali a un centro dati prima del passaggio a Internet può aggiungere latenza eccessiva. Potrebbe anche causare congestione sui collegamenti WAN. Citrix SD-WAN ottimizza la connettività per Microsoft Teams seguendo i principi di connettività di rete di Microsoft Office 365. Citrix SD-WAN utilizza l’indirizzo IP e il servizio Web di Office 365 basati su Microsoft REST e il DNS di prossimità per identificare, classificare e indirizzare il traffico di Microsoft Teams.

Le connessioni a Internet aziendali a banda larga in molte zone soffrono di perdite intermittenti di pacchetti, periodi di jitter eccessivo e interruzioni.

Citrix SD-WAN offre due soluzioni per preservare la qualità audio-video di Microsoft Teams quando lo stato della rete è variabile o degradato.

  • Se si utilizza Microsoft Azure, un’appliance virtuale Citrix SD-WAN (VPX) distribuita nella rete virtuale di Azure fornisce ottimizzazioni di connettività avanzate. Queste ottimizzazioni includono il failover dei collegamenti senza soluzione di continuità e il racing dei pacchetti audio.
  • I clienti Citrix SD-WAN possono connettersi a Office 365 tramite il servizio Citrix Cloud Direct. Questo servizio offre una consegna affidabile e sicura per tutto il traffico collegato a Internet.

Se la qualità della connessione Internet della filiale non è un problema, potrebbe essere sufficiente ridurre al minimo la latenza indirizzando il traffico di Microsoft Teams direttamente dall’appliance della filiale Citrix SD-WAN alla porta principale di Office 365 più vicina. Per ulteriori informazioni, vedere Ottimizzazione di Office 365 di Citrix SD-WAN.

Citrix SD-WAN

Visualizzazione Raccolta e altoparlanti attivi in Microsoft Teams

Microsoft Teams supporta i layout Gallery (Galleria), Large gallery (Galleria ampia) e la modalità Together (Insieme).

Microsoft Teams visualizza una griglia 2x2 con flussi video di quattro partecipanti (nota come Gallery [Galleria]). In questo caso, Teams invia quattro flussi video al dispositivo client per la decodifica. Quando più di quattro partecipanti condividono video, sullo schermo appaiono solo gli ultimi quattro partecipanti che hanno parlato di più.

Microsoft Teams fornisce inoltre un’ampia vista galleria con una griglia fino a 7x7. Di conseguenza, il Conference Server di Microsoft Teams combina un singolo feed video e lo invia al dispositivo client per la decodifica, con conseguente riduzione del consumo della CPU. Questo feed singolo in stile matrice potrebbe includere anche il video con anteprima automatica degli utenti.

Infine, Microsoft Teams supporta la modalità Together (Insieme), che fa parte della nuova esperienza di riunione. Utilizzando la tecnologia di segmentazione IA per posizionare digitalmente i partecipanti in un background condiviso, Teams mette tutti i partecipanti nello stesso auditorium.

L’utente può controllare queste modalità durante una chiamata in conferenza selezionando i layout Gallery (Galleria), Large gallery (Galleria ampia) o la modalità Together (Insieme) nel menu con i tre puntini.

Layout video

Supporto per limitazioni delle proporzioni video (CWA per Windows 2102, CWA per Linux 2106, CWA per MAC 2106 o superiore):

  • L’opzione Fill to frame (Riempi inquadratura) è disponibile nelle viste Gallery (Galleria)/Large Gallery (Galleria ampia). Questa opzione ritaglia le dimensioni del video per adattarlo alla sottofinestra. Fit to frame (Adatta all’inquadratura), invece, visualizza barre nere (formato 16:9) sui lati del video in modo che non ci siano ritagli.

Condivisione dello schermo in Microsoft Teams

Microsoft Teams si basa sulla condivisione dello schermo basata su video (VBSS), codificando essenzialmente il desktop condiviso con codec video come H264 e creando un flusso ad alta definizione. Con l’ottimizzazione HDX, la condivisione dello schermo in entrata viene considerata come un flusso video. Pertanto, se ci si trova nel mezzo di una videochiamata e l’altro peer inizia a condividere il desktop, il feed video della videocamera originale viene sospeso. Viene invece visualizzato il feed video per la condivisione dello schermo. Il peer deve quindi riprendere manualmente la condivisione della videocamera.

La condivisione dello schermo in uscita viene inoltre ottimizzata e ne viene eseguito l’offloading nell’app Citrix Workspace (versione 1907 o successiva). In questo caso, il motore multimediale acquisisce e trasmette solo la finestra di Citrix Desktop Viewer (CDViewer.exe). Se si desidera condividere un’applicazione locale in esecuzione sulla macchina client, è possibile sovrapporla su CDViewer. L’applicazione verrà anche acquisita.

L’app Citrix Workspace 2009.6 per Windows esegue l’acquisizione bitmap nativa della finestra, quindi non viene acquisita alcuna finestra sovrapposta.

Multi-monitor: nei casi in cui Desktop Viewer (CDViewer.exe) è in modalità a schermo intero e si estende a configurazioni multi-monitor, l’app Citrix Workspace 2106 o superiore (Windows/Linux/Mac) consente al selettore dello schermo di selezionare il monitor da condividere. Se Desktop Viewer è disabilitato (modificando il modello di file .ica o Storefront web.config) o se viene utilizzato Desktop Lock, la selezione multimonitor non è disponibile nel selettore dello schermo. Il tasto di scelta rapida MAIUSC+F2 non è compatibile con la condivisione dello schermo multimonitor.

Nelle versioni dell’app Workspace precedenti alla 2106, viene condiviso solo il monitor principale. Gli utenti devono trascinare l’applicazione nel desktop virtuale sul monitor principale in modo che l’altro peer nella chiamata la veda.

Condivisione dello schermo

Nota:

Se si pubblica Microsoft Teams come applicazione autonoma senza soluzione di continuità, la condivisione dello schermo acquisisce il desktop locale dell’endpoint fisico nell’app Citrix Workspace (versione minima 1909).

Periferiche in Microsoft Teams

Quando l’ottimizzazione per Microsoft Teams è attiva, l’app Citrix Workspace accede alle periferiche (cuffie, microfono, videocamere, altoparlanti e così via). Quindi le periferiche vengono elencate correttamente nell’interfaccia utente di Microsoft Teams (Impostazioni > Dispositivi).

Modalità di ottimizzazione per Microsoft Teams

Microsoft Teams non accede direttamente ai dispositivi. Si basa invece sul motore multimediale WebRTC dell’app Workspace per l’acquisizione e l’elaborazione dei contenuti multimediali. Microsoft Teams elenca i dispositivi che l’utente può selezionare.

Raccomandazioni:

  • Cuffie certificate Microsoft Teams con cancellazione dell’eco integrata. Nelle configurazioni con più periferiche, in cui microfono e altoparlanti si trovano su dispositivi separati, potrebbe essere presente un’eco. Un esempio è una webcam con un microfono incorporato e un monitor con altoparlanti. Quando si utilizzano altoparlanti esterni, posizionarli il più lontano possibile dal microfono e da qualsiasi superficie che potrebbe rifrangere il suono nel microfono.
  • Videocamere certificate Microsoft Teams, anche se le periferiche certificate Skype for Business sono compatibili con Microsoft Teams.
  • Il motore multimediale dell’app Citrix Workspace non può sfruttare l’offload della CPU con webcam che eseguono la codifica H.264 on-board UVC 1.1 e 1.5.

Nota:

L’app Workspace 2009.6 per Windows è ora in grado di acquisire periferiche con formati audio a 24 bit o con frequenze superiori a 96 kHz.

HdxTeams.exe (nell’app Workspace per Windows 2009 o versioni precedenti) supporta solo questi formati specifici dei dispositivi audio (canali, profondità di bit e frequenza di campionamento):

  • Dispositivi di riproduzione: fino a 2 canali, 16 bit, frequenze fino a 96.000 Hz
  • Dispositivi di registrazione: fino a 4 canali, 16 bit, frequenze fino a 96.000 Hz

Anche se un solo altoparlante o microfono non corrisponde alle impostazioni previste, l’enumerazione dei dispositivi in Teams non va a buon fine e viene visualizzato Nessuno in Impostazioni > Dispositivi. I log Webrpc in HdxTeams.exe mostrano questo tipo di informazioni:

Mar 27 20:58:22.885 webrtcapi.WebRTCEngine Info: init. initializing...

Mar 27 20:58:23.190 webrtcapi.WebRTCEngine Error: init. couldn't create audio module!

Come soluzione alternativa, disabilitare il dispositivo specifico oppure:

  1. Aprire Audio nel Pannello di controllo (mmsys.cpl).
  2. Selezionare il dispositivo di riproduzione o registrazione.
  3. Andare a Proprietà > Avanzate e modificare le impostazioni su una modalità supportata.

Modalità di fallback

Se Microsoft Teams non riesce a caricarsi in modalità VDI ottimizzata (“Citrix HDX Not Connected” [Citrix HDX non connesso] in Teams/Informazioni/Versione), il VDA torna a utilizzare le tecnologie HDX legacy come il reindirizzamento della webcam e il reindirizzamento del microfono e dell’audio del client. Se si utilizza una versione dell’app Workspace/un sistema operativo della piattaforma che non supporta l’ottimizzazione di Teams, le chiavi del Registro di sistema di fallback non si applicano. In modalità di fallback, le periferiche sono mappate al VDA. Le periferiche vengono visualizzate nell’app Microsoft Teams come se fossero collegate localmente al desktop virtuale.

Ora è possibile controllare granularmente il meccanismo di fallback impostando le chiavi del Registro di sistema nel VDA. Per informazioni, vedere Modalità di fallback di Microsoft Teams nell’elenco delle funzionalità gestite tramite il Registro di sistema.

Questa funzionalità richiede Teams versione 1.3.0.13565 o successiva.

Per determinare se si è in modalità ottimizzata o non ottimizzata quando si esamina la scheda Impostazioni > Dispositivi in Teams, la differenza più significativa è il nome della videocamera. Se Microsoft Teams è stato caricato in modalità non ottimizzata, vengono avviate le tecnologie HDX legacy. Il nome della webcam presenta il suffisso Citrix HDX, come mostrato nell’immagine seguente. I nomi dell’altoparlante e del microfono potrebbero essere leggermente diversi (o troncati) rispetto alla modalità ottimizzata.

Modalità di non ottimizzazione per Microsoft Teams

Quando vengono utilizzate tecnologie HDX legacy, Microsoft Teams non esegue l’offload dell’elaborazione di audio, video e condivisione dello schermo nel motore multimediale WebRTC dell’app Citrix Workspace dell’endpoint. Le tecnologie HDX utilizzano invece il rendering lato server. È previsto un elevato consumo di CPU sul VDA quando viene attivato il video. Le prestazioni audio in tempo reale potrebbero non essere ottimali.

Limitazioni note

Limitazioni Citrix

Limitazioni sull’app Citrix Workspace:

  • Pulsanti HID: risposta e fine chiamata non sono supportati. I tasti per abbassare e alzare il volume sono supportati.
  • La suoneria secondaria (Teams > Impostazioni > Dispositivi) non è supportata.
  • Le impostazioni QoS nell’interfaccia di amministrazione per Microsoft Teams non sono valide per gli utenti VDI.
  • La funzionalità aggiuntiva per la protezione delle app per l’app Citrix Workspace impedisce la condivisione dello schermo in uscita e blocca la condivisione di schermo e video in entrata.

Limitazione sul VDA:

  • Quando si configura l’impostazione High DPI (DPI elevato) dell’app Citrix Workspace su Yes (Sì), la finestra video reindirizzata non è nella posizione corretta quando il fattore di ridimensionamento DPI del monitor è impostato su un valore superiore al 100%.

Limitazioni sull’app Citrix Workspace e sul VDA:

  • Condivisione dello schermo in uscita: la condivisione delle applicazioni non è supportata.
  • È possibile controllare il volume di una chiamata ottimizzata solo utilizzando la barra del volume sul computer client, non sul VDA.

Limitazioni Microsoft

  • Le opzioni per sfocare o personalizzare lo sfondo non sono supportate.
  • La vista galleria 3x3 non è supportata. Dipendenza di Microsoft Teams: contattare Microsoft per sapere quando sarà disponibile la griglia 3x3.
  • L’interoperabilità con Skype for Business è limitata alle chiamate audio, nessuna modalità video.
  • La risoluzione massima del flusso video in entrata e in uscita è 720p. Dipendenza di Microsoft Teams: contattare Microsoft per sapere quando sarà disponibile 1080p.
  • Il tono di suoneria delle chiamate PSTN non è supportato.
  • Il bypass dei contenuti multimediali per il routing diretto non è supportato.
  • È supportato un solo flusso video da una videocamera in entrata o streaming di condivisione dello schermo. Quando una condivisione dello schermo è in arrivo, la condivisione dello schermo viene mostrata al posto del video dell’altoparlante dominante.
  • I ruoli di produttore e presentatore di eventi broadcast e live non sono supportati. Il ruolo di partecipante è supportato ma non ottimizzato (viene invece eseguito il rendering sul VDA).
  • La funzione zoom avanti e zoom indietro in Microsoft Teams non è supportata.

Limitazioni Citrix e Microsoft

  • Quando si esegue la condivisione dello schermo, l’opzione Includi audio di sistema non è disponibile.
  • La chat a comparsa (nota anche come chat multifinestra o nuova esperienza di riunione) non è supportata.
  • Le sale di breakout sono supportate per i partecipanti VDI. Microsoft Teams non supporta le sale di breakout se l’organizzatore è un utente VDI.
  • Assumere e concedere il controllo: funzione non supportata durante una sessione di condivisione dello schermo del desktop o di condivisione delle applicazioni. Supportata solo durante una sessione di condivisione PowerPoint.
  • Il servizio E911 e il routing basato sulla posizione non sono supportati.

Informazioni aggiuntive