Messages are not being redelivered. They are being queued on an outgoing pipe, created when you call connect, and when that pipe is connected, being delivered. Please read the socket pattern specs, RFC 28 specifically for DEALER semantics.