Final draft - version 4.1.doc

download Final draft - version 4.1.doc

of 82

Transcript of Final draft - version 4.1.doc

  • 8/10/2019 Final draft - version 4.1.doc

    1/82

    DELAY-OPTIMAL BROADCAST FOR MULTIHOP

    WIRELESS NETWORKS USING SELF-

    INTERFERENCE CANCELLATION

    A

    DISSERTATION

    Submitted in partial fulfillment for the award of the degree of

    Master of Engineering in Web Technologies

    Submitted !

    JAIGOPI K

    (12GAMK4003)

    "nder the #uidance of

    M! K"#$ KAssistant $rofessor

    Dept% of &SE

    "'&E( angalore%

    D%'%$' * C&+'% S,"%$,% #$ E$."$%%"$.UNI/ERSITY /IS/ES/ARAYA COLLEGE OF ENGINEERING

    angalore "ni)ersit!

  • 8/10/2019 Final draft - version 4.1.doc

    2/82

  • 8/10/2019 Final draft - version 4.1.doc

    3/82

    AN#A*ORE "NI'ERSIT+UNI/ERSITY /IS/ES/ARAYA COLLEGE OF ENGINEERING

    K R C",% B#$.#%-0001

    D%'%$' * C&+'% S,"%$,% #$ E$."$%%"$.

    CERTIFICATE

    This is to certif! that JAIGOPI K (12GAMK4003) has satisfactoril!

    completed the $ro,ect entitled -DELAY-OPTIMAL BROADCAST

    FOR MULTIHOP WIRELESS NETWORKS USING SELF-

    INTERFERENCE CANCELLATION. in partial fulfillment for the

    re/uirement of 0ourth semester( Master of Engineering( Web

    Technologies( prescribed b! angalore "ni)ersit!( during the academic

    !ear 1234 5 1236%

    G+"% C5#"&%6$

    555555555555555555555555555 555555555555555555555555555

    M! K"#$ K D! P DEEPA SHENOY

    Assistant $rofessor( $rofessor 7 &hairperson(

    Dept of &SE( Department of &SE(

    "'&E( angalore523% "'&E( angalore523

    E7#"$% 1 8888888888888 E7#"$% 2 8888888888888

  • 8/10/2019 Final draft - version 4.1.doc

    4/82

    ACKNOWLEDGEMENT

    I am indeed )er! happ! to greatl! ac8nowledge the numerous personalities

    in)ol)ed in lending their help to ma8e m! $ro,ect on 9DELAY-OPTIMAL

    BROADCAST FOR MULTIHOP WIRELESS NETWORKS USING

    SELF-INTERFERENCE CANCELLATION: a successful one%

    At the outset( I e9press m! most sincere grateful ac8nowledgement to

    9UNI/ERSITY /IS/ES/ARAYA COLLEGE OF ENGINEERING: for

    gi)ing me an opportunit! to pursue the ME degree course in WE

    TE&:NO*O#IES and thus helping in shaping m! career%

    I would li8e to e9press m! gratitude to D! /%$+. K R( $rincipal(

    "ni)ersit! 'is)es)ara!a &ollege of Engineering( angalore( for his inspiration(

    constant support in de)elopment of pro,ect wor8%

    I would li8e to than8 D! P D%% S5%$;( $rofessor 7 &hairperson(

    Department of &omputer Science and Engineering( "'&E%

    I li8e to than8 M! K"#$ K A66"6'#$' P*%66 Department of &omputerscience and Engineering( "'&E( under whose guidance this pro,ect wor8 has

    been carried out and completed successfull!% I am than8ful for his timel!

    ad)ices that helped me to complete this pro,ect wor8%

    I e9press m! gratitude and than8s to all the Teaching( Non5Teaching staff( m!

    classmates and m! friends for their 8ind help and their timel! support and

    suggestions in bringing out this pro,ect within the stipulated time%

    JAIGOPI K

    12GAMK4003

  • 8/10/2019 Final draft - version 4.1.doc

    5/82

    ABSTRACT

    &on)entional wireless broadcast protocols rel! hea)il! on the ;21%335based

    &SMA

  • 8/10/2019 Final draft - version 4.1.doc

    6/82

    TABLE OF CONTENTS

    S $ T&", P#.% $

    3% Introduction 3

    1% *iterature Sur)e! 6

    4% S!stem Architecture ?

    4%3 S!stem &onfiguration ;

    6% S!stem Anal!sis 32

    6%3 E9isting S!stem 32

    6%1 $roposed S!stem 32

    6%4 0easibilit! Stud! 31

    @% S!stem Design 36

    @%3 Input design 36

    @%1 Output design 3@

    % S!stem Implementation 12

    %3 Implementation 12

    %1 Software En)ironment 12

    %4 OD& 1

    %6 BD& 1?

    ?% S!stem Testing 4

    ?%3 Testing Methodologies 4

    ?%1 S!stem Testing 4C

    ?%4 "ser training 63

    ?%6 Maintenance 61

    ?%@ Testing Strateg! 61

    ;% Results 64

    C% &onclusion ?1

    References ?4

    ii

  • 8/10/2019 Final draft - version 4.1.doc

    7/82

    LIST OF FIGURES

    F".+% N F".+%6 P#.% N

    0igure 4%3 S!stem &onfiguration ;

    0igure @%3 &lass diagram 3

    0igure @%1 Data 0low diagram 3?

    0igure @%4 Se/uence diagram 3;

    0igure @%6 "se case diagram 3C

    0igure %3 Ba)a !te code 13

    0igure %1 Ba)a $latform Independent 11

    0igure %4 Ba)a A$I $latform 14

    0igure %6 Ba)a IDE 16

    0igure %@ Ba)a Runtime En)ironment 42

    0igure % T&$

  • 8/10/2019 Final draft - version 4.1.doc

    8/82

  • 8/10/2019 Final draft - version 4.1.doc

    9/82

    CHAPTER 1

    INTRODUCTION

    NETWOR5WIDE broadcast is a fundamental primiti)e for man! communication

    protocols in multihop wireless networ8s( such as route disco)er! and information

    dissemination% An efficient broadcast protocol needs to deli)er a pac8et For a continuous

    stream of pac8etsG from the source node to all other nodes in the networ8( with high pac8et5

    deli)er! ratio F$DRG and low latenc!% To impro)e $DR in a loss! networ8( multiple rela!

    nodes can forward and retransmit each pac8et( thereb! creating retransmission di)ersit!% To

    reduce latenc! and resource usage( howe)er( the number of transmissions must be 8ept to

    minimum( since redundant retransmissions waste channel time( slowing down the pac8et=s

    deli)er! to the edge of the networ8% Therefore( a delicate balance needs to be maintained

    between $DR and dela!% To date( efficient broadcast support( in the form of theoretical

    anal!sis or practical protocol design( has mostl! focused on the &SMA

  • 8/10/2019 Final draft - version 4.1.doc

    10/82

    &:A$TER 3 INTROD"&TION

    In this pro,ect( a no)el broadcast protocol called &horus( based on a MA& la!er that adopts

    &SMA with collision resolution F&SMAed )ia its collision

    resolution scheme( which is based on self5interference cancellation% "nli8e traditional

    transmit di)ersit! schemes such as beam forming( &horus re/uires neither s!mbol time

    s!nchroni>ation nor instantaneous channel state information% In realit!( it is difficult to

    s!nchroni>e the independent transmitters A and at the s!mbol le)el% &horus e9ploits the

    as!nchron! between them to identif! collision5free s!mbols in the o)erlapping pac8ets% It

    then initiates an iterati)e cancellation process that subtracts clean and 8nown s!mbols from

    the collided ones( and obtains estimates of un8nown s!mbols% The decoding succeeds as long

    as one pac8et has sufficient SNR( hence reali>ing the di)ersit! offered b! multiple

    transmitters%

    At the MA& la!er( &horus adds a cogniti)e sensing and scheduling module to the ;21%33

    &SMA mechanisms% Specificall!( senders bac8 off onl! when the! sense a pac8et on the air

    that has a different identit! from what the! intend to transmit% Such a cogniti)e MA& allows

    &horus to full! e9ploit the ad)antage of collision resolution( while maintaining friendliness

    to bac8ground traffic% In addition( the collision5resolution capabilit! enables anon!mous

    broadcast at the networ8 la!er( without an! topolog! or neighborhood information% To

    /uantif! the effecti)eness of &horus( which establish an anal!tical framewor8 for its

    Dept% of &SE( "'&E 1234536 1

  • 8/10/2019 Final draft - version 4.1.doc

    11/82

    &:A$TER 3 INTROD"&TION

    achie)able SNR and bit error rate FERG( which ta8es into account the error5propagation

    effects in iterati)e collision resolution% 0urther anal!>e its networ85le)el performance in

    terms of latenc! and throughput% With a ,oint design of &SMA

  • 8/10/2019 Final draft - version 4.1.doc

    12/82

    CHAPTER 2

    LITERATURE SUR/EY

    *iterature sur)e! is the most important step in software de)elopment process% efore

    de)eloping the tool it is necessar! to determine the time factor( econom! n compan! strength%

    Once these things r satisfied( ten ne9t steps are to determine which operating s!stem and

    language can be used for de)eloping the tool% Once the programmersstart building the tool

    the programmers need lot of e9ternal support% This support can be obtained from senior

    programmers( from boo8 or from websites% efore building the s!stem the abo)e

    consideration r ta8en into account for de)eloping the proposed s!stem%

    M"$""6

    A wide range of applications for wireless ad hoc networ8s are time5critical and impose

    stringent re/uirement on the communication latenc!% The studies the problem Minimum5

    *atenc! roadcast Scheduling FM*SG in wireless ad hoc networ8s represented b! unit5dis8

    graphs% This problem is N$5hard% A tri)ial lower bound on the minimum broadcast latenc! is

    the radius R of the networ8 with respect to the source of the broadcast( which is the

    Dept% of &SE( "'&E 1234536 6

    http://www.blurtit.com/q876299.htmlhttp://www.blurtit.com/q876299.htmlhttp://www.blurtit.com/q876299.htmlhttp://www.blurtit.com/q876299.htmlhttp://www.blurtit.com/q876299.htmlhttp://www.blurtit.com/q876299.htmlhttp://www.blurtit.com/q876299.html
  • 8/10/2019 Final draft - version 4.1.doc

    13/82

    &:A$TER 1 *ITERAT"RE S"R'E+

    ma9imum distance of all the nodes from the source of the broadcast% The pre)iousl! best5

    8nown appro9imation algorithm for M*S produces a broadcast schedule with latenc! at

    most 6; R( three progressi)el! impro)ed appro9imation algorithms for M*S% The!

    produce broadcast schedules with latenc! at most 16 R 514( 3 R 53@( and R H O Flog RG

    respecti)el!%

    B#,#6' S,5%+"$. "$ I$'%*%%$,% E$?"$%$'

    roadcast is a fundamental operation in wireless networ8s and nai)e flooding is not practical

    because it cannot deal with interference% Scheduling is a good wa! to a)oid interference( but

    pre)ious studies on broadcast scheduling algorithms all assume highl! theoretical models

    such as the unit dis8 graph model% In this wor8( this problem is re5in)estigated using the 15

    dis8 and the signal5to5interference5plus5noise5ratio FSINRG model to reali>e it% Design aconstant appro9imation algorithm for the 15dis8 model and then e9tend it to the SINR model%

    This result is the first result on broadcast scheduling algorithms in SINR model( to the best of

    the 8nowledge%

    T=# B#,#6' R%"#@""'; "$ M@"% A H, N%'=>6 ="'5 D+@% C?%#.%

    The broadcast operation( as a fundamental ser)ice in mobile ad hoc networ8s FMANETsG( is

    prone to the broadcast storm problem if forwarding nodes are not carefull! designated% The

    ob,ecti)e of reducing broadcast redundanc! while still pro)iding high deli)er! ratio under

    high transmission error rate is a ma,or challenge in MANETs% A simple broadcast algorithm

    double5co)ered broadcast FD&G( which ta8es ad)antage of broadcast redundanc! to

    impro)e the deli)er! ratio in an en)ironment that has rather high transmission error rate%

    Among the 35hop neighbors of the sender( onl! selected forwarding nodes retransmit the

    broadcast message% 0orwarding nodes are selected in such a wa! that 3G the senders 15hop

    neighbors are co)ered and 1G the senders 35hop neighbors are either forwarding nodes or

    nonforwarding nodes co)ered b! at least two forwarding neighbors% The retransmissions of

    the forwarding nodes are recei)ed b! the sender as the confirmation of their reception of the

    pac8et% The nonforwarding 35hop neighbors of the sender do not ac8nowledge the reception

    of the broadcast% If the sender does not detect all its forwarding nodes retransmissions( it

    resends the pac8et until the ma9imum number of retries is reached%

    Dept% of &SE( "'&E 1234536 @

  • 8/10/2019 Final draft - version 4.1.doc

    14/82

    &:A$TER 1 *ITERAT"RE S"R'E+

    E**","%$' B#,#6'"$. U6"$. N%'=> C"$.

    The problem of broadcasting in an ad hoc wireless networ8 is considered( where all nodes of

    the networ8 are sources that want to transmit information to all other nodes% The figure of

    merit is energ! efficienc!( a critical design parameter for wireless networ8s since it directl!

    affects batter! life and thus networ8 lifetime% It is pro)ed that appl!ing ideas from networ8

    coding allows to reali>e significant benefits in terms of energ! efficienc! for the problem of

    broadcasting( and implemented )er! simple algorithms that allow to reali>e these benefits in

    practice% In particular( the theoretical anal!sis shows that networ8 coding impro)es

    performance b! a constant factor in fi9ed networ8s% This factor is calculated e9actl! for some

    canonical configurations% Then show that in networ8s where the topolog! d!namicall!

    changes( for e9ample due to mobilit!( and where operations are restricted to simple

    distributed algorithms( networ8 coding can offer impro)ements of a factor of ( where is the

    number of nodes in the networ8% It uses the insights gained from the theoretical anal!sis to

    propose low5comple9it! distributed algorithms for realistic wireless ad hoc scenarios( discuss

    a number of practical considerations( and e)aluate the algorithms through pac8et le)el

    simulation%

    Dept% of &SE( "'&E 1234536

  • 8/10/2019 Final draft - version 4.1.doc

    15/82

    CHAPTER 3

    SYSTEM ARCHITECTURE

    3!1 S;6'% C$*".+#'"$

    The file is selected for broadcasting using the Ser)ice $ro)ider and uploaded to the

    Router% Once the router recei)es the file( it splits the data into N &horus pac8ets% The chorus

    pac8ets are broadcasted in a selected indi)idual path for each pac8et which has a uni/ue path

    for each pac8et% The router will also chec8 for an! collision and a)oid the collision% If the

    router finds there is no path further then automaticall! it applies self interference

    cancellation% 0inall! the pac8ets are broadcasted to the destination MA& la!er% All the chorus

    pac8ets will be chec8ed and the path selection is done to broadcast the pac8ets as shown in

    the fig 4%3%

    The destination will recei)e the indi)idual pac8ets and merge the pac8ets( later stores

    the data% It sends the file recei)ing confirmation and the data stored confirmation to the router

    in turn the router will send the file recei)ing confirmation to the ser)ice pro)ider%

    Dept% of &SE( "'&E 1234536 ?

  • 8/10/2019 Final draft - version 4.1.doc

    16/82

    &:A$TER 4 S+STEM AR&:ITE&T"RE

    F". 3!1 S;6'% C$*".+#'"$

    Dept% of &SE( "'&E 1234536 ;

    DESTINATION

    Ser)ice$ro)ide

    r

    Recei)e the data

    Split into JN= pac8ets

    Select indi)idual path

    for each pac8et

    MA& *A+ER

    A)oid &ollision

    roadcast the data torecei)er

    Router

  • 8/10/2019 Final draft - version 4.1.doc

    17/82

    &:A$TER 4 S+STEM AR&:ITE&T"RE

    3!1!1 HW S;6'% C$*".+#'"$-

    $rocessor Intel core1 Duo

    Speed 5 1%C4 #h>

    RAM 1# RAM

    :ard Dis8 5 @22 #

    e! oard 5 Standard Windows e!board

    3!1!2SW S;6'% C$*".+#'"$-

    Operating S!stemK L$ and windows ?

    0ront EndK Ba)a FAWT( SWIN#S( Networ8ingG

    ac8 EndK MS Access < M! S*

    Dept% of &SE( "'&E 1234536 C

  • 8/10/2019 Final draft - version 4.1.doc

    18/82

    CHAPTER 4

    SYSTEM ANALYSIS

    4!1 EISTING SYSTEM

    The abo)e algorithmic solutions generall! assume perfect MA&5la!er scheduling% In realit!(

    scheduling in wireless networ8s is mostl! based on distributed &SMA< &A% The widel! used

    ;21%33 standards pro)ide best effort ser)ice broadcast( using &SMA

  • 8/10/2019 Final draft - version 4.1.doc

    19/82

    &:A$TER 6 S+STEM ANA*+SIS

    scalabilit!( reliabilit!( dela!( etc%( under a broad range of networ8 scenarios Fe%g%(

    single

  • 8/10/2019 Final draft - version 4.1.doc

    20/82

    &:A$TER 6 S+STEM ANA*+SIS

    4!3 FEASIBILITY STUDY

    The feasibilit! of the pro,ect is anal!>ed in this phase and business proposal is put

    forth with a )er! general plan for the pro,ect and some cost estimates% During s!stem

    anal!sis the feasibilit! stud! of the proposed s!stem is to be carried out% This is to ensure

    that the proposed s!stem is not a burden to the compan!% 0or feasibilit! anal!sis( some

    understanding of the ma,or re/uirements for the s!stem is essential%

    Three 8e! considerations in)ol)ed in the feasibilit! anal!sis are

    Economical 0easibilit!

    Technical 0easibilit!

    Social 0easibilit!

    4!3!1 ECONOMICAL FEASIBILITY

    This stud! is carried out to chec8 the economic impact that the s!stem will ha)e on

    the organi>ation% The amount of fund that the compan! can pour into the research and

    de)elopment of the s!stem is limited% The e9penditures must be ,ustified% Thus the de)eloped

    s!stem as well within the budget and this was achie)ed because most of the technologies

    used are freel! a)ailable% Onl! the customi>ed products had to be purchased%

    4!3!2 TECHNICAL FEASIBILITY

    This stud! is carried out to chec8 the technical feasibilit!( that is( the technical

    re/uirements of the s!stem% An! s!stem de)eloped must not ha)e a high demand on the

    a)ailable technical resources% This will lead to high demands on the a)ailable technical

    resources% This will lead to high demands being placed on the client% The de)eloped s!stem

    must ha)e a modest re/uirement( as onl! minimal or null changes are re/uired for

    implementing this s!stem%

    Dept% of &SE( "'&E 1234536 31

  • 8/10/2019 Final draft - version 4.1.doc

    21/82

    &:A$TER 6 S+STEM ANA*+SIS

    4!3!3 SOCIAL FEASIBILITY

    The aspect of stud! is to chec8 the le)el of acceptance of the s!stem b! the user% This

    includes the process of training the user to use the s!stem efficientl!% The user must not feel

    threatened b! the s!stem( instead must accept it as a necessit!% The le)el of acceptance b! the

    users solel! depends on the methods that are emplo!ed to educate the user about the s!stem

    and to ma8e him familiar with it% :is le)el of confidence must be raised so that he is also

    able to ma8e some constructi)e criticism( which is welcomed( as he is the final user of the

    s!stem%

    Dept% of &SE( "'&E 1234536 34

  • 8/10/2019 Final draft - version 4.1.doc

    22/82

    CHAPTER

    SYSTEM DESIGN

    !1 INPUT DESIGN

    The input design is the lin8 between the information s!stem and the user% It comprises the

    de)eloping specification and procedures for data preparation and those steps are necessar! to

    put transaction data in to a usable form for processing can be achie)ed b! inspecting the

    computer to read data from a written or printed document or it can occur b! ha)ing people

    8e!ing the data directl! into the s!stem% The design of input focuses on controlling the

    amount of input re/uired( controlling the errors( a)oiding dela!( a)oiding e9tra steps and

    8eeping the process simple% The input is designed in such a wa! so that it pro)ides securit!

    and ease of use with retaining the pri)ac!% Input Design considered the following thingsK

    What data should be gi)en as input

    :ow the data should be arranged or coded

    The dialog to guide the operating personnel in pro)iding input%

    Methods for preparing input )alidations and steps to follow when error occur%

    OBJECTI/ES3% Input Design is the process of con)erting a user5oriented description of the input into a

    computer5based s!stem% This design is important to a)oid errors in the data input process and

    show the correct direction to the management for getting correct information from the

    computeri>ed s!stem%

    1% It is achie)ed b! creating user5friendl! screens for the data entr! to handle large )olume of

    data% The goal of designing input is to ma8e data entr! easier and to be free from errors% The

    data entr! screen is designed in such a wa! that all the data manipulates can be performed% It

    also pro)ides record )iewing facilities%

    4% When the data is entered it will chec8 for its )alidit!% Data can be entered with the help of

    screens% Appropriate messages are pro)ided as when needed so that the user will not be in

    Dept% of &SE( "'&E 1234536 36

  • 8/10/2019 Final draft - version 4.1.doc

    23/82

    &:A$TER @ S+STEM DESI#N

    mai>e of instant% Thus the ob,ecti)e of input design is to create an input la!out that is eas! to

    follow

    !2 OUTPUT DESIGN

    The Output from the computer is re/uired to mainl! create an efficient method of

    communication within the compan! primaril! among the pro,ect leader and his team

    members( in other words( the administrator and the clients% The output of '$N is the s!stem

    which allows the pro,ect leader to manage his clients in terms of creating new clients and

    assigning new pro,ects to them( maintaining a record of the pro,ect )alidit! and pro)iding

    folder le)el access to each client on the user side depending on the pro,ects allotted to him%

    After completion of a pro,ect( a new pro,ect ma! be assigned to the client% "serauthentication procedures are maintained at the initial stages itself% A new user ma! be

    created b! the administrator himself or a user can himself register as a new user but the tas8

    of assigning pro,ects and )alidating a new user rests with the administrator onl!%

    The application starts running when it is e9ecuted for the first time% The ser)er has to be

    started and then the internet e9plorer in used as the browser% The pro,ect will run on the local

    area networ8 so the ser)er machine will ser)e as the administrator while the other connected

    s!stems can act as the clients% The de)eloped s!stem is highl! user friendl! and can be easil!

    understood b! an!one using it e)en for the first time%

    Dept% of &SE( "'&E 1234536 3@

  • 8/10/2019 Final draft - version 4.1.doc

    24/82

    &:A$TER @ S+STEM DESI#N

    !3 CLASS DIAGRAM

    There are )arious methods and members in the class which pro)ides the broadcasting of the

    pac8ets successfull!% It has ser)ice pro)ider( router and destination classes with their methods

    and members as shown in the fig @%3

    F". !1 C#66 D"#.#

    Dept% of &SE( "'&E 1234536 3

    Members

    Members

    Members

    Methods

    Methods

    Methods

    Ser)ice $ro)ider

    rowse( "pload(

    Reset0ile Name( Sender

    Name( Router

    Name( Destination

    Name

    &onnect( Recei)er(

    Switch FG( 0low Slice FG(Alter FG( 0orward FG(

    selectPpathFG(

    splitPpac8etsFG

    &ollision(

    Timedela!(paths(&horus

    $ac8ets(

    Recei)er FG( Store FG

    $ac8etPname(recei)e

    Ppac8et(mergePpac8e

    t and store

    Router

  • 8/10/2019 Final draft - version 4.1.doc

    25/82

    &:A$TER @ S+STEM DESI#N

    !4 DATA FLOW

    There are )arious components which broadcasting of the pac8ets transmits% It has mainl!

    sender( router and recei)er% It shows how the pac8ets are transmitted in the s!stem as shown

    in the fig @%1

    N Y%6

    F". !2 D#'# F= D"#.#

    Dept% of &SE( "'&E 1234536 3?

    R+'%

    S&"' '5% #'# "$'

    S%%,' D"**%%$'

    #'5 * %#,5

    C5%,>

    6

    C"6"

    $S%$ D#'#

    A?" '5% ,"6"$ @; 6%%,'"$.E#,5 "$"?"+# '5

    B#,#6' '5% ,>%'6R%,%"?% M+'" ,>%'

    B=6%

    #$

    6%$ *"%

    B=6%

    #$

    6%$ *"%

  • 8/10/2019 Final draft - version 4.1.doc

    26/82

    &:A$TER @ S+STEM DESI#N

    !SEUENCE DIAGRAM

    The se/uence diagram shows the se/uence of which pac8ets are broadcasted% It has mainl!

    ser)ice pro)ider( router( base station and recei)er% The se/uence of pac8ets transmitted in the

    s!stem as shown in the fig @%4%

    S%%,'F"%

    F". !3 S%+%$,% D"#.#

    Dept% of &SE( "'&E 1234536 3;

    Store 0ile

    Send file to &luster :ead

    Recei)e 0ile

    Send Top5 ueries

    Re/uest for Top58

    ueries

    0ind Attac8er

    $rocess Top58 ueries

    Recei)e file

    F"% S%$"$.

    C$*"#'"$

    S%%,' C+6'%

    Ser)ice $ro)ider &lustered Router Recei)er ase Station

    Recei)e file

    #enerateS to file

    Send file download

    re/uest to S

    'iew Top58ueries

    Select Sensor Details ased on SS

    Send Sensor Details to ase Station

    U F"%

    To ase station

    'erif! 0name and S

    Send file to Recei)er

    &hec8 file A)ailabilit!

    0ile not A)ailable

    Search file in &lustered Router

  • 8/10/2019 Final draft - version 4.1.doc

    27/82

    &:A$TER @ S+STEM DESI#N

    ! U6% C#6% D"#.#

    The use case diagram shows )arious interactions of the user with the s!stem when

    broadcasting the file as shown in the fig @%6

    Dept% of &SE( "'&E 1234536 3C

    rowse 0ile

    "pload

    0ile

    Recei)e data

    Split data into JN=

    $ac8ets

    Select uni/ue path for eachpac8et

    A)oid &ollision

    Merge $ac8ets

    Store data

    Recei)e $ac8ets

    'iew Time dela!

    R%,%"?%

    S%$%

    R+'%

  • 8/10/2019 Final draft - version 4.1.doc

    28/82

    &:A$TER @ S+STEM DESI#N

    F". !4 U6% C#6% D"#.#

    Dept% of &SE( "'&E 1234536 12

  • 8/10/2019 Final draft - version 4.1.doc

    29/82

  • 8/10/2019 Final draft - version 4.1.doc

    30/82

    &:A$TER S+STEM IM$*EMENTATION

    D!namic

    Secure

    With most programming languages( either compile or interpret a program so that it can run it

    on the computer% The Ba)a programming language is unusual in that a program is both

    compiled and interpreted% With the compiler( first translate a program into an intermediate

    language called Java byte codes Qthe platform5independent codes interpreted b! the

    interpreter on the Ba)a platform% The interpreter parses and runs each Ba)a b!te code

    instruction on the computer% &ompilation happens ,ust once interpretation occurs each time

    the program is e9ecuted% The fig %3 illustrates how this wor8s%

    F". !1 J#?# B;'% C%

    It can thought of Ba)a b!te codes as the machine code instructions for the Java Virtual

    Machine FBa)a 'MG% E)er! Ba)a interpreter( whether it=s a de)elopment tool or a Web

    browser that can run applets( is an implementation of the Ba)a 'M% Ba)a b!te codes help

    ma8e -write once( run an!where. possible% It can compile the program into b!te codes on

    an! platform that has a Ba)a compiler% The b!te codes can then be run on an! implementation

    of the Ba)a 'M% That means that as long as a computer has a Ba)a 'M( the same program

    written in the Ba)a programming language can run on Windows 1222( a Solaris wor8station(

    or on an iMac as shown in fig %1%

    Dept% of &SE( "'&E 1234536 11

  • 8/10/2019 Final draft - version 4.1.doc

    31/82

    &:A$TER S+STEM IM$*EMENTATION

    F". !2 J#?# P#'* I$%&%$%$'

    !2!2 T5% J#?# P#'*

    Aplatformis the hardware or software en)ironment in which a program runs% It has alread!

    mentioned some of the most popular platforms li8e Windows 1222( *inu9( Solaris( and

    MacOS% Most platforms can be described as a combination of the operating s!stem and

    hardware% The Ba)a platform differs from most other platforms in that it=s a software5onl!

    platform that runs on top of other hardware5based platforms%

    The Ba)a platform has two componentsK

    TheJava Virtual MachineFBa)a 'MG

    TheJava Application Programming InterfaceFBa)a A$IG

    It is alread! been introduced to the Ba)a 'M% It=s the base for the Ba)a platform and is ported

    onto )arious hardware5based platforms%

    The Ba)a A$I is a large collection of read!5made software components that pro)ide man!

    useful capabilities( such as graphical user interface F#"IG widgets% The Ba)a A$I is grouped

    into libraries of related classes and interfaces these libraries are 8nown as packages% The

    ne9t section( What &an Ba)a Technolog! Do :ighlights what functionalit! some of the

    pac8ages in the Ba)a A$I pro)ide%

    The following figure depicts a program that=s running on the Ba)a platform% As the figure

    shows( the Ba)a A$I and the )irtual machine insulate the program from the hardware%

    Dept% of &SE( "'&E 1234536 14

  • 8/10/2019 Final draft - version 4.1.doc

    32/82

    &:A$TER S+STEM IM$*EMENTATION

    F". !3 J#?# API P#'*

    Nati)e code is code that after compile it( the compiled code runs on a specific hardware

    platform% As a platform5independent en)ironment( the Ba)a platform can be a bit slower than

    nati)e code% :owe)er( smart compilers( well5tuned interpreters( and ,ust5in5time b!te code

    compilers can bring performance close to that of nati)e code without threatening portabilit!%

    What Can Java Technology Do?

    The most common t!pes of programs written in the Ba)a programming language are applets

    and applications% If it is surfed the Web( it is probabl! alread! familiar with applets% An

    applet is a program that adheres to certain con)entions that allow it to run within a Ba)a5

    enabled browser%

    :owe)er( the Ba)a programming language is not ,ust for writing cute( entertaining applets for

    the Web% The general5purpose( high5le)el Ba)a programming language is also a powerful

    software platform% "sing the generous A$I( can write man! t!pes of programs%

    An application is a standalone program that runs directl! on the Ba)a platform% A special 8ind

    of application 8nown as a server ser)es and supports clients on a networ8% E9amples of

    ser)ers are Web ser)ers( pro9! ser)ers( mail ser)ers( and print ser)ers% Another speciali>ed

    program is aservlet% A ser)let can almost be thought of as an applet that runs on the ser)er

    side% Ba)a Ser)lets are a popular choice for building interacti)e web applications( replacing

    the use of I scripts% Ser)lets are similar to applets in that the! are runtime e9tensions of

    applications% Instead of wor8ing in browsers( though( ser)lets run within Ba)a Web ser)ers(

    configuring or tailoring the ser)er%

    :ow does the A$I support all these 8inds of programs It does so with pac8ages of software

    components that pro)ides a wide range of functionalit!% E)er! full implementation of the

    Ba)a platform gi)es the following featuresK

    T5% %66%$'"#6K Ob,ects( strings( threads( numbers( input and output( data structures(

    s!stem properties( date and time( and so on%

    Dept% of &SE( "'&E 1234536 16

  • 8/10/2019 Final draft - version 4.1.doc

    33/82

    &:A$TER S+STEM IM$*EMENTATION

    A&&%'6K The set of con)entions used b! applets%

    N%'=>"$.K "R*s( T&$ FTransmission &ontrol $rotocolG( "D$ F"ser Data gram

    $rotocolG soc8ets( and I$ FInternet $rotocolG addresses%

    I$'%$#'"$#"

  • 8/10/2019 Final draft - version 4.1.doc

    34/82

    &:A$TER S+STEM IM$*EMENTATION

    How Will Java Technology Change Life?

    It can=t promise fame( fortune( or e)en a ,ob if it is Ba)a programming language% Still( it is

    li8el! to ma8e the programs better and re/uires less effort than other languages% It is

    belie)ed that Ba)a technolog! will help to do the followingK

    G%' 6'#'% +",>;K Although the Ba)a programming language is a powerful ob,ect5

    oriented language( it=s eas! to learn( especiall! for programmers alread! familiar with &

    or &HH%

    W"'% %66 ,%K &omparisons of program metrics Fclass counts( method counts( and so

    onG suggest that a program written in the Ba)a programming language can be four times

    smaller than the same program in &HH%

    W"'% @%''% ,%The Ba)a programming language encourages good coding practices(

    and its garbage collection helps a)oid memor! lea8s% Its ob,ect orientation( its Ba)aeans

    component architecture( and its wide5ranging( easil! e9tendible A$I let reuse other

    people=s tested code and introduce fewer bugs%

    D%?%& &.#6 % +",>;K The de)elopment time ma! be as much as twice as fast

    )ersus writing the same program in &HH% Wh! write fewer lines of code and it is a

    simpler programming language than &HH%

    A?" '* %&%$%$,"%6 ="'5 100 P+% J#?#K It can 8eep the program portable

    b! a)oiding the use of libraries written in other languages% The 322 $ure Ba)a

    TM

    $roduct&ertification $rogram has a repositor! of historical process manuals( white papers(

    brochures( and similar materials online%

    W"'% $,% +$ #$;=5%%K ecause 322 $ure Ba)a programs are compiled into

    machine5independent b!te codes( the! run consistentl! on an! Ba)a platform%

    D"6'"@+'% 6*'=#% % %#6";K It can upgrade applets easil! from a central ser)er%

    Applets ta8e ad)antage of the feature of allowing new classes to be loaded -on the fl!(.

    without recompiling the entire program%

    Dept% of &SE( "'&E 1234536 1

  • 8/10/2019 Final draft - version 4.1.doc

    35/82

    &:A$TER S+STEM IM$*EMENTATION

    !3 ODBC

    Microsoft Open Database &onnecti)it! FOD&G is a standard programming interface for

    application de)elopers and database s!stems pro)iders% efore OD& became a de facto

    standard for Windows programs to interface with database s!stems( programmers had to use

    proprietar! languages for each database the! wanted to connect to% Now( OD& has made

    the choice of the database s!stem almost irrele)ant from a coding perspecti)e( which is as it

    should be% Application de)elopers ha)e much more important things to worr! about than the

    s!nta9 that is needed to port their program from one database to another when business needs

    suddenl! change%

    Through the OD& Administrator in &ontrol $anel( can specif! the particular database that is

    associated with a data source that an OD& application program is written to use% Thin8 of

    an OD& data source as a door with a name on it% Each door will lead to a particular

    database% 0or e9ample( the data source named Sales 0igures might be a S* Ser)er database(

    whereas the Accounts $a!able data source could refer to an Access database% The ph!sical

    database referred to b! a data source can reside an!where on the *AN%

    The OD& s!stem files are not installed on the s!stem b! Windows C@% Rather( the! are

    installed when it is setup a separate database application( such as S* Ser)er &lient or 'isual

    asic 6%2% When the OD& icon is installed in &ontrol $anel( it uses a file called

    OD&INST%D**% It is also possible to administer the OD& data sources through a stand5alone program called OD&ADM%ELE% There is a 35bit and a 415bit )ersion of this

    program and each maintains a separate list of OD& data sources%

    0rom a programming perspecti)e( the beaut! of OD& is that the application can be written

    to use the same set of function calls to interface with an! data source( regardless of the

    database )endor% The source code of the application doesn=t change whether it tal8s to Oracle

    or S* Ser)er% It onl! mention these two as an e9ample% There are OD& dri)ers a)ailable

    for se)eral do>en popular database s!stems% E)en E9cel spreadsheets and plain te9t files can

    be turned into data sources% The operating s!stem uses the Registr! information written b!

    OD& Administrator to determine which low5le)el OD& dri)ers are needed to tal8 to the

    data source Fsuch as the interface to Oracle or S* Ser)erG% The loading of the OD& dri)ers

    is transparent to the OD& application program% In a client

  • 8/10/2019 Final draft - version 4.1.doc

    36/82

    &:A$TER S+STEM IM$*EMENTATION

    The ad)antages of this scheme are so numerous that the! are probabl! thin8ing there must be

    some catch% The onl! disad)antage of OD& is that it isn=t as efficient as tal8ing directl! to

    the nati)e database interface% OD& has had man! detractors ma8e the charge that it is too

    slow% Microsoft has alwa!s claimed that the critical factor in performance is the /ualit! of the

    dri)er software that is used% In humble opinion( this is true% The a)ailabilit! of good OD&

    dri)ers has impro)ed a great deal recentl!% And an!wa!( the criticism about performance is

    somewhat analogous to those who said that compilers would ne)er match the speed of pure

    assembl! language% Ma!be not( but the compiler For OD&G gi)es the opportunit! to write

    cleaner programs( which means finish sooner% Meanwhile( computers get faster e)er! !ear%

    !4 JDBC

    In an effort to set an independent database standard A$I for Ba)a Sun Micros!stems

    de)eloped Ba)a Database &onnecti)it!( or BD&% BD& offers a generic S* database access

    mechanism that pro)ides a consistent interface to a )ariet! of RDMSs% This consistent

    interface is achie)ed through the use of -plug5in. database connecti)it! modules( or drivers%

    If a database )endor wishes to ha)e BD& support( he or she must pro)ide the dri)er for each

    platform that the database and Ba)a run on%

    To gain a wider acceptance of BD&( Sun based BD&=s framewor8 on OD&% As

    disco)ered earlier in this chapter( OD& has widespread support on a )ariet! of platforms%

    asing BD& on OD& will allow )endors to bring BD& dri)ers to mar8et much faster

    than de)eloping a completel! new connecti)it! solution%

    BD& was announced in March of 3CC% It was released for a C2 da! public re)iew that

    ended Bune ;( 3CC% ecause of user input( the final BD& )3%2 specification was released

    soon after%

    The remainder of this section will co)er enough information about BD& for to 8now what it

    is about and how to use it effecti)el!% This is b! no means a complete o)er)iew of BD&%

    That would fill an entire boo8%

    Dept% of &SE( "'&E 1234536 1;

  • 8/10/2019 Final draft - version 4.1.doc

    37/82

    &:A$TER S+STEM IM$*EMENTATION

    JDBC G#6-

    0ew software pac8ages are designed without goals in mind% BD& is one that( because of its

    man! goals( dro)e the de)elopment of the A$I% These goals( in con,unction with earl!

    re)iewer feedbac8( ha)e finali>ed the BD& class librar! into a solid framewor8 for building

    database applications in Ba)a%

    The goals that were set for BD& are important% The! will gi)e some insight as to wh!

    certain classes and functionalities beha)e the wa! the! do% The eight design goals for BD&

    are as followsK

    !4!1 SL L%?% API

    The designers felt that their main goal was to define a S* interface for Ba)a% Although not

    the lowest database interface le)el possible( it is at a low enough le)el for higher5le)el tools

    and A$Is to be created% &on)ersel!( it is at a high enough le)el for application programmers

    to use it confidentl!% Attaining this goal allows for future tool )endors to -generate. BD&

    code and to hide man! of BD&=s comple9ities from the end user%

    !4!2 SL C$*#$,%

    S* s!nta9 )aries as it mo)e from database )endor to database )endor% In an effort to

    support a wide )ariet! of )endors( BD& will allow an! /uer! statement to be passed through

    it to the underl!ing database dri)er% This allows the connecti)it! module to handle non5

    standard functionalit! in a manner that is suitable for its users%

    !4!3 JDBC +6' @% "&%%$'# $ '& * ,$ #'#@#6% "$'%*#,%6

    The BD& S* A$I must -sit. on top of other common S* le)el A$Is% This goal allows

    BD& to use e9isting OD& le)el dri)ers b! the use of a software interface% This interface

    would translate BD& calls to OD& and )ice )ersa%

    !4!4 P?"% # J#?# "$'%*#,% '5#' "6 ,$6"6'%$' ="'5 '5% %6' * '5% J#?# 6;6'%

    ecause of Ba)a=s acceptance in the user communit! thus far( the designers feel that the!

    should not stra! from the current design of the core Ba)a s!stem%

    Dept% of &SE( "'&E 1234536 1C

  • 8/10/2019 Final draft - version 4.1.doc

    38/82

    &:A$TER S+STEM IM$*EMENTATION

    !4! K%%& "' 6"&%

    This goal probabl! appears in all software design goal listings% BD& is no e9ception% Sun

    felt that the design of BD& should be )er! simple( allowing for onl! one method of

    completing a tas8 per mechanism% Allowing duplicate functionalit! onl! ser)es to confuse

    the users of the A$I%

    !4! U6% 6'$. 6'#'", ';&"$. =5%%?% &66"@%

    Strong t!ping allows for more error chec8ing to be done at compile time also( less error

    appear at runtime%

    !4! K%%& '5% ,$ ,#6%6 6"&%

    ecause more often than not( the usual S* calls used b! the programmer are simple

    SELECT=s( INSERT=s( DELETE=s and UPDATE=s( these /ueries should be simple to perform with

    BD&% :owe)er( more comple9 S* statements should also be possible%

    0inall! decided to proceed the implementation using Ba)a Networ8ing% And for

    d!namicall! updating the cache table go for MSAccessdatabase%

    Ba)a has two thingsK a programming language and a platform%

    Ba)a is a high5le)el programming language that is all of the following

    Simple Architecture5neutral

    Ob,ect5oriented $ortable

    Distributed :igh5performance

    Interpreted multithreaded

    Robust D!namic

    Secure

    Ba)a is also unusual in that each Ba)a program is both compiled and interpreted%

    With a compile translate a Ba)a program into an intermediate language called Ba)a

    Dept% of &SE( "'&E 1234536 42

  • 8/10/2019 Final draft - version 4.1.doc

    39/82

    &:A$TER S+STEM IM$*EMENTATION

    b!te codes the platform5independent code instruction is passed and run on the

    computer%

    &ompilation happens ,ust once interpretation occurs each time the program is

    e9ecuted% The figure %6 illustrates how this wor8s%

    F". !4 J#?# R+$'"% E$?"$%$'

    It can be thought of Ba)a b!te codes as the machine code instructions for the Ba)a

    'irtual Machine FBa)a 'MG% E)er! Ba)a interpreter( whether it=s a Ba)a de)elopment

    tool or a Web browser that can run Ba)a applets( is an implementation of the Ba)a

    'M% The Ba)a 'M can also be implemented in hardware%

    Ba)a b!te codes help ma8e -write once( run an!where. possible% It can compile Ba)a

    program into b!te codes on the platform that has a Ba)a compiler% The b!te codes

    can then be run an! implementation of the Ba)a 'M% 0or e9ample( the same Ba)a

    program can run Windows NT( Solaris( and Macintosh%

    ! TCPIP 6'#,>

    The T&$

  • 8/10/2019 Final draft - version 4.1.doc

    40/82

    &:A$TER S+STEM IM$*EMENTATION

    F". ! TCPIP 6'#,>

    T&$ is a connection5oriented protocol "D$ F"ser Datagram $rotocolG is a connectionless

    protocol%

    !!1 IP #'#.#6

    The I$ la!er pro)ides a connectionless and unreliable deli)er! s!stem% It considers each

    datagram independentl! of the others% An! association between datagram must be supplied

    b! the higher la!ers% The I$ la!er supplies a chec8sum that includes its own header% The

    header includes the source and destination addresses% The I$ la!er handles routing through an

    Internet% It is also responsible for brea8ing up large datagram into smaller ones for

    transmission and reassembling them at the other end%

    !!2 UDP

    "D$ is also connectionless and unreliable% What it adds to I$ is a chec8sum for the contents

    of the datagram and port numbers% These are used to gi)e a client

  • 8/10/2019 Final draft - version 4.1.doc

    41/82

    &:A$TER S+STEM IM$*EMENTATION

    !!3 TCP

    T&$ supplies logic to gi)e a reliable connection5oriented protocol abo)e I$% It pro)ides a

    )irtual circuit that two processes can use to communicate%

    !!4 I$'%$%' #%66%6

    In order to use a ser)ice( it must be able to find it% The Internet uses an address scheme for

    machines so that the! can be located% The address is a 41 bit integer which gi)es the I$

    address% This encodes a networ8 ID and more addressing% The networ8 ID falls into )arious

    classes according to the si>e of the networ8 address%

    !! N%'=> #%66

    &lass A uses ; bits for the networ8 address with 16 bits left o)er for other addressing% &lass

    uses 3 bit networ8 addressing% &lass & uses 16 bit networ8 addressing and class D uses all

    41%

    !! S+@$%' #%66

    Internall!( the "NIL networ8 is di)ided into sub networ8s% uilding 33 is currentl! on one

    sub networ8 and uses 325bit addressing( allowing 3216 different hosts%

    !! H6' #%66

    ; bits are finall! used for host addresses within the subnet% This places a limit of 1@

    machines that can be on the subnet%

    Dept% of &SE( "'&E 1234536 44

  • 8/10/2019 Final draft - version 4.1.doc

    42/82

    &:A$TER S+STEM IM$*EMENTATION

    !! T'# #%66

    The 41 bit address is usuall! written as 6 integers separated b! dots%

    !! P' #%66%6

    A ser)ice e9ists on a host( and is identified b! its port% This is a 3 bit number% To send a

    message to a ser)er( send it to the port for that ser)ice of the host that it is running on% This is

    not location transparenc! &ertain of these ports are well 8nown%

    !!10 S,>%'6

    A soc8et is a data structure maintained b! the s!stem to handle networ8 connections% A

    soc8et is created using the call socket% It returns an integer that is li8e a file descriptor% In

    fact( under Windows( this handle can be used with Read Fileand Write Filefunctions%

    Uinclude Vs!s

  • 8/10/2019 Final draft - version 4.1.doc

    43/82

    &:A$TER S+STEM IM$*EMENTATION

    !!11 JF%% C5#'

    B0ree&hart is a free 322 Ba)a chart librar! that ma8es it eas! for de)elopers to displa!

    professional /ualit! charts in their applications% B0ree&harts e9tensi)e feature set includesK

    A consistent and well5documented A$I( supporting a wide range of chart t!pes

    A fle9ible design that is eas! to e9tend( and targets both ser)er5side and client5side

    applications%

    Support for man! output t!pes( including Swing components( image files Fincluding $N#

    and B$E#G( and )ector graphics file formats Fincluding $D0( E$S and S'#G

    B0ree&hart is open source or( more specificall!( free software% It is distributed under the

    terms of the #N" *esser #eneral $ublic *icenseF*#$*G( which permits use in proprietar!applications%

    &harts showing )alues that relate to geographical areas% Some e9amples includeK FaG

    population densit! in each state of the "nited States( FbG income per capita for each countr!

    in Europe( FcG life e9pectanc! in each countr! of the world% The tas8s in this pro,ect includeK

    Sourcing freel! redistributable )ector outlines for the countries of the world( states

  • 8/10/2019 Final draft - version 4.1.doc

    44/82

  • 8/10/2019 Final draft - version 4.1.doc

    45/82

    CHAPTER

    SYSTEM TESTING

    !1 TESTING METHODOLOGIES

    The following are the Testing MethodologiesK

    o U$"' T%6'"$.!

    o I$'%.#'"$ T%6'"$.!

    o U6% A,,%&'#$,% T%6'"$.!

    o O+'&+' T%6'"$.!

    o /#"#'"$ T%6'"$.!

    !1!1 UNIT TESTING

    "nit testing focuses )erification effort on the smallest unit of Software design that is the

    module% "nit testing e9ercises specific paths in a module=s control structure to ensure

    complete co)erage and ma9imum error detection% This test focuses on each module

    indi)iduall!( ensuring that it functions properl! as a unit% :ence( the naming is "nit Testing%

    During this testing( each module is tested indi)iduall! and the module interfaces are )erified

    for the consistenc! with design specification% All important processing path are tested for thee9pected results% All error handling paths are also tested%

    !1!2 INTEGRATION TESTING

    Integration testing addresses the issues associated with the dual problems of )erification and

    program construction% After the software has been integrated a set of high order tests are

    conducted% The main ob,ecti)e in this testing process is to ta8e unit tested modules and builds

    a program structure that has been dictated b! design%

    T5% *="$. #% '5% ';&%6 * I$'%.#'"$ T%6'"$.

    1! T& D=$ I$'%.#'"$

    Dept% of &SE( "'&E 1234536 4?

  • 8/10/2019 Final draft - version 4.1.doc

    46/82

    &:A$TER ? S+STEM TESTIN#

    This method is an incremental approach to the construction of program structure% Modules

    are integrated b! mo)ing downward through the control hierarch!( beginning with the main

    program module% The module subordinates to the main program module are incorporated into

    the structure in either a depth first or breadth first manner%

    In this method( the software is tested from main module and indi)idual stubs are replaced

    when the test proceeds downwards%

    2! B''-+& I$'%.#'"$

    This method begins the construction and testing with the modules at the lowest le)el in the

    program structure% Since the modules are integrated from the bottom up( processing re/uired

    for modules subordinate to a gi)en le)el is alwa!s a)ailable and the need for stubs is

    eliminated% The bottom up integration strateg! ma! be implemented with the following stepsK

    The low5le)el modules are combined into clusters into clusters that perform a specific

    Software sub5function%

    A dri)er Fi%e%G the control program for testing is written to coordinate test case input and

    output%

    The cluster is tested%

    Dri)ers are remo)ed and clusters are combined mo)ing upward in the program structure

    The bottom up approaches tests each module indi)iduall! and then each module is module is

    integrated with a main module and tested for functionalit!%

    !1!3 USER ACCEPTANCE TESTING

    "ser Acceptance of a s!stem is the 8e! factor for the success of an! s!stem% The s!stem

    under consideration is tested for user acceptance b! constantl! 8eeping in touch with theprospecti)e s!stem users at the time of de)eloping and ma8ing changes where)er re/uired%

    The s!stem de)eloped pro)ides a friendl! user interface that can easil! be understood e)en

    b! a person who is new to the s!stem%

    !1!4 OUTPUT TESTING

    Dept% of &SE( "'&E 1234536 4;

  • 8/10/2019 Final draft - version 4.1.doc

    47/82

    &:A$TER ? S+STEM TESTIN#

    After performing the )alidation testing( the ne9t step is output testing of the proposed s!stem(

    since no s!stem could be useful if it does not produce the re/uired output in the specified

    format% As8ing the users about the format re/uired b! them tests the outputs generated or

    displa!ed b! the s!stem under consideration% :ence the output format is considered in 1

    wa!s one is on screen and another in printed format%

    !1! /ALIDATION CHECKING

    'alidation chec8s are performed on the following fields%

    !1!!1 T%7' F"%

    The te9t field can contain onl! the number of characters lesser than or e/ual to its si>e% The

    te9t fields are alphanumeric in some tables and alphabetic in other tables% Incorrect entr!

    alwa!s flashes and error message%

    !1!!2 N+%", F"%

    The numeric field can contain onl! numbers from 2 to C% An entr! of an! character flashes an

    error messages% The indi)idual modules are chec8ed for accurac! and what it has to perform%

    Each module is sub,ected to test run along with sample data% The indi)iduall! tested

    modules are integrated into a single s!stem% Testing in)ol)es e9ecuting the real data

    information is used in the program the e9istence of an! program defect is inferred from the

    output% The testing should be planned so that all the re/uirements are indi)iduall! tested%

    A successful test is one that gi)es out the defects for the inappropriate data and produces

    and output re)ealing the errors in the s!stem%

    !1!!3 P%#'"$ * T%6' D#'#

    Ta8ing )arious 8inds of test data does the abo)e testing% $reparation of test data pla!s a )ital

    role in the s!stem testing% After preparing the test data the s!stem under stud! is tested using

    that test data% While testing the s!stem b! using test data errors are again unco)ered and

    corrected b! using abo)e testing steps and corrections are also noted for future use%

    !1!!4 U6"$. L"?% T%6' D#'#

    Dept% of &SE( "'&E 1234536 4C

  • 8/10/2019 Final draft - version 4.1.doc

    48/82

  • 8/10/2019 Final draft - version 4.1.doc

    49/82

    &:A$TER ? S+STEM TESTIN#

    TYPES OF TESTS

    7.2.1 Unit testing

    "nit testing in)ol)es the design of test cases that )alidate that the internal program logic is

    functioning properl!( and that program inputs produce )alid outputs% All decision branches

    and internal code flow should be )alidated% It is the testing of indi)idual software units of the

    application %it is done after the completion of an indi)idual unit before integration% This is a

    structural testing( that relies on 8nowledge of its construction and is in)asi)e% "nit tests

    perform basic tests at component le)el and test a specific business process( application(

    and

  • 8/10/2019 Final draft - version 4.1.doc

    50/82

    &:A$TER ? S+STEM TESTIN#

    0unctions K identified functions must be e9ercised%

    Output K identified classes of application outputs must be e9ercised%

    S!stemsation and preparation of functional tests is focused on re/uirements( 8e! functions( or

    special test cases% In addition( s!stematic co)erage pertaining to identif! usiness process

    flows data fields( predefined processes( and successi)e processes must be considered for

    testing% efore functional testing is complete( additional tests are identified and the effecti)e

    )alue of current tests is determined%

    !2!4 S;6'% T%6'

    S!stem testing ensures that the entire integrated software s!stem meets re/uirements% It tests

    a configuration to ensure 8nown and predictable results% An e9ample of s!stem testing is the

    configuration oriented s!stem integration test% S!stem testing is based on process

    descriptions and flows( emphasi>ing pre5dri)en process lin8s and integration points%

    !2!4!1 W5"'% B7 T%6'"$.

    White o9 Testing is a testing in which in which the software tester has 8nowledge of the

    inner wor8ings( 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 blac8 bo9 le)el%

    !2!4!2 B#,> B7 T%6'"$.

    lac8 o9 Testing is testing the software without an! 8nowledge of the inner wor8ings(

    structure or language of the module being tested% lac8 bo9 tests( as most other 8inds of

    tests( must be written from a definiti)e source document( such as specification or

    re/uirements document( such as specification or re/uirements document% It is a testing in

    which the software under test is treated( as a blac8 bo9( cannot -see. into it% The test pro)ides

    inputs and responds to outputs without considering how the software wor8s%

    !3 USER TRAINING

    Whene)er a new s!stem is de)eloped( user training is re/uired to educate them about the

    wor8ing of the s!stem so that it can be put to efficient use b! those for whom the s!stem has

    Dept% of &SE( "'&E 1234536 61

  • 8/10/2019 Final draft - version 4.1.doc

    51/82

    &:A$TER ? S+STEM TESTIN#

    been primaril! designed% 0or this purpose the normal wor8ing of the pro,ect was

    demonstrated to the prospecti)e users% Its wor8ing is easil! understandable and since the

    e9pected users are people who ha)e good 8nowledge of computers( the use of this s!stem is

    )er! eas!%

    !4 MAINTENANCE

    This co)ers a wide range of acti)ities including correcting code and design errors% To reduce

    the need for maintenance in the long run( need to ha)e more accuratel! defined the user=s

    re/uirements during the process of s!stem de)elopment% Depending on the re/uirements( this

    s!stem has been de)eloped to satisf! the needs to the largest possible e9tent% With

    de)elopment in technolog!( it ma! be possible to add man! more features based on the

    re/uirements in future% The coding and designing is simple and eas! to understand which will

    ma8e maintenance easier%

    ! TESTING STRATEGY

    A strateg! for s!stem testing integrates s!stem test cases and design techni/ues into a well5

    planned series of steps that results in the successful construction of software% The testing

    strateg! must co5operate test planning( test case design( test e9ecution( and the resultant data

    collection and e)aluation %A strateg! for software testing must accommodate low5le)el

    tests that are necessar! to )erif! that a small source code segment has been correctl!

    implemented as well as high le)el tests that )alidate ma,or s!stem functions against user

    re/uirements%

    Software testing is a critical element of software /ualit! assurance and represents the

    ultimate re)iew of specification design and coding% Testing represents an interesting anomal!

    for the software% Thus( a series of testing are performed for the proposed s!stem before the

    s!stem is read! for user acceptance testing

    Dept% of &SE( "'&E 1234536 64

  • 8/10/2019 Final draft - version 4.1.doc

    52/82

  • 8/10/2019 Final draft - version 4.1.doc

    53/82

  • 8/10/2019 Final draft - version 4.1.doc

    54/82

    &:A$TER ; RES"*TS

    A recei)er dialog is to recei)e the file from the source% The recei)ed file will be displa!ed

    within the area pro)ided as shown in fig ;%6%

    F". !4 R%,%"?%

    Dept% of &SE( "'&E 1234536 6

  • 8/10/2019 Final draft - version 4.1.doc

    55/82

    &:A$TER ; RES"*TS

    A source is initiated at node S% $ac8ets are di)ided into two and reaches node N3 and node

    N1% Self interference cancellation occurs at N16 as shown in fig ;%@ due to leaf node%

    F". ! S%*-I$'%*%%$,% C#$,%#'"$ #' N24

    Dept% of &SE( "'&E 1234536 6?

  • 8/10/2019 Final draft - version 4.1.doc

    56/82

    &:A$TER ; RES"*TS

    During the data transmission in the path56( at N34 there is no further nodes and hence Self

    interference cancellation occurs at N34 as shown in fig ;%%

    F". ! S%*-I$'%*%%$,% C#$,%#'"$ #' N13

    Dept% of &SE( "'&E 1234536 6;

  • 8/10/2019 Final draft - version 4.1.doc

    57/82

    &:A$TER ; RES"*TS

    All the split data nearing to the destination D( wherein the data is merged and pac8ets will be

    combined at D as shown in fig ;%?%

    F". ! C@"$"$. ,>%'6

    Dept% of &SE( "'&E 1234536 6C

  • 8/10/2019 Final draft - version 4.1.doc

    58/82

    &:A$TER ; RES"*TS

    A file is recei)ed from the source on to the recei)er% The recei)ed file is displa!ed within the

    area pro)ided as shown in fig ;%;%

    F". ! R%,%"?% *"%

    Dept% of &SE( "'&E 1234536 @2

  • 8/10/2019 Final draft - version 4.1.doc

    59/82

    &:A$TER ; RES"*TS

    A time dela! of pac8et 3 is displa!ed after pac8et 3 reaching the destination D as shown in

    fig ;%C% The pac8et 3 has tra)elled in path53%

    F". ! P#,>%' 1 '"% %#;

    Dept% of &SE( "'&E 1234536 @3

  • 8/10/2019 Final draft - version 4.1.doc

    60/82

    &:A$TER ; RES"*TS

    A time dela! of pac8et 1 is displa!ed after pac8et 1 reaching the destination D as shown in

    fig ;%32% The pac8et 3 has tra)elled in path51%

    F". !10 P#,>%' 2 '"% %#;

    Dept% of &SE( "'&E 1234536 @1

  • 8/10/2019 Final draft - version 4.1.doc

    61/82

    &:A$TER ; RES"*TS

    A time dela! of pac8et 4 is displa!ed after pac8et 4 reaching the destination D as shown in

    fig ;%33% The pac8et 3 has tra)elled in path54%

    F". !11 P#,>%' 3 '"% %#;

    Dept% of &SE( "'&E 1234536 @4

  • 8/10/2019 Final draft - version 4.1.doc

    62/82

    &:A$TER ; RES"*TS

    A time dela! of pac8et 6 is displa!ed after pac8et 6 reaching the destination D as shown in

    fig ;%31% The pac8et 3 has tra)elled in path56%

    F". !12 P#,>%' 4 '"% %#;

    Dept% of &SE( "'&E 1234536 @6

  • 8/10/2019 Final draft - version 4.1.doc

    63/82

    &:A$TER ; RES"*TS

    A total time dela! of all the pac8ets is displa!ed after pac8ets are reaching the destination D

    and combining as shown in fig ;%34%

    F". !13 T'# '"% %#;

    Dept% of &SE( "'&E 1234536 @@

  • 8/10/2019 Final draft - version 4.1.doc

    64/82

  • 8/10/2019 Final draft - version 4.1.doc

    65/82

    &:A$TER ; RES"*TS

    MA& la!er routing is selected as Routing algorithm in the parameters to implement as shown

    in fig ;%3@%

    F". !1 MAC #;% +'"$.

    Dept% of &SE( "'&E 1234536 @?

  • 8/10/2019 Final draft - version 4.1.doc

    66/82

    &:A$TER ; RES"*TS

    Speed of simulation speed is selected as slow in the MA& la!er routing in the parameters as

    shown in fig ;%3%

    F". !1 S&%% * 6"+#'"$ 6&%% - 6=

    Dept% of &SE( "'&E 1234536 @;

  • 8/10/2019 Final draft - version 4.1.doc

    67/82

  • 8/10/2019 Final draft - version 4.1.doc

    68/82

    &:A$TER ; RES"*TS

    $ac8et started from source node 3% It carries Data pac8et and Destination address from the

    source as shown in fig ;%3;

    F". !1 P#,>%' 6'#'% * 6+,%

    Dept% of &SE( "'&E 1234536 2

  • 8/10/2019 Final draft - version 4.1.doc

    69/82

    &:A$TER ; RES"*TS

    $ac8et has reached node 1 starting from source node 3% The distance from node 3 to node 1 is

    1 units and the distance from node 3 to node 4 is units% The pac8et goes to the node 1 which

    has a minimum distance as shown in fig ;%3C%

    F". !1 P#,>%' %#,5% $% 2

    Dept% of &SE( "'&E 1234536 3

  • 8/10/2019 Final draft - version 4.1.doc

    70/82

    &:A$TER ; RES"*TS

    $ac8et has reached node 6 starting from node 1% The distance from node 1 to node 6 is 1 units

    and the distance from node 1 to node is ? units% The pac8et goes to the node 6 which has a

    minimum distance as shown in fig ;%12

    F". !20 P#,>%' %#,5% $% 4

    Dept% of &SE( "'&E 1234536 1

  • 8/10/2019 Final draft - version 4.1.doc

    71/82

  • 8/10/2019 Final draft - version 4.1.doc

    72/82

    &:A$TER ; RES"*TS

    $ac8et has reached node ? starting from node @% The distance from node @ to node is 4 units

    and the distance from node @ to node ? is 1 units% The pac8et goes to the node ? which has a

    minimum distance as shown in fig ;%11

    F". !22 P#,>%' ?"$. '=#6 %6'"$#'"$

    Dept% of &SE( "'&E 1234536 6

  • 8/10/2019 Final draft - version 4.1.doc

    73/82

    &:A$TER ; RES"*TS

    &SMA la!er routing is selected as Routing algorithm in the parameters to implement as

    shown in fig ;%14%

    F". !23 S%%,' CSMA #;% +'"$.

    Dept% of &SE( "'&E 1234536 @

  • 8/10/2019 Final draft - version 4.1.doc

    74/82

    &:A$TER ; RES"*TS

    Speed of simulation speed is selected as slow in the &SMA la!er routing in the parameters as

    shown in fig ;%16%

    F". !24 S%%,' 6&%% * 6"+#'"$ * CSMA

    Dept% of &SE( "'&E 1234536

  • 8/10/2019 Final draft - version 4.1.doc

    75/82

  • 8/10/2019 Final draft - version 4.1.doc

    76/82

    &:A$TER ; RES"*TS

    $ac8et started from node 3 as shown in fig ;%1% The pac8et will be split from node 3 and

    will be sent to node 1 and node 4%

    F". !2 P#,>%' 6'#'% * $% 1

    Dept% of &SE( "'&E 1234536 ;

  • 8/10/2019 Final draft - version 4.1.doc

    77/82

    &:A$TER ; RES"*TS

    $ac8et reached node 1 and node 4 from source% The pac8et reached node 1 has split and sent

    to node 6 and node as shown in fig ;%1?%

    F". !2 P#,>%' %#,5% $% 3

    Dept% of &SE( "'&E 1234536 C

  • 8/10/2019 Final draft - version 4.1.doc

    78/82

    &:A$TER ; RES"*TS

    $ac8et reached node 6 from node 1 and node 4% When there is a collision( The duplicate

    pac8et is re,ected at node 6 and sent to node @ as shown in fig ;%1;%

    F". !2 D+&",#'% P#,>%'6

    Dept% of &SE( "'&E 1234536 ?2

  • 8/10/2019 Final draft - version 4.1.doc

    79/82

    &:A$TER ; RES"*TS

    $ac8et dispatching at node @( reaching node and node ?% $ac8et arri)ed at node from

    node 1 and node @% When there is a collision( duplicate pac8et is re,ected as shown in fig

    ;%1C%

    F". !2 P#,>%' "6',5"$. #' $% #$

    Dept% of &SE( "'&E 1234536 ?3

  • 8/10/2019 Final draft - version 4.1.doc

    80/82

    &:A$TER ; RES"*TS

    $ac8ets reaching destination node ; from node and node ?% $ac8et arri)ed at destination

    will be merged as shown in fig ;%1C%

    F". !30 P#,>%' %#,5% %6'"$#'"$

    Dept% of &SE( "'&E 1234536 ?1

  • 8/10/2019 Final draft - version 4.1.doc

    81/82

    CONCLUSION

    Theoretical and practical results demonstrate the feasibilit! and ad)antages of a collision5

    resolution protocol for wireless broadcast% &horus allows forwarders with the same outgoing

    pac8ets to transmit roughl! at the same time( and then emplo!s ph!sical5la!er iterati)e

    decoding to resol)e collisions at the recei)er%

    ! decoding multiple )ersions of a pac8et at once( &horus achie)es transmit di)ersit! and

    impro)es loss resilience without an! retransmission% More importantl!( with its collision5

    tolerant MA&( &horus significantl! simplifies the &SMA scheduling and impro)es its spatial

    reuse% The theoretical anal!sis and s!mbol5le)el simulation show that &horus=s iterati)e

    decoding algorithm can effecti)el! resol)e collisions with negligible error propagation effect%

    It established an as!mptotic latenc! bound of when using &horus for broadcast( where r is the

    networ8 radius% This networ85le)el simulation e9periments further show that &horus

    outperforms a t!pical &SMA

  • 8/10/2019 Final draft - version 4.1.doc

    82/82

    REFERENCES

    X3Y Lin!u Zhang and ang #% Shin -Dela!5Optimal roadcast for Multihop Wireless

    Networ8s "sing Self5Interference &ancellation. IEEE Transaction% Mobile &omputing(

    )ol% 31( no% 3( Ban 1234%

    X1Y R% #andhi( S% $arthasarath!( and A% Mishra( -Minimi>ing roadcast *atenc! and

    Redundanc! in Ad :oc Networ8s(. $roc% A&M Mobi:oc( 1224%

    X4Y S%5:% :uang( $%5B% Wan( L% Bia( :% Du( and W% Shang( -Minimum5*atenc! roadcast

    Scheduling in Wireless Ad :oc Networ8s(.$roc% IEEE IN0O&OM( 122?%

    X6Y S% :uang( $ %B% Wan( B% Deng( and +% :an( -roadcast Scheduling in Interference

    En)ironment.IEEE Trans% Mobile &omputing( )ol% ?( no% 33( pp% 344;5346;( No)%122;%

    X@Y W% *ou and B% Wu( -Toward roadcast Reliabilit! in Mobile Ad :oc Networ8s with

    Double &o)erage(. IEEE Transaction% Mobile &omputing( )ol% ( no% 1( pp% 36;534(

    0eb%122?%

    XY D% Tse and $% 'iswanath( 0undamentals of Wireless &ommunication% &ambridge "ni)%(

    122@%

    X?Y R% Mudumbai( D%R% rown( "% Madhow( and :%'% $oor( -Distributed Transmit

    eamformingK &hallenges and Recent $rogress(. EEE &omm% Maga>ine( )ol% 6?( no%1(

    pp% 3215332( 0eb% 122C%

    X;Y %S% &hlebus( *% #asieniec( A% #ibbons( A% $elc( and W% R!tter( -Deterministic

    roadcasting in "n8nown Radio Networ8s(. $roc% A&M5SIAM S!mp% Discrete

    Algorithms FSODAG( 1222%

    XCY R% Mah,ourian( 0% &hen( R% Tiwari( M% Thai( :% Zhai( and +% 0ang( -An Appro9imation

    Algorithm for &onflict5Aware roadcast Scheduling in Wireless Ad :oc Networ8s(.

    $ A&M M bi& 122;