PCE Working Group M. Negi
Internet-Draft P. Kaladharan
Intended status: Standards Track D. Dhody
Expires: April 22, 2018 Huawei Technologies
S. Sivabalan
Cisco Systems
October 19, 2017

PCEP Extensions for Segment Routing leveraging the IPv6 data plane
draft-negi-pce-segment-routing-ipv6-00

Abstract

The Source Packet Routing in Networking (SPRING) architecture describes how Segment Routing (SR) can be used to steer packets through an IPv6 or MPLS network using the source routing paradigm. Segment Routing (SR) enables any head-end node to select any path without relying on a hop-by-hop signaling technique (e.g., LDP or RSVP-TE).

It depends only on "segments" that are advertised by Link- State Interior Gateway Protocols (IGPs). A Segment Routed Path can be derived from a variety of mechanisms, including an IGP Shortest Path Tree (SPT), explicit configuration, or a Path Computation Element (PCE).

Since, Segment Routing can be applied to both MPLS and IPv6 forwarding plane, a PCE should be able to compute SR-Path for both MPLS and IPv6 forwarding plane. This draft describes the extensions required for Segment Routing support for IPv6 data plane in PCEP.

Requirements Language

The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are to be interpreted as described in BCP 14 [RFC2119] [RFC8174] when, and only when, they appear in all capitals, as shown here.

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 https://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 April 22, 2018.

Copyright Notice

Copyright (c) 2017 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 (https://trustee.ietf.org/license-info) in effect on the date of publication of this document. Please review these documents 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

As per [I-D.ietf-spring-segment-routing], with Segment Routing (SR), a node steers a packet through an ordered list of instructions, called segments. A segment can represent any instruction, topological or service-based. A segment can have a semantic local to an SR node or global within an SR domain. SR allows to enforce a flow through any path and service chain while maintaining per-flow state only at the ingress node of the SR domain. Segments can be derived from different components: IGP, BGP, Services, Contexts, Locators, etc. The list of segment forming the path is called the Segment List and is encoded in the packet header. Segment Routing can be applied to the IPv6 architecture with the Segment Routing Header (SRH) [I-D.ietf-6man-segment-routing-header]. A segment is encoded as an IPv6 address. An ordered list of segments is encoded as an ordered list of IPv6 addresses in the routing header. The active segment is indicated by the Destination Address of the packet. Upon completion of a segment, a pointer in the new routing header is incremented and indicates the next segment.

Segment Routing use cases are described in [RFC7855] and [I-D.ietf-spring-ipv6-use-cases]. Segment Routing protocol extensions are defined in [I-D.ietf-isis-segment-routing-extensions], and [I-D.ietf-ospf-ospfv3-segment-routing-extensions].

As per [I-D.ietf-6man-segment-routing-header], an SRv6 Segment is a 128-bit value. "SRv6 SID" or simply "SID" are often used as a shorter reference for "SRv6 Segment". Further details are in An illustration is provided in [I-D.filsfils-spring-srv6-network-programming].

The SR architecture can be applied to the MPLS forwarding plane without any change, in which case an SR path corresponds to an MPLS Label Switching Path (LSP). The SR is applied to IPV6 forwarding plane using SRH. A SR path can be derived from an IGP Shortest Path Tree (SPT), but SR-TE paths may not follow IGP SPT. Such paths may be chosen by a suitable network planning tool or an and provisioned on the ingress node.

[RFC5440] describes Path Computation Element Protocol (PCEP) for communication between a Path Computation Client (PCC) and a Path Computation Element (PCE) or between one a pair of PCEs. A PCE or a PCC operating as a PCE (in hierarchical PCE environment) computes paths for MPLS Traffic Engineering LSPs (MPLS-TE LSPs) based on various constraints and optimization criteria. [RFC8231] specifies extensions to PCEP that allow a stateful PCE to compute and recommend network paths in compliance with [RFC4657] and defines objects and TLVs for MPLS-TE LSPs. Stateful PCEP extensions provide synchronization of LSP state between a PCC and a PCE or between a pair of PCEs, delegation of LSP control, reporting of LSP state from a PCC to a PCE, controlling the setup and path routing of an LSP from a PCE to a PCC. Stateful PCEP extensions are intended for an operational model in which LSPs are configured on the PCC, and control over them is delegated to the PCE.

A mechanism to dynamically initiate LSPs on a PCC based on the requests from a stateful PCE or a controller using stateful PCE is specified in [I-D.ietf-pce-pce-initiated-lsp]. As per [I-D.ietf-pce-segment-routing], it is possible to use a stateful PCE for computing one or more SR-TE paths taking into account various constraints and objective functions. Once a path is chosen, the stateful PCE can initiate an SR-TE path on a PCC using PCEP extensions specified in [I-D.ietf-pce-pce-initiated-lsp] using the SR specific PCEP extensions specified in [I-D.ietf-pce-segment-routing]. [I-D.ietf-pce-segment-routing] specifies PCEP extensions for supporting a SR-TE LSP for MPLS data plane. This document extends [I-D.ietf-pce-segment-routing] to support SR for IPv6 data plane. Additionally, using procedures described in this document, a PCC can request an SRv6 path from either stateful or a stateless PCE. This specification relies on the PATH-SETUP-TYPE TLV and procedures specified in [I-D.ietf-pce-lsp-setup-type].

2. Terminology

This document uses the following terms defined in [RFC5440]: PCC, PCE, PCEP Peer.

This document uses the following terms defined in [RFC8051]: Stateful PCE, Delegation.

The message formats in this document are specified using Routing Backus-Naur Format (RBNF) encoding as specified in [RFC5511].

PCC:
Path Computation Client.
PCE:
Path Computation Element.
PCEP:
Path Computation Element Protocol.
SR:
Segment Routing.
SID:
Segment Identifier.
SRv6:
Segment Routing for IPv6 forwarding plane.
SRH:
IPv6 Segment Routing Header.
SR Path:
IPv6 Segment (List of IPv6 SID representing a path in IPv6 SR domain)

3. Overview of PCEP Operation in SRv6 Networks

Basic operations for PCEP speakers is as per [I-D.ietf-pce-segment-routing]. SRv6 Paths computed by a PCE can be represented as an ordered list of SRv6 segments of 128-bit value. "SRv6 SID" or simply "SID" are often used as a shorter reference for "SRv6 Segment".

[I-D.ietf-pce-segment-routing] defined a new ERO subobject denoted by "SR-ERO subobject" capable of carrying a SID as well as the identity of the node/adjacency represented by the SID. SR-capable PCEP speakers should be able to generate and/or process such ERO subobject. An ERO containing SR-ERO subobjects can be included in the PCEP Path Computation Reply (PCRep) message defined in [RFC5440], the PCEP LSP Initiate Request message (PCInitiate) defined in [I-D.ietf-pce-pce-initiated-lsp], as well as in the PCEP LSP Update Request (PCUpd) and PCEP LSP State Report (PCRpt) messages defined in defined in [RFC8231].

This document extends the "SR-ERO subobject" defined in [I-D.ietf-pce-segment-routing] to carry IPv6 SID(s) (IPv6 Addresses). SRv6-capable PCEP speakers should be able to generate and/or process this.

When a PCEP session between a PCC and a PCE is established, both PCEP speakers exchange their capabilities to indicate their ability to support SRv6 specific functionality.

In summary, this document defines new path setup type carried in the PATH-SETUP-TYPE TLV for SRv6 path.

In summary, this document:

3.1. Operation Overview

In SR networks, an ingress node of an SR path appends all outgoing packets with an SR header consisting of a list of SIDs (IPv6 Prefix in case of SRv6). The header has all necessary information to guide the packets from the ingress node to the egress node of the path, and hence there is no need for any signaling protocol.

For IPv6 in control plane with MPLS data-plane, mechanism remains same as [I-D.ietf-pce-segment-routing]

This document describes extensions to SR path for IPv6 data plane. SRv6 Path (i.e. ERO) consists of an ordered set of SIDs(see details in Figure 2).

A PCC or PCE indicates its ability to support SRv6 during the PCEP session Initialization Phase via a new SRv6-PCE-CAPABILITY TLV (see details in Section 3.3.1.1).

3.2. SRv6-Specific PCEP Message Extensions

As defined in [RFC5440], a PCEP message consists of a common header followed by a variable length body made up of mandatory and/or optional objects. This document does not require any changes in the format of PCReq and PCRep messages specified in [RFC5440], PCInitiate message specified in [I-D.ietf-pce-pce-initiated-lsp], and PCRpt and PCUpd messages specified in [RFC8231]. However, PCEP messages pertaining to SRv6 MUST include PATH-SETUP-TYPE TLV in the RP or SRP object to clearly identify that SRv6 is intended. In other words, a PCEP speaker MUST NOT infer whether or not a PCEP message pertains to SRv6 from any other object or TLV.

3.3. Object Formats

3.3.1. The OPEN Object

This document defines a new optional TLV for use in the OPEN Object.

3.3.1.1. The SRv6 PCE Capability TLV

The SRv6-PCE-CAPABILITY TLV is an optional TLV associated with the OPEN Object to exchange SRv6 capability of PCEP speakers. The format of the SR-PCE-CAPABILITY TLV is shown in the following figure:

              
        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=TBD1          |            Length=4           |
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       |      max-SL   |  Reserved     |             Flags           |L|
       +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
           

Figure 1: SRv6-PCE-CAPABILITY TLV format

The code point for the TLV type is to be defined by IANA. The TLV length is 4 octets.

The 4-octet value comprise of -

3.3.1.2. Exchanging SRv6 Capability

By including the SRv6-PCE-CAPABILITY TLV in the OPEN message destined to a PCE, a PCC indicates that it is capable of supporting the head- end functions for SRv6. By including the TLV in the OPEN message destined to a PCC, a PCE indicates that it is capable of computing SRv6 paths.

3.3.2. The RP/SRP Object

In order to indicate the SRv6 path, RP or SRP object MUST include the PATH-SETUP-TYPE TLV specified in [I-D.ietf-pce-lsp-setup-type]. This document defines a new Path Setup Type (PST) for SRv6 as follows:

o PST = TBD2: Path is setup using SRv6 technique.

3.3.3. ERO Object

In order to support SRv6, the SR-ERO subobject is used [I-D.ietf-pce-segment-routing]. All other processing rules remains the same.

3.3.3.1. SR-ERO Subobject

For supporting SRv6, a new SID Type (ST) is defined, the format of SR-ERO sub object remains the same as defined in [I-D.ietf-pce-segment-routing].

When the SID Type (ST) indicates SRv6, then the SR-ERO subobject represent a SRv6 segment and include a field SRv6I (SRv6 Identifier) in place of NAI (Node or Adjacency Identifier) defined in [I-D.ietf-pce-segment-routing]. The 32 bit SID MUST be set to zero on transit and ignored on receipt. The format of SR-ERO subobject is reproduced with the SRv6I field as shown 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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |L|    Type     |     Length    |  ST   |     Flags     |F|S|C|M|
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                              SID                              |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     //                     SRv6I (variable)                        //
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     

Figure 2: SR-ERO Subobject Format

The description of all the flags and fields is as per [I-D.ietf-pce-segment-routing].

For SRv6 segments, a new ST (SID Type) is assigned by IANA as TBD.

For SRv6 segments (when ST is TBD), M and C flag MUST NOT be set. The S flag MUST be set and SID field MUST be set to 0. The F bit MUST NOT be set. The Length is 28.

The SRv6I format is as shown 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
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   |                                                               |
   |                      SRv6 Identifier                          |
   |                         (128-bit)                             |
   |                                                               | 
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   | SRv6ST|         Flags           |       Function Code         |
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
   //                        NAI (variable)                       //
   +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+      
     

Figure 3: SR-ERO Subobject's SRv6I Format

3.3.3.2. ERO Processing

The ERO and SR-ERO subobject processing remains as per [RFC5440] and [I-D.ietf-pce-segment-routing].

The ST MUST only be TDB, if the SRv6-PCE-CAPABILITY TLV is exchanged with the PCEP peer. In case a PCEP speaker receives the SR-ERO subobject with ST indicating SRv6 segment, when the SRv6-PCE-CAPABILITY TLV was not exchanged, it MUST send a PCErr message with Error-Type = 19 ("Invalid Operation") and Error-Value = TBD3 ("Attempted SRv6 when the capability was not advertised"). A PCEP speaker that does not recognize the ST value, it would behave as per [I-D.ietf-pce-segment-routing].

[Editor's Note - this is missing from [I-D.ietf-pce-segment-routing].]

If a PCC receives a list of SRv6 segments, and the number of SRv6 segments exceeds the max-SL that the PCC can impose on the packet (SRH), it MAY send a PCErr message with Error-Type = 10 ("Reception of an invalid object") and Error-Value = TBD ("Unsupported number of Segment ERO subobjects") as per [I-D.ietf-pce-segment-routing].

When a PCEP speaker detects that all subobjects of ERO are not identical to SRv6, and if it does not handle such ERO, it MUST send a PCErr message with Error-Type = 10 ("Reception of an invalid object") and Error-Value = TBD ("Non-identical ERO subobjects")as per [I-D.ietf-pce-segment-routing].

When a PCEP speaker receives an SR-ERO subobject for SRv6 segment, M, C and F flag MUST NOT be set and S flag MUST be set. Otherwise, it MUST consider the entire ERO object invalid and send a PCErr message with Error-Type = 10 ("Reception of an invalid object") and Error-Value = TBD ("Malformed object") as per [I-D.ietf-pce-segment-routing]. The PCEP speaker MAY include the malformed SR-ERO object in the PCErr message as well.

3.3.4. RRO Object

In order to support SRv6, the SR-ERO Subobject is used [I-D.ietf-pce-segment-routing]. All other processing rules remains the same.

3.3.4.1. SR-RRO Subobject

For SRv6 segments, a new ST (SID Type) is assigned by IANA as TBD, the format of SR-ERO sub object remains the same as defined in [I-D.ietf-pce-segment-routing].

When the SID Type (ST) indicates SRv6, then the SR-RRO subobject represent a SRv6 segment and include a field SRv6I (SRv6 Identifier) in place of NAI (Node or Adjacency Identifier) defined in [I-D.ietf-pce-segment-routing]. The 32 bit SID MUST be set to zero on transit and ignored on receipt. The format of SR-RRO subobject is reproduced with the SRv6I field as shown 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    |  ST   |     Flags     |F|S|C|M|
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                              SID                              |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     //                     SRv6I (variable)                        //
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
           

Figure 4: SR-RRO Subobject Format

The description of all fields and flags is as per SR-ERO subobject.

Processing rules of SR-RRO subobject are identical to those of SR-ERO subobject.

3.4. Security Considerations

The security considerations described in [RFC5440], [RFC8231] and [I-D.ietf-pce-pce-initiated-lsp] are applicable to this specification. No additional security measure is required.

3.5. IANA Considerations

This document requests IANA to include (I) bit in flags registry for SR-ERO and SR-RRO sub-objects. Other changes are defined as:

3.5.1. PCEP Objects

3.5.1.1. ERROR Objects

IANA is requested to allocate code-points in the PCEP-ERROR Object Error Types and Values registry for the following new error-values:

                 
   Error-Type   Meaning
   ----------   -------
   19           Invalid Operation
                Error-value = TBD3 (Attempted SRv6 when the 
                capability was not advertised)
                

3.5.1.2. TLV Type Indicators

IANA is requested to make the assignment of the new code points for the existing "PCEP TLV Type Indicators" registry as follows:

   
   Value     Meaning                     Reference
   -----     -------                     ---------
   TBD1      SRv6-PCE-CAPABILITY TLV     This Document
   

3.5.1.3. New Path Setup Type

[I-D.ietf-pce-lsp-setup-type]defines the PATH-SETUP-TYPE TLV and requests that IANA creates a registry to manage the value of the PATH-SETUP-TYPE TLV's PST field. IANA is requested to allocate a new code point in the PCEP PATH_SETUP_TYPE TLV PST field registry, as follows:

                
   Value                     Description                  Reference
   ------------------------- ---------------------------- --------------
   TBD2                      SRv6 (SRH) technique         This Document
                                                                                     
   

4. References

4.1. Normative References

[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate Requirement Levels", BCP 14, RFC 2119, DOI 10.17487/RFC2119, March 1997.
[RFC5440] Vasseur, JP. and JL. Le Roux, "Path Computation Element (PCE) Communication Protocol (PCEP)", RFC 5440, DOI 10.17487/RFC5440, March 2009.
[RFC5511] Farrel, A., "Routing Backus-Naur Form (RBNF): A Syntax Used to Form Encoding Rules in Various Routing Protocol Specifications", RFC 5511, DOI 10.17487/RFC5511, April 2009.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, May 2017.
[RFC8231] Crabbe, E., Minei, I., Medved, J. and R. Varga, "Path Computation Element Communication Protocol (PCEP) Extensions for Stateful PCE", RFC 8231, DOI 10.17487/RFC8231, September 2017.
[I-D.ietf-pce-segment-routing] Sivabalan, S., Filsfils, C., Tantsura, J., Henderickx, W. and J. Hardwick, "PCEP Extensions for Segment Routing", Internet-Draft draft-ietf-pce-segment-routing-10, October 2017.
[I-D.ietf-spring-segment-routing] Filsfils, C., Previdi, S., Decraene, B., Litkowski, S. and R. Shakir, "Segment Routing Architecture", Internet-Draft draft-ietf-spring-segment-routing-12, June 2017.
[I-D.ietf-pce-pce-initiated-lsp] Crabbe, E., Minei, I., Sivabalan, S. and R. Varga, "PCEP Extensions for PCE-initiated LSP Setup in a Stateful PCE Model", Internet-Draft draft-ietf-pce-pce-initiated-lsp-11, October 2017.
[I-D.ietf-pce-lsp-setup-type] Sivabalan, S., Tantsura, J., Minei, I., Varga, R. and J. Hardwick, "Conveying path setup type in PCEP messages", Internet-Draft draft-ietf-pce-lsp-setup-type-04, April 2017.

4.2. Informative References

[RFC4657] Ash, J. and J. Le Roux, "Path Computation Element (PCE) Communication Protocol Generic Requirements", RFC 4657, DOI 10.17487/RFC4657, September 2006.
[RFC7855] Previdi, S., Filsfils, C., Decraene, B., Litkowski, S., Horneffer, M. and R. Shakir, "Source Packet Routing in Networking (SPRING) Problem Statement and Requirements", RFC 7855, DOI 10.17487/RFC7855, May 2016.
[RFC8051] Zhang, X. and I. Minei, "Applicability of a Stateful Path Computation Element (PCE)", RFC 8051, DOI 10.17487/RFC8051, January 2017.
[I-D.ietf-6man-segment-routing-header] Previdi, S., Filsfils, C., Raza, K., Leddy, J., Field, B., daniel.voyer@bell.ca, d., daniel.bernier@bell.ca, d., Matsushima, S., Leung, I., Linkova, J., Aries, E., Kosugi, T., Vyncke, E., Lebrun, D., Steinberg, D. and R. Raszuk, "IPv6 Segment Routing Header (SRH)", Internet-Draft draft-ietf-6man-segment-routing-header-07, July 2017.
[I-D.ietf-spring-ipv6-use-cases] Brzozowski, J., Leddy, J., Filsfils, C., Maglione, R. and M. Townsley, "IPv6 SPRING Use Cases", Internet-Draft draft-ietf-spring-ipv6-use-cases-11, June 2017.
[I-D.ietf-isis-segment-routing-extensions] Previdi, S., Filsfils, C., Bashandy, A., Gredler, H., Litkowski, S., Decraene, B. and j. jefftant@gmail.com, "IS-IS Extensions for Segment Routing", Internet-Draft draft-ietf-isis-segment-routing-extensions-13, June 2017.
[I-D.ietf-ospf-ospfv3-segment-routing-extensions] Psenak, P., Previdi, S., Filsfils, C., Gredler, H., Shakir, R., Henderickx, W. and J. Tantsura, "OSPFv3 Extensions for Segment Routing", Internet-Draft draft-ietf-ospf-ospfv3-segment-routing-extensions-10, September 2017.
[I-D.filsfils-spring-srv6-network-programming] Filsfils, C., Leddy, J., daniel.voyer@bell.ca, d., daniel.bernier@bell.ca, d., Steinberg, D., Raszuk, R., Matsushima, S., Lebrun, D., Decraene, B., Peirens, B., Salsano, S., Naik, G., Elmalky, H., Jonnalagadda, P., Sharif, M., Ayyangar, A., Mynam, S., Henderickx, W., Bashandy, A., Raza, K., Dukes, D., Clad, F. and P. Camarillo, "SRv6 Network Programming", Internet-Draft draft-filsfils-spring-srv6-network-programming-01, June 2017.

Appendix A. Contributor

The following persons contributed to this document:

Huang Wumin
Huawei Technologies
Huawei Building, No. 156 Beiqing Rd.
Beijing  100095
China

Email: huangwumin@huawei.com
     

Authors' Addresses

Mahendra Singh Negi Huawei Technologies Divyashree Techno Park, Whitefield Bangalore, Karnataka 560066 India EMail: mahendrasingh@huawei.com
Prejeeth Kaladharan Huawei Technologies Divyashree Techno Park, Whitefield Bangalore, Karnataka 560066 India EMail: prejeeth.k@huawei.com
Dhruv Dhody Huawei Technologies Divyashree Techno Park, Whitefield Bangalore, Karnataka 560066 India EMail: dhruv.ietf@gmail.com
Siva Sivabalan Cisco Systems EMail: msiva@cisco.com