[nanomsg] Re: weird extra byte in header for IPC

  • From: Martin Sustrik <sustrik@xxxxxxxxxx>
  • To: nanomsg@xxxxxxxxxxxxx
  • Date: Tue, 15 Apr 2014 10:31:54 +0200

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Garrett,


> What was the purpose of the extra byte in the IPC header that
> precedes the length (for each message).  If not for that one
> difference, the message formats between IPC and TCP/TLS would be
> identical.  I’m having a hard time seeing value in that extra
> byte.
> 
> (I noticed this tonight when I was trying to use IPC between C and
> my Go version, and I discovered that while I tested TCP, apparently
> I never tested IPC interop… Oops!)

The thing is that with IPC you can actually do zero-copy (store the
data in shared memory, pass the pointer to the other process). Thus,
we need a place to signal that the message is not a standard message
passed via IPC pipe, but rather a descriptor of a block in shared memory.

Martin

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://www.enigmail.net/

iQEcBAEBAgAGBQJTTO56AAoJENTpVjxCNN9YmOAH/i6UymZhcIh5/3C7i4QRK3kQ
DTBniByOUQosYXTrPRTf+kO/qtRenQcX5uoYQXIN+n0P74eqXsLodyPA5F6RDCRI
Ss5hPNrXw05DfWo6OMoldyEmBRrpvAB9bmhRMaMlUXrl4NvVre3Qk8Pmy3nLX0Gc
p6IOZtah/qAbLDYGZTUO3KyhIcV7Frj+Xr5Xw6MxzuFcpX8faBJ7shyOj9RdQhIR
nA9RTGRRXLmWWCZPgUm3y7ePYyCi+YhBHc26rJfDv2yF9th7NoM4j5+93AHzYkcB
2gLj3tT/vk7zlWDPFGp+FdQyjBGVwEHRzabo4G3uQYhvdGt38ghkcqdP/YDzLAk=
=cc/i
-----END PGP SIGNATURE-----

Other related posts: