Internet DRAFT - draft-hares-i2rs-bgp-compare-yang
draft-hares-i2rs-bgp-compare-yang
I2RS working group S. Hares
Internet-Draft Huawei
Intended status: Standards Track October 27, 2014
Expires: April 30, 2015
Comparison of I2RS and Config BGP Yang Modules
draft-hares-i2rs-bgp-compare-yang-01
Abstract
This document contains a comparison of two BGP yang models: draft-
zhdankin-netmod-bgp-cfg-01 and draft-wang-i2rs-bgp-dm. The yang
model in draft-zhdankin-netmod-bgp-cfg-01 is a model focused on
configuration. The yang model in draft-wang-i2rs-bgp-dm-00 is
focused on the status and ephemeral state changes needed for the I2RS
interface. The conclusion of comparison is that there little overlap
except the definitions of common bgp structures. The draft-wang-
i2rs-bgp-dm-00 is necessary to fulfil a majority of the requirement
drawn from the BGP use cases in the I2RS use cases (draft-i2rs-hares-
usecase-reqs-summary).
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 April 30, 2015.
Copyright Notice
Copyright (c) 2014 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
Hares Expires April 30, 2015 [Page 1]
Internet-Draft IM for policy October 2014
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. Definitions and Acronyms . . . . . . . . . . . . . . . . . . 3
3. BGP Yang Draft Comparison . . . . . . . . . . . . . . . . . . 4
4. Differences between the drafts . . . . . . . . . . . . . . . 4
4.1. Overlap of configuration draft-zhdankin-netmod-bgp-01 . . 7
4.2. Unique configuration for draft-zhdankin-netmod-bgp-01 . . 7
4.3. Unique configuration for draft-wang-bgp-dm-00 . . . . . . 8
5. Comparison of State needed versus BGP requirements . . . . . 9
5.1. BGP-REQ 01 . . . . . . . . . . . . . . . . . . . . . . . 9
5.2. BGP-REQ 02 . . . . . . . . . . . . . . . . . . . . . . . 10
5.3. BGP-REQ 03 . . . . . . . . . . . . . . . . . . . . . . . 13
5.4. BGP-REQ 04 . . . . . . . . . . . . . . . . . . . . . . . 14
5.5. BGP-REQ 05 . . . . . . . . . . . . . . . . . . . . . . . 15
5.6. BGP-REQ 06 . . . . . . . . . . . . . . . . . . . . . . . 16
5.7. BGP-REQ 07 . . . . . . . . . . . . . . . . . . . . . . . 17
5.8. BGP-REQ 08 . . . . . . . . . . . . . . . . . . . . . . . 18
5.9. BGP-REQ 09 . . . . . . . . . . . . . . . . . . . . . . . 19
5.10. BGP-REQ 10 . . . . . . . . . . . . . . . . . . . . . . . 20
5.11. BGP-REQ 11 . . . . . . . . . . . . . . . . . . . . . . . 22
5.12. BGP-REQ 12 . . . . . . . . . . . . . . . . . . . . . . . 22
5.13. BGP-REQ 13 . . . . . . . . . . . . . . . . . . . . . . . 25
5.14. BGP-REQ 14 . . . . . . . . . . . . . . . . . . . . . . . 25
5.15. BGP-REQ 15 . . . . . . . . . . . . . . . . . . . . . . . 27
5.16. BGP-REQ 16 . . . . . . . . . . . . . . . . . . . . . . . 27
5.17. BGP-REQ 17 . . . . . . . . . . . . . . . . . . . . . . . 28
5.18. BGP-REQ 18 . . . . . . . . . . . . . . . . . . . . . . . 28
6. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 29
7. Security Considerations . . . . . . . . . . . . . . . . . . . 29
8. Informative References . . . . . . . . . . . . . . . . . . . 29
Author's Address . . . . . . . . . . . . . . . . . . . . . . . . 30
1. Introduction
The Interface to the Routing System (I2RS) provides read and write
access to the information and state within the routing process within
routing elements. The I2RS client interacts with one or more I2RS
agents to collect information from network routing systems. The
processing of collecting information at the I2RS agent may require
the I2RS Agent to filter certain information, group pieces of
Hares Expires April 30, 2015 [Page 2]
Internet-Draft IM for policy October 2014
information, or perform actions on the I2rs collected information
based on specific I2rs policies.
This draft is a comparison of the following two BGP yang models:
[I-D.zhdankin-netmod-bgp-cfg], and [I-D.wang-i2rs-bgp-dm]. The
comparison provides an overview of the differences, overlaps, and
unique features of each yang model. The analysis also evaluates
whether both models or a single model is necessary to satisfy the
requirements for the BGP use cases found in the
[I-D.hares-i2rs-usecase-reqs-summary].
This draft concludes each of these two drafts focuses on the purpose
each draft was created for (configuration, I2rs status and ephemeral
state). The drafts have little overlap outside common definitions
for some of the BGP functions. Both drafts reference bgp policy
outside the basic structures (Prefix-lists, and policy-groups). Both
drafts have concepts of AFI level and BGP neighbor level features.
The status and ephemeral state found in [I-D.wang-i2rs-bgp-dm] is
necessary to fulfil the BGP use cases found in the
[I-D.hares-i2rs-usecase-reqs-summary]. Configuration knobs in
[I-D.zhdankin-netmod-bgp-cfg] were helpful to support these bgp use
cases, but the lack of state would not allow support of these
features. The recommendation is that the two drafts harmonize the
group structures and continue as two separate drafts for their
original purpose (config and I2RS).
One BGP requirement (BGP-REQ18) requires a re-computation of the
local BGP tables after policies have been modified by the ephemeral
interface. The exact methodology of this re-computation could be
part of ephemeral soft re-configuration. However, the I2RS WG has
not determine how ephemeral state acts. Neither draft has created
mechanism to do the ephemeral state re-configuration which is wise
since both the I2RS WG and netmod WG should develop a joint ephemeral
re-configuration process.
The rest of this draft is the details so those who desire "sounds
bytes" level reading may stop reading now.
2. Definitions and Acronyms
BGP - Border Gateway Protocol version 4
CLI: Command Line Interface
IGP: Interior Gateway Protocol
I2RS: Interface to (2) Routing system.
Hares Expires April 30, 2015 [Page 3]
Internet-Draft IM for policy October 2014
Information Model: An abstract model of a conceptual domain,
independent of a specific implementations or data representation
INSTANCE: Routing Code often has the ability to spin up multiple
copies of itself into virtual machines. Each Routing code
instance or each protocol instance is denoted as Foo_INSTANCE in
the text below.
NETCONF: The Network Configuration Protocol
3. BGP Yang Draft Comparison
The authors of [I-D.zhdankin-netmod-bgp-cfg] focused on the
configuration aspect of BGP (98%+ configuration, 2% status). The
[I-D.wang-i2rs-bgp-dm] is focused on the I2RS need for status with a
small amount of specific I2RS configuration for I2RS needs (95%
status, 2% config). The two drafts can be combined together, but
guidance is needed from the netmod group as the I2RS state is read-
write ephemeral.
Why is draft-wang-bgp-dm-00 mostly focused on routes, statistics, and
state?
The use cases specified in [I-D.hares-i2rs-usecase-reqs-summary]
demonstrate a need for the status found in [I-D.wang-i2rs-bgp-dm]
which includes: bgp-local-rib, bgp-rib-in, bgp-rib-out and all kinds
of statistics and state, such as protocol-status , bgp-rt-state-info,
peer-state-info, max-prefix-rcv-limit, etc. The status is both a the
AFI state and the BGP peer state (within the AFI).
Two versions of [I-D.zhdankin-netmod-bgp-cfg] have been released - a
-00.txt and a -01.txt he second version (-01 version) only updated
references to netmod and states on the yang modules. This draft will
use the -01 version of [I-D.zhdankin-netmod-bgp-cfg],
The [I-D.wang-i2rs-bgp-dm] was released mistakenly as
[I-D.hares-i2rs-bgp-dm]. A few corrections to the status fields were
included in the [I-D.wang-i2rs-bgp-dm]. This draft uses
[I-D.wang-i2rs-bgp-dm] for the comparison.
4. Differences between the drafts
The [I-D.zhdankin-netmod-bgp-cfg] is composed by two parts: BGP
Router Configuration and Prefix Lists. BGP Router Configuration
contains including 3 parts: af-configuration , bgp-neighbors, and
rpki-config (as shown in figure 1).
Hares Expires April 30, 2015 [Page 4]
Internet-Draft IM for policy October 2014
module: bgp
+--rw bgp-router
| +--rw rpki-config
| +--rw af-configuration
| +--rw bgp-neighbors (98% config, 2% state)
+--rw Prefix Lists
+--rw prefix-lists
+--rw prefix-list [prefix-list-name]
+--rw prefix-list-name string
+--rw prefixes
+--rw prefix [seq-nr]
+--rw seq-nr uint16
+--rw prefix-filter
+--rw (ip-address-group)?
| .....
+--rw action actions-enum
+--rw statistics
.....
Figure 1: draft-zhdankin-netmod-bgp-cfg structure
The [I-D.wang-i2rs-bgp-dm] is written with a status structure focus
where manipulation of every concrete route through controlling policy
and BGP attributes in different BGP address families. This does not
contain the rpki-config. These drafts have ~5% overlap in status/
configuration.
module: bgp
+--rw bgp-protocols
| +--rw af-status
| | +--rw bgp-local-rib
| | +--rw bgp-neighbors (2% config, 98% state)
| | | +--rw policy-in
| | | +--rw policy-out
| | | +--rw peer-state
| | | +--rw bgp-rib-in
| | | +--rw-bgp-rib-out
module: ietf-pcim
+--rw Policy-sets
+--rw Policy-groups
+--rw Policy-Rules
Figure 2 draft-i2rs-wang-bgp-dm-00
Hares Expires April 30, 2015 [Page 5]
Internet-Draft IM for policy October 2014
o The focus is status-based based on AFI, but includes local-rib and
BGP neighbor's policy (in and out), peer state, rib-in, and rib-
out.
o prefix list policy being covered inline
([I-D.zhdankin-netmod-bgp-cfg]) versus in the draft-hares-bnp-
im-01 which uses the policy descriptions created by RFC3060,
RFC3460, and other policy work. This methodology is being
utilized by the OpenDaylight Group policy as well.
o Redistribution being done inline ([I-D.zhdankin-netmod-bgp-cfg])
as a configuration. The draft-i2rs-wang-bgp-dm-00 did not
configure af-configuration.
o [I-D.zhdankin-netmod-bgp-cfg] claims to list the aspath path was
well as the prefix configuration, but this section is missing in
the draft. The example is the expression of as-path in draft-
i2rs-wang-bgp-dm-00 is a actually string value of as-path which is
one of attributes in BGP route rather not a Boolean value as used
in [I-D.zhdankin-netmod-bgp-cfg].
o The order of specifying the protocol elements is different in some
cases due to the status versus configuration focus. For example,
limiting maximum prefixes and maximum paths is done in a slightly
different way. A second example is that community and cluster
strings.
Below is an example of the AF-status structure found in draft-bgp-
dm-00
module: bgp-protocol
+--rw bgp-protocol
+--rw bgp-ipv4-uni-instance
| +--rw bgp-local-rib
| +--rw bgp-peer-list
| +--rw bgp-rib-in
| +--rw bgp-rib-out
......
+--rw bgp-evpn-instance
| +--rw bgp-local-rib
| +--rw bgp-peer-list
| +--rw bgp-rib-in
| +--rw bgp-rib-out
figure bgp-3
Hares Expires April 30, 2015 [Page 6]
Internet-Draft IM for policy October 2014
4.1. Overlap of configuration draft-zhdankin-netmod-bgp-01
The draft-zhdankin-netmod-bgp-01 and draft-wang-i2rs-bgp-dm-00 both
contain at the protocol level:
module: bgp
+--rw bgp router [bgp protocol]
+--rw local-as-number? unit32
+--rw local-as-identifier inet:ip-address (zhdankin)
+--rw router-id inet:ip-address (wang)
...
figure bgp-3
The module contains at the peer level the association of a peer with
an AS
[draft-zhdank-netmod-bgp-01]
+--rw bgp-neighbors* [AS-number]
+--rw as-number
+--rw (peer-address-type)?
. . .
+--rw prefix-list prefix-list-ref
+--default-action? enumeration (permit/deny)
[[I-D.wang-i2rs-bgp-dm]]
+--rw bgp-peer-list* [bgp-peer-name]
+--rw peer-session-address?
. . .
+--rw peer-name
+--ro peer-type
+--rw bgp-policy-in policy-set-name
+--rw bgp-policy-out policy-set-name
figure bgp-5
4.2. Unique configuration for draft-zhdankin-netmod-bgp-01
[I-D.zhdankin-netmod-bgp-cfg] contains the unique configuration for
RPKI, AF-configuration and BGP peers. A sample of the unique
configuration for the AF-configuration is:
o cost-communities
o BGP-damping
o route-aggregation - this is policy so we could easily add,
Hares Expires April 30, 2015 [Page 7]
Internet-Draft IM for policy October 2014
o reflector clients
o best external advertisement
o aggregate timer (sending out aggregate times)
o flags to compare router-id as part of bgp bestpath selection
o MED-confederation
o administrative distance (cisco)
o packet forwarding over multiple paths
o allowances for slow peers
o BGP multi-path (ECMP peers)
o external fail-over for peer
o AS confederations
o deterministic MEDs
o Graceful-restart
o BGP AS listener only
o Logging of neighbor changes
o Transport options for BGP
o Removal of private AS
4.3. Unique configuration for draft-wang-bgp-dm-00
The following variables were included in [I-D.hares-i2rs-bgp-dm], but
not in [I-D.zhdankin-netmod-bgp-cfg]:
o protocol-status (ro) - needed for I2RS information
o shutdown protocol - needed if I2RS is to shutdown bgp protocol,
o AFI based local-rib
o BGP-peer-status information - [I-D.zhdankin-netmod-bgp-cfg] has
number of updates, but less status information in the draft.
Hares Expires April 30, 2015 [Page 8]
Internet-Draft IM for policy October 2014
The following pieces are needed by I2RS:
o At instance level, bgp-instance-name, bgp-instance-create (to
create bgp process), bgp-instance-type (to specify what type to
create),
o At AFI level in local rib, bgp_route_create (to add bgp route for
i2rs) and bgp_state_info for status updates.
o At peer level, there must be maximum prefixes per peer (received
and transmit), high water/low water prefix counts, and average
number of prefixes;
o Versions for instance publishing,
o Details on path attributes: ASpath strings, community and extend-
community attribute, cluster lists, aggregation, atomic
aggregator;
o Mechanisms for logging/publishing information
5. Comparison of State needed versus BGP requirements
5.1. BGP-REQ 01
BGP-REQ01 requirement is: I2RS client/agent exchange SHOULD support
the read, write and quick notification of status of the BGP peer
operational state on each router within a given Autonomous System
(AS). This operational status includes the quick notification of
protocol events that proceed a destructive tear-down of BGP session
[I-D.zhdankin-netmod-bgp-cfg] contains the following status related
to each peer's bgp operational state.
module: bgp
+--bgp-router
+ . . .
+--rw bgp-neighbors
+--rw peer-address
| . . .
+--rw bgp-neighbor-state
+--rw bgp-peer-admin-status enumeration
+--rw in-lastupdatetime
Figure bgp-6
Conclusion: [I-D.zhdankin-netmod-bgp-cfg] does not provide support
required by I2RS.
Hares Expires April 30, 2015 [Page 9]
Internet-Draft IM for policy October 2014
[I-D.wang-i2rs-bgp-dm] contains the following status related to each
peer's BGP operational state:
module: bgp
+--bgp-protocol
+ . . .
+rw bgp-ipv4-uni-instance (af-instance)
+--rw bgp-instance-name
| . . .
+--rw bgp-local-rib
| . . .
+--rw bgp-peer-list [bgp-peer-name]
| . . .
| +--rw peer-state-info
| | +--rw peer-current-state? peer-state
| | |--rw peer-last-state? peer-state
| | |--ro peer-down-reason
| | |--ro error code? enumeration
| | | +--ro (sub-error-code-type)?
| | | | +--: (head-error-sub-code)
| | | | +--ro head-error-sub-value? enumeration
| | | | +--: (open-error-sub-code)
| | | | +--ro open-error-sub-value? enumeration
| | | | +--: (update-error-sub-code)
| | | | +--ro-update-error-sub-value? enumeration
| | | | +--: (route-refresh-error-sub-code)
| | | | +--ro-route-refresh-error-sub-value? enumeration
figure bgp-7
Conclusion: [I-D.wang-i2rs-bgp-dm] provides for this requirement.
5.2. BGP-REQ 02
BGP-REQ02 requirement is: "I2RS client SHOULD be able to push BGP
routes with custom cost communities to specific I2RS agents on BGP
routers for insertion in specific BGP Peer(s) to aid Traffic
engineering of data paths. These routes SHOULD be tracked by the
I2RS Agent as specific BGP routes with customer cost communities.
These routes (will/will not) be installed via the RIB-Info."
Status:
[I-D.zhdankin-netmod-bgp-cfg] supports configuration related to
address family control of these features, but it does not have a
route level support. The AFI family configuration is shown in
context below:
Hares Expires April 30, 2015 [Page 10]
Internet-Draft IM for policy October 2014
module: bgp
+--rw bgp-router
| +--rw local-as-number? uint32
| +--rw local-as-identifier? inet:ip-address
| +--rw rpki-config
| | .....
| +--rw af-configuration
| | +--rw ipv4
| | | +--rw mdt
| | | . . .
| | | +--rw multicast
| | | | +--rw bgp
| | | | | +--rw bgp-af-config
| | | | | | . . .
| | | | | | +--rw bestpath
| | | | | | | +--case as-path:
| | | | | | | ignore-as-path boolean
| | | | | | | +--case compare-routerid
| | | | | | | | ignore-routerid boolean
| | | | | | | + case cost-community
| | | | | | | | ignore-cost-community Boolean
| | | | . . .
| | | +--rw unicast
| | | | +--rw bgp
| | | | +--rw bgp-af-config
| | | | | . . .
| | | | | +--rw bestpath
| | | | | | . . .
| | | | | | +--case cost-community
| | | | | | | | ignore-cost-community Boolean
| | | +--rw unicast
| | | | +--rw bgp
| | | | +--rw bgp-af-config
| | | | | . . .
| | | | | +--rw bestpath
| | | | | | . . .
| | | | | | +--case cost-community
| | | | | | | | ignore-cost-community Boolean
(replicated for appropriate AFIs)
Figure bgp-8
Conclusion: This [I-D.zhdankin-netmod-bgp-cfg] does not adequately
support the I2RS BGP REQ02. .
[I-D.wang-i2rs-bgp-dm] does support per-route configuration tagging
of route with customer community in local BGP rib, and per peer
AdjRibIn and adjRibout
Hares Expires April 30, 2015 [Page 11]
Internet-Draft IM for policy October 2014
+--bgp-protocol
+ . . .
+rw bgp-ipv4-uni-instance (af-instance)
+--rw bgp-instance-name
| . . .
+--rw afi
+--rw safi
+--rw bgp-local-rib
| +--rw bgp-route-list* [ipv4-route ipv4-prefix-length]
| | +--rw ipvr-route inet:ipv4-prefix
| | +--rw ipv4-prefix-length uint8
| | +--rw route-type? enumeration
| | +--rw bgp-attribute-list*
| | | +--rw bgp-origin?
| | | . . .
| | | +--rw bgp-extcommattr
| | | | +--rw custom-community
| | | | | +--rw valid boolean
| | | | | +--rw insertion point uint8
| | | | | +--rw community-id uint8
| | | | | +--rw cost-id uint32
| | | | +--rw useextcommsize uint16
| | | | +--rw ulrefcount? uint16
| | | | +--rw excmmattr-value string
| +--rw bgp-peer-list* (bgp-peer-name)
| | . . .
| | +--rw bgp-rib-in
| | | +--rw bgp-rib-in-list* (ipv4 route
| | | | ipvr-prefix-length route-distinguisher)
| | | | +--rw ipv4-route inet_ipv4-prefix
| | | | | +--rw bgp-attribute-list*
| | | | | | . . .
| | | | | | +--rw bgp-extcommattr
| | | | | | | +--rw custom-community
| | | | | | | +--rw valid boolean
| | | | | | | +--rw insertion point uint8
| | | | | | | +--rw community-id uint8
| | | | | | | +--rw cost-id uint32
| | | | | | | +--rw useextcommsize uint16
| | | | | | | +--rw ulrefcount? uint16
| | | | | | | +--rw excmmattr-value string
| | | . . .
| | +--rw bgp-rib-out
| | | +--rw bgp-rib-out-list* (ipv4 route
| | | | ipv4-prefix-length route-distinguisher)
| | | | +--rw ipv4-route inet_ipv4-prefix
| | | | | +--rw bgp-attribute-list*
| | | | | | . . .
Hares Expires April 30, 2015 [Page 12]
Internet-Draft IM for policy October 2014
| | | | | | +--rw bgp-extcommattr
| | | | | | | +--rw custom-community
| | | | | | | +--rw valid boolean
| | | | | | | +--rw insertion point uint8
| | | | | | | +--rw community-id uint8
| | | | | | | +--rw cost-id uint32
| | | | | | | +--rw useextcommsize uint16
| | | | | | | +--rw ulrefcount? uint16
| | | | | | | +--rw excmmattr-value string
Figure bgp-9
Conclusion: [I-D.wang-i2rs-bgp-dm] needed as well as
[I-D.zhdankin-netmod-bgp-cfg].
5.3. BGP-REQ 03
BGP-REQ03 requirement is: "I2RS client SHOULD be able to track via
read or notifications all Traffic engineering changes applied via
I2RS agents to BGP route processes in all routers in a network."
Discussion on Requirement: Traffic engineering changes can include:
ORFs (RFC5291, 5292), flows specifications (RFC5575, draft-ietf-), TE
performance (draft-ietf-idr-te-pm-bgp-01), traffic-engineering state
(draft-ietf-idr-te-lsp-distribution), and route target filtering.
Additional input needs to be obtained from the i2rs WG on what
constitutes traffic engineering.
Status:
[I-D.zhdankin-netmod-bgp-cfg] has the following potential
configuration support:
o on most af configurations: af-bgp_config container supports
allowing the following features: add-path, best-external,
aggregation timer, damping, propagating dmz-link-bw, and
redistributing iBGP routes into IGP.
o af rtfilters - AFI for rtfilters.
These features do not provide any of the traffic engineering input.
[I-D.wang-i2rs-bgp-dm]: has per route status tracking for the local-
rib associated with each afi, and the virtual bgp AdjRibIn and BGP
AdjRibOut for each peer. Each route has a route type that include
route types for all valid NLRIs which includes: ipv4, ipv6, labeled
ipv4, labeled ipv6, flows, link-state (ls) data, evpn, mvpn, vpls,
l2vpn-singaling-nlri, rt-constraint, pw-route.
Hares Expires April 30, 2015 [Page 13]
Internet-Draft IM for policy October 2014
+--bgp-protocol
+ . . .
+rw bgp-ipv4-uni-instance (af-instance)
+--rw bgp-instance-name
| . . .
+--rw afi
+--rw safi
+--rw bgp-local-rib
| +--rw bgp-route-list* [ipv4-route ipv4-prefix-length]
| | +--rw ipvr-route inet:ipv4-prefix
| | +--rw ipv4-prefix-length uint8
| | +--rw route-type? enumeration
| | +--rw route-admin-distance uint16
| | ....
| | +--rw bgp-attribute-list*
| | | +--rw bgp-origin?
Figure bgp-10
What needs to be added: Once the I2RS WG specifies what traffic
engineering flags to watch on the BGP routes at AFI local-rib level
or the BGP-peer routes (AdjRibIn, AdjRibOut), then the
[I-D.wang-i2rs-bgp-dm] can be augmented.
If the I2RS WG specifies configurations for traffic engineering at
the AFI or BGP-peer level, these ephemeral status will either need to
be added to draft-want-i2rs-bgp-dm-00 status or the peer.
5.4. BGP-REQ 04
BGP-REQ04 requirement is: "I2RS Agents SHOULD support identification
of routers as BGP ASBRs, PE routers, and IBGP routers."
[I-D.zhdankin-netmod-bgp-cfg]: No status provides a summation of the
BGP roles a BGP routing instance. The BGP-neighbor structure does
not provide a role structure.
[I-D.wang-i2rs-bgp-dm]:
Hares Expires April 30, 2015 [Page 14]
Internet-Draft IM for policy October 2014
module: bgp-protocol
+--rw bgp-protocol
+--rw router-id? inet:ip-address
+--rw as-number? uint32
+ . . .
+--ro bgp-role? enumeration
+--rw af instance
| +--rw bgp-local-rib
| . . .
| +--rw bgp-peer-list* [bgp-peer-name]
| | +--rw bgp peer-session
| | +--rw bgp-peer-name
| | +--bgp-peer-type? enumeration
Figure bgp-11
The enumeration for bgp-role is asbr, pe, ibgp,rr where the role is a
bit mask indicating that one or more peer has this role on the
protocol instance.
The enumeration for bgp-peer-type is asbr, ibgp, rr, rr-client, pe,
ce, bgp-vendor-types;
Conclusion: [I-D.wang-i2rs-bgp-dm] supports BGP-REQ 04
5.5. BGP-REQ 05
BGP-REQ05 is: I2RS client-agent SHOULD support writing traffic flow
specifications to I2RS Agents that will install them in associated
BGP ASBRs and the PE routers.
Status: BGP-REQ05 is the ability to read the roles within a bgp
protocol instances at protocol level and at peer level, and to write
routes with traffic flow specifications to AFI database and
(optionally) bgp-peer AdjRibOut.
BGP-REQ 4 showed that the [I-D.wang-i2rs-bgp-dm] supports the
identification of BGP ASBR and PE routers at a peer level. It also
has a quick summary of the roles of BGP routers at the protocol
level. [I-D.wang-i2rs-bgp-dm] specifies a a route-type variable
within each route in the AFI local-rib or the BGP Peers routes
(AdjRibIn, AdjRibOut), and this route-type includes a enumeration
variable for flows.
[I-D.wang-i2rs-bgp-dm]
Hares Expires April 30, 2015 [Page 15]
Internet-Draft IM for policy October 2014
module: bgp protocol
+--bgp-protocol
+ . . .
+rw bgp-ipv4-uni-instance (af-instance)
+--rw bgp-instance-name
| . . .
+--rw afi
+--rw safi
+--rw bgp-local-rib
| +--rw bgp-route-list* [ipv4-route ipv4-prefix-length]
| | +--rw ipv4-route inet:ipv4-prefix
| | +--rw ipv4-prefix-length uint8
| | +--rw route-type? enumeration
Figure bgp-12
Conclusion: [I-D.wang-i2rs-bgp-dm] supports BGP-REQ-05.
5.6. BGP-REQ 06
BGP-REQ06 requirement is: "I2RS Client SHOULD be able to track flow
specifications installed within a IBGP Cloud within an AS via reads
of BGP Flow Specification information in I2RS Agent, or via
notifications from I2RS agent."
Status: As section 3.5.5 on BGP-REQ04 shows [I-D.wang-i2rs-bgp-dm]
supports the tracking of flow-specification routes associated with
the local-rib for a AFI or a BGP Peer.
[I-D.wang-i2rs-bgp-dm]:
Hares Expires April 30, 2015 [Page 16]
Internet-Draft IM for policy October 2014
module: bgp protocol
+--bgp-protocol
+ . . .
+rw bgp-ipv4-uni-instance (af-instance)
+--rw bgp-instance-name
| . . .
| +--rw bgp-local-rib
| | +--rw bgp-rib-in-list* (ipv4 route ipv4-prefix-length
| | | +--rw ipv4-route inet:ipv4-prefix
| | | +--rw ipv4-prefix-length uint8
| | | +--rw route-type? enumeration
| | . . .
| +--rw bgp-peer-list* (bgp-peer-name)
| | +--rw bgp-peer-session addres
| | +--rw bgp-peer-name
| | +--rw bgp-peer-type
| | +--rw bgp-rib-in
| | | +--rw bgp-rib-in-list* (ipv4 route ipv4-prefix-length
| | | | +--rw ipv4-route inet:ipv4-prefix
| | | | +--rw ipv4-prefix-length uint8
| | | | +--rw route-type? enumeration
Figure bgp-13
5.7. BGP-REQ 07
BGP-REQ07 requirement is: I2RS client-agent exchange SHOULD support
the I2RS client being able to prioritize and control BGP's
announcement of flow specifications after status information reading
BGP ASBR and PE router's capacity. BGP ASBRs and PE routers
functions within a router MAY forward traffic flow specifications
received from EBGP speakers to I2RS agents, so the I2RS Agent SHOULD
be able to send these flow specifications from EBGP sources to a
client in response to a read or notification.
Discussion: The I2RS WG needs to provide additional input on what
status information is key to track for the BGP ASBR and PE router's
capacity.
Status:
[I-D.zhdankin-netmod-bgp-cfg] has prefix-lists which can allow or
deny prefixes based on the NLRI family. This feature allows the
control of routes via the flow specification NLRI. However peer
status does not provide an easy way to detect BGP ASBR or PE status,
or the number of routes.
Hares Expires April 30, 2015 [Page 17]
Internet-Draft IM for policy October 2014
[I-D.wang-i2rs-bgp-dm] has the ability to specify flexible policy via
policy-sets for inbound and outbound policy that can filter based on
prefix or any match sequence within the route and peer. This draft
also provides a data model that tracks track which peers are ASBR and
PEs at the peer level via bgp-peer-type and at the protocol level via
bgp-role (as described above). This draft also specifies
administrative distance on route structures in the per AFI bgp-local-
rib or in the peers routes per AFI.
module: bgp protocol
+--bgp-protocol
+ . . .
+rw bgp-ipv4-uni-instance (af-instance)
+--rw bgp-instance-name
| . . .
| +--rw bgp-local-rib
| | +--rw bgp-rib-in-list* (ipv4 route ipv4-prefix-length
| | | +--rw ipv4-route inet:ipv4-prefix
| | | +--rw ipv4-prefix-length uint8
| | | +--rw route-type? enumeration
| | | +--rw route-admin-distance uint32
| | | +--rw route-rpki-origin-validity
| | | | +--rw rt-rpki-origin-valid Boolean
| | | | +--rw rt-rpki-ref rpki-validity-ref
figure bgp-14
5.8. BGP-REQ 08
BGP-REQ08 requirement is: "I2RS Client SHOULD be able to read BGP
route filter information from I2RS Agents associated with legacy BGP
routers, and write filter information via the I2RS agent to be
installed in BGP RR. The I2RS Agent SHOULD be able to install these
routes in the BGP RR, and engage a BGP protocol action to push these
routers to ASBR and PE routers."
Discussion: The router filter information is determined to be the
prefix-filters or policy-filters associated with BGP routes found in
the AFI based bgp-local-rib or peer's structures (AdjRibIn,
AdjRibout).
Status:
[I-D.zhdankin-netmod-bgp-cfg] has prefix-lists which can allow or
deny prefixes based on the NLRI. This yang model does not provide an
easy way to detect peers as taking on the BGP RR, ABSR, and PE. (See
section 3.3 and yang model for the prefix-list descriptions).
Hares Expires April 30, 2015 [Page 18]
Internet-Draft IM for policy October 2014
[I-D.wang-i2rs-bgp-dm] has the ability to specify flexible policy via
policy-groups or policy sets for inbound and outbound policy that can
filter based on prefix or any match sequence within the route and
peer. This draft also provides a data model that tracks track which
peers are ASBR, PEs, and RR at the peer level via bgp-peer-type and
at the protocol level via bgp-role. (Please see draft-ietf-i2rs-
hares-bnp-info-model and draft-itef-hares-i2rs-bnp-dm for full
description).
5.9. BGP-REQ 09
BGP-REQ09: I2RS client(s) SHOULD be able to request the I2RS agent to
read BGP routes with all BGP parameters that influence BGP best path
decision, and write appropriate changes to the BGP Routes to BGP and
to the RIB-Info in order to manipulate BGP routes.
Discussion: Best-path is considered when policy evaluation is the
same. The best path could be considered based on origin-as, as-path,
router-id, cost-community. igp-metric, med-confed, missing-as-med,
rpki-origin validity. This requirement needs to be refined to
specify an initial set of BGP parameters that influence BGP best path
decisions.
Status:
[I-D.zhdankin-netmod-bgp-cfg] configures the parameters that
influence BGP bestpath decisions. However, this draft does not
provide these parameters within each bgp-route.
[I-D.wang-i2rs-bgp-dm] provides the per route status on origin-as,
as-path, router-id, cost-community, igp-metric, MED, and rpki-origin
validity. This route status is on the AFI level local-rib and the
per peer routes (AdjRibIn, AdjRibOut).
Hares Expires April 30, 2015 [Page 19]
Internet-Draft IM for policy October 2014
module: bgp protocol
+--bgp-protocol
+ . . .
+rw bgp-ipv4-uni-instance (af-instance)
+--rw bgp-instance-name
| . . .
| +--rw bgp-local-rib
| | +--rw bgp-rib-in-list* (ipv4 route ipv4-prefix-length
| | | +--rw ipv4-route inet:ipv4-prefix
| | | +--rw ipv4-prefix-length uint8
| | | +--rw route-type? enumeration
| | | +--rw route-admin-distance uint32
| | | +--rw route-rpki-origin-validity
| | | | +--rw rt-rpki-origin-valid Boolean
| | | | +--rw rt-rpki-ref rpki-validity-ref
figure bgp-15
5.10. BGP-REQ 10
BGP-REQ10 requirement is: I2RS client SHOULD be able instruct the
I2RS agent(s) to notify the I2RS client when the BGP processes on an
associated routing system observe a route change to a specific set of
IP Prefixes and associated prefixes. Route changes include: 1)
prefixes being announced or withdrawn, 2) prefixes being suppressed
due to flap damping, or 3) prefixes using an alternate best-path for
a given IP Prefix. The I2RS agent should be able to notify the
client via publish or subscribe mechanism.
Discussion: RFC5277 indicates that a netconf-filter looks for
specific data value and data item. Therefore, the I2RS client must
specify the whether the data is in the AFI based local-rib or the BGP
(AdjRibIn, AdjRibOut) and the specific values. The specific values
indicated by BGP-REQ-10 are prefixes with: announce flags, withdrawn
flags, flap-dampened suppression flags, on-best-path-external or
rejected due to best-path external. This comparison assumes the
RFC5277 paths can be made to work for the ephemeral storage.
Sorting of these filters into critical or normal status requests is
not considered in this comparison as adding this upon a non-existent
definition of ephemeral services seems futile.
[I-D.zhdankin-netmod-bgp-cfg] configures the parameters that
influence BGP bestpath decisions or flap damping. However, this
draft does not provide these parameters within each bgp-route.
[I-D.wang-i2rs-bgp-dm]:
Hares Expires April 30, 2015 [Page 20]
Internet-Draft IM for policy October 2014
+--rw ipv4-route inet:ipv4-prefix
+--rw ipv4-prefix-length uint8
+--rw bgp-route-type? enumeration
+--rw bgp-attribute-list
...
+--ro bgp-rt-state-in
+--ro rib-current-state? rib-state-def
+--ro rib-last-state? rib-state-def
+--ro rib-rejected-reason? enumeration
+--ro not-preferred-reason? enumeration
. . .
typedef rib-state-def {
type enumeration {
enum "active";
enum "in-active";
enum "primary";
enum "backup";
enum "suppressed (flap dampened)"
enum "suppressed non-flap dampen"
enum "active on alternate best path"
}
Leaf not-preferred-reason {
Type enumeration {
enum "peer-address";
enum "router-id";
enum "cluster-list-length";
enum "igp-metric";
enum "peer-type";
enum "origin";
enum "weight-or-preferred-value";
enum "local-preference";
enum "route-type";
enum "as-path-length";
enum "med";
enum "flap-dampened route"; [new]
enum "not-this-path-prefix-uses-alternate-best-path"; [new]
enum "overlapping-route-marked-to-remove"; [new] (BGP-REQ17)
}
Figure bgp 16
Conclusion: [I-D.wang-i2rs-bgp-dm] status is needed for this BGP-
REQ10.
Hares Expires April 30, 2015 [Page 21]
Internet-Draft IM for policy October 2014
5.11. BGP-REQ 11
BGP-REQ11 requirement is the "I2RS client SHOULD be able to read BGP
route information from BGP routers on routes in received but rejected
from ADJ-RIB-IN due to policy, on routes installed in ADJ-RIB-IN, but
not selected as best path, and on route not sent to IBGP peers (due
to non-selection)."
Discussion: As discussed in BGP-REQ10, RFC5277 indicates that a
netconf-filter looks for specific data value and data item.
Therefore, the I2RS client must specify the whether the data is in
the AFI based local-rib, or the BGP (AdjRibIn, AdjRibOut) and the
specific values
Status:
[I-D.zhdankin-netmod-bgp-cfg] configures policy that indicates what
routes are filtered, but it does not provide the status parameter on
each BGP route.
[I-D.wang-i2rs-bgp-dm]: Shows that the status can be tracked in the
AFI based bgp local-rib and the per AFI per peer AdjRibIn and AdjRib
out.
Conclusion: [I-D.wang-i2rs-bgp-dm] status is needed for BGP-REQ10.
5.12. BGP-REQ 12
BGP-REQ12 requirement is: the "I2RS client SHOULD be able to request
the I2RS agent to read installed BGP Policies."
Discussion: BGP policies can be inbound filters, ACLs, or route maps.
Three yang drafts take different approaches to the filters: draft-
bogdanovic-netmod-acl-model-02, [I-D.zhdankin-netmod-bgp-cfg], and
draft-hares-2rs-bnp-dm-01.
The draft-bogdanovic-netmod-acl-model-02 takes the approach of
extending the firewall ACLs, and suggests that proprietary methods be
used to extend this to the ranges needed for BGP policy. The index
to the ACLS is the rule-name. For a single prefix accept/deny the
generic ACL policy may be sufficient. Prefix ranges or the ability
to set custom cost communities or other extended communities must use
a proprietary vendor's model.
The [I-D.zhdankin-netmod-bgp-cfg] (10/1/2014) suggests prefix-list
matches that should provide prefix matches an index of route ID
number (uint16). The prefix matches can be either ip-address,
prefix, host address, or prefix-range. The only actions taken are
Hares Expires April 30, 2015 [Page 22]
Internet-Draft IM for policy October 2014
accept or deny the prefix. The usage statistics contains only the
"hit count" for the usage of the prefix mask.
The [I-D.wang-i2rs-bgp-dm] (10/23/2014) provides a policy link to the
Basic Network Policy (draft-hares-i2rs-bnp-info-model/draft-hares-
i2rs-bnp-dm-01) which provides ordered list of policy rules that can
provide sequences of match, actions (accept/deny, set variable, and
modify). A group of these policy rules is called a policy group
which can be named.
This model uses the policy definitions concept is also found in the
Policy Core Information Model (PCIM) (RFC3060) and the Quality of
Service QoS) Policy Information Model (QPIM)(RFC3644) and policy
based routing. ACL-based policy (draft-bogdanovic-netmod-acl-model-
02), and prefix-list policy (accept/deny) can be one of the policy
rule extensions. The [I-D.zhdankin-netmod-bgp-cfg] can provide a
second policy rule extension.
The section below provides the specific modeling parameters for each
draft.
draft-bogdanovic-netmod-acl-model-02
+--rw access-list-entry* [rule-name]
+--rw rule-name string
+--rw matches
| +--rw (ace-type)?
| | +--:(ace-ip)
| | | +--rw source-port-range
| | | | +--rw lower-port inet:port-number
| | | | +--rw upper-port? inet:port-number
| | +--rw destination-port-range
| | | | +--rw lower-port inet:port-number
| | | | +--rw upper-port? inet:port-number
| | | +--rw dscp? inet:dscp
| | | +--rw ip-protocol? uint8
| | | +--rw (ace-ip-version)?
| | | +--:(ace-ipv4)
| | | | +--rw destination-ipv4-address?
inet:ipv4-prefix
| | | | +--rw source-ipv4-address?
inet:ipv4-prefix
| | | +--:(ace-ipv6)
| | | +--rw destination-ipv6-address?
inet:ipv6-prefix
| | | +--rw source-ipv6-address?
inet:ipv6-prefix
| | | +--rw flow-label? inet:ipv6-flow-label
Hares Expires April 30, 2015 [Page 23]
Internet-Draft IM for policy October 2014
| | +--:(ace-eth)
| | +--rw destination-mac-address?
yang:mac-address
| | +--rw destination-mac-address-mask?
yang:mac-address
| | +--rw source-mac-address?
yang:mac-address
| | +--rw source-mac-address-mask?
yang:mac-address
| +--rw input-interface? string
| +--rw absolute
| +--rw start? yang:date-and-time
| +--rw end? yang:date-and-time
| +--rw active? boolean
| +--rw actions
| +--rw (packet-handling)?
| +--:(deny)
| | +--rw deny? empty
| +--:(permit)
| +--rw permit? empty
+--ro ace-oper-data
+--ro match-counter? ietf:counter64
Figure bgp-17
[I-D.zhdankin-netmod-bgp-cfg] (10/1/2014)
+--rw prefix-lists
+--rw prefix-list [prefix-list-name]
+--rw prefix-list-name string
+--rw prefixes
+--rw prefix [seq-nr]
+--rw seq-nr uint16
+--rw prefix-filter
+--rw (ip-address-group)?
| (cases
+--rw action actions-enum
+--rw statistics
..
Figure bgp-18
[I-D.wang-i2rs-bgp-dm]
Hares Expires April 30, 2015 [Page 24]
Internet-Draft IM for policy October 2014
module: bgp_protocol
+--rw bgp-protocol
+ af config
+--rw bgp-policy-in policy-group-ref
+--rw bgp-policy-out policy-group-ref
Figure bgp-19
draft-bnp-i2rs-bnp-dm-00
(To be Completed after bnp drafts)
Figure bgp-20
5.13. BGP-REQ 13
BGP-REQ13 requirement is: the "I2RS client SHOULD be able to instruct
the I2RS Agent to write BGP Policies into the running BGP protocols
and into the BGP configurations."
Discussion: BGP-REQ 13 indicates that the policy changes supported by
BGP-REQ 12 must be able to operate in the running configuration. The
I2RS and netmod groups are discussing the definition of ephemeral.
Two definitions are being discussed - patch and pull-up configuration
as described below:
running = config + ephemeral patches [patch]
running = config (copy) + ephemeral additions (pull-up)
Either definition implies that the I2RS changes can alter the policy
based on the bgp configuration and I2rs model.
The writing of changes from I2RS to the configuration was
specifically ignored. Writing of specific configuration options from
the ephemeral store to the running configuration can initially be
done by the I2RS client writing via the configuration interface to
the datastore.
Data models needed: The Policy data models for filter or filter and
action are the same as in BGP-REQ13.
5.14. BGP-REQ 14
BGP-REQ14 requirement is: the "I2RS client-agent SHOULD be able to
read BGP statistics associated with Peer, and to receive
notifications when certain statistics have exceeded limits. An
example of one of these protocol statistics is the max-prefix limit."
Hares Expires April 30, 2015 [Page 25]
Internet-Draft IM for policy October 2014
Discussion: BGP-REQ01 examines the peer connectivity state. BGP-
REQ14 examines BGP peer statistics. [I-D.zhdankin-netmod-bgp-cfg]
provides statistics on the number of updates received or sent, but it
does not have statistics on the max-prefix exceeded. It does provide
a limit for maximum-prefix per peer.
[I-D.wang-i2rs-bgp-dm] has statistics on the number of updates
received or sent, number of routes received or sent plus maximum
prefix high-water and low-water. This draft also has the limits
copied into the status fields for easy reading.
[I-D.zhdankin-netmod-bgp-cfg] (10/1/2014)
module: bgp
+ ....
+--rw bgp-neighbors
| +--rw bgp-neighbor [as-number]
| +--rw as-number uint32
| +--rw (peer-address-type)?
| | .....
| +--rw prefix-list? prefix-list-ref
| +--rw default-action? actions-enum
| +--rw af-specific-config
| +--ro bgp-neighbor-state
| | +--ro bgp-peer-admin-status;
| +--ro bgp-neighbor-statistics
| | +--ro nr-in-updates
| | +--rw nr-out-updates
[I-D.wang-i2rs-bgp-dm]
Hares Expires April 30, 2015 [Page 26]
Internet-Draft IM for policy October 2014
| +--rw bgp-peer-list* [bgp-peer-name]
| +--rw peer-session-address
| | +--rw local-ipv4-address? inet:ipv4-prefix
| | +--rw remote-ipv4-address? inet:ipv4-prefix
| +--rw bgp-peer-name string
| +--ro bgp-peer-type? enumeration
| +--ro bgp-peer-create? enumeration
| +--rw bgp-policy-in policy-group-ref
| +--rw bgp-policy-out policy-group-ref
| +--rw peer-state-info
| | +--ro peer-current-state? peer-stat
| | +--ro peer-last-state? peer-state
| | +--ro peer-down-reason
| | | +--ro error-code? enumeration
| | | +--ro sub-error-code
| | | | ...
| | +--ro peer-transmit-update-cnt? uint64
| | +--ro peer-recived-update-cnt uint64
| | +--ro peer-received-route-cnt? uint64
| | +--ro peer-send-route-cnt? uint64
| | +--rw max-prefix-rcv-limit? uint64
| | +--rw max-prefix-xmt-limit? uint64
| | +--ro peer-prefix-high? uint64
| | +--ro peer-prefix-low? uint64
Conclusion: Full support of BGP-REQ 14 requires the
[I-D.wang-i2rs-bgp-dm] draft.
5.15. BGP-REQ 15
BGP-REQ15 requirement is: the "I2RS client via the I2RS agent MUST
have the ability to read the loc-RIB-In BGP table that gets all the
routes that the CE has provided to a PE router."
Discussion: The [I-D.zhdankin-netmod-bgp-cfg] provides no indication
of a local-rib or a local-RIB-in associated with a BGP peer. The
[I-D.wang-i2rs-bgp-dm] provides a local-rib per AFI, and a local-RIB-
IN (AdjRIBIn and AdjRIBOut) associated with each peer. The route
table format is presented in figure bgp-9.
Conclusion: [I-D.wang-i2rs-bgp-dm] is necessary for this requirement.
5.16. BGP-REQ 16
BGP-REQ16 requirement is: the "I2RS client via the I2RS agent MUST
have the ability to install destination based routes in the local RIB
of the PE devices. This must include the ability to supply the
destination prefix (NLRI), a table identifier, a route preference, a
Hares Expires April 30, 2015 [Page 27]
Internet-Draft IM for policy October 2014
route metric, a next-hop tunnel through which traffic would be
carried."
Discussion: If this refers to the I2RS LOC-RIB, then both drafts have
policy which could redistribute I2RS routes.
If BGP-REQ 16 refers to a BGP local-rib per AFI and the bgp-peer
based bgp-rib-in (AdjRibIn) and bgp-rib-out (AdjRibOut). As this
previous discussion indicates, the [I-D.zhdankin-netmod-bgp-cfg] does
not have a local rib-in.
The document [I-D.wang-i2rs-bgp-dm] describes a per AFI bgp local-rib
and the per peer bgp-rib-in (AdjRIBIn) and bgp-rib-out (AdjRibOut).
The routes in these RIBs fall under a table identifier structure and
have a destination prefix (NLRI), route administrative preference,
route local-reference, and a next-hop. However,
[I-D.wang-i2rs-bgp-dm] does not have a tunnel based definition for
the next-hop. This would need to be added.
Conclusion: Additions to [I-D.wang-i2rs-bgp-dm] may need to be made
to fulfill this requirement.
5.17. BGP-REQ 17
BGP-REQ17 requirement is: the "I2RS client via the I2RS agent SHOULD
have the ability to read the loc-RIB-in BGP table to discover
overlapping routes, and determine which may be safely marked for
removal."
Discussion: As discussed in BGP-REQ15 and BGP-REQ16, draft
[I-D.zhdankin-netmod-bgp-cfg] does not have a local-RIB-In BGP table.
[I-D.wang-i2rs-bgp-dm] has a BGP local-rib per AFI and a per BGP Peer
bgp-rib-in. As described in BGP REQ10, this each route may set a
"remove overlapping route" status flag.
Conclusion: [I-D.wang-i2rs-bgp-dm] supports BGP-REQ 17.
5.18. BGP-REQ 18
BGP-REQ18 requirement is the "I2RS client via the I2RS Agent SHOULD
have the ability to modify filtering rules and initiate a re-
computation of the local BGP table through those policies to cause
specific routes to be marked for removal at the outbound eBGP edge."
Discussion: This feature requires that I2RS should be able to do a
re-computation of policies. This re-computation of policies is part
of a soft-reconfig which [I-D.zhdankin-netmod-bgp-cfg] allows by
Hares Expires April 30, 2015 [Page 28]
Internet-Draft IM for policy October 2014
configuration. However, the I2RS client will need a parameter to be
set to do a reconfigure.
Neither [I-D.zhdankin-netmod-bgp-cfg] or [I-D.wang-i2rs-bgp-dm] have
this feature.
Conclusion: This feature needs to be added to final model
6. IANA Considerations
This draft includes no request to IANA.
7. Security Considerations
TBD
8. Informative References
[I-D.bogdanovic-netmod-acl-model]
Bogdanovic, D., Sreenivasa, K., Huang, L., and D. Blair,
"Network Access Control List (ACL) YANG Data Model",
draft-bogdanovic-netmod-acl-model-02 (work in progress),
October 2014.
[I-D.hares-i2rs-bgp-dm]
Wang, L., Hares, S., and S. Zhuang, "An I2RS BGP Data
Modell", draft-hares-i2rs-bgp-dm-00 (work in progress),
October 2014.
[I-D.hares-i2rs-info-model-service-topo]
Hares, S., Wu, W., and X. Guan, "An Information model for
service topology", draft-hares-i2rs-info-model-service-
topo-01 (work in progress), July 2014.
[I-D.hares-i2rs-usecase-reqs-summary]
Hares, S., "Summary of I2RS Use Case Requirements", draft-
hares-i2rs-usecase-reqs-summary-00 (work in progress),
July 2014.
[I-D.ietf-i2rs-architecture]
Atlas, A., Halpern, J., Hares, S., Ward, D., and T.
Nadeau, "An Architecture for the Interface to the Routing
System", draft-ietf-i2rs-architecture-05 (work in
progress), July 2014.
Hares Expires April 30, 2015 [Page 29]
Internet-Draft IM for policy October 2014
[I-D.ietf-i2rs-rib-info-model]
Bahadur, N., Folkes, R., Kini, S., and J. Medved, "Routing
Information Base Info Model", draft-ietf-i2rs-rib-info-
model-03 (work in progress), May 2014.
[I-D.wang-i2rs-bgp-dm]
Wang, L., Hares, S., and S. Zhuang, "An I2RS BGP Data
Modell", draft-wang-i2rs-bgp-dm-00 (work in progress),
October 2014.
[I-D.zhdankin-netmod-bgp-cfg]
Alex, A., Patel, K., and A. Clemm, "Yang Data Model for
BGP Protocol", draft-zhdankin-netmod-bgp-cfg-01 (work in
progress), October 2014.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, March 1997.
[RFC3060] Moore, B., Ellesson, E., Strassner, J., and A. Westerinen,
"Policy Core Information Model -- Version 1
Specification", RFC 3060, February 2001.
[RFC3460] Moore, B., "Policy Core Information Model (PCIM)
Extensions", RFC 3460, January 2003.
[RFC3644] Snir, Y., Ramberg, Y., Strassner, J., Cohen, R., and B.
Moore, "Policy Quality of Service (QoS) Information
Model", RFC 3644, November 2003.
[RFC5511] Farrel, A., "Routing Backus-Naur Form (RBNF): A Syntax
Used to Form Encoding Rules in Various Routing Protocol
Specifications", RFC 5511, April 2009.
Author's Address
Susan Hares
Huawei
7453 Hickory Hill
Saline, MI 48176
USA
Email: shares@ndzh.com
Hares Expires April 30, 2015 [Page 30]