Title: http://www.ietf.org/internet-drafts/draft-francis-idr-intra-va-01.txt
1-01 Draft of FIB Suppression with Virtual
Aggregation and Default Routes
http//www.ietf.org/internet-drafts/draft-francis-
idr-intra-va-01.txt
Paul Francis, Hitesh Ballani Cornell Univ Xiaohu
Xu, Huawei
2Outline
Changes in the -01 draft
Implementation status
Next steps (technical)
Project status within IETF
3Main 00?01 changes
BCP instead of RFC
Added Edge-suppression mode
Edges default to core
Removed need for new attribute
No wire protocol changes
Merge, add, split, and remove procedures
for Virtual Prefixes (VP)
4Recall that Virtual Aggregation uses Virtual
Prefixes (VP)
VPs are bigger than any real prefix
Certain routers FIB-install routes (tunnel) to
all sub-prefixes in a VP
5Edge Suppression (ES) Mode
(Thanks Robert Raszuk)
Core routers FIB-install all routes
Edge routers FIB-install zero or more routes, and
a default route to a core
Routes to customers, popular prefixes....
ES mode allows all edge routers (not just
customer edge) to have small FIBs
6Removal of new attribute
(Thanks Daniel Ginsburg)
In order to know which prefixes must be
FIB-installed, routers need to know
Full set of VPs
VPs for which they are an Aggregation Point
-00 used new attribute to convey VPs
-01 uses configuration
7Merge-add-split-remove
FIB-size management sometimes requires
redefinition of VPs
Must be done without service disruption or
temporarily large FIB size
See draft....
8Implementation Status
In VRP5 (Huawei Router OS)
Currently GRE (no key) tunnels
To ASBR routers must FIB-install routes learned
from neighbor AS
Need auto-config of tunnels to remove this
restriction
Huawei wants to use inter-domain tunnels to
reduce stretch penalty
9Next Steps (technical)
Define automatic configuration of GRE keys in BGP
For FIB-suppression GRE key identifies external
peer
Two possible approaches
draft-ietf-softwire-encaps-safi
Extended attributes (Huawei engineers prefer
this because reuses existing mechanism)
10GRE tunnel config example
BR router with external peers R1 and R2
R1?BR NHR1, NLRI1.1/16 R2?BR NHR2,
NLRI2.2/16
Tunnel Encapsulation Attribute
BR advertises
Update1 NHBR, E-NLRIBR, Key1,
NLRI1.1/16 Update2 NHBR, E-NLRIBR, Key2,
NLRI2.2/16
Encapsulation NLRI
BR can FIB-suppress 1.1/16 and 2.2/16
Received tunneled packets with Key1 are sent to
R1 Received tunneled packets with Key2 are sent
to R2
11Discussion.... (next steps for BCP....)
12-00 Draft of Tunnel Endpoints in BGP
http//www.ietf.org/internet-drafts/draft-xu-idr-t
unnel-00.txt
Xiaohu Xu, Huawei Paul Francis, Cornell Univ
13Inter-AS IP tunnels
Motivated by stretch and latency induced by
(intra-domain) VA
But other benefits may exist
Load balance, fast restoration . . .
Idea is simple Always FIB-install tunnels,
avoid extra hops in ASes doing VA
14Inter-AS IP tunnels
Could be implemented as Extended Attributes or
softwire-encaps-safi
Would welcome feedback here....
This draft assumes softwire-encaps-safi
In softwire draft, tunnel endpoint must be BGP
nexthop
We extend this across ASes
15softwire-encaps-safi defines the Tunnel
Encapsulation Attribute
Optional Transitive
Defines tunnel parameters (GRE, L2TPv3)
Our draft adds a sub-TLV which identifies the
tunnel endpoint
Endpoint Address Sub-TLV
Meaning This tunnel can be used to reach the
NLRI in this UPDATE
16Endpoint Address Sub-TLV
IPv4 or IPv6 (NLRI may be either type)
-------------------------------------------------
-------- Address Family Identifier (2 octets)
-----------------------------
---------------------------- Reserved (1
octet)
-----------------------------------------------
---------- Length of Autonomous System Number
(1 octet) --------------------------
------------------------------- Autonomous
System Number (Variable)
-----------------------------------------------
---------- Endpoint Address (variable)
---------------------------
------------------------------
AS Number must match origin AS
Tunnel Endpoint Address
17AS-path is the same whether tunnel is used or not
Origin AS is origin both for route to tunnel and
route to NLRI
NLRI containing tunnel address is in the same
UPDATE
By including AS Number in attribute, we detect
when this is no longer true
Could happen, for instance, as a result of
upstream aggregation
18All routers in SP use the same tunnel endpoint
address
Anycasted across all routers (this optional if
site hosts tunnel endpoint)
Prevents error where an upstream AS aggregates
NLRI, and drops one of the tunnel endpoints
ASes using VA should FIB-install routes to tunnel
endpoints
Makes tunneled packets shortest path
19What about load balance?
If upstream deaggregates, only one of the
resulting routes can have a working tunnel
Other routes can be used, only without tunnel
One improvement might be to make the tunnel
address a CIDR block
Upstream ASes would have to know to deaggregate
the tunnel address
20Draft as currently written
A,B,D 1/8 TE1.1.1.1
A,C,D 2/8
If D prefers B for 1/8 and C for 2/8, D cannot
use tunnel for packets to 2/8
ASD
A,B 1/8, 2/8 TE1.1.1.1
A,C 1/8, 2/8 TE1.1.1.1
ASB
ASC
A 1/8, 2/8 TE1.1.1.1
A 1/8, 2/8 TE1.1.1.1
ASA, 1/8, 2/8 TE1.1.1.1
21With CIDR-block tunnel endpoint addresses
A,B,D 1/8 TE1.1.1.0/29
A,C,D 2/8, 1.1.1.8/29 TE1.1.1.8/29
ASD
A,B 1/8, 2/8 TE1.1.1.0/29
A,C 1/8, 2/8 TE1.1.1.8/29
ASB
ASC
A 1/8, 2/8 TE1.1.1.8/29
A 1/8, 2/8 TE1.1.1.0/29
ASA, 1/8, 2/8 TE1.1.1.0/28
22With CIDR-block tunnel endpoint addresses
A,B,D 1/8 TE1.1.1.0/29
A,C,D 2/8, 1.1.1.8/29 TE1.1.1.8/29
Note that routers in D can now individually
select paths to 1/8 and 2/8 Results in
finer-grained traffic engineering And fast
restoration
ASD
A,B 1/8, 2/8 TE1.1.1.0/29
A,C 1/8, 2/8 TE1.1.1.8/29
ASB
ASC
A 1/8, 2/8 TE1.1.1.8/29
A 1/8, 2/8 TE1.1.1.0/29
ASA, 1/8, 2/8 TE1.1.1.0/28
23Use AS-set to convey this path diversity...
A,B,C,D 1/8, 2/8 TE1.1.1.0/28
A,B,C,D 1/8, 2/8 TE1.1.1.0/28
ASD
A,B 1/8, 2/8 TE1.1.1.0/29
A,C 1/8, 2/8 TE1.1.1.8/29
Can aggregate tunnel (reduces churn)
ASB
ASC
A 1/8, 2/8 TE1.1.1.8/29
A 1/8, 2/8 TE1.1.1.0/29
ASA, 1/8, 2/8 TE1.1.1.0/28
24By applying Iljitschs IAC weights to tunnels, we
can take both sending and receiving AS load
balancing needs into account
A,B,C,D 1/8, 2/8 TE1.1.1.0/29,
IAC30 TE1.1.1.8/29,IAC60
A,B,C,D 1/8, 2/8 TE1.1.1.0/29,
IAC30 TE1.1.1.8/29,IAC60
ASD
A,B 1/8, 2/8 TE1.1.1.0/29,IAC30
A,C 1/8, 2/8 TE1.1.1.8/29,IAC60
ASB
ASC
A 1/8, 2/8 TE1.1.1.0/29,IAC30
A 1/8, 2/8 TE1.1.1.8/29,IAC60
ASA, 1/8, 2/8 TE1.1.1.0/28
25Discussion....