A Novel Scheme for Address Assignment in Wireless Sensor Networks

Assigning network addresses to nodes in a wireless sensor network is a crucial task that has implications for the functionality, scalability, and performance of the network. Since sensor nodes generally have scarce resources, the address assignment scheme must be efficient in terms of communications and storage. Most addressing schemes reported in literature or employed in standard specifications have weak aspects. In this paper, a distributed addressing scheme has been proposed that first organizes the raw address space into a regular structure and then maps it into a logical tree structure that is subsequently used to assign addresses in a distributed but conflict-free manner. As an additional benefit, this approach allows underlying tree structure to be used for default routing mechanism in the network, thus, avoiding costly route discovery


I. INTRODUCTION
Wireless sensor networks (WSN) have recently emerged as an area of intense research activities in the academic and businesses communities alike.While these networks potentially have wide ranging applications and offer huge business opportunities, they currently pose some acute technical challenges too.These challenges are due to the fact that wireless sensor nodes are supposed to be extremely low cost and, thus, generally suffer from scarcity of resources such as the processing power, storage capacity, transmission range, and battery power.Consisting of wireless nodes having meager resources, a wireless sensor network may have to satisfy several critical functional and performance requirements.One of the crucial functional requirements is to start a network automatically after these nodes are deployed (e.g. by dropping from a plane or helicopter).Typically a node joins a wireless sensor network by obtaining a network address.So, the sensor nodes should be self-organizing to start up a network with minimal human intervention.Second, due to harsh environmental conditions in a deployment area, many nodes may be lost or displaced by wind, water, storm, or other natural phenomena over a period of time.Nodes may also go down due to their exhausted battery power.A sensor network is thus expected to recover from such losses with minimal delay or interruption in its normal operation.So, a sensor network should be self-healing.Third, due to the limited transmission range, sensor nodes can communicate with remote nodes only by sending data packets along multi-hop paths to the destination nodes.Sensor nodes are expected to efficiently discover routes to be used for sending sensor data to one or more aggregation nodes in a reliable and timely fashion.That requires a mechanism for automatic route discovery or making use of inherent routes, if available at all, in the underlying physical or logical topology of the network.The nodes are expected to be smart enough to deal with broken routes, for example, due to dysfunctional or displaced nodes.Apart from these issues, the sheer number of nodes in typical deployment scenarios makes an efficient and reliable functioning of the network a challenging task.Traditional techniques and algorithms for resources management and routing of data packets do not give much hope.Lack of resources and reduced transmission range combined with mobility of nodes require new innovative and distributed algorithms.
An address assignment scheme used in a wireless sensor network has serious implications for its performance, scalability, and functionality.Ideally the address assignment scheme used in a WSN should support and facilitate achieving the above mentioned functional requirements.In fact, one faces a trade-off between efficiency and reliability.A centralized mechanism for address assignment in a large multi-hop WSN offers conflict free addressing but is inherently inefficient and prone to single-point-of-failure problem.A distributed address assignment scheme, on the other hand, allows flexibility, scalability, and efficiency but may end up assigning same address to multiple nodes resulting in address conflict.There are two approaches to deal with these conflicts, namely (i) detection and resolution of address conflicts, and (ii) avoidance of these conflicts.Some networking protocols, such as ZigBee Pro [1], allows the joining devices to randomly pick a network address allowing the possibility of address conflict.In this approach, a mechanism for detecting and resolving address conflicts must be incorporated in the address assignment scheme.The second approach aims at avoiding address conflicts as in ZigBee [2].In this approach, the address assignment scheme must ensure that no pair of different wireless sensor nodes gets the same network address assigned to them.The ZigBee address assignment scheme is distributed in nature and easy to implement.But it restricts the number of children a router node can have, thus leaving some wireless sensor nodes unable to join the network.Many other address assignment schemes have been proposed in literature in recent years.A representative review of these approaches is presented in the next section.In this paper, a distributed address assignment scheme that avoids address conflicts and relaxes ZigBee like restrictions has been proposed.www.ijacsa.thesai.orgRest of the paper has been organized as follows.A brief review of related literature is presented in Section II.The impact of underlying address assignment mechanism on the routing of data packets in a network is discussed in Section III.A brief description of methodology used for structuring the address space is presented in Section IV.The proposed addressing scheme is presented in Section V followed by address transformation mechanism in Section VI.Section VII discuses approaches addressed from the transformed address structure.A brief technical discussion follows in Section VIII.Finally, we conclude in Section IX.

II. RELATED WORK
Numerous algorithms have been reported in literature for address assignment in wireless ad-hoc and sensor networks.Most of these algorithms, however, are not suitable for large multi-hop wireless sensor networks.The simple most approach would be assigning addresses randomly with a suitable resolution mechanism to deal with address conflicts [1] [3].But then resolution of address conflict requires a centralized mechanism, which can become a bottleneck or, even worse, a single point of failure for the whole network.Another approach starts by assigning unique IDs (such as MAC addresses) and organizing nodes in a tree structure that, in turn, is used to compute the size of the network [4].Then, network addresses are assigned by using the minimum number of bytes.For large wireless sensor networks such as used for environmental monitoring, this approach might not be feasible.Another approach to manage nodes in a network is to use the concept of clustering [5][6][7].These approaches aim at first organizing nodes into clusters and then assigning network addresses to those nodes.In another addressing scheme, each node gets a two-level address in which level 1 address (m-bit long) uniquely identifies a cluster or a path while the level 2 address (n-bit long) identifies a node within a cluster [5].ZigBee-like addressing scheme is used for assigning addresses at each level.It is, however, not clear how this scheme avoids the pitfalls that ZigBee addressing scheme faces because both configuration parameters (i.e.m and n) are statically defined before even launching the network.
Since wireless sensor networks will make a vital part of the Internet of Things (IoT) infrastructure, which will be predominantly consisting of IP based networks, it is logical to try assigning IP addresses to nodes in wireless sensor networks.A distributed dynamic host configuration protocol presented in [8] aims at assigning IP addresses to nodes in such networks.When a new node sends a join request, a potential parent node proposes an IP address to be assigned to a joining node by broadcasting it over the network and then waits for responses from other nodes.If no address conflict is reported, then the proposed IP address is assigned to the joining node or else process is repeated with another proposed IP address.Obviously this protocol might not be suitable for sizeable networks as network-wide broadcasting will result in heavy communications overhead in large networks.Other approaches to use the much trumpeted IPv6 addresses, as suggested in [9][10][11], pose too much overhead to be suitable for sensor nodes just because the size of IPv^ network addresses.
An address assignment scheme needs to be efficient in terms of communications and storage overhead.Centralized and random address assignment scheme are not suitable for large sensor networks because of their using the address space in its raw and unstructured form.A better approach is to organize the address space into a regular structure (such as a tree, etc.) and then assign addresses systematically from that structure.In ZigBee protocol, for example, address space is organized in a tree structure where the tree leaves represent the less capable and cheaper sensor nodes while the non-leaf nodes in the tree represent more powerful router-cum-sensor nodes.The hierarchical addressing scheme used in this protocol is configured by three parameters, denoted as C m , R m , and L m .Any non-leaf node (i.e. the coordinator or a router node) in ZigBee network can have C m child nodes of which R m nodes can be router child nodes (thus the number of end-device child nodes per router node is C m -R m ).The last parameter, L m , specifies the maximum depth (i.e.number of levels) of the address tree.Initially the coordinator has the whole address space at its disposal.Every router node subsequently joining the network gets a segment of address space that it can assign to its child nodes.The size of the assigned segments progressively reduces as the depth of the tree increases.The underlying tree structure, in fact, represents the logical topology of the network.Such a well-defined logical structure has several benefits.First, it is easy and efficient to organize the address space for its optimal utilization.Second, probably more crucial, the logical structure can be used to facilitate routing of data packets in the network, thus, possibly eliminating the need for explicit route discovery.Discovering a route in a WSN is a costly operation in terms of network traffic and battery power consumption.
Due to the restrictions in ZigBee address assignment scheme put on the number of child nodes that a router node can have and the depth of the logical tree result in an inherent issue of many nodes being unable to join the network regardless which values of configuration parameters, C m , R m , and L m , are used [12].These nodes are called orphan nodes.Authors in this paper have shown the orphanage problem to be NP-complete and suggested some heuristics to deal with it.Another approach to deal with orphanage problem is to allow router nodes to borrow blocks of address space from other nodes having unused addresses [13].Under the proposed protocol, all router nodes broadcast Available Address Count (AAC) in their beacon frames.The ACC from a router node specifies the number of unused address values available with that node.A node that has used all its addresses, can thus follow a borrowing mechanism to get additional addresses from other nodes.A joining node, however, can still become orphan if the potential parent node cannot borrow any addresses from its one-hop neighboring nodes.Also, the protocol results in increased network traffic.
Wireless sensor networks can assume a wide range of physical topology depending on various deployment scenarios and target applications.The network deployed by utility companies, for example, may consist of long but thin segments.Specifically, electric smart meters installed in houses along a given urban street make one long but a narrow segment.Similar scenarios are found in deployments along www.ijacsa.thesai.orgrailway tracks, rivers, and pipelines.This scenario does not match with the logical topology of ZigBee routing that assumes a rather balanced tree topology and thus restricts both the depth of the tree as well as the number of children per router node.A modified address assignment scheme, as proposed in [14], makes groups of nodes into clusters, each consisting of a line segment with two special nodes, a cluster head and a bridge node.The cluster head node, on one side, assigns addresses to nodes in its cluster and, on other hand, links to the bridge node of the parent cluster.Addresses (along with corresponding segments of address space) are manually assigned to cluster head nodes in the first phase of address assignment.The network addresses are divided into two components, namely the cluster ID and node ID.The network administrator manually calculates address blocks to be assigned to the cluster heads and assigns cluster ID to every node in every cluster.In the second phase, the cluster head nodes automatically assign node ID to every node in their respective clusters.In order to overcome the restricted depth of the address tree (imposed by ZigBee address assignment scheme), the proposed scheme allows the administrator to change related parameters, i.e. maximum depth of the address tree CL m and the maximum number of children per router node CC m .Our proposed address assignment scheme in this paper allows the network address be systematically divided into greater number of components to provide greater flexibility for network expansion without a need for manual interference.
Another approach, as suggested in [15] and named as DiscoProto, first discovers the topology of the network, determines the segment size of the address space each node needs (depending how many descendant nodes it has), and then allocates the addresses to nodes accordingly.The topology discovery process consists of several states aimed at establishing the associations (parent-child relationship) among all nodes in the network.Once that is done, every node knows the size of the sub-tree rooted at it (i.e. the total number of its descendant nodes).That information is then used during the address assignment process.The proposed scheme apparently has several week aspects.For example, one needs address for every node in the first place to define the topology of the network.Also, topology is normally a dynamic attribute of a WSN that keeps changing over time.An improved version of DiscoProto, called Dynamic DiscoProto, allows new nodes to join the network after it has been formed and functioning [16].After receiving a joining request, the potential parent node checks if it has sufficiently large block of free address space for assigning to the joining node.If not, it then broadcasts an AddressRequest message and borrows a suitably large address block from one of its neighbors.It then accepts the new node as its child and assigned the address block to it.Obviously, the new protocol has two unwanted side effects on the network.First, underlying topology cannot be used as a default routing tree because addresses are no more assigned in a regular manner as in the original ZigBee addressing scheme.The second, the communication overhead might be significantly high because of the flooding of messages.A novel concept of organizing the address space in an ndimensional hypercube, as shown in Fig. 1, was introduced in [17].Every point in that structure, consisting of n coordinates, represents an address so that each address value is an n-tuple.As the network grows, addresses along an appropriate dimension can be assigned to the joining sensor nodes.But how exactly the addresses are assigned to nodes such that no address conflict occurs needs a specific mechanism that is defined in this paper.
In this paper, a general framework is proposed for organizing the address space into a multi-dimensional hypercube structure.A mapping scheme is then used to transform this structured address space into a tree structure.Segments of tree-structured address space can then be assigned to joining nodes.Because the scheme is based on a logical tree structure, it ensures that no address conflicts occur because each router node knows the sub-space that it has been assigned.The sub-tree rooted at a node's own network address actually represents the address segment allocated to that node to be used by it and all its descendant nodes.

III. ADDRESSING AND ROUTING
It is interesting to observe a relationship in addressing scheme and routing of frames in a network.If the addresses are assigned by a central node or if, in a distributed addressing scheme, each node randomly picks its network address, there is no apparent correlation between the relative location of a node in the network to its network address.Such address assignment schemes are called non-hierarchical addressing schemes.In hierarchical and distributed addressing scheme, a node gets its network address from one of the nodes in its own proximity.So, there is an inherent relationship between the nodes and their network addresses that can be exploited while routing frames between source and destination nodes.For example, if an addressing scheme produces a logical tree structure by virtue of the way it assigns addresses to nodes, each node, while forwarding a frame to a destination node, can determine www.ijacsa.thesai.orgif the destination node lies in the sub-tree rooted at itself.If so, it can determine the address of its child node as the next hop node on the path to the destination node.Otherwise, it forwards the frame to its parent node because the route to the destination node must pass through one of the ancestor nodes.If an addressing scheme does not facilitate routing of frames, a source node either must discover a route from itself to the destination node or it should deliver the data frame to destination node by making use of network-wide broadcasts.Both of these operations are extremely expensive in terms of buffering capacity, battery power, and transmission volume.So, hierarchical addressing schemes may be very well suited to relatively stable wireless sensor networks where the nodes do not normally move away from parent nodes and the underlying tree structure remains mostly undamaged.
As mentioned before, our address assignment scheme allows the nodes to use tree routing while with communicating remote nodes.

IV. METHODOLOGY
It is important to note that, as new nodes keep joining the network and the network size grows, the physical topology of the network might attain a very different shape than its underlying logical structure.That has crucial implications for address assignment scheme.Specifically, as in ZigBee, it is possible that new nodes might not be able to join the network because of unavailability of address space in one part of the network while plenty of unused addresses might be available in another part.A more flexible and robust logical structure is thus required for dealing with that issue.Specifically, a mechanism that allocates segments of address space on demand too needs to be incorporated in the address assignment scheme.
The scalability, robustness, and flexibility of the proposed address assignment scheme follows the fact that the underlying n-dimensional hypercube structure can grow along any of its n dimensions.The flexibility of the structure accommodates the non-uniform growth of the physical topology of the network.The proposed addressing scheme has a novelty to allow the corresponding addressing tree to grow in any dimension until it hits the boundary.It also relaxes the static nature of ZigBee addressing scheme where the tree can grow up to 15 levels.

V. PROPOSED ADDRESSING SCHEME
In this section, a general framework of address assignment in wireless sensor networks is described that is followed by the proposed address assignment scheme in the next section.

A. General Framework
For the sake of simplicity, let us assume that address values consist of 13 bits resulting in an address space of size 2 13 (i.e.8K) addresses.It is worth mentioning that there are at least two types of nodes in a sensor network, i.e. router nodes and nonrouter nodes.This latter type of nodes is also called end-device nodes in ZigBee specification.Even though a router node may have its own embedded sensors (and it may be acquiring and forwarding its own sensor data), the main function of router nodes is to forward data packets to appropriate next hop node along a route to the destination node.Since routing is generally a costly operation, routing nodes might be allowed to have more resources (such as buffering capacity, battery and processing power, etc.) Every end-device node, on the other hand, has embedded sensors.It simply gets data from these embedded sensors according to a pre-specified duty cycle and then forwards this data to its parent node.Segments of address space, in our scheme, can be assigned only to router nodes in a wireless sensor network.A router node can have multiple enddevices as its child nodes.The maximum number of such child nodes E m , which a router node can have, is normally specified by a configuration parameter and, thus, is pre-fixed.So, given the value of E m , we can append an additional log(E m ) bits next to least significant bit of an address value in order to accommodate the identification number (i.e. a serial number) for the child end-device nodes.That allows all nodes, routers as well as end-devices, in the network to be uniquely addressable.Please note that a router node can have other router nodes as its child nodes in addition to these end-device child nodes.So, total number of child nodes that a router node can have is C m = E m + R m , where R m denotes the maximum number of router child nodes.Also, C m and R m , generally specified as configuration parameters, could be different for every wireless sensor network.So, for example, if 3 bits are allocated for providing addresses to end-devices, it allows each router node to have up to seven child end-devices.The address values in data packets will then occupy 16 bits.It is worth mentioning that the network address of any router node will always have zeros for the three least significant bits.Since an end-device can only communicate with its parent node, any data frame destined to an end-device is always delivered via its parent node.Since end-devices are supposed to operate according a pre-specified duty-cycle, an end-device might be sleeping when a data packet arrives for it.The parent node stores such packets in buffers until the destination end-device awakes and request for any data packets stored for it.This allows for the end-device nodes to be low cost while allowing these nodes to be addressable in the network.It is worth mentioning that, in the following description, we consider only the router part of the network address, i.e. we ignore the least significant zero bits that make up the end-device portion of the network address.
Our proposed scheme is described in the following:  Assume address values are b bits long, so the size of address space is 2 b www.ijacsa.thesai.org Address space is organized along an n-dimensional hypercube (n being a configuration input parameter) -The maximum number of router child nodes that a router node can have is n.-As shown in Fig. 2, each network address is an (n+1)-tuple, i.e. (a 0 , a 1 , …, a n-1, a n ), a i being the i th address component consisting of b i bits.Sum of all b i bits equals b.Last address component, a n , is used for enumerating end-devices.
 The value of a n in addresses assigned to router or coordinator devices is always zero. The value of a n in addresses assigned to end-devices is always non-zero. Every router/coordinator device can have up to 2 bn end-devices as its children (b n being the number of bits in the last address component a n ). Maximum size of address space along i th dimension is determined by the number of bits b n allocated for i th address component a i .
 A coordinator device starts network by assuming the address (0, 0, …, 0).It accepts joining router (and possibly end-device) nodes and becomes the parent.The router nodes can later start accepting join requests from new router as well as end-device nodes.
 A parent node assigns a contiguous segment of address space to each child router node.
-Example: Assuming n=2, a node having the address (x,y) can only assign addresses (x+1,y) and/or (x,y+1). Network grows along any dimension as suited to physical location of nodes.VI.ADDRESS TRANSFORMATION Now that the address space has been organized into regular multi-dimensional structure, we are ready to map it in another structure, i.e. a tree, which is well suited for wireless sensor networks due to its logical properties as discussed in previous sections.But let us first define a few notations that will be used during the mapping process.Let G(a,b) denotes addressing sub-tree for two dimensional address space F(X,Y) rooted at address (a,b), 2 |X| > a  0 and 2 |Y| > b  0. It is worth mentioning that this notation can be generalized to any n-dimensional space, n  3. Now let us define G n m (a 1 ,a 2 ,…,a n ) being the addressing sub-tree rooted at address (a 1 ,a 2 ,…,a n ) such that the tree expands only along the first m dimensions, m ≤ n.The remaining (n-m) address components are treated as constants.Also note that G n n (a 1 ,a 2 ,…,a n ) is same as G(a 1 ,a 2 ,…,a n ).
 n must be greater than 2.
 A node can have k child nodes, where k-1 is number of leading address components having a value of zero.
 The node (0, 0, 0,…,0) can also have n child nodes  A node cannot assign multiple addresses along a single dimension.
 A node that can have k ≤ n child nodes has all its children along lower k dimensions (one along each dimension.)  Max number of addresses available along a dimension depends on the number of bits allocated for corresponding address component.
 There is no restriction on the diameter of a PAN within its allocated address space.
As an example, a three dimensional hypercube address space is mapped into a tree structure in Fig. 3. www.ijacsa.thesai.orgVII.ADDRESS ASSIGNMENT Two approaches can now be followed for assigning network addresses from the structured address space.These approaches might be useful in different scenarios.

A. First Approach -Cluster-based Addressing
The first approach is suitable for the scenarios where a deployed wireless sensor network consists of many clusters, for example, covering different floors of a building, street in an urban area, or different geographic regions in the deployment area.Under such deployments, generally one node in every cluster is designated as the cluster-head, which acts as a default coordinator for wireless sensor nodes in that cluster.The cluster-head in every cluster can be assigned a suitably large block of address space that, in turn, can hierarchically be used for address assignment to nodes in that cluster.Specifically, if the address space has been organized in n-dimensional structure, every cluster-head node can be assigned an (n-1)dimensional address space.As an example, consider Fig. 1 that shows a 3-dimensional address space.Under the proposed approach, the joining cluster-head nodes can successively be assigned addresses (0, 0, 1), (0, 0, 2), and so on.In effect the k th cluster-head node will be assigned a rectangular segment (x, y, k), x and y being zero in this case, of the address space that will be used by it for allocating addresses to child nodes in that cluster.

B. Second Approach -Dynamic Address Assignment
This approach is suitable for non-cluster based deployments of wireless sensor networks.It allows router nodes to get initial address segments assigned to them.If the assigned address segment to a router node later gets exhausted, it can request for additional addresses.In this approach, the address space is initially partitioned into two portions, i.e. inner and outer portions.The inner portion, called active address space (AAS), is defined by reducing the size of actual address space along all or some of dimensions to, for example, one half.The active portion of the address space is used for address assignment to the joining router nodes.The remaining portion of the original address space remains inactive and is reserved for allocation on demand in future when and where needed.
So, for example, considering n=3, let the address space has been organized as a three dimensional structure having a size of 2 8 x 2 8 x 2 4 .The size of the address space is thus 2 20 (i.e.1M) values.Also, note that every address value has three address components.Now suppose, the network is initially launched with only an active address space 2 7 x 2 7 x 2 3 (i.e.128K addresses).Later, if a node gets its allocated address space exhausted and needs more addresses, it can increase the dimension of the active address space along one of the three dimensions as appropriate to its current allocated address space by one bit.Suppose it increases the first component by 1 bit, so, the size of the active address space along that dimension becomes double (i.e. 2 9 values) in size and the new size of active address space becomes 2 8 x 2 7 x 2 3 (i.e.256K) addresses.Now that router node has to inform all other nodes in the network about the new size of active address space.That could easily be done by sending a single network wide broadcast frame.In this way, the addressing scheme becomes very robust and adaptive to physical topology of network.It may be noticed that a higher value of n results in increased flexiblity.An example of on-demand assignment of segments of address space is shown in Fig. 4.

C. Selecting Dimension for Extension
It is interesting to note that some nodes will have a choice of dimension that they can choose for extending the active address space.In such a case, a simple approach may be to select a dimension at random.Another approach may be to select the lowest available dimension to be extended.The resulting tree structure in such a system will be significantly deeper than being wider.Depending on target application, a better approach might be using the highest available dimension for extending the active address space.That will result in a more balanced tree structure around the coordinator.The decision on choosing a dimension, however, can be made based on a particular application system or deployment scenario when a particular tree shape may be more desirable than others.

D. Overhead Cost
Any addressing scheme generally incurs three types of overhead costs while determining and assigning addresses to router nodes.These include communications cost, storage cost, and processing cost.If a central node assigns addresses to every joining node, obviously communications cost may be significantly high due to the fact that the central node may be several hops away from most of the joining nodes.On the other hand, if nodes need to maintain an addressing table in a distributed addressing scheme, the storage cost per node may be significant.The processing cost is associated to the fact that nodes may have to update internal state including buffered data frames as a result of change in the address format.On-Demand Assignment of Address Segments to Wireless Router Nodes in a WSN.www.ijacsa.thesai.orgOur proposed address assignment scheme is a distributed scheme with minimal communications cost due to the fact that only a pair of frames is generally communicated between the joining child node and its parent node while address is being assigned to the former.However, if the parent node is out of free addresses and needs to extend the address space, it sends a network wide broadcast frame as described in second approach above.That is the only significant communications cost but that cost can be reduced by carefully choosing the value of n (that is number of dimensions of the hypercube), the size of each address component, and the initial size of active address space.The storage cost of the proposed scheme is negligible for each node.The processing cost is zero in the first approach as suggested above but each node has some processing cost in the second approach.In fact, this cost may not be significant due to the fact that sensor nodes generally have only limited RAM thus allowing them to have only a small internal state (tables, variable, etc.) and very limited buffering capacity.Due to the lower total cost and flexibility, the second approach becomes a very viable, robust, and efficient address assignment scheme for wireless sensor network where nodes have very limited network resources such as battery power, storage, transmission range, and processing power.

VIII. DISCUSSION
The scalability, robustness, and flexibility of the proposed address assignment scheme follows the fact that the underlying n-dimensional hypercube structure can grow along any of its n dimensions.As opposed the ZigBee address assignment scheme, our proposed scheme can easily accommodate the non-uniform growth of the physical topology of the network.Moreover, the proposed scheme can dynamically assign additional blocks of address space on demand to requesting router nodes.In addition, it relaxes the static nature of ZigBee addressing scheme where the tree can grow up to only 15 levels.
As opposed to other reported mechanism, our proposed scheme needs no manual intervention from the network administrator while assigning addresses in a distributed fashion in linear wireless sensor networks.It automatically adopts a logical topology that is suitable for the underlying physical topology of the network.The regular logical network topology (i.e. a tree structure) prevents address conflicts.The scheme supports the desired functional requirements as mentioned in Section I.

IX. CONCLUSIONS
In this paper, we have presented a distributed hierarchical address assignment scheme for wireless sensor networks and wireless ad-hoc networks.In the proposed scheme, the address space is organized into an n-dimensional hyper-cube, which is then transformed into a tree structure.Each node in the network is allocated a sub-space from the address space for subsequent assignment to its child nodes.A crucial benefit of such an addressing scheme is that it allows the nodes to use the logical structure tree routing to avoid route discovery mechanism that typically involves network flooding.We plan to use the proposed addressing scheme on real wireless sensor networks in order to analyze its performance in realistic functional environment.

Fig. 3 .
Fig. 3. Mapping n-Dimensional Hypercube Address Space into a Tree Structure.

Fig. 4 .
Fig. 4. On-Demand Assignment of Address Segments to Wireless Router Nodes in a WSN.