Continuous Neighbor Discovery in Asynchronous Senor Networks(debu's final year project)

March 28, 2018 | Author: Debabrata Halder | Category: I Pv6, Computer Network, Asynchronous Transfer Mode, Network Topology, Router (Computing)
Share Embed Donate


Short Description

Download Continuous Neighbor Discovery in Asynchronous Senor Networks(debu's final year project)...

Description

Continuous Neighbor Discovery in Asynchronous Senor Network

CHAPTER 1

INTRODUCTION The sensor nodes can sense various events very sensitively. The sensor network contains very large number of these sensor nodes. These sensor nodes may be connected to each other inside a network by any mesh structure. Some of the sensor nodes act as routers and gateways to pass the message from one particular sensor node to another sensor node. In order to pass the data there will be high consumption of bandwidth, energy and even power. Therefore we design this project in such a way that we can minimize these three critical issues. These issues can be overcome by alternatively putting the sensor nodes in active state and passive state. In this paper the sensor nodes are randomly distributed over a particular area and each sensor nodes have certain transmission area to cover. The first step is to detect the immediate neighbors. The sensor nodes should have direct wireless communication between them. Then the sensor nodes should establish the particular roots through which they can communicate with the other sensor nodes via any router or gateway in between. In order to communicate we need to first create communication between two sensor nodes. The sensor nodes will be awake for a very short period of time. Therefore there can be heavy traffic in the channel or in the particular transmission area. This paper presents a special neighbor discovery scheme that can be used to reduce the traffic that is being caused by the sensor nodes. Another important issue in the sensor network is that the sensor nodes despite of being static can change due to the following situation. 1)

Loss of local synchronization due to accumulated clock drifts.

2) Disruption of wireless connectivity between adjacent nodes by a temporary event, such as a passing car or animal, a dust storm, rain or fog. When these events are over, the hidden nodes must be rediscovered. 3) The ongoing addition of new nodes, in some networks to compensate for nodes which have ceased to function because their energy has been exhausted. 4) The increase in transmission power of some nodes, in response to certain events, such as detection of emergent situations. After resolving the four issues the sensor nodes can be there in two states. One is the Init state and the second is the normal state. Now in this discussion a main idea is to discover the links during the normal operation, and this is referred to as Continuous Neighbor Discovery. Now we have to discuss about how the nodes are being discovered by Continuous Neighbor Discovery algorithm. At first when the sensor nodes is in Init state, it remains Dept of CSE, MVJCE

Page 1

Continuous Neighbor Discovery in Asynchronous Senor Network active for a very short period of time let’s say from T1 second to T2 second. Now for this particular period of time this sensor node will search for any other sensor node which is active in between that specific time period. If any sensor node is active at that period, the first sensor node repeatedly transmits HELLO packets to the next active sensor node. The other sensor node replies back by sending the ACK packet to the previous sensor nodes and therefore the two way communication between the sensor nodes is being established.

Fig1.1.the transmission of hello messages in initial and normal states

The sensor nodes have to be detected by the other nodes by using the joint task of all the nodes. If there is a sensor node a and a sensor node c, then the neighbors of c can be detected by b with the help of a.

Dept of CSE, MVJCE

Page 2

Continuous Neighbor Discovery in Asynchronous Senor Network

Fig.1.2. Continuous neighbour discovery vs. initial neighbour in sensor networks

1.1 Related work In a Wi-Fi network operating in centralized mode, a special node, called an access point, coordinates access to the shared medium. Messages are transmitted only to or from the access point. Therefore, neighbor discovery is the process of having a new node detected by the base station. Since energy consumption is not a concern for the base station, discovering new nodes is rather easy. The base station periodically broadcasts a special HELLO message1. A regular node that hears this message can initiate a registration process. The regular node can switch frequencies/channels in order to find the best HELLO message for its needs. Which message is the best might depend on the identity of the broadcasting base station, on security considerations, or on PHY layer quality (signal-to-noise ratio). Problems related to possible collisions of registration messages in such a network are addressed in [4]. Other works try to minimize neighbor discovery time by optimizing the broadcast rate of the HELLO messages [1], [5], [6], [7], [8]. The main differences between neighbor discovery in Wi-Fi and in mesh sensor networks are that neighbor discovery in the former is performed only by the central node, for which energy consumption is not a concern. In addition, the hidden nodes are assumed to be able to hear the HELLO messages broadcast by the central node. In contrast, neighbor discovery in sensor networks is performed by every node, and hidden nodes cannot hear the HELLO messages when they sleep. In mobile ad-hoc networks (manets), nodes usually do not switch to a special sleep state. Therefore, two neighboring nodes can send messages to each other whenever their physical distance allows communication. AODV [9] is a typical routing protocol for manets. In AODV, when a node wishes to send a message to another node, it broadcasts a special RREQ (route request) message. This message is then broadcast by every node that hears it for the first time. The Dept of CSE, MVJCE

Page 3

Continuous Neighbor Discovery in Asynchronous Senor Network same message is used for connectivity management, as part of an established route maintenance procedure, aside from which there is no special neighbor discovery protocol. Minimizing energy consumption is an important target design in Bluetooth [10]. As in Wi-Fi, the process of neighbor discovery in Bluetooth is also asymmetric. A node that wants to be discovered switches to an inquiry scan mode, whereas a node that wants to discover its neighbors enters the inquiry mode. In the inquiry scan mode, the node listens for a certain period on each of the 32 frequencies dedicated to neighbor discovery, while the discovering node passes through these frequencies one by one and broadcasts HELLO in each of them. This process is considered to be energy consuming and slow. A symmetric neighbor discovery scheme for Bluetooth is proposed in [11]. The idea is to allow each node to switch between the inquiry scan mode and the inquiry mode. The 802.15.4 standard [12] proposes a rather simple scheme for neighbor discovery. It assumes that every coordinator node issues one special ―beacon‖ message per frame, and a newly deployed node has only to scan the available frequencies for such a message. However, the standard also supports a beaconless mode of operation. Under this mode, a newly deployed node should transmit a beacon request on each available channel. A network coordinator that hears such a request should immediately answer with a beacon of its own. However, this scheme does not supply any bound on the hidden neighbor discovery time. Neighbor discovery in wireless sensor networks is addressed in [2]. The authors propose a policy for determining the transmission power of every node, in order to guarantee that each node detects at least one of its neighbors using as little power as possible. In [1], the authors study the problem of neighbor discovery in static wireless ad hoc networks with directional antennas. At each time slot, a sensor either transmits HELLO messages in a random direction, or listens for HELLO messages from other nodes. The goal is to determine the optimal rate of trans- mission and reception slots, and the pattern of transmission directions. In [6], neighbor discovery is studied for general ad-hoc wireless networks. The authors propose a random HELLO protocol, inspired by ALOHA. Each node can be in one of two states: listening or talking. A node decides randomly when to initiate the transmission of a HELLO message. If its message does not collide with another HELLO, the node is considered to be discovered. The goal is to determine the HELLO transmission frequency, and the duration of the neighbor discovery process. In [5], the sensor nodes are supposed to determine, for every time slot, whether to transmit HELLO, to listen, or to sleep. The optimal transition rate between the three states is determined using a priori knowledge of the maximum possible number of neighbors. In [13], the Disco algorithm is proposed for scheduling the wake-up times of two nodes that wish to find each other. For this algorithm, each node chooses a prime number; the choice depends on the required discovery time. Using the Chinese Remainders theorem, it is proved that the wake-up periods of the nodes will overlap within the required time. However, [13] does not discuss the problem of many sensors in the same segment collaborating to Dept of CSE, MVJCE

Page 4

Continuous Neighbor Discovery in Asynchronous Senor Network reduce the energy they expend for discovering hidden nodes. As Discussed In Section I, The Sensor Network Nodes Spend Most of Their Time in Sleep/Idle Mode, Where They Cannot Receive or transmit messages. Therefore, the node’s Ability to Discover a new neighbour Is limited to periods when both are Active. In [3], this neighbour Discovery model is shown to be Similar to the well-Known ―Birthday paradox.‖In our work we Use a similar analysis, in order to find The probability that a Node Will Be Discovered By One Of Its Neighbours. An Ovellow Power listening (Lpl) Technique, Proposed In [14]To Over Come Sensor synchronization Problems, Is implemented by the bMac protocol[15].The transmission Of a Packet Is Preceded By A Special Preamble. This Preamble Is Long Enough To Be Discovered If Each Node Performs Periodic Channel Sampling. However, This Technique Can Usually Not Be Used For Initial Neighbour Discovery, And Can Not Be Used At All For Continuous Neighbour Discovery, Because It Actually Requires The Node To Stay Awake During The Entire Time It Is Searching For A New Neighbor.

Dept of CSE, MVJCE

Page 5

Continuous Neighbor Discovery in Asynchronous Senor Network

CHAPTER 2

LITERATURE SURVEY Literature survey is the most important step in software development process. Before developing the tool it is necessary to determine the time factor, economy n company strength. Once these things r satisfied, ten next steps is to determine which operating system and language can be used for developing the tool. Once the programmers start building the tool the programmers need lot of external support. This support can be obtained from senior programmers, from book or from websites. Before building the system the above consideration r taken into account for developing the proposed system. We have to analysis the networking.

2.1 Networking In the world of computers, networking is the practice of linking two or more computing devices together for the purpose of sharing data. Networks are built with a mix of computer hardware and computer software. Networks consist of the computers, wiring, and other devices, such as hubs, switches and routers that make up the network infrastructure. Some devices, such as network interface cards, serve as the computer’s connection to the network. Devices such as switches and routers provide traffic- control strategies for the network. All sorts of different technologies can actually be employed to move data from one place to another, including wires, radio waves, and even microwave technology.

2.2 Network architecture

Fig 2.1 Network Architecture Dept of CSE, MVJCE

Page 6

Continuous Neighbor Discovery in Asynchronous Senor Network

2.3 Asynchronous Transfer Mode Asynchronous Transfer Mode (ATM) is a switching technique for telecommunication networks. It uses asynchronous time-division multiplexing and encodes data into small, fixed-sized cells. This differs from other protocols such as the Internet Protocol Suite or Ethernet that use variable sized packets or frames. ATM has similarity with both circuit and packet switched networking. This makes it a good choice for a network that must handle both traditional high-throughput data traffic, and real-time, low-latency content such as voice and video. ATM uses a connection-oriented model in which a virtual circuit must be established between two endpoints before the actual data exchange begins.

2.4 Network topology 2.4.1Common layouts A network topology is the layout of the interconnections of the nodes of a computer network. Common layouts are:  



 

A bus network: all nodes are connected to a common medium along this medium. This was the layout used in the original Ethernet, called 10BASE5 and 10BASE2. A star network: all nodes are connected to a special central node. This is the typical layout found in in a Wireless LAN, where each wireless client connects to the central Wireless access point. A ring network: each node is connected to its left and right neighbour node, such that all nodes are connected and that each node can reach each other node by traversing nodes left- or rightwards. The Fiber Distributed Data Interface (FDDI) made use of such a topology. A mesh network: each node is connected to an arbitrary number of neighbours in such a way that there is at least one traversal from any node to any other. A fully connected network: each node is connected to every other node in the network.

Note that the physical layout of the nodes in a network may not necessarily reflect the network topology. As an example, with FDDI, the network topology is a ring (actually two counter-rotating rings), but the physical topology is a star, because all neighboring connections are routed via a central physical location.

Dept of CSE, MVJCE

Page 7

Continuous Neighbor Discovery in Asynchronous Senor Network

2.4.2 Overlay Network An overlay network is a virtual computer network that is built on top of another network. Nodes in the overlay are connected by virtual or logical links, each of which corresponds to a path, perhaps through many physical links, in the underlying network. The topology of the overlay network may (and often does) differ from that of the underlying one.

Fig 2.2: Architecture of Overlay Network

A sample overlay network: IP over SONET over Optical For example, many peer-to-peer networks are overlay networks because they are organized as nodes of a virtual system of links run on top of the Internet. The Internet was initially built as an overlay on the telephone network .The most striking example of an overlay network, however, is the Internet itself: At the IP layer, each node can reach any other by a direct connection to the desired IP address, thereby creating a fully connected network; the underlying network, however, is composed of a mesh-like interconnect of subnetworks of varying topologies (and, in fact, technologies). Address resolution and routing are the means which allows the mapping of the fullyconnected IP overlay network to the underlying ones. Overlay networks have been around since the invention of networking when computer systems were connected over telephone lines using modems, before any data network existed. Another example of an overlay network is a distributed hash table, which maps keys to nodes in the network. In this case, the underlying network is an IP network, and the overlay network is a table (actually map) indexed by keys. Overlay networks have also been proposed as a way to improve Internet routing, such as through quality of service guarantees to achieve higher-quality streaming media. Previous Dept of CSE, MVJCE

Page 8

Continuous Neighbor Discovery in Asynchronous Senor Network proposals such as IntServ, DiffServ, and IP Multicast have not seen wide acceptance largely because they require modification of all routers in the network. On the other hand, an overlay network can be incrementally deployed on end-hosts running the overlay protocol software, without cooperation from Internet service providers. The overlay has no control over how packets are routed in the underlying network between two overlay nodes, but it can control, for example, the sequence of overlay nodes a message traverses before reaching its destination.

2.4.3 Routers A router is an internetworking device that forwards packets between networks by processing information found in the datagram or packet (Internet protocol information from Layer 3 of the OSI Model). In many situations, this information is processed in conjunction with the routing table (also known as forwarding table). Routers use routing tables to determine what interface to forward packets (this can include the "null" also known as the "black hole" interface because data can go into it, however, no further processing is done for said data).

2.4.4Network security In the field of networking, the area of network security consists of the provisions and policies adopted by the network administrator to prevent and monitor unauthorized access, misuse, modification, or denial of the computer network and network-accessible resources. Network Security is the authorization of access to data in a network, which is controlled by the network administrator. Users are assigned an ID and password that allows them access to information and programs within their authority. Network Security covers a variety of computer networks, both public and private that are used in everyday jobs conducting transactions andcommunications among businesses, government agencies and individuals. Networks can be private, such as within a company, and others which might be open to public access. Network Security is involved in organization, enterprises, and all other type of institutions. It does as its titles explains, secures the network. Protects and oversees operations being done.

2.5 Neighbour Discovery Protocol The Neighbour Discovery protocol is detailed in a document put forward by the Internet Society, an organisation responsible for developing standards to be used in the global internet. This document is called‖RFC2461‖ and is currently in its draft standard, as is RFC2460which specifies theIPv6 protocol. Draft standard implies that working implementations are available and that they have been thoroughly teste.The Neighbour Discovery protocol manages interactions between nodes via message exchanges.

Dept of CSE, MVJCE

Page 9

Continuous Neighbor Discovery in Asynchronous Senor Network These messages provide the data necessary for the processes of host auto configuration and packet transmission on a local link. Host auto configuration involves the separate tasks of: • Parameter Discovery, which is facilitated through the Router Discovery process. Here, the necessary parameters required for host auto configuration are obtained. • Address Auto configuration. • Duplicate Address Detection, which detects the presence of duplicate addresses on the same link. The packet transmission process requires data which can be obtained via the following Processes: • Router Discovery, whereby a host locates routers which reside on the same local link • Prefix Discovery, which is implemented through Router Discovery and provides the set of on-link prefixes • Address Resolution, the process of resolving a neighbour’s destination address to its link layer address and thereby enable the local delivery of packets • Neighbour Unreachability Detection, responsible for determining if a neighbour can be reached • Redirect, whereby a router informs the host of a better router on the local link to be used to forward packets to a given destination Another protocol, ICMPv6 (also in draft standard), defines messages which among other things, are used to aid in facilitating the services that Neighbour Discovery provides. These messages are further discussed in the following paragraphs.

2.5.1 ICMPv6 Messages Router Advertisement Routers use these messages to inform other nodes existing on all links to which they are connected, of their presence. The process occurs periodically or in response to a Router Solicitation message. These messages also provide other link related information. Through Router Advertisements, a host can build its default router list automatically, and thus overcome the limitation of the manual configuration of the default router in IPv4. Router Solicitation Upon the enabling of an interface of a node, these messages can be used to request all routers on the same local link to send Router Advertisements immediately, rather than waiting until the next periodically scheduled advertisement. Redirect These messages are used by routers to tell hosts that a better on-link router exists for a given destination address. Dept of CSE, MVJCE

Page 10

Continuous Neighbor Discovery in Asynchronous Senor Network Neighbour Solicitation These messages have 3 main purposes. The first is to discover the link layer address of a neighbour as part of the address resolution process. This process replaces the use of ARP requests and replies in IPv4. The second purpose is to determine the reachability of a neighbour. The last is to detect the presence of duplicate IPv6 addresses during the address auto configuration process which is detailed later in this report. Neighbour Advertisement These messages are either in response to Neighbour Solicitations, or sent by a neighbour to announce a change in its link layer address. Upon receipt of a Neighbour Advertisement, a node will update its neighbour cache which contains mappings between IPv6 and link layer addresses of neighbours.

2.5.2 Caches used in Neighbour Discovery There are four main data structures a node must have and maintain to assist in Neighbour Discovery protocol services. These caches are illustrated in Figure 2.3. It should be noted that these data structures are conceptual, and could be implemented within nodes in a variety of ways .We now look at each of them in turn Neighbour Cache. This contains a set of entries regarding neighbours to which packets have been recently sent. The data fields contained within it are the neighbour’s on-link uncast IP address, its link layer address, a flag to indicate if the neighbour is a router, and data pertinent in determining its reachability. The cache also contains a pointer to queued packets which are waiting to be sent to the neighbour.

Figure 2.3: Caches used in neighbour discovery. Dept of CSE, MVJCE

Page 11

Continuous Neighbor Discovery in Asynchronous Senor Network Destination Cache This cache contains a set of entries regarding destination addresses to which packets have been recently sent. An entry contains the destination address (on- or off-link) and a pointer to the relevant entry in the neighbour cache, which contains details regarding the next-hop on route to the given destination. The destination cache is updated upon receipt of ICMPv6 Redirect messages. Prefix List This is a list of prefixes that define a set of on-link IPv6 unicast addresses. Entries are initiated upon receipt of data contained in Router Advertisements. Each entry has an invalidation timer value, which cause the expiration of invalid prefixes. Link local prefixes have an infinite value in this field, and thus never expire. Default Router List This is a list of the routers to which packets may be sent. Each entry contains an identifier for the router, its invalidation timer value which is obtained from Router Advertisements, and a pointer to the relevant entry in the neighbour cache. The algorithmic choice of a default router is known to favour those which are determined as reachable. Once a router entry becomes ―invalid‖, it is deleted from this cache.

2.5.3 Host Autoconfiguration When the link layer interface of a host is first connected to the network it must acquire information necessary for the host to communicate on the local link and the entire network. It must obtain Local Link and Aggregately Global unicast IPv6 addresses, a list of on-link routers, a list of on-link prefixes, and other related information. The entire process of Host Auto configuration is depicted in Figure 2.4.

Figure 2.4: Host autoconfiguration. Dept of CSE, MVJCE

Page 12

Continuous Neighbor Discovery in Asynchronous Senor Network The process begins with the automatic generation of a link local IPv6 address as described in Section. Since it is also possible to manually configure link layer addresses, there is a chance that a duplicate link local address exists on the same link of the network. To determine if this is the case, the Duplicate Address Detection procedure is invoked. Duplicate Address Detection The host interface to be auto-configured sends a Neighbour Solicitation to all node interfaces other same link belonging to the same solicited node multicast address. This type of multicast address ensures that the Neighbour Solicitation will only be received by member nodes of the same multicast group (i.e. those that match in the last 24 bits of their IPv6 address). The source address included in the IPv6 header is the unspecified address. The target address field of the Neighbour Solicitation contains the link local address which is to be checked for duplication. If no host responds within a given time period, the host undergoing autoconfiguration may keep its link local address. Otherwise, the host containing the duplicate address responds with a Neighbour Advertisement. This advertisement is sent to all nodes on the same link by using the all nodes multicast address as its IPv6 destination address. The message contains its link layers address and a flag to indicate if the responding node is a router (hereon referred to as IsRouterflag).All nodes on the same link will therefore be forced to update their neighbour caches if their entries are not up-to-date. Receipt of a Neighbour Advertisement also updates the reachability status entry in the neighbour cache. A duplicate address on the local link may require the manual configuration of the new host interface link local address. Router Discovery Once a unique link local address has been obtained, the newly connected host needs to discover routers on its local link and also prefix lists which are used on the local link. This is performed in the next stage of autoconfiguration: Router Discovery. The newly connected host sends out a Router Solicitation to all routers on the local link using the all router multicast address as the destination address. In doing so, the host provides all such routers with its newly created local link address and its corresponding link layer address, so that all routers may update their records. All routers then respond in turn with a Router Advertisement. This message contains the following important data to be used by a host in the auto configuration process: • A router’s link layer address • A router’s lifetime (i.e. how long a host is able to keep using this router until subsequent advertisements update this value) • Flags used to determine the process by which the host’s aggregately global unicast address is created • Periodical timer values used in the Address Resolution and Neighbour Unreachability Detection procedures • Prefixes which should be cached in the host’s prefix list Dept of CSE, MVJCE

Page 13

Continuous Neighbor Discovery in Asynchronous Senor Network Extra prefix related data may also be included in the advertisement message, including: • L (On-link) flag: when set, this prefix can be used to determine if a node containing this prefix is on-link • A (Autonomous Address Configuration flag): when set, the prefix may be used for stateless configuration of the host’s aggregatable global unicast address • The valid and preferred lifetimes of a prefix Upon receipt of the Router Advertisements, a host updates the relevant fields of its default router list, neighbour cache and prefix list. Now the host has the link local IPv6 and link layer addresses of all on-link routers, a list of on-link prefixes, and other relevant data. Autoconfiguration of aggregately global unicast address. There are 2 flags which together determine how the host’s aggregately global unicast address is created. These are: • M (Managed Address Configuration) flag • O (Other Stateful Configuration) flag This process of determination can be seen in Figure 2. Stateless configuration of an address involves concatenating a valid prefix with the host’s link layer address. Full stateful configuration requires the use of the Dynamic Host Configuration Protocol (DHCPv6) to configure the host’s aggregatable global unicast address on its behalf. The final alternative is to configure the address using the stateless method, but using DHCPv6 for additional parameters [6].

2.5.4 Packet Transmission Algorithm Now that a node has both a local link address and an aggregatable global address, a default router list and a list of on-link IPv6 address prefixes, it is able to effectively communicate with other nodes on the same link or across the global internet. The process of packet Transmission [6] from such a host node is now depicted in Figure 2.5 and should be referred to repeatedly throughout the following discussion on the packet transmission process.

2.5: The packet transmission algorithm. Dept of CSE, MVJCE

Page 14

Continuous Neighbor Discovery in Asynchronous Senor Network The best-case situation for packet transmission is when both the destination address and the next-hop (neighbour) address for this destination are present in the host’s destination and neighbour caches respectively. If the entry for the neighbour is also determined as reachable, the queued packet can be transmitted immediately. If the entry is marked as stale, it means that no Neighbour Advertisements or other acknowledgements from higher level protocols (such as TCP) have been received from the neighbour within a specified time period. At this point the host must determine the neighbour’s reachability status via the Neighbour Unreachability Detection mechanism. Neighbour Unreachability Detection The node wishing to determine a neighbour’s reachability sends a Neighbour Solicitation to the neighbour. The solicitation contains the link layer address of the source node, should the neighbour be reached and need to update its neighbour cache entry for the source node. If the neighbour is reached, it replies with a Neighbour Advertisement, and the source node must then update the cached entry for this neighbour upon its receipt. The queued packet may now be sent to the neighbour. If no advertisement is received within a given time period, the neighbour entry is deleted from the source node’s neighbour cache. If the destination address was in fact a neighbour, the process of Address Resolution is required to rediscover its link layer address and then transmit the packet. If the destination is not a neighbour (i.e. it is off-link) then a router must be chosen randomly from its router list to attempt the packet delivery. The Router Redirect process is invoked at this stage if necessary. Both Address Resolution and Router Redirect are investigated further at this point. Address Resolution The node which wishes to discover the link layer address of a neighbour, sends a Neighbour Solicitation to all nodes which belong to the same solicited node multicast group. The message contains the link local address of the ―target node‖, and the link layer address of the node sending the solicitation. When the neighbour is found, it responds to the sending node with its link local address contained within a Neighbour Advertisement. The sending node then updates the link layer address and reachability status of the responding neighbour in its neighbour cache. Router Redirect When a node chooses an on-link router randomly from its default router list to forward a packet, there is a good chance that this choice of router is not the best with regard to the ultimate destination address. If this is the case, the router (say R1) receiving the packet to be forwarded will determine from its routing table that there exists a better on-link router for this destination. It will relay the packet to the ―better choice‖ router (say R2) which will in turn forward the packet. Dept of CSE, MVJCE

Page 15

Continuous Neighbor Discovery in Asynchronous Senor Network

R2 then sends a Redirect message to the host from which the packet originated. This Redirect message informs the original host that R2 is the best choice router for this particular destination address, and the host updates the link local and link layer addresses in its neighbour cache that are pointed to by the destination cache entry. Up until now, we have assumed that the destination address of the packet to be delivered was cached by the sending host. Thus far we have traversed the entire left hand side of Figure 2.5. We now make the assumption that the destination address is not cached by the sending host and begin our traversal of the right hand side of the packet transmission algorithm represented in Figure 2.5.

When such a situation exists, the prefix list of the sending node can be consulted to verify that the destination is on/off-link. If it is on-link, then the destination is a neighbour and its link local address can be obtained via Address Resolution. The packet can then be delivered to its destination. If however, the destination is off-link a router must be selected from the sending node’s default router list to forward the packet onto the off-link destination. Since no entry exists in the destination cache for the destination, a router must be randomly chosen to forward this packet and the Redirect process may have to be initiated as before if the router chosen was not the best choice.

Dept of CSE, MVJCE

Page 16

Continuous Neighbor Discovery in Asynchronous Senor Network

CHAPTER 3

SYSTEM REQUIREMENT SPECIFICATION 3.1 Introduction This SRS document itself states in precise and explicit language those functions and capabilities a software system must provide, as well as states any required constraints by which the system must abide. This document also functions as a blueprint for completing a project with as little cost growth as possible.

3.2 Scope This SRS is referred to as the ―parent‖ document because all subsequent project management documents, such as design specifications, statements of work, software architecture specifications, testing and validation plans, and documentation plans, are related to it.

3.3 Hardware Requirements    

A Pentium 4 processor with minimum on 2.4 GHz processor. A512 MB and above RAM. Minimum of 40 GB of free hard disk space. A 15 VGA Color monitors.

3.4 Software Requirements  Windows XP and above Operating System.  Microsoft Visual Studio 2008.

3.5 Requirement Specification  Application should aware of it immediate neighbors.  Application can perform it together with its immediate neighbors in order to consume less energy.  Application should include modules for Power Management.

Dept of CSE, MVJCE

Page 17

Continuous Neighbor Discovery in Asynchronous Senor Network

3.6 Technology Survey Features OF. Net Microsoft .NET is a set of Microsoft software technologies for rapidly building and integrating XML Web services, Microsoft Windows-based applications, and Web solutions. The .NET Framework is a language-neutral platform for writing programs that can easily and securely interoperate. There’s no language barrier with .NET: there are numerous languages available to the developer including Managed C++, C#, Visual Basic and Java Script. The .NET framework provides the foundation for components to interact seamlessly, whether locally or remotely on different platforms. It standardizes common data types and communications protocols so that components created in different languages can easily interoperate.‖NET‖ is also the collective name given to various software components built upon the .NET platform. These will be both products (Visual Studio.NET and Windows.NET Server, for instance) and services (like Passport, .NET My Services, and so on). The .Net Framework The .NET Framework has two main parts: 1. The Common Language Runtime (CLR). 2. A hierarchical set of class libraries. The CLR is described as the ―execution engine‖ of .NET. It provides the environment within which programs run. The most important features are  Conversion from a low-level assembler-style language, called Intermediate Language (IL), into code native to the platform being executed on.  Memory management, notably including garbage collection.  Checking and enforcing security restrictions on the running code.  Loading and executing programs, with version control and other such features.  The following features of the .NET framework are also worth description: Managed Code The code that targets .NET, and which contains certain extra Information - ―metadata‖ - to describe itself. Whilst both managed and unmanaged code can run in the runtime, only managed code contains the information that allows the CLR to guarantee, for instance, safe execution and interoperability. Managed Data With Managed Code comes Managed Data. CLR provides memory allocation and Deal location facilities, and garbage collection. Some .NET languages use Managed Data by default, such as C#, Visual Basic.NET and JScript.NET, whereas others, namely C++, do Dept of CSE, MVJCE

Page 18

Continuous Neighbor Discovery in Asynchronous Senor Network not. Targeting CLR can, depending on the language you’re using, impose certain constraints on the features available. As with managed and unmanaged code, one can have both managed and unmanaged data in .NET applications - data that doesn’t get garbage collected but instead is looked after by unmanaged code. Common Type System The CLR uses something called the Common Type System (CTS) to strictly enforce typesafety. This ensures that all classes are compatible with each other, by describing types in a common way. CTS define how types work within the runtime, which enables types in one language to interoperate with types in another language, including cross-language exception handling. As well as ensuring that types are only used in appropriate ways, the runtime also ensures that code doesn’t attempt to access memory that hasn’t been allocated to it.

Common Language Specification The CLR provides built-in support for language interoperability. To ensure that you can develop managed code that can be fully used by developers using any programming language, a set of language features and rules for using them called the Common Language Specification (CLS) has been defined. Components that follow these rules and expose only CLS features are considered CLS-compliant. The Class Library .NET provides a single-rooted hierarchy of classes, containing over 7000 types. The root of the namespace is called System; this contains basic types like Byte, Double, Boolean, and String, as well as Object. All objects derive from System. Object. As well as objects, there are value types. Value types can be allocated on the stack, which can provide useful flexibility. There are also efficient means of converting value types to object types if and when necessary. The set of classes is pretty comprehensive, providing collections, file, screen, and network I/O, threading, and so on, as well as XML and database connectivity. The class library is subdivided into a number of sets (or namespaces), each providing distinct areas of functionality, with dependencies between the namespaces kept to a minimum. Languages Supported By .Net The multi-language capability of the .NET Framework and Visual Studio .NET enables developers to use their existing programming skills to build all types of applications and XML Web services. The .NET framework supports new versions of Microsoft’s old favorites Visual Basic and C++ (as VB.NET and Managed C++), but there are also a number of new additions to the family. Visual Basic .NET has been updated to include many new and improved language features that make it a powerful object-oriented programming language. Dept of CSE, MVJCE

Page 19

Continuous Neighbor Discovery in Asynchronous Senor Network These features include inheritance, interfaces, and overloading, among others. Visual Basic also now supports structured exception handling, custom attributes and also supports multithreading. Visual Basic .NET is also CLS compliant, which means that any CLS-compliant language can use the classes, objects, and components you create in Visual Basic .NET. Managed Extensions for C++ and attributed programming are just some of the enhancements made to the C++ language. Managed Extensions simplify the task of migrating existing C++ applications to the new .NET Framework. C# is Microsoft’s new language. It’s a C-style language that is essentially ―C++ for Rapid Application Development‖. Unlike other languages, its specification is just the grammar of the language. It has no standard library of its own, and instead has been designed with the intention of using the .NET libraries as its own. Microsoft Visual J# .NET provides the easiest transition for Java-language developers into the world of XML Web Services and dramatically improves the interoperability of Javalanguage programs with existing software written in a variety of other programming languages. Active State has created Visual Perl and Visual Python, which enable .NET-aware applications to be built in either Perl or Python. Both products can be integrated into the Visual Studio .NET environment. Visual Perl includes support for Active State’s Perl Dev Kit. Other languages for which .NET compilers are available include   

FORTRAN COBOL Eiffel

ASP.NET

Windows Forms

XML WEB SERVICES Base Class Libraries Common Language Runtime Operating System Fig1 .Net Framework C#.NET is also compliant with CLS (Common Language Specification) and supports structured exception handling. CLS is set of rules and constructs that are supported by the CLR (Common Language Runtime). CLR is the runtime environment provided by the .NET Framework; it manages the execution of the code and also makes the development process easier by providing services.

Dept of CSE, MVJCE

Page 20

Continuous Neighbor Discovery in Asynchronous Senor Network C#.NET is a CLS-compliant language. Any objects, classes, or components that created in C#.NET can be used in any other CLS-compliant language. In addition, we can use objects, classes, and components created in other CLS-compliant languages in C#.NET .The use of CLS ensures complete interoperability among applications, regardless of the languages used to create the application. Constructors And Destructors: Constructors are used to initialize objects, whereas destructors are used to destroy them. In other words, destructors are used to release the resources allocated to the object. In C#.NET the sub finalize procedure is available. The sub finalize procedure is used to complete the tasks that must be performed when an object is destroyed. The sub finalize procedure is called automatically when an object is destroyed. In addition, the sub finalize procedure can be called only from the class it belongs to or from derived classes. Garbage Collection Garbage Collection is another new feature in C#.NET. The .NET Framework monitors allocated resources, such as objects and variables. In addition, the .NET Framework automatically releases memory for reuse by destroying objects that are no longer in use. In C#.NET, the garbage collector checks for the objects that are not currently in use by applications. When the garbage collector comes across an object that is marked for garbage collection, it releases the memory occupied by the object. Overloading Overloading is another feature in C#. Overloading enables us to define multiple procedures with the same name, where each procedure has a different set of arguments. Besides using overloading for procedures, we can use it for constructors and properties in a class. Multithreading C#.NET also supports multithreading. An application that supports multithreading can handle multiple tasks simultaneously, we can use multithreading to decrease the time taken by an application to respond to user interaction. Structured Exception Handling C#.NET supports structured handling, which enables us to detect and remove errors at runtime. In C#.NET, we need to use Try…Catch…Finally statements to create exception handlers. Using Try…Catch…Finally statements, we can create robust and effective exception handlers to improve the performance of our application.

Dept of CSE, MVJCE

Page 21

Continuous Neighbor Discovery in Asynchronous Senor Network The .Net Framework The .NET Framework is a new computing platform that simplifies application development in the highly distributed environment of the Internet. Objectives Of. Net Framework 1. To provide a consistent object-oriented programming environment whether object codes is stored and executed locally on Internet-distributed, or executed remotely. 2. To provide a code-execution environment to minimizes software deployment and guarantees safe execution of code. 3. Eliminates the performance problems.

Dept of CSE, MVJCE

Page 22

Continuous Neighbor Discovery in Asynchronous Senor Network

CHAPTER 4

SYSTEM ANALYSIS 4.1 Existing System Initial neighbor discovery is usually performed when the sensor has no clue about the structure of its immediate surroundings. In such a case, the sensor cannot communicate with the gateway and is therefore very limited in performing its tasks. Disadvantages 1. In networks with continuously heavy traffic. 2. Long-term process. 3. Greater expense of energy than required in our scheme.

4.2 Proposed System We distinguish between neighbor discovery during sensor network initialization and continuous neighbor discovery. We focus on the latter and view it as a joint task of all the nodes in every connected segment. Each sensor employs a simple protocol in a coordinate effort to reduce power consumption without increasing the time required to detect hidden sensors. Advantages 1. Detect their immediate neighbors. 2. Message does not collide with another. 3. Every node discovers its hidden neighbors independently.

4.3 Feasibility Study The feasibility of the project is analyzed in this phase and business proposal is put forth with a very general plan for the project and some cost estimates. During system analysis the feasibility study of the proposed system is to be carried out. This is to ensure that the proposed system is not a burden to the company. For feasibility analysis, some understanding of the major requirements for the system is essential. Three key considerations involved in the feasibility analysis are  Economical Feasibility  Technical Feasibility  Social Feasibility

Dept of CSE, MVJCE

Page 23

Continuous Neighbor Discovery in Asynchronous Senor Network Economical Feasibility This study is carried out to check the economic impact that the system will have on the organization. The amount of fund that the company can pour into the research and development of the system is limited. The expenditures must be justified. Thus the developed system as well within the budget and this was achieved because most of the technologies used are freely available. Only the customized products had to be purchased. Technical Feasibility This study is carried out to check the technical feasibility, that is, the technical requirements of the system. Any system developed must not have a high demand on the available technical resources. This will lead to high demands on the available technical resources. This will lead to high demands being placed on the client. The developed system must have a modest requirement, as only minimal or null changes are required for implementing this system.

Social Feasibility The aspect of study is to check the level of acceptance of the system by the user. This includes the process of training the user to use the system efficiently. The user must not feel threatened by the system, instead must accept it as a necessity. The level of acceptance by the users solely depends on the methods that are employed to educate the user about the system and to make him familiar with it. His level of confidence must be raised so that he is also able to make some constructive criticism, which is welcomed, as he is the final user of the system.

Dept of CSE, MVJCE

Page 24

Continuous Neighbor Discovery in Asynchronous Senor Network

CHAPTER 5

SYSTEM DESIGN 5.1 Introduction This document details the model or the representation of an entity that will later be built. Software design is a process of problem solving and planning for a software solution. After the purpose and specifications of software are determined, software developers will design a plan for a solution. It includes UML diagrams as well as the architectural view.

5.2 Scope The design can be traced to the requirements and can also be used as a quality metric, to discover the quality of the final product. It provides a complete picture of the software, by addressing the data, functional and behavioral domain. The design focuses on the data, architecture, interface and components used. The data design transforms the information model into the data structure to be used during implementation phase. The architectural design defines the relationship between the major structural elements of software. The interface design describes how the software communicated with itself as well as other systems interoperate with it. The component level design transforms the structural elements of the software into a procedural description. The design engineers can map the design to the requirements to ensure that all aspects have been considered.

5.3 Design Considerations There are many aspects to consider in the design of a piece of software. The importance of each should reflect the goals the software is trying to achieve. Some of these aspects are:        

Compatibility: The software is able to operate with other products that are designed for interoperability with another product. Extensibility: New capabilities can be added to the software without major changes to the underlying architecture. Fault-tolerance: The software is resistant to and able to recover from component failure. Maintainability: The software can be restored to a specified condition within a specified period of time. Modularity: The resulting software comprises well defined, independent components. That leads to better maintainability. Reusability: The modular components designed should capture the essence of the functionality expected out of them and no more or less. Reliability: The software is able to perform a required function under stated conditions for a specified period of time. Robustness: The software is able to operate under stress or tolerate unpredictable or invalid input.

Dept of CSE, MVJCE

Page 25

Continuous Neighbor Discovery in Asynchronous Senor Network  

Security: The software is able to withstand hostile acts and influences. Usability: the software user interface must be intuitive (and often aesthetically pleasing) to its target user /audience. Default values for the parameters must be chosen so that they are a good choice for the majority of the users.

5.4 Interaction Diagram of the System Interaction diagrams, a subset of behavior diagram, emphasize the flow of control and data among the things in the system being modeled. The following sequence diagrams shows how objects communicate with each other in terms of a sequence of messages. Also indicates the life spans of objects relative to those messages.

5.4.1 Data Flow Diagram A data flow diagram is graphical tool used to describe and analyze movement of data through a system. These are the central tool and the basis from which the other components are developed. The transformation of data from input to output, through processed, may be described logically and independently of physical components associated with the system. These are known as the logical data flow diagrams. The physical data flow diagrams show the actual implements and movement of data between people, departments and workstations. A full description of a system actually consists of a set of data flow diagrams. Using two familiar notations Yourdon, Gane and Sarson notation develops the data flow diagrams. Each component in a DFD is labeled with a descriptive name. Process is further identified with a number that will be used for identification purpose. The development of DFD’S is done in several levels. Each process in lower level diagrams can be broken down into a more detailed DFD in the next level. The lop-level diagram is often called context diagram. It consists a single process bit, which plays vital role in studying the current system. The process in the context level diagram is exploded into other process at the first level DFD. 

Data Flow Diagram of the System Here we just explain about the dataflow diagram in our project. dataflow diagram A data flow diagram (DFD) is a graphical representation of the "flow" of data through an information system, DFDs can also be used for the visualization of data processing A DFD shows what kinds of data will be input to and output from the system, where the data will come from and go to, and where the data will be stored. It does not show information about the timing of processes, or information about whether processes will operate in sequence or in parallel. Here the initial node represents the start of a operation in a project. First of all the 4 module in our project client,server,router1,router2 are connected with each other by the help of a socket which is a api ,exists in every operating system .now the connection between client, server, router1,and router2 are established. Now server can assign the ip address which is basically the ipaddress of the client. its ensure about the establishment of the connection between two.router1 and router2 also assign the ipaddress for connection purpose.

Dept of CSE, MVJCE

Page 26

Continuous Neighbor Discovery in Asynchronous Senor Network Server can first executed and want the ipaddress for connection .now this module have option to browse a file ,it will select a file which is small one .now it will check either the data has to be passed through the dedicated link or not, then it will connected with the other module and decides the path also. Client must execute after the server .in this module first client will decide the destination path where exactly the file has to be placed and then it will confirm and propagate the connection. And after receiving the file, we can see the file has transferred in a proper destination. It’s all about the functionalities of the client. Router1 is initialized for client or server it will depend upon the operator. Now assume router1 has initialized for server and we assign the ipaddress in this module after assigning, we have to select the source node from which the data will pass. After selecting the source node , user will recheck either the data has passed with dedicated link or hidden link . If the data has passed with dedicated link the module show the current path as we initialized before or if the data has passed with the hidden link then it will show the different path as the router will choose which is feasible. This all about the functionalities of the router1. Router2 is initialized for the client and it will do the same work as router1. At first we assign the ipaddress in this module after assigning, we have to select the destination node to which the data has to be reached. After selecting the destination node, user will recheck either the data has passed with dedicated link or hidden link. If the data has passed with dedicated link the module show the current path as we initialized before or if the data has passed with the hidden link then it will show the different path as the router will choose which is feasible. This all about the functionalities of the router2.

Dept of CSE, MVJCE

Page 27

Continuous Neighbor Discovery in Asynchronous Senor Network

SERVER

ROUTER 1

ROUTER 2

IP Address

IP Address

IP Address

Browse a received path

Browse a File

Select Node

Select Node

Connecting..

Via Hidden Link

CLIENT

Flle Receive

yes

Via Hidden Link

yes

no

Connecting..

no Connecting..

FIle Transfer Detect Hidden Link Inside a Segment

Detect Hidden Link Outside a Segment

Service Time

End

Fig 5.1 High Level Data Flow Diagram

Dept of CSE, MVJCE

Page 28

Continuous Neighbor Discovery in Asynchronous Senor Network

5.4.2 Activity Diagram Activity diagrams are graphical representations of workflows of stepwise activities and actions with support for choice, iteration and concurrency. In the Unified Mo Activity diagrams are graphical representations of workflows of stepwise activities and actions [1] with support for choice, iteration and concurrency. In the Unified Modelling Language, activity diagrams can be used to describe the business and operational step-by-step workflows of components in a system. An activity diagram shows the overall flow of control .deling Language, activity diagrams can be used to describe the business and operational step-by-step workflows of components in a system. An activity diagram shows the overall flow of control 

Activity Diagram of the System Here we just explain about the activity diagram of our project. Activity diagram is nothing but a one of the enlite graphical representation by which we can understand the total flow of the functionalities in a project. A activity diagram shows the overflow of the control and its very unique method by which we can understand the process iteration in a project also. Here the initial node represents the start of a operation in a project. First of all the 4 module in our project client,server,router1,router2 are connected with each other by the help of a socket which is a api ,exists in every operating system .now the connection between client, server, router1,and router2 are established. Now server can assign the ip address which is basically the ipaddress of the client. its ensure about the establishment of the connection between two.router1 and router2 also assign the ipaddress for connection purpose. Server can first executed and want the ipaddress for connection .now this module have option to browse a file ,it will select a file which is small one .now it will check either the data has to be passed through the dedicated link or not, then it will connected with the other module and decides the path also. Client must execute after the server .in this module first client will decide the destination path where exactly the file has to be placed and then it will confirm and propagate the connection. And after receiving the file, we can see the file has transferred in a proper destination. it’s all about the functionalities of the client.

Router1 is initialized for client or server it will depend upon the operator. Now assume router1 has initialized for server and we assign the ipaddress in this module after assigning, we have to select the source node from which the data will pass. After selecting the source node, user will recheck either the data has passed with dedicated link or hidden link. If the data has passed with dedicated link the module show the current path as we initialized before or if the data has passed with the hidden link then Dept of CSE, MVJCE

Page 29

Continuous Neighbor Discovery in Asynchronous Senor Network it will show the different path as the router will choose which is feasible. This all about the functionalities of the router1. Router2 is initialized for the client and it will do the same work as router1. At first we assign the ipaddress in this module after assigning, we have to select the destination node to which the data has to be reached. After selecting the destination node, user will recheck either the data has passed with dedicated link or hidden link. if the data has passed with dedicated link the module show the current path as we initialized before or if the data has passed with the hidden link then it will show the different path as the router will choose which is feasible. This all about the functionalities of the router2.

Dept of CSE, MVJCE

Page 30

Continuous Neighbor Discovery in Asynchronous Senor Network

CLIENT

SERVER

ROUTER 1

ROUTER 2

Browse

IP Address

IP Address

IP Address

Select a Receiving Path

Browse a File

Select a Node

Select a Node

Connecting.. Via Hidden Link

FILE RECEIVE

Yes

NO

Via Hidden Link

Yes

No

Connecting..

FILE TRANSFER

Connecting..

Detect Hidden Link Inside a Segment

Detect Hidden Link Outside a Segment

SERVICE TIME

Fig 5.3 Activity Diagram

Dept of CSE, MVJCE

Page 31

Continuous Neighbor Discovery in Asynchronous Senor Network

5.4.3 Sequence diagram A sequence diagram in a Unified Modeling Language (UML) is a kind of interaction diagram that shows how processes operate with one another and in what order. It is a construct of a Message Sequence Chart. A sequence diagram shows object interactions arranged in time sequence. It depicts the objects and classes involved in the scenario and the sequence of messages exchanged between the objects needed to carry out the functionality of the scenario. Sequence diagrams typically are associated with use case realizations in the Logical View of the system under development.

 Sequence Diagram of the System Sequence diagrams are sometimes called event diagrams, event scenarios, and timing diagrams. A sequence diagram shows, as parallel vertical lines (lifelines), different processes or objects that live simultaneously, and, as horizontal arrows, the messages exchanged between them, in the order in which they occur. This allows the specification of simple runtime scenarios in a graphical manner. F the lifeline is that of an object, it demonstrates a role. Note that leaving the instance name blank can represent anonymous and unnamed instances. In order to display interaction, messages are used. These are horizontal arrows with the message name written above them. Solid arrows with full heads are synchronous calls, solid arrows with stick heads are asynchronous calls and dashed arrows with stick heads are return messages. This definition is true as of uml 2, considerably different from uml 1. Activation boxes, or method-call boxes, are opaque rectangles drawn on top of lifelines to represent that processes are being performed in response to the message (execution specifications in uml). Objects calling methods on themselves use messages and add new activation boxes on top of any others to indicate a further level of processing. When an object is destroyed (removed from memory), an x is drawn on top of the lifeline, and the dashed line ceases to be drawn below it (this is not the case in the first example though). It should be the result of a message, either from the object itself, or another. A message sent from outside the diagram can be represented by a message originating from a filled-in circle (found message in uml) or from a border of the sequence diagram (gate in uml). Uml 2 has introduced significant improvements to the capabilities of sequence diagrams. Most of these improvements are based on the idea of interaction fragments which represent smaller pieces of an enclosing interaction. Multiple interaction fragments are combined to create a variety of combined fragments, which are then used to model interactions that include parallelism, conditional branches, and optional interactions. Dept of CSE, MVJCE

Page 32

Continuous Neighbor Discovery in Asynchronous Senor Network

SERVER

ROUTER 1

ROUTER 2

CLIENT

Click Transfer Socet Connection Socet Connection Hidden Link Socet Connection Hidden Node Hidden Link Service Time Service Time

File Transfer

Acknowledgement

File Received

Fig 5.2 Sequence diagram

Dept of CSE, MVJCE

Page 33

Continuous Neighbor Discovery in Asynchronous Senor Network

5.4.4 Use Case diagrams A use case describes a sequence of actions that provide something of measurable value to an actor. An actor is a person, organization, or external system that plays a role in one or interactions with your system. A system boundary box indicates the scope of your system. Anything within the box represents functionality that is in scope and anything outside the box is not in scope.The following use case diagram shows the interaction between different modules in the application program. It also shows the interaction between the user and the application program.

 Use case Diagram of the System It consists of different functions, which help users to interact with the system. There are three functions namely:  IP Address  Service Time  Node Selection The Figure 5.2 illustrates the use case of the system Here Server can act as a actor and router1 also. Client and router2 are placed at another position. Server must connect with use cases like ipaddress, socket connection and browse a file. Now client, a actor from opposite position is connected with use cases like receiving path, socket connection, and receive a file.

Router1 is connected with use cases like ipaddress, socket connection, node selection and service time. Next router2 also connected with same use cases which are defined for router1.thus these are the main features of the use case diagram which we successfully conclude.

Dept of CSE, MVJCE

Page 34

Continuous Neighbor Discovery in Asynchronous Senor Network

Receiving Path

IP Address

Service Time CLIENT

SERVER Node Selection ROUTER 1

ROUTER 2

socket connection

Browse a File

Receive a File

Fig 5.2 Use Case Diagram

Dept of CSE, MVJCE

Page 35

Continuous Neighbor Discovery in Asynchronous Senor Network

CHAPTER 6

IMPLEMENTATION 6.1 Introduction Implementation is the stage where the software design is realized as the set of software programs or the program units. The knowledge of the platform and tools to be used and operating System is of great importance. This enables the developers to effectively design and implement tools, which perform well under the conditions stipulated.

6.2 Scope This document is designed in order to insight to a user regarding the details of coding. We have already discussed the project design i.e., the logic and the flow of the project. Now we are left with the details of which language we are going to use for implementing the design and what kind of platform will be suitable for desktop environment. The following section will specify the platform and the functionalities available for the respective environments.

6.3 Platform of the System    

OS-Windows XP Languages- C# .NET Compiler- Microsoft Visual C#.NET Coding Environment- Microsoft Visual Studio 2008

6.4 Algorithm / Technique used AN EFFICIENT CONTINUOUS NEIGHBOR DISCOVERY ALGORITHM In this section we present an algorithm for assigning HELLO message frequency to the nodes of the same segment. This algorithm is based on detecting all hidden links inside a segment. Namely, if a hidden node is discovered by one of its segment neighbors, it is discovered by all its other segment neighbors after a very short time. Hence, the discovery of a new neighbor is viewed as a joint effort of the whole segment. One of the three methods presented in Section is used to estimate the number of nodes participating in this effort. Suppose that node u is in initial neighbor discovery state, where it wakes up every TI seconds for a period of time equal to H, and broadcasts HELLO messages. Suppose that the nodes of segment S should discover u within a time period T with probability P.

6.5 Modules 1. Client – Server 2. Detecting all hidden links Inside a segment Dept of CSE, MVJCE

Page 36

Continuous Neighbor Discovery in Asynchronous Senor Network 3. Detecting all hidden links Outside a segment 4. Neighbor Discovery Model 1. Client – Server Client – Server computing is distributed access. Server accepts requests for data from client and returns the result to the client. By separating data from the computation processing, the compute server’s processing capabilities can be optimized. Often clients and servers communicate over a computer network on separate hardware, but both client and server may reside in the same system. 2. Hidden link participate Inside a segment This scheme is invoked when a new node is discovered by one of the segment nodes. The discovering node issues a special SYNC message to all segment members, asking them to wake up and periodically broadcast a bunch of HELLO messages. This SYNC message is distributed over the already known wireless links of the segment. Thus, it is guaranteed to be received by every segment node. By having all the nodes wake up .almost at the same time. for a short period, we can ensure that every wireless link between the segment's members will be detected. 3. Hidden link participate Outside a segment A random wake-up approach is used to minimize the possibility of repeating collisions between the HELLO messages of nodes in the same segment. Theoretically, another scheme may be used, where segment nodes coordinate their wake-up periods to prevent collisions and speed up the discovery of hidden nodes. Since the time period during which every node wakes up is very short, and the HELLO transmission time is even shorter, the probability that two neighboring nodes will be active at the same time. 4. Neighbor Discovery Model Neighbor Discovery is studied for general ad-hoc wireless networks. A node decides randomly when to initiate the transmission of a HELLO message. If its message does not collide with another HELLO, the node is considered to be discovered. The goal is to determine the HELLO transmission frequency, and the duration of the neighbor discovery process.

Dept of CSE, MVJCE

Page 37

Continuous Neighbor Discovery in Asynchronous Senor Network

CHAPTER 7

SIMULATION STUDY In this section we present a simulation study for the schemes presented in the paper. We simulate a large sensor network, with nodes distributed randomly and uniformly over the area of interest. We assume that the nodes have an equal and constant transmission range. Communication is always bi-directional. We also assume that most of the nodes discover each other and enter the continuous neighbor discovery state before the simulation begins. Our simulation model consists of 2,000 sensor nodes, randomly placed over a 10,000 x 10,000 grid. The transmission range is set to r units. Any two nodes whose Euclidean distance is not greater than r are considered to have wireless connectivity. A portion of the nodes are randomly selected to be hidden. These nodes are uniformly distributed in the considered area. We set the algorithm parameters such that every hidden node will be detected with probability P within a predetermined period of time T. For the study reported in this section, r is chosen to be 300 (0.03 of the graph), the detection probability ranges between 0.3 and 0.7, and the target detection time is 100 time units. The hidden nodes are assumed to be in the initial neighbour discovery state, where they are supposed to wake up randomly, every TI time units on the average, and to exchange HELLO messages with other nodes during a period of H time units. A non-hidden node v is assumed to be in the continuous neighbour discovery state, where it wakes up randomly, every TN (v) time units on the average for a period of H time units, in order to discover hidden nodes. For the study reported in what follows, I = 20, H = 1 and _ = 0:5 are used. When a node is detected, it joins the segment and learns about its in-segment neighbors . A hidden node that detects another hidden node remains in the initial neighbor discovery state. Our simulations reveal that when the hidden nodes are uniformly distributed, the three algorithms proposed in yield very similar results. The reason for this similarity is that the degree estimation errors of the neighbors of every node cancel each other, and the mean estimation bias approaches 0. Because of this similarity, in most of the graphs we show only the results of one algorithm. Figure 7.1(a) shows the ratios of hidden nodes to the total number of nodes as a function of time. The initial ratio is 0.05. We can see that after 100 time units, this ratio decreases to 0.035 for P = 0:3, to 0.025 for P = 0:5, and to 0:015 for P = 0:7. After 200 time units, the ratios of the hidden nodes are 0:025, 0:012 and 0:005 respectively. It is evident that these results are very close to the required ratios. In the next simulation we start with 50% hidden nodes. Figure 7.1(b) shows the change in the average frequency of HELLO intervals of the segment nodes, as a function of time, for the same three values of P. We can see that for the smaller value of P (the lower curve), the frequency is almost 75% lower than the frequency for the larger value of P. We can also see that for a given value of P, the average frequency of HELLO intervals decreases with time. This is because as the segment grows, more nodes participate in the discovery process. Similar results are obtained Dept of CSE, MVJCE

Page 38

Continuous Neighbor Discovery in Asynchronous Senor Network for the case where the initial hidden node ratio was 0:05, but they can hardly be observed due to the small changes in the segment size during the simulation. Another interesting case is when the hidden nodes are distributed non-uniformly in the area. To simulate this case, we randomly select some points as .dead areas, and assume that the probability of a node to be hidden increases when its distance to one of these points decreases. The rationale here is that bad weather, dust storms, or other environmental conditions may adversely affect wireless connectivity in some areas more than in others. Unlike the uniform distribution case. Here we can see differences between the three estimation algorithms presented in SectionIV. Figure7.2 (a) shows the percent of hidden nodes as a function of time for the three estimation algorithms and P = 0.5. Unlike in the uniform distribution case, here we can see some Differences between the three algorithms: these conditional algorithm is the closest to the required rate (shown by a separate curve), where the first algorithm discovers the hidden nodes at a rate slower than the required one. Figure7.2 (b) shows the ratio of hidden nodes after T for networks with different transmission ranges, and hence with different node average degrees. This graph reveals the flexibility of our scheme and its ability to adjust the wake-up frequency to the network density. We show this by comparing our scheme to at rival’s scheme that does not take the network density into account. For the trivial scheme, all the nodes have the same wake-up frequency. The actual values, which depend on the wake-up frequency of the nodes, are not important. The comparison shows that the trivial chime’s too aggressive in dense networks and not aggressive enough in sparse ones. Recall that the goal of ours chimes’s not to discover nodes as quickly as possible, but to impose an upper bound on the discovery time while minimizing energy consumption. Insight of this goal, we see that our scheme performs better because its discovery rate is fixed, and so is its overall expended energy. The simulation startswith5%hiddennodes, and each node in Init is configured with P=0.5. For all transmission ranges, our scheme indeed guarantees that after T time units the percentage of hidden nodes will decrease by half, to 2.5%. Interestingly enough, the trivial chime discovers half of the hidden nodes only when the transmissions range is≈ 0.06. When the transmission range is shorter, the trivial scheme discovers a smaller fraction of the hidden nodes. For instance, forarangeof0.03, the ratio of hidden nodes are reduced from 0.05to0.04.Whenthetransmissionrangeisgreaterthan0.06, the trivial scheme discovers more nodes during a time period ofT.Weconcludethatouralgorithmcanselfadjusttoinvesttheminimumenergyneeded to guarantee the required discovery rate, where as the trivial algorithm cannot.

Dept of CSE, MVJCE

Page 39

Continuous Neighbor Discovery in Asynchronous Senor Network

Fig5.4: TN (v) as a function of T for different values of n

Fig 5.5: Hidden neighbor detection for the case of uniform distribution (Decrease the ratio of hidden nodes) Dept of CSE, MVJCE

Page 40

Continuous Neighbor Discovery in Asynchronous Senor Network

Fig 5.6: Hidden neighbor detection for the case of uniform distribution (The average 1=TN (v) as a function of time)

Fig 5.7: Hidden neighbors detection with extreme point (Decrease in hidden node ratio) Dept of CSE, MVJCE

Page 41

Continuous Neighbor Discovery in Asynchronous Senor Network

Fig 5.8: Hidden neighbors detection with extreme point( frequency to network density)

Fig 5.9: The hidden neighbor discovery rate for a small detecting segment Dept of CSE, MVJCE

Page 42

Continuous Neighbor Discovery in Asynchronous Senor Network

CHAPTER 8 SYSTEM TESTING The purpose of testing is to discover errors. Testing is the process of trying to discover every conceivable fault or weakness in a work product. It provides a way to check the functionality of components, sub assemblies, assemblies and/or a finished product It is the process of exercising software with the intent of ensuring that the Software system meets its requirements and user expectations and does not fail in an unacceptable manner. There are various types of test. Each test type addresses a specific testing requirement.

8.1 Types Of Tests Unit testing Unit testing involves the design of test cases that validate that the internal program logic is functioning properly, and that program inputs produce valid outputs. All decision branches and internal code flow should be validated. It is the testing of individual software units of the application .it is done after the completion of an individual unit before integration. This is a structural testing, that relies on knowledge of its construction and is invasive. Unit tests perform basic tests at component level and test a specific business process, application, and/or system configuration. Unit tests ensure that each unique path of a business process performs accurately to the documented specifications and contains clearly defined inputs and expected results.

Integration testing Integration tests are designed to test integrated software components to determine if they actually run as one program. Testing is event driven and is more concerned with the basic outcome of screens or fields. Integration tests demonstrate that although the components were individually satisfaction, as shown by successfully unit testing, the combination of components is correct and consistent. Integration testing is specifically aimed at exposing the problems that arise from the combination of components.

Functional test Functional tests provide systematic demonstrations that functions tested are available as specified by the business and technical requirements, system documentation, and user manuals. Functional testing is cantered on the following items: Valid Input:

identified classes of valid input must be accepted.

Invalid Input:

identified classes of invalid input must be rejected.

Functions:

identified functions must be exercised.

Dept Of CSE, MVJCE

Page 43

Continuous Neighbor Discovery in Asynchronous Senor Network Output:

identified classes of application outputs must be exercised.

Systems/Procedures: interfacing systems or procedures must be invoked. Organization and preparation of functional tests is focused on requirements, key functions, or special test cases. In addition, systematic coverage pertaining to identify Business process flows; data fields, predefined processes, and successive processes must be considered for testing. Before functional testing is complete, additional tests are identified and the effective value of current tests is determined.

System Test System testing ensures that the entire integrated software system meets requirements. It tests a configuration to ensure known and predictable results. An example of system testing is the configuration oriented system integration test. System testing is based on process descriptions and flows, emphasizing pre-driven process links and integration points.

White Box Testing White Box Testing is a testing in which in which the software tester has knowledge of the inner workings, structure and language of the software, or at least its purpose. It is purpose. It is used to test areas that cannot be reached from a black box level.

Black Box Testing Black Box Testing is testing the software without any knowledge of the inner workings, structure or language of the module being tested. Black box tests, as most other kinds of tests, must be written from a definitive source document, such as specification or requirements document, such as specification or requirements document. It is a testing in which the software under test is treated, as a black box .you cannot ―see‖ into it. The test provides inputs and responds to outputs without considering how the software works.

8.2 Unit Testing Unit testing is usually conducted as part of a combined code and unit test phase of the software lifecycle, although it is not uncommon for coding and unit testing to be conducted as two distinct phases.

Test strategy and approach Field testing will be performed manually and functional tests will be written in detail.

Test objectives  

All field entries must work properly. Pages must be activated from the identified link.

Dept Of CSE, MVJCE

Page 44

Continuous Neighbor Discovery in Asynchronous Senor Network

 The entry screen, messages and responses must not be delayed. Features to be tested  

Verify that the entries are of the correct format No duplicate entries should be allowed



All links should take the user to the correct page.

8.2 Integration Testing Software integration testing is the incremental integration testing of two or more integrated software components on a single platform to produce failures caused by interface defects. The task of the integration test is to check that components or software applications, e.g. components in a software system or – one step up – software applications at the company level – interact without error.

Test Results: All the test cases mentioned above passed successfully. No defects encountered.

8.3 Acceptance Testing User Acceptance Testing is a critical phase of any project and requires significant participation by the end user. It also ensures that the system meets the functional requirements.

Test Results: All the test cases mentioned above passed successfully. No defects encountered.

Dept Of CSE, MVJCE

Page 45

Continuous Neighbor Discovery in Asynchronous Senor Network

CHAPTER 9

APPLICATIONS 1. Military Applications Because most of the elemental knowledge of sensor networks is basic on the defence application at the beginning, especially two important programs the Distributed Sensor Networks (DSN) and the Sensor Information Technology (SenIT) form the Defence Advanced Research Project Agency (DARPA), sensor networks are applied very successfully in the military sensing. Now wireless sensor networks can be an integral part of military command, control, communications, computing, intelligence, surveillance, reconnaissance and targeting systems. In the battlefield context, rapid deployment, self-organization, fault tolerance security of the network should be required. The sensor devices or nodes should provide following services:  Monitoring friendly forces, equipment and ammunition  Battlefield surveillance  Reconnaissance of opposing forces  Targeting  Battle damage assessment  Nuclear, biological and chemical attack detection reconnaissance

2. Environmental Applications Nowadays sensor networks are also widely applied in habitat monitoring, agriculture research, fire detection and traffic control. Because there is no interruption to the environment, sensor networks in environmental area is not that strict as in battlefield. Bush Fire Response: A low cost distributed sensor network for environmental monitor and disaster response. An integrated network of sensors combining on the ground sensors monitoring local moisture levels, humidity, wind speed and direction, together with satellite imagery and longer term meteorological forecasting will enable the determination of fire risk levels in targeted regions as well as valuable information on probable fire direction. Such a network will provide valuable understanding of bushfire development and most importantly assist authorities in organizing a coordinated disaster response that will save lives and property by providing early warning for high risk areas. Fancy Californian Winemaking: A project from Intel (the wireless vineyard). "…Imagine smart farmlands where literally every...vine plant will have its own sensor...making sure that it gets exactly the right nutrients, exactly the right watering. Imagine the impact it could have on difficult areas of the world for agricultural purposes." Intel Chief Technology Officer Pat Gel singer said. In this project Berkeley motes are installed in the test site — an Oregon, USA vineyard located in a region famous for Dept Of CSE, MVJCE

Page 46

Continuous Neighbor Discovery in Asynchronous Senor Network world-class pinot noir wine. They monitor temperature throughout the vineyard. Each mote in the vineyard currently takes one temperature reading per minute and stores the results. The mote records the highest and lowest temperature readings for each hour of the day. In the future these sensors may also act upon the environment. Imagine sensors that could monitor soil moisture to irrigate only the sections that needed it, or monitor crops to keep them free from pests and diseases. Information gathered by sensor networks could guide irrigation or harvesting to improve quality, providing vineyard owners and managers a better return on their investment. This potential extends to other crops where growers could use motes to maximize yields. The further aim of this project with the help of sensor networks the owner of vineyard can manage the vineyard works more efficiently and automatically.

FIGURE 8.1: THE WIRELESS VINEYARD

3. Health Applications Sensor networks are also widely used in health care area. In some modern hospital sensor networks are constructed to monitor patient physiological data, to control the drug administration track and monitor patients and doctors and inside a hospital. In spring 2004 some hospital in Taiwan even use RFID basic of above named applications to get the situation at first hand.

4. Long-Term Nursing Home This application is focus on nursing of old people. In the town farm cameras, pressure sensors, orientation sensors and sensors for detection of muscle activity construct a complex network. They support fall detection, unconsciousness detection, vital sign monitoring and dietary/exercise monitoring. These applications reduce personnel cost and rapid the reaction of emergence situation.

5. Home Application Along with developing commercial application of sensor network it is no so hard to image that Home application will step into our normal life in the future. Many concepts are already Dept Of CSE, MVJCE

Page 47

Continuous Neighbor Discovery in Asynchronous Senor Network designed by researcher and architects, like ―Smart Environment: Residential Laboratory‖ and ―Smart Kindergarten‖ Some are even realized. Let’s see the concept ―the intelligent home‖:

FIGURE 8.2: INTEL DIGITAL HOMING

After one day hard work you come back home. At the front door the sensor detects you are opening the door, then it will tell the electric kettle to boil some water and the air condition to be turned on. You sit in the sofa lazily. The light on the table and is automatically on because the pressure sensor under the cushion has detected your weight. The TV is also on. One sensor has monitored that you are sitting in front of it. ―I’m simply roasting. The summer time in Asia is really painful.‖ You think and turn down the temperature of the air condition. At the sometime five sensors in every corner in the room are measuring the temperature. Originally there is also sensor in the air condition. But it can only get the temperature at the edge of the machine not the real temperature in the room. So the sensors in the room will be detecting the environment. The air condition will turn to sleep mode until all the sensors get the right temperature. The light on the corridor, in the washing groom and balcony are all installed with sensor and they can be turned on or turn out automatically. Even the widows are also attached with vibratory sensors connected to police to against thief. How nice! You become nurse and bodyguard at the same time.

Dept Of CSE, MVJCE

Page 48

Continuous Neighbor Discovery in Asynchronous Senor Network

CHAPTER 10

Input Design and Output Design 10.1 Input Design The input design is the link between the information system and the user. It comprises the developing specification and procedures for data preparation and those steps are necessary to put transaction data in to a usable form for processing can be achieved by inspecting the computer to read data from a written or printed document or it can occur by having people keying the data directly into the system. The design of input focuses on controlling the amount of input required, controlling the errors, avoiding delay, avoiding extra steps and keeping the process simple. The input is designed in such a way so that it provides security and ease of use with retaining the privacy. Input Design considered the following things:’ 1. What data should be given as input? 2. How the data should be arranged or coded? 3. The dialog to guide the operating personnel in providing input. 4. Methods for preparing input validations and steps to follow when error occur. 

OBJECTIVES 1. Input Design is the process of converting a user-oriented description of the input into a computer-based system. This design is important to avoid errors in the data input process and show the correct direction to the management for getting correct information from the computerized system. 2. It is achieved by creating user-friendly screens for the data entry to handle large volume of data. The goal of designing input is to make data entry easier and to be free from errors. The data entry screen is designed in such a way that all the data manipulates can be performed. It also provides record viewing facilities. 3. When the data is entered it will check for its validity. Data can be entered with the help of screens. Appropriate messages are provided as when needed so that the user Will not be in maize of instant. Thus the objective of input design is to create an input layout that is easy to follow.

10.2 Output Design A quality output is one, which meets the requirements of the end user and presents the information clearly. In any system results of processing are communicated to the users and to other system through outputs. In output design it is determined how the information is to be displaced for immediate need and also the hard copy output. It is the most important and Dept Of CSE, MVJCE

Page 49

Continuous Neighbor Discovery in Asynchronous Senor Network direct source information to the user. Efficient and intelligent output design improves the system’s relationship to help user decision-making. 1. Designing computer output should proceed in an organized, well thought out manner; the right output must be developed while ensuring that each output element is designed so that people will find the system can use easily and effectively. When analysis design computer output, they should Identify the specific output that is needed to meet the requirements. 2. Select methods for presenting information. 3. Create document, report, or other formats that contain information produced by the system. The output form of an information system should accomplish one or more of the following objectives. ? Convey information about past activities, current status or projections of the? Future ? Signal important events, opportunities, problems, or warnings. ? Trigger an action. ?

10.3 Experimental Results 10.3.1 Server In server side forum there is a checkbox which allows the user to choose whether he wants to go with hidden link or without hidden link.

Dept Of CSE, MVJCE

Page 50

Continuous Neighbor Discovery in Asynchronous Senor Network FIG 10.1 SHOWS THE SERVER SIDE WHEN USER CHOOSES THE PATH WITHOUT HIDDEN LINK

FIG 10.2 SHOWS THE SERVER SIDE WHEN USER CHOOSES THE PATH WITH HIDDEN LINK

10.3.2 Client In the client side we will choose the path where we have to send our data. For this the user has to click on the click button .After clicking the button a dialogue box will pop up from which the user can choose its path very easily as shown in fig 7.3

Dept Of CSE, MVJCE

Page 51

Continuous Neighbor Discovery in Asynchronous Senor Network

FIG 10.3: AFTER CLICKING THE BUTTON A DIALOGUE BOX WILL POP UP FROM WHICH THE USER CAN CHOOSE ITS PATH VERY EASILY

Dept Of CSE, MVJCE

Page 52

Continuous Neighbor Discovery in Asynchronous Senor Network FIG 10.4: SHOWS THE PATH IS SET WHICH IS CHOSEN BY THE USER

10.3.3 Routers Here we can calculate the service time and select a node to find the feasible path. To calculate the service time we are using two routers so that we can compare which Route is best.

Dept Of CSE, MVJCE

Page 53

Continuous Neighbor Discovery in Asynchronous Senor Network

FIG 10.4: SHOWS THE ROUTER1

Dept Of CSE, MVJCE

Page 54

Continuous Neighbor Discovery in Asynchronous Senor Network

FIG 10.5 SHOWS ROUTER2

10.3.4 Transferring and Receiving of a File After selecting the node in router we will send our file from server to client. We can perform by clicking on the transfer button.

Dept Of CSE, MVJCE

Page 55

Continuous Neighbor Discovery in Asynchronous Senor Network FIG 10.6: TRANSFERRING OF FILES

FIG 10.7: FILE IS RECEIVED

FIG10.8: SHOWS THE CURRENT PATH FROM SOURCE TO DESTINATION Dept Of CSE, MVJCE

Page 56

Continuous Neighbor Discovery in Asynchronous Senor Network

Dept Of CSE, MVJCE

Page 57

Continuous Neighbor Discovery in Asynchronous Senor Network

FIG 10.8: SHOWS THE SERVICE TIME FOR ROUTER1

Dept Of CSE, MVJCE

Page 58

Continuous Neighbor Discovery in Asynchronous Senor Network

FIG 10.9: SHOWS THE SERVICE TIME FOR ROUTER2

Dept Of CSE, MVJCE

Page 59

Continuous Neighbor Discovery in Asynchronous Senor Network

FIG 10.10: RECEIVED FILE LOCATION

Dept Of CSE, MVJCE

Page 60

Continuous Neighbor Discovery in Asynchronous Senor Network

CHAPTER 11

CONCLUSION We exposed a new problem in wireless sensor networks, referred to as ongoing continuous neighbor discovery. We argue that continuous neighbor discovery is crucial even if the sensor nodes are static. If the nodes in a connected segment work together on this task, hidden nodes are guaranteed to be detected within a certain probability P and a certain time period T, with reduced expended on the detection. We showed that our scheme works well if every node connected to a segment estimates the in-segment degree of its possible hidden neighbors. We then presented a continuous neighbor discovery algorithm that determines the frequency with which every node enters the HELLO period. We simulated a sensor network to analyze our algorithms and showed that when the hidden nodes are uniformly distributed in the area.

Dept Of CSE, MVJCE

Page 61

Continuous Neighbor Discovery in Asynchronous Senor Network

BIBLIOGRAPHY Good Teachers are worth more than thousand books, we have them in Our Department References Made From: 1. 2. 3. 4. 5. 6. 7.

Beginning ASP.NET 4: in C# and VB by ImarSpaanjaars. ASP.NET 4 Unleashed by Stephen Walther. Programming ASP.NET 3.5by Jesse Liberty, Dan Maharry, Dan Hurwitz. Data Communications and Networking, by Behrouz A Forouzan. Computer Networking: A Top-Down Approach, by James F. Kurose. Operating System Concepts, by Abraham Silberschatz. Beginning ASP.NET 3.5 in C# 2008: From Novice to Professional, Second Editionby Matthew MacDonald. 8. Amazon Web Services (AWS), Online at http://aws. amazon.com. 9. Google App Engine, Online at http://code.google.com/appengine/. 10. Microsoft Azure, http://www.microsoft.com/azure/. 11. S. Vasudevan, J. Kurose, and D. Towsley, .On neighbor discovery in wireless networks with directional antennas,.inINFOCOM, vol. 4, 2005, pp. 2502.2512. 12. R. Madan and S. Lall, .An energy-optimal algorithm for neighbor discovery in wireless sensor networks,.Mob. Netw. Appl., vol. 11, no. 3, pp. 317.326, 2006. 13. M. J. McGlynn and S. A. Borbash, .Birthday protocols for low energy deployment and _exibleneighbor discovery in ad hoc wireless networks,.inMobiHoc: Proceedings of the 2nd ACM International Symposium on Mobile Ad Hoc Networking and Computing. New York, NY, USA: ACM Press, 2001, pp. 137.145. 14. D. Baker and A. Ephremides, .The architectural organization of a mobile radio network via a distributed algorithm,.inIEEE Transactions on Communications, vol. 29, Nov. 1981, pp. 1694.1701. 15. A. Keshavarzian and E. Uysal-Biyikoglu, .Energy-ef_cient link assessment in wireless sensor networks,. in INFOCOM, 2004 16. ―21 ideas for the 21st century,‖ Business Week, pp. 78-167, Aug.39, 1999. 17. Akyildiz, I.F.,W. Su, Y. Sankarasubramaniam, E. Cayirci, "A Survey on Sensor 18. Networks",IEEE Communications Magazine, August, 102-114(2002). 19. Chee-Yee Chong; Kumar, S.P., "Sensor networks: Evolution, opportunities, and challenges,"Proc IEEE, August 2003 20. Container and Truck Trailer Security Project, Cambridge Systematics, Inc. Parsons 21. Brinckerhoff Quade and Douglas, Inc 22. Intel wireless vineyard, www.intel.com/technology/techresearch/research/ rs01031.htm

Dept Of CSE, MVJCE

Page 62

Continuous Neighbor Discovery in Asynchronous Senor Network 23. J. Burrel, T. Brooke and R. Beckwith, ―Vineyard Computing: Sensor Networks in Agriculture Production‖, Pervasive Computing, IEEE Volume 3, Issue 1, Jan.-March 2004 Page(s):38 - 45 24. Polly Huang, ―Sensor Networks Solutions to Real Life Problems‖ http://cc.ee.ntu.edu.tw/ ~phuang 25. I.A. Essa, Ubiquitous sensing for smart and aware environments, IEEE Personal Communications (Oct. 2000) 47-49 26. M. Srivastava, R. Muntz, M. Potkonjak, ―Smart kindergarten: sensor-based wireless networks for smart developmental problem-solving enviroments‖, Proceedings of the 7th annual international conference on Mobile computing and networking 27. ―The Intelligent Home Project‖, http://dis.cs.umass.edu/research/ihome

Sites Referred: http://www.asp.net.com http://www.dotnetspider.com/ http://www.dotnetspark.com http://www.almaden.ibm.com/software/quest/Resources/ http://www.computer.org/publications/dlib http://www.developerfusion.com/

Dept Of CSE, MVJCE

Page 63

Continuous Neighbor Discovery in Asynchronous Senor Network

Abbreviations: TCP/IP CLR

 

Transmission Control Protocol/Internet Protocol Common Language Runtime

CLS Common Language Specification

Dept Of CSE, MVJCE

Page 64

View more...

Comments

Copyright ©2017 KUPDF Inc.
SUPPORT KUPDF