Local Broadcast Algorithms in Wireless Ad Hoc Networks: Reducing the Number of Transmissions Abstract: There are two main approaches, static and dynamic, to broadcast algorithms in wireless ad hoc networks. In the static approach, local algorithms determine the status (forwarding/nonforwarding) of each node proactively based on local topology information and a globally known priority function. In this paper, we first show that local broadcast algorithms based on the static approach cannot achieve a good approximation factor to the optimum solution (an NP-hard problem). However, we show that a constant approximation factor is achievable if (relative) position information is available. In the dynamic approach, local algorithms determine the status of each node “on-the-fly” based on local topology information and broadcast state information. Using the dynamic approach, it was recently shown that local broadcast algorithms can achieve a constant approximation factor to the optimum solution when (approximate) position information is available. However, using position information can simplify the problem. Also, in some applications it may not be practical to have position information. Therefore, we wish to know whether local broadcast algorithms based on the dynamic approach can achieve a constant approximation factor without using position information. We answer this question in the positive—we design a local broadcast algorithm in which the status of each node is decided “on-the-fly” and prove that the algorithm can achieve both full delivery and a constant approximation to the optimum solution. Architecture: Algorithm: Hybrid Algorithm: The proposed broadcast algorithm is a hybrid algorithm, hence every node that broadcasts the message may select some of its neighbors to forward the message. In our proposed broadcast algorithm, every broadcasting node selects at most one of its neighbors. A node has to broadcast the message if it is selected to forward. Other nodes that are not selected have to decide whether or not to broadcast on their own. This decision is made based on a self-pruning condition called the coverage condition. Existing System: The existing local broadcast algorithms can be classified based on whether the forwarding nodes are determined statically (based on only local topology information) or dynamically (based on both local topology and broadcast state information). In the static approach, the distinguishing feature of local algorithms over other broadcast algorithms is that using local algorithms any local topology changes can affect only the status of those nodes in the vicinity. Therefore, local algorithms can provide scalability as the constructed CDS can be updated, effciently. The existing local algorithms in this category typically use a priority function known by all nodes in order to determine the status of each node. In this paper we show that, using only local topology information and a globally known priority function, the local broadcast algorithms based on the static approach are not able to guarantee a good approximation factor to the optimum solution (i.e., MCDS). On the other hand, we show that local algorithms based on the static approach can achieve interesting results such as a constant approximation factor and shortest path preservation if the nodes are provided with position information. Disadvantages: 1. Minimum number of transmission will be Possible. 2. All the Nodes have been static. 3. Data loss problem occurred. Proposed System: In the dynamic approach, the status of each node (hence the CDS) is determined “on-the-fly” during the broadcast progress. Using this approach, the constructed CDS may vary from one broadcast instance to another even when the whole network topology and the source node remain unchanged. Consequently, the broadcast algorithms based on the dynamic approach typically have small maintenance cost and are expected to be robust against node failures and network topology changes. Many local broadcast algorithms in this category use local neighbor information to reduce the total number of transmissions and to guarantee full delivery (assuming no loss at the MAC/PHY layer). If only selected node will be forward the message. Advantages: 1. Local broadcast algorithms in reducing the total number of transmissions. 2. Full delivery and constant approximation to the optimum solution. 3. Avoid forwarding/rebroadcasting a message. 4. Hybrid algorithm. 5. Node’s are dynamic. 6. Calculate Maximum and Minimum transmission range of the nodes in the network. Modules: 1) Node.java : This module contains node information such as nodeid,position in the network and messages list received from the sender. 2) CanvasScreen : This module is a graphical user interface which display all movable nodes. Colors of nodes will be changed while sending and receiving data. This module contains refrences of nodes. Upon reset this module removes all nodes information and can be ready to create new nodes topology. 3) Broadcast : This module continuously receive data from all sender nodes and transmit to receiver nodes. This module receive all working nodes information from CanvasScreen. This module is responsible to extract ids from braodcasting nodes and the ids of reciving nodes from the message list and this module determine the sender has already broadcast this message earlier then it will remove that message from list. If not broadcast then it will update message list to transmit to all receiver nodes. 4) sender Node : This module is responsible to broadcast messages to receiver nodes. Before broadcasting it will add it id and receiver id to message list and the broadcast message. All messages will be accepted by Broadcast module for further processing. 5) Receiver Node : This node receiver message from sender node and update itself with new message and its arrival time,packet size and sender id. 6) MoveThread : This module place all nodes at random position and every second it will chnage node position and update same informatiuon to node refrences and other modules to determine position of nodes. 7) ViewRouting : This module helps us to view and trace all transmission happens between receiver and sender nodes. Using this module we can identify at which time transmission happen packet size,receiver id and sender id. 8)Login : This module allows only authorize users to access this application. System Requirement: Hardware requirements: Processor : Any Processor above 500 MHz. Ram : 128Mb. Hard Disk : 10 Gb. Compact Disk : 650 Mb. Input device : Standard Keyboard and Mouse. Output device : VGA and High Resolution Monitor Software requirements: Operating System : Windows Family. Language : JDK 1.5 Data Bases : my sql Front End : Java Swing