Protocolli di Transport Layer in una Videochiamata Skype: RTP, UDP, SRTP, TLS
Come Skype segmenta audio e video al Livello 4
Quando avvii una videochiamata Skype, il Transport layer (Livello 4 OSI) gestisce segmentazione, multiplexing e consegna end-to-end. I protocolli chiave:
1. RTP — Real-time Transport Protocol (RFC 3550)
- Trasporta il payload multimediale effettivo (frame audio/video).
- Aggiunge intestazioni: numero di sequenza, timestamp, SSRC (sincronizzazione sorgente), tipo di payload.
- Funziona sopra UDP. Non garantisce consegna né ordine—l'applicazione gestisce perdita e jitter.
2. UDP — User Datagram Protocol (RFC 768)
- Senza connessione, overhead minimo (intestazione di 8 byte).
- Nessuna ritrasmissione, nessun controllo di congestione → bassa latenza.
- Preferito per i media in tempo reale perché i pacchetti in ritardo sono inutili.
3. SRTP — Secure RTP (RFC 3711)
- Crittografa il payload RTP e autentica l'intestazione.
- Usa AES-CTR o AES-GCM; chiavi derivate tramite DTLS-SRTP o SDES.
- Protegge riservatezza e integrità dei flussi multimediali.
4. TLS — Transport Layer Security (RFC 8446)
- Protegge il canale di segnalazione (SIP su TLS, o protocollo proprietario Skype su TLS).
- Autentica i peer, scambia certificati, negozia chiavi SRTP (tramite DTLS).
- Funziona sopra TCP (di solito porta 443 per attraversare i firewall).
5. ICE / STUN / TURN (Attraversamento NAT)
- Non è propriamente Transport layer, ma essenziale per il percorso media UDP.
- ICE raccoglie i candidati; STUN scopre l'IP pubblico; TURN rilancia se la connessione diretta fallisce.
Flusso riepilogativo
- TLS protegge l'impostazione della chiamata e lo scambio di chiavi.
- DTLS-SRTP deriva le chiavi multimediali.
- Media codificato → pacchetti RTP → SRTP crittografa → datagrammi UDP → rete.
- Ricevitore: UDP → SRTP decripta → depacchettizza RTP → decodifica → riproduce.
Questo stack raggiunge una latenza inferiore a 150ms con crittografia—fondamentale per una conversazione naturale.