WebRTC - Protocolli
La comunicazione dati in tempo reale significa una velocità di connessione veloce tra i dispositivi di entrambi gli utenti. Una connessione comune prende un frame di video o audio e lo trasferisce al dispositivo di un altro utente da 30 a 60 volte al secondo per ottenere una buona qualità. Quindi è importante capire che l'invio dell'ultimo frame di dati è più cruciale che assicurarsi che ogni singolo frame arrivi dall'altra parte. Questo è il motivo per cui le applicazioni WebRTC potrebbero perdere determinati frame per mantenere una buona velocità della connessione.
Al giorno d'oggi potresti vedere questo effetto in quasi tutte le applicazioni di riproduzione video. I videogiochi e le app di streaming video possono permettersi di perdere alcuni fotogrammi di video perché la nostra mente cerca di riempire questi spazi mentre visualizziamo sempre ciò che stiamo guardando. Se vogliamo che la nostra applicazione riproduca 50 frame in un secondo e perdiamo i frame 15, 25 e 38, il più delle volte, l'utente non se ne accorgerà. Quindi per le applicazioni di streaming video esiste una serie diversa di requisiti:
Questo è il motivo per cui le applicazioni WebRTC utilizzano UDP (User Datagram Protocol) come protocollo di trasporto. La maggior parte delle applicazioni web oggi sono costruite con l'utilizzo del TCP (Transmission Control Protocol) perché garantisce che:
i dati inviati verranno contrassegnati come ricevuti
i dati che non perverranno dall'altra parte verranno rispediti e l'invio di altri dati verrà temporaneamente interrotto
tutti i dati saranno unici senza duplicati sull'altro lato
Potresti capire perché TCP è un'ottima scelta per la maggior parte delle applicazioni web oggi. Se stai richiedendo una pagina HTML, ha senso ottenere tutti i dati nell'ordine corretto. Ma questa tecnologia non può adattarsi a tutti i casi d'uso. Se prendiamo, ad esempio, un gioco multiplayer, l'utente sarà in grado di vedere solo cosa è successo negli ultimi secondi e nulla più che possa portare a un grande collo di bottiglia quando mancano i dati -
La connessione WebRTC audio e video non vuole essere la più affidabile, ma piuttosto la più veloce tra i dispositivi di due utenti. Quindi possiamo permetterci di perdere frame, il che significa che UDP è la scelta migliore per le applicazioni di streaming audio e video.
UDP è stato creato per essere un livello di trasporto meno affidabile. Non puoi essere sicuro in -
- l'ordine dei tuoi dati
- lo stato di consegna dei tuoi dati
- lo stato di ogni singolo pacchetto di dati
Al giorno d'oggi, WebRTC invia pacchetti multimediali nel modo più veloce possibile. WebRTC può essere un argomento complesso quando si tratta di grandi reti aziendali. I loro firewall possono bloccare il traffico UDP attraverso di loro. È stato fatto molto lavoro per far funzionare correttamente UDP per un vasto pubblico.
La maggior parte del traffico Internet oggi è basato su TCP e UDP, non solo su pagine web. Puoi trovarli su tablet, dispositivi mobili, Smart TV e altro ancora. Quindi è importante capire come funzionano queste tecnologie.