• No results found

3.6 Related work

3.6.3 Last hop

Mostshemesaddressingbothlinkandnodefailuresneedtodealwiththelast-hop

prob-lem. The last-hopproblem arises when the node immediate upstream of the failure

isthe last-hopnode before reahing thedestinationaddress. Inthesesituations, it may

beimpossiblefor the node initiatingthe reoveryproedure to determineif the failure

originatefromanode-failureoralink-failure. However,thetrashouldbetried

reov-eredone asthere is ahane that thenode is operational. In these situations, it may

be neessaryfor the reovery mehanism to distinguish between node and link failure.

This isbeauseif thefailure isatually anode-failureand it istreatedasalink-failure

itmayreate loopsin thenetwork. E.g. ifareoveryshemeweretosolvethelast-hop

problem bysendingtheinvolvedpaketstoanotherofthedestinationsneighbors,

with-out informing that it was tryingto solve the last-hopproblem and the failure was a

node-failure,thereipientnodewouldrepeattheproedure-possiblyleadingtolooping

ofthereoveredtra.

Method

InthishapterthemedhodandenvironmentusedtorealizeamodeloftheIPRTmethod

ispresented.

4.1 Choosing the environment to model IPRT

The use of models gives agreat freedom in the networks available for experimentation

as any real or imagined network may be freely modeled. It grants the opportunity to

freely experiment with ongurations on existing networks. In this way models may

aommodate for experimentingwith bothsenariosand ongurations that mightnot

have been possible in other irumstanes. For example by providing an environment

wherenetworktehnologiesmaybetestedwithoutinduingdisruptioninanoperational

ommerialnetwork.

Therearethreegeneralapproahestoonsiderwhenmodelinganewnetworkprotool.

Theutilization ofoneof theseapproahesshould notexludetheuse oftheotherones,

asthey mayomplementeah other. Theapproahesdierin how easily available the

models are, the results that may be obtained and the exibility they oer. The three

approahesarelistedbelow.

1. Mathematialanalysis

2. Testbedsandprototypes

3. Simulations

Theadvantageofusingamathematialmodelisthat theenvironmentthisapproah

provides, may be used to quikly produe results. This is espeially true in situations

where the problem area onsists of a ommon problem where a formula oralulation

methodisknowninadvaneofthemodel. Furthermore,itmightprovidealearoverview

of the environment, as well asparameters that governsthe results. The drawbaks of

usingamathematialanalysisisthatthemodelsmay,toalargeextent,needtosimplify

omplexsystems,thestatesneededtoproperlyrepresentthemodel,maygrowtoolarge

andrenderthisapproahunpratial.

One of the strongest assets of testbeds and prototypes is that they provide results

with a high degree of redibility. The use of testbeds or prototypes may be superior

to mathematial analysis when the problem area is omplex and simpliation of the

realsystemisimpossibleorundesirable. However,thisapproahmayrequireaomplex

development proess, where it might prove diult to verify or build the protool in

inrementalstages. Thus,thisisanapproahthatisoftenusedtoimplementandverify

theabilities ofa protool whererequirementsand behaviorhas matured. Furthermore,

beause the tests are run in a real environment, it might be diult to aess all the

neessarymeasurementsanditmightalsoinvolveexpensiveinstruments.

Simulationsanbeaveryexibleandeientmethodwhenanalyzing omplex

sys-tems. This approah an be used to model protools where the problem area is too

omplexto be testedin amathematialenvironmentand where aexible development

yle is needed. Furthermore,this approah provides theability to hoose the level of

abstration. This allows the simulated environment to better suit the desired level of

omplexity,andbyvaryinggranularity,itis possibletoaommodatebothdetailed and

high-levelsimulations. However,theresultsthatareobtainedfromasimulatorisusually

lessrediblethanthoseobtainedfrom testbedsorprototypes. Ifasimulatorwithan

ex-istingframeworkanbeused,thismightsavedevelopmenttimeand,inaddition,remove

someof the need for simplied orstati assumptions onhigher and lowerlayersin the

network.

Inthisthesis,anewmethodforprovidingIPfastreoverywillbetrieddeveloped,and

thus, itis antiipated that therewill beaneedforamodelenvironmentthatis exible

and allows easyadaptation of newideas in the developmentyle. Some graphtheory

will be used in the initial designphases to be able to onvert the original RT method

to appliabletoonventionalIP networks. Furthermore,theproblem areais onsidered

to be omplexto be ompletely understood in aneasy orproperfashion when using a

mathematial model. Thus, a simulatedenvironmentwill be used to model, verify the

ndingsandmeasuretheperformaneoftheIPRT method. Thisenablestheevaluation

oftheperformaneandabilitiesofaIPRTasitinteratswithotherprotoolsinvarying

onditions. Thelevelofontrolmakesiteasytomeasureandinspetallstateinformation

ofthemodel,at anystageoftheexeution. Inaddition,itmayallowforarapidhange

in model propertiesbeause ofthe ontrolthat is provided overthe dierentaspets of

thesystem. Forexamplemaytopologieseasilybereplaedand method easilyadded or

dedutedfromthemodel.

Beause simulation is performed on models and assumptions and abstrations are

used, lessoftheatualeventsarefoundin thesimulation. Thus, simulationmaygivea

goodindiationonthe performane andorretnessof amodel, but guaranteesmay be

hardtogive.

Generally,networksmaybedesribedthroughstohastimodelswhere oneormore

dis-tinteventsaet thestateoromponentsin thenetwork. A varietyofsimulators

spe-ializeson spei aspets ofnetworksimulation. However,simulatorsaregenerally set

apartbyhowtheymodeltimeandhowtheymodelevents.

Time advane in asimulatormaybemodeledwith either anext-event ora

time-sliing approah, both using a disrete time. The time-sliing approah advanes the

simulationtimebymovingforwardat xedintervals,e.g. everyseond,regardlessofthe

ativitiesbeingsimulated. With thenext-event approah thetime is advaned to the

timesheduledbyeahevent. Inmostasesthenext-event mehanismismoreeient

and allows models to beevaluated morequikly. I.e. the simulator may jump diretly

from oneevent to the next sheduled event without aeting the overall results of the

simulation.

Furthermore,thewayhanges in systemstateouris alsodening for asimulator.

Itmaybemodeledthroughtheuseofevents,ativitiesorproesses. Theeventapproah

desribesahangeasanimmediatehangeinoneormorerelatedsystemvariables. The

ativitiesapproahissomewhatsimilartotheeventapproahbutusedurationtodesribe

hanges instates. Theproessapproahjoins olletionsofeventsorativitiestogether

to desribe thelife yle of anentity. Beause theeventsare disrete andordered it is

diultto model twoeventsthat overlapin timeandat thesametimemayinterat or

interferewitheahother.

The mostommonlyused approahis disrete-timeevent-drivensimulators. A

om-monly known simulator that uses this approah is the network simulator also known

asns orns2[25℄. Anotherapproah,foundinJ-sim [26℄,isareal-timeproess-driven

approah to simulation. In suh systems, the evolution of asystem is dened by

pro-essestakingplaeatreal-timealongavirtualtime-axis. Eahproessisexeutedinan

independentexeutionontextandproessinterationismodeled,asitwouldhappenin

areal implementation. Furthermore,thereal-time proess-drivenapproahisan

exten-siontothedisrete-timeevent-drivenapproah. E.g.,theproess-drivenapproahisalso

event-driven. However,theinterationsbetweentheentities,i.e. proesses,areexpliitly

dened throughdependeniesandsynhronizationsbetweentheproesses.

InthisthesisJ-simwill beusedtoprovidethesimulatorenvironmentinwhihIPRT

will be implemented. The J-sim simulator is desribed in moredetail in the following

setion:

4.2.1 J-sim

J-simisaomponent-baseddisreteeventsimulatorwritteninJavathatmaybeusedfor

networksimulation. Itprovidesmanynetworkrelatedpakagesinludinganetwork

pak-age (INET Framework), wireless pakage, sensor network pakage, and a dierentiated

servie(Diserv)framework.

environment tries to mimi a blak-box approah to modeling often found in

devel-opmentof integratediruits. The dening propertiesof a blak-box is that bothits

purpose and the in/out signal pattern through pins or ports are fully speied. This

allows the omponents to mimi the behavior of real-world systems through message

passingand anindependentexeutionmodel. Thisisahievedbyallowingdataarriving

to aport of a omponentto be immediately proessed by that omponent in an

inde-pendentomputationontext. Inaddition,theACAallowsforafuntion allexeution

model whereaomponentmaysenddata to anotheromponent tobeomputedin the

sameomputationontextasthesender.

ThereareseveralreasonsforwhyJ-simwashoseninthisthesis. Itiswrittenpurely

inJava,andthus,providewithawell-knownprogrammingenvironment. Furthermore,it

provideswithallthebasiomponentsneededtosimulatenetworksandperform

measure-ments. Inaddition,SIMULAhasimplementedaversionoftheRRLreoveryproedure

in J-simthat ouldprovidewith bothagood foundationforinitial developmentandan

opportunitytotestbothRRL andIPRTundersimilaronditions.

IPRT Design

ThishapterontainsanoverviewoftheimportantdesignhoiesforimplementingIPRT

foronventionalIPnetworks. Ineahsetion,theproblemswillbeidentiedandpossible

solutionswillbepresented.

5.1 Constrution of the trees

TheoriginalRTwork[1℄presentstwodierentalgorithms;oneforlinkfailures,and one

fornodefailures. Bothofthealgorithmsfollowthebasiideaofgrowingtheredandblue

treesgradually byaddingnewredundantpaths. Furthermore,thealgorithms introdue

avoltagerule toensurethat theredundantpropertyofthetreepairisahieved. This

isdonebylettingtheruleimposeaompleteorderonthenodesasthetreesaregrownto

formapairofredandbluetrees. Thereareseveralattributesthatgoverntheperformane

andbehavioroftheIPRTtreeonstrution,wherethemainattributesarepathandyle

reation,and run-timeofthealgorithm.

5.1.1 Introduing the redundant tree algorithm

The Node-algorithm,shown in Algorithm 1, is designed to work with

two-vertex-onnetedgraphs. Itstartsbyaddingarandomlyhosenyle,ontainingthreeormore

nodes,fromthegraphwitharoot

S

. Therootisthenassignedtwovoltages;oneforthe

redtreeandoneforthebluetree,suhthat

V blue = v max

and

V red = 0

. Subsequently,the remaining verties in the yleare given voltages in a dereasingfashion, followingthe

yle in anarbitraryhosendiretion. Thevoltagesassigned are within theboundaries

of

v max

and

0

. Furthermore,theseletednodes,startingfrom

S

, areadded tothe blue

and red tree, in suh a way that the assigned voltages are dereasing and inreasing,

respetively. Subsequently,thetreesaregrownbyonnetingtwonodesalreadyassigned

to the trees, with one or more nodes not assigned; i.e. forming an arh starting and

endinginthetree. Thearhisthenorientedsothatthestartingnodeistheonewiththe

highervoltageofthetwonodesinthetrees. Followingadiretedpathfromthestarting

1:

j =

1

2: Choose any yle

(S, C 1 , ..., C k , S)

in the graphwith k

2. Let

N 1

be the set of

verties

{S, C 1 , ..., C k }

andorder thesevertiesby

v max > v(C 1 ) > v(C k ) > 0

3:

A B 1 = {(S, C 1 ), (C 1 , C2), ..., (C k−1 , C k )}

A R 1 = {(S, C k ), (C k , C k−1 ), ..., (C 2 , C 1 )}

4: while

N j 6= N

do

5:

j = j + 1

6: Chooseapath

P j = (X j, 0 , X j, 1 , ..., X j,L j ), L j ≥ 2

in thegraphsuhthat

X j, 0 ∈ N j−1

and

X j,L j ∈ N j−1

,with

v(X j, 0 ) > v(X j,L j )

.

If

X j,L j = S

then

v(X j,L j ) = 0

If

X j,0 = S

then

v(X j,0 ) = V

Theotherverties,

X j,i , i ≤ i ≤ L j

, arehosenoutsideof

N j−1

.

7:

N j = N j−1 ∪ (X j,1 , ..., X j,L j )

8: Orderthevertiesin

P j

by

v(X j,0 ) > v(X j,1 ) > ... > v(X j,L j−1 ) > (v max )

,

where

v max = y∈N max

j−1 (v(Y ) : v(Y ) < v(X j, 0 ))

9:

A B j = A B j−1 ∪ {(X j, 0 , X j, 1 ), (X j, 1 , X j, 2 ), ..., (X j,L j−2 , X j,L j−1 )}

A R j = A R j−1 ∪ {(X j,L j , X j,L j−1 ), (X j,L j−1 , X j,L j−2 ), ..., (X j,2 , X j,1 )}

10: endwhile

N j

Thesetofvertiesinludedintheredandbluetreesatstage

j A B 1

Thesetoflinkspresentin theBluetreeatstage

j

A R 1

Theset oflinkspresentintheRedtreeatstage

j S

Therootnodeoftheredandbluetrees

P j

Thearh(path)foundat stage

j L j

Lengthofthearhfoundat stage

j X j,i

Node

X

addedatstage

j

at plae

i

in

P j

v(X)

Thevoltageassignedtonode

X

node, thearh istraversed. All nodes,exepttherstand last,areassigned voltagesin

adereasingmanner. Therstandthelastnodeonthearhisnotassignedvoltagesas

theyarealreadyinludedinthetrees,andhasthereforealreadybeenassignedvoltages.

Thenewnodesaregivenvoltageswithintheboundariesof

v(X j, 0 )

andthehighestvoltage

assignedtoanynodeinthetreethatdoesnotexeed

v(X j, 0 )

-notneessarilythevoltage

of

X j,L j

. Thenewnodes arethen onnetedto theblue tree, through

X j, 0

, andto the

redtree,through

X j,L j

,followingthesamevoltagerulesaswhentheylewasreated.

Fromthisnode,theyle

[A − B − E − F − C − A]

isfound,andthenodesareassigned

theirvoltagesaordingtolinetwo. Theredtreethusonsistsofinreasingvoltages,and

theblue dereasingvoltages,followingthethree-growthrulefoundinlinethreeandnine

in Algorithm1. Next, thearh

[E − G − F ]

is found. Sine Fhasthehighervoltageof

6,thisbeomestheupperboundary. Thelowervoltage4,whihisownedbyE, beomes

thelowerboundary. Thus, Gisassignedavoltageof5. Eisthen addedto theredand

blue tree in aordaneto the voltage rule found in line 8. Thenext arh to be found

is

[C − D − B]

, and sine C has the highest voltage, it beomes the upper boundary.

However,thelowerboundaryisvoltage6ownedbynodeF.ConsequentlyD isassigned

avoltageof7andaddedto theredandblue treesaordingly.

The Link-algorithm is verysimilar to theformerpresentedNode-algorithm. The

main dierene between thetwo, is that the link-failurealgorithm allows thearhes to

start and end at the same node. Thus, it beomes neessary to assign two voltages

to eah node and in this manner expand the voltage rule. The Link-algorithm may

potentiallyyieldshorterreoverypathsat theexpenseofintroduingartiulationpoints

intheredundanttrees. Thisisbeausemorelinksmaybefreelyusedwhenreatingtrees

with the Link-algorithm. However, the Link-algorithm is not required to produe

artiulationpointswhere noneareneeded. Itmaythereforebemadetoprotetagainst

nodefailurestotheextentallowedbythetopology. Thismaybedonebyrefrainingfrom

letting an arh start and end at thesame node asfar aspossible. However, this may

introdueabiggeromputationalostin thealgorithm.

The layout of topologies where the Node-algorithm and the Link-algorithm

re-spetivelymaysuessfullybeapplied,isinherentlydierent. Thisisbeausethe

Node-algorithmhasastriterrequirementontheonnetivityofthenetworksitmaybeapplied

to. TousetheNode-algorithm,thenetwork needsto beatleast two-vertex-onneted,

whereastheLink-algorithm onlyneedsthenetwork tobetwo-edge-onneted.

5.1.2 Important properties

Thereare severalattributesthatgoverntheperformaneandbehavioroftheIPRTtree

onstrution,andtheymayinueneresoureusagein bothroutingandforwarding:

Theseletion-algorithmusedforpathandylereation

Run-timeofthealgorithm

TheabilitytoprovideQoSproperties

Themannerofhowtheyleandthearhesareseleted,isofgreatimportanetothe

attributes oftheredundanttrees. Intheoriginal RT algorithms, e.g. Algorithm1, this

wasleftas anopenquestion. However,there hasbeensomeresearhinthisareabyXue

et. al. [27℄[16℄[17℄. Theirresultsshowthatthereationof ylesandarhesisvitalfor

IPRT to meet thedesired performane riteria. Agood examplemay behow thetrees

wouldperformwithashortest-pathversuslongest-pathseletionoftheyleandarhes;

Consideranodethathastwoneighbors,wherealinkhasfailedbetweentherootnodeand

pathbetweenthetwonodesthrougheithertheredorthebluetreewouldthenbeofequal

size to the lengthof the yle- i.e. the lengthof

A B 1

or

A R 1

in line three in Algorithm

1. Thus,ifashortestpathwasused,therewouldbeaguaranteethatthisreoverypath

wouldbeofminimallength. Withadepth-rstsearhthatterminatesattherstnode

in-tree,theIPRTmethodwouldnotbeabletogivesuhaguarantee. Iftheinitialylewas

reatedusing alongest-path algorithm, the path-lengthmight besigniant. However,

the inuene thehosenseletion-algorithm exertson the performane and behaviorof

theIPRTmethodisdependantuponthetopology. Forexample,inapurering-topology,

thevariousseletion-algorithmswouldhavenoimpatatallontheperformaneofIPRT.

It hasbeenshownthat anapproah, whereinthelengthoftheyle andthearhesare

kept to a minimum, does show a signiant improvement with respet to the average

reoverypath length[17℄. In addition, it has been shown that this approah generates

treeswithahigherdegreeofoverageinaseofmultipleonurrentfailures.

It isimportantfortheIPRTalgorithmto supportsomelevelof QoS,asarandomly

driven approah may have a negative impat on the performane and resoure usage.

Often,ostsonlinksareusedforQoS,i.e. tomaximizeavailablebandwidthortominimize

the number ofhops. Throughlink ost, the RT method mayalso support someTra

Engineeringaspets,suhastheabilitytosetahighostonlinksknowntofailregularly.

However,advaned requirementsmayintrodueabiggeromputationalost.

Determiningthebest redundanttrees-i.e. QoSorientedIPRT-foratopology,isan

NP-ompleteproblemsomewhatsimilartotheTravellingSalesman-problem. Aninformal

denition of NP problems isalass of problems that anbe veried by adeterministi

Turingmahinein polynomialtime. Furthermore,NP-ompleteproblemsareasublass

of NP problems that has the property that any problem in NP an be polynomially

reduedtoit. Tondthebestsetofredandbluetrees,thealgorithmneedstotryevery

possibleombinationandompositionofirlesandarhesinagiventopology. Tosearh

fortheperfetsolutionwouldbeimpossiblein pratie,asthetimeneededto alulate

fortheperfetsolutionwouldbeimpossiblein pratie,asthetimeneededto alulate