Re:[Bier] BIERv6 Encapsulation Presentation in BIER

zhang.zheng@zte.com.cn Thu, 30 July 2020 07:02 UTC

Return-Path: <zhang.zheng@zte.com.cn>
X-Original-To: ipv6@ietfa.amsl.com
Delivered-To: ipv6@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 44C943A0CB7; Thu, 30 Jul 2020 00:02:16 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.907
X-Spam-Level:
X-Spam-Status: No, score=-1.907 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, HTML_MESSAGE=0.001, RCVD_IN_MSPIKE_H4=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_HELO_NONE=0.001, SPF_PASS=-0.001, T_REMOTE_IMAGE=0.01, UNPARSEABLE_RELAY=0.001, URIBL_BLOCKED=0.001] autolearn=ham autolearn_force=no
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 82i7WaHjzx4k; Thu, 30 Jul 2020 00:02:13 -0700 (PDT)
Received: from mxhk.zte.com.cn (mxhk.zte.com.cn [63.217.80.70]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C5C5B3A07C4; Thu, 30 Jul 2020 00:02:11 -0700 (PDT)
Received: from mxct.zte.com.cn (unknown [192.168.164.217]) by Forcepoint Email with ESMTPS id 59A82DB49B40A7AE5F4D; Thu, 30 Jul 2020 15:02:09 +0800 (CST)
Received: from mse-fl1.zte.com.cn (unknown [10.30.14.238]) by Forcepoint Email with ESMTPS id D1D71198CEF505310482; Thu, 30 Jul 2020 15:02:08 +0800 (CST)
Received: from njxapp04.zte.com.cn ([10.41.132.203]) by mse-fl1.zte.com.cn with SMTP id 06U71voe064584; Thu, 30 Jul 2020 15:01:57 +0800 (GMT-8) (envelope-from zhang.zheng@zte.com.cn)
Received: from mapi (njxapp04[null]) by mapi (Zmail) with MAPI id mid203; Thu, 30 Jul 2020 15:01:57 +0800 (CST)
Date: Thu, 30 Jul 2020 15:01:57 +0800
X-Zmail-TransId: 2afc5f227065a3c90ed4
X-Mailer: Zmail v1.0
Message-ID: <202007301501573488388@zte.com.cn>
In-Reply-To: <CABNhwV2BuQgw7nKoVkSPh-uUZxfJOyFoWvdAzfCy7DtVUQcMCg@mail.gmail.com>
References: CABNhwV2kYQgX46864G5-HxKkNV4rca-mfGkzOzF1-8_P5pMzxw@mail.gmail.com, CABNhwV2BuQgw7nKoVkSPh-uUZxfJOyFoWvdAzfCy7DtVUQcMCg@mail.gmail.com
Mime-Version: 1.0
From: zhang.zheng@zte.com.cn
To: hayabusagsm@gmail.com
Cc: bier@ietf.org, gengxuesong@huawei.com, ipv6@ietf.org, michael.mcbride@futurewei.com, xiejingrong@huawei.com
Subject: Re:[Bier] BIERv6 Encapsulation Presentation in BIER
Content-Type: multipart/mixed; boundary="=====_001_next====="
X-MAIL: mse-fl1.zte.com.cn 06U71voe064584
Archived-At: <https://mailarchive.ietf.org/arch/msg/ipv6/9mmAfrPOWJPtKGCa5JfVv0icuiI>
X-BeenThere: ipv6@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "IPv6 Maintenance Working Group \(6man\)" <ipv6.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipv6>, <mailto:ipv6-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ipv6/>
List-Post: <mailto:ipv6@ietf.org>
List-Help: <mailto:ipv6-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipv6>, <mailto:ipv6-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 30 Jul 2020 07:02:16 -0000

Hi Gyan,



Thank you for your agree with most of my comments! Please modify bier-ipv6-requirements draft for syn. Don't let the draft mislead people any more.


And as you said, what's the differece between "IPv6 header + BIER header" and "IPv6 header + DOH + BIER header options"?


But the EHs execution may not like your expect.


Because the DA changed in every hop (BIER-capable) associated with BIER header.


So for every BFR, the packet reaches the destination.


If you think the other EHs, such as fragment EH should be executed in final BFER, how do you know if this node is the final destination?


Thanks,



Sandy





原始邮件



发件人:GyanMishra <hayabusagsm@gmail.com>
收件人:张征00007940;
抄送人:bier@ietf.org <bier@ietf.org>;gengxuesong@huawei.com <gengxuesong@huawei.com>;ipv6@ietf.org <ipv6@ietf.org>;michael.mcbride@futurewei.com <michael.mcbride@futurewei.com>;xiejingrong@huawei.com <xiejingrong@huawei.com>;
日 期 :2020年07月30日 11:33
主 题 :Re: [Bier] BIERv6 Encapsulation Presentation in BIER





Hi Sandy 





Thanks for your comments in the BIER ML and v6 related I added to this thread.




Answers  in-line




Thanks 




Gyan



On Wed, Jul 29, 2020 at 10:28 PM <zhang.zheng@zte.com.cn> wrote:


Hi Gyan,


Thank you bring this topic here in 6MAN working group also.


I think a simple protocol number assignment for BIER can achieving BIER forwarding in IPv6 envionment.


Please find the document through: https://datatracker.ietf.org/doc/draft-zhang-bier-bierin6/






About the bier-ipv6-requirements, please also find my comments through: https://mailarchive.ietf.org/arch/msg/bier/iCjQHt-QdHLmyrR2hDLrBbV1MRg/


For easy to reading, I copy some of them here:


1. If some packet needs to be fragmented, BFIR does the fragment, and the fragmented packet is BIER payload, it won't be executed in BFR.






   Gyan> Agreed per RFC 8200 Sec 4





And the same with IPSEC ESP. The ESP is also the BIER payload, and the intermediate BFRs will not see it and execute it.






    Gyan> Agreed per RFC 8200 Sec 4





2. We know there are many IPv6 extension headers, the EHs encapsulation way may be different according to vendor's implementation and operator's deployment. 






    Gyan> Agreed.  See RFC 7045 that detailed EH processing and fast path and slow path processing.




Also see this draft on EH processing 




https://tools.ietf.org/html/draft-gont-v6ops-ipv6-ehs-in-real-world-00



There has been improvements with router vendors across the board in being able to process EH headers in the forwarding plane fast path.  As each 





And further, there are many options defined in HBH and DOH. In this situation, if BIER header is encoded in any of them, how to locate the BIER header and guarantee the fast forwarding?






Per RFC 8200 section 4 all extension headers except the HBH must not be processed inserted or deleted by any node in the path.  In our case we have an exception as we are the 3rd highest order option type bit set for en-route processing.




Extension headers (except for the Hop-by-Hop Options header) are not
 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.





If two or more extension header existed, how do we know there is a BIER header existed which must be used for forwarding?






Answer given above.  Per RFC 8200, extended headers processing.  Please note below excerpt from section 4.1.




A full implementation of IPv6 includes implementation of the
 following extension headers:

 Hop-by-Hop Options
 Fragment
 Destination Options
 Routing
 Authentication
 Encapsulating Security Payload




IPv6 nodes must accept and attempt to process extension headers in
 any order and occurring any number of times in the same packet,
 except for the Hop-by-Hop Options header, which is restricted to
 appear immediately after an IPv6 header only. Nonetheless, it is
 strongly advised that sources of IPv6 packets adhere to the above
 recommended order until and unless subsequent specifications revise
 that recommendation.








If fragment EH is also carried in the packet, how do we know it need or needn't to be executed?






   Fragmentation header is processed by the final destination just as is all other headers except for the HBH.  So the middle router BFRs will not process any of the other EH types and will only process the DOH per flag set.









Further, please find my comments inline below by Sandy>.






Thanks,


Sandy







原始邮件


发件人:GyanMishra <hayabusagsm@gmail.com>
收件人:Gengxuesong (Geng Xuesong) <gengxuesong@huawei.com>;Michael McBride <michael.mcbride@futurewei.com>;Xiejingrong <xiejingrong@huawei.com>;
抄送人:bier@ietf.org <bier@ietf.org>;6man WG <ipv6@ietf.org>;
日 期 :2020年07月30日 09:29
主 题 :Re: [Bier] BIERv6 Encapsulation Presentation in BIER

_______________________________________________
BIER mailing list
BIER@ietf.org
https://www.ietf.org/mailman/listinfo/bier



Hi 6MAN


As Xuesong mentioned please review the BIER IPv6 requirements draft and in particular the BIERv6 native option defined in BIERv6 native draft below:




https://datatracker.ietf.org/doc/html/draft-ietf-bier-ipv6-requirements-06



BIERv6 Native 



https://datatracker.ietf.org/doc/html/draft-xie-bier-ipv6-encapsulation-08





BIERv6 leverages the IPV6 DOH to encode the BIER header for hop by hop native BFR process using RFC 8200 DOH EH 3rd highest order bit in the options type set to 1 for en route hop by hop bier header processing.


Please review in the context of the “Death by Extension headers” thread in recent as well as RFC 7045 and slow and fast processing  related  to DOH extension header with the encoded BIER header processing hop by hop with the BIERv6 proposal.  



Also please comment on caveats related to fragmentation and AH and ESP EH headers processing as that may exist in the multicast payload and needs to be accounted for.

The concern is that in a Normal state Green Field where all routers in the BIER sub domain are BFR capable that we would be performing hop by hop processing of the DOH options BIER header and want to ensure that the DOH BIER header processing happens in the data plane forwarding plane in hardware fast path.  

Sandy> We all know in order to achieving multicast forwarding, BIER header must be executed in every BFR. If other options or EHs can be carried also in the IPv6 header? When there are two or more options existed, how to guarantee the hardware fast path through varible variable length recognization?

Gyan> Answered above 

=======================================================================

In Brown field deployments there maybe cases where segments of the domain have Non BFR capable routers, and in those cases the End.Bier destination propagated in the IGP extension would may have multi hop destination so that we IPV6 tunnel around the non BFR routers, and in those cases the Non BFR routers would be unicast forwarding the tunneled payload so no DOH processing in this case.  So we are good here as no EH processing.

Sandy> At first, accroding to RFC8200, DOH is processed when reaches DA or final DA. If the packet travels across the node which address is not the DA, the DOH is not processed naturally. 









    Gyan> Normally that is true but we have the option type en-route flag set to 1 for hop by hop processing 

















Second, why a special IPv6 address is needed for BIER? Do you mean if we have not the special address, BIER encoding can not be processed correctly? I think it's wrong. BIER need not any special requirement of IPv6 address.

Gyan>  My verbiage may have been confusing.  Their is no special IPV6 address.  The BFR hop by hop processing happens automatically based on known list of BFRs propagated by the BIER IGP extension.  So tunneling happens automatically in cases where Non BFRs exist along the path.  

=======================================================================

Excerpt from RFC 8200 DOH options type 3rd highest order bit being set to 1 for en route hop by hop processing of the BIER header.

Sandy> To achieveing multicast forwarding, the BitString in BIER must be changed on every branch node. If you want to encode BIER header in any options, this bit must be set. But I am confused, why other EHs are not mentioned here? Do you mean any other EHs can not be carried here? If the other EHs can be carried here, what is the process order?












    Gyan> See comments in above email regarding processing order as all extension headers except hbh are processed by  final end destination.  Any and all EHs can be carried, it’s just that they are only processed by the final destination.  So the BFRs along the path are only processing this DOH with flag bit set for en-route processing.















4.1. Extension Header Order

 When more than one extension header is used in the same packet, it is
 recommended that those headers appear in the following order:

 IPv6 header
 Hop-by-Hop Options header
 Destination Options header (note 1)
The third-highest-order bit of the Option Type specifies whether or
 not the Option Data of that option can change en route to the
 packet's final destination. When an Authentication header is present


in the packet, for any option whose data may change en route, its
 entire Option Data field must be treated as zero-valued octets when
 computing or verifying the packet's authenticating value.

 0 - Option Data does not change en route

 1 - Option Data may change en route


Kind Regards 




Gyan




On Wed, Jul 29, 2020 at 7:02 AM Gengxuesong (Geng Xuesong) <gengxuesong@huawei.com> wrote:



Hi 6man,


 


There will be a presentation for BIERv6 encapsulation draft in BIER WG in the upcoming session 1 (https://www.ietf.org/proceedings/108/agenda/agenda-108-bier-03).
 BIERv6 uses IPv6 extension header to enable BIER forwarding, which also has some good discussions in 6MAN ML before. Welcome to come and give comments!


 


Best Regards


Xuesong



--------------------------------------------------------------------
IETF IPv6 working group mailing list
ipv6@ietf.org
Administrative Requests: https://www.ietf.org/mailman/listinfo/ipv6
--------------------------------------------------------------------


-- 













Gyan Mishra


Network Solutions Architect 


M 301 502-1347
13101 Columbia Pike 
Silver Spring, MD






















-- 













Gyan Mishra


Network Solutions Architect 


M 301 502-1347
13101 Columbia Pike 
Silver Spring, MD