Inviare file (jpeg) su una rete LAN tramite protocollo UDP



  • Ciao a tutti,
    vorrei avere consigli (dove trovare informazioni, ecc.) per inviare file jpeg tramite la funzione socketUdp; nel mio programma in base al frame per second impostato vengono catturati i frame dal frame buffer openGL, creato il jpeg relativo ed inviato in rete LAN ad un altro pc. Ogni jpeg corrisponde ad un frame. I jpeg hanno dimensione di circa 50 KB.
    So che vi è un limite sulla dimensione dei datagram di UDP, 512 bytes, esatto? Devo tenerne conto frammentando il jpeg da inviare? Potreste consigliarmi come?

    Grazie mille.
    Marco



  • Ciao,

    in teoria un datagram UDP può raggiungere la dimensione massima (Header compreso di 65535 bytes).
    Cmq è consigliabile non utilizzabile la dimensione massima.

    Se però tu devi sviluppare una trasmissione dati con fini "multimediali", ti consiglierei di utilizzare protocolli dedicati (RTP ad esempio) che si appoggiano a UDP ma forniscono maggiori garanzie.



  • Ciao,
    il protocollo udp e stateless, cioè ogni pacchetto è indipendente da un altro; questo significa che non hai traccia di quali pacchetti sono arrivati a destinazione e la progressione dei bytes che sono stati ricevuti/inviati. Il protocollo è utilie quando si inviano informazioni non correlate tra di loro direttamente (ad esempio inviare le coordinate di un oggetto in un videogioco: anche se si perdono alcuni pacchetti, non succede nulla e si verifica il famoso lag), ma nel caso tuo è importante mantenere una connessione stabile e affidabile; pertanto ti consiglio di utilizzare il protocollo TCP.


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.