Project

General

Profile

Feature #1672

Updated by Junxiao Shi over 8 years ago

Implement `UnixSeqPacketTransport` for use with LinkService. 

 The `UnixSeqPacketTransport` is a subclass of [`Transport`](https://gist.github.com/yoursunny/22a7d53711b4e9bc198a) new face type, similar to UnixStreamFace, that communicates with a local application over UNIX uses SOCK\_SEQPACKET socket.   
 instead of SOCK\_STREAM. See socket(2) and unix(7) for an explanation of the differences and similarities between SOCK\_STREAM, SOCK\_DGRAM, and SOCK\_SEQPACKET. 

 The main advantage of using a SEQPACKET socket is that it preserves message boundaries, therefore allowing us to get rid of the buffering inside the face and all the copying that it involves. 

 * `UnixSeqPacketTransport` is always local. 
 * `UnixSeqPacketTransport` is always on-demand, because it's application connecting to NFD. There is no persistent or permanent `UnixSeqPacketTransport`.

Back