draft-ietf-idr-rfc5575bis-21.txt   draft-ietf-idr-rfc5575bis-22.txt 
IDR Working Group C. Loibl IDR Working Group C. Loibl
Internet-Draft next layer Telekom GmbH Internet-Draft next layer Telekom GmbH
Obsoletes: 5575,7674 (if approved) S. Hares Obsoletes: 5575,7674 (if approved) S. Hares
Intended status: Standards Track Huawei Intended status: Standards Track Huawei
Expires: October 18, 2020 R. Raszuk Expires: October 19, 2020 R. Raszuk
Bloomberg LP Bloomberg LP
D. McPherson D. McPherson
Verisign Verisign
M. Bacher M. Bacher
T-Mobile Austria T-Mobile Austria
April 16, 2020 April 17, 2020
Dissemination of Flow Specification Rules Dissemination of Flow Specification Rules
draft-ietf-idr-rfc5575bis-21 draft-ietf-idr-rfc5575bis-22
Abstract Abstract
This document defines a Border Gateway Protocol Network Layer This document defines a Border Gateway Protocol Network Layer
Reachability Information (BGP NLRI) encoding format that can be used Reachability Information (BGP NLRI) encoding format that can be used
to distribute traffic Flow Specifications. This allows the routing to distribute traffic Flow Specifications. This allows the routing
system to propagate information regarding more specific components of system to propagate information regarding more specific components of
the traffic aggregate defined by an IP destination prefix. the traffic aggregate defined by an IP destination prefix.
It also specifies BGP Extended Community encoding formats, that can It also specifies BGP Extended Community encoding formats, that can
skipping to change at page 2, line 20 skipping to change at page 2, line 20
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at https://datatracker.ietf.org/drafts/current/. Drafts is at https://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on October 18, 2020. This Internet-Draft will expire on October 19, 2020.
Copyright Notice Copyright Notice
Copyright (c) 2020 IETF Trust and the persons identified as the Copyright (c) 2020 IETF Trust and the persons identified as the
document authors. All rights reserved. document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents Provisions Relating to IETF Documents
(https://trustee.ietf.org/license-info) in effect on the date of (https://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents publication of this document. Please review these documents
skipping to change at page 17, line 49 skipping to change at page 17, line 49
string using the memcmp() function as defined by [ISO_IEC_9899]. For string using the memcmp() function as defined by [ISO_IEC_9899]. For
strings with equal lengths the lowest string (memcmp) has higher strings with equal lengths the lowest string (memcmp) has higher
precedence. For strings of different lengths, the common prefix is precedence. For strings of different lengths, the common prefix is
compared. If the common prefix is not equal the string with the compared. If the common prefix is not equal the string with the
lowest prefix has higher precedence. If the common prefix is equal, lowest prefix has higher precedence. If the common prefix is equal,
the longest string is considered to have higher precedence than the the longest string is considered to have higher precedence than the
shorter one. shorter one.
The code in Appendix A shows a Python3 implementation of the The code in Appendix A shows a Python3 implementation of the
comparison algorithm. The full code was tested with Python 3.6.3 and comparison algorithm. The full code was tested with Python 3.6.3 and
can be obtained at https://github.com/stoffi92/flowspec-cmp [1]. can be obtained at
https://github.com/stoffi92/rfc5575bis/tree/master/flowspec-cmp [1].
6. Validation Procedure 6. Validation Procedure
Flow Specifications received from a BGP peer that are accepted in the Flow Specifications received from a BGP peer that are accepted in the
respective Adj-RIB-In are used as input to the route selection respective Adj-RIB-In are used as input to the route selection
process. Although the forwarding attributes of two routes for the process. Although the forwarding attributes of two routes for the
same Flow Specification prefix may be the same, BGP is still required same Flow Specification prefix may be the same, BGP is still required
to perform its path selection algorithm in order to select the to perform its path selection algorithm in order to select the
correct set of attributes to advertise. correct set of attributes to advertise.
skipping to change at page 19, line 40 skipping to change at page 19, line 40
The neighboring AS is the immediate destination of the traffic The neighboring AS is the immediate destination of the traffic
described by the Flow Specification. If it requests these flows to described by the Flow Specification. If it requests these flows to
be dropped, that request can be honored without concern that it be dropped, that request can be honored without concern that it
represents a denial of service in itself. Supposedly, the traffic is represents a denial of service in itself. Supposedly, the traffic is
being dropped by the downstream autonomous system, and there is no being dropped by the downstream autonomous system, and there is no
added value in carrying the traffic to it. added value in carrying the traffic to it.
7. Traffic Filtering Actions 7. Traffic Filtering Actions
This document defines a minimum set of Traffic Filtering Actions that This document defines a minimum set of Traffic Filtering Actions that
it standardizes as BGP extended community values [RFC7153]. This is it standardizes as BGP extended communities [RFC4360]. This is not
not meant to be an inclusive list of all the possible actions, but meant to be an inclusive list of all the possible actions, but only a
only a subset that can be interpreted consistently across the subset that can be interpreted consistently across the network.
network. Additional actions can be defined as either requiring Additional actions can be defined as either requiring standards or as
standards or as vendor specific. vendor specific.
The default action for a matching Flow Specification is to accept the The default action for a matching Flow Specification is to accept the
packet (treat the packet according to the normal forwarding behaviour packet (treat the packet according to the normal forwarding behaviour
of the system). of the system).
This document defines the following extended communities values shown This document defines the following extended communities values shown
in Table 2 in the form 0xttss where tt indicates the type and ss in Table 2 in the form 0xttss where tt indicates the type and ss
indicates the sub-type of the extended community. Encodings for indicates the sub-type of the extended community. Encodings for
these extended communities are described below. these extended communities are described below.
skipping to change at page 34, line 11 skipping to change at page 34, line 11
[RFC7674] Haas, J., Ed., "Clarification of the Flowspec Redirect [RFC7674] Haas, J., Ed., "Clarification of the Flowspec Redirect
Extended Community", RFC 7674, DOI 10.17487/RFC7674, Extended Community", RFC 7674, DOI 10.17487/RFC7674,
October 2015, <https://www.rfc-editor.org/info/rfc7674>. October 2015, <https://www.rfc-editor.org/info/rfc7674>.
[RFC8205] Lepinski, M., Ed. and K. Sriram, Ed., "BGPsec Protocol [RFC8205] Lepinski, M., Ed. and K. Sriram, Ed., "BGPsec Protocol
Specification", RFC 8205, DOI 10.17487/RFC8205, September Specification", RFC 8205, DOI 10.17487/RFC8205, September
2017, <https://www.rfc-editor.org/info/rfc8205>. 2017, <https://www.rfc-editor.org/info/rfc8205>.
15.3. URIs 15.3. URIs
[1] https://github.com/stoffi92/flowspec-cmp [1] https://github.com/stoffi92/rfc5575bis/tree/master/flowspec-cmp
Appendix A. Python code: flow_rule_cmp Appendix A. Python code: flow_rule_cmp
<CODE BEGINS> <CODE BEGINS>
""" """
Copyright (c) 2020 IETF Trust and the persons identified as authors of Copyright (c) 2020 IETF Trust and the persons identified as authors of
the code. All rights reserved. the code. All rights reserved.
Redistribution and use in source and binary forms, with or without Redistribution and use in source and binary forms, with or without
modification, is permitted pursuant to, and subject to the license modification, is permitted pursuant to, and subject to the license
 End of changes. 7 change blocks. 
11 lines changed or deleted 12 lines changed or added

This html diff was produced by rfcdiff 1.47. The latest version is available from http://tools.ietf.org/tools/rfcdiff/