[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Simplified REAP description



On 27-okt-2005, at 18:44, Erik Nordmark wrote:

Receiving a packet with iseeyou=yes
-----------------------------------

If this is a "payload reception report", then it is just a FBD keepalive and
is handled as any shim6 control packet above (resetting timers).

If it is an "event reception report", it indicates that we can terminate the
explore phase.
If the host has not yet sent a "iseeyou=yes" event report, it needs to
send one in response to this packet.

Now suppose:

A1 ----> B1  (data)
A1 <---- B1  (data)
A1 ---|  B1  (data, failure)
             (timeout)
A1 <---- B1  (icu=0)
A1 ---|  B1  (icu=1)
A2 <---- B1  (icu=1, B hasn't timed out from the last message by A)
A1 ----> B2  (icu=1)

Both now think that the other end can see them but this isn't necessarily true because the icu=1 doesn't necessarily apply to the last packet sent by the other side. For instance:

A1 ----> B1  (data)
A1 <---- B1  (data)
A1 ---|  B1  (data, failure)
             (timeout)
A1 <---- B1  (icu=0)
A1 ---|  B1  (icu=1)
A2 <---- B1  (icu=0)
A1 ----> B2  (icu=1)
A2  |--- B1  (icu=1, random packet loss on otherwise working link)
A2 ---|  B2  (icu=1, ingress filtering)
A2 <---- B2  (icu=1)

A will now think that A2->B2 works, which isn't true.