  A new coding scheme for general N-node relay networks is presented for
unicast, multicast, and broadcast. The proposed distributed decode-forward
scheme combines and generalizes Marton coding for single-hop broadcast channels
and the Cover-El Gamal partial decode-forward coding scheme for 3-node relay
channels. The key idea of the scheme is to precode all the codewords of the
entire network at the source by multicoding over multiple blocks. This encoding
step allows these codewords to carry partial information of the messages
implicitly without complicated rate splitting and routing. This partial
information is then recovered at the relay nodes and forwarded further. For
N-node Gaussian unicast, multicast, and broadcast relay networks, the scheme
achieves within 0.5N bits from the cutset bound and thus from the capacity
(region), regardless of the network topology, channel gains, or power
constraints. Roughly speaking, distributed decode-forward is dual to noisy
network coding, which generalized compress-forward to unicast, multicast, and
multiple access relay networks.
