Download (direct link):
3.4 Topology Control in the Protocol Stack
A final question is left: where should topology control mechanisms be placed in the ad hoc network protocol stack? Since there is no clear answer in the literature about this point, in what follows we describe our view, which is only one of the many possible solutions. In fact, the integration of topology control techniques in the protocol stack is one of the main open research areas in this field (see Chapter 15), and the best possible solution to this problem has not been identified yet.
In our view, topology control is an additional protocol layer positioned between the routing and MAC layer (see Figure 3.5).
3.4.1 Topology control and routing
The routing layer is responsible for finding and maintaining the routes between source/ destination pairs in the network: when node u has to send a message to node v, it invokes the routing protocol, which checks whether a (possibly multihop) route to v is known; if
-t-opotogy- con trolórayei
Figure 3.5 Topology control in the protocol stack.
Figure 3.6 Interactions between topology control and routing.
not, it starts a route discovery phase, whose purpose is to identify a route to v; if no route to v is found, the communication is delayed or aborted.3 The routing layer is also responsible for forwarding packets toward the destination at the intermediate nodes on the route.
The two-way interaction between the routing protocol and topology control is depicted in Figure 3.6. The topology control protocol, which creates and maintains the list of the immediate neighbors of a node, can trigger a route update phase in case it detects that the neighbor list is considerably changed. In fact, the many leave/join in the neighbor list are likely to indicate that many routes to faraway nodes are also changed. So, instead of passively waiting for the routing protocol to update each route separately, a route update phase can be triggered, leading to a faster response time to topology changes and to a reduced packet-loss rate. On the other hand, the routing layer can trigger the reexecution of the topology control protocol in case it detects many route breakages in the network, since this fact is probably indicative that the actual network topology has changed a lot since the last execution of topology control.
3.4.2 Topology control and MAC
The MAC (Medium Access Control) layer is responsible for regulating the access to the wireless, shared channel. Medium access control is of fundamental importance in ad hoc/sensor networks in order to reduce conflicts as much as possible, thus maintaining the network capacity to a reasonable level. To better describe the interaction between the MAC layer and topology control, we sketch the MAC protocol used in the IEEE 802.11 standard (IEEE 1999).
In 802.11, the access to the wireless channel is regulated through RTS/CTS message exchange. When node u wants to send a packet to node v, it first sends a Request To Send control message (RTS), containing its ID, the ID of node v, and the size of the data packet. If v is within uís range and no contention occurs, it receives the RTS message, and, in case communication is possible, it replies with a Clear To Send (CTS) message. Upon correctly receiving the CTS message, node u starts the transmission of the DATA packet, and waits for the ACK message sent by v to acknowledge the correct reception of the data.
In order to limit collisions, every 802.11 node maintains a Network Allocation Vector (NAV), which keeps trace of the ongoing transmissions. The NAV is updated each time
3We are considering here a reactive routing protocol, since there is wide agreement in the community that reactive routing performs better than proactive routing in ad hoc networks.
u v w z
ē< >ē < > ē < > ē
d\ d2 d3
Figure 3.7 The importance of appropriately setting the transmit power levels.
a RTS, CTS, or ACK message is received by the node. Note that any node within uís and/or uís transmitting range overhears at least part of the RTS/CTS/DATA/ACK message exchange, thus obtaining at least partial information on the ongoing transmission.
As outlined, for instance, in (Jung and Vaidya 2002), using different transmit power levels can introduce additional opportunities for interference between nodes. On the other hand, using reduced transmit powers can also avoid interference. To clarify this point, consider the situation depicted in Figure 3.7. There are four nodes u, v, w, and z, with S(u, v) = d1 < d2 = S(v, w) and S(w, z) = d3 < d2. Node u wants to send a packet to v, and node w wants to send a packet to z.
Assume all the nodes have the same transmit power, corresponding to transmitting range r, with r > d2 + max(di, d3}. Then, the first between nodes v and z that sends the CTS message inhibits the other pairís transmission. In fact, nodes v and z are in each otherís radio range, and overhearing a CTS from v (respectively, z) inhibits node z (respectively, v) from sending its own CTS. Thus, with this setting of the transmitting ranges, no collision occurs, but the two transmissions cannot be scheduled simultaneously.