prophet update

22
PRoPHET Update DTN Research Group @ IETF 78 27 March 2010 Elwyn Davies [email protected] Avri Doria Samo Grasič Anders Lindgren [email protected] [email protected] [email protected]

Upload: lucita

Post on 15-Jan-2016

13 views

Category:

Documents


0 download

DESCRIPTION

DTN Research Group @ IETF 78 27 March 2010 Elwyn Davies [email protected] Avri Doria Samo Grasič Anders Lindgren [email protected] [email protected] [email protected]. PRoPHET Update. Progress with PRoPHET New Version http://tools.ietf.org/html/draft-irtf-dtnrg-prophet-06. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: PRoPHET Update

PRoPHET Update

DTN Research Group @ IETF 7827 March 2010

Elwyn Davies

[email protected]

Avri Doria Samo Grasič Anders [email protected] [email protected] [email protected]

Page 2: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 2

Progress with PRoPHETNew Version

http://tools.ietf.org/html/draft-irtf-dtnrg-prophet-06

PRoPHET in use in N4C testbeds Slovenia (continuous use for almost 2 years) Arctic Sweden (Summer testing)

Simulation work by Samo and Elwyn Draft update includes

Addressimg IRSG review comments Improvements resulting from recent experiments Additional capabilities to fix long standing issue

Page 3: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 3

Experiments in Progress - 1 Slovenia

Gradually extending network of unattended environmental sensors (meteo and radiation)

Data mules Active nodes in cars Symbiotic (Parasitic) nodes – just a USB memory stick

Using PRoPHET routing Analysis of results has found problem with

transitive update algorithm

Page 4: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 4

Experiments in Progress - 2 Arctic Sweden

See reports – previous DTNRG slides! GSM to edge of area, Helicopter mules Two systems running in parallel

'Village Router' hot spot system - static routing/DTN2See http://village.n4c.eu - need to set HTTP proxy for best effect! Email and web caching proxy system

PRoPHET routing nomadic systemSee http://dtn.n4c.eu for more info, NSIM, web cam, logs, etc

Two months testing during reindeer marking/ hiking season in Padjelanta

Page 5: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 5

Refresher: Key Equations

Notation: P(A,B): Delivery Predictability in Node A for delivering a bundle to Node B.

Eqn 1: On A encountering B P_(A,B) = P_(A,B)_old + ( 1 - P_(A,B)_old ) * P_encounter

Eqn 2: If A hasn't encountered D for a while: P_(A,D) = P_(A,D)_old * gamma^K

Eqn 3: Does A meeting B mean that A is a better bet for delivering to C? Transitivity... P_(A,C) = P_(A,C)_old +

( 1 - P_(A,C)_old ) * P_(A,B) * P_(B,C) * beta

Page 6: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 6

Simulation Work - 1 Samo working to reproduce and validate results

from RAPID paper comparison PRoPHET came out very poorly in this work

Slow progress due to various problems Competing demands of test bed deployment Acquisition of simulation code used by RAPID team

Found RAPID PRoPHET implementation didn't match specification

Recently got comparative results using ONE sim #1 conclusion: match proto to scenario

Otherwise random routing will work better!

Page 7: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 7

Simulation Work 2 Elwyn has been working on visualizing the

evolution of delivery predictability Simple Excel Spreadsheet simulator Python program + Excel display using mobility

files generated by Anders original prpogram. Using these to check how DPs evolve and

ensure that they reflect the expected future encounters. Evaluated proposed alternative evolution

equations Selected replacements now in field trials

Page 8: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 8

Main Problems Identified Inappropriate evolution of delivery

predictabilities (DPs) Repeated encounters of '3rd party' nodes leads to

jammed bundles . Parking Lot Problem – When is an encounter not a

(new) encounter? Totally random encounters => noise in DPs Deriving a relationship between the various

PRoPHET parameters Need guidelines for setting parameters appropriately

Page 9: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 9

Bundles Jammed in 3rd Parties Scenario (at least 4 nodes: A - D):

Node B meets Node A & (separately) C occasionally. Nodes C and D meet each other repeatedly between

meetings of Nodes B.and C DP for Node A increases steadily in Nodes C & D

until bigger than DP for Node A in Node B Result: Bundles for A not transferred from C/D to B;

hence jam in C and are never delivered. Identified in long term Slovenian experiment Fix: Improved transitivity update algorithm

Page 10: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 10

Parking Lot Problem Scenario:

Multiple Wi-FI nodes milling around in a small area Multiple 'encounters' e.g. due to Wi-Fi

reconnections. Can result in

DP update 'loops' – changes propagated round loop One actual encounter being treated as several

Identified from theoretical considerations Fix: Allow nodes to suppress DP updates

Page 11: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 11

Noise in DPs from Random Encounters

Scenarios in which a node encounters lots of nodes that it will never meet again Typical of some simulation scenarios

Can lead to random routing outperforming PRoPHET (and other algorithms) if there is little pattern to encounters Make sure you are using PRoPHET in an

appropriate scenario! Fix: Set P_(A,B) to a lower value on 1st meeting

Could avoid applying transitivity on first encounter

Page 12: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 12

Too Many Degrees of Freedom?

PRoPHET has a lot of (apparently) independent parameters.

There wasn't a good story on how to choose a consistent set of parameters.

Fix: Describe how they each relate to the 'characteristic time period' of the PRoPHET zone. and this also relates to the approptiate bundle

lifetime and custody timer settings

Page 13: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 13

Improvements: Equation 1

Reduce the effect of random, one-off encounters

On first encounter set DP to a lower value Suggest 0.25 rather than the 0.75 in old

version Do the same if the DP has decayed below a

threshold because last encounter was a long time ago.

Use existing equation 1 on subsequent encounters when P_(A,B) not below threshold

Page 14: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 14

Improvements: Equation 1

Avoid DP actually reaching 1 ('Almost Sure') on repeated encounters

New equation: P_(A,B) = P_(A,B)_old +

( 1 - delta - P_(A,B)_old ) * P_encounter Delta is a small value that stops the value

getting right to 1.0

Page 15: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 15

Improvements: Equation 3 Avoid DP increasing inappropriately due to

repeated encounters between 3rd parties that haven't actually met suitable intermediaries.

The improved equation is intended to converge the DPs for C in A and B after repeated encounters BUT only to the highest value that either of them started with P_(A,C) =

MAX( P_(A,C)_old, P_(A,B) * P_(A,C) * beta ) Beta is a 'slowing factor' – reduces convergence

rate

Page 16: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 16

Characteristic Time Period Concept: A ProPHET zone has a characteristic

time period (CTP) that is determined by the expected time intervals between encounters

Bundle expiry times should be set so that bundles will be around sufficiently long to be delievered but not hang around for too long

DP decay should reduce a DP to essentially zero after 3 to 5 multiples of CTP

An encounter should at least undo the expected decay between encounters

Treat closely spaced encounters as one

Page 17: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 17

Improvements: Suppress DP Recalc

Added a flag into the Hello TLV that requests suppression of DP recalculation phase.

Has to be agreed by both parties in an encounter Otherwise recalculation is done on both sides

Nodes can choose to suppress recalculation if they have met very recently and they don't have new information to convey Very recently means (say) 5% of CTP

Page 18: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 18

Progress towards RFC

RG Last Call completed Various clarifications (especially thanks to Kevin)

Currently in IRSG Review process Somer additional clarifications added in latest

version (-06) Some significant improvements since review

May need to repeat last call/review

Page 19: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 19

New Protocol Version

The protocol has been taken to version 2 as the changes to the equations and Hello TLV are not fully interoperable.

Page 20: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 20

Next Steps Pass the improvements to IRSG reviewer Check performance of improvements in the

field Do we need another Last Call?

There have been significant updates

Page 21: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 21

Thank You

Page 22: PRoPHET Update

30 July 2010 PRoPHET Update - IRTF 78 22

DTN2 Functional Spec Product of N4C work – Elwyn and Avri Doria

Nearly 200 pages!! Currently accessible at

http://www.n4c.eu/Download/n4c-wp2-023-dtn-infrastructure-fs-12.pdf

Contains: Spec of API A complete specification of the TCL command

interface Detailed operation of the core specification

Missing – Sessions and External Router/CL