IDR Working Group                                         R. Raszuk, Ed.
Internet-Draft                                              Bloomberg LP
Intended status: Standards Track                                 J. Haas
Expires: December 2, 2016                               Juniper Networks
                                                            May 31, 2016


                  Registered Wide BGP Community Values
           draft-ietf-idr-registered-wide-bgp-communities-02

Abstract

   Communicating various routing policies via route tagging plays an
   important role in external BGP peering relations.  The most common
   tool used today to attach various information about routes is
   realized with the use of BGP communities.  Such information is
   important for the peering AS to perform some mutually agreed actions
   without the need to maintain a separate offline database for each
   pair of prefix and an associated with it requested set of action
   entries.

   This document proposes to establish a new IANA maintained registry of
   most commonly used Wide BGP Communities by network operators.  Such
   public registry will allow for easy refernece and clear
   interpretation of the actions associated with received community
   values.

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 December 2, 2016.








Raszuk & Haas           Expires December 2, 2016                [Page 1]


Internet-Draft       registered-wide-bgp-communities            May 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
   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.  Globally significant pre-defined values . . . . . . . . . . .   3
     2.1.  Well Known Standard BGP Communities . . . . . . . . . . .   3
     2.2.  Registered pre-defined Wide BGP Communities . . . . . . .   3
       2.2.1.  General Registered Wide BGP Community Values  . . . .   4
       2.2.2.  Advertisement control Registered Wide BGP Communities   7
       2.2.3.  AS source marking Registered Wide BGP Communities . .   8
       2.2.4.  Return path influencing Registered Wide BGP
               Communities . . . . . . . . . . . . . . . . . . . . .  10
       2.2.5.  AS_PATH modifying Registered Wide BGP Communities . .  10
       2.2.6.  Local Preference Registered Community . . . . . . . .  11
       2.2.7.  AS_PATH TTL Registered Community  . . . . . . . . . .  12
       2.2.8.  GEO-LOCATION Registered Community . . . . . . . . . .  12
   3.  Example . . . . . . . . . . . . . . . . . . . . . . . . . . .  13
   4.  ECMP Hint Registered Community  . . . . . . . . . . . . . . .  14
   5.  Security considerations . . . . . . . . . . . . . . . . . . .  14
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . .  15
   7.  Contributors  . . . . . . . . . . . . . . . . . . . . . . . .  16
   8.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . .  17
   9.  References  . . . . . . . . . . . . . . . . . . . . . . . . .  17
     9.1.  Normative References  . . . . . . . . . . . . . . . . . .  17
     9.2.  Informative References  . . . . . . . . . . . . . . . . .  17
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . .  18

1.  Introduction

   RFC 1997 [RFC1997] defines a BGP Community Attribute to be used as a
   tool to contain in BGP update message various additional information
   about routes which may help to automate peering administration.  As
   defined in RFC 1997 [RFC1997] BGP Communities attribute consists of
   one or more sets of four octet values, where each one of them



Raszuk & Haas           Expires December 2, 2016                [Page 2]


Internet-Draft       registered-wide-bgp-communities            May 2016


   specifies a different community.  Except two reserved ranges the
   encoding of community values mandates that first two octets are to
   contain the Autonomous System number followed by next two octets
   containing locally defined value.

   This document lists the most commonly used today BGP communities as
   well as provides a new registry for future definitions.

2.  Globally significant pre-defined values

2.1.  Well Known Standard BGP Communities

   According to RFC 1997 as well as to IANA's Well-Known BGP Communities
   registry today the following BGP communities are defined to have
   global significance:

     +------------+---------------------+----------------------------+
     | 0xFFFF0000 | planned-shut        | [draft-francois-bgp-gshut] |
     | 0xFFFFFF01 | NO_EXPORT           | [RFC1997]                  |
     | 0xFFFFFF02 | NO_ADVERTISE        | [RFC1997]                  |
     | 0xFFFFFF03 | NO_EXPORT_SUBCONFED | [RFC1997]                  |
     | 0xFFFFFF04 | NOPEER              | [RFC3765]                  |
     +------------+---------------------+----------------------------+

   This document recommends for simplicity as well as for avoidance of
   backward compatibility issues the continued use of BGP Standard
   Community Attribute type 8 as defined in RFC 1997 to distribute non
   Autonomous System specific Well-Known BGP Communities.

   For the same reason the described registry does not intend to
   obsolete BGP Extended Community Attribute and any already defined and
   deployed extended communities.  The new registry is to be used
   primarly for new community definitions in particular those which
   require to carry various new parameters or which should be propagated
   with a controled scope and radius.

2.2.  Registered pre-defined Wide BGP Communities

   It has been requested numerous times to have a globally unified way
   to express some particular Autonomous System based routing policies.
   When defining a new way to encode bgp communities we have an
   opportunity to define set of new registered routing policies and
   route markings which could be passed within and between Autonomous
   Systems resulting in their common interpretation.

   This document will request IANA to define and maintain a new registry
   for pre-defined Wide BGP Community values.  The allocation policy is
   on a first come first served basis.



Raszuk & Haas           Expires December 2, 2016                [Page 3]


Internet-Draft       registered-wide-bgp-communities            May 2016


   It is recommended that an implementation supports by an explicit
   enabling defined below Registered Wide BGP Communities.  Depending on
   the BGP implementation support it is recommended that an
   implementation would support Registered Wide BGP Communities without
   breaking static or dynamic peer/update groups.  However it needs to
   be pointed out that support of all Registered Wide BGP Communities is
   not mandatory.  It will be perfectly valid for any BGP implementation
   to support only subset of Wide BGP Communities.

   It is strongly advised that each Autonomous System does an inbound
   verification of received Wide BGP Communities from all of its EBGP
   peers before accepting them and propagating within their own domain.

   The document does not mandate nor enforces that given registered type
   value of Wide BGP Community would be of transitive or non-transitive
   type.  It is for the operator to determine the propagation AS radius
   required for such community when appending it to routing information.
   However the document will provide a transitivity radius
   recommendation to defined communities.

   The following Wide BGP Communities have global significance and their
   execution should be uniformly implemented by any BGP speaker
   supporting given set of Wide BGP Communities.

   The defined below value of the community should be interpreted as
   registered value only if "R" - registered bit is set in the community
   Type 1 container as described in [draft-raszuk-wide-bgp-communities]
   Otherwise the value is local and it's actions is locally defined by
   the operator.

2.2.1.  General Registered Wide BGP Community Values

   The below set of communities will be defined to be carried in Wide
   BGP Community Type 1, with the container type values (Community
   Registered Value) as per Section 6.
















Raszuk & Haas           Expires December 2, 2016                [Page 4]


Internet-Draft       registered-wide-bgp-communities            May 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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |            0x0001             |R C 0 0 0 0 0 0|   Hop Count   |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |            Length             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                  Registered Community Value                   |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                        Source AS Number                       |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                       Context AS Number                       |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |            Wide Community Target(s) TLV (optional)            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |        Wide Community Exclude Target(s) TLV (optional)        |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |          Wide Community Parameter(s) TLV (optional)           |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

                    Figure 1: Wide BGP Community Type 1

   Description format:

   TYPE:
       0x0001 (constant for this registry)
   FLAGS "F":
       R - Registered bit (Set to 1 for registered values)
       C - Confederation bit (Set when applicable)
   HOP COUNT "H":
       Defines domain or sub-domain propagation radius
   LENGTH "L":
       Length of the Container Type 1 in octets
   REGISTERED COMMUNITY VALUE "R":
       Value of the community in registry
   SOURCE AS "S":
       Originator AS of Wide BGP Community
   CONTEXT AS "C":
       For registered communities carries predefined meaning
       or otherwise should be set to 0x00000000
   TARGET TLV "T":
       Set of atoms containing targets for execution
   EXCLUDE TARGET TLV "E":
       Set of atoms containing excluded targets for execution
   PARAMETER TLV "P":
       Set of atoms containing optional parameters for execution





Raszuk & Haas           Expires December 2, 2016                [Page 5]


Internet-Draft       registered-wide-bgp-communities            May 2016


   BLACKHOLE
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = Operator's defined      T = none
       L = 18 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - All transit traffic to destinations for which
   advertised routes carry such community value should be dropped.  It
   is recommended that specified Autonomous System number should be
   eligible and verified by BGP Origin Validation functionality to
   advertise given BGP destinations.

   SOURCE FILTER
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = Operator's defined      T = none
       L = 18 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - All transit traffic which source addresses have been
   tagged by such Wide BGP Community should be dropped.

   SOURCE DO RPF
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = Operator's defined      T = none
       L = 18 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - All transit traffic which source addresses have been
   tagged by such Wide BGP Community should be subject to Reverse Path
   Forwarding check when crossing Autonomous System boundaries.  Source
   Autonomous System number specified in the body of this community
   should directly indicate the peering interfaces on which such RPF
   check should be performed.

   HIGH PRIORITY PREFIX
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = 0x00                    T = none
       L = 18 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - BGP prefixes carrying such Wide BGP Community should be
   advertised to restarting peers before other prefixes received by
   given BGP speaker.




Raszuk & Haas           Expires December 2, 2016                [Page 6]


Internet-Draft       registered-wide-bgp-communities            May 2016


   ATTACK TARGET
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = Operator's defined      T = none
       L = 18 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - The ATTACK_TARGET Registered Wide BGP Community
   indicates that BGP prefixes carrying such community are receiving
   unusual amount of unwanted traffic most likely due to some form of
   network attack.  Network devices capable of analyzing and mitigating
   such attacks can use such community as a hint on what destinations to
   focus the most.

2.2.2.  Advertisement control Registered Wide BGP Communities

   NO ADVERTISE TO AS
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = Operator's defined      T = Type_1 (Peer_AS)
       L = 25 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - All routes received which carry such Wide BGP Community
   containing this value MUST NOT be advertised to BGP peer which
   Autonomous System number has been listed in the TARGET TLV field of
   this community.

   Semantically specifying the reserved Autonomous System value of
   0xFFFFFFFF (ANY AS) would be an equivalent of using NO_ADVERTISE
   Well-Known Standard BGP Community Attribute.

   ADVERTISE TO AS
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = Operator's defined      T = Type_1 (Peer_AS)
       L = 25 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - All routes received carrying such Wide BGP Community
   containing this value MUST ONLY be advertised to BGP peers which
   Autonomous System number is specified in the TARGET TLV field of this
   community.

   Semantically specifying the reserved Autonomous System value of
   0xFFFFFFFF (ANY AS) would be an equivalent of advertisement to all
   neighbors.  Post execution this community MUST be removed.




Raszuk & Haas           Expires December 2, 2016                [Page 7]


Internet-Draft       registered-wide-bgp-communities            May 2016


   ADVERTISE AND SET NO EXPORT
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = Operator's defined      T = Type_1 (Peer_AS)
       L = 25 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - All routes received carrying such Wide BGP Community
   containing this value MUST be advertised to BGP peer which Autonomous
   System number is specified in the TARGET TLV field of this community
   with NO_EXPORT Standard BGP Community attached.

   Semantically specifying in TARGET TLV the reserved Autonomous System
   value of 0xFFFFFFFF (ANY AS) would be an equivalent of advertisement
   to all neighbors with NO_EXPORT community being set.  Post execution
   this community MUST be removed.

2.2.3.  AS source marking Registered Wide BGP Communities

   FROM PEER
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = 0x00                    T = none
       L = 18 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - Autonomous System may attach this community to routes
   received from their EBGP peers to later, when advertising them
   outside the domain, apply or relax local policies only on such group
   of destinations.

   FROM CUSTOMER
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = 0x00                    T = none
       L = 18 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - Autonomous System may attach this community to routes
   received from their customers to later, when advertising them outside
   the domain, apply or relax local policies only on such group of
   destinations.









Raszuk & Haas           Expires December 2, 2016                [Page 8]


Internet-Draft       registered-wide-bgp-communities            May 2016


   INTERNAL
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = 0x00                    T = none
       L = 18 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - Autonomous System may attach this community to routes
   originated in their own domain to later, when advertising them
   outside the domain, apply or relax local policies only on such group
   of destinations.

   FROM UPSTREAM
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = 0x00                    T = none
       L = 18 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - Autonomous System may attach this community to routes
   received from their EBGP upstream peers to later, when advertising
   them outside the domain, apply or relax local policies only on such
   group of destinations.

   FROM IX
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = 0x00                    T = none
       L = 18 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - Autonomous System may attach this community to routes
   received from their EBGP peering sessions with the Internet Exchange
   peers or with Route Server to later, when advertising them outside
   the domain, apply or relax local policies only on such group of
   destinations.

   LEARNED FROM AS
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = 0x00                    T = Type_1 (Peer_AS)
       L = 25 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - Autonomous System may attach this community to routes
   received from their EBGP peer by explicitly tagging them with their
   peer's Autonomous System number as a value of the TARGET TLV field.
   If the AS number is a two octet number first two octest will be



Raszuk & Haas           Expires December 2, 2016                [Page 9]


Internet-Draft       registered-wide-bgp-communities            May 2016


   filled with zero.  It is possible to use this to also carry private
   AS number of customers.

2.2.4.  Return path influencing Registered Wide BGP Communities

   PATH HINT
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = Operator's defined      T = Type_1 (AS#)
       L = 25 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - Autonomous System receiving such Wide BGP Community
   value should prefer for BGP prefixes received with such community
   (for example by increasing value of local preference on ingress), a
   BGP path which traverses Autonomous System number which has been
   specified in the TARGET TLV field of this community.  Post execution
   this community SHOULD be kept.

   NEGATIVE PATH HINT
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = Operator's defined      T = Type_1 (AS#)
       L = 25 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - Autonomous System receiving such Wide BGP Community
   value should prefer for BGP prefixes received with such community
   (for example by increasing value of local preference on ingress), a
   BGP path which DOES NOT traverses Autonomous System number which has
   been specified in the TARGET TLV field of this community.  Post
   execution this community SHOULD be kept.

2.2.5.  AS_PATH modifying Registered Wide BGP Communities

   PREPEND N TIMES BY AS
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = Operator's defined      T = Type_1 (AS#)
       L = 29 octets               E = none
       R = IANA assigned           P = Type_4 (0xAA)

   DESCRIPTION - The Autonomous System specified in the TARGET TLV field
   of such community should prepend N times (encoded as 0xAA) its own
   Autonomous System number when advertising routes tagged with this
   community to peers.  Number of requested AS prepends is provided in
   the PARAMETERS TLV field value.  Post execution this community MUST
   be removed.



Raszuk & Haas           Expires December 2, 2016               [Page 10]


Internet-Draft       registered-wide-bgp-communities            May 2016


   PREPEND N TIMES TO AS
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = Operator's defined      T = Type_1 (AS#)
       L = 29 octets               E = none
       R = IANA assigned           P = Type_4 (0xAA)

   DESCRIPTION - The Autonomous System advertising routes externally
   should prepend N times (encoded as 0xAA) its own Autonomous System
   number when advertising routes tagged with this community to peer
   which AS number is defined by TARGET TLV field.  Number of requested
   AS prepends is provided in the PARAMETERS TLV field.  Post execution
   this community MUST be removed.

   REPLACE BY
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = Operator's defined      T = Type_1 (AS#)
       L = 25 octets               E = none
       R = IANA assigned           P = none

   DESCRIPTION - All routes marked with such community advertised by an
   Autonomous System to all of its external peers should have any
   occurrence of an Autonomous System number specified in the TARGET TLV
   field replaced with advertising domain's local Autonomous System
   number.  Post execution this community MUST be removed.

2.2.6.  Local Preference Registered Community

   LOCAL PREFERENCE
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = Operator's defined      T = none
       L = 22 octets               E = none
       R = IANA assigned           P = Type_4 (ABBBBBBB)

       SEMANTICS of PARAMETERS TLV
           1 octet 1st bit indicates:
               0-increment, 1-decrement
               7 bits - value of local preference value 1..127

   DESCRIPTION - Autonomous System may suggest to its EBGP neighbor the
   following adjustments to the value of local preference as specified
   by given domain's local policy.  The values of requested increment or
   decrement of local preference value is carried in the PARAMETERS TLV
   field.  Post execution this community MUST be removed.





Raszuk & Haas           Expires December 2, 2016               [Page 11]


Internet-Draft       registered-wide-bgp-communities            May 2016


2.2.7.  AS_PATH TTL Registered Community

   AS_PATH TTL MAX RADIUS
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = Operator's defined      T = none
       L = 22 octets               E = none
       R = IANA assigned           P = Type_4 (0xAA) max AS_PATH radius

   DESCRIPTION - Autonomous System may suggest to drop advertised prefix
   by any transit network if its AS_PATH attribute length would be equal
   or greater to encoded value both inbound or outbound of EBGP session.
   The value of max AS_PATH length allowed is specified in the
   PARAMETERS TLV field of the community.  Post comparison this
   community MUST be kept.

2.2.8.  GEO-LOCATION Registered Community

   GEOGRAPHIC LOCATION WHERE BGP ROUTE IS INTRODUCED TO AS
       Type: 0x0001                S = src AS #
       F = 0x80                    C = 0x00000000
       H = Operator's defined      T = none
       L = 26 octets               E = none
       R = IANA assigned           P = Type_8 (5 UTF-8 characters)

   DESCRIPTION - Autonomous Systems may attach this community to routes
   received from EBGP neighbors or introduced to BGP by other routing
   protocols to identify the geographic location where the route was
   introduced to the AS.  The "right-most" two octets of PARAMETERS TLV
   correspond to an ISO3166-1 alpha-2 country identifier, while the
   "left-most" three octets may express a more specific geographic
   location, such as a city or IXP encoded in 3 octets.

   Example:

   Wide BGP Community describing route learnt by the AS at London, GB
        HOP COUNT - operator defined
        LENGTH - 26
        PARAMETERS - 3 octets locality string + 2 octets country id.












Raszuk & Haas           Expires December 2, 2016               [Page 12]


Internet-Draft       registered-wide-bgp-communities            May 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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |            0x0001             |       0x80    |      0xFF     |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |            0x001A             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                         IANA assigned                         |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                           0x000000AS                          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                           0x00000000                          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |      0x08     |            0x0008             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |       "L"     |       "O"     |       "N"     |      "G"      |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |       "B"     |
     +-+-+-+-+-+-+-+-+

3.  Example

   Customer of the source AS number 100 requests to execute AS_PATH
   prepend 4 times when advertising the prefixes to AS number 2424.  We
   will use the following community assigned on ingress or at the prefix
   origination.

   PREPEND N TIMES TO AS
       Type: 0x0001                S = 0x00000064 (dec 100)
       F = 0x80                    C = 0x00000000
       H = 0x00                    T = 0x00000978 (dec 2424)
       L = 0x001D (dec 29 octets)  E = none
       R = IANA assigned           P = 0x04 (dec 4)


















Raszuk & Haas           Expires December 2, 2016               [Page 13]


Internet-Draft       registered-wide-bgp-communities            May 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
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |            0x0001             |       0x80    |      0x00     |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |            0x001D             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                         IANA assigned                         |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                           0x00000064                          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                           0x00000000                          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |      0x01     |            0x0007             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                           0x00000978                          |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |      0x04     |            0x0004             |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |      0x04     |
     +-+-+-+-+-+-+-+-+

4.  ECMP Hint Registered Community

   AS_PATH TTL MAX RADIUS
       Type: 0x0001                S = src AS #
       F = 0x80                    C = publisher AS #
       H = Operator's defined      T = none
       L = 22 octets               E = none
       R = IANA assigned           P = Type_4 (0xAA) max AS_PATH radius

   DESCRIPTION - In multistage networks with large scale Equal Cost
   MultiPath (ECMP), it is often useful to separate flows towards a
   single destination among different paths along the parallel set at
   each stage.  This wide community allows the operator to send a "hint"
   to the ingress router on how to set either the MPLS entropy label
   [RFC6790] or the IPv6 flow label [RFC3697] to achieve such flow
   separation.  The Integer list given in the community can contain a
   label that is used by the receiver: Directly as an IPv6 flow label,
   Directly as an MPLS entropy label, As a seed used to calculate either
   a flow or entropy label

5.  Security considerations

   All the security considerations for BGP Communities as well as for
   BGP Extended Communities RFCs apply here.





Raszuk & Haas           Expires December 2, 2016               [Page 14]


Internet-Draft       registered-wide-bgp-communities            May 2016


6.  IANA Considerations

   This document requests IANA to define and maintain a new registry
   named: "Registered Wide BGP Communities Values".  The reserved pool
   of 0x00000000-0xFFFFFFFF has been defined for its allocations.  The
   allocation policy is on a first come first served basis.

   This document makes the following assignments for the Registered Wide
   BGP Community values:

             +---------------------------------+------------+
             | Name                            | Type Value |
             +---------------------------------+------------+
             | BLACKHOLE                       |     1      |
             | SOURCE FILTER                   |     2      |
             | SOURCE DO RPF                   |     3      |
             | HIGH PRIORITY PREFIX            |     4      |
             | ATTACK TARGET                   |     5      |
             |                                 |            |
             | NO ADVERTISE TO AS              |     6      |
             | ADVERTISE TO AS                 |     7      |
             | ADVERTISE AND SET NO EXPORT     |     8      |
             |                                 |            |
             | FROM PEER                       |     9      |
             | FROM CUSTOMER                   |     10     |
             | INTERNAL                        |     11     |
             | FROM UPSTREAM                   |     12     |
             | FROM IX                         |     13     |
             | LEARNED FROM AS                 |     14     |
             |                                 |            |
             | PATH HINT                       |     15     |
             | PATH NEGATIVE HINT              |     16     |
             |                                 |            |
             | PREPEND N TIMES BY AS           |     17     |
             | PREPEND N TIMES TO AS           |     18     |
             | REPLACE BY                      |     19     |
             |                                 |            |
             | LOCAL PREFERENCE                |     20     |
             | AS_PATH TTL MAX RADIUS          |     21     |
             | GEO-LOCATION                    |     22     |
             | ECMP HINT                       |     23     |
             |                                 |            |
             | FREE POOL                       |    24..    |
             +---------------------------------+------------+







Raszuk & Haas           Expires December 2, 2016               [Page 15]


Internet-Draft       registered-wide-bgp-communities            May 2016


7.  Contributors

   The following people contributed significantly to the content of the
   document:

   Bruno Decraene
   France Telecom
   38-40 rue du General Leclerc
   92794 Issi Moulineaux cedex 9
   France
   Email: bruno.decraene@orange-ftgroup.com

   Shintaro Kojima
   OTEMACHI 1st. SQUARE EAST TOWER, 3F
   1-5-1, Otemachi,
   Chiyoda-ku, Tokyo 100-0004
   Japan
   Email: koji@mfeed.ad.jp

   Juan Alcaide
   Cisco Systems
   Research Triangle Park, NC
   United States
   Email: jalcaide@cisco.com

   Burjiz Pithawala
   Cisco Systems
   170 West Tasman Dr
   San Jose, CA
   United States
   Email: bpithaw@cisco.com

   Saku Ytti
   TDC Oy
   Mechelininkatu 1a
   00094 TDC
   Finland
   Email: ytti@tdc.net

   Paul Jakma
   School of Computing Science, Uni. of Glasgow
   Sir Alwyn Williams Building
   University of Glasgow
   Glasgow
   G1 5AE
   UK
   Email: paulj@dcs.gla.ac.uk




Raszuk & Haas           Expires December 2, 2016               [Page 16]


Internet-Draft       registered-wide-bgp-communities            May 2016


   Russ White
   Ericsson
   Oak Island, NC  28465
   USA
   Email: russw@riw.us

8.  Acknowledgments

   Authors would like to thank Enke Chen, Pedro Marques, Alton Lo and
   Jeff Wheeler for their valuable input.

9.  References

9.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,
              <http://www.rfc-editor.org/info/rfc2119>.

   [RFC4271]  Rekhter, Y., Ed., Li, T., Ed., and S. Hares, Ed., "A
              Border Gateway Protocol 4 (BGP-4)", RFC 4271,
              DOI 10.17487/RFC4271, January 2006,
              <http://www.rfc-editor.org/info/rfc4271>.

   [RFC4360]  Sangli, S., Tappan, D., and Y. Rekhter, "BGP Extended
              Communities Attribute", RFC 4360, DOI 10.17487/RFC4360,
              February 2006, <http://www.rfc-editor.org/info/rfc4360>.

9.2.  Informative References

   [RFC1997]  Chandra, R., Traina, P., and T. Li, "BGP Communities
              Attribute", RFC 1997, DOI 10.17487/RFC1997, August 1996,
              <http://www.rfc-editor.org/info/rfc1997>.

   [RFC1998]  Chen, E. and T. Bates, "An Application of the BGP
              Community Attribute in Multi-home Routing", RFC 1998,
              DOI 10.17487/RFC1998, August 1996,
              <http://www.rfc-editor.org/info/rfc1998>.

   [RFC4384]  Meyer, D., "BGP Communities for Data Collection", BCP 114,
              RFC 4384, DOI 10.17487/RFC4384, February 2006,
              <http://www.rfc-editor.org/info/rfc4384>.

   [RFC4893]  Vohra, Q. and E. Chen, "BGP Support for Four-octet AS
              Number Space", RFC 4893, DOI 10.17487/RFC4893, May 2007,
              <http://www.rfc-editor.org/info/rfc4893>.




Raszuk & Haas           Expires December 2, 2016               [Page 17]


Internet-Draft       registered-wide-bgp-communities            May 2016


   [RFC5668]  Rekhter, Y., Sangli, S., and D. Tappan, "4-Octet AS
              Specific BGP Extended Community", RFC 5668,
              DOI 10.17487/RFC5668, October 2009,
              <http://www.rfc-editor.org/info/rfc5668>.

Authors' Addresses

   Robert Raszuk (editor)
   Bloomberg LP
   731 Lexington Ave
   New York City, NY  10022
   USA

   Email: robert@raszuk.net


   Jeffrey Haas
   Juniper Networks
   1194 N.Mathilda Ave
   Sunnyvale, CA  94089
   US

   Email: jhaas@pfrc.org




























Raszuk & Haas           Expires December 2, 2016               [Page 18]