This article reviews progress in cooperative communication networks. Our survey is by no means exhaustive. Instead, we assemble a representative sample of recent results to serve as a roadmap for the area. Our emphasis is on wireless networks, but many of the results apply to cooperation in wireline networks and mixed wireless/wireline networks. We intend our presentation to be a tutorial for the reader who is familiar with information theory concepts but has not actively followed the field. For the active researcher, this contribution should serve as a useful digest of significant results. This article is meant to encourage readers to find new ways to apply the ideas of network cooperation and should make the area sufficiently accessible to network designers to contribute to the advancement of networking practice.
Overview
IntroductionThe classic representation of a communication network is a graph, as in Figure 1.1, with a set of nodes and edges. The nodes usually represent devices such as a router, a wireless access point, or a mobile telephone. The edges usually represent communication links or channels, for example a fiber-optic cable or a wireless link. Both the devices and the channels may have constraints on their operation. For example, a router might have limited processing power, or perhaps it can accept data from only a few of its ports simultaneously. A fiber-optic link has a limited bandwidth (which can be quite large!). A wireless phone, on the other hand, has limited battery resources and likely wishes to conserve energy. A wireless link can have rapid time variations arising from mobility and multipath propagation of signals. Some of these properties are collected in Table 1.1 and are described in more detail in this text.The purpose of a communication network is to enable the exchange of messages between its nodes. These messages, as generated by an application, are organized into data packets. In the traditional model of a network, the nodes operate as store-and-forward packet routers that transmit packets over point-to-point links. However, this model is unnecessarily restrictive as it ignores two important possibilities:• Node Coding: Nodes can combine, or encode, any of their received information and symbol streams.• Broadcasting: Nodes overhear the transmissions of other nodes from which they are not required to receive messages.Node coding is possible in any network, while the ability to overhear transmissions is a property of the physical communication channel. In particular, wireless devices inherently broadcast information in that a signal to a particular receiving node can be overheard by other nodes. Typically, the wireless nodes treat these overheard signals as interference and the system provides mechanisms to mitigate this interference. For example, many second generation cellular phones employ code division multiple access (CDMA) to permit signal decoding in 274 Overview the presence of interference [185]. As a second example, 802.11× wireless LANs employ a media access...