OSPFv3-Based Layer 1 VPN Auto-Discovery
draft-ietf-l1vpn-ospfv3-auto-discovery-03
The information below is for an old version of the document that is already published as an RFC.
| Document | Type |
This is an older version of an Internet-Draft that was ultimately published as RFC 5523.
|
|
|---|---|---|---|
| Author | Lou Berger | ||
| Last updated | 2015-10-14 (Latest revision 2009-01-12) | ||
| RFC stream | Internet Engineering Task Force (IETF) | ||
| Intended RFC status | Experimental | ||
| Formats | |||
| Reviews | |||
| Additional resources | Mailing list discussion | ||
| Stream | WG state | (None) | |
| Document shepherd | (None) | ||
| IESG | IESG state | Became RFC 5523 (Experimental) | |
| Action Holders |
(None)
|
||
| Consensus boilerplate | Unknown | ||
| Telechat date | (None) | ||
| Responsible AD | David Ward | ||
| Send notices to | (None) |
draft-ietf-l1vpn-ospfv3-auto-discovery-03
Internet Draft Lou Berger (LabN Consulting, LLC)
Category: Experimental
Expiration Date: July 12, 2009
January 12, 2009
OSPFv3 Based Layer 1 VPN Auto-Discovery
draft-ietf-l1vpn-ospfv3-auto-discovery-03.txt
Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF), its areas, and its working groups. Note that
other groups may also distribute working documents as Internet-
Drafts.
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."
The list of current Internet-Drafts can be accessed at
http://www.ietf.org/1id-abstracts.html
The list of Internet-Draft Shadow Directories can be accessed at
http://www.ietf.org/shadow.html
This Internet-Draft will expire on July 12, 2009.
Copyright and License Notice
Copyright (c) 2009 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
carefully, as they describe your rights and restrictions with respect
to this document.
Abstract
This document defines an Open Shortest Path First (OSPF) version 3
based Layer-1 Virtual Private Network (L1VPN) auto-discovery
mechanism. This document parallels the existing OSPF version 2 L1VPN
auto-discovery mechanism. The notable functional difference is the
support of IPv6.
Berger Experimental [Page 1]
Internet-Draft draft-ietf-l1vpn-ospfv3-auto-discovery-03.txt January 12, 2009
Table of Contents
1 Introduction .............................................. 3
1.1 Terminology ............................................... 3
1.2 Overview .................................................. 4
2 OSPFv3 L1VPN LSA and its TLVs ............................. 5
2.1 OSPFv3 L1VPN LSA .......................................... 5
2.2 L1VPN IPv6 INFO TLV ....................................... 6
3 OSPFv3 L1VPN LSA Advertising and Processing ............... 8
4 Backward Compatibility .................................... 8
5 Manageability Considerations .............................. 9
5.1 Coexistence with and Migration from OSPFv2 ................ 9
6 Security Considerations ................................... 10
7 IANA Considerations ....................................... 10
8 Acknowledgment ............................................ 11
9 References ................................................ 11
9.1 Normative References ...................................... 11
9.2 Informative References .................................... 11
10 Authors' Addresses ........................................ 12
Berger Experimental [Page 2]
Internet-Draft draft-ietf-l1vpn-ospfv3-auto-discovery-03.txt January 12, 2009
Conventions used in this document
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in [RFC2119].
1. Introduction
1.1. Terminology
The reader of this document should be familiar with the terms used in
[RFC4847] and [RFC5251]. The reader of this document should also be
familiar with [RFC5340], [RFC5329], and [RFC5252]. In particular the
following terms:
L1VPN - Layer One Virtual Private Network
CE - Customer (edge) network element directly connected to the
Provider network (terminates one or more links to one or more
PEs); it is also connected to one or more Cs and/or other CEs
C - Customer network element that is not connected to the Provider
network but is connected to one or more other Cs and/or CEs
PE - Provider (edge) network element directly connected to one or
more Customer networks (terminates one or more links to one
or more CEs associated with the same or different L1VPNs); it
is also connected to one or more Ps and/or other PEs
P - Provider (core) network element that is not directly connected
to any of Customer networks; P is connected to one or more
other Ps and/or PEs
LSA - OSPF Link State Advertisement
LSDB - Link State Database: a data structure supported by an IGP
speaker
PIT - Port Information Table
CPI - Customer Port Identifier
PPI - Provider Port Identifier
Berger Experimental [Page 3]
Internet-Draft draft-ietf-l1vpn-ospfv3-auto-discovery-03.txt January 12, 2009
1.2. Overview
The framework for Layer 1 VPNs is described in [RFC4847]. Basic mode
operation is further defined in [RFC5251]. [RFC5251] identifies the
information that is necessary to map customer information (port
identifiers) to provider information (identifiers). It also states
that this mapping information may be provided via provisioning or via
an auto-discovery mechanism. [RFC5252] provides such an auto-
discovery mechanism using Open Shortest Path First (OSPF) version 2.
This document provides the same functionality using of OSPF version 3
and adds support for IPv6.
Figure 1 shows the L1VPN basic service being supported using OSPF
based L1VPN auto-discovery. This figure shows two PE routers
interconnected over a GMPLS backbone. Each PE is attached to three
CE devices belonging to three different Layer 1 VPNs. In this
network, OSPF is used to provide the VPN membership, port mapping and
related information required to support basic mode operation.
PE PE
+---------+ +--------------+
+--------+ | +------+| | +----------+ | +--------+
| VPN-A | | |VPN-A || | | VPN-A | | | VPN-A |
| CE1 |--| |PIT || OSPF LSAs | | PIT | |-| CE2 |
+--------+ | | ||<----------->| | | | +--------+
| +------+| Distribution| +----------+ |
| | | |
+--------+ | +------+| | +----------+ | +--------+
| VPN-B | | |VPN-B || ------- | | VPN-B | | | VPN-B |
| CE1 |--| |PIT ||--( GMPLS )--| | PIT | |-| CE2 |
+--------+ | | || (Backbone) | | | | +--------+
| +------+| -------- | +----------+ |
| | | |
+--------+ | +-----+ | | +----------+ | +--------+
| VPN-C | | |VPN-C| | | | VPN-C | | | VPN-C |
| CE1 |--| |PIT | | | | PIT | |-| CE2 |
+--------+ | | | | | | | | +--------+
| +-----+ | | +----------+ |
+---------+ +--------------+
Figure 1: OSPF Auto-Discovery for L1VPNs
The approach used in this document to provide OSPFv3 based L1VPN
auto-discovery uses a new type of Link State Advertisement (LSA)
which is referred to as an OSPFv3 L1VPN LSA. The OSPFv3 L1VPN LSA
carries information in TLV (type, length, value) structures. An
L1VPN specific TLV is defined below to propagate VPN membership and
port information. This TLV is is referred to as the L1VPN Info TLV.
Berger Experimental [Page 4]
Internet-Draft draft-ietf-l1vpn-ospfv3-auto-discovery-03.txt January 12, 2009
The OSPFv3 L1VPN LSA may also carry Traffic Engineering (TE) TLVs,
see [RFC3630], [RFC4203], and [RFC5329].
2. OSPFv3 L1VPN LSA and its TLVs
This section defines the OSPFv3 L1VPN LSA and its TLVs.
2.1. OSPFv3 L1VPN LSA
The format of a OSPFv3 L1VPN LSA is as follows:
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS age | LS type |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link State ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Advertising Router |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS sequence number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS checksum | length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| L1VPN Info TLV |
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TE Link TLV |
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
LS age
As defined in [RFC5340].
LS type
As defined in [RFC5340]. The U-bit MUST be set to 1, and the
S1 and S2 bits MUST be set to indicate either area or AS scoping.
The LSA Function Code portion of this field MUST be set to TBA
(by IANA), i.e., the OSPFv3 L1VPN LSA.
Advertising Router
As defined in [RFC5340].
LS Sequence Number
As defined in [RFC5340].
Berger Experimental [Page 5]
Internet-Draft draft-ietf-l1vpn-ospfv3-auto-discovery-03.txt January 12, 2009
LS checksum
As defined in [RFC5340].
Length
As defined in [RFC5340].
L1VPN Info TLV
A single L1VPN Info TLV, as defined in section 2.2 of [RFC5252]
or section 2.2 of this document, MUST be present. If more than one
L1VPN Info TLV is present, only the first TLV is processed and the
others MUST be ignored on receipt. If no L1VPN Info TLV is
present, the LSA is processed (and flooded) as normal, but the
L1VPN PIT table MUST NOT be modified in any way.
TE Link TLV
A single TE Link TLV MAY be included in an OSPFv3 L1VPN LSA.
When an L1VPN IPv4 Info TLV is present, a single TE Link TLV as
defined in [RFC3630] and [RFC4203] MAY be included. When an
L1VPN IPv6 Info TLV is present, a single TE Link TLV as defined
in [RFC5329] MAY be included.
2.2. L1VPN IPv6 INFO TLV
The following TLV is introduced:
Name: L1VPN IPv6 Info
Type: 32768
Length: Variable
Berger Experimental [Page 6]
Internet-Draft draft-ietf-l1vpn-ospfv3-auto-discovery-03.txt January 12, 2009
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| L1VPN TLV Type | L1VPN TLV Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| L1VPN Globally Unique Identifier |
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| PE TE Address |
| ... |
| ... |
| ... |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link Local Identifier |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| ... |
| L1VPN Auto-Discovery Information |
+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| .| Padding |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
L1VPN TLV Type
The type of the TLV (see above).
TLV Length
The length of the TLV in bytes, excluding the four (4) bytes
of the TLV header and, if present, the length of the Padding
field.
L1VPN Globally Unique Identifier
As defined in [RFC5251].
PE TE Address
This field MUST carry an address that has been advertised by
the LSA originator per [RFC5329] and is either the Router IPv6
Address TLV or Local Interface IPv6 Address link sub-TLV. It will
typically carry the TE Router Address.
Link Local Identifier
This field is used to support unnumbered links. When an
unnumbered PE TE link is represented, this field MUST contain
a value advertised by the LSA originator per [RFC5340] in a
Router LSA. When a numbered link is represented, this field
MUST be set to zero (0).
L1VPN Auto-discovery information
As defined in [RFC5251].
Berger Experimental [Page 7]
Internet-Draft draft-ietf-l1vpn-ospfv3-auto-discovery-03.txt January 12, 2009
Padding
A field of variable length and of sufficient size to ensure
that the TLV is aligned on a four (4) byte boundary. This
field is only required when the L1VPN Auto-discovery
information field is not four (4) byte aligned. This field
MUST be less than four (4) bytes long, and MUST NOT be present
when the size of L1VPN Auto-discovery information field is
four (4) byte aligned.
3. OSPFv3 L1VPN LSA Advertising and Processing
PEs advertise local <CPI, PPI> tuples in OSPFv3 L1VPN LSAs containing
L1VPN Info TLVs. Each PE MUST originate a separate OSPFv3 L1VPN LSA
with area or AS flooding scope, based on configuration, for each
local CE-PE link. The LSA MUST be originated each time a PE restarts
and every time there is a change in the PIT entry associated with a
local CE-PE link. The LSA MUST include a single L1VPN Info TLV and
MAY include a single TE Link TLV. The TE Link TLV carries TE
attributes of the associated CE-PE link. Note that because CEs are
outside of the provider TE domain, the attributes of CE-PE links are
not advertised via normal OSPF-TE procedures as described in
[RFC5329]. If more than one L1VPN Info TLVs and/or TE Link TLVs are
found in the LSA, the subsequent TLVs SHOULD be ignored by the
receiving PEs.
Every time a PE receives a new, removed, or modified OSPFv3 L1VPN
LSA, the PE MUST check whether it maintains a PIT associated with the
L1VPN specified in the L1VPN Globally unique identifier field. If
this is the case (the appropriate PIT will be found if one or more
local CE-PE links that belong to the L1VPN are configured), the PE
SHOULD add, remove or modify the PIT entry associated with each of
the advertised CE-PE links accordingly. (An implementation MAY choose
to not remove or modify the PIT according to local policy or
management directives.) Thus, in the normal steady-state case, all
PEs associated with a particular L1VPN will have identical local PITs
for an L1VPN.
4. Backward Compatibility
Neither the TLV nor the LSA introduced in this document present any
interoperability issues. Per [RFC5340] and due to the U-bit being
set, OSPFv3 speakers that do not support the OSPFv3 L1VPN LSA (Ps for
example) just participate in the LSAs flooding process but should
ignore the LSAs contents.
Berger Experimental [Page 8]
Internet-Draft draft-ietf-l1vpn-ospfv3-auto-discovery-03.txt January 12, 2009
5. Manageability Considerations
The principal concern in operating an auto-discovery mechanism for an
L1VPN is that the PE needs to be configured with information about
which VPNs it supports. This information can be discovered from the
CEs using some form of membership negotiation, but is more likely to
be directly configured by the operator as described in [RFC4847],
[RFC5251], and [RFC5253]. No standardized mechanisms to configure
this information have been defined, and it is a matter for individual
implementations with input from operator policy how a PE is told
which L1VPNs it supports. It is probable that configuration of this
information is closely tied to the configuration of CE-facing ports
on the PE, which in turn causes PITs to be established in the PE.
Additionally, it may be of value to an operator to view the L1VPN
membership information that has been learned by a PE. An
implementation may supply this information through a proprietary
interface, or may allow it to be inspected through the OSPFv3 MIB
module [OSPFv3-MIB] or the Traffic Engineering Database MIB [TED-
MIB].
Note that the operation of the control plane has no impact on IP
network traffic because all of the user data is in layer 1, while the
control plane is necessarily out of band in a DCN.
5.1. Coexistence with and Migration from OSPFv2
It is expected that only a single routing protocol instance will be
used to operate auto-discovery within an L1VPN at any time. Thus,
coexistence issues only apply to the migration from OSPFv2 to OSPFv3
and can be expected to be transient.
Migration from OSPFv2 to OSPFv3 would be a once-only event for any
network and would probably depend on the migration of the routing
protocol used within the network for normal GMPLS procedures. The
migration process would not be any different from the process used to
migrate the normal GMPLS routing protocol. The steps to follow are
clearly a matter for the operator of the network and are not a matter
for standardization, but the following sequence is provided to
illustrate the potential actions:
1. Assign IPv6 addresses to all control plane and data plane
resources.
2. Install and enable OSPFv3 on all controllers.
Berger Experimental [Page 9]
Internet-Draft draft-ietf-l1vpn-ospfv3-auto-discovery-03.txt January 12, 2009
3. Use OSPFv3 to advertise IPv4 and IPv6 resource identifiers.
4. Manually verify the advertised membership and topology
information from the OSPFv2 and OSPFv3 databases.
5. Start a maintenance window where data continues to flow, but no
L1VPN connections can be changed.
6. Cut over to the OSPFv3 membership and topology information.
7. Close the maintenance window.
8. Turn off OSPFv2.
9. Remove/disable the IPv4 address for all control plane and data
plane resources.
6. Security Considerations
The approach presented in this document describes how PEs dynamically
learn L1VPN specific information. Mechanisms to deliver the VPN
membership information to CEs are explicitly out of scope of this
document. Therefore, the security issues raised in this document are
limited to within the OSPF domain.
This defined approach reuses mechanisms defined in [RFC5340].
Therefore the same security approaches and considerations apply to
this approach. OSPF provides several security mechanisms that can be
applied. Specifically, OSPF supports multiple types of
authentication, limits the frequency of LSA origination and
acceptance, and provides techniques to avoid and limit impact
database overflow. In cases were end-to-end authentication is
desired, OSPF's neighbor-to-neighbor authentication approach can be
augmented with an approach similar to the experimental extension to
OSPF, see [RFC2154], which supports the signing and authentication of
LSAs.
7. IANA Considerations
Section 2.1 of this document requests the assignment of an OSPFv3 LSA
Function Code, see http://www.iana.org/assignments/ospfv3-parameters.
IANA is requested to make an assignment in the form:
Value OSPFv3 LSA type function Type Reference
------- ----------------------------- ---------
TBA OSPFv3 L1VPN LSA [this document]
A value of 13 is suggested for TBA.
Berger Experimental [Page 10]
Internet-Draft draft-ietf-l1vpn-ospfv3-auto-discovery-03.txt January 12, 2009
8. Acknowledgment
This document was created at the request of Pasi Eronen. Adrian
Farrel and Acee Lindem provided valuable reviews of this draft.
Adrian also provided the text for Section 5.
9. References
9.1. Normative References
[RFC2119] Bradner, S., "Key words for use in RFCs to indicate
requirements levels", RFC 2119, March 1997.
[RFC5340] R. Coltun, D. Ferguson, J. Moy, "OSPF for IPv6",
RFC 5340.
[RFC3630] Katz, D., Kompela, K., Yeung. D.., "Traffic Engineering
(TE) Extensions to OSPF Version 2", RFC 3630, September
2003.
[RFC4203] Kompela, K., Rekhter, Y. "OSPF Extensions in Support of
Generalized Multi-Protocol Label Switching (GMPLS)", RFC
4203, October 2005.
[RFC5251] Fedyk, D., Ed., Rekhter, Y., Ed., Papadimitriou, D.,
Rabbat, R., and L. Berger, "Layer 1 VPN Basic Mode",
RFC 5251, June 2008.
[RFC5252] Bryskin, I. and L. Berger, "OSPF-Based Layer 1 VPN
Auto-Discovery", RFC 5252, June 2008.
[RFC5329] K. Ishiguro, T. Takada, "Traffic Engineering
Extensions to OSPF version 3", RFC 5328,
September 2008.
9.2. Informative References
[OSPFv3-MIB] Joyal, D., Manral, V., Eds., "Management Information
Base for OSPFv3", draft-ietf-ospf-ospfv3-mib, Work in
Progress, November 2008.
[RFC2154] Murphy, S., Badger, M., Wellington, B., "OSPF with
Digital Signatures", RFC 2154, June 1997.
Berger Experimental [Page 11]
Internet-Draft draft-ietf-l1vpn-ospfv3-auto-discovery-03.txt January 12, 2009
[RFC4847] Takeda, T., Ed., "Framework and Requirements
for Layer 1 Virtual Private Networks", RFC 4847,
April 2007.
[RFC5253] Takeda, T., Ed., "Applicability Statement for Layer 1
Virtual Private Network (L1VPN) Basic Mode", RFC
5253, July 2008.
[TED-MIB] Miyazawa, M., Otani, T., Nadeau, T., Kumaki, K.,
"Traffic Engineering Database Management Information
Base in support of MPLS-TE/GMPLS", Work in Progress,
draft-ietf-ccamp-gmpls-ted-mib, July 2008.
10. Authors' Addresses
Lou Berger
LabN Consulting, LLC
Email: lberger@labn.net
Berger Experimental [Page 12]
Generated on: Mon Jan 12 15:54:38 EST 2009