Protective Multi Packet Randomized Transmission for the Accumulation of Information

Embed Size (px)

Citation preview

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    1/54

    PROTECTIVE MULTI PACKET

    RANDOMIZED TRANSMISSION

    FOR THE ACCUMULATION OF

    INFORMATION

    A PROJECT REPORT

    Submitted by

    KIRUTHIKA. S (070105102030)

    MANOHAR RAJKUMAR. J (070105102041)

    MANOJ. A (070105102042)

    RAMYA. A (070105102065)

    In partial fulfillment for the award of the degree

    of

    BACHELOR OF ENGINEERING

    in

    COMPUTER SCIENCE AND ENGINEERING

    COIMBATORE INSTITUTE OF ENGINEERING AND TECHNOLOGY

    ANNA UNIVERSITY OF TECHNOLOGY

    COIMBATORE 641047

    APRIL 2011

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    2/54

    ANNA UNIVERSITY OF TECHNOLOGY

    COIMBATORE 641047

    BONAFIDE CERTIFICATE

    Certified that this project report PROTECTIVE MULTI PACKET

    RANDOMIZED TRANSMISSION FOR THE ACCUMULATION

    OF INFORMATION is the bonafide work of KIRUTHIKA.S,

    MANOHAR RAJKUMAR.J, MANOJ.A, RAMYA.A who carried out

    the project work under my supervision.

    SIGNATURE SIGNATURE

    Dr. S. Narmadha B.E., M. Tech., Ph. D., Dr. S. Narmadha B.E., M. Tech., Ph. D.,

    SUPERVISIOR HEAD OF DEPARTMENT

    Submitted for the Project Viva-Voce examination held on .

    Internal Examiner External Examiner

    Associate Professor

    Computer Science and Engineering

    Coimbatore Institute of Engineering

    and Technology,

    Narasipuram Post,

    Thondamuthur (via),

    Coimbatore- 641109.

    Associate Professor

    Computer Science and Engineering

    Coimbatore Institute of Engineering

    and Technology,

    Narasipuram Post,

    Thondamuthur (via),

    Coimbatore- 641109.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    3/54

    ACKNOWLEDGEMENT

    Our heart is filled with gratitude to Almighty God for empowering us with the

    courage, wisdom and strength to carry out this project work successfully.

    We would like to record our sincere indebtedness and gratitude to our

    renowned Director, Dr. K. A. Chinnaraju, M.Sc., M.B.A., Ph.D., for his

    noteworthy efforts to enhance our professional dexterity and co-curricular

    excellence.

    We are indebted to our respected Principal, Dr.N.Nagarajan, M.E.,

    Ph.D., for providing us with necessary facilities to carry out our project work.

    We wish to express our sincere thanks to our Project Coordinator

    Mrs. J.A.M. Rexie, M.E., Lecturer, Department of Computer Science and

    Engineering, for kind support towards our project.

    We express our sincere thanks to our Head of the Department and our

    Guide Dr. S. Narmadha B.E., M.Tech., Ph.D., for her timely help, co-operation

    and valuable suggestions.

    Finally, we extend our thanks to the management, faculty members, parents and

    our student friends for their support and encouragement.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    4/54

    CHAPTER NO. TITLE PAGE NO.

    List of Figures ii

    List of Abbreviations iv

    1 Introduction

    1.1 Objective 1

    2 System Analysis

    2.1 Existing System 2

    2.1.1 Limitations of Existing System 2

    2.2 Proposed System 2

    2.2.1 Advantages of Proposed System 3

    2.3 Feasibility Study 3

    2.3.1 Technical Feasibility 4

    2.3.2 Behavioral Feasibility 4

    2.3.3 Economical Feasibility 4

    3 System Specification

    3.1 Hardware Requirements 5

    3.2 Software Requirements 5

    4 Software Description

    4.1 Java and Networks 6

    4.1.1 Socket Overview 6

    4.1.2 Client/Server 6

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    5/54

    4.1.3 Reserved Sockets 7

    4.1.4 Instance Methods 7

    4.1.5 TCP/IP Client Sockets 8

    4.1.6 TCP/IP Server Sockets 9

    4.2 JDBC 10

    4.3 Design Overview 10

    4.4 Use Case Diagram 11

    4.5 Data Flow Diagram 11

    4.6 Class Diagram 13

    4.7 Sequence Diagram 13

    4.8 Collaboration Diagram 14

    4.9 Activity Diagram 14

    4.10 Architectural Diagram 15

    4.11 E-R Diagram 15

    5 Project Description

    5.1 Problem Definition 16

    5.1.1 Network Topology 18

    5.1.2 Mesh Networks 18

    5.1.3 Security Leaks in WSN 19

    5.1.3.1 Compromised Node 19

    5.1.3.2 Denial of Service 20

    5.1.4 Multi-Path Routing Algorithm 21

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    6/54

    5.2 Project Overview 22

    5.2.1 Normal Routing of Information 23

    5.3 Module Description 23

    5.3.1 Node Deployment 23

    5.3.2 Randomized Multi-path Approach 23

    5.3.3 Message Transmission 23

    6 System Testing

    6.1 Unit Testing 24

    6.1.1 Test Strategy and Approach 24

    6.1.2 Test Results 24

    6.2 Functional Test 25

    6.2.1 Test Results 25

    6.3 Integration Testing 26

    6.3.1 Test Results 26

    7 Implementation 27

    8 Conclusion and Future Enhancements

    8.1 Conclusion 28

    8.2 Future Enhancement 28

    9 Appendix

    9.1 Source Code 29

    9.2 Screen Shots 37

    10 References 44

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    7/54

    i

    ABSTRACT

    The classic multi-path routing approaches are vulnerable to various attacks

    like compromised node and denial of service attacks, mainly due to their

    deterministic nature. These attacks allow the third party intruder to acquire the

    routing algorithm. The adversary can compute the routes known to the source due

    to the deterministic nature of the multi-path routing algorithm. Once the intruder

    finds out the technique to know the paths traversed by the packets, he can either

    access the information, which was transmitted, to misuse it which is the

    compromised node attack, or can create a barrier in restricting the further

    traversing of the packets leading to denial of service attack. These threats provide

    opportunity for the information sent over those routes to be vulnerable. Hence

    there is a need for a protective data delivery mechanism that can avoid black holes

    formed by these attacks. It should also provide a higher success probability rate. In

    this system a data delivery mechanism has been proposed that generates

    randomized multi-path routes. The success of this technique is that the routes taken

    by the shares of different packets change over time. It means that when a packet

    traverses through a node once, it does not travel through the same node the nexttime. So even if the routing algorithm becomes known to the adversary, the

    possible routes to be taken in order to reach the destination, cannot be pin pointed.

    The generated routes are also highly dispersive and energy efficient. The security

    and energy performance of the proposed schemes are also analyzed and

    investigated analytically. A formulation has been done on an optimization problem

    to minimize the end-to-end energy consumption under given security constraints.

    The validity of these mechanisms is verified by extensive simulations.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    8/54

    ii

    List of Figures

    Figure No. Figure Name Page No.

    4.1 Use Case Diagram 11

    4.2 Data Flow Diagram For Topology Construction 11

    4.3 Dataflow Diagram For Random Path Selection 12

    4.4 Dataflow Diagram For Message Transmission 12

    4.5 Class Diagram 13

    4.6 Sequence Diagram 13

    4.7 Collaboration Diagram 14

    4.8 Activity Diagram 14

    4.9 Architectural Diagram 15

    4.10 E-R Diagram 15

    5.1 Wireless Sensor Networks 17

    5.2 Mesh Networks 19

    5.3 Compromised Node in a Network 20

    5.4 Denial of Service Attack 21

    5.5 Multi path Routing Algorithm 22

    9.1 Get Number of Nodes 37

    9.2 Get Node Information 37

    9.3 Node Successfully Inserted 38

    9.4 All Nodes Successfully Added 38

    9.5 Path Cost 38

    9.6 Cost Added Successfully 39

    9.7 Path Cost 39

    9.8 Link Already Available 39

    9.9 Login Form 40

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    9/54

    iii

    9.10 Successful Login 40

    9.11 Node Window 40

    9.12 Path Generation 41

    9.13 Sending Message 41

    9.14 Number of Packets 41

    9.15 Total Number of Paths 42

    9.16 Transmission of First Packet 42

    9.17 Transmission of Second Packet 42

    9.18 Transmission of Last Packet 42

    9.19 Message Transmission 43

    9.20 Received Message 43

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    10/54

    iv

    List of Abbreviations

    ABBREVIATIONS DESCRIPTION

    AWT Application Window Toolkit

    CASE Computer Aided Software Engineering

    CN Compromised Nodes

    CRC Class Responsibility Collaborator

    DNS Domain Name Server

    DoS Denial of Service

    FTP File Transfer Protocol

    HTTP Hyper Text Transfer Protocol

    IP Internet Protocol

    ISP Internet Service Provider

    JDBC Java Database Connectivity

    JDK Java Development Kit

    ODBC Open Database connectivity

    OMT Object Modeling Technique

    RDBMS Relational Database Management System

    SQL Structured Query Language

    TCP Transmission Control Protocol

    UDP User Datagram Protocol

    WSN Wireless Sensor Networks

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    11/54

    1

    1. INTRODUCTION

    1.1 OBJECTIVE

    To develop a system that provides a protective multi-packet transmission over

    the network. The developed system must be eradicated from the common attacks that

    occur in the existing system. This can be achieved by splitting up of the message into

    various shares of packets. This mechanism offers the required security that has not

    been implemented in existing system. The proposed system has been developed on

    this major factor in order to provide a secured communication link between the sender

    and the receiver. The individual packets are then transmitted through the various

    routes, available in the network, in a randomized and dispersive manner. This

    provides a secured communication channel. So the communication in the proposedsystem is free from attacks that were common in the existing system. Hence the

    security for the overall system is enhanced.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    12/54

    2

    2. SYSTEM ANALYSIS

    2.1 EXISTING SYSTEM

    In this system, special interest has been taken in combating two types of attacks:

    compromised node (CN) and denial of service (DoS). In the CN attack, an adversary

    physically compromises a subset of nodes to eavesdrop information, whereas in the DoS

    attack, the adversary interferes with the normal operation of the network by actively

    disrupting, changing, or even paralyzing the functionality of a subset of nodes. These two

    attacks are similar in the sense that they both generate black holes: areas within which the

    adversary can either passively intercept or actively block information delivery. Due to the

    unattended nature of WSNs, adversaries can easily produce such black holes. Severe CN

    and DoS attacks can disrupt normal data delivery between sensor nodes and the sink, or

    even partitioning the topology.

    A conventional cryptography-based security method cannot alone provide

    satisfactory solutions to these problems. This is because, by definition, once a node is

    compromised, the adversary can always acquire the encryption/decryption keys of that

    node, and thus can intercept any information passed through it. Likewise, an adversary

    can always perform DoS attacks (e.g., jamming) even if it does not have any knowledge

    of the underlying cryptosystem. Once the intruder finds out the technique to know the

    paths traversed by the packets, the information that was transmitted can be accessed, to

    misuse it. This is called as compromised node attack. Also the adversary can create a

    barrier in restricting the further traversing of the packets leading to denial of service

    attack. This threat prone all the information sent over these routes to be vulnerable to such

    attacks.

    2.1.1 Limitations of Existing System

    Generate black holes Disrupt normal data delivery between sensor nodes

    2.2 PROPOSED SYSTEM

    In this system, a randomized multipath routing algorithm has been proposed that

    can overcome the compromised node and denial of service attacks. In this algorithm,

    multiple paths are computed in a randomized way. Each time an information packet needs

    to be sent, such that the set of routes taken by various shares of different packets keep

    changing over time. As a result, a large number of routes can be potentially generated for

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    13/54

    3

    each source and destination. To intercept different packets, the adversary has to

    compromise or jam all possible routes from the source to the destination, which is

    practically not possible. Because routes are now randomly generated, they may no longer

    be node-disjoint. However, the algorithm ensures that the randomly generated routes are

    as dispersive as possible, i.e., the routes are geographically separated as far as possible

    such that they have high likelihood of not simultaneously passing through a black hole.

    Solution for multiple collaborating in black holes is implemented. Considering the

    stringent constraint on energy consumption in WSN, the main challenge in this design is

    to generate highly dispersive random routes at low energy cost.

    A naive algorithm of generating random routes, such as Wanderer scheme (a pure

    random-walk algorithm), only leads to long paths (containing many hops, and therefore,

    consuming lots of energy) without achieving good depressiveness. Due to security

    considerations, it is also required that the route computation be implemented in a

    distributed way, such that the final route represents the aggregate decision of all the nodes

    participating in the route selection. As a result, a small number of colluding/compromised

    nodes cannot dominate the selection result.

    2.2.1 Advantages of Proposed System

    Multiple paths are computed in a randomized way each time aninformation packet needs to be sent

    No longer paths need to be disjoint2.3 FEASIBILITY STUDY

    Feasibility study deals with analyzing the worthiness of the problem and the

    possibility of solving the problem. These types of studies were conducted and the result

    was satisfactory. This study is taken in time constraints and normally culminates in a

    written and oral feasibility report. The feasibility analysis is done on the following

    perspectives,

    1. Technical feasibility

    2. Behavioral feasibility

    3. Economical feasibility

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    14/54

    4

    2.3.1 Technical Feasibility

    The technical feasibility centers on an existing computer system (hardware and

    software) and to what extent it can support the proposed system. . The technology should

    be within the state of art, where the defect can be reduced to a level matching the

    application.

    2.3.2 Behavioral Feasibility

    The proposed system is not totally new form of the existing system to cause

    discomfort to the client. The proposed system is user friendly and has improved the

    throughput.

    2.3.3 Economical Feasibility

    It is the most frequently used technique for evaluating the effectiveness of the

    prepared system. This is called as cost or benefit analysis. It is used to determine the

    benefits and savings that are expected from a proposed system and compare it with costs.

    If the benefits overweigh the cost, then the decision is taken to the design phase and

    implements the system.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    15/54

    5

    3. SYSTEM SPECIFICATION

    The requirement analysis is made on the project to understand the requirements

    and organizes them into related subsets. This phase explores each requirement in

    relationship to others and also examines requirement for consistency, omissions and

    ambiguity.

    3.1 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

    3.2 Software requirements

    Operating System Windows 95,98, XP, Vista, 7.

    Language JDK 1.5

    Data Bases Microsoft SQL ServerFront End Java Swing

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    16/54

    6

    4. SOFTWARE DESCRIPTION

    4.1 JAVA and NETWORKS

    Java was conceived by James Gosling, Patrick Naughton, Chris Wrath, Ed Frank,

    and Mike Sheridan at Sun Micro system. It is an platform independent programming

    language that extends its features wide over the network. Java2 version introduces an new

    component called Swing. Swing is a set of classes that provides more power and

    flexible components than are possible with AWT. Its a light weight package, as they are

    not implemented by platform-specific code. Related classes are contained in javax.swing

    and its sub packages, such as javax.swing.tree. Components involved in the Swing have

    more capabilities than those of AWT

    4.1.1 Socket Overview

    A network socket is a lot like an electrical socket. Various plugs around the

    network have a standard way of delivering their payload. Anything that understands the

    standard protocol can plug in to the socket and can be communicated.

    Internet protocol (IP) is a low-level routing protocol that breaks data into small

    packets and sends them to an address across a network, which does not guarantee to

    deliver the packets to the destination.

    Transmission Control Protocol (TCP) is a higher-level protocol that manages to

    reliably transmit data. A third protocol, User Datagram Protocol (UDP), sits next to TCP

    and can be used directly to support fast, connectionless, unreliable transport of packets.

    4.1.2 Client/Server

    A server is anything that has some resource that can be shared. There are

    compute servers, which provide computing power; print servers, which manage a

    collection of printers; disk servers, which provide networked disk space; and web servers,

    which store web pages. A client is simply any other entity that wants to gain access to a

    particular server.

    In Berkeley sockets, the notion of a socket allows a single computer to serve

    many different clients at once, as well as serving many different types of information.

    This feat is managed by the introduction of a port, which is a numbered socket on aparticular machine. A server process is said to listen to a port until a client connects to

    it. A server is allowed to accept multiple clients connected to the same port number,

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    17/54

    7

    although each session is unique. To manage multiple client connections, a server process

    must be multithreaded or have some other means of multiplexing the simultaneous I/O.

    4.1.3 Reserved Sockets

    Once connected, a higher-level protocol ensures, which is dependent on which

    port the user is using. TCP/IP reserves the lower, 1,024 ports for specific protocols. Port

    number 21 is for FTP, 23 is for Telnet, 25 is for E-mail, 79 is for finger, 80 is for HTTP,

    119 is for Netnews etc.. It is up to each protocol to determine how a client should interact

    with the port.

    Java supports TCP/IP both by extending the already established stream I/O

    interface. Java supports both the TCP and UDP protocol families. TCP is used for reliable

    stream-based I/O across the network. UDP supports a simpler, faster, point-to-point

    datagram-oriented model.

    4.1.4 Instance Methods

    The InetAddress class also has several other methods, which can be used on the

    objects returned by the methods just discussed. Here are some of the most commonly

    used.

    Boolean equals(Object other) Returns true if this object has the same Internet

    address as other.

    byte[ ] getAddress() Returns a byte array that represents the objects

    Internet address in network byte order.

    String getHostAddress() Returns a string that represents the host address

    associated with the InetAddress object.

    String getHostName() Returns a string that represents the host nameassociated with the InetAddress object.

    boolean isMulticastAddress() Returns true if this Internet address is a multicast

    address. Otherwise, it returns false.

    String toString() Returns a string that lists the host name and the IP

    address for convenience.

    Internet addresses are looked up in a series of hierarchically cached servers. It

    means that the local computer might know a particular name-to-IP-address mapping

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    18/54

    8

    autocratically, such as for itself and nearby servers. For other names, it may ask a local

    DNS server for IP address information. If that server doesnt have a particular address, it

    can go to a remote site and ask for it. This can continue all the way up to the root server,

    called InterNIC (internic.net).

    4.1.5 TCP/IP Client Sockets

    TCP/IP sockets are used to implement reliable, bidirectional, persistent, point-

    to-point, and stream-based connections between hosts on the Internet. A socket can be

    used to connect Javas I/O system to other programs that may reside either on the local

    machine or on any other machine on the Internet.

    There are two kinds of TCP sockets in Java. One is for servers, and the other is

    for clients. The ServerSocket class is designed to be a listener, which waits for clients

    to connect. The Socket class is designed to connect to server sockets and initiate protocol

    exchanges.

    The creation of a Socket object implicitly establishes a connection between the

    client and server. There are no methods or constructors that explicitly expose the details

    of establishing that connection. Here are two constructors used to create client sockets:

    Socket(String hostName, int port) Creates a socket connecting the local host to the

    named host and port; can throw an

    UnknownHostException or an IOException.

    Socket(InetAddress ipAddr,int port Creates a socket using a preexisting InetAddress

    object and a port; can throw an IOException.

    A socket can be examined at any time for the address and port information

    associated with it, by use of the following methods:

    InetAddress getInetAddress()- Returns the InetAddress associated with the Socket

    object.

    int getPort() Returns the remote port to which this Socket object

    is connected.

    int getLocalPort() Returns the local port to which this Socket object is

    connected.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    19/54

    9

    Once the Socket object has been created, it can also be examined to gain access

    to the input and output streams associated with it. Each of these methods can throw an

    IOException if the sockets have been invalidated by a loss of connection on the Net.

    InputStream getInputStream() Returns the InputStream associated with the

    invoking socket.

    OutputStream getOutputStream() Returns the OutputStream associated with the

    invoking socket.

    4.1.6 TCP/IP Server Sockets

    Java has a different socket class that must be used for creating server

    applications. The ServerSocketclass is used to create servers that listen for either local or

    remote client programs to connect them on the published ports. ServerSockets are quitedifferent form normal Sockets.

    When a ServerSocket is created, it will register itself with the system as having

    an interest in client connections. The constructors for ServerSocket reflect the port

    number to accept connection and, also how long the queue for the said port needs it. The

    queue length tells the system how many client connection it can leave pending before it

    should simply refuse connections. The default is 50. The constructors might throw an

    IOException under adverse conditions. The constructors are

    ServerSocket(int port) Creates server socket on the specified port with a

    queue length of 50.

    ServerSocket(int port, int maxQueue) Creates a server socket on the specified port with a

    maximum queue length of maxQueue.

    ServerSocket(int port, int maxQueue, InetAddress localAddress)

    Creates a server socket on the specified port with a

    maximum queue length of maxQueue. On a multi

    homed host, localAddress specifies the IP address

    to which this socket binds.

    ServerSocket has a method called accept(), which is a blocking call that will

    wait for a client to initiate communications and then return with a normal Socket that is

    then used for communication with the client.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    20/54

    10

    4.2 JDBC

    In an effort to set an independent database standard API for Java, Sun Microsystems

    developed Java Database Connectivity (JDBC). JDBC offers a generic SQL database

    access mechanism that provides a consistent interface to a variety of RDBMS. This

    consistent interface is achieved through the use of plug-in database connectivity

    modules, or drivers. If a database vendor wishes to have JDBC support, the client must

    provide the driver for each platform that the database and Java run on.

    4.3 DESIGN OVERVIEW

    Design involves identification of classes, their relationships as well as their

    collaboration. In objectory, classes were divided into Entity classes, interface classes and

    the control classes. The Computer Aided Software Engineering tools that are available

    commercially do not provide any assistance in this transition. Even research CASE tools

    take advantage of Meta modeling are helpful only after the construction of class diagram

    is completed. In the Fusion method, it uses some object-oriented approaches like Object

    Modeling Technique (OMT), Class Responsibility Collaborator (CRC) and Objectory,

    used the term Agents to represent some of the hardware and software systems. In Fusion

    method, there was no requirement phase, where in a user will supply the initial

    requirement document. Any software project is worked out by both analyst and designer.

    The analyst creates the Use case diagram. The designer then creates the Class diagram.

    Once the design is over it is a need to decide which software is suitable for the

    application.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    21/54

    11

    4.4 USE CASE DIAGRAM

    Figure 4.1 Use Case Diagram

    4.5 DATA FLOW DIAGRAM

    Fig 4.2 Data Flow Diagram for Topology Construction

    TopologyConstruction

    RandomPath Selection

    Message Transmisson

    DynamicSecurity

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    22/54

    12

    Figure 4.3 Data Flow Diagram for Random Path Selection

    Figure 4.4 Data Flow Diagram for Message Transmission

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    23/54

    13

    4.6 CLASS DIAGRAM

    Figure 4.5 Class Diagram

    4.7 SEQUENCE DIAGRAM

    Figure 4.6 Sequence Diagram

    SourceSource Select

    Destination

    Select

    Destination

    Routing TableRouting Table Random PathRandom Path Message

    Transmisson

    Message

    Transmisson

    select

    path selection

    Random Path

    compare with previous path

    Transmit message

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    24/54

    14

    4.8 COLLABORATION DIAGRAM

    Figure 4.7 Collaboration Diagram

    4.9 ACTIVITY DIAGRAM

    Figure 4.8 Activity Diagram

    Source Select

    Destination

    Routing

    Table

    Random

    Path

    Message

    Transmisson

    3: Random Path4: compare

    1: select 2: path selection

    5: Transmit

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    25/54

    15

    4.10 ARCHITECTURAL DIAGRAM

    Figure 4.9 Architectural Diagram

    4.11 E-R DIAGRAM

    Figure 4.10 E-R Diagram

    PATH

    PATH

    PATH

    INTERVALS

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    26/54

    16

    5. PROJECT DESCRIPTION

    5.1 Problem Definition

    The challenges in the hierarchy of detecting the relevant quantities, monitoringand collecting the data, assessing and evaluating the information, formulating meaningful

    user displays, and performing decision-making and alarm functions are enormous. A

    wireless sensor network consists of spatially distributed autonomous sensors to monitor

    physical or environmental conditions. The WSN is built of "nodes", from a few to several

    hundreds or even thousands of nodes in a network, where each node is connected to

    another sensor node. Each such sensor network node has typically several parts, a radio

    transceiver with an internal antenna or connection to an external antenna, a

    microcontroller, an electronic circuit for interfacing with the sensors and an energy

    source, usually a battery. In WSN, distributed architecture is used instead of centralized

    architecture for the following reasons,

    Sensor nodes are prone to failure For better collection of data To provide nodes with backup in case of failure of the central node

    The main features of WSNs, as could be deduced by the general description of the

    architecture are scalability with respect to the number of nodes in the network, self-

    organization, self-healing, energy efficiency, a sufficient degree of connectivity among

    nodes, low-complexity, low cost and size of nodes. WSNs have several common aspects

    with wireless ad hoc network and in many cases they are simply considered as a special

    case of them. But the protocols and the algorithms that suites for the ad hoc network do

    not fit into the wireless sensor networks. Wireless sensor network transmits data to

    destination via sinks, where the sensor nodes, before traversing it to receiver keeps data

    transmitted. There can be multiple sinks or single sink based on the design of the

    network. The information is routed over the network based on the topology of the

    network. The challenge of security in sensor networks lie in the conflicting interest

    between minimizing resource consumption and maximizing security.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    27/54

    17

    The security mechanism for the WSN involves the following major resource

    constraints into consideration,

    Limited energy Limited memory Limited computing power Limited communication bandwidth Limited communication rangeConfidentiality, integrity and authentication services are critical to preventing an

    adversary from compromising the security of WSN.

    Figure 5.1 Wireless Sensor Networks

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    28/54

    18

    5.1.1 Network Topology

    The basic issue in communication networks is the transmission of messages to

    achieve a prescribed message throughput (Quantity of Service) and Quality of Service

    (QoS). QoS can be specified in terms of message delay, message due dates, bit error rates,packet loss, economic cost of transmission, transmission power, etc. Depending on QoS,

    the installation environment, economic considerations, and the application, one of several

    basic network topologies may be used.

    A communication network is composed of nodes, each of which has computing

    power and can transmit and receive messages over communication links, wireless or

    cabled. The basic network topologies are shown in the figure and include fully connected,

    mesh, star, ring, tree, bus. A single network may consist of several interconnected subnets

    of different topologies. Networks are further classified as Local Area Networks (LAN),

    e.g. inside one building, or Wide Area Networks (WAN), e.g. between buildings. Though

    many topologies are available for network communication, in this system the topology

    that is opted is mesh topology.

    5.1.2 Mesh Networks

    Mesh networks are regularly distributed networks that generally allowtransmission only to a nodes nearest neighbors. The nodes in these networks are

    generally identical, so that mesh nets are also referred to as peer-to-peer (see below) nets.

    Mesh nets can be good models for large-scale networks of wireless sensors that are

    distributed over a geographic region, e.g. personnel or vehicle security surveillance

    systems. Note that the regular structure reflects the communications topology; the actual

    geographic distribution of the nodes need not be a regular mesh. Since there are generally

    multiple routing paths between nodes, these nets are robust to failure of individual nodes

    or links. An advantage of mesh nets is that, although all nodes may be identical and have

    the same computing and transmission capabilities, certain nodes can be designated as

    group leaders that take on additional functions. If a group leader is disabled, another

    node can then take over these duties.

    All nodes of the star topology are connected to a single hub node. The hub

    requires greater message handling, routing, and decision-making capabilities than the

    other nodes. If a communication link is cut, it only affects one node. However, if the hub

    is incapacitated the network is destroyed.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    29/54

    19

    Figure5.2.Mesh Networks

    5.1.3 Security Leaks in WSN

    The information transmitted in a wireless sensor networks are prone to two key

    attacks due to the deterministic nature of the multi-path routing algorithm that is been

    used till date. The two main attacks are compromised node and denial of service. The

    main reason for those attacks other than the deterministic approach of the routing

    approach is that the routes may not spatially dispersive to overcome the attacks.

    5.1.3.1 Compromised Node

    Node compromise is one of the potential vulnerability seen in the wireless sensor

    networks. Node compromise occurs when an attacker, though some subvert means, gains

    control of a node in the network after deployment. Once in control of that node, the

    attacker can alter the node to listen to information in the network, input malicious data,

    cause black hole, or any myriad of attacks on the network. The attacker may also simply

    extract information vital to the networks security such as routing proto cols, data, and

    security keys. Generally compromise occurs once an attacker has found a node, and then

    directly connects the node to their computer via a wired connection of some sort. Once

    connected the attacker controls the node by extracting the data and put new data or

    controls on that node. Sensor nodes cannot determine whether a user is simply using

    debugging tools or attempting to hack in. The adversary is capable of getting the

    information being transmitted, over the networks, mainly due to the memory interrogation

    of the node and the routing algorithm is known to the intruder.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    30/54

    20

    Figure5.3 Compromised Node in a Network

    5.1.3.2 Denial of Service

    In Denial-of-Service (DoS) attacks, the hackers objective is to render target

    machines inaccessible by legitimate users. WSN without sufficient protection from DoS

    attacks may not be deployable in many areas. Node misbehavior that affects these

    operations may range from simple selfishness or lack of collaboration due to the need for

    power saving to active attacks aiming at denial of service(DoS) and subversion of traffic.

    There are two types of DoS attacks,

    Passive attacks: Selfish nodes use the network but do not cooperate, savingbattery life for their own communications: they do not intend to directly

    damage other nodes.

    Active attacks: Malicious nodes damage other nodes by causing networkoutage by partitioning while saving battery life is not a priority.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    31/54

    21

    The adversary in order to create a denial of service attack on a sensor node in a

    network need not know the technical aspects like encryption, decryption of information

    etc. such that adversary blocks the task carried over by the node in the network.

    Figure5.4. Denial of Service Attack

    5.1.4 Multi-Path Routing Algorithm

    Multi-path is a feature that allows an administrator to specify multiple next hops

    for a given route's destination. In environments with substantial requirements, there are

    several reasons for doing this. A router could just use one ISP most of the time, and

    switch to the other when the first one fails for some reason. Another application of

    multipath is to keep a path on standby and enable it only when bandwidth requirements

    surpass a predefined threshold.

    Multi-path routing algorithm focus on the reliable delivery of information

    transmitted from the sender to the receiver in a safer manner. The purpose behind the

    multi-path approach is to diminish the effects of node failure. The main objective of these

    algorithms is to split data to be transmitted, into some shares of information and then

    transmit those towards the destination. But the original information can be reconstructed

    only when some shares of it been traversed. Though it has many advantages, there are

    some short comes in it like node-disjoint, non-dispersive routing between sender and

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    32/54

    22

    receiver, etc. In the proposed system all these black holes are avoided to a greater extent.

    Thereby enhance secured data delivery within the sensor networks.

    Figure 5.5. Multi-path Routing Algorithm

    5.2 PROJECT OVERVIEW

    The main novelty of the system built is to overcome the short come of security

    mechanism in WSN, that is, to circumvent the black holes formed by the compromised

    node and denial of service attacks. For this purpose, the randomized multi-path routing

    algorithm to traverse the packets from the sender to the receiver in sensor networks is

    developed.

    In the randomized multi-path routing algorithm, information to be transmitted to

    its destination undergoes three phases before it reaches the appropriate receiver. The three

    phases are secret sharing phase, randomized propagation, and normal routing of the

    information.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    33/54

    23

    5.2.1 Normal Routing of Information

    When the time-to-live field becomes zero, the information shares are then routed

    towards the sink using min-hop routing. Once the sink collects at least some minimum

    shares, it can start reconstructing the original packet. Before that the information cannot

    be reconstructed.

    5.3 Module Description

    Three modules are designed in order to protectively transmit information by

    splitting into different shares. The modules are

    Node Deployment Apply Randomized Multi-path Approach Message Transmission

    5.3.1 Node Deployment

    Deployment of node module involves the formation of network by connecting the

    sensor nodes in the network, that is, a sensor node decides which node to be adjacent to it.

    While transmitting information, it can send via any of those nodes. In short, node

    deployment means topology creation. In this system, mesh network topology is opted.

    Mesh topology is opted for its unstructured nature. The nodes are connected using

    sockets.

    5.3.2 Randomized Multi-path Approach

    The randomized multi-path approach first applies, splitting of the information to

    be transmitted into numerous sub packets. The splitting of data is based on a constraint,

    the packet length. Once the sender decides which information to send, it is divided into

    packets based on the packet length. Then those shares are randomly propagated towards

    the destination. The routes are chosen not only in randomized manner but also dispersive,

    such that the energy efficiency is maintained.

    5.3.3 Message Transmission

    The message is transmitted from source to destination based on the random path

    chosen for routing the information. But once a route is chosen by a packet to traverse, the

    same path is not chosen again for transmission of information.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    34/54

    24

    6. 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.

    6.1 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.

    6.1.1 Test Strategy and Approach

    Field testing will be performed manually and functional tests will be written in

    detail.

    6.1.2 Test Results

    Checked for logical errors that occur because of missing parenthesis or leaving out

    an alternative block of statements. Some of the logical errors were identified and rectified

    with the help of unit testing.

    Checked for syntax errors which may arise due to the flaws in the coding, like

    missing semicolon, misspelt keywords and type mismatch. Some of the errors were

    identified and rectified with the help of unit testing.

    Eg.

    Error

    getPah( nodePath.substring( nodePath.length()-1 ), nodePath.substring(

    nodePath.length()-3, ( nodePath.length()-3)+1 ));

    Corrected statement

    getPath( nodePath.substring( nodePath.length()-1 ), nodePath.substring(

    nodePath.length()-3, ( nodePath.length()-3)+1 ));

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    35/54

    25

    6.2 FUNCTIONAL TEST

    Functional tests provide systematic demonstrations that functions tested are

    available as specified by the requirements, system documentation, and user manuals.

    Functional testing is centered 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.

    Output - identified classes of application outputs must be exercised.

    Systems/Procedures - interfacing systems or procedures must be invoked.

    Business process flows; data fields, predefined processes, and successive processesmust be considered for testing. Before functional testing is complete, additional tests are

    identified and the effective value of current tests is determined.

    6.2.1 Test Results

    Each function was tested for the above mentioned criteria and the errors were

    eliminated.

    In the module of topology creation, while updating node details through

    updateNodeInfo() the module was tested for both valid and invalid inputs.

    For valid inputs the system runs normallyFor invalid inputs the system prompts the user to provide new details

    Eg.

    if( reply.equals("inserted")){

    JOptionPane.showMessageDialog(this,"Inserted Successfully");}

    else{

    JOptionPane.showMessageDialog(this,"This Link Already Available");

    }

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    36/54

    26

    6.3 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 component or software applications,

    e.g. components in a software system or one step up software applications at the

    company levelinteraction without error.

    6.3.1 Test Results

    The various modules were integrated and the errors encountered were identified and

    rectified.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    37/54

    27

    7. SYSTEMIMPLEMENTATION

    The entire system is divided into following running phases,

    Topology Construction Random Path Generation Message Propagation

    In the first phase, the network topology is constructed. In this system, mesh

    topology is chosen for the construction of nodes to deploy the message transmission. The

    preference is given for mesh topology, above other topologies, because of its unstructured

    nature. The network is formed such that each node can communicate with the remaining

    nodes distinctly. The main attributes for the nodes like the name, address and path costs

    are defined. The sockets are defined to establish network connection between the nodes

    for the message transmission to take place.

    The second phase deals with the random path propagation. The main

    implementation of this phase is to generate the total number of possible routes between

    the sender and the receiver. The nodes that take part in the message transmission have to

    be logged in. Then the message to be transmitted is split into multiple packets. Each of

    the multiple packets is then transmitted individually through the independent routes. This

    route selection takes place in a random manner such that the same route is not traversed

    by the previous packets. Once the route has been chosen, the packets traverse through

    them. The route selection process is made to be as diversified as possible in order to make

    the transmission less vulnerable to the attacks.

    In the final phase, the message split into multi packets reaches the destination

    through the paths chosen from the random propagation phase. The correct sequence of the

    packet delivery can be achieved using the packet headers. This ensures the successful

    transmission of the message from the source to the destination in a secured way.

    The message transmitted cannot be easily intercepted by an intruder, since the

    whole message is not sent through a single path. But the message is split into various

    packets and each of the packets is transmitted over the random available paths. Even if an

    interception attempt succeeds the attacker cannot get the whole message. Also, the

    attacker will not be able to predict the paths generated and the packet transmitted through

    them. This enhances the security of the system which overcomes the limitations of the

    existing system.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    38/54

    28

    8. CONCLUSION AND FUTURE ENHANCEMENTS

    8.1 CONCLUSION

    The analysis and simulation results have shown the effectiveness of the randomized

    dispersive routing in combating CN and DoS attacks. By appropriately setting the secret

    sharing and propagation parameters, the packet interception probability can be easily

    reduced. At the same time, this improved security performance comes at a reasonable cost

    of energy. Specifically, the energy consumption of the proposed randomized multipath

    routing algorithms is higher than that of their deterministic counterparts. The proposed

    algorithms can be applied to selective packets in WSNs to provide additional security

    levels against adversaries attempting to acquire these packets. Considering that thepercentage of packets in a WSN that require a high security level is small, the selective

    use of the proposed algorithms does not significantly impact the energy efficiency of the

    entire system

    8.2 FUTURE ENHANCEMENT

    The proposed work is based on the assumption that there are only a small number of

    black holes in the WSN. But in reality, a stronger attack could be formed, whereby the

    adversary selectively compromises a large number of sensors that are several hops away

    from the sink to form clusters of black holes around the sink. Collaborating with each

    other, these black holes can form a cut around the sink and can block every path between

    the source and the sink. Under this cut around-sink attack, no secret share from the source

    can escape from being intercepted by the adversary. This system does not address this

    attack. The resolution requires extending the mechanisms to handle multiple collaborating

    black holes, which will be studied.

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    39/54

    29

    9. APPENDIX

    9.1 Source Code

    DBConnection.java

    package DB;

    import java.sql.*;

    public class DBConnection

    {

    private Connection con = null;

    private String driver = "sun.jdbc.odbc.JdbcOdbcDriver";

    private String url = "jdbc:odbc:DynamicRouting";

    public Connection getConnection()throws

    ClassNotFoundException,SQLException{

    Class.forName( driver );

    con = DriverManager.getConnection(url,"sa","");

    return con;

    }}

    Topologycreation.java

    public TopologyCreation()

    {

    super();

    allNodes = getNodeNames();

    System.out.println("All Nodes are"+allNodes);

    initializeComponent();

    }public Vector getNodeNames()

    {

    Vector nodeList = new Vector();

    try

    {

    DB.DBConnection obj = new DB.DBConnection();

    Connection con = obj.getConnection();

    Statement st = con.createStatement();

    ResultSet rs = st.executeQuery("select * from NodeInfo");

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    40/54

    30

    while(rs.next())

    {

    nodeList.addElement(rs.getString(1));

    }

    }

    return nodeList;

    }

    public void updateNodeInfo()

    {

    Socket soc;

    ObjectInputStream dis;

    ObjectOutputStream dos;

    try

    {

    String startingNode = jComboBox1.getSelectedItem().toString().trim();

    String endingNode = jComboBox2.getSelectedItem().toString().trim();

    String edgeWeight = jTextField1.getText().trim();

    String nodeDetails = startingNode+"#"+endingNode+"#"+edgeWeight;

    if ( true ){

    soc = new Socket("localhost",2345);

    dos = new ObjectOutputStream(soc.getOutputStream());

    dos.writeObject("insert");

    dos.writeObject( nodeDetails );

    dis = new ObjectInputStream(soc.getInputStream());

    String reply = (String)dis.readObject();

    if( reply.equals("inserted"))

    {JOptionPane.showMessageDialog(this,"Inserted Successfully");

    }

    else

    {

    JOptionPane.showMessageDialog(this,"This Link Already Available");

    }}

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    41/54

    31

    Findpath.java

    public void FindPossible(String pathstart,String pathend)

    { {

    DBConnection db = new DBConnection();

    con = db.getConnection();

    st = con.createStatement();

    st.execute("delete from PossiblePaths");

    st.execute("delete from RoutingTable");

    }

    strTemp = pathstart;

    destination = pathend;

    System.out.println("The Nodes are"+strTemp);

    System.out.println("The Nodes are"+destination);

    allPathArray = new String[100];

    getPath(strTemp,"**");

    updateDB();

    }

    public void getPath( String start, String end )

    {{

    System.out.println("incoming Nodes are"+start+"hhhhhhhhhhh"+end);

    rs = st.executeQuery( "select * from NodesLink where names like

    '"+start.trim( )+"' and dest not like '"+end.trim( )+"'");

    while( rs.next( ) )

    {

    flip2 = true;

    if( flip == false){

    for( int i=0;i

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    42/54

    32

    String strarray[] = strTemp.split( "&" );

    for( int i = 0; i < strarray.length; i++ )

    {

    if( strarray[i].intern( ) == check.intern( ) )

    flip1 = false;

    }

    if( flip1 == true ){

    stack[++index] = strTemp+ "&" + check;

    }

    flip1 = true;

    }

    if( flip2 == true )

    {

    flip2 = false;

    for( int i=0; i

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    43/54

    33

    if( index != 0 )

    {

    for( int i = 0; i

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    44/54

    34

    Integer weight = ( Integer )i.next();

    String path = ( String )map.get( weight );

    int edgeWeight = Integer.valueOf( weight );

    st.executeUpdate( "insert into PossiblePaths values('"+path+"',"+edgeWeight+" )" );

    st.executeUpdate("insert into RoutingTable values('"+path+"','0' )");}

    map.clear(); }}

    Mainrouter.java

    public MainRouter()

    {{

    DB.DBConnection dbObj = new DB.DBConnection();

    con = dbObj.getConnection();

    st = con.createStatement();

    serObj = new ServerSocket(2345);

    System.out.println("Router is Listening");

    while( true )

    {

    socObj = serObj.accept();

    dos = new ObjectOutputStream(socObj.getOutputStream());

    dis = new ObjectInputStream(socObj.getInputStream());

    String clientMsg = (String)dis.readObject();

    if(clientMsg.equals("insert"))

    {

    String nodeDetails = (String)dis.readObject();

    String[] nodeInfo = nodeDetails.split("#");

    rs = st.executeQuery("select source,dest from NodesLink where source =

    '"+nodeInfo[0]+"' and dest = '"+nodeInfo[1]+"'");if(!rs.next())

    {

    st.executeUpdate("insert into NodesLink values ('"+nodeInfo[0]+"','"

    +nodeInfo[0]+"','"+nodeInfo[1]+"','"+nodeInfo[2]+"')");

    st.executeUpdate("insert into NodesLink values ('"+nodeInfo[1]+"','"

    +nodeInfo[1]+"','"+nodeInfo[0]+"','"+nodeInfo[2]+"')");

    dos.writeObject("inserted");

    }

    else

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    45/54

    35

    {

    dos.writeObject("Already Available");

    }}

    else if( clientMsg.equals("logincheck"))

    {

    String nodeName = (String)dis.readObject();

    String nodeInfo = "";

    rs = st.executeQuery("select NodeName,ipAddress,portNumber from

    NodeInfo where NodeName = '"+nodeName+"'");

    if( rs.next())

    {

    String node_Name = rs.getString(1);

    String ipAdd = rs.getString(2);

    String portNo = rs.getString(3);

    nodeInfo = node_Name+"#"+ipAdd+"#"+portNo;

    }

    dos.writeObject(nodeInfo);

    }

    else if( clientMsg.equals("getothernodes"))

    {

    String nodeName = (String)dis.readObject();

    ArrayList otherNodes = new ArrayList();

    rs = st.executeQuery("select NodeName from NodeInfo where

    NodeName != '"+nodeName+"'");

    while(rs.next())

    { otherNodes.add(rs.getString(1)); }

    System.out.println("The ArrayList is"+otherNodes);dos.writeObject( otherNodes );

    }

    else if( clientMsg.equals("getPath"))

    {

    ArrayList avlPaths = new ArrayList();

    String nodeInfo = (String)dis.readObject();

    String nodeDetail[] = nodeInfo.split("#");

    System.out.println("The Nodeinfo is"+nodeInfo);

    String sourceNode = nodeDetail[0];

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    46/54

    36

    String destNode = nodeDetail[1];

    Paths.FindPath pathObj = new Paths.FindPath();

    pathObj.FindPossible( sourceNode,destNode );

    rs = st.executeQuery("select * from PossiblePaths");

    while(rs.next())

    {

    avlPaths.add(rs.getString(1));

    }

    System.out.println("The Paths Are"+avlPaths);

    dos.writeObject( avlPaths );

    }

    else if( clientMsg.equals("getdata")){

    String nodeDetail = "";

    String dest = (String)dis.readObject();

    rs = st.executeQuery("select * from RoutingTable");

    while(rs.next()){

    String path = rs.getString(1);

    String packetsize = rs.getString(2);

    String total = path+"#"+packetsize;

    nodeDetail += total+"@";

    }

    System.out.println("The Data is"+nodeDetail);

    dos.writeObject( nodeDetail );

    }

    }

    }

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    47/54

    37

    9.2 SCREEN SHOTS

    Figure 9.1 Get Number of Nodes

    Figure 9.2 Get Node Information

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    48/54

    38

    Figure 9.3 Node Successfully Inserted

    Figure 9.4 All Nodes Successfully Added

    Figure 9.5 Path Cost

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    49/54

    39

    Figure 9.6 Cost Added Successfully

    Figure 9.7 Path Cost

    Figure 9.8 Link Already Available

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    50/54

    40

    Figure 9.9 Login Form

    Figure 9.10 Successful Login

    Figure 9.11 Node Window

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    51/54

    41

    Figure 9.12 Path Generation

    Figure 9.13 Sending Message

    Figure 9.14 Number of Packets

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    52/54

    42

    Figure 9.15 Total Number of Paths

    Figure 9.16 Transmission of First Packet

    Figure 9.17 Transmission of Second Packet

    Figure 9.18 Transmission of Last Packet

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    53/54

    43

    Figure 9.19 Message Transmission

    Figure 9.20 Received Message

  • 8/7/2019 Protective Multi Packet Randomized Transmission for the Accumulation of Information

    54/54

    10. REFERENCES

    [1] Ian F. Akyildiz, Weilian Su, Yogesh Sankarasubramaniam, Erdal Cayirci,

    (2002) A Survey On Sensor Networks Georgia Institute of Technology IEEE

    Comm. Magazine, vol. 40, no. 8,pp. 102-114

    [2] Ivan Gojmerac, Thomas Ziegler, Fabio Ricciato, Peter Reichl (2003)Adaptive

    Multipath Routing for Dynamic Traffic Engineering Telecommunications

    Research Center Vienna, University of Rome IEEE GLOBECOM

    [3] Mike Burmester and Tri Van Le, (2004) Secure Multipath Communication in

    Mobile Ad hoc Networks Florida State University. Proc. Intl Conf.

    Information Technology: Coding and Computing, pp. 405-409

    [4] Patrick P. C. Lee, Vishal Misra, and Dan Rubenstein (2005) Distributed

    Algorithms for Secure Multipath Routing Columbia University Proc. IEEE

    INFOCOM, pp. 1952-1963

    [5] Shou-Heng Liu, Yung-Feng Lu, Chin-Fu Kuo, Ai-Chun Pang, Tei-Wei Kuo

    (2001) The Performance Evaluation ofa Dynamic Configuration Method over

    IPSEC National Taiwan University, Taiwan Institute for Information Industry,

    Taiwan.

    [6] Wenjing Lou and Yuguang Fang (2000) A Multipath Routing Approach for

    Secure Data Delivery University of Florida IEEE 2001 Pg 1467-1473.

    [7] Wenjing Lou, Wei Liu and Yuguang Fang (2004) SPREAD: Improving

    Network Security by Multipath Routing University of Florida Proc. IEEE

    INFOCOM, vol. 4, pp. 2404-2413

    [8] Wenjing Lou, Younggoo Kwon (2006) H-SPREAD: A Hybrid Multipath