320 likes | 488 Views
Multihop wireless networks. Geographical Routing. Karp, B. and Kung, H.T., Greedy Perimeter Stateless Routing for Wireless Networks, in MobiCom 2000. Using node’s geographical information to route. Assumes: Nodes know their locations, e.g., by having GPS
E N D
Geographical Routing • Karp, B. and Kung, H.T., Greedy Perimeter Stateless Routing for Wireless Networks, in MobiCom 2000. • Using node’s geographical information to route. • Assumes: • Nodes know their locations, e.g., by having GPS • Nodes know their one-hop neighbors, e.g., by asking every node to broadcast beacon signals periodically, and one-hop ONLY • Knows the location of the destination, e.g., by overhearing or broadcasting • The connectivity is a unit disc (arguable) • Advantage • Nodes do not have to store too many information. Given a constant amount of information in the packet, it can make routing decisions • AODV and DSR need to ask nodes to store hop-by-hop routing tables or complete routing paths
Greedy Routing • First idea: • At node A, if the destination is t, pick the next hop neighbor that is closest to t among all neighbors of A • To implement greedy routing, the packet needs to carry the destination’s location
Greedy routing • As many greedy algorithms, greedy routing may run into problems.
Planar Graphs • Consider routing in planar graphs. • A planar graph is a graph where there is no crossing edges. • The area closed by a set of edges is called a “face.” The outside is also called a face. • Faces are connected. • There are ways to construct planar graphs by deleting edges.
Face Routing • Keep left hand on the wall, walk until hit the straight line connecting source to destination. • Then switch to the next face. • The point is that every time you are switching to a face closer to the destination.
Face routing • Face Routing may fail only if there is no path to the destination. • Face routing will forward the packet to the face • Then it will circle around the face, without finding a point intersecting the line from s to t other than the last intersection point Lf. • Eventually it will hit the first edge when entered this face, e0, and will realize that the destination is unreachable • So, face routing needs to store in the packet header • Destination location • The starting point location • Lf • e0
GPSR • The idea is to first try greedy routing, which should cover most of the cases. In case greedy routing fails, try face routing.
Hierarchical Routing • AODV and DSR is suitable for • small and flat networks, such as wireless ad hoc networks, where all nodes are the same, i.e., have similar processing power, similar battery. • relatively small, such that the number of hop count is reasonable • In some other networks, nodes can be different. • In wireless sensor networks, there may be cluster head nodes and the sensor nodes • In wireless mesh networks, there are mesh routers and mesh clients • Forwarding message is costly, better let the nodes with more power supply do it • In some networks, the size of the network can be very large • A wireless sensors network for some applications should have thousands of nodes
Hierarchical Routing • Hierarchical routing is more efficient in these scenarios. • The basic idea is • partition the entire network into regions or clusters. • Select one or more nodes as the cluster head • The routing is nodes -> cluster head A -> cluster head B -> cluster head C -> nodes • The routing between cluster heads and the routing within a cluster may follow different protocols, just as BGP and OSPF. • Achieves • Better scalability • Removes the load to less powerful nodes
A Case Study of Intra-cluster Routing in Wireless Sensor networks • Z. Zhang, M. Ma and Y. Yang, Energy Efficient Multi-Hop Polling in Clusters of Two-Layered Heterogeneous Sensor Networks , IEEE Transactions on Computers, vol. 57, no. 2, pp. 231-245, Feb. 2008 • Focusing on intra-cluster routing. • An example of cross-layer design. Merging network layer with MAC layer.
Wireless Sensor Networks • A large number of sensors are deployed in an area • Challenges • the network must be scalable • to reduce the cost, sensors should be made as simple as possible • must be energy efficient
Wireless Sensor Networks • To make network scalable, introduce hierarchies. • Sensors only communicate within a cluster. The inter-cluster communication is taken care of by the cluster head.
Wireless Sensor Networks • Existing works such as LEACH, HEED, for cluster head selection. • Disadvantage: Sensors become more complicated because every sensor could be elected as cluster head.
Wireless Sensor Networks • First idea: Instead of selecting cluster head among the sensors, why not simply add some more powerful sensors to the network as cluster head?
Wireless Sensor Networks • Advantage of such a two-layer heterogeneous network: • Better scalability • Majority of the sensors can be made very simple • Question: How does the cluster head collect data from the sensors in an energy efficient way?
Wireless Sensor Networks • Data collecting can be done by letting sensors make their own decisions when to send packets. • Problem – energy wasted in collision, collision avoidance, idle-listening, etc.
Wireless Sensor Networks • Second idea: Since we already have a powerful cluster head, why not use it as a master and use polling to get data from sensors? • Polling – Cluster head sends out polling messages, only those are polled will send packets. • It is energy efficient because no energy will be wasted in collision and collision avoidance, and by designing a good polling schedule, the time needed in data collection is reduced so the idle listening time is reduced.
Routing • With centralized control, can find the optimal routing paths. • Optimal in the sense that the maximum load of the sensors is minimized, such that the minimum life time of the sensors are maximized. S2 S4 S3 t S5 S1 S6 t S1 S2 S4 t S3 S5 S6 t
Routing • The optimal forwarding path problem. Given the topology and the traffic generated load at each node, find a set of forwarding paths such that the maximum transmission load of sensors is minimized. • For example, given the load of A,B, C, D, E is 1,6,1,1,1, respectively, the traffic assignment should be as shown in the figure. NOT and tree. • Solution: maximum flow algorithms. H 4 4 E D 1 1 C 3 3 A B
Routing H • Draw a graph which • Breaks a node into two nodes, such as turning A into A->a. Let the link capacity be c for all such new links. A is called the receiving node and a is called the transmitting node. • Introduce a source node s which connects to all receiving nodes, and let link between the source node and the receiving node has a capacity equal to the load of the original node. • All other links have infinite capacity. • Set c=1 and run the maximum flow algorithm (e.g., Ford-Fulkson). If the maximum flow is below the total load of the nodes, increment c by one. Otherwise quit. e d c c E D c c a b C c c A B 1 1 6 1 1 s
S1 t S2 S4 S4 t S3 S5 S5 S6 S6 t time slot 1 time slot 2 time slot 3 time slot 4 time slot 5 time slot 6 Polling Schedule • A poor schedule could take six time slots. S2 S4 S3 t S1 S5 S6
Polling Schedule • To get a faster schedule, it is crucial to encourage spatial reuse: Allow simultaneous transmissions if they do not cause destructive interferences. • Such transmission are called compatible. S2 S4 S3 t S5 S1 S6 S1 t S2 S4 S3 S5
S1 t S4 t S6 t S2 S4 S5 S6 S3 S5 time slot 1 time slot 2 time slot 3 Polling Schedule • A good schedule needs only three time slots. S2 S4 S3 t S1 S5 S6
Optimal Polling Schedule • The compatibilities of transmissions can be found by measuring the received signal strength. • The Multi Hop Polling Problem: Given relaying paths and the compatibilities, find the minimum time schedule (optimal schedule).
Optimal Polling Schedule • Use the Hamilton Path Problem. Given any instance of HP Problem, construct an MHP instance, called the two-level star. • Each node in the graph corresponds to a branch. • Each sensor in the second level has exactly one packet to send. Sensors in the first level have no packet to send.
S2 v1 S5 S4 t S1 S’3 S’2 S’1 S’5 S’4 Optimal Polling Schedule • The connection pattern in the HP instance determines the compatibility in the two level star: If there is edge (v1,v2),S1–>t and S’2–>S2 are compatible, so do S2–>t and S’1–>S1. v3 v5 v2 v4 S3
Optimal Polling Schedule As a result of this construction, a schedule with k=n+1 will determine a Hamiltonian Path in the original graph.
Online Polling Algorithm • Another challenge is that the algorithm must be able to run on-line. • Packet can be lost in some links, and the cluster head must ask the sensor to send it again – new requests may arrive while data gathering is going on
Online Polling Algorithm • The algorithm is simple: Check the requests in an arbitrary order, add a request to the schedule if it is compatible the current schedule. • Time complexity: linear to input size.
Reading • http://www.eecs.harvard.edu/~htk/publication/2000-mobi-karp-kung.pdf