On 3/25/2016 7:25 AM, [email protected] wrote:
I'm quite sure you have deployed  implementations, from several
prominent vendors, that will not properly handle this case.
I'm waiting for this/these implementation(s) to make a public statement in this 
thread / IETF WGs. Then we can discuss whether the issue comes from RFCF3107 or 
from the implementation.
If none make a public statement, we should assume that all implementations are 
capable of receiving multiple labels, as per RFC 3107.
I strongly disagree with this. We should not ignore the facts just because you don't like the way the facts were gathered.

A better approach would be to have operators state whether they have any deployments in which the "multiple labels" feature is used in a multi-vendor environment. It is very useful when working on a "bis" draft to determine which features have been proven to work in a multi-vendor environment and which have not.

Any non-compliant implementation may create interoperability issues and 
unpredictable results.
 From an IETF standpoint, the question is whether a RFC 3107 implementation 
would create interoperability issues, up to shutting down the BGP session.

There are deployed 3107 implementations which always assume that the NLRI contains a single label. If you tried to interwork these with 3107 implementations that send multiple labels , you will experience the kind of disruption. 3107bis tries to allow the use of multiple labels while preventing this sort of disruption from occurring.

If you mean that some non-compliant implementation do not work, well let's fix 
them.

The situation is that there is a commonly deployed "bug" in old implementations, but it is not seen because the bug is in a feature that no one has been using. If new implementations use that feature, the bug will be seen, and network disruption will occur. One could say "fix all the old implementations", but it seems wiser to have new implementations avoid tickling the bug. The Capability is not proposed for the purpose of helping the vendors, it's there to help the operators.

I'm not sure why you think there would be BGP session drops due to 3107bis; if a 3107 implementation sends multiple labels to a 3107bis implementation, I think the 3107bis implementation would do "treat-as-withdraw" rather than "drop the session".

Perhaps a reasonable approach for 3107bis would be the following:

- A 3107bis implementation will not send multiple labels to a peer unless the Capability has been received from that peer. (This prevents 3107bis implementations from tickling the 'bug' in 3107 implementations.)

- A 3107bis implementation will accept multiple labels from a peer even in the absence of the Capability.

Another approach would be to have a knob that determines whether the Capability needs to be used before multiple labels are advertised.

_______________________________________________
BESS mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/bess

Reply via email to