Devices in ad hoc networks are battery-driven and should be designed to consume as little power as possible. Energy conserving functions have been implemented at various levels of software. In fact, functions for controlling the power consumption of hardware4 have been made available (BIOS interfaces) to operating systems. This means that a power consumption policy decisions can be made from user space applications. With this method, a high energy consuming hardware such as displays can be turn off instead of just invoking a screen saver. Also, different power saving states can be defined, corresponding to the current level of usage. Intelligent decisions can be made by the operating system since battery power levels can also be monitored with the help of the interfaces. For instance, a forced, graceful power-down is important before abrupt crashes of the computer happen when the battery suddenly becomes depleted.
Issues related to saving energy can be found on each protocol layer in ad hoc networks. At data link layer power can be saved by reducing control messages, which are used to assert neighbor relationships and synchronization purposes. By reducing the amount of control messages sent in MAC protocols, power will be saved, but at the expense of increased delays. When control messages are sent frequently the topology will be also less known, requiring this to be discovered first, incurring longer delays. The control messages can also be used to power of the transmitter at suitable points in time (see PAMAS in chapter 2.2.5). Unsurprisingly, designing good protocols with few packet collisions will reduce power consumption since retransmission of packets requires energy.
The “control message” argument for MAC protocols also holds for network-level routing protocols and logically, reactive protocols have an advantage in this sense. Routing protocols have also been proposed that consider battery level as a routing metric instead of hops. This kind of protocol discriminates routes consisting of nodes with low battery levels. Nodes could also be allowed to omit routing functions or forward only high priority messages [Perkins+01].
1.4 Applications for Ad Hoc Networks
There are numerous applications for ad hoc networks. The obvious one is providing basic file sharing and supporting ordinary high-level application protocols such as e-mail. It should be possible to do everything with a mobile terminal that can be done with a fixed Internet enabled terminals. Ad hoc networks can also provide voice calls with IP telephony generally implemented at transport/application layer or with built-in support at lower layers (see WAMIS in section 2.3). Another challenge is how to integrate the ad hoc network with the Internet. It is easy to see that ad hoc networks can complement basic wireless LANs and other cell-based networks (i.e. mobile phone systems) when the terminals cannot reach the base station themselves. In this case, terminals inside the radio range of the base station can relay the signal to terminals outside the range.
In situations where people come together, like meetings for instance, it can be beneficial to be able to have instant communication channels to meet application needs. Take a shopping mall as an example, great savings could be achieved by being able to place phone calls, not through the network of a telecommunication company, but through several local devices. The local devices must therefore agree to relay voice packets originated by someone else.
An application from which the general ad hoc networks actually emerged was the packet radio system used for DARPA5. This was a radio system that could have intermediate nodes relay voice packets to destinations that the source did not have direct radio contact. Ubiquitous computing is a sort of embedded computing that has been envisioned for the future. Ubiquitous computers are micro computers that can be wearable, monitor the environment and interact with other embedded devices. This can be very helpful in an emergency situation where an embedded computer has detected abnormalities in a person’s life signs and calls for help on its own. Furthermore, rescue personnel have recognized the advantages of ad hoc networks. Imagine a distant location where there is no mobile phone system coverage. Here rescuers could continue to communicate if an ad hoc network is formed at the site. In the future it is likely that more and more ad hoc terminals will be embedded in ordinary appliances to enable exchange of information on a totally new level.
1.5 Problem Description and Overview of Our Work
The main objective of this thesis is to obtain a thorough understanding of problems related to designing ad hoc network protocols, both in theory and in practice. The theoretical part was done by studying related work in chapters 2, 3 and 4. These include research of protocols used at data link, network and transport layers of the OSI model. As computer scientists, the problems at the network and transport layers interested us most. The main issue at the network layer is how to build routing tables and forward packets with the least amount of overhead and delay (see section 3.1 for more about the routing problem). The transport layer in ad hoc networks, as in fixed networks, provides end-to-end communication channels, but has to be modified to take link breakage into account.
The practical part culminated in a routing protocol which we developed in order to understand which factors have to be taken into account when developing network protocols. Moreover, the protocol is evaluated with the output of a simulator running the protocol. The protocol developed was called Tree Routing Protocol (TRP) and came from an idea to provide a way for nodes to make smarter forwarding decisions when discovering routes, by at least knowing a subset of nodes to which the discovery message does not have to be forwarded.
2WIRELESS MEDIA ACCESS CONTROL (MAC)
The MAC layer is concerned with providing a direct communication channel between terminals through a shared medium. The medium is an electromagnetic (or infrared) frequency band on which data is transmitted. In digital radio data communication, a channel does not necessarily have to be a completely separate frequency, but can be a time slot on a shared frequency (different division multiplexing methods are discussed later). Choosing the frequency is not always an easy task since different countries might not always agree on which frequency should be used. Many countries allow unlicensed short-range radio transmission on a frequency band called Industrial, Scientific and Medical (ISM, 2.4 - 2.4835 GHz). This is the kind of communications link that will be assumed throughout the rest of the text, we will not consider infrared links since these are unpractical in ad hoc networks. When data is transmitted on a frequency, a scheme for resisting interference (i.e. from microwave ovens, wireless mice and such), unauthorized reception and transmission has to be used6. Although we talk about point-to-point links between neighbors, it is still a broadcast signal sent through the air that can be overheard by any node within radio range. So, the MAC protocol should provide timely access of the point-to-point links (see hidden terminal problem in section 2.1) and the transmission technique has to allow many physically different wireless networks to operate at the same time in the same geographical area.
Originally developed for military purposes, a transmission technique called spread spectrum solves the problem of heterogeneous networks operating in the same area. There are two ways of spreading a signal over a wider spectrum: the first one is called “frequency hopping” and the second “direct sequence”. As we will see, this minimize the risk that two signals will be at the same frequency at the same time long enough to ruin the data that they carry. With frequency hopping both the transmitter and the receiver agree on a seed, which is fed to a pseudo random (so-called because if the seed is known, the numbers it generates is also known) number generator whose output is used as the next frequency by both devices in synchronization. Every frequency is used for a small interval making it impossible to “overhear” larger portions of data traffic and decreasing the risk of different wireless networks interfering with each other.
In direct sequence the spreading achieved by combining a pseudorandom sequence of bits with the data bits, by using exclusive or. In order for this to work the pseudo random sequence has to be clocked at faster pace than the data signal. For example, if there are four transitions (four chips) in the pseudo random signal during the bit time of one bit in the data signal then one data bit will be encoded with four transitions. This is called four-bit chipping code. The resulting signal will thus seem like noise to other terminals but the receiver that knows the pseudorandom code and can remove the noise. Since every bit is represented with many chips, there is redundancy at every data bit making the signal more resilient against interference. See figure 2-1 for an example.
Fig. 2 1: Four bit chipping code.
In this chapter we use the word terminal instead of node for variation. In older literature the word terminal is used, for instance the description of the classical problem of hidden terminal. When describing protocols in the following chapter the term initiator will be used when referring to the terminal that originally initiated communication between two terminals. If it is clear from the context, the term sender is used instead of initiator and the receiver is the terminal that the initiator originally addressed. Also, half duplex radios are assumed, that is, these can either transmit or receive at one point in time.
One of the most important factors to take into account in a MAC protocol is how effective reuse of the medium it provides. If, for instance, one terminal’s transmission blocks the neighbor’s transmission then the throughput of the networks will drop. Another important thing is whether the protocol can provide collision-free operation.
Share with your friends: |