Connection-Oriented Bindings
Connection-oriented transports such as named pipes and TCP are ideal for crossing process and machine boundaries, and yield greater performance and reliability than HTTP transport. Named pipes support reliable and sequential data transfer (FIFO) via memory-mapped files. Communications may be handled over one-way pipes (caller writes, receiver reads), or half-duplex (both caller and receiver read and write to the pipe—just not at once). TCP sockets, on the other hand, provide endpoints through which caller and receiver communicate, as a full-duplex implementation (two-way).
WCF provides standard bindings for both of these protocols. NetNamedPipeBinding wraps communication over named pipes, and limits that
communication to the same machine for security reasons (you can be certain your named pipe
endpoints cannot be called remotely). NetTcpBinding
enables TCP socket communication for RPC and streaming scenarios. In this section, I’ll show
you how to work with NetNamedPipeBinding and NetTcpBindng endpoints and discuss scenarios in which each
binding is most applicable. You’ll complete a lab first to put them to use, and then I’ll
dig into the details.
Tip
NetPeerTcpBinding is also based on the TCP
protocol, offering peer-to-peer communications. This binding has implications beyond WCF
and is too broad to cover in this book.
Lab: Distributing Calls with NetNamedPipeBinding and NetTcpBinding
In this lab, you will turn a two-tier web application into an n-tier, ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access