On Die, 2013-07-02 at 17:07 +0200, Matthias Geier wrote:
> Hi Iain.
> 
> To be honest, I didn't think about the problem that a message could
> need more than one packet.
> It's good to know that iemnet/tcpclient can handle that.

It's not that [iemnet/tcpclient] can handle it and [net/iemnet] can't.
In fact, with both you have to cook your own mechanism to delimit
packets for a packet oriented protocol. With [net/iemnet], however, you
have to serialize the data first in order to be able to do that. I see
two problems with [net/tcpclient]'s implementation:

 * you have to serialize the data anyway, so why doesn't the object
   already do it?

 * It gives you the false impression of dealing with packets when you in
   fact are dealing with a stream. It's dangerous because it often looks
   as if it would be working, but there is no guarantee it will always
   do. You may receive a packet split into many chunks, or you get a
   big chunk containing several packets. All those cases are valid from
   to POV of TCP, but will break your protocol unless you deploy proper
   delimiting.

Roman




_______________________________________________
Pd-list@iem.at mailing list
UNSUBSCRIBE and account-management -> 
http://lists.puredata.info/listinfo/pd-list

Reply via email to