DCP utilizes the Memcached binary protocol as the basis for protocol definitions (Memcached Binary Protocol Definitions) and defines a set opcodes for DCP commands.
A DCP connection differs from the standard Memcached connections because DCP connections are full duplex while the normal Memcached connections are simplex (eg. the client sends a command, the server responds, etc).
The typical scenario begins with the client requesting a stream. Upon success the server starts sending messages back to the client for mutations/deletions/expirations etc. While receiving messages the client can send additional commands to the server to start additional DCP streams, etc.