ietf
[Top] [All Lists]

Re: IETF Last Call conclusion for draft-ietf-6man-rfc2460bis-08

2017-03-15 10:55:28
Suresh,

I appreciate your effort and I’m obviously interested into finding a way out 
from this issue.

To my view, due to the work that has been initiated in 
drat-ietf-6man-segment-routing-header and recently in 
draft-filsfils-srv6-network-programming, the current text of RFC2460 (i.e., not 
the “bis” version) is good enough.

RFC2460 section 4 states:

   With one exception, extension headers are not examined or processed
   by any node along a packet's delivery path, until the packet reaches
   the node (or each of the set of nodes, in the case of multicast)
   identified in the Destination Address field of the IPv6 header.

Now, RFC2460 has been written almost 20 years ago and since then, both 
technology and network operators requirements have evolved.

We do have today use cases where not only the source of a packet should be 
allowed to insert a header but also the source “domain” of a packet. I’ll try 
to explain.

In a domain controlled by a single organization (typically the set of ASs under 
control of the same operator) a packet enters at the edge where the ingress 
node applies a policy resulted into an additional outer ipv6 header that may or 
may not contain an extension header. Bottom line, the outer header means that 
now, it is a NEW packet, originated by the ingress node, with SA/DA 
representing the nodes that are inside the operator domain. Therefore, we can 
say that this new packet (formed by an outer header and encapsulated original 
packet) is now owned by the operator and whatever the operator does with this 
packet:

. The packet MUST leave the operator network in the exact same shape/format as 
it entered (i.e.: outer encapsulation removed).
. The outer header MAY change while in transit in the operator’s domain. 
Moreover, a header MAY be inserted while inside the operator’s domain (knowing 
that outer header and any other inserted header would be removed at egress). 
This means that an SRH MAY be inserted at the same time the outer header is 
added but it can also be that the ingress adds the outer header and some other 
node inserts an SRH (e.g.: fast reroute within operator’s infrastructure).
. While in transit, the operator network must handle aspects like MTU properly, 
taking into account the increased size of the packet.

So, this use case enlarge the rule for header insertion.

Originally RFC2460 stated that only the source of the packet is entitled to add 
an EH. Now we’re going to propose that the source “domain” of the packet is 
allowed to insert EHs. The source domain being the set of nodes (including the 
ingress node adding the outer header) under common administration. This also 
implies that when the packet leaves the domain, it must recover its original 
format/shape.

In order to have a more productive discussion, we are writing a draft on header 
insertion that will be submitted as soon as the windows re-open (during ietf 
week).

In the mean time, I think it is way too premature to come to conclusion on what 
text should be used for RFC2460bis and I recommend that the current text is 
left unchanged until we figured out what to do with EH insertion.

Thanks.
s.


On Mar 15, 2017, at 3:47 AM, Suresh Krishnan 
<suresh(_dot_)krishnan(_at_)ericsson(_dot_)com> wrote:

Thanks to everyone who commented during the IETF Last Call of 
draft-ietf-6man-rfc2460bis-08. The IETF last call discussion for this draft 
was mainly focused around the text in Section 4 that discusses the handling 
of extension headers. The biggest concern raised was that the current text is 
ambiguous on whether header insertion is allowed on intermediate nodes or 
not. There were some people arguing that an explicit prohibition is not 
necessary as the text is already clear, while others believed that explicitly 
listing the prohibitions will minimize any misunderstandings in the future. 
There was also a small number of people who wanted to explicitly allow header 
insertion and describe how to do it, but this was clearly out of scope for 
this draft (but may be in scope for future work in 6man). Overall, no one 
argued against the fact that the intent of the text in RFC2460 was to forbid 
insertion of extension headers on any other node but the source of the 
packet.  The only ar!
 gument made against adding clarifying text was that the text was already 
clear. Given this, I believe there is consensus to add explicit text about 
header insertion into the draft before it progresses further. I have discussed 
this with the editor and the document shepherd and would like to propose the 
following text change.

OLD (from -08):

The insertion of Extension Headers by any node other than the source
of the packet causes serious problems.  Two examples include breaking
the integrity checks provided by the Authentication Header Integrity
[RFC4302], and breaking Path MTU Discovery which can result in ICMP
error messages being sent to the source of the packet that did not
insert the header, rather than the node that inserted the header.

One approach to avoid these problems is to encapsulate the packet
using another IPv6 header and including the additional extension
header after the first IPv6 header, for example, as defined in
[RFC2473]

With one exception, extension headers are not processed by any node
along a packet's delivery path, until the packet reaches the node (or
each of the set of nodes, in the case of multicast) identified in the
Destination Address field of the IPv6 header...

NEW:

With one exception, extension headers are not examined, processed,
inserted, or deleted by any node along a packet's delivery path,
until the packet reaches the node (or each of the set of nodes, in
the case of multicast) identified in the Destination Address field of
the IPv6 header...

Please feel free to comment either privately or on list if you have any 
concerns with this resolution going forward.

Regards
Suresh

P.S.: There were also other editorial issues that were raised during last 
call and they should be addressed in the next version of the 
draft--------------------------------------------------------------------
IETF IPv6 working group mailing list
ipv6(_at_)ietf(_dot_)org
Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------