draft-ietf-ospf-ttz-06.txt   rfc8099.txt 
Internet Engineering Task Force H. Chen Internet Engineering Task Force (IETF) H. Chen
Internet-Draft R. Li Request for Comments: 8099 R. Li
Intended status: Experimental Huawei Technologies Category: Experimental Huawei Technologies
Expires: July 12, 2017 A. Retana ISSN: 2070-1721 A. Retana
Cisco Systems, Inc. Cisco Systems, Inc.
Y. Yang Y. Yang
Sockrate Sockrate
Z. Liu Z. Liu
China Mobile China Mobile
January 8, 2017 February 2017
OSPF Topology-Transparent Zone OSPF Topology-Transparent Zone
draft-ietf-ospf-ttz-06.txt
Abstract Abstract
This document presents a topology-transparent zone (TTZ) in an OSPF This document presents a Topology-Transparent Zone (TTZ) in an OSPF
area. A topology-transparent zone comprises a group of routers and a area. A TTZ comprises a group of routers and a number of links
number of links connecting these routers. Any router outside of the connecting these routers. Any router outside of the zone is not
zone is not aware of the zone. A TTZ hides the internal topology of aware of the zone. A TTZ hides the internal topology of the TTZ from
the TTZ from the outside. It does not directly advertise any the outside. It does not directly advertise any internal information
internal information about the TTZ to a router outside of the TTZ. about the TTZ to a router outside of the TTZ. The information about
The information about the links and routers such as a link down the links and routers such as a link down inside the TTZ is not
inside the TTZ is not advertised to any router outside of the TTZ. advertised to any router outside of the TTZ.
Status of this Memo
This Internet-Draft is submitted to IETF in full conformance with the Status of This Memo
provisions of BCP 78 and BCP 79.
Internet-Drafts are working documents of the Internet Engineering This document is not an Internet Standards Track specification; it is
Task Force (IETF). Note that other groups may also distribute published for examination, experimental implementation, and
working documents as Internet-Drafts. The list of current Internet- evaluation.
Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months This document defines an Experimental Protocol for the Internet
and may be updated, replaced, or obsoleted by other documents at any community. This document is a product of the Internet Engineering
time. It is inappropriate to use Internet-Drafts as reference Task Force (IETF). It represents the consensus of the IETF
material or to cite them other than as "work in progress." community. It has received public review and has been approved for
publication by the Internet Engineering Steering Group (IESG). Not
all documents approved by the IESG are a candidate for any level of
Internet Standard; see Section 2 of RFC 7841.
This Internet-Draft will expire on July 12, 2017. Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfc8099.
Copyright Notice Copyright Notice
Copyright (c) 2017 IETF Trust and the persons identified as the Copyright (c) 2017 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
(http://trustee.ietf.org/license-info) in effect on the date of (http://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
carefully, as they describe your rights and restrictions with respect carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License. described in the Simplified BSD License.
Table of Contents Table of Contents
1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 4
2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 4
3. Conventions Used in This Document . . . . . . . . . . . . . . 5 3. Conventions Used in This Document . . . . . . . . . . . . . . 5
4. Requirements . . . . . . . . . . . . . . . . . . . . . . . . . 5 4. Requirements . . . . . . . . . . . . . . . . . . . . . . . . 5
5. Topology-Transparent Zone . . . . . . . . . . . . . . . . . . 5 5. Topology-Transparent Zone . . . . . . . . . . . . . . . . . . 5
5.1. Overview of Topology-Transparent Zone . . . . . . . . . . 5 5.1. Overview of Topology-Transparent Zone . . . . . . . . . . 5
5.2. TTZ Example . . . . . . . . . . . . . . . . . . . . . . . 6 5.2. TTZ Example . . . . . . . . . . . . . . . . . . . . . . . 6
6. Extensions to OSPF Protocols . . . . . . . . . . . . . . . . . 8 6. Extensions to OSPF Protocols . . . . . . . . . . . . . . . . 8
6.1. General Format of TTZ LSA . . . . . . . . . . . . . . . . 8 6.1. General Format of TTZ LSA . . . . . . . . . . . . . . . . 8
6.2. TTZ ID TLV . . . . . . . . . . . . . . . . . . . . . . . . 9 6.2. TTZ ID TLV . . . . . . . . . . . . . . . . . . . . . . . 9
6.3. TTZ Router TLV . . . . . . . . . . . . . . . . . . . . . . 9 6.3. TTZ Router TLV . . . . . . . . . . . . . . . . . . . . . 9
6.4. TTZ Options TLV . . . . . . . . . . . . . . . . . . . . . 10 6.4. TTZ Options TLV . . . . . . . . . . . . . . . . . . . . . 10
6.5. Link Scope TTZ LSA . . . . . . . . . . . . . . . . . . . . 11 6.5. Link Scope TTZ LSA . . . . . . . . . . . . . . . . . . . 12
7. Constructing LSAs for TTZ . . . . . . . . . . . . . . . . . . 12 7. Constructing LSAs for TTZ . . . . . . . . . . . . . . . . . . 12
7.1. TTZ Migration Process . . . . . . . . . . . . . . . . . . 13 7.1. TTZ Migration Process . . . . . . . . . . . . . . . . . . 13
8. Establishing Adjacencies . . . . . . . . . . . . . . . . . . . 14 8. Establishing Adjacencies . . . . . . . . . . . . . . . . . . 14
8.1. Discovery of TTZ Neighbors . . . . . . . . . . . . . . . . 14 8.1. Discovery of TTZ Neighbors . . . . . . . . . . . . . . . 14
8.2. Adjacency between TTZ Edge and TTZ External Router . . . . 17 8.2. Adjacency between TTZ Edge and TTZ-External Router . . . 17
9. Advertisement of LSAs . . . . . . . . . . . . . . . . . . . . 17 9. Advertisement of LSAs . . . . . . . . . . . . . . . . . . . . 17
9.1. Advertisement of LSAs within TTZ . . . . . . . . . . . . . 17 9.1. Advertisement of LSAs within TTZ . . . . . . . . . . . . 17
9.2. Advertisement of LSAs through TTZ . . . . . . . . . . . . 18 9.2. Advertisement of LSAs through TTZ . . . . . . . . . . . . 18
10. Computation of Routing Table . . . . . . . . . . . . . . . . . 18 10. Computation of Routing Table . . . . . . . . . . . . . . . . 18
11. Operations . . . . . . . . . . . . . . . . . . . . . . . . . . 18 11. Operations . . . . . . . . . . . . . . . . . . . . . . . . . 18
11.1. Configuring TTZ . . . . . . . . . . . . . . . . . . . . . 18 11.1. Configuring TTZ . . . . . . . . . . . . . . . . . . . . 18
11.2. Migration to TTZ . . . . . . . . . . . . . . . . . . . . . 19 11.2. Migration to TTZ . . . . . . . . . . . . . . . . . . . . 19
11.3. Adding a Router into TTZ . . . . . . . . . . . . . . . . . 21 11.3. Adding a Router into TTZ . . . . . . . . . . . . . . . . 21
12. Manageability Considerations . . . . . . . . . . . . . . . . . 22 12. Manageability Considerations . . . . . . . . . . . . . . . . 22
13. Security Considerations . . . . . . . . . . . . . . . . . . . 22 13. Security Considerations . . . . . . . . . . . . . . . . . . . 22
14. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 22 14. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 22
15. Contributors and Other Authors . . . . . . . . . . . . . . . . 23 15. References . . . . . . . . . . . . . . . . . . . . . . . . . 23
16. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 24 15.1. Normative References . . . . . . . . . . . . . . . . . . 23
17. References . . . . . . . . . . . . . . . . . . . . . . . . . . 24 15.2. Informative References . . . . . . . . . . . . . . . . . 23
17.1. Normative References . . . . . . . . . . . . . . . . . . . 24 Appendix A. Prototype Implementation . . . . . . . . . . . . . . 24
17.2. Informative References . . . . . . . . . . . . . . . . . . 25 A.1. What Is Implemented and Tested . . . . . . . . . . . . . 24
Appendix A. Prototype Implementation . . . . . . . . . . . . . . 25 A.2. Implementation Experience . . . . . . . . . . . . . . . . 25
A.1. What are Implemented and Tested . . . . . . . . . . . . . 25 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . 26
A.2. Implementation Experience . . . . . . . . . . . . . . . . 26 Contributors . . . . . . . . . . . . . . . . . . . . . . . . . . 26
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 27 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . 27
1. Introduction 1. Introduction
Networks expand as business grows and traffic increases. For Networks expand as business grows and traffic increases. For
scalability and manageability, a hierarchical network architecture is scalability and manageability, a hierarchical network architecture is
usually deployed in OSPF networks by re-grouping routers into areas, usually deployed in OSPF networks by regrouping routers into areas,
which is often challenging and causes service interruptions. which is often challenging and causes service interruptions.
At first, reorganizing a network from one area into multiple areas or At first, reorganizing a network from one area into multiple areas or
from a number of existing areas into even more areas is a very from a number of existing areas into even more areas is a very
challenging and time consuming task since it involves significant challenging and time-consuming task since it involves significant
network architecture changes. Considering the one area case, network architecture changes. Considering the one area case,
originally the network has only one area, which is the backbone. originally the network has only one area, which is the backbone.
This original backbone area will be reorganized into a new backbone This original backbone area will be reorganized into a new backbone
and a number of non-backbone areas. In general, each of the non- and a number of non-backbone areas. In general, each of the
backbone areas is connected to the new backbone area through the Area non-backbone areas is connected to the new backbone area through the
Border Routers (ABRs) between the non-backbone and the backbone area Area Border Routers (ABRs) between the non-backbone and the backbone
(refer to RFC 2328 section 3). It demands careful re-designing of area (refer to RFC 2328, Section 3). It demands careful redesigning
network topology in advance to guarantee backbone area continuity and of network topology in advance to guarantee backbone area continuity
non-backbone area reachability, and requires significant and non-backbone-area reachability, and it requires significant
modifications of configurations on many routers to ensure consistent modifications of configurations on many routers to ensure consistent
routing. routing.
Secondly, the services carried by the network may be interrupted Second, the services carried by the network may be interrupted while
while the network is being reorganized from one area into multiple the network is being reorganized from one area into multiple areas or
areas or from a number of existing areas into even more areas since from a number of existing areas into even more areas since every OSPF
every OSPF interface with an area change is going down with its old interface with an area change is going down with its old area and
area and then up with a new area. then up with a new area.
This document presents a topology-transparent zone (TTZ) in an OSPF This document presents a Topology-Transparent Zone (TTZ) in an OSPF
area and describes extensions to OSPFv2 for supporting the topology- area and describes extensions to OSPFv2 for supporting the TTZ, which
transparent zone, which is scalable and resolves the issues above. A is scalable and resolves the issues above. A TTZ hides the internal
TTZ hides the internal topology of the TTZ from the outside. It does topology of the TTZ from the outside. It does not directly advertise
not directly advertise any internal information about the TTZ to a any internal information about the TTZ to any router outside of the
router outside of the TTZ. TTZ.
2. Terminology 2. Terminology
TTZ link or TTZ internal link: A link whose ends are within a single TTZ link or TTZ-internal link:
TTZ. A link whose ends are within a single TTZ.
TTZ internal router: A router whose links are TTZ internal links TTZ-internal router:
inside a single TTZ. A router whose links are TTZ-internal links inside a single TTZ.
TTZ external router: A router outside of a TTZ that has no TTZ TTZ-external router:
internal links. A router outside of a TTZ that has no TTZ-internal links.
TTZ external link: A link not configured to be within a TTZ. TTZ-external link:
A link not configured to be within a TTZ.
TTZ edge router: A router is called TTZ edge router if some, but not TTZ edge router:
all, of its links are within a single TTZ. A router is called a TTZ edge router if some, but not all, of its
links are within a single TTZ.
TTZ router: A TTZ internal router or a TTZ edge router. TTZ router:
A TTZ-internal router or a TTZ edge router.
3. Conventions Used in This Document 3. Conventions Used in This Document
The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
"SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
document are to be interpreted as described in RFC 2119. document are to be interpreted as described in [RFC2119].
4. Requirements 4. Requirements
A Topology-Transparent Zone may be deployed to resolve some critical A Topology-Transparent Zone may be deployed to resolve some critical
issues in existing networks and future networks. The requirements issues in existing networks and future networks. The requirements
for a TTZ are listed as follows: for a TTZ are listed as follows:
o Routers outside a TTZ MUST NOT require any changes to operate with o Routers outside a TTZ MUST NOT require any changes to operate with
the TTZ. the TTZ.
skipping to change at page 5, line 39 skipping to change at page 5, line 41
5. Topology-Transparent Zone 5. Topology-Transparent Zone
5.1. Overview of Topology-Transparent Zone 5.1. Overview of Topology-Transparent Zone
A Topology-Transparent Zone is identified by a TTZ identifier (ID), A Topology-Transparent Zone is identified by a TTZ identifier (ID),
and it consists of a group of routers and a number of links and it consists of a group of routers and a number of links
connecting the routers. A TTZ MUST be contained within an OSPF area. connecting the routers. A TTZ MUST be contained within an OSPF area.
A TTZ ID is a 32-bit number that is unique for identifying a TTZ. A TTZ ID is a 32-bit number that is unique for identifying a TTZ.
The TTZ ID SHOULD NOT be 0, to avoid confusion with Area 0. The same The TTZ ID SHOULD NOT be 0 in order to avoid confusion with Area 0.
TTZ ID MUST be configured on the routers and/or links that make up a The same TTZ ID MUST be configured on the routers and/or links that
specific instance of a TTZ. All TTZ instances in an OSPF area MUST make up a specific instance of a TTZ. All TTZ instances in an OSPF
be unique. area MUST be unique.
In addition to having similar functions of an OSPF area, an OSPF TTZ In addition to having similar functions of an OSPF area, an OSPF TTZ
makes some improvements on an OSPF area, which include: makes some improvements on an OSPF area, which include:
o An OSPF TTZ represents a set of TTZ edge routers, connected by a o An OSPF TTZ represents a set of TTZ edge routers, connected by a
full mesh of virtual connections between them. full mesh of virtual connections between them.
o Non-TTZ link state information is handled as normal. TTZ Routers o Non-TTZ link-state information is handled as normal. TTZ routers
receive the link state information about the topology outside of receive the link-state information about the topology outside of
the TTZ, store the information, and flood the information through the TTZ, store the information, and flood the information through
the TTZ to the routers outside of the TTZ. the TTZ to the routers outside of the TTZ.
5.2. TTZ Example 5.2. TTZ Example
The figure below shows an area containing a TTZ: TTZ 600. The figure below shows an area containing a TTZ: TTZ 600.
TTZ 600 ---- TTZ Internal Link TTZ 600 ---- TTZ-Internal Link
\ ==== Normal Link \ ==== Normal Link
Area X \ ^~^~^~^~^~^~^~^~^~^~^~^~ Area X \ ^~^~^~^~^~^~^~^~^~^~^~^~
( ) ( )
===[R15]========(==[T61]----[T81]---[T63]==)======[R29]=== ===[R15]========(==[T61]----[T81]---[T63]==)======[R29]===
|| ( | \ / | ) || || ( | \ / | ) ||
|| ( | \ / | ) || || ( | \ / | ) ||
|| ( [T75] \ / | ) || || ( [T75] \ / | ) ||
|| ( | ___\ / | ) || || ( | ___\ / | ) ||
|| ( | / [T71] [T79] ) || || ( | / [T71] [T79] ) ||
|| ( | [T73] / \ | ) || || ( | [T73] / \ | ) ||
skipping to change at page 6, line 38 skipping to change at page 6, line 38
===[R17]========(==[T65]---[T77]----[T67]==)======[R31]=== ===[R17]========(==[T65]---[T77]----[T67]==)======[R31]===
\\ (// \\) // \\ (// \\) //
|| //v~v~v~v~v~v~v~v~v~v~v~\\ || || //v~v~v~v~v~v~v~v~v~v~v~\\ ||
|| // \\ || || // \\ ||
|| // \\ || || // \\ ||
\\ // \\ // \\ // \\ //
======[R23]==============================[R25]===== ======[R23]==============================[R25]=====
// \\ // \\
// \\ // \\
All the routers in the figure are in area X. Routers with T (i.e., All the routers in the figure are in area X. Routers with T (i.e.,
T61, T63, T65, T67, T71, T73, T75, T77, T79 and T81) are also in TTZ T61, T63, T65, T67, T71, T73, T75, T77, T79, and T81) are also in TTZ
600, which contains the TTZ internal links connecting them. To 600, which contains the TTZ-internal links connecting them. To
create a TTZ, we need configure it (refer to section 11). create a TTZ, we need to configure it (refer to Section 11).
There are two types of routers in a TTZ: TTZ internal and TTZ edge There are two types of routers in a TTZ: TTZ-internal and TTZ edge
routers. TTZ 600 has four TTZ edge routers T61, T63, T65 and T67. routers. TTZ 600 has four TTZ edge routers: T61, T63, T65, and T67.
Each of them has at least one adjacent router in TTZ 600 and one Each of them has at least one adjacent router in TTZ 600 and one
adjacent router outside of TTZ 600. For instance, router T61 is a adjacent router outside of TTZ 600. For instance, router T61 is a
TTZ edge router since it has an adjacent router R15 outside of TTZ TTZ edge router since it has an adjacent router, R15, outside of TTZ
600 and three adjacent routers T75, T71 and T81 in TTZ 600. 600 and three adjacent routers T71, T75, and T81 in TTZ 600.
In addition, TTZ 600 comprises six TTZ internal routers T71, T73, In addition, TTZ 600 comprises six TTZ-internal routers: T71, T73,
T75, T77, T79 and T81. Each of them has all its adjacent routers in T75, T77, T79, and T81. Each of them has all its adjacent routers in
TTZ 600. For instance, router T71 is a TTZ internal router since its TTZ 600. For instance, router T71 is a TTZ-internal router since its
adjacent routers T61, T63, T65, T67 and T73 are all in TTZ 600. It adjacent routers, T61, T63, T65, T67, and T73, are all in TTZ 600.
should be noted that by definition, a TTZ internal router cannot also It should be noted that, by definition, a TTZ-internal router cannot
be an ABR. also be an ABR.
A TTZ hides the internal topology of the TTZ from the outside. It A TTZ hides the internal topology of the TTZ from the outside. It
does not directly advertise any internal information about the TTZ to does not directly advertise any internal information about the TTZ to
a router outside of the TTZ. any router outside of the TTZ.
For instance, TTZ 600 does not send the information about TTZ For instance, TTZ 600 does not send the information about TTZ-
internal router T71 to any router outside of TTZ 600; it does not internal router T71 to any router outside of TTZ 600; it does not
send the information about the link between TTZ router T61 and T71 to send the information about the link between TTZ routers T61 and T71
any router outside of TTZ 600. to any router outside of TTZ 600.
The figure below illustrates area X from the point of view on a The figure below illustrates area X from the point of view of a
router outside of TTZ 600 after TTZ 600 is created. router outside of TTZ 600 after TTZ 600 is created.
Area X ==== Normal Link Area X ==== Normal Link
===[R15]===========[T61]=========[T63]=========[R29]=== ===[R15]===========[T61]=========[T63]=========[R29]===
|| || \\ // || || || || \\ // || ||
|| || \\ // || || || || \\ // || ||
|| || \\ // || || || || \\ // || ||
|| || \\// || || || || \\// || ||
|| || //\ || || || || //\ || ||
skipping to change at page 7, line 44 skipping to change at page 7, line 43
\\ // \\ // \\ // \\ //
|| // \\ || || // \\ ||
|| // \\ || || // \\ ||
|| // \\ || || // \\ ||
\\ // \\ // \\ // \\ //
======[R23]============================[R25]===== ======[R23]============================[R25]=====
// \\ // \\
// \\ // \\
From a router outside of the TTZ, a TTZ is seen as the TTZ edge From a router outside of the TTZ, a TTZ is seen as the TTZ edge
routers connected each other. For instance, router R15 sees that routers connected to each other. For instance, router R15 sees that
T61, T63, T65 and T67 are connected each other. T61, T63, T65, and T67 are connected to each other.
In addition, a router outside of the TTZ sees TTZ edge routers having In addition, a router outside of the TTZ sees TTZ edge routers having
normal connections to the routers outside of the TTZ. For example, normal connections to the routers outside of the TTZ. For example,
router R15 sees that T61, T63, T65 and T67 have the normal router R15 sees that T61, T63, T65, and T67 have the normal
connections to R15, R29, R17 and R23, R25 and R31 respectively. connections to R15; R29; R17 and R23; and R25 and R31, respectively.
6. Extensions to OSPF Protocols 6. Extensions to OSPF Protocols
The link state information about a TTZ includes router LSAs, which The link-state information about a TTZ includes router Link-State
can be contained and advertised in opaque LSAs [RFC5250] within the Advertisements (LSAs), which can be contained and advertised in
TTZ. Some control information regarding a TTZ can also be contained opaque LSAs [RFC5250] within the TTZ. Some control information
and advertised in opaque LSAs within the TTZ. These opaque LSAs are regarding a TTZ can also be contained and advertised in opaque LSAs
called TTZ opaque LSAs or TTZ LSAs for short. within the TTZ. These opaque LSAs are called TTZ opaque LSAs or TTZ
LSAs for short.
6.1. General Format of TTZ LSA 6.1. General Format of TTZ LSA
The following is the general format of a TTZ LSA. It has an LS Type The following is the general format of a TTZ LSA. It has a Link-
= 10/9 and TTZ-LSA-Type, and contains a number of TLVs. State (LS) Type = 10/9 and TTZ LSA Type, and it contains a number of
TLVs.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS age | Options | LS Type = 10/9| | LS age | Options | LS Type = 10/9|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TTZ-LSA-Type(9)| Instance ID | |TTZ LSA Type(9)| Instance ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Advertising Router | | Advertising Router |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS Sequence Number | | LS Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS checksum | Length | | LS checksum | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
~ TLVs ~ ~ TLVs ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
There are three TTZ LSAs of LS Type 10 defined: There are three TTZ LSAs of LS Type 10 defined:
o TTZ Router LSA: a TTZ LSA containing a TTZ ID TLV and a TTZ Router o TTZ router LSA: a TTZ LSA containing a TTZ ID TLV and a TTZ Router
TLV. TLV.
o TTZ Control LSA: a TTZ LSA containing a TTZ ID TLV and a TTZ o TTZ control LSA: a TTZ LSA containing a TTZ ID TLV and a TTZ
Options TLV. Options TLV.
o TTZ Indication LSA: a TTZ LSA containing a TTZ ID TLV with E = 0, o TTZ indication LSA: a TTZ LSA containing a TTZ ID TLV with E = 0,
which indicates that the router originating this LSA is a TTZ which indicates that the router originating this LSA is a TTZ-
internal router. internal router.
There is one TTZ LSA of LS Type 9: There is one TTZ LSA of LS Type 9:
o TTZ Discovery LSA: a TTZ LSA containing a TTZ ID TLV and a o TTZ discovery LSA: a TTZ LSA containing a TTZ ID TLV and an
optional TTZ Options TLV. optional TTZ Options TLV.
6.2. TTZ ID TLV 6.2. TTZ ID TLV
A TTZ ID TLV has the following format. It contains a TTZ ID (refer A TTZ ID TLV has the following format. It contains a TTZ ID (refer
to section 5.1) and some flags. It has the TLV-Length of 8 octets. to Section 5.1) and some flags. It has the TLV-Length of 8 octets.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TTZ-ID-TLV-Type (1) | TLV-Length (8) | | TTZ ID TLV Type (1) | TLV-Length (8) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TTZ ID | | TTZ ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Reserved (MUST be zero) |E|Z| | Reserved (MUST be zero) |E|Z|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
E = 1: Indicating a router is a TTZ Edge router
E = 1: Indicating a router is a TTZ edge router
Z = 1: Indicating a router has migrated to TTZ Z = 1: Indicating a router has migrated to TTZ
When a TTZ router originates a TTZ LSA containing a TTZ ID TLV, it When a TTZ router originates a TTZ LSA containing a TTZ ID TLV, it
MUST set flag E to 1 in the TTZ ID TLV if it is a TTZ edge router, MUST set flag E to 1 in the TTZ ID TLV if it is a TTZ edge router and
and to 0 if it is a TTZ internal router. It MUST set flag Z to 1 to 0 if it is a TTZ-internal router. It MUST set flag Z to 1 after
after it has migrated to TTZ, and to 0 before it migrates to TTZ or it has migrated to TTZ and to 0 before it migrates to TTZ or after it
after it rolls back from TTZ (refer to section 6.4). rolls back from TTZ (refer to Section 6.4).
6.3. TTZ Router TLV 6.3. TTZ Router TLV
The format of a TTZ Router TLV is as follows. It has the same The format of a TTZ Router TLV is as follows. It has the same
content as a standard OSPF Router LSA (RFC 2328) with the following content as a standard OSPF router LSA (RFC 2328) with the following
modifications. modifications.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TTZ-RT-TLV-Type (2) | TLV-Length | | TTZ RT TLV Type (2) | TLV-Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| 0 |V|E|B| 0 | # links | | 0 |V|E|B| 0 | # links |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link ID | | Link ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Link Data | | Link Data |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Type | # TOS | metric | | Type | # TOS | metric |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
~ ... ~ ~ ... ~
For a router link, the existing eight bit Link Type field for a Note: TOS = Type of Service
router link is split into two fields as follows:
For a router link, the existing 8-bit Link Type field for a router
link is split into two fields as follows:
0 1 2 3 4 5 6 7 0 1 2 3 4 5 6 7
+---+---+---+---+---+---+---+---+ +---+---+---+---+---+---+---+---+
| I | Type-1 | | I | Type-1 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
I bit flag: I bit flag:
1: Router link is a TTZ internal link. 1: Router link is a TTZ-internal link.
0: Router link is a TTZ external link. 0: Router link is a TTZ-external link.
Type-1: The kind of the link. The values for Type-1 are the same Type-1: The kind of the link. The values for Type-1 are the same
as those for Type defined in RFC 2328 section 12.4.1. as those for Type defined in RFC 2328, Section 12.4.1.
The Link Type field is 8 bits, the values 128-255 of the field are The Link Type field is 8 bits and the values 128-255 of the field are
reserved (refer to RFC 4940), which allows the reuse of the bottom 7 reserved (refer to [RFC4940]), which allows the reuse of the bottom 7
bits to indicate the type of a TTZ internal or external link. bits to indicate the type of TTZ-internal or external link.
6.4. TTZ Options TLV 6.4. TTZ Options TLV
The format of a TTZ Options TLV is as follows. The format of a TTZ Options TLV is as follows.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| TTZ-OP-TLV-Type (3) | TLV-Length | | TTZ OP TLV Type (3) | TLV-Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| OP | Reserved (MUST be zero) | | OP | Reserved (MUST be zero) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
OP Value Meaning (Operation)
OP Value Meaning (Operation)
0x001 (T): Advertising TTZ Topology Information for Migration 0x001 (T): Advertising TTZ Topology Information for Migration
0x010 (M): Migrating to TTZ 0x010 (M): Migrating to TTZ
0x011 (N): Advertising Normal Topology Information for Rollback 0x011 (N): Advertising Normal Topology Information for Rollback
0x100 (R): Rolling back from TTZ 0x100 (R): Rolling Back from TTZ
A OP field of three bits is defined. It may have a value of 0x001 An OP field of 3 bits is defined. It may have a value of 0x001 for
for T, 0x010 for M, 0x011 for N, or 0x100 for R, which indicates one T, 0x010 for M, 0x011 for N, or 0x100 for R, which indicates one of
of the four operations above. When any of the other values is the four operations above. When any of the other values is received,
received, it is ignored. it is ignored.
Advertising TTZ Topology Information for Migration (T): After a user Advertising TTZ Topology Information for Migration (T):
configures a TTZ router to advertise TTZ topology information, After a user configures a TTZ router to advertise TTZ topology
advertising TTZ topology information for migration is triggered. The information, advertising TTZ topology information for migration
TTZ router originates a TTZ Control LSA having a TTZ Options TLV with is triggered. The TTZ router originates a TTZ control LSA having
OP for T. It also originates its other TTZ LSA such as a TTZ router a TTZ Options TLV with OP for T. It also originates its other
LSA or TTZ indication LSA. When another TTZ router receives the LSA TTZ LSA such as a TTZ router LSA or TTZ indication LSA. When
with OP for T, it originates its TTZ LSA as described in section 7. another TTZ router receives the LSA with OP for T, it originates
its TTZ LSA as described in Section 7.
Migrating to TTZ (M): After a user configures a TTZ router to migrate Migrating to TTZ (M):
to TTZ, migrating to TTZ is triggered. The TTZ router originates a After a user configures a TTZ router to migrate to TTZ, migrating
TTZ Control LSA having a TTZ Options TLV with OP for M and migrates to TTZ is triggered. The TTZ router originates a TTZ control LSA
to TTZ. When another TTZ router receives the LSA with OP for M, it having a TTZ Options TLV with OP for M and migrates to TTZ. When
also migrates to TTZ. When a router migrates to TTZ, it computes another TTZ router receives the LSA with OP for M, it also
routes using the TTZ topology and the topology outside of the TTZ. migrates to TTZ. When a router migrates to TTZ, it computes
For a TTZ internal router, it also updates its TTZ indication LSA routes using the TTZ topology and the topology outside of the
with Z = 1. For a TTZ edge router, it updates its TTZ router LSA TTZ. For a TTZ-internal router, it also updates its TTZ
with Z = 1 and its router LSA for virtualizing the TTZ. A TTZ router indication LSA with Z = 1. For a TTZ edge router, it updates its
determines whether it is internal or edge based on configurations TTZ router LSA with Z = 1 and its router LSA for virtualizing the
(refer to section 11.1). TTZ. A TTZ router determines whether it is internal or edge
based on configurations (refer to Section 11.1).
Advertising Normal Topology Information for Rollback (N): After a Advertising Normal Topology Information for Rollback (N):
user configures a TTZ router to advertise normal topology After a user configures a TTZ router to advertise normal topology
information, advertising Normal topology information for rollback is information, advertising Normal topology information for rollback
triggered. The TTZ router originates a TTZ Control LSA having a TTZ is triggered. The TTZ router originates a TTZ control LSA having
Options TLV with OP for N. It also advertises its normal LSAs such as a TTZ Options TLV with OP for N. It also advertises its normal
its normal router LSA and stops advertising its other TTZ LSAs. When LSAs such as its normal router LSA and stops advertising its
another TTZ router receives the LSA with OP for N, it forwards the other TTZ LSAs. When another TTZ router receives the LSA with OP
LSA, advertises its normal LSAs, and stops advertising its TTZ LSAs. for N, it forwards the LSA, advertises its normal LSAs, and stops
advertising its TTZ LSAs.
Rolling back from TTZ (R): After a user configures a TTZ router to Rolling back from TTZ (R):
roll back from TTZ, rolling back from TTZ is triggered. The TTZ After a user configures a TTZ router to roll back from TTZ,
router originates a TTZ Control LSA having a TTZ Options TLV with OP rolling back from TTZ is triggered. The TTZ router originates a
for R and rolls back from TTZ. When another TTZ router receives the TTZ control LSA having a TTZ Options TLV with OP for R and rolls
LSA with OP for R, it also rolls back from TTZ. back from TTZ. When another TTZ router receives the LSA with OP
for R, it also rolls back from TTZ.
After a TTZ router originates a TTZ control LSA in response to a After a TTZ router originates a TTZ control LSA in response to a
configuration described above to control TTZ, it flushes the TTZ configuration described above to control TTZ, it flushes the TTZ
control LSA if OP in the LSA is set for the configuration and the control LSA if OP in the LSA is set for the configuration and the
configuration is removed. configuration is removed.
6.5. Link Scope TTZ LSA 6.5. Link Scope TTZ LSA
A TTZ LSA of LS Type 9 has the following format. A TTZ LSA of LS Type 9 has the following format.
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
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS age | Options | LS Type = 9 | | LS age | Options | LS Type = 9 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|TTZ-LSA-Type(9)| Instance ID | |TTZ LSA Type(9)| Instance ID |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Advertising Router | | Advertising Router |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS Sequence Number | | LS Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS checksum | Length | | LS checksum | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
~ TTZ ID TLV ~ ~ TTZ ID TLV ~
+---------------------------------------------------------------+ +---------------------------------------------------------------+
| | | |
~ (TTZ Options TLV) ~ ~ (TTZ Options TLV) ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
It contains a mandatory TTZ ID TLV, which may be followed by a It contains a mandatory TTZ ID TLV, which may be followed by an
optional TTZ Options TLV. It is used to discover a TTZ neighbor. optional TTZ Options TLV. It is used to discover a TTZ neighbor.
7. Constructing LSAs for TTZ 7. Constructing LSAs for TTZ
For a TTZ, its topology is represented by the LSAs generated by its For a TTZ, its topology is represented by the LSAs generated by its
TTZ routers for the link states in the TTZ, which include TTZ router TTZ routers for the link states in the TTZ, which include TTZ router
LSAs by TTZ edge routers, TTZ indication LSAs by TTZ internal LSAs by TTZ edge routers, TTZ indication LSAs by TTZ-internal
routers, normal router LSAs and network LSAs. The TTZ router LSAs routers, normal router LSAs, and network LSAs. The TTZ router LSAs
and TTZ indication LSAs MUST be generated after advertising TTZ and TTZ indication LSAs MUST be generated after advertising TTZ
topology information for migration is triggered. topology information for migration is triggered.
A TTZ edge router generates a TTZ router LSA that has a TTZ ID TLV A TTZ edge router generates a TTZ router LSA that has a TTZ ID TLV
and a TTZ Router TLV. The former includes the ID of the TTZ to which and a TTZ Router TLV. The former includes the ID of the TTZ to which
the router belongs and flag E set to 1, which indicates the the router belongs and flag E is set to 1, which indicates the
originator of the LSA is a TTZ Edge router. The TTZ router TLV originator of the LSA is a TTZ edge router. The TTZ Router TLV
contains the TTZ external links to the routers outside of the TTZ and contains the TTZ-external links to the routers outside of the TTZ and
the TTZ internal links to the routers inside the TTZ as described in the TTZ-internal links to the routers inside of the TTZ as described
section 6. The TTZ router LSA containing this TLV is constructed and in Section 6. The TTZ router LSA containing this TLV is constructed
advertised within the TTZ. and advertised within the TTZ.
A TTZ internal router generates a TTZ indication LSA that has a TTZ A TTZ-internal router generates a TTZ indication LSA that has a TTZ
ID TLV containing the ID of the TTZ to which the router belongs and ID TLV containing the ID of the TTZ to which the router belongs and
flag E set to 0, which indicates the originator of the LSA is a TTZ flag E is set to 0, which indicates the originator of the LSA is a
internal router. For a TTZ internal router, its regular Router LSA TTZ-internal router. For a TTZ-internal router, its regular router
is still generated. If a TTZ router is a Designated Router (DR), it LSA is still generated. If a TTZ router is a Designated Router (DR),
originates its regular network LSA. it originates its regular network LSA.
After receiving a trigger to migrate to TTZ such as a TTZ control LSA After receiving a trigger to migrate to TTZ such as a TTZ control LSA
with OP for M, a TTZ edge router MUST originate its normal router LSA with OP for M, a TTZ edge router MUST originate its normal router LSA
for virtualizing a TTZ, which comprises three groups of links in for virtualizing a TTZ, which comprises three groups of links in
general. general.
The first group are the router links connecting the TTZ external The first group is the router links connecting the TTZ-external
routers. These router links are normal router links. There is a routers. These router links are normal router links. There is a
router link for every adjacency between this TTZ edge router and a router link for every adjacency between this TTZ edge router and a
TTZ external router. TTZ-external router.
The second group are the "virtual" router links connecting to the The second group is the "virtual" router links connecting to the
other TTZ edge routers. For each of the other TTZ edge routers, other TTZ edge routers. For each of the other TTZ edge routers,
there is a corresponding point-to-point router link to it from this there is a corresponding point-to-point (P2P) router link to it from
TTZ edge router. The cost of the link is the cost of the shortest this TTZ edge router. The cost of the link is the cost of the
path from this TTZ edge router to the other TTZ edge router within shortest path from this TTZ edge router to the other TTZ edge router
the TTZ. within the TTZ.
In addition, the LSA may contain a third group of links, which are In addition, the LSA may contain a third group of links, which are
the stub links for the loopback addresses inside the TTZ to be the stub links for the loopback addresses inside the TTZ to be
accessed by nodes outside of the TTZ. accessed by nodes outside of the TTZ.
7.1. TTZ Migration Process 7.1. TTZ Migration Process
After migration to TTZ is triggered, a TTZ router computes routes After migration to TTZ is triggered, a TTZ router computes routes
using its TTZ topology (refer to section 10) and a TTZ edge router using its TTZ topology (refer to Section 10), and a TTZ edge router
originates its normal router LSA for virtualizing the TTZ in two originates its normal router LSA for virtualizing the TTZ in two
steps: steps:
Step 1: The router updates its router LSA by adding a point-to-point Step 1: The router updates its router LSA by adding a P2P link to
link to each of the other known edge routers in the TTZ, and also each of the other known edge routers in the TTZ and also by adding
by adding the stub links for the loopback addresses in the TTZ to the stub links for the loopback addresses in the TTZ to be
be accessed outside of the TTZ according to configuration policies accessed outside of the TTZ according to configuration policies of
of operators. operators.
Step 2: After MaxLSAGenAdvTime (0.3 s) or sr-time + MaxLSAAdvTime Step 2: After MaxLSAGenAdvTime (0.3 s) or sr-time + MaxLSAAdvTime
(0.1 s), it removes the TTZ links from its router LSA, where sr- (0.1 s), it removes the TTZ links from its router LSA, where
time is the time from updating its router LSA to receiving the ack sr-time is the time from updating its router LSA to receiving the
for its router LSA and receiving the updated router LSAs ack for its router LSA and receiving the updated router LSAs
originated by the other TTZ edge routers. In other words, it originated by the other TTZ edge routers. In other words, it
removes the TTZ links from its router LSA after sending its removes the TTZ links from its router LSA after sending its
updated router LSA and receiving the updated router LSAs updated router LSA and receiving the updated router LSAs
originated by the other TTZ edge routers for MaxLSAAdvTime or originated by the other TTZ edge routers for MaxLSAAdvTime or
after sending its updated router LSA for MaxLSAGenAdvTime. after sending its updated router LSA for MaxLSAGenAdvTime.
MaxLSAAdvTime and MaxLSAGenAdvTime SHOULD be set to 100ms and MaxLSAAdvTime and MaxLSAGenAdvTime SHOULD be set to 100 ms and 300
300ms respectively, but MAY be configurable. The former is the ms, respectively, but MAY be configurable. The former is the
maximum time for an LSA to be advertised to all the routers in an maximum time for an LSA to be advertised to all the routers in an
area. The latter is the maximum time for all TTZ router LSAs to area. The latter is the maximum time for all TTZ router LSAs to
be generated by all TTZ edge routers and advertised to all the be generated by all TTZ edge routers and advertised to all the
routers in an area after a first TTZ router LSA is generated. routers in an area after a first TTZ router LSA is generated.
This is to avoid a possible short route down or change in a TTZ This is to avoid a possible route down or change in a TTZ-external
external router while the TTZ is being virtualized. If each TTZ edge router while the TTZ is being virtualized. If each TTZ edge router
router originates its router LSA by adding its point-to-point links originates its router LSA by adding its P2P links to the other TTZ
to the other TTZ edge routers and removing its TTZ links in one step, edge routers and removing its TTZ links in one step, a route taking a
a route taking a path through the TTZ in the TTZ external router may path through the TTZ in the TTZ-external router may be down or
be down or changed before all the router LSAs generated by the TTZ changed before all the router LSAs generated by the TTZ edge routers
edge routers reach the TTZ external router. When the TTZ external reach the TTZ-external router. When the TTZ-external router computes
router computes routes with some router LSAs originated by the TTZ routes with some router LSAs originated by the TTZ edge routers,
edge routers, bi-directional check for some of the point-to-point bidirectional checks for some of the P2P links will fail. Thus, the
links will fail. Thus the route taking the path through the shortest route taking the path through the shortest path for the P2P link
path for the point-to-point link failing the bi-directional check failing the bidirectional check will be down or changed.
will be down or changed.
To roll back from a TTZ smoothly after receiving a trigger to roll To roll back from a TTZ smoothly after receiving a trigger to roll
back from TTZ, a TTZ edge router MUST originate its normal router LSA back from TTZ, a TTZ edge router MUST originate its normal router LSA
in the above two steps in a reverse way. in the above two steps in a reverse way.
Step 1: Initially, it updates its normal router LSA by adding the Step 1: Initially, it updates its normal router LSA by adding the
normal links for the links configured as TTZ links into the LSA. normal links for the links configured as TTZ links into the LSA.
Step 2: It then removes the point-to-point links to the other edge Step 2: It then removes the P2P links to the other edge routers of
routers of the TTZ for virtualizing the TTZ and the stub links for the TTZ for virtualizing the TTZ and the stub links for the
the loopback addresses from its updated router LSA after sending loopback addresses from its updated router LSA after sending its
its updated router LSA and receiving the updated router LSAs updated router LSA and receiving the updated router LSAs
originated by the other TTZ edge routers for MaxLSAAdvTime or originated by the other TTZ edge routers for MaxLSAAdvTime or
after sending its updated router LSA for MaxLSAGenAdvTime. after sending its updated router LSA for MaxLSAGenAdvTime.
8. Establishing Adjacencies 8. Establishing Adjacencies
This section describes the TTZ adjacencies. This section describes the TTZ adjacencies.
8.1. Discovery of TTZ Neighbors 8.1. Discovery of TTZ Neighbors
For two routers A and B connected by a P2P link and having a normal When two routers A and B are connected by a P2P link and have a
adjacency, they TTZ discover each other through a TTZ LSA of LS Type normal adjacency, they TTZ discover each other through a TTZ LSA of
9 with a TTZ ID TLV. We call this LSA D-LSA for short. LS Type 9 with a TTZ ID TLV. We call this LSA D-LSA for short.
If two ends of the link have different TTZ IDs or only one end is If two ends of the link have different TTZ IDs or only one end is
configured with TTZ ID, TTZ adjacency over the link MUST NOT be configured with a TTZ ID, TTZ adjacency over the link MUST NOT be
"formed". "formed".
If two ends of the link have the same TTZ ID and Z flag value, A and If two ends of the link have the same TTZ ID and Z flag value, A and
B are TTZ neighbors. The following is a sequence of events related B are TTZ neighbors. The following is a sequence of events related
to TTZ for this case. to TTZ for this case.
A B A B
Configure TTZ Configure TTZ Configure TTZ Configure TTZ
D-LSA (TTZ-ID=100) D-LSA (TTZ ID=100)
----------------------> Same TTZ ID and Z ----------------------> Same TTZ ID and Z
A is B's TTZ Neighbor A is B's TTZ Neighbor
D-LSA (TTZ-ID=100) D-LSA (TTZ ID=100)
Same TTZ ID and Z <---------------------- Same TTZ ID and Z <----------------------
B is A's TTZ Neighbor B is A's TTZ Neighbor
A sends B a D-LSA with TTZ-ID after the TTZ is configured on it. B A sends B a D-LSA with TTZ ID after the TTZ is configured on it. B
sends A a D-LSA with TTZ-ID after the TTZ is configured on it. sends A a D-LSA with TTZ ID after the TTZ is configured on it.
When A receives the D-LSA from B and determines they have the same When A receives the D-LSA from B and determines they have the same
TTZ ID and Z flag value, B is A's TTZ neighbor. A also sends B all TTZ ID and Z flag value, B is A's TTZ neighbor. A also sends B all
the TTZ LSAs it has and originates its TTZ LSA when one of the the TTZ LSAs it has and originates its TTZ LSA when one of the
following conditions is met. following conditions is met.
o Z = 0 and there is a TTZ LSA with OP for T. o Z = 0 and there is a TTZ LSA with OP for T.
o Z = 1. o Z = 1.
B is symmetric to A and acts similarly to A. B is symmetric to A and acts similarly to A.
If two ends of the link have the same TTZ ID but Z flags are If two ends of the link have the same TTZ ID but the Z flags are
different, a TTZ adjacency over the link MUST be "formed" in the different, a TTZ adjacency over the link MUST be "formed" in the
following steps. Suppose that A has migrated to TTZ and B has not following steps. Suppose that A has migrated to TTZ and B has not
(i.e., flag Z in A's D-LSA is 1 and flag Z in B's D-LSA is 0). (i.e., flag Z in A's D-LSA is 1, and flag Z in B's D-LSA is 0).
A B A B
Configure TTZ Configure TTZ Configure TTZ Configure TTZ
D-LSA(TTZ-ID=100,Z=1) D-LSA(TTZ ID=100,Z=1)
----------------------> Same TTZ ID, but ----------------------> Same TTZ ID, but
different Z different Z
A is B's TTZ Neighbor A is B's TTZ Neighbor
D-LSA(TTZ-ID=100,Z=0) D-LSA(TTZ ID=100,Z=0)
Same TTZ ID, but <---------------------- Same TTZ ID, but <----------------------
different Z different Z
B is A's TTZ Neighbor B is A's TTZ Neighbor
TTZ LSAs TTZ LSAs
-----------------------> ----------------------->
TTZ LSAs TTZ LSAs
<----------------------- <-----------------------
When A receives the D-LSA from B and determines they have the same When A receives the D-LSA from B and determines they have the same
TTZ ID but its Z = 1 and B's Z = 0, A sends B all the TTZ LSAs it has TTZ ID but its Z = 1 and B's Z = 0, A sends B all the TTZ LSAs it has
and triggers B to migrate to TTZ. A updates and sends B its D-LSA by and triggers B to migrate to TTZ. A updates and sends B its D-LSA by
adding an TTZ Options TLV with OP for M after sending B all the TTZ adding a TTZ Options TLV with OP for M after sending B all the TTZ
LSAs. LSAs.
D-LSA(TTZ-ID=100,OP=M) D-LSA(TTZ ID=100,OP=M)
Add TTZ Options -----------------------> Migrate to TTZ Add TTZ Options -----------------------> Migrate to TTZ
TLV with OP for M TLV with OP for M
D-LSA(TTZ-ID=100,Z=1) Migrated to TTZ D-LSA(TTZ ID=100,Z=1) Migrated to TTZ
<----------------------- Set Z=1 <----------------------- Set Z=1
D-LSA(TTZ-ID=100,Z=1) D-LSA(TTZ ID=100,Z=1)
Remove -----------------------> Remove ----------------------->
TTZ Options TLV TTZ Options TLV
When B receives the D-LSA from A and determines they have the same When B receives the D-LSA from A and determines they have the same
TTZ ID but its Z = 0 and A's Z = 1, B sends A all the TTZ LSAs it TTZ ID but its Z = 0 and A's Z = 1, B sends A all the TTZ LSAs it
has. has.
When B receives the D-LSA from A with OP for M, it starts to migrate When B receives the D-LSA from A with OP for M, it starts to migrate
to TTZ. B updates and advertises its LSAs as needed. to TTZ. B updates and advertises its LSAs as needed.
After receiving B's D-LSA with Z = 1, A updates and sends B its D-LSA After receiving B's D-LSA with Z = 1, A updates and sends B its D-LSA
by removing the TTZ Options TLV. It also updates and advertises its by removing the TTZ Options TLV. It also updates and advertises its
LSAs as needed. LSAs as needed.
For a number of routers connected through a broadcast link and having When a number of routers connected through a broadcast link have
normal adjacencies among them, they also TTZ discover each other normal adjacencies among them, they also TTZ discover each other
through D-LSAs. The DR (Designated Router) for the link MUST "form" through D-LSAs. The Designated Router (DR) for the link MUST "form"
TTZ adjacencies with the other routers if all the routers attached to TTZ adjacencies with the other routers if all the routers attached to
the link have the same TTZ ID configured on the connections to the the link have the same TTZ ID configured on the connections to the
link. Otherwise, the DR MUST NOT "form" any TTZ adjacency with any link. Otherwise, the DR MUST NOT "form" any TTZ adjacency with any
router attached to the link. router attached to the link.
For a number of routers connected through a broadcast link and having When a number of routers connected through a broadcast link have TTZ
TTZ adjacencies among them, if a mis-configured router is introduced adjacencies among them, if a misconfigured router is introduced on
on the broadcast link, the DR for the link MUST NOT "form" any TTZ the broadcast link, the DR for the link MUST NOT "form" any TTZ
adjacency with this mis-configured router. adjacency with this misconfigured router.
For routers connected via a link without any adjacency among them, For routers connected via a link without any adjacency among them,
they TTZ discover each other through D-LSAs in the same way as they TTZ discover each other through D-LSAs in the same way as
described above after they form a normal adjacency. described above after they form a normal adjacency.
A TTZ adjacency over a link MUST be removed when one of the following A TTZ adjacency over a link MUST be removed when one of the following
events happens. events happens.
o TTZ ID on one end of the link is changed to a different one. o TTZ ID on one end of the link is changed to a different one.
skipping to change at page 17, line 18 skipping to change at page 17, line 16
o The D-LSA is not received after the D-LSA-MAX-RETRANSMIT-TIME or o The D-LSA is not received after the D-LSA-MAX-RETRANSMIT-TIME or
is explicitly flushed. The D-LSA-MAX-RETRANSMIT-TIME SHOULD be is explicitly flushed. The D-LSA-MAX-RETRANSMIT-TIME SHOULD be
set to 60 minutes, but MAY be configurable. set to 60 minutes, but MAY be configurable.
o Normal adjacency over the link is down. o Normal adjacency over the link is down.
When the TTZ ID on one end of the link is removed, the corresponding When the TTZ ID on one end of the link is removed, the corresponding
D-LSA is flushed. D-LSA is flushed.
8.2. Adjacency between TTZ Edge and TTZ External Router 8.2. Adjacency between TTZ Edge and TTZ-External Router
A TTZ edge router forms an adjacency with any TTZ external router to A TTZ edge router forms an adjacency with any TTZ-external router to
which it is connected. which it is connected.
When the TTZ edge router synchronizes its link state database with When the TTZ edge router synchronizes its link-state database with
the TTZ external router, it sends the TTZ external router the the TTZ-external router, it sends the TTZ-external router the
information about all the LSAs except for the LSAs belonging to the information about all the LSAs except for the LSAs belonging to the
TTZ that are hidden from any router outside of the TTZ. TTZ that are hidden from any router outside of the TTZ.
At the end of the link state database synchronization, the TTZ edge At the end of the link-state database synchronization, the TTZ edge
router originates its own router LSA for virtualizing the TTZ and router originates its own router LSA for virtualizing the TTZ and
sends this LSA to its adjacent routers including the TTZ external sends this LSA to its adjacent routers, including the TTZ-external
router. router.
9. Advertisement of LSAs 9. Advertisement of LSAs
LSAs can be divided into a couple of classes according to their LSAs can be divided into a couple of classes according to their
Advertisements. The first class of LSAs is advertised within a TTZ. Advertisements. The first class of LSAs is advertised within a TTZ.
The second is advertised through a TTZ. The second is advertised through a TTZ.
9.1. Advertisement of LSAs within TTZ 9.1. Advertisement of LSAs within TTZ
Any LSA about a link state in a TTZ is advertised only within the Any LSA about a link state in a TTZ is advertised only within the
TTZ. It is not advertised to any router outside of the TTZ. For TTZ. It is not advertised to any router outside of the TTZ. For
example, a router LSA generated for a TTZ internal router is example, a router LSA generated for a TTZ-internal router is
advertised only within the TTZ. advertised only within the TTZ.
Any network LSA generated for a broadcast or NBMA network in a TTZ is Any network LSA generated for a broadcast or Non-Broadcast Multi-
advertised only within the TTZ. It is not advertised outside of the Access (NBMA) network in a TTZ is advertised only within the TTZ. It
TTZ. is not advertised outside of the TTZ.
Any opaque LSA generated for a TTZ internal TE link is advertised Any opaque LSA generated for a TTZ-internal TE link is advertised
only within the TTZ. only within the TTZ.
After migrating to TTZ, every edge router of a TTZ MUST NOT advertise After migrating to TTZ, every edge router of a TTZ MUST NOT advertise
any LSA about a link state in the TTZ to any router outside of the any LSA about a link state in the TTZ to any router outside of the
TTZ. The TTZ edge router determines whether an LSA is about a TTZ TTZ. The TTZ edge router determines whether an LSA is about a TTZ-
internal link state by checking if the advertising router of the LSA internal link state by checking if the advertising router of the LSA
is a TTZ internal router (i.e., there is a TTZ indication LSA is a TTZ-internal router (i.e., there is a TTZ indication LSA
generated by the TTZ internal router and having the same advertising generated by the TTZ-internal router that has the same advertising
router). router).
For any TTZ LSA originated by a router within the TTZ, every edge For any TTZ LSA originated by a router within the TTZ, every edge
router of the TTZ MUST NOT advertise it to any router outside of the router of the TTZ MUST NOT advertise it to any router outside of the
TTZ. TTZ.
9.2. Advertisement of LSAs through TTZ 9.2. Advertisement of LSAs through TTZ
Any LSA about a link state outside of a TTZ received by an edge Any LSA about a link state outside of a TTZ received by an edge
router of the TTZ is advertised using the TTZ as transit. For router of the TTZ is advertised using the TTZ as transit. For
example, when an edge router of a TTZ receives an LSA from a router example, when an edge router of a TTZ receives an LSA from a router
outside of the TTZ, it floods it to its neighboring routers both outside of the TTZ, it floods it to its neighboring routers both
inside the TTZ and outside of the TTZ. This LSA may be any LSA such inside and outside of the TTZ. This LSA may be any LSA such as a
as a router LSA that is advertised within an OSPF area. router LSA that is advertised within an OSPF area.
The routers in the TTZ continue to flood the LSA. When another edge The routers in the TTZ continue to flood the LSA. When another edge
router of the TTZ receives the LSA, it floods the LSA to its router of the TTZ receives the LSA, it floods the LSA to its
neighboring routers both outside of the TTZ and inside the TTZ. neighboring routers both inside and outside of the TTZ.
10. Computation of Routing Table 10. Computation of Routing Table
After a router migrates to TTZ, the computation of the routing table After a router migrates to TTZ, the computation of the routing table
on the router is the same as that described in RFC 2328 section 16 on the router is the same as that described in RFC 2328, Section 16
with one exception. The router in a TTZ ignores the router LSAs with one exception. The router in a TTZ ignores the router LSAs
generated by the TTZ edge routers for virtualizing the TTZ. It generated by the TTZ edge routers for virtualizing the TTZ. It
computes routes using the TTZ router LSAs and the regular LSAs, computes routes using the TTZ router LSAs and the regular LSAs,
excluding the router LSAs for virtualizing the TTZ. That is that it excluding the router LSAs for virtualizing the TTZ. That is, it
computes routes using the TTZ topology and the topology outside of computes routes using the TTZ topology and the topology outside of
the TTZ, excluding the links for virtualizing the TTZ. the TTZ, excluding the links for virtualizing the TTZ.
11. Operations 11. Operations
11.1. Configuring TTZ 11.1. Configuring TTZ
This section proposes some options for configuring a TTZ. This section proposes some options for configuring a TTZ.
1. Configuring TTZ on Every Link in TTZ 1. Configuring TTZ on Every Link in TTZ
If every link in a TTZ is configured with a same TTZ ID as a TTZ If every link in a TTZ is configured with the same TTZ ID as a TTZ
link, the TTZ is determined. A router with some links in a TTZ and link, the TTZ is determined. A router with some links in a TTZ and
some links not in this TTZ is a TTZ edge router. A router with all some links not in this TTZ is a TTZ edge router. A router with all
its links in a TTZ is a TTZ internal router. its links in a TTZ is a TTZ-internal router.
2. Configuring TTZ on Routers in TTZ 2. Configuring TTZ on Routers in TTZ
A same TTZ ID is configured on every TTZ internal router in a TTZ, A same TTZ ID is configured on every TTZ-internal router in a TTZ and
and on every TTZ edge router's links connecting to the routers in the on every TTZ edge router's links connecting to the routers in the
TTZ. TTZ.
A router configured with the TTZ ID on some of its links is a TTZ A router configured with the TTZ ID on some of its links is a TTZ
edge router. A router configured with the TTZ ID only is a TTZ edge router. A router configured with the TTZ ID only is a TTZ-
internal router. All the links on a TTZ internal router are TTZ internal router. All the links on a TTZ-internal router are TTZ
links. This option is simpler than option 1 above. links. This option is simpler than option 1 above.
For a TTZ edge router X with different TTZ IDs on its different For a TTZ edge router X with different TTZ IDs on its different
links, router X connects two or more different TTZs. In this case, links, router X connects two or more different TTZs. In this case,
router X originates its router LSA for virtualizing the TTZs. This router X originates its router LSA for virtualizing the TTZs. This
LSA includes the normal links connecting to routers outside of these LSA includes the normal links connecting to routers outside of these
TTZs and the virtual links to the other edge routers of each of these TTZs and the virtual links to the other edge routers of each of these
TTZs. Router X also originates its TTZ router LSA for each of TTZs. TTZs. Router X also originates its TTZ router LSA for each of the
The TTZ router LSA for TTZ N includes the links to routers outside of TTZs. The TTZ router LSA for TTZ N includes the links to the routers
these TTZs, the virtual links to the other edge routers of the other outside of these TTZs, the virtual links to the other edge routers of
TTZs, and the TTZ links to the routers in TTZ N. the other TTZs, and the TTZ links to the routers in TTZ N.
11.2. Migration to TTZ 11.2. Migration to TTZ
For a group of routers and a number of links connecting the routers For a group of routers and a number of links connecting the routers
in an area, making them transfer to work as a TTZ without any service in an area, making them transfer to work as a TTZ without any service
interruption takes a few of steps or stages. interruption takes a few steps or stages.
At first, a user configures the TTZ feature on every router in the At first, a user configures the TTZ feature on every router in the
TTZ. In this stage, a router does not originate or advertise its TTZ TTZ. In this stage, a router does not originate or advertise its TTZ
topology information. It will discover its TTZ neighbors. topology information. It will discover its TTZ neighbors.
Secondly, after configuring the TTZ, a user issues a configuration on Second, after configuring the TTZ, a user issues a configuration on
one router in the TTZ, which triggers every router in the TTZ to one router in the TTZ, which triggers every router in the TTZ to
generate and advertise TTZ information among the routers in the TTZ. generate and advertise TTZ information among the routers in the TTZ.
When the router receives the configuration, it originates a TTZ When the router receives the configuration, it originates a TTZ
control LSA with OP for T (indicating TTZ information generation and control LSA with OP for T (indicating TTZ information generation and
advertisement for migration). It also originates its TTZ LSA such as advertisement for migration). It also originates its TTZ LSA, such
TTZ router LSA or TTZ indication LSA, and advertises the LSA to its as TTZ router LSA or TTZ indication LSA, and advertises the LSA to
TTZ neighbors. When another router in the TTZ receives the LSA with its TTZ neighbors. When another router in the TTZ receives the LSA
OP for T, it originates its TTZ LSA. In this stage, every router in with OP for T, it originates its TTZ LSA. In this stage, every
the TTZ has dual roles. One is to function as a normal router. The router in the TTZ has dual roles. One is to function as a normal
other is to generate and advertise TTZ information. router. The other is to generate and advertise TTZ information.
Thirdly, a user checks whether a router in the TTZ is ready for Third, a user checks whether a router in the TTZ is ready for
migration to TTZ. A router in the TTZ is ready after it has received migration to TTZ. A router in the TTZ is ready after it has received
all the TTZ LSAs including TTZ router LSAs from TTZ edge routers and all the TTZ LSAs, including TTZ router LSAs from TTZ edge routers and
TTZ indication LSAs from TTZ internal routers. This information may TTZ indication LSAs from TTZ-internal routers. This information may
be displayed on a router through a configuration. be displayed on a router through a configuration.
And then a user activates the TTZ through using a configuration such Then, a user activates the TTZ through using a configuration such as
as migrate to TTZ on one router in the TTZ. The router migrates to migrate to TTZ on one router in the TTZ. The router migrates to TTZ,
TTZ, generates and advertises a TTZ control LSA with OP for M generates and advertises a TTZ control LSA with OP for M (indicating
(indicating Migrating to TTZ) after it receives the configuration. Migrating to TTZ) after it receives the configuration. After another
After another router in the TTZ receives the TTZ control LSA with OP router in the TTZ receives the TTZ control LSA with OP for M, it also
for M, it also migrates to TTZ. Thus, activating the TTZ on one TTZ migrates to TTZ. Thus, activating the TTZ on one TTZ router
router propagates to every router in the TTZ, which migrates to TTZ. propagates to every router in the TTZ, which migrates to TTZ.
For an edge router of the TTZ, migrating to work as a TTZ router For an edge router of the TTZ, migrating to work as a TTZ router
comprises generating a router LSA to virtualize the TTZ and flooding comprises generating a router LSA to virtualize the TTZ and flooding
this LSA to all its neighboring routers in two steps as described in this LSA to all its neighboring routers in two steps as described in
section 7. Section 7.
In normal operations for migration to TTZ and rollback from TTZ, a In normal operations for migration to TTZ and rollback from TTZ, a
user issues a series of configurations according to certain user issues a series of configurations according to certain
procedures. In an abnormal case, for example two conflicting procedures. In an abnormal case, for example, two conflicting
configurations are issued on two TTZ routers in a TTZ at the same configurations are issued on two TTZ routers in a TTZ at the same
time, a TTZ router issues an error and logs the error when it detects time, and a TTZ router issues an error and logs the error when it
a conflict. detects a conflict.
A conflicting configuration may be detected on a router on which the A conflicting configuration may be detected on a router on which the
configuration is issued. Thus some abnormal cases may be prevented. configuration is issued. Thus, some abnormal cases may be prevented.
When a configuration for migration/rollback is issued on a router, When a configuration for migration/rollback is issued on a router,
the router checks whether it is in a correct sequence of the router checks whether it is in a correct sequence of
configurations for migration/rollback through using the information configurations for migration/rollback through using the information
it has. For migrating a part of an area to a TTZ, the correct it has. For migrating a part of an area to a TTZ, the correct
sequence of configurations is as follows in general: sequence of configurations is in general as follows:
1) configure TTZ on every router in the part of the area to be 1) configure TTZ on every router in the part of the area to be
migrated to TTZ; migrated to TTZ;
2) configure on one router in the TTZ to trigger every router in the 2) configure on one router in the TTZ to trigger every router in the
TTZ to generate and advertise TTZ information for migration; and TTZ to generate and advertise TTZ information for migration; and
3) configure on one router in the TTZ to trigger every router in the 3) configure on one router in the TTZ to trigger every router in the
TTZ to migrate to TTZ. TTZ to migrate to TTZ.
After receiving a configuration on a router to migrate to TTZ, which After receiving a configuration on a router to migrate to TTZ, which
is for 3), the router checks whether 2) is performed through checking is for 3), the router determines whether 2) is performed by checking
if it has received/originated TTZ LSAs. If it has not, it issues an if it has received/originated TTZ LSAs. If it has not, it issues an
error to an operator (generation and advertisement of TTZ information error to an operator (generation and advertisement of TTZ information
for migration to TTZ is not done yet) and rejects the configuration for migration to TTZ is not done yet) and rejects the configuration
at this time. at this time.
After a router receives a TTZ LSA with OP for M for 3) from another After a router receives a TTZ LSA with OP for M for 3) from another
router, it checks whether 2) is performed through checking if it has router, it determines whether 2) is performed by checking if it has
received/originated TTZ LSAs. If it has not, it issues an error and received/originated TTZ LSAs. If it has not, it issues an error and
logs the error, and does not migrate to TTZ. In this case, it does logs the error, and it does not migrate to TTZ. In this case, it
not originate its router LSA for virtualizing the TTZ if it is a TTZ does not originate its router LSA for virtualizing the TTZ if it is a
edge router. TTZ edge router.
After receiving a configuration on a router to generate and advertise After receiving a configuration on a router to generate and advertise
TTZ information, which is for 2), the router checks whether 1) is TTZ information, which is for 2), the router determines whether 1) is
performed through checking if TTZ is configured on it. If it is not, performed by checking if TTZ is configured on it. If it is not, it
it issues an error to an operator (TTZ is not configured on it yet) issues an error to an operator (TTZ is not configured on it yet) and
and rejects the configuration at this time. rejects the configuration at this time.
For rolling back from TTZ, the correct sequence of configurations is For rolling back from TTZ, the correct sequence of configurations is
below. below.
1) configure on one router in the TTZ to trigger every router in the 1) configure on one router in the TTZ to trigger every router in the
TTZ to advertise normal LSAs and stop advertising TTZ LSAs; TTZ to advertise normal LSAs and stop advertising TTZ LSAs; and
2) configure on one router in the TTZ to trigger every router in the 2) configure on one router in the TTZ to trigger every router in the
TTZ to roll back from TTZ. TTZ to roll back from TTZ.
After receiving a configuration on a router to roll back from TTZ, After receiving a configuration on a router to roll back from TTZ,
which is for 2), the router checks whether 1) is performed through which is for 2), the router determines whether 1) is performed by
checking if it has received TTZ LSA with OP for N. If it has not, it checking if it has received TTZ LSA with OP for N. If it has not, it
issues an error to an operator (advertise normal LSAs and stop issues an error to an operator (advertise normal LSAs and stop
advertising TTZ LSAs for rolling back from TTZ is not done yet) and advertising TTZ LSAs as rolling back from TTZ is not done yet) and
rejects the configuration at this time. rejects the configuration at this time.
After a router receives a TTZ LSA with OP for R for 2) from another After a router receives a TTZ LSA with OP for R for 2) from another
router, it checks whether 1) is performed through checking if it has router, it determines whether 1) is performed by checking if it has
received TTZ LSA with OP for N. If it has not, it issues an error and received TTZ LSA with OP for N. If it has not, it issues an error
logs the error, and does not roll back from TTZ. and logs the error, and it does not roll back from TTZ.
After receiving a configuration on a router to advertise normal LSAs After receiving a configuration on a router to advertise normal LSAs
and stop advertising TTZ LSAs for rolling back from TTZ, which is for and stop advertising TTZ LSAs for rolling back from TTZ, which is for
1), the router checks whether it has any TTZ LSAs. If it does not, 1), the router checks whether it has any TTZ LSAs. If it does not,
it issues an error to an operator (no TTZ to be rolled back) and it issues an error to an operator (no TTZ to be rolled back) and
rejects the configuration at this time. rejects the configuration at this time.
11.3. Adding a Router into TTZ 11.3. Adding a Router into TTZ
When a non TTZ router (say R1) is connected via a P2P link to a When a non-TTZ router (say R1) is connected via a P2P link to a
migrated TTZ router (say T1), and there is a normal adjacency between migrated TTZ router (say T1), and there is a normal adjacency between
them over the link, a user can configure TTZ on both ends of the link them over the link, a user can configure TTZ on both ends of the link
to add R1 into the TTZ to which T1 belongs. They TTZ discover each to add R1 into the TTZ to which T1 belongs. They TTZ discover each
other as described in section 8. other as described in Section 8.
When a number of non TTZ routers are connected via a broadcast or When a number of non-TTZ routers are connected via a broadcast or
NBMA link to a migrated TTZ router (say T1), and there are normal NBMA link to a migrated TTZ router (say T1), and there are normal
adjacencies among them, a user configures TTZ on the connection to adjacencies among them, a user configures TTZ on the connection to
the link on every router to add the non TTZ routers into the TTZ to the link on every router to add the non-TTZ routers into the TTZ to
which T1 belongs. The DR for the link "forms" TTZ adjacencies with which T1 belongs. The DR for the link "forms" TTZ adjacencies with
the other routers connected to the link if they all have the same TTZ the other routers connected to the link if they all have the same TTZ
ID configured for the link. This is determined through the TTZ ID configured for the link. This is determined through the TTZ
discovery process described in section 8. discovery process described in Section 8.
12. Manageability Considerations 12. Manageability Considerations
Section 11 (Operations) outlines the configuration process and Section 11 ("Operations") outlines the configuration process and
deployment scenarios for a TTZ. The configurable item is enabling a deployment scenarios for a TTZ. The configurable item is enabling a
TTZ on a router and/or an interface on a router. The TTZ function TTZ on a router and/or an interface on a router. The TTZ function
may be controlled by a policy module and assigned a suitable user may be controlled by a policy module and assigned a suitable user
privilege level to enable. A suitable model may be required to privilege level to enable. A suitable model may be required to
verify the TTZ status on routers participating in the TTZ, including verify the TTZ status on routers participating in the TTZ, including
their role as internal or edge TTZ router. The mechanisms defined in their role as an internal or edge TTZ router. The mechanisms defined
this document do not imply any new liveness detection and monitoring in this document do not imply any new liveness detection and
requirements in addition to those indicated in [RFC2328]. monitoring requirements in addition to those indicated in [RFC2328].
13. Security Considerations 13. Security Considerations
A notable beneficial security aspect of TTZ is that the TTZ is A notable beneficial security aspect of TTZ is that the TTZ is
enclosed in a single area, and TTZ could be used to mask the internal enclosed in a single area, and TTZ could be used to mask the internal
topology. External routers that are not participating in the TTZ topology. External routers that are not participating in the TTZ
will not be aware of the internal TTZ topology. It should be noted will not be aware of the internal TTZ topology. It should be noted
that a malicious node could inject TTZ LSAs with the OP Field set to that a malicious node could inject TTZ LSAs with the OP field set to
M or R, which could trigger the migration into/from a TTZ and may M or R, which could trigger the migration into/from a TTZ and may
result in the isolation of some routers in the network. Good result in the isolation of some routers in the network. Good
security practice might reuse the OSPF authentication and other security practice might reuse the OSPF authentication and other
security mechanisms described in [RFC2328] and [RFC7474], to mitigate security mechanisms described in [RFC2328] and [RFC7474] to mitigate
this type of risk. this type of risk.
14. IANA Considerations 14. IANA Considerations
Under Registry Name: Opaque Link-State Advertisements (LSA) Option Under the registry name "Opaque Link-State Advertisements (LSA)
Types [RFC5250], IANA is requested to assign a new Opaque type Option Types" [RFC5250], IANA has assigned a new Opaque Type registry
registry value for Topology-Transparent Zone (TTZ) LSA as follows: value for TTZ LSA as follows:
+====================+===============+=======================+ +====================+===============+=======================+
| Registry Value | Opaque Type | reference | | Registry Value | Opaque Type | reference |
+====================+===============+=======================+ +====================+===============+=======================+
| IANA TBD | TTZ LSA | This document | | 9 | TTZ LSA | This document |
| (9 Suggested) | | |
+--------------------+---------------+-----------------------+ +--------------------+---------------+-----------------------+
IANA is to create and maintain a new registry: IANA has created and will maintain a new registry:
o OSPFv2 TTZ LSA TLVs
o OSPFv2 TTZ LSA TLVs
Initial values for the registry are given below. The future Initial values for the registry are given below. The future
assignments are to be made through IETF Review. assignments are to be made through IETF Review [RFC5226].
Value OSPFv2 TTZ LSA TLV Name Definition Value OSPFv2 TTZ LSA TLV Name Definition
----- ----------------------- ---------- ----- ----------------------- ----------
0 Reserved 0 Reserved
1 TTZ ID TLV see section 6.2 1 TTZ ID TLV see Section 6.2
2 TTZ Router TLV see section 6.3 2 TTZ Router TLV see Section 6.3
3 TTZ Options TLV see section 6.4 3 TTZ Options TLV see Section 6.4
4-32767 Unassigned 4-32767 Unassigned
32768-65535 Reserved 32768-65535 Reserved
15. Contributors and Other Authors 15. References
1. Other Authors
Mehmet Toy
USA
Email: mehmet.toy@verizon.com
Gregory Cauchie
FRANCE
Email: greg.cauchie@gmail.com
Anil Kumar S N
India
Email: anil.sn@huawei.com
Ning So
USA
Email: ningso01@gmail.com
Lei Liu
USA
Email: lliu@us.fujitsu.com
2. Contributors
Veerendranatha Reddy Vallem
India
Email: veerendranatharv@huawei.com
William McCall
USA
will.mccall@rightside.co
16. Acknowledgement
The authors would like to thank Acee Lindem, Abhay Roy, Christian
Hopps, Dean Cheng, Russ White, Tony Przygienda, Wenhu Lu, Lin Han,
Kiran Makhijani, Padmadevi Pillay Esnault and Yang Yu for their
valuable comments on this draft.
17. References
17.1. Normative References 15.1. Normative References
[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, DOI 10.17487/ Requirement Levels", BCP 14, RFC 2119,
RFC2119, March 1997, DOI 10.17487/RFC2119, March 1997,
<http://www.rfc-editor.org/info/rfc2119>. <http://www.rfc-editor.org/info/rfc2119>.
[RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328, DOI 10.17487/ [RFC2328] Moy, J., "OSPF Version 2", STD 54, RFC 2328,
RFC2328, April 1998, DOI 10.17487/RFC2328, April 1998,
<http://www.rfc-editor.org/info/rfc2328>. <http://www.rfc-editor.org/info/rfc2328>.
[RFC5250] Berger, L., Bryskin, I., Zinin, A., and R. Coltun, "The [RFC5250] Berger, L., Bryskin, I., Zinin, A., and R. Coltun, "The
OSPF Opaque LSA Option", RFC 5250, DOI 10.17487/RFC5250, OSPF Opaque LSA Option", RFC 5250, DOI 10.17487/RFC5250,
July 2008, <http://www.rfc-editor.org/info/rfc5250>. July 2008, <http://www.rfc-editor.org/info/rfc5250>.
[RFC7474] Bhatia, M., Hartman, S., Zhang, D., and A. Lindem, Ed., [RFC7474] Bhatia, M., Hartman, S., Zhang, D., and A. Lindem, Ed.,
"Security Extension for OSPFv2 When Using Manual Key "Security Extension for OSPFv2 When Using Manual Key
Management", RFC 7474, DOI 10.17487/RFC7474, April 2015, Management", RFC 7474, DOI 10.17487/RFC7474, April 2015,
<http://www.rfc-editor.org/info/rfc7474>. <http://www.rfc-editor.org/info/rfc7474>.
[RFC4940] Kompella, K. and B. Fenner, "IANA Considerations for [RFC4940] Kompella, K. and B. Fenner, "IANA Considerations for
OSPF", BCP 130, RFC 4940, DOI 10.17487/RFC4940, July 2007, OSPF", BCP 130, RFC 4940, DOI 10.17487/RFC4940, July 2007,
<http://www.rfc-editor.org/info/rfc4940>. <http://www.rfc-editor.org/info/rfc4940>.
17.2. Informative References 15.2. Informative References
[RFC3630] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering
(TE) Extensions to OSPF Version 2", RFC 3630,
DOI 10.17487/RFC3630, September 2003,
<http://www.rfc-editor.org/info/rfc3630>.
[RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation [RFC5226] Narten, T. and H. Alvestrand, "Guidelines for Writing an
Element (PCE) Communication Protocol (PCEP)", RFC 5440, IANA Considerations Section in RFCs", BCP 26, RFC 5226,
DOI 10.17487/RFC5440, March 2009, DOI 10.17487/RFC5226, May 2008,
<http://www.rfc-editor.org/info/rfc5440>. <http://www.rfc-editor.org/info/rfc5226>.
Appendix A. Prototype Implementation Appendix A. Prototype Implementation
A.1. What are Implemented and Tested A.1. What Is Implemented and Tested
1. CLI Commands for TTZ 1. Command-Line Interface (CLI) Commands for TTZ
The CLIs implemented and tested include: The CLIs implemented and tested include:
o the CLIs of the simpler option for configuring TTZ, and o the CLIs of the simpler option for configuring TTZ, and
o the CLIs for controlling migration to TTZ. o the CLIs for controlling migration to TTZ.
2. Extensions to OSPF Protocols for TTZ 2. Extensions to OSPF Protocols for TTZ
All the extensions defined in section "Extensions to OSPF Protocols" All the extensions defined in "Extensions to OSPF Protocols"
are implemented and tested except for rolling back from TTZ. The (Section 6) are implemented and tested except for rolling back from
testing results illustrate: TTZ. The testing results illustrate:
o A TTZ is virtualized to outside as its edge routers connected each o As seen from the outside, a TTZ is virtualized as its edge routers
other. Any router outside of the TTZ sees the edge routers (as connected to each other. Any router outside of the TTZ sees the
normal routers) connecting each other and to some other routers. edge routers (as normal routers) connecting to each other and to
some other routers.
o The link state information about the routers and links inside the o The link-state information about the routers and links inside the
TTZ is contained within the TTZ. It is not advertised to any TTZ is contained within the TTZ. It is not advertised to any
router outside of the TTZ. router outside of the TTZ.
o TTZ is transparent. From a router inside a TTZ, it sees the o TTZ is transparent. From a router inside a TTZ, it sees the
topology (link state) outside of the TTZ. From a router outside topology (link state) outside of the TTZ. From a router outside
of the TTZ, it sees the topology beyond the TTZ. The link state of the TTZ, it sees the topology beyond the TTZ. The link-state
information outside of the TTZ is advertised through the TTZ. information outside of the TTZ is advertised through the TTZ.
o TTZ is backward compatible. Any router outside of a TTZ does not o TTZ is backward compatible. Any router outside of a TTZ does not
need to support or know TTZ. need to support or know TTZ.
3. Smooth Migration to TTZ 3. Smooth Migration to TTZ
The procedures and related protocol extensions for smooth migration The procedures and related protocol extensions for smooth migration
to TTZ are implemented and tested. The testing results show: to TTZ are implemented and tested. The testing results show:
o A part of an OSPF area is smoothly migrated to a TTZ without any o A part of an OSPF area is smoothly migrated to a TTZ without any
routing disruptions. The routes on every router are stable while routing disruptions. The routes on every router are stable while
the part of the area is being migrated to the TTZ. the part of the area is being migrated to the TTZ.
o Migration to TTZ is very easy to operate. o Migration to TTZ is very easy to operate.
4. Add a Router to TTZ 4. Add a Router to TTZ
Adding a router into TTZ is implemented and tested. The testing Adding a router into TTZ is implemented and tested. The testing
results illustrate: results illustrate:
o A router can be easily added into a TTZ and becomes a TTZ router. o A router can be easily added into a TTZ to become a TTZ router.
o The router added into the TTZ is not seen on any router outside of o The router added into the TTZ is not seen on any router outside of
the TTZ, but it is a part of the TTZ. the TTZ, but it is a part of the TTZ.
5. Leak TTZ Loopbacks Outside 5. Leak TTZ Loopbacks Outside
Leaking loopback addresses in a TTZ to routers outside of the TTZ is Leaking loopback addresses in a TTZ to routers outside of the TTZ is
implemented and tested. The testing results illustrate: implemented and tested. The testing results illustrate:
o The loopback addresses inside the TTZ are advertised to the o The loopback addresses inside the TTZ are advertised to the
routers outside of the TTZ. routers outside of the TTZ.
o The loopback addresses are accessible from a router outside of the o The loopback addresses are accessible from a router outside of the
TTZ. TTZ.
A.2. Implementation Experience A.2. Implementation Experience
The implementation of TTZ re-uses the existing OSPF code along with The implementation of TTZ reuses the existing OSPF code along with
additional simple logic. A couple of engineers started to work on additional simple logic. A couple of engineers started to work on
implementing the TTZ from the middle of June, 2014 and finished implementing the TTZ from the middle of June 2014 and finished coding
coding it just before the end of July, 2014. After some testing and it just before the end of July 2014. After some testing and bug
bug fixes, it works as expected. fixes, it works as expected.
In our implementation, the link state information in a TTZ opaque LSA In our implementation, the link-state information in a TTZ opaque LSA
is stored in the same link state database as the link state is stored in the same link-state database as the link-state
information in a normal LSA. For each TTZ link in the TTZ opaque information in a normal LSA. For each TTZ link in the TTZ opaque
LSA, there is an additional flag, which is used to differentiate LSA, there is an additional flag, which is used to differentiate
between a TTZ link and a Normal link. between a TTZ link and a normal link.
Before migration to TTZ, every router in the TTZ computes its routing Before migration to TTZ, every router in the TTZ computes its routing
table using the normal links. After migration to TTZ, every router table using the normal links. After migration to TTZ, every router
in the TTZ computes its routing table using the TTZ links and normal in the TTZ computes its routing table using the TTZ links and normal
links. In the case where both the TTZ link and the normal link links. In the case where both the TTZ link and the normal link
exist, the TTZ link is used. exist, the TTZ link is used.
Acknowledgements
The authors would like to thank Acee Lindem, Abhay Roy, Christian
Hopps, Dean Cheng, Russ White, Tony Przygienda, Wenhu Lu, Lin Han,
Kiran Makhijani, Padmadevi Pillay Esnault, and Yang Yu for their
valuable comments on this specification.
Contributors
The following people contributed significantly to the content of this
document and should be considered co-authors:
Mehmet Toy
United States of America
Email: mehmet.toy@verizon.com
Gregory Cauchie
France
Email: greg.cauchie@gmail.com
Anil Kumar SN
India
Email: anil.sn@huawei.com
Ning So
United States of America
Email: ningso01@gmail.com
Lei Liu
United States of America
Email: lliu@us.fujitsu.com
We also acknowledge the contribution of the following individuals:
Veerendranatha Reddy Vallem
India
Email: veerendranatharv@huawei.com
William McCall
United States of America
will.mccall@rightside.co
Authors' Addresses Authors' Addresses
Huaimo Chen Huaimo Chen
Huawei Technologies Huawei Technologies
Boston, MA Boston, MA
USA United States of America
Email: huaimo.chen@huawei.com Email: huaimo.chen@huawei.com
Renwei Li Renwei Li
Huawei Technologies Huawei Technologies
2330 Central expressway 2330 Central expressway
Santa Clara, CA Santa Clara, CA
USA United States of America
Email: renwei.li@huawei.com Email: renwei.li@huawei.com
Alvaro Retana Alvaro Retana
Cisco Systems, Inc. Cisco Systems, Inc.
7025 Kit Creek Rd. 7025 Kit Creek Rd.
Raleigh, NC 27709 Raleigh, NC 27709
USA United States of America
Email: aretana@cisco.com Email: aretana@cisco.com
Yi Yang Yi Yang
Sockrate Sockrate
USA Cary, NC
United States of America
Email: yyang1998@gmail.com Email: yyang1998@gmail.com
Zhiheng Liu Zhiheng Liu
China Mobile China Mobile
No.32 Xuanwumen West Street, Xicheng District No.32 Xuanwumen West Street, Xicheng District
Beijing, 100053 Beijing 100053
China China
Email: liu.cmri@gmail.com Email: liu.cmri@gmail.com
 End of changes. 179 change blocks. 
447 lines changed or deleted 458 lines changed or added

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