erlug
[Top] [All Lists]

[Erlug] udp socket, packet loss

To: erlug@xxxxxxxxxxxxxx
Subject: [Erlug] udp socket, packet loss
From: Matteo Sgalaberni <sgala@xxxxxxxxx>
Date: Fri, 6 Jul 2007 19:30:12 +0200
Ciao $amici,

ho la seguente situazione:

- server python A che ha in listen un socket UDP.

- client B che apre in un istante 300 thread che fanno una connect al
server e pushano ognuno un pacchetto UDP. totale 300 pacchetti.

su server A a volte arrivano 300 pacchetti regolarmente, ma a volte
ne mancano 1-2, una ventina... e così via...

(il pacchetto che mando può assumere dimensioni variabili di max 15byte,
quindi mado al max in una esecuzione di cliente
15data+8header=23byte*300=6900byte di dati)

Considerando il fatto che server non fa elaborazione ma legge il socket
e mi statistica solo il risultato... qualcuno mi spiega perchè ho sta
perdita? E' perchè è UDP e quando si riempie un qualche buffer che non
o di quanto è su server(app o kernel?) allora scarta pacchetti?

come posso ovviare il problema tenendo presente che:
- non posso usare tcp
- non posso implementare a livello applicativo un meccanismo di
acknowledge/controllo di errore/packet loss del pacchetto, il client
deve pushare e poi fare altro, non ha tempo di fare altre cose...

Ciao e grazie:)

M

<Prev in Thread] Current Thread [Next in Thread>