One thing we haven't discussed so far: if upper layers provide us with
a hint, what exactly does the multihoming layer do after receiving such
a hint?
I thought this was what we were discussing with Erik in the Preserving established sessiones thread :-)
IMHO, i would like to explore alternative approaches first.
What about when recieving a ULP hint that there is a problem, change both
source and destiantion locators and send the packet with rewrite ok bit not
set?
A more aggresive option would be to send multiple packets in paralel, each
one with a different combination of source and destiantion address, and see
which reply comes first.
However, this doesn't solve what we should do when rewriting isn't permitted. Obviously we could come up with a multihoming mechanism where rewriting is always allowed,
I don't see how.
I mean, we are going to have two mechanisms, one based on bgp + rewriting
and the other one is based on ULP hints.
Now it is expected that the ULP hints mechanism will be have a better response time i.e. it will detect problems faster, right?
However, the ULP hints mechanism works in the host itself and the
bgp+rewrite mechanism is in the routers. This means that even if the ULP
hint mechanism has detected a problem and changed the locator, if the final
word about this belongs to the routing system, the bgp+rewriting mechanism
will overrule the decisions made by the ULP hint mechanism which is exaclty
what we don?t want
So we need a mechanism to force the routing system to accept choices made by
the host, since the host is better detecting problems in the path.
Such a mechanism seems to require the capability to express that rewriting
is not permited.
But "legacy" IPv6 also doesn't permit rewriting, so we must be prepared to handle this. The obvious solution is source address based routing, but it doesn't seem like everyone is convinced.
Well, we could use a routing header.
Even we could define a routing headers
that is elimated by the exit routers, in order to addresss the MTU reduction
problem.
An obvious comment about source address based routing is that source address
based routing only has to be implemented within the multihomed site.