2014-09-06 14:50 GMT+02:00 Manlio Perillo <manlio.peri...@gmail.com>:

> 2014-09-06 14:02 GMT+02:00 Remo The Last <py.remothel...@yahoo.it>:
>
>> Manlio, stai scherzando vero?
>> Stai dicendo che il trasporto udp è più affidabile del tcp (best effort)?
>> ciacia
>>
>>
>> No. Sto dicendo che se vuoi dialogare tramite "messaggi" o usi
> SOCK_STREAM con un dato protocollo, oppure usi SOCK_DGRAM.  Se ti senti
> audace puoi anche usare SOCK_SEQPACKET (SCTP), che è reliable.
> Altrimenti non ha senso parlare di affidabilità, perchè il tuo programma è
> errato quindi inaffidabile in partenza.
>
> Nota che UDP su socket di tipo AF_LOCAL (aka UNIX) dovrebbe essere
> reliable.
>

Aggiungo TCP_NODELAY su socket di tipo SOCK_STREAM (TCP):

import socket
s = socket.socket()
s.setsockopt(socket.SOL_TCP, socket.TCP_NODELAY, 1)

In genere viene usato in protocolli molto "parlanti" quali FTP e SMTP.
Se i messaggi sono brevi lo speedup è considerevole (quasi il doppio)
quindi puoi valutare se usare quello anzichè SOCK_DGRAM (UDP) che come è
noto non è reliable in quanto a recapito e integrità dei dati.
Riguardo MSG_OOB, non riesco proprio a immaginare a cosa ti serva. Ad oggi
credo sia, di fatto, completamente inutile ergo molto probabilmente *non*
ti serve.

--- Giampaolo
http://grodola.blogspot.com/
_______________________________________________
Python mailing list
Python@lists.python.it
http://lists.python.it/mailman/listinfo/python

Rispondere a