[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: soft state (was Re: shim6 and bit errors in data packet headers
On 12-mei-2005, at 15:30, marcelo bagnulo braun wrote:
I mean, is it possible to create two contexts between the same two
nodes with the same two ULIDs (and perhaps a different context
tag)? would this make any sense?
Having two contexts between the same hosts can lead to trouble. On
the other hand, making sure this can't happen is also hard. But we
should definately not make this something that happens routinely, IMO.
The above assumption is based in that i think this is needed to
properly protect from flooding attacks.
I mean, the goal of reachability tests in a shim protocol can be
two-folded:
- to explore if a given address pair is working
- to determine if a given host is willing to receive packets at a
given address (i.e. to prevent flooding attacks)
the first goal can be achieved with a kind of ping (enhanced ping
in order to determine unidirectional reachability) but it may not
require that the reachability test is associated with a given
context. I mean, the goal here is just to obtain reachability
information
The second goal is somehow different, and since what is being
queried is the willingness of the node to receive traffic through a
certain address, it is needed to inform the node which traffic are
we talking about.
The thing is, that you need some kind of semi-reliable communication
to accomplish all of this, and to do the negotiation too. (In the
case of the reasability testing, it would be useful if the receiver
of a probe would have a semi-reliable way of telling the sender that
the probe was received.) There is also some circularity: you need
connectivity to negotiate locators, but you need to know the locators
already to discover connectivity.
I'm thinking we could come up with a kind of "UDP on steroids" that
similarly to SCTP works over multiple addresses. Such a semi-reliable
multi-address datagram protocol would be very useful for the
negotiations and similar exchanges, and it would supply reachability
information as sort of a by-product.
Separating this layer also has the advantage that a simple
unprotected multi-address datagram protocol can be used for other
purposes as well, and it allows us to layer the solution so that we
can work on different aspects independently.
:-)
Context state AND path failure AND unidirectional connectivity....
this seems amusing enough
Since the situations where context state doesn't exist (= before the
start of a session) and unidirectional reachability (caused by
ingress filtering) will be very common, we really need to cover this
case.