Ho scritto un'applicazione C++ (in esecuzione su Linux) che serve un flusso RTP di circa 400 kbps. Per la maggior parte delle destinazioni questo funziona bene, ma alcune destinazioni perdono la perdita di pacchetti. Le destinazioni problematiche sembrano avere una connessione più lenta in comune, ma dovrebbero essere abbastanza veloci per lo stream che sto inviando.Come eseguire il debug della perdita di pacchetti?
Poiché queste destinazioni sono in grado di ricevere flussi RTP simili per altre applicazioni senza perdita di pacchetti, la mia applicazione potrebbe essere in errore.
ho già verificato alcune cose: - in un tcpdump, vedo tutti i pacchetti RTP in corso sulla macchina di invio - c'è un UDP inviare buffer in posto (ho provato dimensioni comprese tra 64KB e 300KB) - il I pacchetti RTP rimangono perlopiù sotto i 1400 byte per evitare la frammentazione
Cosa può fare un'applicazione di invio per ridurre al minimo la possibilità di perdita di pacchetti e quale sarebbe il modo migliore per eseguire il debug di tale situazione?
Gran parte del punto di RTP è di sfruttare la semantica UDP; in particolare consentendo di perdere i pacchetti senza arrestare il resto del flusso. – jesup
Oops! Il mio male per essere ignorante di RTP. Vado a leggere su ora. Grazie per il testa a testa! –