Re: [GROW] draft-ietf-grow-bgp-session-culling next steps

Thomas King <thomas.king@de-cix.net> Mon, 17 July 2017 16:09 UTC

Return-Path: <thomas.king@de-cix.net>
X-Original-To: grow@ietfa.amsl.com
Delivered-To: grow@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 00C6E128BC8; Mon, 17 Jul 2017 09:09:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.602
X-Spam-Level:
X-Spam-Status: No, score=-2.602 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_LOW=-0.7, RP_MATCHES_RCVD=-0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-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 x-HvKEMc9ORp; Mon, 17 Jul 2017 09:08:59 -0700 (PDT)
Received: from de-cix.net (relay4.de-cix.net [46.31.123.2]) (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 92885131C71; Mon, 17 Jul 2017 09:08:58 -0700 (PDT)
X-IronPort-AV: E=Sophos;i="5.40,375,1496095200"; d="scan'208";a="32878"
Received: from smtp.de-cix.net ([192.168.65.10]) by mailgw014.de-cix.net with ESMTP; 17 Jul 2017 18:08:57 +0200
Received: from MS-EXCHANGE.for-the-inter.net (MS-EXCHANGE.for-the-inter.net [192.168.49.2]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by smtp.de-cix.net (Postfix) with ESMTPS id 75104B00B9; Mon, 17 Jul 2017 18:08:56 +0200 (CEST)
Received: from MS-EXCHANGE.for-the-inter.net (192.168.49.2) by MS-EXCHANGE.for-the-inter.net (192.168.49.2) with Microsoft SMTP Server (TLS) id 15.0.1263.5; Mon, 17 Jul 2017 18:08:56 +0200
Received: from MS-EXCHANGE.for-the-inter.net ([fe80::9449:4d85:69bf:3d4c]) by MS-EXCHANGE.for-the-inter.net ([fe80::9449:4d85:69bf:3d4c%12]) with mapi id 15.00.1263.000; Mon, 17 Jul 2017 18:08:56 +0200
From: Thomas King <thomas.king@de-cix.net>
To: Job Snijders <job@ntt.net>, "grow@ietf.org" <grow@ietf.org>, "furry13@gmail.com" <furry13@gmail.com>, "kawakami@mfeed.ad.jp" <kawakami@mfeed.ad.jp>, "bruno.decraene@orange.com" <bruno.decraene@orange.com>, "draft-ietf-grow-bgp-session-culling@ietf.org" <draft-ietf-grow-bgp-session-culling@ietf.org>
Thread-Topic: draft-ietf-grow-bgp-session-culling next steps
Thread-Index: AQHS1ikTMW7i5SOyikqRCnSKsqQmcqJYgZyA
Date: Mon, 17 Jul 2017 16:08:55 +0000
Message-ID: <562861E9-E32F-4D85-9CBB-2169CE4CC61A@de-cix.net>
References: <20170526140502.dqozbt2ziyfotgbw@Vurt.local>
In-Reply-To: <20170526140502.dqozbt2ziyfotgbw@Vurt.local>
Accept-Language: en-US, de-DE
Content-Language: en-GB
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [192.168.60.10]
Content-Type: text/plain; charset="utf-8"
Content-ID: <3CD3A5C88FB2FE4F9E1B9464600D13AF@for-the-inter.net>
Content-Transfer-Encoding: base64
MIME-Version: 1.0
Archived-At: <https://mailarchive.ietf.org/arch/msg/grow/BrUwlv76RRQKL0NRIuXCgL8v5BU>
Subject: Re: [GROW] draft-ietf-grow-bgp-session-culling next steps
X-BeenThere: grow@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Grow Working Group Mailing List <grow.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/grow>, <mailto:grow-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/grow/>
List-Post: <mailto:grow@ietf.org>
List-Help: <mailto:grow-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/grow>, <mailto:grow-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 17 Jul 2017 16:09:02 -0000

Hi all,

here is the summary of DE-CIX Tech Meeting [0] where I presented the BGP Session Culling approach [1]:
The attendees appreciate the BGP session culling process as such and also the standardization of the maintenance procedures of different IXPs that will hopefully follow. The attendees also stressed the fact that involuntary BGP session culling applied by the IXP operator during maintenance must only apply to BGP sessions within the IXP LAN (= source and destination IP addresses of the BGP session are within the IXP LAN). So, other BGP sessions should not be affected (e.g. BGP Multihop sessions). This is already covered in section 3.2.1 of the Internet Draft.

DE-CIX is currently evaluating how involuntary BGP session culling can be implemented. If this is doable with our hardware we are planning to implement it.

Best regards,
Thomas

[0]: https://de-cix.net/en/news-events/events/de-cix-technical-meeting
[1]: https://de-cix.net/_Resources/Persistent/e307a1b2a99d979eb21ae590e7793a4c7a45c0ac/Thomas%20King%20-%20BGP%20Session%20Culling.pdf





On 26.05.17, 16:05, "Job Snijders" <job@ntt.net> wrote:

    Hi GROW,
    
    I've compiled a todo list to outline the next steps for the
    draft-ietf-grow-bgp-session-culling document.
    
    IXP Community feedback (possible action for Thomas, Yuya)
    ---------------------------------------------------------
    
    After the initial version of this Internet-Draft was published, a few
    IXPs have expressed interest in implementing the 'involuntary culling'
    mechanism to reduce the negative impact of maintenance on their
    platform. I hope we'll receive feedback from them on the readability and
    structure of the document. As was stated before there are a number of
    IXPs which have already implemented the mechanism, but they did that
    before this document existed, I think feedback from new users will be
    very valuable, so I'd like to try and collect some of that.
    
    To shut or not to shut (possible action for Jen)
    ------------------------------------------------
    
    Jen Linkova wanted to add text to offer an alternative to
    administratively shutting down EBGP sessions: she advocated to withdraw
    all routes & stop using received routes. Conceptually this would align
    with simply removing policies associated with a EBGP peer before
    commencing maintenance if the platform supports
    draft-ietf-grow-bgp-reject.
    
    While I look forward to a text proposal, I'm not sure if this should be
    part of the BCP: the operator lacks visibility of the maintenance event
    in their syslog (most implementions won't log that all routes were
    withdrawn), and it precludes the use of draft-ietf-idr-shutdown to
    inform others on what is going on.
    
    Or perhaps this is a subjective matter driven by local considerations
    and we should describe both approaches. If we describe both:
    
        o how do we facilitate a newcomer reading the document, how to
          decide which of the two to use?
    
        o What terminology would we use to contrast from "Voluntary BGP
          Session Teardown"?
    
        o if you choose a deny-import/deny-export approach, shouldn't you
          ideally start with a gshut 65535:0 approach and subsequently
          withdraw, to prevent hyper local blackholing?
    
        o What do other operators think about deny-import/deny-export rather
          then shutting?
    
    So... should this I-D include the method at all?
    
    We can also accept that the BCP is to administratively shut, but that
    some operators will have their own methods.
    
    BGP g-shut (possible action for Bruno et al)
    --------------------------------------------
    
    Bruno promised a new, fresh version of draft-ietf-grow-bgp-gshut which
    would focus on the rfc1997 well-known community 65535:0 - I would
    appreciate if this is posted at some point so we can make an Informative
    reference to a non-zombie draft.  NTT (as2914) & Coloclue (as8283)
    implemented experimental rfc1997 gshut support for customers and it
    appears to work as advertise (no pun intended ;-).
    
    Add examples for more platforms (everyone)
    ------------------------------------------
    
    We're tracking examples of culling configs in this repository
    https://github.com/bgp/bgp-session-culling-config-examples - if you see
    a missing implementation and know how to configure involuntary culling,
    please consider adding an example through a pull-request or an email to
    the authors. Thanks!
    
    Kind regards,
    
    Job