Developing a network protocol with Python

Laszlo Zsolt Nagy gandalf at designaproduct.biz
Mon Dec 12 20:18:17 EST 2005


Tom Anderson wrote:

>>I think to be effective, I need to use TCP_NODELAY, and manually 
>>buffered transfers.
>>    
>>
>Why?
>
Because of the big delays when sending small messages (size < 1500 bytes).


>Personally, i'd steer clear of doing it like this, and try to use an 
>existing, language-neutral generic marshalling layer. XML and ASN.1 would 
>be the obvious ones, but i wouldn't advise using either of them, as 
>they're abominations. JSON would be a good choice:
>
>http://www.json.org/
>  
>
I need to send Python objects too. They are too elaborate to convert 
them to XML. (They are using cyclic weak references and other Python 
specific stuff.) I can be sure that on both sides, there are Python 
programs. Is there any advantage in using XML if I already need to send 
Python objects? Those objects cannot be represented in XML, unless 
pickled into a CDATA string.

>And didn't get much in the way of answers. Someone did point to this, 
>though:
>
>http://www.internet2.edu/~shalunov/writing/protocol-design.html
>  
>
Hmm, this was very helpful. Thank you!

  Les




More information about the Python-list mailing list