draft-ietf-ospf-ttz-03.txt   draft-ietf-ospf-ttz-04.txt 
Internet Engineering Task Force H. Chen Internet Engineering Task Force H. Chen
Internet-Draft R. Li Internet-Draft R. Li
Intended status: Experimental Huawei Technologies Intended status: Experimental Huawei Technologies
Expires: September 11, 2016 A. Retana Expires: December 30, 2016 A. Retana
Y. Yang Y. Yang
Cisco Systems, Inc. Cisco Systems, Inc.
V. Liu V. Liu
China Mobile China Mobile
M. Toy M. Toy
Comcast Comcast
March 10, 2016 June 28, 2016
OSPF Topology-Transparent Zone OSPF Topology-Transparent Zone
draft-ietf-ospf-ttz-03.txt draft-ietf-ospf-ttz-04.txt
Abstract Abstract
This document presents a topology-transparent zone in an OSPF area. This document presents a topology-transparent zone in an OSPF area.
A topology-transparent zone comprises a group of routers and a number A topology-transparent zone comprises a group of routers and a number
of links connecting these routers. Any router outside of the zone is of links connecting these routers. Any router outside of the zone is
not aware of the zone. The information about the links and routers not aware of the zone. The information about the links and routers
such as a link down inside the zone is not advertised to any router such as a link down inside the zone is not advertised to any router
outside of the zone. outside of the zone.
skipping to change at page 1, line 42 skipping to change at page 1, line 42
Internet-Drafts are working documents of the Internet Engineering Internet-Drafts are working documents of the Internet Engineering
Task Force (IETF). Note that other groups may also distribute Task Force (IETF). Note that other groups may also distribute
working documents as Internet-Drafts. The list of current Internet- working documents as Internet-Drafts. The list of current Internet-
Drafts is at http://datatracker.ietf.org/drafts/current/. Drafts is at http://datatracker.ietf.org/drafts/current/.
Internet-Drafts are draft documents valid for a maximum of six months Internet-Drafts are draft documents valid for a maximum of six months
and may be updated, replaced, or obsoleted by other documents at any and may be updated, replaced, or obsoleted by other documents at any
time. It is inappropriate to use Internet-Drafts as reference time. It is inappropriate to use Internet-Drafts as reference
material or to cite them other than as "work in progress." material or to cite them other than as "work in progress."
This Internet-Draft will expire on September 11, 2016. This Internet-Draft will expire on December 30, 2016.
Copyright Notice Copyright Notice
Copyright (c) 2016 IETF Trust and the persons identified as the Copyright (c) 2016 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
skipping to change at page 2, line 21 skipping to change at page 3, line 13
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. Some Details on TTZ . . . . . . . . . . . . . . . . . . . 6 5.2. TTZ Example . . . . . . . . . . . . . . . . . . . . . . . 6
6. Extensions to OSPF Protocols . . . . . . . . . . . . . . . . . 7 6. Extensions to OSPF Protocols . . . . . . . . . . . . . . . . . 7
6.1. General Format of TTZ LSA . . . . . . . . . . . . . . . . 8 6.1. General Format of TTZ LSA . . . . . . . . . . . . . . . . 8
6.2. TTZ ID TLV . . . . . . . . . . . . . . . . . . . . . . . . 8 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 . . . . . . . . . . . . . . . . . . . . 11
7. Constructing LSAs for TTZ . . . . . . . . . . . . . . . . . . 11 7. Constructing LSAs for TTZ . . . . . . . . . . . . . . . . . . 12
8. Establishing Adjacencies . . . . . . . . . . . . . . . . . . . 13 7.1. TTZ Migration Process . . . . . . . . . . . . . . . . . . 13
8.1. Discover TTZ Neighbors . . . . . . . . . . . . . . . . . . 13 8. Establishing Adjacencies . . . . . . . . . . . . . . . . . . . 14
8.2. Adjacency between TTZ Edge and TTZ External Router . . . . 14 8.1. Discovery of TTZ Neighbors . . . . . . . . . . . . . . . . 14
9. Advertisement of LSAs . . . . . . . . . . . . . . . . . . . . 14 8.2. Adjacency between TTZ Edge and TTZ External Router . . . . 16
9.1. Advertisement of LSAs within TTZ . . . . . . . . . . . . . 15 9. Advertisement of LSAs . . . . . . . . . . . . . . . . . . . . 17
9.2. Advertisement of LSAs through TTZ . . . . . . . . . . . . 15 9.1. Advertisement of LSAs within TTZ . . . . . . . . . . . . . 17
10. Computation of Routing Table . . . . . . . . . . . . . . . . . 15 9.2. Advertisement of LSAs through TTZ . . . . . . . . . . . . 17
11. Operations . . . . . . . . . . . . . . . . . . . . . . . . . . 16 10. Computation of Routing Table . . . . . . . . . . . . . . . . . 17
11.1. Configuring TTZ . . . . . . . . . . . . . . . . . . . . . 16 11. Operations . . . . . . . . . . . . . . . . . . . . . . . . . . 18
11.2. Smooth Migration to TTZ . . . . . . . . . . . . . . . . . 16 11.1. Configuring TTZ . . . . . . . . . . . . . . . . . . . . . 18
11.3. Adding a Router into TTZ . . . . . . . . . . . . . . . . . 18 11.2. Migration to TTZ . . . . . . . . . . . . . . . . . . . . . 18
12. Prototype Implementation . . . . . . . . . . . . . . . . . . . 18 11.3. Adding a Router into TTZ . . . . . . . . . . . . . . . . . 20
12.1. What are Implemented and Tested . . . . . . . . . . . . . 18 12. Manageability Considerations . . . . . . . . . . . . . . . . . 20
12.2. Implementation Experience . . . . . . . . . . . . . . . . 20 13. Prototype Implementation . . . . . . . . . . . . . . . . . . . 21
13. Security Considerations . . . . . . . . . . . . . . . . . . . 20 13.1. What are Implemented and Tested . . . . . . . . . . . . . 21
14. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 20 13.2. Implementation Experience . . . . . . . . . . . . . . . . 22
15. Contributors and Other Authors . . . . . . . . . . . . . . . . 21 14. Security Considerations . . . . . . . . . . . . . . . . . . . 22
16. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 22 15. IANA Considerations . . . . . . . . . . . . . . . . . . . . . 23
17. References . . . . . . . . . . . . . . . . . . . . . . . . . . 22 16. Contributors and Other Authors . . . . . . . . . . . . . . . . 23
17.1. Normative References . . . . . . . . . . . . . . . . . . . 22 17. Acknowledgement . . . . . . . . . . . . . . . . . . . . . . . 24
17.2. Informative References . . . . . . . . . . . . . . . . . . 22 18. References . . . . . . . . . . . . . . . . . . . . . . . . . . 24
Appendix A. Constants for LSA Advertisement . . . . . . . . . . . 23 18.1. Normative References . . . . . . . . . . . . . . . . . . . 24
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 23 18.2. Informative References . . . . . . . . . . . . . . . . . . 25
Appendix A. Constants for LSA Advertisement . . . . . . . . . . . 25
Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 25
1. Introduction 1. Introduction
The number of routers in a network becomes larger and larger as the Networks expand as business grows and traffic increases. For
network expands. For scalability and manageability, the network is scalability and manageability, a hierarchical network architecture is
reorganized into more areas when it becomes too big. However, this usually deployed in OSPF networks by re-grouping routers into areas,
causes a number of issues. 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 non-
backbone areas is connected to the new backbone area through the Area backbone areas is connected to the new backbone area through the Area
Border Routers (ABRs) between the non-backbone and the backbone area Border Routers (ABRs) between the non-backbone and the backbone area
(refer to RFC 2328 section 3). (refer to RFC 2328 section 3). It demands careful re-designing of
network topology in advance to guarantee backbone area continuity and
non-backbone area reachability, and requires significant
modifications of configurations on many routers to ensure consistent
routing.
Secondly, the services carried by the network may be interrupted Secondly, the services carried by the network may be interrupted
while the network is being reorganized from one area into multiple while the network is being reorganized from one area into multiple
areas or from a number of existing areas into even more areas since areas or from a number of existing areas into even more areas since
every OSPF interface with an area change is going down with its old every OSPF interface with an area change is going down with its old
area and then up with a new area. area and 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 OSPF for supporting the topology- area and describes extensions to OSPF for supporting the topology-
transparent zone, which is scalable and resolves the issues above. transparent zone, which is scalable and resolves the issues above.
2. Terminology 2. Terminology
TTZ internal link: a link between two TTZ adjacent routers in the TTZ link or TTZ internal link: A link whose ends are within a single
same TTZ. A TTZ internal link is called a TTZ link in general. TTZ.
TTZ internal router: a router in a TTZ whose adjacent routers are all TTZ internal router: A router whose links are TTZ internal links
in the same TTZ. inside a single TTZ.
TTZ external router: a router outside of a TTZ without any TTZ TTZ external router: A router outside of a TTZ that has no TTZ
internal link. internal links.
TTZ external link: a link between a TTZ edge router and a TTZ TTZ external link: A link not configured to be within a TTZ.
external router.
TTZ edge router: a router in a TTZ that has one (or more) adjacent TTZ edge router: A router is called TTZ edge router if some, but not
routers which belong to the same TTZ, and one (or more) adjacent all, of its links are within a single TTZ.
routers which do not belong to the TTZ.
TTZ router: a router in a TTZ, i.e., a TTZ internal router or a TTZ TTZ router: A TTZ internal router or a TTZ edge router.
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 RFC 2119.
4. Requirements 4. Requirements
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 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.
o A TTZ MUST be enclosed in a single area. o A TTZ MUST be enclosed in a single area.
o A TTZ MUST hide the topology of the TTZ from any router outside of o A TTZ MUST hide the topology of the TTZ from any router outside of
the TTZ. the TTZ.
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 an Identifier (ID), and A Topology-Transparent Zone is identified by a TTZ identifier (ID),
it consists of a group of routers and a number of links connecting and it consists of a group of routers and a number of links
the routers. A TTZ MUST be contained within an OSPF area. connecting the routers. A TTZ MUST be contained within an OSPF area.
The ID of a TTZ or TTZ ID is a 32-bit number that is unique for A TTZ ID is a 32-bit number that is unique for identifying a TTZ.
identifying a TTZ. The ID SHOULD NOT be 0. The TTZ ID SHOULD NOT be 0.
In addition to having the 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 is virtualized as the TTZ edges connected each other. o An OSPF TTZ represents a set of TTZ edge routers, connected by a
full mesh of virtual connections between them.
o An OSPF TTZ receives the link state information about the topology o Non-TTZ link state information is handled as normal. TTZ Routers
outside of the TTZ, stores the information in the TTZ and floods receive the link state information about the topology outside of
the information through the TTZ to the routers outside of the TTZ. the TTZ, store the information, and flood the information through
the TTZ to the routers outside of the TTZ.
5.2. Some Details on TTZ 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]===
|| ( | \ / | ) || || ( | \ / | ) ||
|| ( | \ / | ) || || ( | \ / | ) ||
skipping to change at page 6, line 48 skipping to change at page 6, line 48
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 T75, T71 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. Note adjacent routers T61, T63, T65, T67 and T73 are all in TTZ 600. It
that none of the TTZ internal routers can be an ABR. should be noted that by definition, a TTZ internal router cannot 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. a 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 router T61 and T71 to
any router outside of TTZ 600. any router outside of TTZ 600.
skipping to change at page 8, line 32 skipping to change at page 8, line 33
| LS Sequence Number | | LS Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS checksum | Length | | LS checksum | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
~ TLVs ~ ~ TLVs ~
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
Where TTZ-LSA-Type is 9, the exact number is to be assigned by IANA. Where TTZ-LSA-Type is 9, the exact number is to be assigned by IANA.
There are three top-level TLVs defined: TTZ ID TLV, TTZ Router TLV, There are three TTZ LSAs of LS Type 10 defined:
and TTZ Options TLV. A TTZ LSA of LS Type 10 contains a mandatory
TTZ ID TLV, which is followed by a number of other top-level TLVs.
A TTZ LSA having a optional TTZ Router TLV is called a TTZ Router o TTZ Router LSA: a TTZ LSA containing a TTZ ID TLV and a TTZ Router
LSA. A TTZ LSA containing a TTZ Options TLV is called a TTZ Control TLV.
LSA.
o TTZ Control LSA: a TTZ LSA containing a TTZ ID TLV and a TTZ
Options TLV.
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
internal router.
There is one TTZ LSA of LS Type 9:
o TTZ Discovery LSA: a TTZ LSA containing a TTZ ID TLV and a
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 and some A TTZ ID TLV has the following format. It contains a TTZ ID and some
flags. flags.
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 | | TTZ-ID-TLV-Type (1) | TLV-Length |
skipping to change at page 9, line 24 skipping to change at page 9, line 29
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
sets flag E to 1 in the TTZ ID TLV if it is a TTZ edge router, and to sets flag E to 1 in the TTZ ID TLV if it is a TTZ edge router, and to
0 if it is a TTZ internal router. It sets flag Z to 1 after it has 0 if it is a TTZ internal router. It sets flag Z to 1 after it has
migrated to TTZ. migrated to TTZ.
6.3. TTZ Router TLV 6.3. TTZ Router TLV
The format of a TTZ Router TLV is as follows. It contains the The format of a TTZ Router TLV is as follows. It has the same
contents of a router LSA. content as a standard OSPF Router LSA (RFC 2328) with the following
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 10, line 24 skipping to change at page 10, line 24
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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|T|M|N|R| Reserved (MUST be zero) | | OP | Reserved (MUST be zero) |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
T = 1: Advertising TTZ Topology Information for Migration OP Value Meaning (Operation)
M = 1: Migrating to TTZ 0x001 (T): Advertising TTZ Topology Information for Migration
N = 1: Advertising Normal Topology Information for Rollback 0x010 (M): Migrating to TTZ
R = 1: Rolling back from TTZ 0x011 (N): Advertising Normal Topology Information for Rollback
0x100 (R): Rolling back from TTZ
Flags T, M, N and R are exclusive. When one of them is set to 1, the A OP field of three bits is defined. It may have a value of 0x001
others MUST be set to 0. for T, 0x010 for M, 0x011 for N, or 0x100 for R, which indicates one
of the four operations above. When any of the other values is
received, it is ignored.
After a user configures a TTZ router to advertise TTZ topology Advertising TTZ Topology Information for Migration (T): After a user
information, the TTZ router originates a TTZ Control LSA having a TTZ configures a TTZ router to advertise TTZ topology information,
Options TLV with flag T set to 1. It also originates its TTZ router advertising TTZ topology information for migration is triggered. The
LSA. When another TTZ router receives the LSA with T = 1, it TTZ router originates a TTZ Control LSA having a TTZ Options TLV with
originates its TTZ router LSA as needed. OP for T. It also originates its other TTZ LSA such as a TTZ router
LSA or TTZ indication LSA. When another TTZ router receives the LSA
with OP for T, it originates its TTZ LSA as described below.
After a user configures a TTZ router to migrate to TTZ, the TTZ Migrating to TTZ (M): After a user configures a TTZ router to migrate
router originates a TTZ Control LSA having a TTZ Options TLV with to TTZ, migrating to TTZ is triggered. The TTZ router originates a
flag M set to 1 and migrates to TTZ. When another TTZ router TTZ Control LSA having a TTZ Options TLV with OP for M and migrates
receives the LSA with M = 1, it also migrates to TTZ. to TTZ. When another TTZ router receives the LSA with OP for M, it
also migrates to TTZ. When a router migrates to TTZ, it computes
routes using the TTZ topology and the topology outside of the TTZ.
After a user configures a TTZ router to advertise normal topology For a TTZ internal router, it also updates its TTZ indication LSA
information, the TTZ router originates a TTZ Control LSA having a TTZ with Z = 1. For a TTZ edge router, it updates its TTZ router LSA
Options TLV with flag N set to 1. It also advertises its normal LSAs with Z = 1 and its router LSA for virtualizing the TTZ.
such as its normal router LSA and stops advertising its other TTZ
LSAs. When another TTZ router receives the LSA with N = 1, it
advertises its normal LSAs and stops advertising its TTZ LSAs.
After a user configures a TTZ router to roll back from TTZ, the TTZ Advertising Normal Topology Information for Rollback (N): After a
router originates a TTZ Control LSA having a TTZ Options TLV with user configures a TTZ router to advertise normal topology
flag R set to 1 and rolls back from TTZ. When another TTZ router information, advertising Normal topology information for rollback is
receives the LSA with R = 1, it also rolls back from TTZ. triggered. The TTZ router originates a TTZ Control LSA having a TTZ
Options TLV with OP for N. It also advertises its normal LSAs such as
its normal router LSA and stops advertising its other TTZ LSAs. When
another TTZ router receives the LSA with OP for N, it advertises its
normal LSAs and stops advertising its TTZ LSAs.
Rolling back from TTZ (R): After a user configures a TTZ router to
roll back from TTZ, rolling back from TTZ is triggered. The TTZ
router originates a TTZ Control LSA having a TTZ Options TLV with OP
for R and rolls 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 updates the TTZ configuration described above to control TTZ, it flushes the TTZ
control LSA accordingly if another configuration to control TTZ is control LSA if OP in the LSA is set for the configuration and the
issued on it. 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 |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
skipping to change at page 11, line 36 skipping to change at page 11, line 50
| Advertising Router | | Advertising Router |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS Sequence Number | | LS Sequence Number |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| LS checksum | Length | | LS checksum | Length |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| | | |
~ TTZ ID TLV ~ ~ TTZ ID TLV ~
+---------------------------------------------------------------+ +---------------------------------------------------------------+
| | | |
~ (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 a
optional 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
The LSAs for representing a TTZ include TTZ router LSAs and normal For a TTZ, its topology is represented by the LSAs generated by its
router LSAs for virtualizing the TTZ. TTZ routers for the link states in the TTZ, which include TTZ router
LSAs, TTZ indication LSAs, normal router LSAs and network LSAs. The
TTZ router LSAs and TTZ indication LSAs are generated after
advertising TTZ topology information for migration is triggered.
A TTZ router LSA generated by a TTZ edge router has a TTZ ID TLV and A TTZ router LSA generated by a TTZ edge router has a TTZ ID TLV and
a TTZ Router TLV. The former includes the ID of the TTZ to which the 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 originator of router belongs and flag E set to 1, which indicates the originator of
the LSA is a TTZ Edge router. The latter contains the links attached the LSA is a TTZ Edge router. For a TTZ edge router, its normal
to the router. Router LSA content is copied into a TTZ Router TLV with the
modifications described in section 6, and a TTZ router LSA containing
this TLV is constructed and advertised.
A TTZ router LSA generated by a TTZ internal router has a TTZ ID TLV A TTZ indication LSA generated by a TTZ internal router has a TTZ ID
containing the ID of the TTZ to which the router belongs and flag E TLV containing the ID of the TTZ to which the router belongs and flag
set to 0, which indicates the originator of the LSA is a TTZ internal E set to 0, which indicates the originator of the LSA is a TTZ
router. The TTZ internal router generates the TTZ router LSA with internal router. For a TTZ internal router, its regular Router LSA
just the TTZ ID TLV and its normal router LSA. is still generated. If a TTZ router is a DR, it originates its
regular network LSA.
After receiving a trigger to migrate to TTZ such as a TTZ LSA with After receiving a trigger to migrate to TTZ such as a TTZ control LSA
flag M = 1, a TTZ edge router originates its normal router LSA for with OP for M, a TTZ edge router originates its normal router LSA for
virtualizing a TTZ, which comprises three groups of links in general. virtualizing a TTZ, which comprises three groups of links in general.
The first group are the router links connecting the TTZ external The first group are 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 are 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 router link to it from this
TTZ edge router. The cost of the link is the cost of the shortest TTZ edge router. The cost of the link is the cost of the shortest
path from this TTZ edge router to the other TTZ edge router within path from this TTZ edge router to the other TTZ edge router within
the TTZ. 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.
To migrate to a TTZ smoothly, a TTZ edge router virtualizes the TTZ 7.1. TTZ Migration Process
in two steps. At first, the router updates its normal router LSA by
adding a point-to-point link to each of the other edge routers of the After migration to TTZ is triggered, a TTZ router computes routes
TTZ and a stub link for each of the loopback addresses in the TTZ to using its TTZ topology (refer to section 10) and a TTZ edge router
be accessed outside of the TTZ into the LSA. And then it removes the originates its normal router LSA for virtualizing the TTZ in two
links configured as TTZ links from its updated router LSA after steps:
sending its updated router LSA and receiving the updated router LSAs
originated by the other TTZ edge routers for MaxLSAAdvTime or after Step 1: The router updates its router LSA by adding a point-to-point
sending its updated router LSA for MaxLSAGenAdvTime (refer to link to each of the other known edge routers in the TTZ, and also
Appendix A). by adding the stub links for the loopback addresses in the TTZ to
be accessed outside of the TTZ.
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-
time is the time from updating its router LSA to receiving the ack
for its router LSA and receiving the updated router LSAs
originated by the other TTZ edge routers. In other words, it
removes the TTZ links from its router LSA after sending its
updated router LSA and receiving the updated router LSAs
originated by the other TTZ edge routers for MaxLSAAdvTime or
after sending its updated router LSA for MaxLSAGenAdvTime (refer
to Appendix A).
This is to avoid a possible short route down or change in a TTZ
external router while the TTZ is being virtualized. If each TTZ edge
router originates its router LSA by adding its point-to-point links
to the other TTZ edge routers and removing its TTZ links in one step,
a route taking a path through the TTZ in the TTZ external router may
be down or changed before all the router LSAs generated by the TTZ
edge routers reach the TTZ external router. When the TTZ external
router computes routes with some router LSAs originated by the TTZ
edge routers, bi-directional check for some of the point-to-point
links will fail. Thus the route taking the path through the shortest
path for the point-to-point link failing the bi-directional check
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 updates its normal router LSA in the back from TTZ, a TTZ edge router originates its normal router LSA in
above two steps in a reverse way. At first, it updates its normal the above two steps in a reverse way.
router LSA by adding the normal links for the links configured as TTZ
links into the LSA. And then it removes the point-to-point links to Step 1: Initially, it updates its normal router LSA by adding the
the other edge routers of the TTZ for virtualizing the TTZ and the normal links for the links configured as TTZ links into the LSA.
stub links for the loopback addresses from its updated router LSA
after sending its updated router LSA and receiving the updated router Step 2: It then removes the point-to-point links to the other edge
LSAs originated by the other TTZ edge routers for MaxLSAAdvTime or routers of the TTZ for virtualizing the TTZ and the stub links for
after sending its updated router LSA for MaxLSAGenAdvTime. the loopback addresses from its updated router LSA after sending
its updated router LSA and receiving the updated router LSAs
originated by the other TTZ edge routers for MaxLSAAdvTime or
after sending its updated router LSA for MaxLSAGenAdvTime.
8. Establishing Adjacencies 8. Establishing Adjacencies
This section describes the adjacencies in different cases. This section describes the TTZ adjacencies.
8.1. Discover TTZ Neighbors 8.1. Discovery of TTZ Neighbors
For two routers A and B connected by a P2P link and having a normal For two routers A and B connected by a P2P link and having a normal
adjacency, they discover TTZ each other through a TTZ LSA of LS Type adjacency, they TTZ discover each other through a TTZ LSA of LS Type
9 with a TTZ ID TLV. We call this LSA D-LSA for short. 9 with a TTZ ID TLV. We call this LSA D-LSA for short.
If two ends of the link have different TTZ IDs, no TTZ adjacency over If two ends of the link have different TTZ IDs or only one end is
the link will be "formed". configured with TTZ ID, no TTZ adjacency over the link will be
"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 router LSA if (Z==0 and the TTZ LSAs it has and originates its TTZ LSA when one of the
there is a TTZ LSA with T=1) OR Z==1. following conditions is met.
o Z = 0 and there is a TTZ LSA with OP for T.
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 Z flags are
different, a TTZ adjacency over the link is "formed" in the following different, a TTZ adjacency over the link is "formed" in the following
steps. Suppose that A has migrated to TTZ and B has not (i.e., flag 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). Z in A's D-LSA is 1 and flag Z in B's D-LSA is 0).
A B
Configure TTZ Configure TTZ
D-LSA(TTZ-ID=100,Z=1)
----------------------> Same TTZ ID, but
different Z
A is B's TTZ Neighbor
D-LSA(TTZ-ID=100,Z=0)
Same TTZ ID, but <----------------------
different Z
B is A's TTZ Neighbor
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 and TTZ ID but its Z = 1 and B's Z = 0, A sends B all the TTZ LSAs it has
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 Options TLV with M=1 after sending B all the TTZ LSAs. adding an TTZ Options TLV with OP for M after sending B all the TTZ
LSAs.
D-LSA(TTZ-ID=100,OP=M)
Add TTZ Options -----------------------> Migrate to TTZ
TLV with OP for M
D-LSA(TTZ-ID=100,Z=1) Migrated to TTZ
<----------------------- Set Z=1
D-LSA(TTZ-ID=100,Z=1)
Remove ----------------------->
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 has and TTZ ID but its Z = 0 and A's Z = 1, B sends A all the TTZ LSAs it
starts to migrate to TTZ after receiving A's D-LSA with M=1. After has.
migration 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 When B receives the D-LSA from A with OP for M, it starts to migrate
by removing the Options TLV. It also updates and advertises its LSAs to TTZ. B updates and advertises its LSAs as needed.
as needed.
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
LSAs as needed.
For a number of routers connected through a broadcast link and having For a number of routers connected through a broadcast link and having
normal adjacencies among them, they also discover TTZ each other normal adjacencies among them, they also TTZ discover each other
through D-LSAs. The DR for the link "forms" TTZ adjacencies with the through D-LSAs. The DR for the link "forms" TTZ adjacencies with the
other routers if all the routers attached to the link have the same other routers if all the routers attached to the link have the same
TTZ ID configured on the connections to the link. Otherwise, the DR TTZ ID configured on the connections to the link. Otherwise, the DR
does not "form" any TTZ adjacency with any router attached to the does not "form" any TTZ adjacency with any router attached to the
link. link.
For a number of routers connected through a broadcast link and having For a number of routers connected through a broadcast link and having
TTZ adjacencies among them, if a mis-configured router is introduced TTZ adjacencies among them, if a mis-configured router is introduced
on the broadcast link, the DR for the link will not "form" any TTZ on the broadcast link, the DR for the link will not "form" any TTZ
adjacency with this mis-configured router. adjacency with this mis-configured router.
For routers connected via a link without any adjacency among them, For routers connected via a link without any adjacency among them,
they discover TTZ 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 is removed when one of the following
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 removed.
o D-LSA is not received for sometime such as 60 minutes or is
flushed.
o Normal adjacency over the link is down.
When the TTZ ID on one end of the link is removed, the corresponding
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.
skipping to change at page 15, line 4 skipping to change at page 17, line 9
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 within the TTZ. It Any LSA about a link state in a TTZ is advertised only within the
is not advertised to any router outside of the TTZ. For example, a TTZ. It is not advertised to any router outside of the TTZ. For
router LSA generated for a router in a TTZ is advertised within the example, a router LSA generated for a TTZ internal router is
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 NBMA network in a TTZ is
advertised within the TTZ. advertised only within the TTZ. It 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
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. TTZ.
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
skipping to change at page 15, line 49 skipping to change at page 18, line 6
neighboring routers both outside of the TTZ and inside the TTZ. neighboring routers both outside of the TTZ and inside 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. This can generated by the TTZ edge routers for virtualizing the TTZ. This can
be achieved by adding a flag into every link stored in LSDB and be achieved by adding a flag into every link stored in LSDB and
setting this flag to 1 in every link in these router LSAs, which setting this flag to 1 in every link in these router LSAs, which
indicates that the link is unusable. It computes routes within the indicates that the link is unusable. It computes routes using the
TTZ topology and the topology outside of the TTZ without using any TTZ topology (i.e., using LSAs for representing the TTZ) and the
unusable links. topology outside of the TTZ, excluding any unusable links. The LSAs
for representing a TTZ are described in Section 7.
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 a same TTZ ID as a TTZ
skipping to change at page 16, line 26 skipping to change at page 18, line 32
TTZ internal router. TTZ internal router.
2. Configuring TTZ on Every Router in TTZ 2. Configuring TTZ on Every Router in TTZ
A same TTZ ID is configured on every router in a TTZ, and on every A same TTZ ID is configured on every router in a TTZ, and on every
TTZ edge router's links connecting to the routers in the TTZ. TTZ edge router's links connecting to the routers in the 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 the above one. links. This option is simpler than option 1 above.
11.2. Smooth 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 of 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 its TTZ router LSA. TTZ. In this stage, a router does not originate or advertise its TTZ
It will discover its TTZ neighbors. topology information. It will discover its TTZ neighbors.
Secondly, after configuring the TTZ, a user issues a CLI command on Secondly, after configuring the TTZ, a user issues a CLI command 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 command, it originates a TTZ control LSA When the router receives the command, it originates a TTZ control LSA
with T=1 (indicating TTZ information generation and advertisement for with OP for T (indicating TTZ information generation and
migration). It also originates its TTZ router LSA, and advertises advertisement for migration). It also originates its TTZ LSA such as
the LSA to its TTZ neighbors. When another router in the TTZ TTZ router LSA or TTZ indication LSA, and advertises the LSA to its
receives the LSA with T=1, it originates its TTZ router LSA. In this TTZ neighbors. When another router in the TTZ receives the LSA with
stage, every router in the TTZ has dual roles. One is to function as OP for T, it originates its TTZ LSA. In this stage, every router in
a normal router. The other is to generate and advertise TTZ the TTZ has dual roles. One is to function as a normal router. The
information. other is to generate and advertise TTZ information.
Thirdly, a user checks whether a router in the TTZ is ready for Thirdly, 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 necessary information from all the routers in the TTZ. This all the necessary information from all the routers in the TTZ. This
information may be displayed on a router through a CLI command. information may be displayed on a router through a CLI command.
And then a user activates the TTZ through using a CLI command such as And then a user activates the TTZ through using a CLI command such as
migrate to TTZ on one router in the TTZ. The router migrates to TTZ, migrate to TTZ on one router in the TTZ. The router migrates to TTZ,
generates and advertises a TTZ control LSA with M = 1 (indicating generates and advertises a TTZ control LSA with OP for M (indicating
Migrating to TTZ) after it receives the command. After another Migrating to TTZ) after it receives the command. After another
router in the TTZ receives the TTZ control LSA with M = 1, it also router in the TTZ receives the TTZ control LSA with OP for M, it also
migrates to TTZ. Thus, activating the TTZ on one TTZ router migrates to TTZ. Thus, activating the TTZ on one TTZ 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 commands according to certain procedures. In user issues a series of commands according to certain procedures. In
skipping to change at page 17, line 51 skipping to change at page 20, line 12
For rolling back from TTZ, it is similar. For rolling back from TTZ, it is similar.
After receiving a command on a router to migrate to TTZ, which is for After receiving a command on a router to migrate to TTZ, which is for
3), the router checks whether 2) is performed through checking if it 3), the router checks whether 2) is performed through checking if it
has received/originated TTZ LSAs. If it has not, it issues an error has received/originated TTZ LSAs. If it has not, it issues an error
to an operator (generation and advertisement of TTZ information for to an operator (generation and advertisement of TTZ information for
migration to TTZ is not done yet) and rejects the command at this migration to TTZ is not done yet) and rejects the command at this
time. time.
After a router receives a TTZ LSA with M=1 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 checks whether 2) is performed through 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. The operation for migration will continue. logs the error. The operation for migration will continue.
After receiving a command on a router to generate and advertise TTZ After receiving a command on a router to generate and advertise TTZ
information, which is for 2), the router checks whether 1) is information, which is for 2), the router checks whether 1) is
performed through checking if TTZ is configured on it. If it is not, performed through checking if TTZ is configured on it. If it is not,
it issues an error to an operator (TTZ is not configured on it yet) it issues an error to an operator (TTZ is not configured on it yet)
and rejects the command at this time. and rejects the command 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 TTZ When a non TTZ router (say R1) is connected via a P2P link to a
router (say T1) working as TTZ and there is a normal adjacency migrated TTZ router (say T1), and there is a normal adjacency between
between them over the link, a user can configure TTZ on two ends of them over the link, a user can configure TTZ on both ends of the link
the link to add R1 into the TTZ to which T1 belongs. They discover to add R1 into the TTZ to which T1 belongs. They TTZ discover each
TTZ each other with the TTZ as described in section 8. other as described in section 8.
When a number of non TTZ routers are connected via a broadcast link When a number of non TTZ routers are connected via a broadcast or
to a TTZ router (say T1) working as TTZ 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 discovery ID configured for the link. This is determined through the TTZ
process described in section 8. discovery process described in section 8.
When a router (say R1) is connected via a P2P link to a TTZ router 12. Manageability Considerations
(say T1) and there is not any adjacency between them over the link, a
user can configure TTZ on two ends of the link to add R1 into the TTZ
to which T1 belongs. R1 and T1 will form an adjacency in the same
way as described in section 8.
12. Prototype Implementation Section 11 (Operations) outlines the configuration process and
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
may be controlled by a policy module and assigned a suitable user
privilege level to enable. A suitable model may be required to
verify the TTZ status on routers participating in the TTZ, including
their role as internal or edge TTZ router. The mechanisms defined in
this document do not imply any new liveness detection and monitoring
requirements in addition to those indicated in [RFC2328].
12.1. What are Implemented and Tested 13. Prototype Implementation
13.1. What are Implemented and Tested
1. CLI Commands for TTZ 1. 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
skipping to change at page 20, line 11 skipping to change at page 22, line 22
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.
12.2. Implementation Experience 13.2. Implementation Experience
The implementation of TTZ is relatively easy compared to other The implementation of TTZ is relatively easy compared to other
features of OSPF. Re-using the existing OSPF code along with features of OSPF. Re-using the existing OSPF code along with
additional simple logic does the work. A couple of engineers started additional simple logic does the work. A couple of engineers started
to work on implementing the TTZ from the middle of June, 2014 and to work on implementing the TTZ from the middle of June, 2014 and
finished coding it just before IETF 90. After some testing and bug finished coding it just before the end of July, 2014. After some
fixes, it works as expected. testing and bug 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.
13. Security Considerations 14. Security Considerations
The mechanism described in this document does not raise any new The mechanism described in this document does not raise any new
security issues for the OSPF protocols since a TTZ is enclosed in a security issues for the OSPF protocols since a TTZ is enclosed in a
single area. single area. TTZ relies on the OSPF security mechanisms in place and
has the same security threat surface.
14. IANA Considerations 15. IANA Considerations
Under Registry Name: Opaque Link-State Advertisements (LSA) Option Under Registry Name: Opaque Link-State Advertisements (LSA) Option
Types [RFC5250], IANA is requested to assign a new Opaque type Types [RFC5250], IANA is requested to assign a new Opaque type
registry value for Topology-Transparent Zone (TTZ) LSA as follows: registry value for Topology-Transparent Zone (TTZ) LSA as follows:
+====================+===============+=======================+ +====================+===============+=======================+
| Registry Value | Opaque Type | reference | | Registry Value | Opaque Type | reference |
+====================+===============+=======================+ +====================+===============+=======================+
| IANA TBD | TTZ LSA | This document | | IANA TBD | TTZ LSA | This document |
| (9 Suggested) | | | | (9 Suggested) | | |
+--------------------+---------------+-----------------------+ +--------------------+---------------+-----------------------+
IANA is requested to assign Types for new TLVs in the new TTZ LSA as IANA is requested to assign Types for new TLVs in the new TTZ LSA as
follows: follows:
Type Name Allowed in Type Name Allowed in
1 TTZ ID TLV TTZ LSA of LS Type 10 and 9 1 TTZ ID TLV TTZ LSA of LS Type 10 and 9
2 TTZ Router TLV TTZ LSA of LS Type 10 2 TTZ Router TLV TTZ LSA of LS Type 10
3 TTZ Options TLV TTZ LSA of LS Type 10 and 9 3 TTZ Options TLV TTZ LSA of LS Type 10 and 9
15. Contributors and Other Authors 16. Contributors and Other Authors
1. Other Authors 1. Other Authors
Gregory Cauchie Gregory Cauchie
FRANCE FRANCE
Email: greg.cauchie@gmail.com Email: greg.cauchie@gmail.com
Anil Kumar S N Anil Kumar S N
Huawei Technologies Huawei Technologies
Banglore Banglore
skipping to change at page 22, line 12 skipping to change at page 24, line 23
Banglore Banglore
India India
Email: veerendranatharv@huawei.com Email: veerendranatharv@huawei.com
William McCall William McCall
Rightside Co. Rightside Co.
Kirkland, WA Kirkland, WA
USA USA
will.mccall@rightside.co will.mccall@rightside.co
16. Acknowledgement 17. Acknowledgement
The authors would like to thank Acee Lindem, Abhay Roy, Dean Cheng, The authors would like to thank Acee Lindem, Abhay Roy, Christian
Russ White, Tony Przygienda, Wenhu Lu, Lin Han, Kiran Makhijani, Hopps, Dean Cheng, Russ White, Tony Przygienda, Wenhu Lu, Lin Han,
Padmadevi Pillay Esnault and Yang Yu for their valuable comments on Kiran Makhijani, Padmadevi Pillay Esnault and Yang Yu for their
this draft. valuable comments on this draft.
17. References 18. References
17.1. Normative References 18.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, DOI 10.17487/
RFC2119, March 1997, 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, DOI 10.17487/
RFC2328, April 1998, 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>.
17.2. Informative References 18.2. Informative References
[RFC5441] Vasseur, JP., Ed., Zhang, R., Bitar, N., and JL. Le Roux, [RFC3630] Katz, D., Kompella, K., and D. Yeung, "Traffic Engineering
"A Backward-Recursive PCE-Based Computation (BRPC) (TE) Extensions to OSPF Version 2", RFC 3630,
Procedure to Compute Shortest Constrained Inter-Domain DOI 10.17487/RFC3630, September 2003,
Traffic Engineering Label Switched Paths", RFC 5441, <http://www.rfc-editor.org/info/rfc3630>.
DOI 10.17487/RFC5441, April 2009,
<http://www.rfc-editor.org/info/rfc5441>.
[RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation [RFC5440] Vasseur, JP., Ed. and JL. Le Roux, Ed., "Path Computation
Element (PCE) Communication Protocol (PCEP)", RFC 5440, Element (PCE) Communication Protocol (PCEP)", RFC 5440,
DOI 10.17487/RFC5440, March 2009, DOI 10.17487/RFC5440, March 2009,
<http://www.rfc-editor.org/info/rfc5440>. <http://www.rfc-editor.org/info/rfc5440>.
Appendix A. Constants for LSA Advertisement Appendix A. Constants for LSA Advertisement
MaxLSAAdvTime: The maximum time for an LSA to be advertised to all MaxLSAAdvTime: The maximum time for an LSA to be advertised to all
the routers in an area. The value of MaxLSAAdvTime is set to 0.1 the routers in an area. The value of MaxLSAAdvTime is set to 0.1
 End of changes. 86 change blocks. 
219 lines changed or deleted 337 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/