raiden-network / raiden

Raiden Network
https://developer.raiden.network
Other
1.84k stars 376 forks source link

Add timestamp to RouteState #4213

Open palango opened 5 years ago

palango commented 5 years ago

See https://github.com/raiden-network/raiden/blob/develop/raiden/transfer/state.py#L183

A RouteState should have an associated timestamp, so the initiator can decide when invalidate routes and request new ones from the PFS.

konradkonrad commented 5 years ago

I think this would be helpful only in combination with a "decay confidence" measurement from PFS: For each returned route, PFS should include a "best before" date:

PFS: with 95% confidence, given my knowledge about the network's past, this route will still work x seconds/minutes/hours from now.

Since Raiden aims at sub-second transfer times, any client side configuration setting for a fixed route invalidation interval (larger than few seconds) would be indistinguishable from a "best effort" approach (i.e. just exhaust all initially inquired routes). This is, because any node in a route can change its capacity in the blink of an eye.