Page 1. Mobile Ad Hoc Networks EEC173B/ECS152C. Mobile Ad Hoc Networks (MANET)

Similar documents
Page 1. Mobile Ad Hoc Networks. EEC173B/ECS152C, Winter Mobile Ad Hoc Networks (MANET)

AODV Route Requests (RREQ) are forwarded in a manner similar to DSR

UCS-805 MOBILE COMPUTING Jan-May,2011 TOPIC 8. ALAK ROY. Assistant Professor Dept. of CSE NIT Agartala.

Wireless Internet Routing

Unicast Routing in Mobile Ad Hoc Networks

Dynamic Source Routing (DSR) [Johnson96]

Dynamic Source Routing (DSR) [Johnson96] CSE 6811 : Lecture 5

Wireless Networking & Mobile Computing

Ad hoc On-demand Distance Vector Routing (AODV) [Perkins99] CSE 6811 : Lecture 7

4/11/2012. Outline. Routing Protocols for Ad Hoc Networks. Classification of Unicast Ad-Hoc Routing Protocols. Ad Hoc Networks.

Routing In Ad Hoc Networks

Mobile Ad-Hoc Networks & Routing Algorithms

Part I. Wireless Communication

Mobile Ad Hoc Networks: Routing, MAC and Transport Issues

Unicast Routing in Mobile Ad Hoc Networks. Dr. Ashikur Rahman CSE 6811: Wireless Ad hoc Networks

Politecnico di Milano Facoltà di Ingegneria dell Informazione. WI-7 Ad hoc networks. Wireless Internet Prof. Antonio Capone

Ad Hoc Routing. Ad-hoc Routing. Problems Using DV or LS. DSR Concepts. DSR Components. Proposed Protocols

LECTURE 9. Ad hoc Networks and Routing

CMPE 257: Wireless and Mobile Networking

ECS-087: Mobile Computing

Lecture 4: Mobile Ad Hoc and Sensor Networks (I)

Multi-hop Technology: Ad-hoc Networks

Page 1 EEC173B/ECS152C. Link State Routing [Huitema95] Optimized Link State Routing (OLSR) MANET Unicast Routing. Proactive Protocols

Content. 1. Introduction. 2. The Ad-hoc On-Demand Distance Vector Algorithm. 3. Simulation and Results. 4. Future Work. 5.

Page 1. EEC173B/ECS152C, Winter Link State Routing [Huitema95] Optimized Link State Routing (OLSR) MANET Unicast Routing. Proactive Protocols

Routing in Ad Hoc Wireless Networks PROF. MICHAEL TSAI / DR. KATE LIN 2014/05/14

Routing in Ad-hoc Networks

CMPE 257: Wireless and Mobile Networking

Outline. CS5984 Mobile Computing. Taxonomy of Routing Protocols AODV 1/2. Dr. Ayman Abdel-Hamid. Routing Protocols in MANETs Part I

Wireless Mul*hop Ad Hoc Networks

Setup Ad Hoc Routing Protocol over On-Demand Backup Node

Kapitel 5: Mobile Ad Hoc Networks. Characteristics. Applications of Ad Hoc Networks. Wireless Communication. Wireless communication networks types

AODV-PA: AODV with Path Accumulation

The Basics of Wireless Communication Octav Chipara

Subject: Adhoc Networks

Redes Inalámbricas Tema 4. Mobile Ad Hoc Networks

Routing Protocols in MANETs

Ad Hoc Networks: Introduction

A COMPARISON OF REACTIVE ROUTING PROTOCOLS DSR, AODV AND TORA IN MANET

Lecture 6: Vehicular Computing and Networking. Cristian Borcea Department of Computer Science NJIT

A Performance Comparison of Multi-Hop Wireless Ad Hoc Network Routing Protocols. Broch et al Presented by Brian Card

Wireless Internet Routing. Review of Wireless Networking (with Routing in Mind)

On-Demand Routing in Wireless Ad-Hoc Networks with Wide Levels of Network Density

10/29/08. Mobile ad hoc networks. Solution: Wireless ad-hoc networks. MANET: Mobile Ad-hoc Networking A B C

Mobile & Wireless Networking. Lecture 10: Mobile Transport Layer & Ad Hoc Networks. [Schiller, Section 8.3 & Section 9] [Reader, Part 8]

DSR: The Dynamic Source Routing Protocol for Multi-Hop Wireless Ad Hoc Networks

Mobile Ad Hoc Networks

Dynamic Source Routing in Ad Hoc Wireless Networks

CS5984 Mobile Computing

Mobile Ad-hoc and Sensor Networks Lesson 04 Mobile Ad-hoc Network (MANET) Routing Algorithms Part 1

Bridges. Bridge Functions. Example of No-frills Bridge. No-frills Bridges. Example of Learning Bridge. Learning Bridges

2013, IJARCSSE All Rights Reserved Page 85

MANET TECHNOLOGY. Keywords: MANET, Wireless Nodes, Ad-Hoc Network, Mobile Nodes, Routes Protocols.

DSDV: Proactive. Distance Vector (Basic idea) Distance Vector. Distance Vector Algorithm: Tables 12/13/2016

Adaptive routing for mobile ad hoc networks

Experiment and Evaluation of a Mobile Ad Hoc Network with AODV Routing Protocol

3. Evaluation of Selected Tree and Mesh based Routing Protocols

Arvind Krishnamurthy Fall 2003

Routing protocols in WSN

Performance Evaluation of AODV and DSR routing protocols in MANET

CHAPTER 2 LITERATURE REVIEW

6. Node Disjoint Split Multipath Protocol for Unified. Multicasting through Announcements (NDSM-PUMA)

CS551 Ad-hoc Routing

Routing Protocols in MANET: Comparative Study

(Wireless) Internet Routing. Review of Wireless Networking (with Routing in Mind)

2/16/2008. Outline Computer Networking Lecture 11 Routing. Sending Link States by Flooding. Link State Protocol Concept

IP Forwarding Computer Networking. Routes from Node A. Graph Model. Lecture 10: Intra-Domain Routing

Wireless Mesh Networks

[Kamboj* et al., 5(9): September, 2016] ISSN: IC Value: 3.00 Impact Factor: 4.116

PERFORMANCE BASED EVALUATION OF DSDV, AODV AND DSR ROUTING PROTOCOLS IN MANET

Performance of Route Caching Strategies in Dynamic Source Routing

AODV- An Efficient MANET Routing Protocol

Analysis of GPS and Zone Based Vehicular Routing on Urban City Roads

A COMPARISON OF IMPROVED AODV ROUTING PROTOCOL BASED ON IEEE AND IEEE

Destination Sequenced Distance. [Perkins94] CSE 6811 : Lecture 6

A Highly Effective and Efficient Route Discovery & Maintenance in DSR

What is Routing? EE 122: Shortest Path Routing. Example. Internet Routing. Ion Stoica TAs: Junda Liu, DK Moon, David Zats

PERFORMANCE BASED EVALUATION OF DSDV, AODV AND DSR ROUTING PROTOCOLS IN MANET

Routing protocols in Mobile Ad Hoc Network

AODV Multipath Extension using Source Route Lists with Optimized Route Establishment

Computation of Multiple Node Disjoint Paths

CEN445 Network Protocols and Algorithms. Chapter 2. Routing Algorithms. Dr. Ridha Ouni

PERFORMANCE ANALYSIS OF AODV ROUTING PROTOCOL IN MANETS

Chapter 7 CONCLUSION

Anil Saini Ph.D. Research Scholar Department of Comp. Sci. & Applns, India. Keywords AODV, CBR, DSDV, DSR, MANETs, PDF, Pause Time, Speed, Throughput.

Ad Hoc Networks: Issues and Routing

Expanding Ring Search for Route Discovery in LOADng Routing Protocol

Wireless Sensor Networks

White Paper. Mobile Ad hoc Networking (MANET) with AODV. Revision 1.0

Chapter 7. Wireless Ad Hoc Networks. 7: Wireless Ad Hoc Networks 7-1

15-441: Computer Networking. Wireless Networking

IN a mobile ad hoc network, nodes move arbitrarily.

Recent Researches in Communications, Information Science and Education

Effects of Sensor Nodes Mobility on Routing Energy Consumption Level and Performance of Wireless Sensor Networks

Performance Comparison of Ad Hoc Routing Protocols over IEEE DCF and TDMA MAC Layer Protocols

Workshops der Wissenschaftlichen Konferenz Kommunikation in Verteilten Systemen 2009 (WowKiVS 2009)

0!1. Overlaying mechanism is called tunneling. Overlay Network Nodes. ATM links can be the physical layer for IP

Performance Evaluation of MANET through NS2 Simulation

Overview (Advantages and Routing Protocols) of MANET

AD HOC NETWORKS. RAJINI M 2 ND SEM M.Tech DECS PESIT

Transcription:

173/152 obile d oc etworks (T) obile d oc etworks (T) ntroduction Unicast Routing Reactive Protocols: R, R, OV Proactive Protocols Properties ormed by wireless hosts which may be mobile Without (necessarily) using a pre existing infrastructure Routes between nodes may potentially contain multiple hops Why? ase of deployment peed of deployment ecreased dependence on infrastructure 2 obile d oc etworks obile d oc etworks (T) ay need to traverse multiple links to reach a destination obility causes route changes 3 4 Page 1

any pplications any Variations (1) Personal area networking ell phone, laptop, ear phone, wrist watch ilitary environments oldiers, tanks, planes ivilian environments Taxi cab network eeting rooms ports stadiums oats, small aircraft mergency operations earch and rescue Policing and fire fighting ully ymmetric nvironment ll nodes have identical capabilities and responsibilities symmetric apabilities Transmission ranges and radios may differ attery life at different nodes may differ Processing capacity may be different at different nodes peed of movement symmetric Responsibilities Only some nodes may route packets ome nodes may act as leaders of nearby nodes (e.g., cluster head) 5 6 any Variations (2) Traffic characteristics may differ in different ad hoc networks it rate Timeliness constraints Reliability requirements Unicast / multicast / geocast ost based addressing / content based addressing / capability based addressing ay co exist (and co operate) with an infrastructure based network any Variations (3) obility patterns may be different People sitting at an airport lounge ew ork taxi cabs ids playing ilitary movements Personal area network obility characteristics peed Predictability irection of movement Pattern of movement Uniformity (or lack thereof) of mobility characteristics among different nodes 7 8 Page 2

hallenges idden Terminal Problem imited wireless transmission range roadcast nature of the wireless medium idden terminal problem (see next slide) Packet losses due to transmission errors obility induced route changes obility induced packet losses attery constraints Potentially frequent network partitions ase of snooping on wireless transmissions (security hazard) odes and cannot hear each other Transmissions by nodes and can collide at node odes and are hidden from each other 9 10 T Research: The oly rail Why is Routing in T different? one size fits all solution Perhaps using an adaptive/hybrid approach that can adapt to situation at hand ifficult problem any solutions proposed trying to address a sub space of the problem domain ssumptions Unless stated otherwise, fully symmetric environment is assumed implicitly all nodes have identical capabilities and responsibilities ost mobility link failure/repair due to mobility may have different characteristics than those due to other causes Rate of link failure/repair may be high when nodes move fast ew performance criteria may be used route stability despite mobility energy consumption 11 12 Page 3

Unicast Routing Protocols lassification of Routing Protocols any protocols have been proposed ome have been invented specifically for T Others are adapted from previously proposed protocols for wired networks o single protocol works well in all environments ome attempts made to develop adaptive protocols Proactive protocols etermine routes independent of traffic pattern Traditional link state and distance vector routing protocols are proactive Reactive protocols aintain routes only if needed ybrid protocols Topology based vs. Position based (geographical) Traditional link state and distance vector are topologybased => learn about adjacencies with neighboring nodes Position based use geographical location (e.g., nodes with P receiver) to make routing decision, e.g., forward to nodes that are closer to destination 13 14 Trade Off Overview of Unicast Routing Protocols atency of route discovery Proactive protocols may have lower latency since routes are maintained at all times Reactive protocols may have higher latency because a route from X to will be found only when X attempts to send to Overhead of route discovery/maintenance Reactive protocols may have lower overhead since routes are determined only if needed Proactive protocols can (but not necessarily) result in higher overhead due to continuous route updating Reactive Protocols looding R R OV ost well-known T routing protocols Which approach achieves a better trade off depends on the traffic and mobility patterns (and hence, topology) 15 Page 4

looding for ata elivery looding for ata elivery ender broadcasts data packet P to all its neighbors ach node receiving P forwards P to its neighbors equence numbers used to avoid the possibility of forwarding the same packet more than once Packet P reaches destination provided that is reachable from sender ode does not forward the packet Represents a node that has received packet P 17 Represents that connected nodes are within each other s transmission range 18 looding for ata elivery looding for ata elivery roadcast transmission Represents a node that receives packet P for the first time Represents transmission of packet P ode receives packet P from two neighbors: potential for collision 19 20 Page 5

looding for ata elivery looding for ata elivery ode receives packet P from and, but does not forward it again, because node has already forwarded packet P once 21 odes and both broadcast packet P to node ince nodes and are hidden from each other, their transmissions may collide Packet P may not be delivered to node at all, despite the use of flooding 22 looding for ata elivery looding for ata elivery ode does not forward packet P, because node is the intended destination of packet P looding completed odes unreachable from do not receive packet P (e.g., node ) odes for which all paths from go through the destination also do not receive packet P (example: node ) 23 24 Page 6

looding for ata elivery looding: dvantages looding may deliver packets to too many nodes (in the worst case, all nodes reachable from sender may receive the packet) implicity ay be more efficient than other protocols when rate of information transmission is low enough that the overhead of explicit route discovery/maintenance incurred by other protocols is relatively higher This scenario may occur, for instance, when nodes transmit small data packets relatively infrequently, and many topology changes occur between consecutive packet transmissions Potentially higher reliability of data delivery ecause packets may be delivered to the destination on multiple paths 25 26 looding: isadvantages looding of ontrol Packets Potentially, very high overhead ata packets may be delivered to too many nodes who do not need to receive them Potentially lower reliability of data delivery looding uses broadcasting hard to implement reliable broadcast delivery without significantly increasing overhead roadcasting in 802.11 is unreliable n our example, nodes and may transmit to node simultaneously, resulting in loss of the packet n this case, destination would not receive the packet at all any protocols perform (potentially limited) flooding of control packets, instead of data packets The control packets are used to discover routes iscovered routes are subsequently used to send data packet(s) Overhead of control packet flooding is amortized over data packets transmitted between consecutive control packet floods 27 28 Page 7

ynamic ource Routing (R) Route iscovery in R [ohnson96] avid. ohnson and avid. altz. ynamic ource Routing in d oc Wireless etworks. n obile omputing, edited by Tomasz mielinski and ank orth, hapter 5, pages 153 181, luwer cademic Publishers, 1996. When node wants to send a packet to node, but does not know a route to, node initiates a route discovery ource node floods Route Request (RRQ) ach node appends own identifier when forwarding RRQ Represents a node that has received RRQ for from 29 30 Route iscovery in R Route iscovery in R roadcast transmission [] [,] [,] [X,] Represents transmission of RRQ Represents list of identifiers appended to RRQ 31 ode receives packet RRQ from two neighbors: potential for collision 32 Page 8

Route iscovery in R Route iscovery in R [,,] [,,] [,,,] [,,,] ode receives RRQ from and, but does not forward it again, because node has already forwarded RRQ once 33 odes and both broadcast RRQ to node ince nodes and are hidden from each other, their transmissions may collide 34 Route iscovery in R Route iscovery in R [,,,,] estination on receiving the first RRQ, sends a Route Reply (RRP) RRP is sent on a route obtained by reversing the route appended to received RRQ RRP includes the route from to on which RRQ was received by node ode does not forward RRQ, because node is the intended target of the route discovery 35 36 Page 9

Route Reply in R Route Reply in R RRP [,,,,] Route Reply can be sent by reversing the route in Route Request (RRQ) only if links are guaranteed to be bi directional To ensure this, RRQ should be forwarded only if it received on a link that is known to be bi directional f unidirectional (asymmetric) links are allowed, then RRP may need a route discovery for from node Unless node already knows a route to node f a route discovery is initiated by for a route to, then the Route Reply is piggybacked on the Route Request from. Represents RRP control message f 802.11 is used to send data, then links have to be bi directional (since ck is used) 37 38 ynamic ource Routing (R) ata elivery in R ode on receiving RRP, caches the route included in the RRP When node sends a data packet to, the entire route is included in the packet header ence the name source routing ntermediate nodes use the source route included in a packet to determine to whom a packet should be forwarded When to Perform a Route iscovery? When node wants to send data to node, but does not know a valid route node T [,,,,] Packet header size grows with route length 39 40 Page 10

R Optimization: Route aching ach node caches a new route it learns by any means When node finds route [,,,,] to node, node also learns route [,,] to node When node receives Route Request [,,] destined for node, node learns route [,,,] to node When node forwards Route Reply RRP [,,,,], node learns route [,,] to node When node forwards ata [,,,,] it learns route [,,,] to node node may also learn a route when it overhears ata packets Use of Route aching When node learns that a route to node is broken, it uses another route from its local cache, if such a route to exists in its cache. Otherwise, node initiates route discovery by sending a route request ode X on receiving a Route Request for some node can send a Route Reply if node X knows a route to node Use of route cache an speed up route discovery an reduce propagation of route requests 41 42 Use of Route aching Use of Route aching: an peed up Route iscovery [,,,,] [,] [,,,] [,,] [,,],[,,] [X,X,X] Represents cached route at a node (R maintains the cached routes in a tree format) [,,,] [,,,,] [,,,] [,,,] [,,] [,] [,,,] RRP RRQ When node sends a route request for node, node sends back a route reply [,,,] to node using a locally cached route [,,],[,,] 43 44 Page 11

Use of Route aching: an Reduce Propagation of Route Requests Route rror (RRR) [,,,,] [,,,] [,,,] [,,] [,] [,,,] RRP RRQ ssume that there is no link between and. Route Reply (RRP) from node limits flooding of RRQ. n general, the reduction may be less dramatic. [,,],[,,] 45 RRR [-] sends a route error to along route --- when its attempt to forward the data packet (with route ) on - fails odes hearing RRR update their route cache to remove link - 46 Route aching: eware! R: dvantages tale caches can adversely affect performance With passage of time and host mobility, cached routes may become invalid sender host may try several stale routes (obtained from local cache, or replied from cache by other nodes), before finding a good route Routes maintained only between nodes who need to communicate reduces overhead of route maintenance Route caching can further reduce route discovery overhead single route discovery may yield many routes to the destination, due to intermediate nodes replying from local caches 47 48 Page 12

R: isadvantages R: isadvantages Packet header size grows with route length due to source routing lood of route requests may potentially reach all nodes in the network are must be taken to avoid collisions between route requests propagated by neighboring nodes insertion of random delays before forwarding RRQ ncreased contention if too many route replies come back due to nodes replying using their local cache Route Reply torm problem Reply storm may be eased by preventing a node from sending RRP if it hears another RRP with a shorter route n intermediate node may send Route Reply using a stale cached route, thus polluting other caches This problem can be eased if some mechanism to purge (potentially) invalid cached routes is incorporated. or some proposals for cache invalidation, see [u00obicom] tatic timeouts daptive timeouts based on link stability 49 50 Overview of Unicast Routing Protocols ocation ided Routing (R) Reactive Protocols looding R R OV xploits location information to limit scope of route request flood ocation information may be obtained using P xpected one is determined as a region that is expected to hold the current location of the destination xpected region determined based on potentially old location information, and knowledge of the destination s speed Route requests limited to a Request one that contains the xpected one and location of the sender node 52 Page 13

xpected one in R Request one in R X = last known location of node, at time t0 = location of node at current time t1, unknown to node r = (t1 - t0) * estimate of s speed etwork pace Request one r X r X xpected one 53 54 R Only nodes within the request zone forward route requests ode does not forward RRQ, but node does (see previous slide) Request zone explicitly specified in the route request ach node must know its physical location to determine whether it is within the request zone f route discovery using the smaller request zone fails to find a route, the sender initiates another route discovery (after a timeout) using a larger request zone the larger request zone may be the entire network Rest of route discovery protocol similar to R R Variations: daptive Request one ach node may modify the request zone included in the forwarded request odified request zone may be determined using more recent/accurate information, and may be smaller than the original request zone Request zone adapted by Request zone defined by sender 55 56 Page 14

R Variations: mplicit Request one ocation ided Routing n the previous scheme, a route request explicitly specified a request zone lternative approach: node X forwards a route request received from if node X is deemed to be closer to the expected zone as compared to The motivation is to attempt to bring the route request physically closer to the destination node after each forwarding 57 The basic proposal assumes that, initially, location information for node X becomes known to only during a route discovery This location information is used for a future route discovery ach route discovery yields more updated information which is used for the next discovery Variations ocation information can also be piggybacked on any message from to X may also proactively distribute its location information imilar to other protocols discussed later (e.g., R, ) 58 ocation ided Routing (R) Overview of Unicast Routing Protocols dvantages Reduces the scope of route request flood Reduces overhead of route discovery isadvantages odes need to know their physical locations oes not take into account possible existence of obstructions for radio transmissions Reactive Protocols looding R R OV 59 Page 15

d oc On emand istance Vector Routing (OV) OV [PR99].. Perkins and.. Royer. ʺd hoc On emand istance Vector Routing,ʺ W, 1999. R includes source routes in packet headers Resulting large headers can sometimes degrade performance Particularly when data contents of a packet are small OV attempts to improve on R by maintaining routing tables at the nodes, so that data packets do not have to contain routes OV retains the desirable feature of R that routes are maintained only between nodes which need to communicate Route Requests (RRQ) are forwarded in a manner similar to R When a node re broadcasts a Route Request, it sets up a reverse path pointing towards the source OV assumes symmetric (bi directional) links When the intended destination receives a Route Request, it replies by sending a Route Reply Route Reply travels along the reverse path set up when Route Request is forwarded 61 62 Route Requests in OV Route Requests in OV roadcast transmission Represents a node that has received RRQ for from Represents transmission of RRQ 63 64 Page 16

Page 17 65 Route Requests in OV Represents links on Reverse Path 66 Reverse Path etup in OV ode receives RRQ from and, but does not forward it again, because node has already forwarded RRQ once 67 Reverse Path etup in OV 68 Reverse Path etup in OV ode does not forward RRQ, because node is the intended target of the RRQ

Route Reply in OV Route Reply in OV Represents links on path taken by RRP n intermediate node (not the destination) may also send a Route Reply (RRP) provided that it knows a more recent path than the one previously known to sender To determine whether the path known to an intermediate node is more recent, destination sequence numbers are used The likelihood that an intermediate node will send a Route Reply when using OV not as high as R new Route Request by node for a destination is assigned a higher destination sequence number. n intermediate node which knows a route, but with a smaller sequence number, cannot send Route Reply 69 70 orward Path etup in OV ata elivery in OV T orward links are setup when RRP travels along the reverse path Routing table entries used to forward data packet. Route is not included in packet header. Represents a link on the forward path 71 72 Page 18

Timeouts ink ailure Reporting routing table entry maintaining a reverse path is purged after a timeout interval Timeout should be long enough to allow RRP to come back routing table entry maintaining a forward path is purged if not used for a active_route_timeout interval f no data is being sent using a particular routing table entry, that entry will be deleted from the routing table (even if the route may actually still be valid) neighbor of node X is considered active for a routing table entry if the neighbor sent a packet within active_route_timeout interval which was forwarded using that entry When the next hop link in a routing table entry breaks, all active neighbors are informed ink failures are propagated by means of Route rror messages, which also update destination sequence numbers 73 74 Route rror estination equence umber When node X is unable to forward packet P (from node to node ) on link (X,), it generates a RRR message ode X increments the destination sequence number for cached at node X The incremented sequence number is included in the RRR When node receives the RRR, it initiates a new route discovery for using destination sequence number at least as large as ontinuing from the previous slide When node receives the route request with destination sequence number, node will set its sequence number to, unless it is already larger than 75 76 Page 19

ink ailure etection Why equence umbers in OV ello messages: eighboring nodes periodically exchange hello message bsence of hello message is used as an indication of link failure lternatively, failure to receive several level acknowledgement may be used as an indication of link failure To avoid using old/broken routes To determine which route is newer To prevent formation of loops ssume that does not know about failure of link because RRR sent by is lost ow performs a route discovery for. ode receives the RRQ (say, via path ) ode will reply since knows a route to via node Results in a loop (for instance, ) 77 78 Why equence umbers in OV Optimization: xpanding Ring earch oop Route Requests are initially sent with small Time to ive (TT) field, to limit their propagation R also includes a similar optimization f no Route Reply is received, then larger TT tried 79 80 Page 20

ummary: OV Routes need not be included in packet headers odes maintain routing tables containing entries only for routes that are in active use t most one next hop per destination maintained at each node R may maintain several routes for a single destination Unused routes expire even if topology does not change 81 Page 21