Re: [Idr] WG Adoption call draft-ymbk-idr-bgp-open-policy - (6/6 to 6/20/2016)

"Sriram, Kotikalapudi (Fed)" <> Fri, 10 June 2016 20:11 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 5934312D8FE; Fri, 10 Jun 2016 13:11:02 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.902
X-Spam-Status: No, score=-1.902 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: (amavisd-new); dkim=pass (1024-bit key)
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id rGRoc-DAqZ-a; Fri, 10 Jun 2016 13:10:59 -0700 (PDT)
Received: from ( []) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by (Postfix) with ESMTPS id AA929128B44; Fri, 10 Jun 2016 13:10:59 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;; s=selector1-nist-gov; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=7V64++4imLuLyDfpuw1WlBcZG+JUyN60Gk4OkCUrWI0=; b=eKSheceXEVVxB/oBXxAasM187ItDqXUJA9ue1Bq34oxfuEDrcJEqXgZVH4ruK8/DTks/OLCGOIlktq75KJfogFe+w8DQstKCbuWJ5QSmnrV75sz1kxume9SjvCQhudE0YqlUV9Xl1+ZE0RkL4o+et7YPNG8ICwQoyruksJqi2eY=
Received: from ( by ( with Microsoft SMTP Server (TLS) id 15.1.511.8; Fri, 10 Jun 2016 20:10:57 +0000
Received: from ([]) by ([]) with mapi id 15.01.0511.010; Fri, 10 Jun 2016 20:10:57 +0000
From: "Sriram, Kotikalapudi (Fed)" <>
To: "Osborne, Eric" <>, "" <>
Thread-Topic: [Idr] WG Adoption call draft-ymbk-idr-bgp-open-policy - (6/6 to 6/20/2016)
Thread-Index: AdHAEXYm+R0yr9NBRVeLkrezdS25EQAAqhngAD9OpKAAI2/qgABsbwKQ
Date: Fri, 10 Jun 2016 20:10:57 +0000
Message-ID: <>
References: <012e01d1c012$1d05f8d0$5711ea70$> <> <> <>
In-Reply-To: <>
Accept-Language: en-US
Content-Language: en-US
authentication-results: spf=none (sender IP is );
x-originating-ip: []
x-ms-office365-filtering-correlation-id: 50a2c8c9-4e87-4069-1d95-08d3916b55bd
x-microsoft-exchange-diagnostics: 1; BL2PR09MB1122; 5:7phTMWtXv43SkbqJeeOW3KSrXawhN1YbGxflRbldaBSsJZgNQMxsp1/VmzI3myvmiJs/36729XcCpR/EUa0Stq2/2ogwPewy6O+32PyO0nIMSjziyZj1mESWguBl+wifWUWk0uV0UQ7/l1Qq5bsiJQ==; 24:3SBlVUeRmqrXCA2T4zldgtrXI06TeUo9IyY7QZhqr/FiByd0YJrm6TDRtwMkqat+Pu7CtfaZqY9SK6zOn1RKB4omvpQY07D9TUq8WD3CIKs=; 7:gjg0gU1MAg8M8JG8LMUpBhLDG/kDTqeRhriiQJsPWoo6USQwWjWjY+g7ikspnO0fLy0XfxoXy81DVi9noS3jwvJ7fFOTqFREjkhn4xxYsJ0tOfvTCW21dYLfCAxKl5ijo6i5oC2Xk2WQC5dHKeTTbfklwzohVRnprbY3oqh7ZQSwBSUlfhBOMbeGDBlZvBTJOvN6XU8OrI1DgOBVhFYKWQ==
x-microsoft-antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BL2PR09MB1122;
x-microsoft-antispam-prvs: <>
x-exchange-antispam-report-test: UriScan:;
x-exchange-antispam-report-cfa-test: BCL:0; PCL:0; RULEID:(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6055026); SRVR:BL2PR09MB1122; BCL:0; PCL:0; RULEID:; SRVR:BL2PR09MB1122;
x-forefront-prvs: 096943F07A
x-forefront-antispam-report: SFV:NSPM; SFS:(10019020)(6009001)(7916002)(199003)(52044002)(5423002)(189002)(54356999)(5002640100001)(76176999)(2906002)(2900100001)(15975445007)(561944003)(19580395003)(2950100001)(66066001)(33656002)(8676002)(50986999)(230783001)(11100500001)(77096005)(122556002)(3280700002)(10400500002)(189998001)(86362001)(106356001)(99286002)(5001770100001)(81156014)(5003600100002)(3660700001)(92566002)(97736004)(8936002)(2501003)(76576001)(87936001)(6116002)(5004730100002)(3846002)(101416001)(9686002)(74316001)(93886004)(102836003)(586003)(68736007)(105586002)(4326007)(81166006)(5008740100001); DIR:OUT; SFP:1102; SCL:1; SRVR:BL2PR09MB1122;; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en;
received-spf: None ( does not designate permitted sender hosts)
spamdiagnosticoutput: 1:99
spamdiagnosticmetadata: NSPM
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-MS-Exchange-CrossTenant-originalarrivaltime: 10 Jun 2016 20:10:57.1607 (UTC)
X-MS-Exchange-CrossTenant-fromentityheader: Hosted
X-MS-Exchange-CrossTenant-id: 2ab5d82f-d8fa-4797-a93e-054655c61dec
X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL2PR09MB1122
Archived-At: <>
Cc: "" <>
Subject: Re: [Idr] WG Adoption call draft-ymbk-idr-bgp-open-policy - (6/6 to 6/20/2016)
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Inter-Domain Routing <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Fri, 10 Jun 2016 20:11:02 -0000

>On the basis that detection-mitigation adds an attribute to 
>every route (potentially per AS hop), whereas bgp-open 
>keeps it to the neighbor relationship.  
>One attribute per route * 600k routes * N hops seems like a lot 
>if I can do the same thing with an open message.  

Perhaps you have realized by now (based on the discussion on the list) 
that the bgp-open draft also adds one OTC flag per route (or prefix).
(Yep, on the wire there is one flag per route in the bgp-open draft also.)

The SIDR, IDR, and GROW WGs have been working on it for 
the past four years or so. See this post from 2012:  
which summarized some of the requirements/design principles that were 
discussed at the time in the WG meetings. Note that in particular it says:
"the relationship has to be per prefix not per link, as prefixes with
    different business models are often sent over the same link."

Several people in this thread also have tried to convey the above 
design principle (i.e. RLP flag per route). Also see the discussion 
in Section 5.3 of [route-leak-detection-mitigation].   

>I'm also concerned about how much I should trust the RLP bit 
>from an AS a few hops away.  Getting it from my directly connected 
>neighbor is one thing, but if I can trust the source to do the right thing 
>with the RLP bit, why can't I just assume they won't leak 
>YouTube-ish things to begin with?

It is not the source, but the AS that is two hops from you
-- it is important to know what they asserted in the update.
(Keyur also highlighted this earlier in this thread.)
Let us say AS X is a multi-homed customer of AS A and AS B:
AS A ---> AS X ---> AS B   (path of the update propagation)
(assume that RLP flag per AS-hop is in use)
AS X receives a route from its provider AS A, 
and accidentally leaks it to provider AS B.
AS X is not participating in RLP (does not set its own RLP flag),
but it passes on the RLP flag set by of AS A to AS B because
the RLP attribute is transitive. Then AS B is able to detect the leak...
because AS B knows that the AS two hops away (AS A) asserted that
it is sending the update to a customer (or a lateral peer) by
setting its (i.e. AS A's) own RLP = 1.

So there is need to know the RLP flag value set by the ASes 
before your immediate neighbor. Your immediate neighbor (AS X) is 
the leaker (the offender) -- in this instance. 
So you do not want to rely on their RLP flag as much 
(for detection of route leaks). 
Also, you have knowledge about your peering relationship with them.  

Down the road, the intention is to secure the RLP attribute so that
no AS can change the RLP flag set by another AS in the path.
In the above example, if AS X were maliciously trying to leak the
route by changing the RLP flag of AS A, then it (AS X) would be prevented
from doing so if there is cryptographic protection of the RLP attribute
(e.g. by using the BGPsec protocol path signatures; see Section 3.1.2). 

The end goal of this effort has been to provide 
*secure* route leak protection (progressing via IDR-->SIDR).
(I.e. provide a solution for both accidental and malicious route leaks.)
Then it becomes necessary that each AS must set its RLP attribute 
individually (RLP per AS-hop) and be secured.

>I didn't see a discussion of scale anywhere in detection-mitigation.  
>This seems like such an obvious scale difference to me that I worry that 
>"hard to say that one proposal is more heavy weight than 
>the other in principle" means I'm missing something.  
>Feel free to enlighten me as needed.

The BGP RLP attribute is sown in Section 3.1.1 of 
[route-leak-detection-mitigation]. It consists of {ASN, RLP flag} tuples. 
The parsing/processing load associated with the BGP RLP attribute 
is not much different from processing the AS_PATH attribute.
May be it is simpler than the AS_PATH processing where you have to 
take into account the prepends, AS_SETs, CONFED_SETs, loop detection etc.
If you want to consider another per-AS-hop thing to compare with ....
We have done and reported elsewhere about BGPsec validation processing 
which involves verifying one path signature per prefix and per AS-hop. 
That has been implemented and does not seem daunting.
Just some preliminary thoughts trying to address your concerns.