draft-ietf-babel-source-specific-06.txt   draft-ietf-babel-source-specific-07.txt 
Network Working Group M. Boutier Network Working Group M. Boutier
Internet-Draft J. Chroboczek Internet-Draft J. Chroboczek
Intended status: Standards Track IRIF, University of Paris-Diderot Intended status: Standards Track IRIF, University of Paris-Diderot
Expires: April 13, 2021 October 10, 2020 Expires: May 1, 2021 October 28, 2020
Source-Specific Routing in Babel Source-Specific Routing in Babel
draft-ietf-babel-source-specific-06 draft-ietf-babel-source-specific-07
Abstract Abstract
Source-specific routing (also known as Source-Address Dependent Source-specific routing (also known as Source-Address Dependent
Routing, SADR) is an extension to traditional next-hop routing where Routing, SADR) is an extension to traditional next-hop routing where
packets are forwarded according to both their destination and their packets are forwarded according to both their destination and their
source address. This document describes an extension for source- source address. This document describes an extension for source-
specific routing to the Babel routing protocol. specific routing to the Babel routing protocol.
Status of This Memo Status of This Memo
skipping to change at page 1, line 34 skipping to change at page 1, line 34
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 April 13, 2021. This Internet-Draft will expire on May 1, 2021.
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 5, line 45 skipping to change at page 5, line 45
routes. routes.
5. Protocol Operation 5. Protocol Operation
This extension does not fundamentally change the operation of the This extension does not fundamentally change the operation of the
Babel protocol, and we therefore only describe differences between Babel protocol, and we therefore only describe differences between
the original protocol and the extended protocol. the original protocol and the extended protocol.
In the original protocol, three TLVs carry a destination prefix: In the original protocol, three TLVs carry a destination prefix:
Updates, Route Requests and Seqno Requests. This specification Updates, Route Requests and Seqno Requests. This specification
extends these messages to optionally carry a Source Prefix sub-TLV, extends these messages so that they may carry a Source Prefix sub-
as described in Section 7 below. The sub-TLV is marked as mandatory, TLV, as described in Section 7 below. The sub-TLV is marked as
so that an unextended implementation will silently ignore the whole mandatory, so that an unextended implementation will silently ignore
enclosing TLV. A node obeying this specification MUST NOT send a TLV the whole enclosing TLV. A node obeying this specification MUST NOT
with a zero-length source prefix: instead, it sends a TLV with no send a TLV with a zero-length source prefix: instead, it sends a TLV
Source Prefix sub-TLV. Conversely, an extended implementation MUST with no Source Prefix sub-TLV. Conversely, an extended
interpret an unextended TLV as carrying a source prefix of zero implementation MUST interpret an unextended TLV as carrying a source
length. Taken together, these properties ensure interoperability prefix of zero length. Taken together, these properties ensure
between the original and extended protocols (see Section 6 below). interoperability between the original and extended protocols (see
Section 6 below).
5.1. Protocol Messages 5.1. Protocol Messages
This extension allows three TLVs of the original Babel protocol to This extension allows three TLVs of the original Babel protocol to
carry a source prefix: Update TLVs, Route Request TLVs and Seqno carry a source prefix: Update TLVs, Route Request TLVs and Seqno
Request TLVs. Request TLVs.
In order to advertise a route with a non-zero length source prefix, a In order to advertise a route with a non-zero length source prefix, a
node sends a source-specific Update, i.e., an Update with a Source node sends a source-specific Update, i.e., an Update with a Source
Prefix sub-TLV. When a node receives a source-specific Update Prefix sub-TLV. When a node receives a source-specific Update
skipping to change at page 8, line 29 skipping to change at page 8, line 29
This extension defines a new sub-TLV used to carry a source prefix: This extension defines a new sub-TLV used to carry a source prefix:
the Source Prefix sub-TLV. It can be used within an Update, a Route the Source Prefix sub-TLV. It can be used within an Update, a Route
Request or a Seqno Request TLV to match a source-specific entry of Request or a Seqno Request TLV to match a source-specific entry of
the Route Table, in conjunction with the destination prefix natively the Route Table, in conjunction with the destination prefix natively
carried by these TLVs. carried by these TLVs.
Since a source-specific routing entry is characterized by a single Since a source-specific routing entry is characterized by a single
destination prefix and a single source prefix, a source-specific destination prefix and a single source prefix, a source-specific
message contains exactly one Source Prefix sub-TLV. A node MUST NOT message contains exactly one Source Prefix sub-TLV. A node MUST NOT
send more that one Source Prefix sub-TLV in a TLV, and a node send more than one Source Prefix sub-TLV in a TLV, and a node
receiving more than one Source Prefix sub-TLV in a single TLV SHOULD receiving more than one Source Prefix sub-TLV in a single TLV MUST
ignore this TLV. It MAY ignore the whole packet. ignore this TLV. It MAY ignore the whole packet.
7.1. Source Prefix sub-TLV 7.1. Source Prefix sub-TLV
0 1 2 3 0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type = 128 | Length | Source Plen | Source Prefix... | Type = 128 | Length | Source Plen | Source Prefix...
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+- +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-
skipping to change at page 10, line 41 skipping to change at page 10, line 41
10. Acknowledgments 10. Acknowledgments
The authors are grateful to Donald Eastlake and Joel Halpern for The authors are grateful to Donald Eastlake and Joel Halpern for
their help with this document. their help with this document.
11. References 11. References
11.1. Normative References 11.1. Normative References
[BABEL] Chroboczek, J., "The Babel Routing Protocol", Internet [BABEL] Chroboczek, J. and D. Schinazi, "The Babel Routing
Draft draft-ietf-babel-rfc6126bis-06, October 2018. Protocol", Internet Draft draft-ietf-babel-rfc6126bis-20,
September 2020.
[BCP84] Baker, F. and P. Savola, "Ingress Filtering for Multihomed [BCP84] Baker, F. and P. Savola, "Ingress Filtering for Multihomed
Networks", BCP 84, RFC 3704, March 2004. Networks", BCP 84, RFC 3704, March 2004.
[RFC2119] Bradner, S., "Key words for use in RFCs to Indicate [RFC2119] Bradner, S., "Key words for use in RFCs to Indicate
Requirement Levels", BCP 14, RFC 2119, Requirement Levels", BCP 14, RFC 2119,
DOI 10.17487/RFC2119, March 1997. DOI 10.17487/RFC2119, March 1997.
[RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC [RFC8174] Leiba, B., "Ambiguity of Uppercase vs Lowercase in RFC
2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174, 2119 Key Words", BCP 14, RFC 8174, DOI 10.17487/RFC8174,
 End of changes. 6 change blocks. 
16 lines changed or deleted 18 lines changed or added

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