460 likes | 503 Views
This seminar covers caching strategies in on-demand routing protocols for efficient communication in wireless ad hoc networks. Topics include route discovery, route maintenance, and different design choices in caching algorithms.
E N D
Caching Strategies Kiran Muthabatulla Internet Technology Seminar
The 3 Papers consist of • Caching Strategies in On-Demand Routing Protocols for Wireless Ad hoc Networks • 2 A Scalable Location service for Geographic Ad hoc Routing. • 3 GPSR: Greedy Perimeter Stateless Routing for Wireless Networks.
Section 1: Caching Strategies in On-Demand Routing Protocols for Wireless Ad hoc Networks Caching is an Important part for On-Demand Routing Protocols for Wireless Ad hoc Networks All Nodes Co-operate to Dynamically establish and maintain routing in the network, forwarding packets to one another to allow communication between Nodes not directly in wireless transmission range.
Static Routing Protocols use Periodic or Background exchange of routing information. On Demand Routing Protocol: Searches for and attempts to discover a Route to a destination Node ONLY when a sending Node originates a Data Packet addressed to the destination Node. Once Discovered the Route is Cached to avoid the need to discover the route before each packet is sent.
Problems with Caching include : Managing the Structure of the Cache Managing the Contents of the Cache Because Nodes in the Network Move in and out of the wireless ranges of one another possibly invalidating some cached routing information.
Dynamic Source Routing Protocol Mechanisms: Route Discovery: Source S originates a Data Packet to Destination D. Source S Does not have a Route to D. Route Maintenance: Route to D no Longer works as the source route is broken between packet transfer, S attempts to use another route to D if it knows or Goes thro Route discovery.
Route Reply sab sa Route Req a s b d Route Req Route Req sab s
Each Node appends its own address • Unless same copy of request is seen • It finds its address in the route record. • When Req Packet Reaches D or another Node which has a cached route to D, this Node returns to S the route discovered by the request. • Disadvantages of Route Discovery: • Expensive as Large no of Req Packets are transmitted. • Adds Latency to the subsequent delivery of Data Packets
Advantages of Route Discovery: • Collection of Large amount of information about the current state of the Network that is useful in futre routing decisions. • Nodes Can look at the Discovery Packtes of other nodes • By Caching and making use of the collected information, Cost of Routing discovery • Overall performance of the network can be increased
Route Maintenance: Performed by each node that originates or forwards a packet. Node responsible for confirming that the packet has been received by the next hop along the source route. Packet is retransmitted until the reciept is received by some kind of an ACK for N times. If confirmation not received more than n times, then the node returns to the original sender a route error identifying that the source route did not succeed. The Sender removed the Source Route from its cache for the broken link. Might use another route if it has one or do a Route discovery Phase again.
Different Design Choice Areas • Cache Structure • Cache Capacity • Cache TimeOut
For Different Caching algorithms, We evaluate the ability of the routing protocol to do the following 1. Route Packets to different destination 2. No of Overhead Packets generated. 3. Average latency to deliver data Packets 4. Optimality of the route used to the shortest route which existed at the time the packet was sent.
Cache Structure Type of the Data Structure Used to Represent the Cache The Route reply that is received by the Initiator of a Route Discovery represents a complete path, leading from the Node to destination Node.
Path Cache: Caching Each of these paths seperately, a path cache is be formed.
Link Cache: The individual Link in the routes returned in the Route reply packets is added to a unified graph data structure of this node current view of the Network Topology.
Advantages and Disadvantages: 1. Path Cache is simple to implement and all routes are loop free. 2. To Find a Route in a Path Cache, the sending Node simply searches for any Path or a Prefix of a cache that leads to the intended destination Node. 3. To Find a route in a Link Cache, A node uses a much more complex graph search, to figure out the current best path. 4. More complex and takes more CPU time to execute. 5. Path cache cannot effectively utilize all the potential information that a node may learn from the network 6. Links learnt from Route discoveries or that have been overheard packets can be merged to form new Routes.
Cache Capacity: Another important area of Choice Link Cache : For N Nodes, there can be a Maximum of N*N. Path Caches : Larger the Capacity of a Path cache, the better the routing protocol should perform, since it is able to keep a more complex set of routes. But Because of a lot of Route Errors caused by stale Routes , the data proved other wise. Division of Cache into 2 Halves: Generational Cache. Primary Cache : Paths used by this Node : Paths Removed by Route Maintenance. Secondary Cache : Paths Just Learned, Not Used. : Paths removed by Capacity Limits .
Cache TimeOut: Path Caches: Entries are removed based on Capacity. Hence No Cache timeout implemented. Link Caches: Static: Each Link removed after a specific time out. Dynamic: Node sets a timeout based on the properties of the Link and the nodes it services.
Path Caches Algorithms: Path-INF: No capacity Limit Path-FiFo-64: 64 Path Capacity Path-FiFo-32: 32 Path Capacity Path-Gen-64: Primary Cache=30, Seconday Cache is 64 Path-Gen-32: Primary Cache=30, Seconday Cache is 32
Link Caches Algorithms: Link NoExp: A link cache has no timeout. LinkStatic 5: A link cache in which links expire 5 seconds after put in cache. Etc..
Conclusions: Presented an analysis of the effects of different design choices in caching strategies for on demand routing protocols Divided the problem in Cache structure, cache Capacity and Cache Timeout. Analysis Based on Dynamic Source Routing Protocol DSR.
Greedy Perimeter Stateless Routing for Wireless Networks Communications Between Source and Destination may require traversal of multiple hops as radio ranges are finite. The Network Topology Changes more rapidly in a mobile, wireless network than a Wired Network.
Distance Vector Algorithm: Each Router includes its distance from all network destinations in each of its periodic beacons. Link state Algorithm: Floods Announcements of Change in any Link’s status to every router in the network. Disadvantages in Mobile Networks: Inaccuracies in the state at the router will cause routing loops or disconnection. LS generates lots of Messages, and DV suffers from out of Date State.
Factors in the scaling of a Routing Algorithm: The Rate of Change of Topology (R). The No of routers in the routing domain(N). Both Factors affect the message complexity of DV and LS Routing algorithms.
Approaches to Scale Routing : Hierarchy: Most widely deployed. Based on Well Defined and rarely changing topological Boundaries Caching: On-demand request of Topological information and Cache it aggressively.
Greedy Perimeter Stateless Routing: • Aims at Scalability under • Increasing No of Nodes • Increasing Mobility Rate.
Geographic Routing: • Allows Routers to be nearly Stateless and Requires propagation of topological information for only a single hop. • Each Node Needs to know its Neighbors Positions. • The Position of Packets Destination and Positions of the Candidate Next hops are sufficient to make correct forwarding decisions, without any topological information.
Assumptions: • Wireless Routers know their own Positions: • ( Gps Devices or surveying ) • Bi-directional Radio Reachability. • (IEEE 802.11 Wireless Network MAC sends link-level ACKS for all uni-cast packets.) • Packet Sources can determine the location of the Packet destinations to mark the packets with their packet destinations.
Greedy Perimeter Stateless Routing Algorithm: • Methods for Packet Forwarding • Greedy Forwarding • Perimeter Forwarding
Greedy Forwarding: • Packets are Marked by the originator with their destinations locations. • Forwarding Node Makes Locally optimal, Greedy Choice in Choosing Packets Next Hop. • Next Hop is the Geographically Closest to the Packets destination. • Forwarding continues until destination is reached.
Simple Beaconing Algorithm: • Provides all nodes with their neighbors Position. • Periodically, Each Node Transmits a Beacon to the Broadcast MAC address, containing its Own IP address and Position. • Position is a two, 4 byte floating point quantity, with x and y co-ordinate values. • Upon Not receiving a beacon from a neighbor for a longer than time out interval T, a GPSR router assumes the Neighbor failed or gone out of Range and deletes the Neighbor from its table. • Mac layer also gives direct indications of link level retransmission failures to neighbors.
Simple Beaconing Algorithm: • Provides all nodes with their neighbors Position. • Periodically, Each Node Transmits a Beacon to the Broadcast MAC address, containing its Own IP address and Position. • Position is a two, 4 byte floating point quantity, with x and y co-ordinate values. • Upon Not receiving a beacon from a neighbor for a longer than time out interval T, a GPSR router assumes the Neighbor failed or gone out of Range and deletes the Neighbor from its table. • Mac layer also gives direct indications of link level retransmission failures to neighbors.
DrawBacks of Greedy Forwarding : There are topologies in which the ONLY route to the destinations requires a packet to move temporarily farther away in the geometric distance from the destination.
The Right-Hand Rule: Perimeters Intersection of X’s Circular Radio Range and Circle about D From Node X’s prospective, Shaded region without nodes as ‘void’. . X Seeks to forward a packet to D beyond this void. If a path to D exists from X, it does not include nodes located within the void.
The Right-Hand Rule: When arriving at Node X from Y, the next edge traversed is the next one sequentially Anti-ClockWise about X from Edge (x,y)
Scalable Location Service for geographic Ad hoc Routing GLS is a New Distributed Location Service That tracks Mobile Node locations GLS combined with Geographic forwarding allows construction of ad hoc mobile networks that scale to a larger number of nodes GLS is decentralized and runs on Mobile Nodes themselves. No fixed infrastructure. Each Node Periodically updates its location servers.
The Network Nodes agree to relay each others packets toward their ultimate destinations and the nodes automatically form their own co-operative infra structure. Sources Need to learn positions of destinations. Hence need of Location Servers. Location Service must allow queries and updates to be performed using a few messages.
Location Service must be scalable in the following senses. • No Node should be a bottleneck. • The Failure of a Node should not effect the reachability of many other nodes. • 3. Queries for the locations of nearby hosts should be satisfied with corresponding local communications. • 4. The Per Node storage and communications cost of Location service should grow as a small fraction of the total number of Nodes. • GLS Satisfies all these Needs.
Grid Location Service • Any Node can send packets to any other Node. • Trivial Location server may consist of statically positioned LS. • Nodes would periodically update this server with their current location. • If A Need to Contact B, then A queries the LS for B’s current location before using geographic forwarding to contact B.
Grid Location Service Problems with single location server: 1. Centralized server is a single point of failure. 2. Cannot scale a large number of mobile nodes. Hence a Need of Distributed Location Service –GLS
Grid Location Service • Fault Tolerent • No dependent on specially designates nodes. • Can be scaled to large number of Nodes. • Works Effectively even on isolated pockets of Nodes. • A Node should be able to determine the location of the destination with geographic forwarding.
Grid Location Service Working No leader election or Hierarchy to determine location server responsibility Node X selects a set of Location Servers , that probabilistically , is unlike the set of servers selected by other nodes and does not change drastically as nodes enter or leave the network. Nodes seaching for X are able to find X’s location servers using no prior knowledge beyond node X’s ID. This is accomplised by carrying out much of the same protocol that X used to select its servers in the first place.
GLS Replicates the knowledge of a Nodes current location to a subset of network nodes called Location Servers. A node deciding to contact B, queries one of the LS which has entries for B. A’s seach for B’s location servers and B’s original recruiters of the Location servers ought to be the same servers. B uses the same information that A will use to query for location servers.
Conclusions: Presented a mobile ad hoc networking protocol with significantly better scaling properties than previous protocols.