segmenti UDP persi

2

So che a UDP non interessa l'ordine del segmento (pacchetto) e il loro arrivo sulla destinazione. allora come diavolo siamo in grado di riprodurre video?

  • se un segmento è perso (non raggiunge la destinazione), la destinazione non ne ha idea. quindi, non può chiedere al target di ritrasmetterlo.
  • se un segmento arriva fuori ordine, il video trasmesso in streaming non dovrebbe essere distorto? poiché l'intero ordine del segmento è sbagliato ora, a causa di quel segmento non è al suo posto.
posta sterz 27.05.2011 - 00:21
fonte

3 risposte

4

Normalmente le persone sovrappongono un altro protocollo su UDP che si occupa di ordine e affidabilità, quindi inserisce il video o qualsiasi altra cosa in quello.

    
risposta data 27.05.2011 - 00:25
fonte
2

Per i segmenti persi, vengono utilizzati CODEC che degradano la qualità dell'immagine piuttosto che abbandonare completamente. Per i segmenti fuori ordine, aggiungi un numero di sequenza ai frame usando qualcosa come RTP in aggiunta a UDP. Potrebbe non esserci molto che puoi fare per ricevere fuori servizio, ma almeno puoi rilevarlo. RTP impedisce anche la trasmissione più veloce di quanto il link possa supportare.

Per lo streaming video non in tempo reale, come Netflix, Hulu, Youtube, ecc. usano solo TCP e fanno il buffering invece di UDP, dal momento che non si preoccupano di alcuni secondi di ritardo tra il server e il client.

    
risposta data 27.05.2011 - 02:06
fonte
2

Tenere presente che mentre UDP non garantisce garantisce la consegna del pacchetto, le apparecchiature di rete non abbandonano intenzionalmente i pacchetti solo per punire gli utenti delle applicazioni che hanno scelto di utilizzare UDP su una connessione TCP affidabile. Quindi parte della risposta è che mentre UDP stesso non è affidabile, quasi tutti i pacchetti continuano a funzionare in ambiente Intranet, dove un'azienda controlla tutto il traffico e le apparecchiature UDP è praticamente affidabile quanto TCP.

Detto questo, uno dei protocolli di streaming video più popolari basati su UDP / IP è RTP. RTP è definito come protocollo a livello di applicazione, ma le specifiche dettano che spetta al ricevitore monitorare i numeri di sequenza dei pacchetti (parte dell'intestazione RTP) e assicurarsi che i dati vengano riprodotti nella sequenza corretta.

Detto questo, ci sono molte implementazioni che ignorano questa piccola informazione e mostrano ancora video con una qualità relativamente buona. Sì, ci sono alcuni difetti qua e là ma per la maggior parte non si può dire che queste cose non accadono così frequentemente come alcuni libri di networking potrebbero farti credere. Almeno questa è la mia esperienza, ma ho lavorato principalmente su prodotti video in ambienti aziendali, non su Internet. Vedrò se ho una risposta diversa per te in circa 6-12 mesi poiché ci stiamo muovendo di più verso le opzioni mobile / internet.

    
risposta data 27.05.2011 - 03:02
fonte

Leggi altre domande sui tag