1.32k likes | 1.34k Views
Hierarchical Routing. Via Cluster-Based Control Structures Presented by Raquel Harris 9-04-02. Contents. Introduction Cluster Based Control Structures Transmission Management Link-Cluster Architecture Backbone Formation Clustering Route Efficiency Clustering. Introduction.
E N D
Hierarchical Routing Via Cluster-Based Control Structures Presented by Raquel Harris 9-04-02
Contents • Introduction • Cluster Based Control Structures • Transmission Management • Link-Cluster Architecture • Backbone Formation Clustering • Route Efficiency Clustering
Introduction • Mobile Wireless Networks are dynamic • State Changes unpredictable • Control functions that manage the network’s performance have to meet these conflicting goals • Respond rapidly and correctly • Minimize consumption of network’s transmission, processing, storage
Introduction • Control Functions • Performed with respect to a control structure - superimposed on the physical network which consists of a set of controllers • For fixed networks the setup of the control structure is an administrative task that is part of the network design process • For mobile wireless networks, a self-organizing control structure is required
Introduction • Selection of a network control structure and algorithm is based on, • Network size • Control functions required • Frequency and magnitude of network state changes • QOS required
Cluster-Based Control Structures • Cluster-based control structures • More efficient use of resources in controlling dynamic networks • Physical network is encapsulated by a virtual network of interconnected clusters • Clusters contain one or more controllers which make control decisions and may distribute cluster state information to outside clusters
Cluster-Based Control Structures • Control Structures attempt to be more efficient by, • Managing transmission to reduce channel contention • Forming routing backbones to reduce network diameter • Abstracting network state information to reduce its quantity and variability
Transmission Management • Transmission interference • Thesis: Reduce interference by separation of transmission times, space, and frequency or spreading code • Thesis: Reduction by coordination of separation
Link-Cluster Architecture • Reduces interference in a multiple-access broadcast environment • Forms distinct clusters for which transmission are scheduled in a contention-free manner • Spread-spectrum multiple access can be used with different codes in each cluster • Automatic organization • Nodes autonomously organize into interconnected clusters • Union of members is the entire network of nodes
Link-Cluster Architecture • Structure • Clusterhead • Each cluster has one or more clusterheads • Schedules transmissions • Allocates resources within the cluster • Gateway • Each cluster has one or more gateways • Attempt to have one per pair • Connect adjacent clusters • Direct connection – member of both clusters • In-direct connection – connected to an adjacent gateway
Link-Cluster Architecture • Ordinary Nodes • Each cluster has zero or more ordinary nodes • Neither clusterheads or gateways • Low-delay paths between cluster members • All members within one hop of the clusterhead (within two hops of each other) • Therefore members of different clusters are at least 2 hops away
Link-Cluster Architecture • Establishing a link-clustered Control Structure involves, • Discovering neighbors with a bi-directional link by broadcasting • Electing clusterheads and forming clusters • Agreeing on gateways between clusters
Link-Cluster Architecture • Clusterhead Election • Identifier-based or Connectivity-based Clustering • Centralized implementation • Node with the lowest or highest numbered identifier or largest number of neighbors becomes the clusterhead • Distributed implementation • Node with lowest or highest numbered identifier elects itself or it’s neighbor with the lowest or highest id unless that neighbor has relinquished clusterhead status • Node with the highest connectivity of all uncovered neighbors becomes clusterhead • Ties are broken by identifier number
Link-Cluster Architecture • Gateway Election • Any node with links to more than one cluster is a candidate gateway • If a node has two clusterheads as neighbors, it is a candidate gateway connecting two overlapping clusters • If a node has one clusterhead neighbor and can reach a second clusterhead in two hops, it is a candidate linked to a candidate gateway in another cluster
Link-Cluster Architecture • Overlapping Clusters • Gateway selected is the one with the highest or lowest id • Disjoint Clusters • Linked pair with one member having the highest or lowest id among all candidates connecting the two clusters • Unambiguous selection may require advertisement of node ids beyond one-hop neighbors
Link-Cluster Architecture • Node Mobility • Clusters must be updated accordingly to ensure proper scheduling of transmissions • All nodes must be capable of executing clusterhead and gateway functions if the network is to be maximally available • With connectivity-based clustering, clusterhead status has potential to change more frequently than identifier-based clustering • Nodes may move out of range of neighbors, losing it’s status as the most connected node
Link-Cluster Architecture • Least Cluster Change Algorithm • Reduces the number of changes in clusterhead status required after node movement • Clusterhead status change only if two clusterheads move within range of each other • One must relinquish the role • Or, if a non-clusterhead node moves out of range of any other node • Becomes clusterhead of its own cluster
Link-Cluster Architecture • Routing Backbone • Traffic is constrained to traverse clusterheads • Can reduce throughput and robustness of network • Congestion • Single point of failure • Many algorithms do not use clusterheads as routing control structure of the network
Backbone Formation Clustering • Routing Backbone • Reduction of route length is more important for multi-hop wireless networks than wireline networks • Larger delays generally experienced at each hop • Can be formed by expanding the transmission range of some or all nodes • Increasing transmission power may increase interference
Backbone Formation Clustering • Near-Term Digital Radio Network (NTDR) • Designed for mobile tactical communications • Frequent node movement and outages • Each cluster has a clusterhead that is linked to form the routing backbone • Nodes are within 1 hop of clusterhead • Intercluster communication is restricted to clusterheads only • Clusters are gateways • No multihop communications • One hop neighbors can communicate directly • Others intracluster communications must traverse the clusterhead
Backbone Formation Clustering • Each node keeps track of the bi-directionally linked neighbors by periodically broadcasting beacons. • May become clusterhead if needed • <MAC address><partition id><clusterhead org><cluster members><link quality from each member><clusterhead transmit power level> • Used to decide whether to become affiliated with the clusterhead • Each cluster communicates on different frequencies • Isolates intercluster and intracluster communications
Backbone Formation Clustering • A low transmission range is used for non-clusterhead members • Allow reuse of frequencies for distant clusters • Reduce interference • Clusterhead Election • Beacon-based only • No clusterheads detected in its vicinity • Can heal a network partition
Backbone Formation Clustering • Must limit the number of nodes simultaneously participating in clusterhead election • Each node waits a short random time interval before retesting the condition and becoming clusterhead if necessary • Each new clusterhead issues beacons proclaiming its status immediately • Elimination • Node can relinquish role as clusterhead if, • It will not partition the network in doing so • All cluster members can join other clusters • Checks staggered randomly among nodes over time to limit the number of simultaneous relinquishes
Backbone Formation Clustering • Cluster Affiliation • Preferred clusters • Same organization affiliation • Signal from the clusterhead is transmitted at low power but received at high strength • Cluster size is relatively small • Affiliation can be refused by the clusterhead • Updated cluster membership is distributed to all clusterheads after affiliation has taken place • Notifies previous clusterhead of new affiliation
Backbone Formation Clustering • Alternate affiliation is sought if, • Clusterhead relinquishes role • Clusterhead’s beacons no longer list member • Clusterhead’s beacons indicate the quality of the link to the clusterhead has become unacceptably poor • Received signal strength from the clusterhead is unacceptably low • Routing • Clusterheads share responsibility for maintaining the routing backbone • Monitor and exchange information about changes in the backbone
Backbone Formation Clustering • Each generates membership information pertaining to its cluster and link-state information (resistance metric included) pertaining to its links to neighboring clusterheads • Floods information over the backbone • Computes least-resistance routes based on this information (using Dijkstra’s SPF) – maintains next hop to use for each destination • Must notify other clusterheads of state change affecting routing in the backbone once detected • May result in unacceptable network performance due to saturation of update messages in a highly mobile network
Backbone Formation Clustering • Virtual Subnet Architecture • Several disjoint routing backbones • Provides fault tolerant connectivity and load balancing in multihop mobile wireless networks • Structure • Initially, the network is partitioned into physical subnets (disjoint clusters) • Virtual subnets are formed by clustering the different physical subnets • Assumption: transmission power is adjustable to retain connectivity • Neighboring subnets are assigned differing frequencies to reduce interference
Backbone Formation Clustering • Subnet clusters and frequencies can be computed offline or computed by distributed procedures • A Maximum number of physical, P, and virtual, Q, subnets is predefined for the network. • Nodes are members of only one physical subnet and zero or more virtual subnets • Ideally one subnet but may belong to more than one if it communicates frequently with subnet members • Address uniquely identifies both physical and virtual affiliations (multiple address for more than one virtual subnet) • Prefix – physical subnet • Suffix – virtual subnet
Backbone Formation Clustering • Mobility • If a node moves out of range of it’s subnet • Needs to join another physical subnet, which typically leads to a new virtual subnet affiliation • Join a subnet whose Q quota has not been filled • Otherwise, joins physical subnet as a guest • New address is announced to all members of the physical and virtual subnets • Guest members do not distribute its address to any virtual subnet • Address Discovery • Source distributes a query within its physical subnet • Address is returned if the destination is affiliated with a virtual subnet of one of the source’s physical subnet member’s
Backbone Formation Clustering • A query is distributed within the virtual subnet if the destination is not found • Address is returned if destination is found in a physical subnet of one of the source’s affiliated virtual subnets • This feature will find guest destinations • Routing • Multiple paths are available to nodes within the virtual subnet architecture • Increases fault tolerance • Direct Routing and long path routing exploits this feature
Backbone Formation Clustering • Direct Routing • Routing by source and destination address • Next hop selection • Source seeks node, x, that is member of source’s physical subnet and destination’s virtual subnet and forwards packet to it. • If destination is a guest, no x is found and the source uses its virtual subnet to forward the packet • If the network is not partitioned and each physical subnet contains a member of each virtual subnet direct routing works very well • Partitions and reconfiguration of the network is highly likely in highly mobile networks however.
Backbone Formation Clustering • Long-Path Routing • Routes are randomly distributed to balance traffic load and assist the network in accommodating partitions • At most Q+P-1 different routes • If subnets are partitioned, intermediate nodes will have to make random selections to route around partitions • Source randomly selects a virtual subnet (at most Q) • If the source is not a member of the virtual subnet selected, the packet is forwarded via node u that is a member of both the virtual subnet and the source’s physical subnet • U forwards the packet through the virtual subnet to a node v located in the destination’s physical subnet • V forwards the packet to the destination node
Backbone Formation Clustering • If the source is a member of the selected virtual subnet • Select at random one of the P-1 (at most) physical subnets within its virtual subnet (VS) and distinct from its own (PS) • Forward packet via PS to a node, w, in both the source’s VS and the PS • Node w forwards the packet within the PS to a node z in the destination’s VS and finally to the destination
Routing Efficiency Clustering • In order to achieve the required network performance goals, • Accurate network state information is required by control functions • Controllers must detect network state changes • Collection and distribution of network state is required • Mobile networks have a higher rate network state changes than fixed networks • Mobility affect interconnectivity and link quality • Wireless networks add the crucial affect of limited and volatile resources
Routing Efficiency Clustering • Updates of current state information may consume large amounts of resources • Transmission, storage and processing • In highly dynamic networks, updates may lag behind the current state • Sensitivity to network changes is a function of the particular control function, resources, volatility of the network state, and magnitude of state change consequences
Routing Efficiency Clustering • Hierarchical Routing • Structure • Network of N nodes is organized into a m-level hierarchy of nested clusters • All level-i clusters are disjoint, 0 i m • A node is a level-0 cluster grouped into level-1 clusters, etc. • A node’s address are relative to its position in the hierarchy • A concatenation of the labels of the level (m-1) through level-0 clusters • Label of a single level-m cluster is omitted from a node’s address • Node z of figure 4.6 has the address, x.y.z with u as the implicit prefix
Routing Efficiency Clustering • Cluster Overlap • All the routing schemes presented (with the exclusion of 1) have disjoint clusters at a particular level • Not a requirement • Cluster overlap can be desirable • Node remains reachable after moving out of a cluster • Route length can be reduced • Multiple clustering hierarchies • If 2 level 1 clusters a1 and b1 overlap, each of their level-I ancestral clusters aiand bi must also overlap and a1 b1 ai bifor i 1
Routing Efficiency Clustering • Overlap can be expensive • The number of node addressing information must be distributed and maintained in the network is proportional to the number of addresses per node • Route selection is complicated by the need to determine which cluster to utilize to maximize reachability during movement • Cluster formation and maintenance can be complicated by constraints on the amount of overlapped permitted
Routing Efficiency Clustering • Granularity of network state • Abstraction of network state can reduce the amount of resources required to maintain the network • Abstraction can also result in loss of information and reduce accuracy of control decisions • Routing Schemes • Cluster representative – a network controller that generates and distributes routing information for a particular cluster • Hierarchical routing schemes attempt to prevent a single point of failure w.r.t cluster information • Multiple nodes are capable of quickly assuming the role
Routing Efficiency Clustering • Quasi-hierarchical routing schemes • Most schemes fall into this category • Most are derivatives of the distance-vector routing approach • Each node learns the next node to use in order to reach each level-i cluster within its level-(i + 1) cluster • Strict-hierarchical routing schemes • Each node learns the next level-i cluster to use in order to reach each level-i cluster within its level-(i + 1) cluster and • Each node learns which level-i cluster lies on the boundary of its level-(i + 1) cluster and which are directly linked
Route Efficiency Clustering • Example: ck is the lowest-level cluster with the source and destination nodes • K = 3 • Quasi-hierarchical routing: s0 routes the packet directly to the boundary of dk-1. The packet is then routed to dk-2 boundary and so on. • Strict-hierarchical routing: S0 routes the packet directly to the boundary of sk-1 one level at a time. The packet is then routed through level-(k-2) clusters in dk-1to reach the boundary of dk-2 and so on.
Route Efficiency Clustering • Quasi-hierarchical Routing • Objective of distance vector routing is to determine the next hop on the minimum-cost route from a node to each level-i cluster within the node’s level(i +1) cluster, for 0 i m • A cluster representative advertises to nodes outside of its cluster an abstracted cost for reaching destinations within the cluster • Closest entry routing : cost = 0 • Overall best routing : cost = average of all costs from rep to all nodes in cluster
Route Efficiency Clustering • If x and y are direct linked neighbors belonging to the same level-(j+1) cluster but different level j clusters • when x receives a new cost for level-i cluster, c, contained in x’s level-(i + 1) cluster, from neighbor z, for any 0 i m, x decides if it needs to update its forwarding information for c and if it needs to distribute a new cost advertisement for c to its neighbors • If c is not an ancestral cluster of x, • If Wc-stored > Wc-z + Wx-z x updates its forwarding info for c and replaces the next hop node with z • The cost advertisement is updated and sent to neighbors x determines require it