Networking Working Group Ran. Chen Internet-Draft Shaofu. Peng Intended status: Standards Track ZTE Corporation Expires: September 17, 2016 March 16, 2016 BIER-TE Ping and Trace draft-chen-bier-te-ping-00 Abstract Bit Index Explicit Replication (BIER)-TE shares architecture and packet formats with BIER as described in [I-D.ietf-bier-architecture]. BIER-TE forwards and replicates packets based on a BitString in the packet header, but every BitPosition of the BitString of a BIER-TE packet indicates one or more adjacencies. This document describes the mechanism and basic BIER-TE OAM packet format that can be used to perform Ping and Traceroute on BIER-TE network. Status of This Memo This Internet-Draft is submitted in full conformance with the provisions of BCP 78 and BCP 79. Internet-Drafts are working documents of the Internet Engineering Task Force (IETF). Note that other groups may also distribute working documents as Internet-Drafts. The list of current Internet- Drafts is at http://datatracker.ietf.org/drafts/current/. Internet-Drafts are draft documents valid for a maximum of six months and may be updated, replaced, or obsoleted by other documents at any time. It is inappropriate to use Internet-Drafts as reference material or to cite them other than as "work in progress." This Internet-Draft will expire on September 17, 2016. Copyright Notice Copyright (c) 2016 IETF Trust and the persons identified as the document authors. All rights reserved. This document is subject to BCP 78 and the IETF Trust's Legal Provisions Relating to IETF Documents (http://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents Chen & Peng Expires September 17, 2016 [Page 1] Internet-Draft BIER-TE Ping and Trace March 2016 carefully, as they describe your rights and restrictions with respect to this document. Code Components extracted from this document must include Simplified BSD License text as described in Section 4.e of the Trust Legal Provisions and are provided without warranty as described in the Simplified BSD License. Table of Contents 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 2 2. Conventions used in this document . . . . . . . . . . . . . . 3 3. BIER-TE OAM Packet format . . . . . . . . . . . . . . . . . . 3 3.1. Target FEC Stack . . . . . . . . . . . . . . . . . . . . 5 3.1.1. BIER-TE forward_connected TLV . . . . . . . . . . . . 6 3.1.2. BIER-TE local_decap TLV . . . . . . . . . . . . . . . 7 3.1.3. BIER-TE forward_routed TLV . . . . . . . . . . . . . 7 3.2. Downstream Mapping TLV . . . . . . . . . . . . . . . . . 8 3.2.1. Downstream Mapping Sub-TLVs . . . . . . . . . . . . . 8 3.2.1.1. Multipath Entropy Data . . . . . . . . . . . . . 9 3.2.1.2. Egress BitString sub-TLV . . . . . . . . . . . . 9 3.2.1.3. FEC Stack Change Sub-TLV . . . . . . . . . . . . 9 3.3. Original SI-BitString TLV . . . . . . . . . . . . . . . . 10 3.4. Target SI-BitString TLV . . . . . . . . . . . . . . . . . 11 3.5. Responder BFER TLV . . . . . . . . . . . . . . . . . . . 11 3.6. Responder BFR TLV . . . . . . . . . . . . . . . . . . . . 11 3.7. Reply-To TLV . . . . . . . . . . . . . . . . . . . . . . 11 4. BIER-TE OAM Processing . . . . . . . . . . . . . . . . . . . 11 4.1. Sending BIER Echo Request . . . . . . . . . . . . . . . . 11 4.2. Receiving BIER Echo Request . . . . . . . . . . . . . . . 12 4.3. Sending Echo Reply . . . . . . . . . . . . . . . . . . . 14 4.4. Receiving Echo Reply . . . . . . . . . . . . . . . . . . 15 5. Security Consideration . . . . . . . . . . . . . . . . . . . 15 6. Acknowledgements . . . . . . . . . . . . . . . . . . . . . . 15 7. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 15 8. References . . . . . . . . . . . . . . . . . . . . . . . . . 15 8.1. Normative references . . . . . . . . . . . . . . . . . . 15 8.2. Informative references . . . . . . . . . . . . . . . . . 16 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 17 1. Introduction [I-D.ietf-bier-architecture] introduces and explains BIER-TE architecture that provides optimal multicast forwarding through a "BIER-TE domain" without requiring intermediate routers to maintain any multicast related per-flow state. BIER-TE forwards and replicates packets based on a BitString in the packet header, but every BitPosition of the BitString of a BIER-TE packet indicates one or more adjacencies. Chen & Peng Expires September 17, 2016 [Page 2] Internet-Draft BIER-TE Ping and Trace March 2016 This document describes the mechanism and basic BIER-TE OAM packet format that can be used to perform Ping and Traceroute on BIER-TE network. This document is a supplement to [I-D.kumarzheng-bier-ping].BIER-MPLS [I-D.ietf-bier-mpls-encapsulation] defines a 4-bit field as "Proto" to identify the payload following BIER header. When the payload is BIER-TE OAM, the "Proto" field will be set to 6 as defined in this document. 2. Conventions used in this document The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in RFC2119. 3. BIER-TE OAM Packet format The BIER-TE OAM packet header format is similar with the BIER OAM header as described in [I-D.kumarzheng-bier-ping]. The BIER-TE OAM packet header format is as follows: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Ver | Echo Req/Rep | Proto | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | QTF | RTF | Reply mode | Return Code | Return Subcode | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sender's Handle | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Sequence Number | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TimeStamp Sent | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TimeStamp Sent | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TimeStamp Received | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | TimeStamp Received | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ TLVs ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Ver:Set to 1. Chen & Peng Expires September 17, 2016 [Page 3] Internet-Draft BIER-TE Ping and Trace March 2016 Proto:Set to 0 for Echo Request/Reply header. QTF:Querier Timestamp Format.When set to 2, the Timestamp Sent field is (in seconds and microseconds, according to the Initiator'sclock) in NTP format [RFC5905]. When set to 3, the timestamp format is in IEEE 1588-2008 (1588v2) Precision Time Protocol format. Any other value SHOULD be considered as sanity check failure. RTF:Responder Timestamp Format. When set to 2, the Timestamp Received field is (in seconds and microseconds, according to the Initiator's clock) in NTP format [RFC5905]. When set to 3, the timestamp format is in IEEE 1588-2008 (1588v2) Precision Time. Reply mode:The Reply mode is set to one of the below: Value Meaning -------- --------------- 1 Do not Reply 2 Reply via IPv4/IPv6 UDP packet. 3 Reply via BIER-TE packet Return Code:Set to zero if Type is " BIER Echo Request". Set to the following value, if Type is "BIER Echo Reply". Value Value Meaning -------- --------------- 0 No return code 1 Malformed Echo Request received 2 One or more of the TLVs was not understood 3 Replying BFR is the only BFER in header Bitstring 4 Replying BFR is one of the BFER in header Bitstring 5 Packet-Forward-Success 6 Invalid Multipath Info Request 8 No matching entry in forwarding table. 9 Set-Identifier Mismatch 10 Replying BFR is not in the path to any target BFER 11 Mapping for this FEC is not the given bitposition in bitstring Return subcode:To Be updated. Sender's Handle:The Sender's Handle is filled by the Initiator, and returned unchanged by responder BFR. This is used for matching the replies to the request. Chen & Peng Expires September 17, 2016 [Page 4] Internet-Draft BIER-TE Ping and Trace March 2016 Sequence number:The Sequence number is assigned by the Initiator and can be used to detect any missed replies. Timestamp:The Timestamp Sent is the time when the Echo Request is sent. The TimeStamp Received in Echo Reply is the time (accordingly to responding BFR clock) that the corresponding Echo Request was received. The format depends on the QTF/RTF value. TLVs have the following format: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Value | . . . . . . | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Length is the length of the Value field in octets. The Value field depends on the TLV Type. A description of the Types and Values for TLLVs are given below: Type# value field -------- --------------------------------- 1 Target FEC Stack 2 Downstream Mapping 3 Original SI-BitString TLV 4 Target SI-BitString TLV 5 Responder BFER TLV 6 Responder BFR TLV 7 Reply-To TLV 3.1. Target FEC Stack A Target FEC Stack is a list of sub-TLVs. Chen & Peng Expires September 17, 2016 [Page 5] Internet-Draft BIER-TE Ping and Trace March 2016 Sub-Length Value Field -------- ----------------- 29 BIER-TE forward_connected TLV 30 BIER-TE local_decap TLV 31 BIER-TE forward_routed TLV Other FEC Types will be defined as needed. 3.1.1. BIER-TE forward_connected TLV The format is as below: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Protocol | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Local Interface ID (4 or 16 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Remote Interface ID (4 or 16 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ ~ | Advertising Node Identifier (4 or 6 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ ~ | Receiving Node Identifier (4 or 6 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Local Interface ID Local Interface ID is assigned by local BFR for a link on which Adjacency ID is bound. This field is set to local link address (IPv4 or IPv6). Remote Interface ID Remote Interface ID is assigned by remote BFR for a link on which Adjacency ID is bound. This field is set to remote link address (IPv4 or IPv6). Advertising Node Identifier Chen & Peng Expires September 17, 2016 [Page 6] Internet-Draft BIER-TE Ping and Trace March 2016 Advertising Node Identifier is the advertising node identifier. When Protocol is set to 1, then the 32 rightmost bits represent OSPF Router ID and if protocol is set to 2, this field carries 48 bit ISIS System ID. Receiving Node Identifier Receiving Node Identifier is downstream node identifier. When Protocol is set to 1, then the 32 rightmost bits represent OSPF Router ID and if protocol is set to 2, this field carries 48 bit ISIS System ID. 3.1.2. BIER-TE local_decap TLV The format is as below: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Protocol | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ ~ | Advertising Node Identifier (4 or 6 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Advertising Node Identifier Advertising Node Identifier is the advertising node identifier. When Protocol is set to 1, then the 32 rightmost bits represent OSPF Router ID and if protocol is set to 2, this field carries 48 bit ISIS System ID. 3.1.3. BIER-TE forward_routed TLV The ipv4 format is as below: Chen & Peng Expires September 17, 2016 [Page 7] Internet-Draft BIER-TE Ping and Trace March 2016 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | BFR IPv4 Prefix | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Prefix Length | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ IPv4 Prefix:This field carries the IPv4 prefix. Prefix Length is one octet, it gives the length of prefix in bits. The ipv6 format is as below: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | BFR IPv6 Prefix | | | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Prefix Length | Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ IPv6 Prefix:This field carries the IPv4 prefix. Prefix Length is one octet, it gives the length of prefix in bits. 3.2. Downstream Mapping TLV The TLV format is similar with Downstream Detailed Mapping TLV as described in [I-D.kumarzheng-bier-ping]. 3.2.1. Downstream Mapping Sub-TLVs This section defines the optional Sub-TLVs that can be included in. Sub-TLV Type Value --------------- ------------------------ 1 Multipath Entropy Data 2 Egress BitString 3. FEC stack change Chen & Peng Expires September 17, 2016 [Page 8] Internet-Draft BIER-TE Ping and Trace March 2016 3.2.1.1. Multipath Entropy Data The format is as below: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Multipath Type | Multipath Length |Reserved (MBZ) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | | | (Multipath Information) | | | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ The multipath data sub-TLV includes Multipath Information. 3.2.1.2. Egress BitString sub-TLV The format is as below: 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Type | Length | Resrved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Set ID | Sub-domain ID |BS Len| Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | BitString (first 32 bits) ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ ~ ~ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | BitString (last 32 bits) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ BitString:Adjacency BitString. 3.2.1.3. FEC Stack Change Sub-TLV The format and the usage is the similar with [RFC6424]. The format is as below: Chen & Peng Expires September 17, 2016 [Page 9] Internet-Draft BIER-TE Ping and Trace March 2016 0 1 2 3 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ |Operation Type | Address Type | FEC-tlv length| Reserved | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ | Remote Peer Address (0, 4 or 16 octets) | +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ . . . FEC TLV . . . +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ Operation Type The operation type specifies the action associated with the FEC Stack Change.A new operation type is defined: Type Operation ----- ----------- 3 Remove Address type: 0. FEC TLV Length:Length in bytes of the FEC TLV. Reserved:This field is reserved for future use and MUST be set to zero. Remote Peer Address:0. FEC TLV The FEC TLV is present only when the FEC-tlv length field is nonzero. The FEC TLV specifies the FEC associated with the FEC stack change operation. The FEC type is defined in section 3.1. 3.3. Original SI-BitString TLV The Incoming SI-BitString TLV will be included by Responder BFR in Reply message and copies the BitString from BIER header of incoming Echo Request message.The format and usage is similar with Original SI-BitString TLV as defined in [I-D.kumarzheng-bier-ping]. Chen & Peng Expires September 17, 2016 [Page 10] Internet-Draft BIER-TE Ping and Trace March 2016 3.4. Target SI-BitString TLV The Target SI-BitString TLV carries the set of BFER's local_decap adjacency from which the Initiator expects the reply from. The format and usage is similar with Target SI-BitString TLV as defined in [I-D.kumarzheng-bier-ping]. 3.5. Responder BFER TLV The Responder BFER TLV will be included by the BFER replying to the request. This is used to identify the originator of BIER Echo Reply. The format and usage is similar with Responder BFER TLV as defined in [I-D.kumarzheng-bier-ping]. 3.6. Responder BFR TLV The Responder BFR TLV will be included by the transit BFR replying to the request. This is used to identify the replying BFR without BFRID. The format and usage is similar with Responder BFR TLV as defined in [I-D.kumarzheng-bier-ping]. 3.7. Reply-To TLV The Reply-To TLV MAY be included by the Initiator BFR in Echo Request. This is used by transit BFR or BFER when the reply mode is the IP address will be used to generate Echo Reply. The format and usage is similar with Reply-To TLV as defined in [I-D.kumarzheng-bier-ping]. 4. BIER-TE OAM Processing BIER-TE OAM packet MUST be sent to BIER control plane for OAM processing if one of the following conditions is true: o The receiving BFR is a BFER. o TTL of BIER-MPLS Label expired. o Presence of Router Alert label in the label stack. 4.1. Sending BIER Echo Request o Message Type:1. o Return Code:0. o Proto:0. Chen & Peng Expires September 17, 2016 [Page 11] Internet-Draft BIER-TE Ping and Trace March 2016 o Sender's Handle and Sequence number:The local matter to Initiator and SHOULD increment the Sequence number by 1 for every subsequent Echo Request. o QTF:Initiator's local timestamp format. o TimeStamp Sent:the time that the Echo Request is sent. o MUST include Original SI-BitString TLV. o In Ping mode, Initiator MAY include Target SI-BitString TLV to control the responding BFER(s) by listing all local_decap adjacency id of the BFERs from which the Initiator expects a response. Initiator on receiving a reply with Return code as "Replying BFR is the only BFER in header Bitstring" or "Replying router is one of the BFER in header Bitstring", SHOULD remove the BFER's local_decap ID from Target SI-BitString for any subsequent Echo Request. o When the Reply mode is set to 2, Initiator MUST include Reply-To TLV in the Echo Request. o Initiator MAY include Downstream Mapping TLV in the Echo Request to query additional information from transit BFRs and BFERs. In case of ECMP discovery, Initiator MUST include the Multipath Entropy Data Sub-TLV and SHOULD set the Target SI-BitString TLV carrying a specific BFER's local_decap adjacency id. o Initiator MUST encapsulate the OAM packet with BIER header and MUST set the Proto as 6 and further encapsulates with BIER-MPLS label. In ping mode, the BIER-MPLS Label TTL MUST be set to 255. In traceroute mode, the BIER-MPLS Label TTL is set successively starting from 1 and MUST stop sending the Echo Request if it receives a reply with Return code as "Replying router is the only BFER in BIER header Bitstring" from all BFER listed in Target SI- BitString TLV. o MUST PUSH the corresponding FEC to target FEC stack, which the push order is the same with adjacency BitPosition of the BitString. 4.2. Receiving BIER Echo Request Reply-Flag:This flag is initially set to 1. Interface-I:The incoming interface on which the Echo Request was received. Chen & Peng Expires September 17, 2016 [Page 12] Internet-Draft BIER-TE Ping and Trace March 2016 BIER-Label-L:The BIER-MPLS Label received as the top label on received Echo Request. Header-H:The BIER header from the received Echo Request. Best-return-code: contains the return code for the echo reply packet as currently best known. If the received Echo Request carries Target SI-BitString TLV, a BFR SHOULD run boolean AND operation between BitString in Header-H and BitString in Target SI-BitString TLV. If the resulting BitString is all-zero, Set Best-return-code="Mapping for this FEC is not the given bitposition in bitstring" and Go to section 4.3, Else: o If the BIER-Label-L does not correspond to the local label assigned for {sub-domain, BitStringLen, SI} in Original SIBitString TLV, Set the Best-return-code to "Set-Identifier Mismatch" and Go to section 4.3. o If any of the TLVs in Echo Request message is not understood. Set the Best-return-code to "One or more of the TLVs was not understood" and Go to section 4.3. o If the BitString in Header-H does not match the BitString in Egress BitString Sub-TLV of DSMAP TLV, set the Best-return-code to ERR-TBD and Go to section 4.3. o If the forwarding lookup defined in section 6.5 of [I-D.ietf-bier-architecture] does not match any entry for the received BitString in BIER header. Set the Best-return-code to "No matching entry in forwarding table" and Go to section 4.3. o If any FEC which get from the matched BIFT entry is not consistent with the FEC get from the FEC stack at same position as entry's BitPosition in Header-H, Set the Best-return-code to "Mapping for this FEC is not the given bitposition in bitstring" and Go to section 4.3. o If the DSMAP TLV carries Multipath Entropy Data Sub-TLV and if the BitString in Header-H carries more than one forward routed adjacency and each matches the BIFT entry. Set the Best-return- code to "Invalid Multipath Info Request" and Go to section 4.3. Else, list the ECMP downstream neighbors to reach forward routed adjacency, calculate the Entropy considering the BitString in Header-H and Multipath Entropy Data Sub-TLV from received Echo Request. Set the Best-return-code to 5 (Packet-Forward-Success). Chen & Peng Expires September 17, 2016 [Page 13] Internet-Draft BIER-TE Ping and Trace March 2016 o For all the forward_connected adjacency and local_decap adjacency which match the BIFT entry, FEC change sub-TLV should be carried in DSMAP TLV, and set the operation type filed in the FEC change sub-TLV to remove. o For all the forward_routed adjacency which match the BIFT entry, if the BIFT entry indicate that not local decapsulation but continue forwarding the OAM packet, FEC change sub-TLV should not carried in DSMAP TLV. If the BIFT entry indicate that local decapsulation the OAM packet, FEC change sub-TLV should be carried in DSMAP TLV, and set the operation type filed in the FEC change sub-TLV to remove. o If the responder is BFER which match the local_decap BIFT, and there is no more bits in BIER header Bitstring left for forwarding.Set the Best-return-code to "Replying router is the only BFER in BIER header Bitstring", and go to section 4.3. o If the responder is BFER which match the local_decap BIFT, and there are more bits in in BitString left for forwarding. Set the Best-return-code to " Replying router is one of the BFER in BIER header Bitstring", and go to section 4.3. 4.3. Sending Echo Reply o Message Type:2. o Return Code:Best-return-code. o The Proto :0. o When the Best-return-code is "Replying BFR is one of the BFER in header Bitstring", it MUST include Responder BFER TLV. o If the received Echo Request had DSMAP with Multipath Entropy Data Sub-TLV, Responder BFR MUST include DSMAP for each outgoing interface over which the packet will be replicated and include the respective Multipath Entropy Data Sub-TLV. For each outgoing interface, respective Egress BitString MUST be included in DSMAP TLV. o If the received Echo Request had DSMAP without Multipath Entropy Data Sub-TLV, Responder BFR MUST include DSMAP for each outgoing interface over which the packet will be replicated. For each outgoing interface, respective Egress BitString MUST be included in DSMAP TLV. Chen & Peng Expires September 17, 2016 [Page 14] Internet-Draft BIER-TE Ping and Trace March 2016 o When the Best-return-code is "Replying BFR is the only BFER in header Bitstring", it MUST include Responder BFER TLV. o When the Reply mode in received Echo Request is set to 3, Responder appends BIER header listing the BitString with the BFIR's local_decap id and set the Proto to 6 and set the BFIR as 0. o When the Reply mode in received Echo Request is set to 2, Responder encapsulates with IP/UDP header. The UDP destination port MUST be set to TBD1 and source port MAY be set to TBD1 or other random local value. The source IP is any local address of the responder and destiantion IP is derived from Reply-To TLV. 4.4. Receiving Echo Reply o Initiator on receiving Echo Reply will use the Sender's Handle to match with Echo Request sent. If no match is found, Initiator MUST ignore the Echo Reply. o If receiving Echo Reply have Downstream Mapping, Initiator SHOULD copy the same to subsequent Echo Request(s). o If one of the Echo Reply is received with Return Code as "Replying BFR is one of the BFER in header Bitstring", it SHOULD remove the BFER' s local_decap ID from Target SI-BitString for any subsequent Echo Request. 5. Security Consideration The section will be added in next version. 6. Acknowledgements TBD. 7. IANA Considerations TBD. 8. References 8.1. Normative references Chen & Peng Expires September 17, 2016 [Page 15] Internet-Draft BIER-TE Ping and Trace March 2016 [I-D.ietf-bier-architecture] Wijnands, I., Rosen, E., Dolganow, A., P, T., and S. Aldrin, "Multicast using Bit Index Explicit Replication", draft-ietf-bier-architecture-03 (work in progress), January 2016. [I-D.ietf-bier-mpls-encapsulation] Wijnands, I., Rosen, E., Dolganow, A., Tantsura, J., and S. Aldrin, "Encapsulation for Bit Index Explicit Replication in MPLS Networks", draft-ietf-bier-mpls- encapsulation-03 (work in progress), February 2016. [I-D.ietf-bier-ospf-bier-extensions] Psenak, P., Kumar, N., Wijnands, I., Dolganow, A., P, T., Zhang, J., and S. Aldrin, "OSPF Extensions For BIER", draft-ietf-bier-ospf-bier-extensions-01 (work in progress), October 2015. [RFC0792] Postel, J., "Internet Control Message Protocol", STD 5, RFC 792, DOI 10.17487/RFC0792, September 1981, . [RFC4379] Kompella, K. and G. Swallow, "Detecting Multi-Protocol Label Switched (MPLS) Data Plane Failures", RFC 4379, DOI 10.17487/RFC4379, February 2006, . [RFC5905] Mills, D., Martin, J., Ed., Burbank, J., and W. Kasch, "Network Time Protocol Version 4: Protocol and Algorithms Specification", RFC 5905, DOI 10.17487/RFC5905, June 2010, . [RFC6424] Bahadur, N., Kompella, K., and G. Swallow, "Mechanism for Performing Label Switched Path Ping (LSP Ping) over MPLS Tunnels", RFC 6424, DOI 10.17487/RFC6424, November 2011, . 8.2. Informative references [I-D.eckert-bier-te-arch] Eckert, T. and G. Cauchie, "Traffic Enginering for Bit Index Explicit Replication BIER-TE", draft-eckert-bier-te- arch-02 (work in progress), October 2015. [I-D.kumarzheng-bier-ping] Kumar, N., Pignataro, C., Akiya, N., Zheng, L., Chen, M., and G. Mirsky, "BIER Ping and Trace", draft-kumarzheng- bier-ping-02 (work in progress), December 2015. Chen & Peng Expires September 17, 2016 [Page 16] Internet-Draft BIER-TE Ping and Trace March 2016 Authors' Addresses Ran Chen ZTE Corporation No.50 Software Avenue,Yuhuatai District Nanjing, Jiangsu Province 210012 China Phone: +86 025 88014636 Email: chen.ran@zte.com.cn Shaofu Peng ZTE Corporation Email: peng.shaofu@zte.com.cn Chen & Peng Expires September 17, 2016 [Page 17]