Geethanjali College of Engineering and Technology
Geethanjali College of Engineering and Technology
Geethanjali College of Engineering and Technology
Distribution List:
Prepared by : Updated by :
2) Sign : 2) Sign :
1) Name : 1)Name :
2) Sign : 2) Sign :
3) Design : 3) Design :
4) Date : 4) Date :
Approved by (HOD) :
1) Name:
2) Sign :
3) Date :
Ad hoc and sensor networks emphasizes that there is a major interdependence among various layers of the
network protocol stack. Contrary to wired or even one-hop cellular networks, the lack of a fixed
infrastructure, the inherent mobility, the wireless channel, and the underlying routing mechanism by ad hoc
and sensor networks introduce a number of technological challenges that are difficult to address within the
boundaries of a single protocol layer.
1.2. Prerequisites
There are no mandatory prerequisites. But it will be very helpful if you have a good understanding of
networks, including Ethernet and other multiple access networks ,routing and network protocols, including
the TCP/IP suite, and computer algorithms. If you are not familiar with these topics, please consult the
instructors.
1. Explain the constraints of the wireless physical layer that affect the design and performance
2. of ad hoc and sensor networks, protocols, and applications;
3. Explain the performance of various unicast and multicast routing protocols that have been proposed
for ad hoc networks.
4. Explain the operation of several media access protocols that have been proposed for ad hoc and
sensor networks
5. describe the platform architectures that are suitable for mobile computing and communications, e.g.
personal digital assistants (PDAs), handsets, etc.
6. Explain the energy issues in sensor networks and how they can be addressed using scheduling, media
access control, and special hardware
7. Explain various security threats to ad hoc networks and describe proposed solutions.
8. To understand the Principles of Ad hoc wireless and sensor networks.
9. To understand and design protocols including congestion control and routing.
10. To implement protocols using hard wares.
11. Explore fundamental issues of Mobile Ad Hoc Networks (MANETs) and Sensor Networks.
Course Outcomes
1. This course will help students to identify the major issues associated with ad-hoc/sensor networks.
2. Students will explore current ad-hoc/sensor technologies by researching key areas such as algorithms,
protocols, hardware, and applications.
3. Students will learn how to program and communicate with embedded operating system such as Tiny OS
,a prominent application development environment for sensor systems using Motes..
4. At the end of this course students will gain hands-on experience through real-world programming projects
on ad-hoc/sensor hardware and be able to implement or develop algorithms involved in ad-hoc/sensor system
5. Provide knowledge of mobile ad hoc networks, design and implementation issues,
and available solutions.
7. Provide knowledge of clustering mechanisms and the different schemes that have
been employed, e.g., hierarchical, flat, and leaderless.
8. Provide knowledge of the 802.11 Wireless Lan (WiFi) and Bluetooth standards. This
includes their designs, operations, plus approaches to interoperability.
9. Provide knowledge of sensor networks and their characteristics. This includes design
of MAC layer protocols, understanding of power management, query processing, and
sensor databases.
Learning Outcomes
At the end of each unit students will be able to learn the following things:
UNIT I:
1. Students will be able to describe the unique issues in ad-hoc wireless networks.
2. Students will be able to describe current technology trends for the implementation and deployment of ad-
hoc wireless networks..
3. Students will be able to discuss the challenges in designing MAC, routing and transport protocols for ad-
hoc wireless networks.
4. Students will be able to discuss the issues in designing Security Protocols for ad hoc wireless networks
5. Students will be able to discuss about the issues in QoS solutions and Energy Management Schemes in
Ad Hoc Wireless Networks
UNIT II:
UNIT III:
1. Describe the principles of mobile ad hoc networks and what distinguishes them from infrastructure-
based networks..
2. Explain how proactive routing protocols function.
3. Explain how reactive routing protocols function.
4. Explainthe issue of broadcast storms and flooding, and how some techniques attempt to reduce them.
UNIT IV:
UNIT V:
1. Describe the limitations of wireless sensor networks, especially energy constraints, and the
devised solutions..
2. Analyze the components of a wireless sensor nodes and the role of each component in the
wireless sensor network.
UNIT VI:
UNIT VII:
1. Explain the differences between routing in MANETs and routing in WSNs, and the general
techniques used.
2. Apply and explain simple filtering rules based on IP and TCP header information.
3. Distinguish between firewalls based on packet-filtering routers, application level gateways and
circuit level gateways.
UNIT VIII:
4 At the end of this course students will gain hands-on PO2 ,PO3,PO4,PO5
experience through real-world programming projects
on ad-hoc/sensor hardware and be able to implement
or develop algorithms involved in ad-hoc/sensor
system.
Characteristics of MANETS
Applications of MANETS
Challenges in MANETS
2 UNIT – II
Routing in MANETS
3 UNIT – III
Broadcast Strom
Multicast
Geocasting
4 UNIT – IV
Design Issues
Energy Consumptions
Clustering of sensors
Applications
5 UNIT – V
Classification of WSN
MAC Layer
Routing Layer
6 UNIT – VI
Security
Key Management
Secure Routing
Cooperation in MANETS
7 UNIT – VII
8 UNIT – VIII
Operating System
Tiny OS
TOSSIM
S.no Unit Total no Topics to be covered Reg/Additional Teaching Remarks
No of Periods aids used
LCD/OHP
/BB
1 UNIT – I
2 UNIT – II
3 UNIT – III
4 UNIT – IV
5 UNIT – V
6 UNIT – VI
7 UNIT – VII
8 UNIT – VIII
Operating System Regular OHP,BB
TEXT BOOKS
1. ADHOC AND SENSOR NETWORKS -THEORY AND APPLICATIONS, Carols Corderio, Dharma
Prakash Agarwal, World Scientific Publications / Cambridge University Press March 2006.
2. Wireless Sensor Networks-An Information Processing Approach, Feng Zhao, and Elsevier Science
imprint, Morgan Publishers 2005
REFERENCES
WEBSITES
http://ceng.usc.edu/~anrg/SensorNetBib.html
http://www.crhc.uiuc.edu/wireless/talks/draft-infocom-2004.ppt
http://www.cn.uni-duesseldorf.de/publications/library/Mauve2001f.pdf
L Period Uni Date Topic to be covered in One lecture Reg/Addit Teaching Remarks
No t ional aids used
o No LCD/OHP
/
BB
1 UNIT – I Regular OHP,BB
UNIT – II Regular BB
3 14 CDMA Regular BB
7
8 5 UNIT – V Regular BB
4 6 UNIT – VI
5 Data Dissemination:
1 7 UNIT – VII
6 Regular BB
7 8 UNIT – VIII
1. PPTS
2. OHP slides
5. Any simulations
What is a MANET ?
It is an infrastructureless IP based network of mobile and wireless machine nodes connected with radio.
In operation, the nodes of a MANET do not have a centralized administration mechanism. It is known
for its routeable network properties where each node act as a “router” to forward the traffic to other
specified node in the network.
Types of MANET
There are different types of MANETs including:
The application of this wireless network is limited due to the mobile and ad hoc nature. Similarly, the
lack of a centralized operation prevents the use of firewall in MANETs. It also faces a multitude of
security threats just like wired networks. It includes spoofing, passive eavesdropping, denial of service
and many others. The attacks are usually classified on the basis of employed techniques and the
consequences.
As the importance of computers in our daily life increases it also sets new demands for connectivity.
Wired solutions have been around for a long time but there is increasing demand on working wireless
solutions for connecting to the Internet, reading and sending E-mail messages, changing information in
a meeting and so on. There are solutions to these needs, one being wireless local area network that is
based on IEEE 802.11 standard. However, there is increasing need for connectivity in situations where
there is no base station (i.e. backbone connection) available (for example two or more PDAs need to be
connected). This is where ad hoc networks step in.
In Latin, ad hoc means "for this," further meaning "for this purpose only.- It is a good and emblematic
description of the idea why ad hoc networks are needed. They can be set up anywhere without any
need for external infrastructure (like wires or base stations). They are often mobile and that's why a
term MANET is often used when talking about Mobile Ad hoc NETworks. MANETs are often defined as
follows: A "mobile ad hoc network" (MANET) is an autonomous system of mobile routers (and
associated hosts) connected by wireless links - the union of which forms an arbitrary graph. The routers
are free to move randomly and organize themselves arbitrarily; thus, the network's wireless topology
may change rapidly and unpredictably. Such a network may operate in a standalone fashion, or may be
connected to the larger Internet.
The strength of the connection can change rapidly in time or even disappear completely. Nodes can
appear, disappear and re-appear as the time goes on and all the time the network connections should
work between the nodes that are part of it. As one can easily imagine, the situation in ad hoc networks
with respect to ensuring connectivity and robustness is much more demanding than in the wired case.
Ad hoc networks are networks are not (necessarily) connected to any static (i.e. wired) infrastructure.
An ad-hoc network is a LAN or other small network, especially one with wireless connections, in which
some of the network devices are part of the network only for the duration of a communications session
or, in the case of mobile or portable devices, while in some close proximity to the rest of the network.
The ad hoc network is a communication network without a pre-exist network infrastructure. In cellular
networks, there is a network infrastructure represented by the base-stations, Radio network
controllers,… etc. In ad hoc networks every communication terminal (or radio terminal RT)
communicates with its partner to perform peer to peer communication. If the required RT is not a
neighbour to the initiated call RT (outside the coverage area of the RT), then the other intermediate
RTs are used to perform the communication link. This is called multi-hope peer to peer communication.
This collaboration between the RTs is very important in the ad hoc networks. In ad hoc networks all the
communication network protocols should be distributed throughout the communication terminals (i.e.
the communication terminals should be independent and highly cooperative).
CHARACTERISTICS
Mobile Adhoc Network (MANET) is a collection of independent mobile nodes that can communicate to
each other via radio waves. The mobile nodes that are in radio range of each other can directly
communicate, whereas others needs the aid of intermediate nodes to route their packets. These
networks are fully distributed, and can work at any place without the help of any infrastructure. This
property makes these networks highly exible and robost.
• Limited security
Generally, the communication terminals have a mobility nature which makes the topology of the
distributed networks time varying. The dynamical nature of the network topology increases the
challenges of the design of ad hoc networks. Each radio terminal is usually powered by energy limited
power source (as rechargeable batteries). The power consumption of each radio terminal could be
divided generally into three parts, power consumption for data processing inside the RT, power
consumption to transmit its own information to the destination, and finally the power consumption
when the RT is used as a router, i.e. forwarding the information to another RT in the network. The
energy consumption is a critical issue in the design of the ad hoc networks.
The mobile devices usually have limited storage and low computational capabilities. They heavily
depend on other hosts and resources for data access and information processing. A reliable network
topology must be assured through efficient and secure routing protocols for Ad Hoc networks.
APPLICATION AREAS
It is easy to imagine a number of applications where this type of properties would bring benefits. One
interesting research area is inter-vehicle communications. It is one area where the ad hoc networks
could really change the way we communicate covering personal vehicles as well as professional mobile
communication needs. Also, it is area where no conventional (i.e. wired) solutions would do because of
the high level of mobility. When considering demanding surroundings, say mines for example, then
neither would the base station approach work but we must be able to accomplish routing via nodes that
are part of the network i.e. we have to use ad hoc network.
Such networks can be used to enable next generation of battlefield applications envisioned by the
military including situation awareness systems for maneuvering war fighters, and remotely deployed
unmanned micro-sensor networks. Ad Hoc networks can provide communication for civilian
applications, such as disaster recovery and message exchanges among medical and security personnel
involved in rescue missions.
NETWORK SECURITY
Network security extends computer security, thus all the things in computer security are still valid, but
there are other things to consider as well. Computer security is defined as follows:
-Broadly speaking, security is keeping anyone from doing things you do not want them to do to, with,
or from your computers or any peripherals- -William R. Cheswick.
Network security is then computer security plus secure communication between the computers or other
devices. Not all nodes are computers in an Ad Hoc network, thus nodes cannot be assumed to
implement the security services normally existent in computers' operating systems. That is why
network security should be defined as:
-Making sure that the nodes enforce a proper computer security and then securing the communication
between them-.
Different variables have different impact on security issues and design. Especially environment, origin,
range, quality of service and security criticality are variables that affect the security in the network.
If the environment is concerned, networks can operate in hostile or friendly environments. A battlefield
has totally different requirements for security if compared with home networks. On a battlefield also
physical security and durability might be needed to ensure the functionality of the network.
The ways to implement security vary if the range of the network varies. If the nodes are very far from
each others, the risk of security attacks increases. On the other hand, if the nodes are so close to each
others that they actually can have a physical contact, some secret information (e.g. secret keys) can be
transmitted between the nodes without sending them on air. That would increase the level of security,
because the physical communication lines are more secure than wireless communication lines.
Quality of service issues deal with questions like -Is it crucial that all messages reach their destination?-
or -Is it crucial that some information reaches the destination in certain time?-. QoS is generally
demanded in real time applications where reliable and deterministic communication is required. These
issues refer to security e.g. in process control applications. We could have an Ad Hoc network in some
process and all the measurements and control signals could be transmitted through the network. In
order to have secure and reliable control of the process, quality of service requirements need to be
met.
The last variable of Ad Hoc networks described with respect to security is security criticality. This means
that before we think of the ways to implement security, we must consider carefully whether security is
required at all or whether it matters or not if someone outside can see what packets are sent and what
they contain. Is the network threatened if false packets are inserted and old packets are retransmitted?
Security issues are not always critical, but it might cost a lot to ensure it. Sometimes there is trade-off
between security and costs.
MANETs are much more vulnerable to attack than wired network. This is because of the following
reasons :
Dynamically Changing Network Topology - Mobile Nodes comes and goes from the network, thereby
allowing any malicious node to join the network without being detected.
Cooperative Algorithms - The routing algorithm of MANETs requires mutual trust between nodes which
violates the principles of Network Security.
Lack of Centralized Monitoring - Absence of any centralized infrastructure prohibits any monitoring
agent in the system.
Lack of Clear Line of Defense - The only use of I line of defense - attack prevention may not su ce.
Experience of security research in wired world has taught us that we need to deploy layered security
mechanisms because security is a process that is as secure as its weakest link . In addition to pre-
vention, we need II line of defense - detection and response.
Advantages
Disadvantages
Some of the disadvantages of MANETs are:
Security protocols for wired networks cannot work for ad hoc networks.
CONCLUSION
Ad hoc networks can be implemented using various techniques like Bluetooth or WLAN for example.
The definition itself does not imply any restrictions to the implementing devices.
Ad Hoc networks need very specialized security methods. There is no approach fitting all networks,
because the nodes can be any devices. The computer security in the nodes depends on the type of
node, and no assumptions on security can be made. In this paper the computer security issues have
not been discussed, because the emphasis has been on network security.
But with the current MAC layer and routing solutions the true and working ad hoc network is just a
dream for now. However, it can be used with relatively small networks and potentially some very nice
applications can be realized. Although some peer-to-peer type of solutions work nicely already today, it
would be nice to see that some new and innovative solutions would be seen in the arena of ad hoc
networks since it is not hard for one to imagine a countless number of nice ad hoc based applications
that would make the world at least a bit better place.
Reactive protocols seek to set up routes on-demand. If a node wants to initiate communication
with a node to which it has no route, the routing protocol will try to establish such a route.
The Ad-Hoc On-Demand Distance Vector routing protocol is described in RFC 3561[54]. The
philosophy in AODV, like all reactive protocols, is that topology information is only transmitted
by nodes on-demand. When a node wishes to transmit traffic to a host to which it has no route, it
will generate a route request(RREQ) message that will be flooded in a limited way to other
nodes. This causes control traffic overhead to be dynamic and it will result in an initial delay
when initiating such communication. A route is considered found when the RREQ message
reaches either the destination itself, or an intermediate node with a valid route entry for the
destination. For as long as a route exists between two endpoints, AODV remains passive. When
the route becomes invalid or lost, AODV will again issue a request.
AODV avoids the ``counting to infinity'' problem from the classical distance vector algorithm by
using sequence numbers for every route. The counting to infinity problem is the situation where
nodes update each other in a loop. Consider nodes A, B, C and D making up a MANET as
illustrated in figure 2.2. A is not updated on the fact that its route to D via C is broken. This means
that A has a registered route, with a metric of 2, to D. C has registered that the link to D is down, so
once node B is updated on the link breakage between C and D, it will calculate the shortest path
to D to be via A using a metric of 3. C receives information that B can reach D in 3 hops and
updates its metric to 4 hops. A then registers an update in hop-count for its route to D via C and
updates the metric to 5. And so they continue to increment the metric in a loop.
The way this is avoided in AODV, for the example described, is by B noticing that As route to D is
old based on a sequence number. B will then discard the route and C will be the node with the
most recent routing information by which B will update its routing table.
Data packets waiting to be transmitted(i.e. the packets that initiated the RREQ) should be
buffered locally and transmitted by a FIFO principal when a route is set.
RREP - A route reply message is unicasted back to the originator of a RREQ if the receiver
is either the node using the requested address, or it has a valid route to the requested
address. The reason one can unicast the message back, is that every route forwarding a
RREQ caches a route back to the originator.
RERR - Nodes monitor the link status of next hops in active routes. When a link breakage
in an active route is detected, a RERR message is used to notify other nodes of the loss of
the link. In order to enable this reporting mechanism, each node keeps a ``precursor
list'', containing the IP address for each its neighbors that are likely to use it as a next hop
towards each destination.
Figure: A possible path for a route reply if A wishes to find a route to J.
Figure 2.3 illustrates an AODV route lookup session. Node A wishes to initiate traffic to node J
for which it has no route. A broadcasts a RREQ which is flooded to all nodes in the network.
When this request is forwarded to J from H, J generates a RREP. This RREP is then unicasted
back to A using the cached entries in nodes H, G and D.
Being a table-driven protocol, OLSR operation mainly consists of updating and maintaining
information in a variety of tables. The data in these tables is based on received control traffic,
and control traffic is generated based on information retrieved from these tables. The route
calculation itself is also driven by the tables.
OLSR defines three basic types of control messages all of which will be studied in detail in
chapter 3:
HELLO - HELLO messages are transmitted to all neighbors. These messages are used for
neighbor sensing and MPR calculation.
TC - Topology Control messages are the link state signaling done by OLSR. This messaging
is optimized in several ways using MPRs.
MID - Multiple Interface Declaration messages are transmitted by nodes running OLSR on
more than one interface. These messages lists all IP addresses used by a node.
Hybrids - ZRP
Figure: A ZRP scenario showing the zones of node A and node J using a r value of 2. Within the zones a pro-active routing
protocol is used while a re-active protocol is used between zones.
Hybrid protocols seek to combine the proactive and reactive approaches. An example of such a
protocol is the Zone Routing Protocol(ZRP)[39]. ZRP divides the topology into zones and seek
to utilize different routing protocols within and between the zones based on the weaknesses and
strengths of these protocols. ZRP is totally modular, meaning that any routing protocol can be
used within and between zones. The size of the zones is defined by a parameter r describing the
radius in hops. Figure 2.4 illustrates a ZRP scenario with r set to 1. Intra-zone routing is done by
a proactive protocol since these protocols keep an up to date view of the zone topology, which
results in no initial delay when communicating with nodes within the zone. Inter-zone routing is
done by a reactive protocol. This eliminates the need for nodes to keep a proactive fresh state of
the entire network.
ZRP defines a technique called the Bordercast Resolution Protocol (BRP) to control traffic
between zones. If a node has no route to a destination provided by the proactive inter-zone
routing, BRP is used to spread the reactive route request. Figure 2.5 illustrates the different
components of ZRP.
Figure: The different components of the Zone Routing Protocol.
Overview
The three routing protocols AODV, OLSR and ZRP have been introduced in this section. AODV
and OLSR are both accepted as experimental RFCs by the IETF and they are probably the two
most popular MANET routing protocols at the current time. Much research and work is being
done using these protocols. The hybrid ZRP protocol has not gained that much popularity. The
protocol is actually more of a framework than a routing protocol, and it relies on well defined
and robust routing protocols to be utilized in and between the zones. The latest ZRP Internet
draft expired January 2003, but work is still said to be done by the authors and others. The need
for solutions like ZRP might arise when the basic protocols are well tested and their limitations
have been proven.
Position based routing protocols are kinds of routing protocols, which use nodes location
information, instead of links information to routing. In position based routing protocols, it
supposed that the packet source node has position information of itself and it's neighbors and
the packet destination node. Greedy is a very important position based routing protocol. In one
of it's kinds, named MFR (Most Forward Within Radius), the source node or packet forwarder
node, sends packet to one of it's neighbors with most forward progress towards destination
node (closest neighbor to destination). Using distance deciding metric in Greedy to forward
packet to a neighbor node, is not suitable for all conditions. If closest neighbor to destination
node, has high speed, in compare with the source node or intermediate packet forwarder node
speed or has very low remained battery power, then the packet loss probability will increase.
The Proposed strategy uses combination of metrics distance-velocity similarity-power, to
deciding about to which neighbor the packet should be given. Simulation results show that the
proposed strategy has lower lost packets average than Greedy, so it is more reliable.
1.1 Background
In this paper, any computing device actively participating in a network is called a node. Nodes are connected by
a communication medium or link. Nodes exchange information over links in discrete blocks called packets.
In Figure 1.1, any node can communicate with any other node along the single shared link. In this
case, no special steps are needed for any two nodes in the network to exchange information. If,
however, nodes in a network do not share a common link, this no longer holds true. Figure 1.2 shows
a network where different nodes share different links.
Figure 1.2: Network with eight nodes connected by four separate links.
www.jntuworld.com
www.jntuworld.com www.jwjobs.net
For example, in Figure 1.2, for node 1 to send a packet to node 8, the packet must first be sent to
node 3. Node 3 must subsequently be willing and able to forward the packet on to node 8. The links
and nodes a packet traverses along its journey from source to destination is called the packet’s path.
Whenever a packet is transmitted from one node to another, it is said to have made a hop. In the above
example, a packet sent from node 1 to node 3 requires one hop, whereas a packet sent from node 1 to
node 8 requires two hops (one hop from node 1 to node 3, and a second hop from node 3 to node 8).
In the above example, the various nodes along the packet’s path from node 1 to node 8 must cooperate in
order to make the information exchange successful. This cooperation process is called routing.
Routing in conventional network technologies, such as the Internet Protocol (IP) [1] or ATM [8], is
simplified by designing the link topology in a predictable (usually hierarchical) manner. The topology
of a network is the way in which nodes are connected to each other. In these networks, the routing
protocol can take advantage of the topology structure, resulting in a simplified routing algorithm.
Conventional networks tend to change infrequently, relaxing the burden on the routing protocol to return
to a stable state in response to a topology change. The process of returning to a stable state after a
topology change is called convergence. The time required for a routing protocol to converge is called its
convergence time. As will be seen in later sections, many routing protocols (in both ad hoc and
conventional networks) can form temporary routing loops when the topology changes. These routing
loops may persist until the routing protocol converges.
An ad hoc network is a collection of mobile nodes forming a temporary network without the aid of any
centralized administration or standard support services regularly available on conventional networks. In
this paper, it is assumed the mobile hosts use wireless RF transceivers as their network interface,
although many of the same principles will apply to infra-red and wire based networks. Some form of
routing protocol is necessary in these ad hoc networks since two hosts wishing to exchange packets may
not be able to communicate directly.
For example, Figure 1.3 illustrates an ad hoc network with three wireless mobile hosts. Node 3 is not
within the range of node 1’s wireless transmitter (indicated by the circle around node 1) and vice versa.
If node 1 and node 3 wish to exchange packets, they must enlist the services of node 2 to forward
packets for them, since node 2 is within the range overlap between node 1 and node 3.
Figure 1.3: Ad hoc network of three wireless mobile hosts.
www.jntuworld.com
www.jntuworld.com www.jwjobs.net
The situation in Figure 1.3 becomes more complicated with the addition of more nodes. The addition of
just one node, as illustrated in Figure 1.4, results in multiple paths existing between nodes 1 and 3;
packets may travel the path 1 - 2 - 3, 1 - 4 - 3, or even 1 - 4 - 2 - 3. An ad hoc routing protocol must be
able to decide on a single "best" path between any two nodes.
Another situation unique to wireless networks is illustrated in Figure 1.5. In this example, node 1 has a large
enough range to transmit packets directly to node 3. However, node 3 has a much smaller range and must enlist
the help of node 2 in order to return packets to node 1. This makes the link between node 1 and node 3 appear as
a one-way or unidirectional link. Most conventional routing protocols require bidirectional links.
Another problem with wireless network interfaces is they typically operate at significantly slower bit rates than
their wire-based counterparts. Frequent flooding of packets throughout the network, a mechanism many
protocols require, can consume significant portions of the available network bandwidth. Ad hoc routing
protocols must minimize bandwidth overhead at the same time as they enable proper routing to take place.
Finally, ad hoc networks must deal with frequent changes in topology. By their very nature, mobile
nodes tend to "wander around", changing their network location and link status on a regular basis.
Furthermore, new nodes may unexpectedly join the network or existing nodes may leave or be turned
off. Ad hoc routing protocols must minimize the time required to converge after these topology changes.
A low convergence time is more critical in ad hoc networks because temporary routing loops can result
in packets being transmitted in circles, further consuming valuable bandwidth.
www.jntuworld.com
www.jntuworld.com www.jwjobs.net
For the purposes of this report, an ad hoc routing protocol is considered to fill the space between two
network extremes. At one extreme, the network topology is changing so rapidly the only feasible routing
mechanism is for every packet to be flooded throughout the network. At the other extreme, the network
topology is sufficiently permanent and static as to permit the use of conventional routing mechanisms
such as those employed in the Internet. Ad hoc networks are networks which lack the support structure
and permanency of traditional networks, yet change sufficiently slowly as to permit the use of a routing
protocol to optimize transmission bandwidth.
2. Destination-Sequenced Distance-Vector
Routing
Destination-Sequenced Distance-Vector Routing (DSDV) [16] is an adaption of a conventional routing
protocol to ad hoc networks. DSDV is based on the Routing Information Protocol (RIP) [9], used in
parts of the Internet. Consequently, DSDV only makes use of bidirectional links. DSDV is one of the
earlier ad hoc routing protocols developed.
In DSDV, packets are routed between nodes of an ad hoc network using routing tables stored at each
node. Each routing table, at each node, contains a list of the addresses of every other node in the
network. Along with each node’s address, the table contains the address of the next hop for a packet to
take in order to reach the node.
Figure 2.1 illustrates the routing procedure in DSDV. In this example, a packet is being sent from node 1 to
node 3 (node 3 is not shown). From node 1, the next hop for the packet is node 4 (Figure 2.1 a). When node
4 receives the packet, it looks up the destination address (node 3) in its routing table (Figure 2.1 b). Node 4
then transmits the packet to the next hop as specified in the table, in this case node 5 (Figure 2.1 c). This
procedure is repeated as required until the packet finally reaches its destination.
www.jntuworld.com
www.jntuworld.com www.jwjobs.net
The bulk of the DSDV protocol does not involve routing at all. Rather, the crux of DSDV is the generation and
maintenance of the routing tables. Every time the network topology changes, the routing table in every node
needs to be updated. As one might expect, this is no trivial task. The situation is further complicated by the fact
that, when routing tables are out of sync (i.e. the routing protocol has not converged), routing loops may form.
To facilitate routing table maintenance, several additional pieces of information are stored in the
routing tables. In addition to the destination address and next hop address, routing tables maintain the
route metric and the route sequence number.
Periodically, or immediately when network topology changes are detected, each node will broadcast a routing
table update packet. The update packet starts out with a metric of one. This signifies to each receiving neighbor
they are one hop away from the node. The neighbors will increment this metric (in this case, to two) and then
retransmit the update packet. This process repeats itself until every node in the network has received a copy of the
update packet with a corresponding metric. If a node receives duplicate update packets, the node will only pay
attention to the update packet with the smallest metric and ignore the rest.
To distinguish stale update packets from valid ones, each update packet is tagged by the original node with
a sequence number. The sequence number is a monotonically increasing number which uniquely identifies
each update packet from a given node. Consequently, if a node receives an update packet from another
node, the sequence number must be equal to or greater than the sequence number already in the routing
table; otherwise the update packet is stale and ignored. If the sequence number matches the sequence
number in the routing table, then the metric is compared and updated as previously discussed.
Each time an update packet is forwarded, the packet not only contains the address of the eventual destination, but
it also contains the address of the transmitting node. The address of the transmitting node is entered into the
www.jntuworld.com
www.jntuworld.com www.jwjobs.net
routing table as the next hop (unless the packet is ignored, of course). Figure 2.2 illustrates how a node
processes an update packet under varying conditions. Note update packets with higher sequence numbers
are always entered into the routing table, regardless of whether they have a higher metric or not.
Each node must periodically transmit its entire routing table to its neighbors using update packets.
The neighbors will update their tables based on this information, if required. Likewise each node
will listen to its neighbors update packets and update its own routing table.
Mobile nodes cause broken links as they move from place to place. The broken link may be detected by
the communication hardware, or it may be inferred if no broadcasts have been received for a while from
a former neighbor. A broken link is described as having a metric of infinity. Since this qualifies as a
substantial route change, the detecting node will broadcast an update message for the lost destination.
This update message will have a new sequence number and a metric of infinity. This will essentially
cause the routing table entries for the lost node to be flushed from the network. Routes to the lost node
will be established again when the lost node sends out its next broadcast.
To avoid nodes and their neighbors generating conflicting sequence numbers when the topology
changes, nodes only generate even sequence numbers for themselves, and neighbors responding to
link changes only generate odd sequence numbers.
DSDV contains substantially more procedures for handling different network layer addresses, dealing with
non-mobile base stations, and damping fluctuations caused by topology changes. However, the details of
these procedures are deemed beyond the scope of this report. For more information, refer to [16].
www.jntuworld.com
www.jntuworld.com www.jwjobs.net
DSDV is based on a conventional routing protocol, RIP, adapted for use in ad hoc networks. Routing is
achieved by using routing tables maintained by each node. The bulk of the complexity in DSDV is in
generating and maintaining these routing tables.
DSDV requires nodes to periodically transmit routing table update packets, regardless of network
traffic. These update packets are broadcast throughout the network so every node in the network knows
how to reach every other node. As the number of nodes in the network grows , the size of the routing
tables and the bandwidth required to update them also grows. This overhead is DSDV’s main weakness,
as Broch et al. [5] found in their simulations of 50-node networks. Furthermore, whenever the topology
changes, DSDV is unstable until update packets propagate throughout the network. Broch found DSDV
to have the most trouble (of four protocols analyzed) in dealing with high rates of node mobility.
The actions taken by TORA can be described in terms of water flowing downhill towards a destination node
through a network of tubes that model the routing state of the network. The tubes represent links between nodes
in the network, the junctions of the tubes represent the nodes, and the water in the tubes represents the packets
flowing towards the destination. Each node has a height with respect to the destination that is computed by the
routing protocol. If a tube between two nodes becomes blocked such that water can no longer flow through it,
the height of the nodes are set to a height greater than that of any neighboring nodes, such that water will now
flow back out of the blocked tube and find an alternate path to the destination.
At each node in the network, a logically separate copy of TORA is run for each destination. When a
node needs a route to a particular destination, it broadcasts a route query packet containing the address
of the destination. This packet propagates through the network until it reaches either the destination, or
an intermediate node having a route to the destination. The recipient of the query packet then broadcasts
an update packet listing its height with respect to the destination (if the recipient is the destination, this
height is 0). As this packet propagates back through the network, each node that receives the update sets
its height to a value greater than the height of the neighbor from which the update was received. This has
the effect of creating a series of directed links from the original sender of the query to the node that
initially generated the update. An example of this process is illustrated in Figure 3.1.
www.jntuworld.com
www.jntuworld.com www.jwjobs.net
When a node discovers that a route to a destination is no longer valid, it adjusts its height so that it is a local
maximum with respect to its neighbors and transmits an update packet. This process is illustrated in Figure 3.2.
When a node detects a network partition, where a part of the network is physically separated from the
destination, the node generates a clear packet that resets the routing state and removes invalid routes
from the network.
www.jntuworld.com
www.jntuworld.com www.jwjobs.net
TORA sits as a routing layer above another, network level protocol called the Internet MANET
Encapsulation Protocol (IMEP) [6]. IMEP is designed to support the operation of many routing algorithms,
network control protocols or other upper layer protocols intended for use in mobile ad hoc networks. The
protocol incorporates mechanisms for supporting link status and neighbor connectivity sensing, control
packet aggregation and encapsulation, one-hop neighbor broadcast reliability, multipoint relaying, network-
layer address resolution, and provides hooks for interrouter authentication procedures.
TORA is one of the largest and most complicated protocols presented in this paper. In terms of
memory requirements, each node must maintain a structure describing the node’s height as well as the
status of all connected links per connection supported by the network [15]. In terms of CPU and
bandwidth requirements, each node must be in constant coordination with neighboring nodes in order
to detect topology changes and converge. As was found with DSDV, routing loops can occur while the
network is reacting to a change in topology [5] [15].
TORA is designed to carry IP traffic over wireless links in an ad hoc network. Based on simulation results [5]
www.jntuworld.com
www.jntuworld.com www.jwjobs.net
[14], it is best suited to large, densely packed arrays of nodes with very low node mobility (although
Broch [5] calls into question the validity of Park and Corson’s simulations in [14] supporting this
claim). Of the two papers reporting simulation results, only the one by Broch et al. [5] actually simulates
node mobility. Broch found TORA to be encumbered by its layering on top of IMEP, and found IMEP
caused considerable congestion when TORA was trying to converge in response to node mobility. This
resulted in TORA requiring between one to two orders of magnitude more routing overhead than other
ad hoc routing protocols investigated by Broch in [5].
Unlike every other protocol presented in this paper, DSR does not require the periodic transmission of
router advertisements or link status packets, reducing the overhead of DSR. In addition, DSR has been
designed to compute correct routes in the presence of unidirectional links.
Source routing is a routing technique in which the sender of a packet determines the complete
sequence of nodes through which to forward the packet. The sender explicitly lists this path in the
packet’s header, identifying each forwarding hop by the address of the next node to which to transmit
the packet on its way to the destination host.
DSR is broken down into three functional components: routing, route discovery and route maintenance.
Routing has already been described and is relatively trivial. Route discovery is the mechanism by which
a node wishing to send a packet to a destination obtains a path to the destination. Route maintenance is
the mechanism by which a node detects a break in its source route and obtains a corrected route.
www.jntuworld.com
www.jntuworld.com www.jwjobs.net
To perform route discovery, the source node broadcasts a route request packet with a recorded source
route listing only itself. Each node that hears the route request forwards the request (if appropriate),
adding its own address to the recorded source route in the packet. The route request packet propagates
hop-by-hop outward from the source node until either the destination node is found or until another node
is found that can supply a route to the target.
Nodes forward route requests if they are not the destination node and they are not already listed as a hop
in the route. In addition, each node maintains a cache of recently received route requests and does not
propagate any copies of a route request packet after the first.
All source routes learned by a node are kept (memory permitting) in a route cache, which is used to
further reduce the cost of route discovery. A node may learn of routes from virtually any packet the
node forwards or overhears. When a node wishes to send a packet, it examines its own route cache and
performs route discovery only if no suitable source route is found.
Further, when a node receives a route request for which it has a route in its cache, it does not propagate
the route request, but instead returns a route reply to the source node. The route reply contains the full
concatenation of the recorded route from the source, and the cached route leading to the destination.
Naturally, if a route request packet reaches the destination node, the destination node returns a route
reply packet to the source node with the full source to destination path listed.
Conventional routing protocols integrate route discovery with route maintenance by continuously
sending periodic routing updates. If the status of a link or node changes, the periodic updates will
eventually reflect the change to all other nodes, presumably resulting in the computation of new routes.
However, using route discovery, there are no periodic messages of any kind from any of the mobile
nodes. Instead, while a route is in use, the route maintenance procedure monitors the operation of the
route and informs the sender of any routing errors.
If a node along the path of a packet detects an error, the node returns a route error packet to the sender.
The route error packet contains the addresses of the nodes at both ends of the hop in error. When a route
error packet is received or overheard, the hop in error is removed from any route caches and all routes
which contain this hop must be truncated at that point.
There are many methods of returning a route error packet to the sender. The easiest of these, which is
only applicable in networks which only use bidirectional links, is to simply reverse the route contained
in the packet from the original host. If unidirectional links are used in the network, the DSR protocol
presents several alternative methods of returning route error packets to the sender.
Route maintenance can also be performed using end-to-end acknowledgments rather than the hop-by-
hop acknowledgments described above. As long as some route exists by which the two end hosts can
communicate, route maintenance is possible. In this case, existing transport or application level replies or
acknowledgments from the original destination, or explicitly requested network level acknowledgments,
may be used to indicate the status of the node’s route to the other node.
www.jntuworld.com
www.jntuworld.com www.jwjobs.net
Two sources of bandwidth overhead in DSR are route discovery and route maintenance. These occur when
new routes need to be discovered or when the network topology changes [2] [12]. However, this overhead
can be reduced by employing intelligent caching techniques in each node, at the expense of memory and
CPU resources. The remaining source of bandwidth overhead is the required source route header included
in every packet. This overhead cannot be reduced by techniques outlined in the DSR literature.
DSR simulation results have been reported in numerous papers, [5], [12], and [4] to name a few. In [5],
Broch et al. found DSR to perform the best of four protocols simulated in their scenarios. Unfortunately,
Broch only simulated networks of 50 nodes; as node count increases, the detrimental effects of route
discovery and maintenance can be expected to grow.
5. Virtual Subnets
The virtual subnet protocol (VS) [18] [19] breaks up a large body of nodes into smaller logical groups
called subnets. It then applies a hierarchical addressing scheme to these subnets. A novel routing
scheme is then employed to enable broadcasting within subnets and limited broadcasting between
subnets. The virtual subnet addressing scheme is somewhat reminiscent of that used in ATM [8].
In this method, network nodes are assigned addresses depending on their current physical connectivity. Assume
the network is segmented into physical subnets (the distinction between physical and virtual subnets will be
clarified shortly; for the moment assume that physical subnets cover a local area) each containing mobile nodes.
Each node in the network is assigned a unique address constructed of two parts: one part is a subnet address
allocated to the entire subnet (subnet_id), and the other part is an address which is unique within the node’s
subnet (node_id). In this paper, this address is written as subnet_id.node_id (e.g.: 12.2, 5.3).
Each node in this topology is affiliated with nodes whose address differs only in one digit; that is, node x1.x0 is
affiliated with nodes x1.x0’ and x1’.x0 Thus, every node is affiliated with every node within its subnet, as well
as one node in every other subnet. These cross-linked affiliations are the building blocks of the
ad hoc network. Figure 5.1 illustrates a network arranged in this fashion.
Figure 5.1: Physical and virtual subnets in an ad hoc network.
www.jntuworld.com
www.jntuworld.com www.jwjobs.net
Each node in the network is affiliated with a physical subnet (the local nodes all sharing the same subnet_id)
and a virtual subnet (the nodes all sharing the same node_id). Nodes which are members of a physical subnet
(subnet_id) are within close proximity in a local geographic area. Nodes which are members of a virtual
subnet (node_id) form a regional network (i.e., beyond a local area). Figure 5.1 illustrates an example of an
ad hoc network with physical subnets (in shaded areas) and virtual subnets. Note all nodes within a physical
subnet have the same subnet_id, while all nodes within a virtual subnet have the same node_id.
A node becomes a member of a physical subnet by acquiring the first available address (with the lowest node_id)
in that subnet. Once a node becomes affiliated with a specific physical subnet, it automatically becomes a
member of a virtual subnet defined by the node_ID in its address. As long as a node remains within "hearing"
distance of its subnet neighbors, it will keep its current physical subnet affiliation and its address.
When a node moves to a new location where it cannot establish a connection with its previous
physical subnet’s members, it will drop its previous address and join a new physical subnet.
5.3 Routing
In the simple case where the destination node is within two hops of the source node, packets traverse
one network address digit at a time in fixed order. For example, when the source node address is
12.15 and the destination node address is 9.17, the packet would follow the route: 12.15 to 12.17 to
9.17. In this case, routing requires at most two hops.
In general, the network will be arranged such that more than two hops are necessary from source to
destination. In this case the routing is performed in two phases. In the first phase, routing is performed only
in the physical subnet. Packets are routed to the node belonging to the same virtual subnet as the
destination. Using the same example as above, phase one consists of routing packets from 12.15 to 12.17.
In phase two, packets are routed between virtual subnets. The papers describing virtual subnets by
Sharony [18] [19] become especially sketchy at this stage of the protocol. The papers call for
adjustments of transmission frequencies, transmission power, and/or directional antennae to facilitate
logical network connections. It must be assumed that all nodes are capable of reaching neighboring
physical subnets when required to do so. However, the papers do not describe how subnets become
aware of, and plot routes through, neighboring subnets to facilitate multi-hop routing.
The VS protocol, as currently specified, can best be described as a method to optimize throughput when
multiple frequencies and/or spatial reuse is possible, on the condition that nodes are close together
relative to their transmitter range. Virtual subnets have been analyzed using queueing theory, but no
actual simulations or implementations have been studied. Furthermore, there are apparent holes in the
proposed routing mechanism regarding forwarding of packets between subnets.
6. Other Routing Protocols
Various routing protocols exist other than those presented in previous sections. For the most part, these routing
protocols offer improvements to the protocols already discussed. This sections highlights the improvements or
www.jntuworld.com
www.jntuworld.com www.jwjobs.net
novel applications these protocols offer without repeating concepts presented in previous sections.
Ad Hoc On-Demand Distance Vector (AODV) [17] routing is essentially a combination of both DSR
and DSDV. It borrows the basic on-demand mechanism of route discovery and route maintenance from
DSR, plus the use of hop-by-hop routing, sequence numbers, and periodic update packets from DSDV.
The main benefit of AODV over DSR is the source route does not need to be included with each packet.
This results in a reduction of routing protocol overhead. Unfortunately, AODV requires periodic
updates which, based on simulations by Broch [5], consume more bandwidth than is saved from not
including source route information in the packets.
Signal stability based adaptive routing (SSA) [3] is a variant of the AODV protocol to take advantage
of information available at the link level. Both the signal quality of links and link congestion are taken
into consideration when finding routes. It is assumed links with strong signals will change state less
frequently. By favoring these strong signal links in route discovery, it is hoped routes will survive
longer and the number of route discovery operations will be reduced. Link signal strength is measured
when the nodes transmit periodic hello packets.
One important difference of SSA from AODV or DSR is that paths with strong signal links are favored
over optimal paths. While this may make routes longer, it is hoped discovered routes will survive longer.
The cluster based routing protocol (CBRP) [11] is a variation of the DSR protocol. CBRP groups nodes
located physically close together into clusters. Each cluster elects a cluster head. The cluster head
maintains complete knowledge of cluster membership and inter-cluster members (called gateways)
which have access to neighboring clusters.
The main difference between DSR and CBRP is during the route discovery operation. DSR floods route
query packets throughout the entire network. CBRP takes advantage of its cluster structure to limit the
scope of route query flooding. In CBRP, only the cluster heads (and corresponding gateways) are
flooded with query packets, reducing the bandwidth required by the route discovery mechanism.
Unfortunately, CBRP depends on nodes transmitting periodic hello packets; a large part of the gains
made by DSR are because DSR does not require periodic packets of any kind.
Optimized Link State Routing (OLSR) [10] is a link state routing protocol. OLSR is an
adaption of conventional routing protocols to work in an ad hoc network on top of IMEP [6].
The novel attribute of OLSR is its ability to track and use multi-point relays. The idea of multi-point relays is to
minimize the flooding of broadcast messages in the network by reducing/optimizing duplicate re-transmissions in
the same region. Each node in the network selects a set of nodes in its neighborhood who will re-transmit its
broadcast packets. This set of selected neighbor nodes is called the multi-point relays of that node. Each node
selects its multi-point relay set in a manner to cover all the nodes that are two hops away from it. The neighbors
www.jntuworld.com
www.jntuworld.com
which are not in the multi-point relay set still receive and process broadcast packets but
do not re-transmit them. Figure 6.1 illustrates an example of multi-point relay versus
regular broadcasting in a network of 10 nodes.
The Zone Routing Protocol (ZRP) [7] is a hybrid of DSR, DSDV, and OLSR. In ZRP, each node
proactively maintains a zone around itself using a protocol such as DSDV. The zone consists of all
nodes within a certain number of hops, called the zone radius, away from the node. Each node
knows the best way to reach each other node within its zone. The nodes which are on the edges of
the zone (i.e.: are exactly zone_radius hops from the node) are called border nodes, and are
employed in a similar fashion to multi-point relays in OLSR.
When a node needs to route a packet, it first checks to see if the destination node is within its
zone. If it is, the node knows exactly how to route to the destination. Otherwise, a route
search similar to DSR is employed. However, to reduce redundant route search broadcasts,
nodes only transmit route query packets to the border nodes (called bordercasting). When the
border nodes receive the search query packet, they repeat the process for their own zones.
Because ZRP only employs proactive network management in a local zone, overhead is
reduced over protocols like DSDV. When route discovery procedures are employed as in
DSR, overhead is reduced by limiting the query packet broadcasts to border nodes.
1. Introduction
Ad-hoc networks are a new paradigm of wireless communication for mobile hosts. No fixed
infrastructure such as base stations as mobile switching .Nodes within each other radio range
communicate directly via wireless links while these which are far apart rely on other nodes to
relay messages. Node mobility causes frequent changes in topology.
4) Authentication: Enables a node to ensure the identity of the peer node it is communicating
with. Without which an attacker would impersonate a node, thus gaining unauthorized access to
resource and sensitive information and interfering with operation of other nodes.
5) Non-repudiation Ensures that the origin of a message cannot deny having sent the message.
1.2 Challenges
Use of wireless links renders an Adhoc network susceptible to link attacks ranging from
passive eavesdropping to active impersonation, message replay and message distortion.
Eavesdropping might give an attacker access to secret information thus violating confidentiality.
Active attacks could range from deleting messages, injecting erroneous messages, impersonate a
node etc thus violating availability, integrity, authentication and non-repudiation. Nodes roaming
freely in a hostile environment with relatively poor physical protection have non-negligible
probability of being compromised. Hence, we need to consider malicious attacks not only from
outside but also from within the network from compromised nodes. For high survivability Adhoc
networks should have a distributed architecture with no central entities, centrality increases
vulnerability. Ad-hoc network is dynamic due to frequent changes in topology. Even the trust
relationships among individual nodes also changes, especially when some nodes are found to be
compromised. Security mechanism need to be on the fly(dynamic) and not static and should be
scalable. Hundreds of thousand of nodes.
a) Difficult to determine if the certificate presented by the participant has been revoked.
b) Participants may be divided into 2 or more certification hierarchies and that they don't have
cross certification hierarchies.
Physically secure channel limited to those present in the room to negotiate the session key
before switching to the insecure wireless channel.
Secrecy
Only those players that know the initial shared weak secret password should learn the session
key and nobody else should.
A and B are two communicating parties with a shared secret (password) p. (EA, DA) are the keys
of A.
A encrypts EA with the password and sends it to B. It also sends a label 'A' to identify itself.
(2) B knows 'P' so decrypts p(EA) extracts EA. B generates 'R' randomly, encrypts it using EA and
the whole thing is encrypted with P and sent to A.
This message authenticates B to A, since B could extract EA from the message sent by A to B
only if B knew password 'P'.
(3) A decrypts this message, extracts R, generates (challenge)A and SA , encrypts it using R and
sends it to B.
(4) B decrypts this message, extracts (challenge)A and SA. It then computes h( ((challenge)A)
where h() is a hash function. B then generates (challenge)B and SB and then sends
h((challenge)A), ((challenge)B and SB to A, encrypted by R.
This message serves as an acknowledgement to A's previous message from step:3 and also
notify A that SA has been successfully noted.(5) A decrypts this message, extracts (challenge)B
and SB. A computes h((challenge)B), encrypts it using R and sends it to B.
A --> B : R((challenge)B).
This protocol can be easily extended to multi-party case by electing a leader. The leader will
broadcast the message in step1, the rest of the messages will be point to point with A acting as
the leader.
At the end of each protocol run, each player shares a key with the leader. An additional round
will be needed for the leader to pick a common session key and to distribute it among other
players using the pair wise key the user shares with the participants. The main drawback is that
this protocol is non-contributory since the key is chosen only by the leader.
However, we can slightly modify the protocol for it to act as a contributory multi-party
protocol. The challenges (challenge)A and (challenge)B are used by A and B to confirm that the
other knows the password P. The random quantities SA and SB which already have been
generated could be used for the purpose of confirmation instead of the challenges. These
quantities are used to generate the final session key K = f(SA, SB), these SA and SB could be
easily used to confirm each other's knowledge of K.
The last two steps 4 and 5 are used by the receiving party (B and A respectively) that the
sending party (A and B respectively) knows K (and hence P). The h(., .) is a public hash
function.
Let Mi i = 1 to n be the set of n players with Mn as the leader, Si being the random share
contributed by Mi towards the generation of the final session key K.
The protocol also provides perfect forward secrecy for all parties except for the one who knows
the decryption key D, unless the decryption key is also destroyed at the end of the protocol run.
The attacker who succeeds in compromising the leader Mn will be able to decipher a copy of the
past session.
The protocol is also tolerant of disruption attempts by anyone except Mn. If the attacker doesn't
know garbage it would send garbage message. Thus the true players agree on a key which has a
contribution from the attacker, however the attacker cannot determine the session key as it does
not have the knowledge of the initial shared secret (password) P.
Since the protocol is contributory, a certain amount of delay is introduced with it, since the
leader has to wait for contributions from each player before it can start sending out messages.
Drawbacks
1) Any quantity encrypted using the weak secret (password) P should be random. Thus E cannot
be well known long term encryption key, hence it is important to use a fresh key pair for every
run of the protocol and this is computationally expensive.
2) The parts of encryption key E may have special properties which might help the attacker
attempting a dictionary attack on P(E), thus care must be taken only to encrypt the unpredictable
parts of E, thus increasing the computational cost of the protocol.
In the elementary DH protocol, two parties A and B agree on a prime p and a generator g of the
multiplicative group Zp* (i.e. the set {1, 2, …, p-1}). A and B choose random secrets SA and SB
such that 1 <= SA, SB <= p-1.
(1) A computes gSA, encrypts it with the shared secret password P and sends it to B.
A --> B : A, P(gSA).
(2) B extracts gSA from the message computes gSB and also computes the session key K =
(gSA)SB. B then chooses a random challenge CB and encrypts it using the key K. B encrypts SB
using P. It then sends the two quantities to A.
(4) This message(3) convinces B that A was able to decrypt the message in (2) correctly. B then
encrypts CA using K and sends it to A.
B --> A : K(CA).
A decrypts the message to see if the plaintext is indeed C A. This would convince A that B knew
K. This would in turn convince A that B knew P.
There are let's just say n players M1, M2, …, Mn who all share a password P, each generating a
random quantity Si which is its contribution to the eventual session key K = g S1S2_ _ _Sn-1Sn.
The protocol is divided into 3 parts. In the first part (steps 1 and 2) players Mi to Mn-1 generate an
intermediate key
PI = g S1S2_ _ _Sn-1 in n-1 steps.
In the second part (steps 3 and 4) each Mi (i = 1 to n-1) has a separate with Mn, at the end of
which all the players are in a position to compute K.
(3) Mi --> Mn : P(Ci), i = 1 to n-1, in parallel, where Ci = PI Si’/Si and Si ‘ is the blinding factor
that is randomly choosen by Mi.
Step 1 consists of (n-2) sub steps. In the first sub step player M1 computes gS1 and sends it to M2
etc. At the end of the (n-2)th sub step, Mn-1 receives g S1S2_ _ _Sn-2, which it then raises by (S n-1) to
get the intermediate key PI = g S1S2_ _ _Sn-1.
In step 2, Mn-1 broadcast this PI to everyone. Now every Mi (i = 1 to n-1) removes its
contribution i.e, Si (i = 1 to n-1) from the PI respectively but also inserts a randomly chosen
blinding factor Si, encrypts the whole thing with the shared password P.
In step 3,each Mi will in parallel send the encryption to Mn. Mn decrypts the received message to
extract Ci. It then raises each Ci by Sn and returns the result in parallel to each Mi. At this point
each player can compute the session key as follows K = g S1S2_ _ _Sn-1Sn. Mn raises PI by Sn : K =
(PI)Sn. Each Mi unblinds the quantity it receives from Mn and re inserts its original contribution
Si to construct the session key K = g S1S2_ _ _Sn-1Sn = (PI)Sn.
Finally, some player broadcasts a key confirmation message that allows each player to verify that
at least one another player has decided on the same key K.
(a) Without the blinding, the quantity encrypted with P by Mn-1 from step 3 is the same as what it
receives in step 1.
(b) An attacker could send g S1S2_ _ _Si to Mi in step 2 instead of the broadcast message
(intermediate key) PI. If Mi uses this quantity to generate its message in step 3, the resulting
message is same as the message received by Mi in step 1. To thwart dictionary attacks, blinding
is necessary.
This protocol does provide perfect forward secrecy. It is also quasi-resilient to disruption except
when Mn is compromised/disrupted.
3.1.1 Infrastructure
Ad-hoc networks contain nodes that may frequently change their locations. Hence the
topology in these networks is highly dynamic. This results in frequently changing neighbors
on whom a node relies for routing. As a result traditional routing protocols can no longer be
used in such an environment. This mandates new routing protocols that can handle the
dynamic topology by facilitating fresh route discoveries.
As the communication is through wireless medium, it is possible for any intruder to tap
the communication easily. Wireless channels offer poor protection and routing related
control messages can be tampered. The wireless medium is susceptible to signal
interference, jamming, eavesdropping and distortion. An intruder can easily eavesdrop to
know sensitive routing information or jam the signals to prevent propagation of routing
information or worse interrupt messages and distort them to manipulate routes. Routing
protocols should be well adopted to handle such problems.
Current Ad-hoc routing protocols inherently trust all participants. Most Ad-hoc routing
protocols are cooperative by nature and depend on neighboring nodes to route packets. This
naive trust model allows malicious nodes to paralyze an Ad-hoc network by inserting
erroneous routing updates, replaying old messages, changing routing updates or advertising
incorrect routing information. While these attacks are possible in fixed network as well, the
Ad-hoc environment magnifies this makes detection difficult.
3.1.4.2 Throughput
Ad-hoc networks maximize total network throughput by using all available nodes for
routing and forwarding. However a node may misbehave by agreeing to forward packets
and then failing to do so, because it is overloaded, selfish, malicious or broken. Misbehaving
nodes can be a significant problem. Although the average loss in throughput due to
misbehaving nodes is not too high, in the worst case it is very high.
S A B C D X S A B M C D X
Current routing protocols assume that nodes do not alter the protocol fields of messages
passed among nodes. Routing protocol packets carry important control information that
governs the behavior of data transmission in Ad-hoc networks. Since the level of trust in a
traditional Ad-hoc network cannot be measured or enforced, enemy nodes or compromised
nodes may participate directly in the route discovery and may intercept and filter routing
protocol packets to disrupt communication. Malicious nodes can easily cause redirection of
network traffic and DOS attacks by simply altering these fields.
For example, in the network illustrated in Figure3.3, a malicious node M could keep
traffic from reaching X by consistently advertising to B a shorter route to X than the route to
X, which C is advertising.
The attacks can be classified as remote redirection attacks and denial of service attacks.
Let us look at them now.
Remote redirection attacks are also called black hole attacks. In the attacks, a malicious
node uses routing protocol to advertise itself as the shortest path to nodes whose packets it
wants to intercept. Protocols such as AODV instantiate and maintain routes by assigning
monotonically increasing sequence numbers to routes towards a specific destination. In
AODV, any node may divert traffic through itself by advertising a route to a node with a
destination sequence number greater than the authentic value.
Figure 3.3 illustrates an example ad hoc network. Suppose a malicious node, M, receives
the RREQ that originated from S for destination X after it is re-broadcast by B during route
discovery. M redirects traffic towards itself by unicasting to B a RREP containing a
significantly higher destination sequence num for X than the authentic value last advertised
by X.
Once the malicious node has been able to insert itself between two communicating nodes
it is able to do anything with the packets passing between them. It can choose to drop
packets to perform a denial of service attack, or alternatively use its place on the route as a
first step in man-in-the-middle attack.
DSR is a routing protocol, which explicitly states routes in data packets. These routes
lack any integrity checks and a simple denial-of-service attack can be launched in DSR by
altering the source routes in packet headers.
Modification to source routes in DSR may also include the introduction of loops in the
specified path. Although DSR prevents looping during the route discovery process, there are
insufficient safeguards to prevent the insertion of loops into a source route after a route has
been salvaged.
Generation of false routing messages is termed as fabrication messages. Such attacks are
difficult to detect.
AODV and DSR implement path maintenance measures to recover broken paths when
nodes move. If the destination node or an intermediate node along an active path moves, the
node upstream of the link break broadcasts a route error message to all active upstream
neighbors. The node also invalidates the route for this destination in its routing table.
The vulnerability is that routing attacks can be launched by sending false route error
messages. Suppose node S has a route to node X via nodes A, B, and C, as in Figure3.3. A
malicious node M can launch a denial of service attack against X by continually sending
route error messages to B spoofing node C, indicating a broken link between nodes C and X.
B receives the spoofed route error message thinking that it came from C. B deletes its
routing table entry for X and forwards the route error message on to A, who then also
deletes its routing table entry. If M listens and broadcasts spoofed route error messages
whenever a route is established from S to X, M can successfully prevent communications
between S and X.
3.1.6.2. Route cache poisoning in DSR
This is a passive attack that can occur in DSR due to promiscuous mode of updating
routing table which is employed by DSR. This occurs when information stored in routing
table at routers is deleted, altered or injected with false information.
In addition to learning routes from headers of packets, which a node is processing along a
path, routes in DSR may also be learned from promiscuously received packets. A node
overhearing any packet may add the routing information contained in that packet's header to
its own route cache, even if that node is not on the path from source to destination.
The vulnerability is that an attacker could easily exploit this method of learning routes
and poison route caches. Suppose a malicious node M wanted to poison routes to node X. If
M were to broadcast spoofed packets with source routes to X via itself, neighboring nodes
that overhear the packet transmission may add the route to their route cache.
In routing table overflow attack, the attacker attempts to create route to non-existent
nodes. The goal of the attacker is to create enough routers to prevent new routes from being
created or overwhelm the protocol. Implementation and flush out legitimate routes from
routing tables. Proactive routing algorithms attempt to discover routing information even
before they are needed, while reactive algorithms create only when they are needed. This
makes proactive algorithms more vulnerable to table overflow attacks.
As we observed earlier in section 4.1, misbehaving nodes can affect network throughput
adversely in worst-case scenarios. The existing Ad-hoc routing protocols do not include any
mechanism to identify misbehaving nodes. It is necessary to clearly define misbehaving
nodes in order to prevent false positives. It may be possible that a node appears to be
misbehaving when it is actually encountering temporary problem such as overload or low
battery. A routing protocol should be able to identify misbehaving nodes and isolate them
during route discovery operation.
Routing protocols should be able to recover from an attack in finite time. An intruder
should not be able to permanently disable a network by injecting a smaller number of mal-
informed routing packets. E.g. AODV, however is prone to self-stabilization problems as
sequence numbers are used to verify route validity times, and incorrect state may remain
stored in the routing tables for a long time.
Here we assume existence of certain amount of security infrastructure. The type of Ad-
hoc environment that we are dealing with here is called managed-open environment.
Assumptions
ARAN or Authenticated Routing for Ad-hoc Networks detects and protects against
malicious actions by third parties and peers in Ad-hoc environment. ARAN introduces
authentication, message integrity and non-repudiation to an Ad-hoc environment.
ARAN is composed of two distinct stages. The first stage is simple and requires little
extra work from peers beyond traditional ad hoc protocols. Nodes that perform the optional
second stage increase the security of their route, but incur additional cost for their ad hoc
peers who may not comply (e.g., if they are low on battery resources).
ARAN makes use of cryptographic certificates for the purposes of authentication and
non-repudiation.
(1) Stage 1
It contains a preliminary certification stage and a mandatory end-end authentication
stage. It is a lightweight stage and does not demand too many resources.
(a) Preliminary Certification
ARAN requires the use of a trusted certificate server T. Before entering the Ad-hoc
network, each node requests a certificate from T. For a node A,
The certificate contains the IP address of A, the public key of A, a timestamp t of when
the certificate was created, and a time e at which the certificate expires. These variables are
concatenated and signed by T. All nodes must maintain fresh certificates with the trusted
server and must know T’s public key.
The goal of stage 1 is for the source to verify that the intended destination was reached.
In this stage, the source trusts the destination to choose the return path.
(i)Source node
A source node, A, begins route instantiation to a destination X by broadcasting to its
neighbors a route discovery packet (RDP):
The RDP includes a packet type identifier (“RDP"), the IP address of the destination
(IPx), A's certificate (CertA), a nonce NA , and the current time t, all signed with A's private
key. Each time A performs route discovery, it monotonically increases the nonce. Nodes
then store the nonce they have last seen with its timestamp.
Nodes do not forward messages for which they have already seen the (N A ,IPA) tuple.
Upon receiving the broadcast, B's neighbor C validates the signature with the given
certificate. C then rebroadcasts the RDP to its neighbors, first removing B's signature.
C validates D's signature, removes the signature, and then signs the contents of the
message before unicasting the RDP to B.
A node checks the signature of the previous hop as the REP is returned to the source.
This avoids attacks where malicious nodes instantiate routes by impersonation and re-play
of X's message.
Disadvantages
ARAN requires that nodes keep one routing table entry per source-destination pair that is
currently active. This is certainly more costly than per-destination entries in non-secure ad
hoc routing protocols.
(2) Stage 2
Stage (2) is done only after Stage (1) is over. This is because the destination certificate is
required in Stage (2). This stage is primarily used for discovery of shortest path in a secure
fashion. Since a path is already discovered in Stage (2), data transfer can be pipelined with
Stage (2)'s shortest path discovery operation.
(i) Source
The source begins by broadcasting a Shortest Path Confirmation (SPC) message to its
neighbors (the same variables are used as in stage 1).
A -> broadcast: SPC, IPX, CertX, [[IPX, CertA, NA, t]KA- ]KX+
The SPC message begins with the SPC packet identifier (“SPC"), X's IP address and
certificate. The source concatenates a signed message containing the IP address of X, its
certificate, a nonce and timestamp. This signed message is encrypted with X's public key so
that other nodes cannot modify the contents.
Nodes that receive the SPC packet create entries in their routing table so as not to
forward duplicate packets. The entry also serves to route the reply packet from the
destination along the reverse path.
The source eventually receives the packet and verifies that the nonce corresponds to the
SPC is originally generated.
Advantages
The onion-like signing of messages prevents nodes in the middle from changing the path
in several ways. First, to increase the path length of the SPC, malicious nodes require an
additional valid certificate. Second, malicious nodes cannot decrease the recorded path
length or alter it because doing so would break the integrity of the encrypted data.
Route Maintenance
ARAN is an on-demand protocol. Nodes keep track of whether routes are active. When
no traffic has occurred on an existing route for that route's lifetime, the route is simply de-
activated in the route table. Data received on an inactive route causes nodes to generate an
Error (ERR) message that travels the reverse path towards the source. Nodes also use ERR
messages to report links in active routes that are broken due to node movement. All ERR
message must be signed. For a route between source A and destination X, a node B
generates the ERR message for its neighbor C as follows:
This message is forwarded along the path towards the source without modification. A
nonce and timestamp ensures the ERR message is fresh. Because messages are signed,
malicious nodes cannot generate ERR messages for other nodes. The non-repudiation
provided by the signed ERR message allows a node to be verified as the source of each ERR
message that it sends. A node which transmits a large number of ERR messages, whether the
ERR messages are valid or fabricated, should be avoided.
Key revocation
ARAN attempts a best effort key revocation that is backed up with limited time
certificates. In the event that a certificate needs to be revoked, the trusted certificate server,
T, sends a broadcast message to the ad hoc group that announces the revocation. Calling the
revoked certificate cert r, the transmission appears as:
Any node receiving this message re-broadcasts it to its neighbors. Revocation notices
need to be stored until the revoked certificate would have expired normally. Any neighbor of
the node with the revoked certificate needs to reform routing as necessary to avoid
transmission through the now-untrusted node.
This method is not failsafe. If an untrusted node, whose certificate is being revoked, is
the only link between 2 parts of an Ad-hoc network, it may not propagate the revocation
message to the other part - leading to a partitioned network.
To detect this situation and to hasten the propagation of revocation notices, when a node
meets a new neighbor, it can exchange a summary of its revocation notices with that
neighbor. If these summaries do not match, the actual signed notices can be forwarded and
re-broadcasted to restart propagation of the notice.
To deliver the packet, S sends it to the first security agent SA1 which decrypts the outer
most encapsulation and forwards the packet to the next agent. Each SA knows only the
address of the previous and the next hop. The last agent finally decrypts the message and
forwards it to R. It introduces a large amount of overhead and hence is not preferred for
routing.
Misbehaving nodes can reduce network throughput and result in poor robustness. Sergio
Marti Et al propose a technique to identify and isolate such nodes by installing a watchdog
and a pathrater in the Ad-hoc network on each node.
Assumptions
It is assumed that the wireless links are bi-directional. Most MAC layer protocols require
this. It also assumes support for promiscuous mode of operation for the nodes. This helps the
nodes supervise each other operation. The third assumption is that the underlying Ad-hoc
routing protocol is DSR. It is possible to extend the mechanism to other routing protocols as
well.
Mechanism
The watchdog identifies misbehaving nodes, while the pathrater avoids routing packets
through these nodes. When a node forwards a packet, the node’s watchdog verifies that the
next node in the path also forwards the packet. The watchdog does this by listening
promiscuously to the next node’s transmissions. If the next node does not forward the
packet, then it is misbehaving. The pathrater uses this knowledge of misbehaving nodes to
choose the network path that is most likely to deliver packets.
Watchdog
The watchdog method detects misbehaving nodes. Figure3.4 illustrates how the
watchdog works. Node A cannot transmit all the way to node C, but it can listen in on node
B’s traffic. Thus, when A transmits a packet for B to forward to C, A can often tell if B
transmits the
S A B C D
packet. If encryption is not performed separately for each link, which can be expensive, then
A can also tell if B has tampered with the payload or the header.
We implement the watchdog by maintaining a buffer of recently sent packets and
comparing each overheard packet with the packet in the buffer to see if there is a match. If
so, the packet in the buffer is removed and forgotten by the watchdog, since it has been
forwarded on. If the packet has remained in the buffer for longer than a certain timeout, the
watchdog increments a failure tally for the node responsible for forwarding on the packet. If
the tally exceeds a certain threshold bandwidth, it determines that the node is misbehaving
and sends a message to the source notifying it of the misbehaving node.
Advantages
The watchdog mechanism can detect misbehaving nodes at forwarding level and not just
the link level.
Weakness
1) Ambiguous collision
S A B C D
2) Receiver collision
In the receiver collision problem, node A can only tell whether B sends the packet to C,
but it cannot tell if C receives it. If a collision occurs at C when B first forwards the packet,
A only sees B forwarding the packet and assumes that C successfully receives it. Thus, B
could skip retransmitting the packet and evade detection. Figure 3.6
3) False misbehavior
False misbehavior can occur when nodes falsely report other nodes as misbehaving. A
malicious node could attempt to partition the network by claiming that some nodes
following it in the pat h are misbehaving. For instance, node A could report that node B is
not forwarding packets when in fact it is. This will cause S to mark B as misbehaving when
A is the culprit. This behavior, however, will be detected. Since A is passing messages onto
B (as verified by S), then any acknowledgements from D to S will go through A to S, and S
will wonder why it receives replies from D when supposedly B dropped packets in the
forward direction. In addition, if A drops acknowledgements to hide them from S, the node
B will detect this misbehavior and will report it to D.
Another problem is that a misbehaving node that can control its transmission power can
circumvent the watchdog. A node could limit its transmission power such that the signal is
strong enough to be overheard by the previous node but too weak to be received by the true
recipient.
Multiple nodes in collusion can mount a more sophisticated attack. For example, B and C
from figure3.4 could collude to cause mischief. In this case, B forwards a packet to C but
does not report to A when C drops the packet. Because of its limitation, it may be necessary
to disallow two consecutive untrusted nodes in a routing path.
6) Partial dropping
A node can circumvent the watchdog by dropping packets at a lower rate than the
watchdog’s configured minimum misbehavior threshold. Although the watchdog will not
detect this node as misbehaving, this node is forced to forward at the threshold bandwidth.
In this way the watchdog serves to enforce this minimum bandwidth. For the watchdog to
work properly it must know where a packet should be in two hops.
Pathrater
Just like the watchdog, the pathrater is run by each node. It combines the knowledge of
misbehaving nodes with link reliability data to pick. The most reliable route. Each node
maintains a rating for every other node it knows about in the network. It calculates a path
metric by averaging the node ratings in the path. We choose this metric because it gives a
comparison of the overall reliability of different paths and allows pathrater to emulate the
shortest length path algorithm when no reliability information ahs been collected, as
explained below. If there are multiple paths to the same destination, we choose the path with
the highest metric. Since the pathrater depends on knowing the exact path a packet has
traversed, it must be implemented on top of a source routing protocol.
The pathrater assigns ratings to nodes according to the following algorithm. When anode
in the network becomes known to the pathrater (through route discovery), the pathrater
assigns it a “neutral” rating of 0.5. A node always rates itself with a 1.0. This ensures that
when calculating path rates, if all other nodes are neutral nodes (rather than suspected
misbehaving nodes); the pathrater picks the shortest length path. The pathrater increments
the ratings of nodes on all actively used paths by 0.01 at periodic intervals of 200 ms. An
actively used path is one on which the node has sent a packet within the previous rate
increment interval. The maximum value a neutral node can attain is 0.8. We decrement a
node’s rating by 0.05 when we detect a link break during packet forwarding and the node
becomes unreachable. The lower bound rating of a “neutral” node is 0.0. The pathrater does
not modify the ratings of nodes that are not currently in active use.
We assign special highly negative value, -100 in the simulations, to nodes suspected of
misbehaving by the watchdog mechanism. When the pathrater calculates the path metric,
negative path values indicate the existence of one or more suspected misbehaving nodes in
the path. If a node is marked as misbehaving due to a temporary malfunction or incorrect
accusation it would be preferable if it were not permanently excluded from routing.
Therefore nodes that have negative ratings should have their ratings slowly increased or set
back to a non-negative value after a long timeout.
Performance
The watchdog and pathrater mechanism with DSR algorithm improves throughput by
27% while increasing the overhead from 12% to 24%. But this overhead is due to the way
DSR operates to maintain routes. The watchdog itself adds very little overhead. Although
the overhead is significant, these extensions still improve net throughput. In networks with
moderate mobility throughput improves by 17% while overhead transmission increases from
9% to 17%.
It makes use of trust levels (security attributes assigned to nodes) to make informed, secure routing
decision. Current routing protocols discover the shortest path between two nodes. But SAR can discover a
path with desired security attributes (E.g. a path through nodes with a particular shared key).
A node initiating route discovery sets the sought security level for the route i.e. the required minimal
trust level for nodes participating in the query/ reply propagation. Nodes at each trust level share
symmetric encryption keys. Intermediate nodes of different levels cannot decrypt in-transit routing
packets or determine whether the required security attributes can be satisfied and drop them. Only the
nodes with the correct key can read the header and forward the packet. So if a packet has reached the
destination, it must have been propagated by nodes at the same level, since only they can decrypt the
packet, see its header and forward it.
Shortest route
Secure route
Secure Node with the key
Implementation
SAR can extend any routing protocol. Here we see how to extend AODV and call it SAODV. Most of
AODV’s original behavior such as on-demand discovery using flooding, reverse path maintenance and
forward path setup via Route Request and Reply (RREP) messages is retained.
The RREQ (Route REQuest) and the RREP (Route REPly) packets formats are modified to carry
additional security information. The RREQ packet has an additional field called
RQ_SEC_REQIREMENT that indicates the required security level for the route the sender wishes to
discover. This could be a bit vector.
An intermediate node at the required trust level, updates the RREQ packet by updating another new field,
RQ_SEC_GUARANTEE field. The RQ_SEC_GUARANTEE field contains the minimum security
offered in the route. This can be achieved if each intermediate node at the required trust level performs an
‘AND’ operation with RQ_SEC_GUARANTEE field it receives and puts the updated value back into the
RQ_SEC_GUARANTEE field before forwarding the packet.
Finally the packet reaches the destination if a route exists. In the RREP packet one additional field is
also added. When an RREQ successfully traverses the network to the sender, the
RQ_SEC_GUARANTEE represents the minimum security level in the entire path from source to
destination. So the destination copies this from the RREQ to the RREP, into a new field called
RP_SEC_GUARANTEE field. The sender can use this value to determine the security level on the whole
path, since the sender can find routes which offer more security than asked for, with which he can make
informed decisions.
Drawbacks
A lot of encryption overhead, since each intermediate node has to performs it.
3.2.5 Secure Routing Protocol
Assumptions
A Security Association (SA) exists between the source node (S) and destination node (T).One way of
establishing this SA is negotiating a shared secret key by the knowledge of the public key of the other
end. The existence of the SA is justified, because the end hosts choose a secure communication scheme
and consequently should be able to authenticate each other. The SA would be established by any of group
key exchange schemes. However the exists of SAs with any of the intermediate nodes is unnecessary.
It is required that the end nodes be able to use non-volatile memory to maintain state information
regarding relayed queries, so that previously seen route requests are discarded.
It is also expected that a one to one mapping exists between MAC and IP addresses exists.
Finally the broadcast nature of the radio channels requires that each transmission is received by all
neighbors, which are assumed to operate in promiscuous mode (i.e. able to overhear all transmissions
from nodes within the range of their transceiver).
Working
1 T
M2
M1
S 5
2 3
The source node (S) initiates the route discovery by constructing a route request packet. The route
request packet is identified by a random query identifier (rnd#) and a sequence number (sq#). We
assumed that a security association (a shared key KST) is established between source (S) and destination
(T).
S constructs a Message Authentication Code (MAC) which is a hash of source, destination, random
query identifier, sequence number and KST
i.e. MAC = h(S, T, rnd#, sq#, KST). In addition the identifier (IP addresses) of the traversed intermediate
nodes are accumulated in the route request packet.
Intermediate nodes relay route requests. The intermediate nodes also maintain a limited amount of
state information regarding relayed queries (by storing their random sequence number), so that previously
seen route requests are discarded.
More than one route request packet reaches the destination through different routes. The destination T
calculates a MAC covering the route reply contents and then returns the packet to S over the reverse route
accumulated in the respective request packet. The destination responds to one or more route request
packets to provide the source with an as diverse topology picture as possible.
Advantages
We denote the query request as a list { QST; n1, n2, …. nk}. QST denotes the SRP header for a query
searching for T and initiated by S.
ni , i not = {1,k} are the IP addresses of the intermediate nodes and n1= S, nk= T.
Case 1:
When M receives { QST; S} it tries to mislead S by generating{ RST; S, M1, T} i.e. it fakes that
destination T is its neighbor. This is possible in a regular routing protocol, but not here, since only T can
generate the MAC which is verified by S.
Case 2:
If M1 discards request packets that it receives, it narrows the topology view of S. But at the same time
it practically removes itself from S’s view. Thus it cannot inflict harm to data flows originating from S,
and route chosen by S would not include M1.
Case 3:
When M1 receives { RST; S,1, M1, S, 4, T} it tampers with its contents and relays{ RST; S, 1, M, Y,
T}. Y being any sequence of nodes. S readily discards the reply due to the integrity protection provided
by MAC.
Case 4:
{ QST; S, X, 3, M2} to its neighbors, where X is a false IP address. This request arrives at T, which
constructs the reply and routes it over {T, M2, 3, X, S} towards S. but when node 3 receives the reply it
cannot forward it any further since X is not its neighbor and the reply is dropped.
Case 5:
If M1 replays route requests to consume network resources, they will be discarded by intermediate
nodes, since they maintain a list of query identifiers seen in the past. The query identifier is a random
number, so that it is not guessable by the malicious node.
Case 6:
If M1 attempts to forward { QST; S, M*} i.e. it spoofs its IP address. Consequently S would accept {
RST; S, M*, 1, 4, T} as a route. But the connectivity information conveyed by such a reply is correct.
However, in practice, neighbor discovery that maintain information on the binding of the MAC and IP
address can strengthen the protocol. Packets would be discarded when relayed by same data link interface
i.e. same MAC address with more than one different IP address.
Tunneling
If 2 nodes collude during the 2 phases (request and reply) of a single route discovery, then the protocol
could be attacked.
e.g.: if M1 received a route request, it can tunnel it to M2 i.e. discover a route to M2 and send the request
encapsulated in a data packet. Then M2 broadcasts a request with the route segment between M1 and M2
falsified { QST; S, M1, Z, M2}. T receives the request and constructs a reply which is routed one {T, M2,
Z, M1, S}. M2 receives the reply and tunnels it back to M1, which then returns it to S. As a result the
connectivity information is only partially correct.
Geethanjali College Of Engineering & Technology
Cheeryal(V),Keesara(M),R.R.Dist
Set: 1
Set: 2
Set: 3
1. What is MANET? What are the important characteristics and challenges of MANETS?
2. Discuss about location services and forwarding strategies in position based routing?
Set: 5
(b)Discuss about effects of partitions on TCP and its impact on lower layers?
Set: 6
2. Give an overview about security issues over adhoc and sensor networks?
Set: 7
1. Explain about Network Architecture of Senor network and design issues in MAC layer?
Set: 9
3. Explain about three categories of Sensor node hardware and Sensor Network Programming
Challenges?
Set: 10
(I)Aims
GUIDELINES:
Distribution of periods:
No. of classes required to cover Assignment tests (for every 2 units 1 test) : 4
Total periods 62