Wireless Networking Protocols

Introduction

We have observed that cooperative networks enable a more complex set of interactions between the physical, link, and network layers. Transmissions are not point-to-point and routing is not store-and-forward. We need to distinguish between a message that an application wishes to communicate and the data packets that are transmitted in the network. At the outset, a message is a packet generated and transmitted by a source and addressed to a particular destination. Along the way, several intermediate nodes may contribute to the communication of the message to the destination, but each node may transmit its own unique data packets.

In a conventional network, a packet received in error at the PHY layer is simply discarded at the link layer. In a cooperative network, a packet received in error is not necessarily discarded; instead, such a packet may be saved by the link layer and subsequently combined with other received packets or perhaps even forwarded to the network layer as a packet with errors. Thus we distinguish between receiving a packet unreliably or reliably. Suppose a node identifies that a transmission is underway, acquires the timing of the symbol transmissions and attempts to detect what symbols are sent. If the resulting packet fails a CRC, then the packet is received unreliably. If the packet passes a CRC, then the packet is considered as having been received reliably. We say a packet is decoded as a synonym for received reliably.


Reliable communication of a message can involve both unreliable or reliable reception of data packets. In fact, topics 4 and 5 describe several ways in which a relay node generates a transmission that assists decoding at the destination even though the relay cannot decode the message itself. There are a number of ways to include these elements in the network protocol stack.

Before proceeding, we note that cooperative wireless protocols demand a tight synchronization of modems, decoders, link layer algorithms for packet combining, and MAC layer scheduling. We refer to these methods collectively as the PHY layer in the expectation that the methods will be integrated on a single physical device that appears as an interface to an operating system. By contrast, the network layer must support multiple device interfaces and will continue to be implemented as part of an operating system. A key issue is the partitioning of functions between PHY layer devices and network layer software.

Next post:

Previous post: