| < draft-ietf-rift-applicability-08.txt | draft-ietf-rift-applicability-09.txt > | |||
|---|---|---|---|---|
| RIFT WG Yuehua. Wei, Ed. | RIFT WG Yuehua. Wei, Ed. | |||
| Internet-Draft Zheng. Zhang | Internet-Draft Zheng. Zhang | |||
| Intended status: Informational ZTE Corporation | Intended status: Informational ZTE Corporation | |||
| Expires: 11 May 2022 Dmitry. Afanasiev | Expires: 15 June 2022 Dmitry. Afanasiev | |||
| Yandex | Yandex | |||
| P. Thubert | P. Thubert | |||
| Cisco Systems | Cisco Systems | |||
| Jaroslaw. Kowalczyk | Jaroslaw. Kowalczyk | |||
| Orange Polska | Orange Polska | |||
| 7 November 2021 | 12 December 2021 | |||
| RIFT Applicability | RIFT Applicability | |||
| draft-ietf-rift-applicability-08 | draft-ietf-rift-applicability-09 | |||
| Abstract | Abstract | |||
| This document discusses the properties, applicability and operational | This document discusses the properties, applicability and operational | |||
| considerations of RIFT in different network scenarios. It intends to | considerations of RIFT in different network scenarios. It intends to | |||
| provide a rough guide how RIFT can be deployed to simplify routing | provide a rough guide how RIFT can be deployed to simplify routing | |||
| operations in Clos topologies and their variations. | operations in Clos topologies and their variations. | |||
| Status of This Memo | Status of This Memo | |||
| skipping to change at page 1, line 39 ¶ | skipping to change at page 1, line 39 ¶ | |||
| Internet-Drafts are working documents of the Internet Engineering | Internet-Drafts are working documents of the Internet Engineering | |||
| Task Force (IETF). Note that other groups may also distribute | Task Force (IETF). Note that other groups may also distribute | |||
| working documents as Internet-Drafts. The list of current Internet- | working documents as Internet-Drafts. The list of current Internet- | |||
| Drafts is at https://datatracker.ietf.org/drafts/current/. | Drafts is at https://datatracker.ietf.org/drafts/current/. | |||
| Internet-Drafts are draft documents valid for a maximum of six months | Internet-Drafts are draft documents valid for a maximum of six months | |||
| and may be updated, replaced, or obsoleted by other documents at any | and may be updated, replaced, or obsoleted by other documents at any | |||
| time. It is inappropriate to use Internet-Drafts as reference | time. It is inappropriate to use Internet-Drafts as reference | |||
| material or to cite them other than as "work in progress." | material or to cite them other than as "work in progress." | |||
| This Internet-Draft will expire on 11 May 2022. | This Internet-Draft will expire on 15 June 2022. | |||
| Copyright Notice | Copyright Notice | |||
| Copyright (c) 2021 IETF Trust and the persons identified as the | Copyright (c) 2021 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 (https://trustee.ietf.org/ | Provisions Relating to IETF Documents (https://trustee.ietf.org/ | |||
| license-info) in effect on the date of publication of this document. | license-info) in effect on the date of publication of this document. | |||
| Please review these documents carefully, as they describe your rights | Please review these documents carefully, as they describe your rights | |||
| and restrictions with respect to this document. Code Components | and restrictions with respect to this document. Code Components | |||
| extracted from this document must include Simplified BSD License text | extracted from this document must include Revised BSD License text as | |||
| as described in Section 4.e of the Trust Legal Provisions and are | described in Section 4.e of the Trust Legal Provisions and are | |||
| provided without warranty as described in the Simplified BSD License. | provided without warranty as described in the Revised BSD License. | |||
| Table of Contents | Table of Contents | |||
| 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 | 2. Terminology . . . . . . . . . . . . . . . . . . . . . . . . . 3 | |||
| 3. Problem Statement of Routing in Modern IP Fabric Fat Tree | 3. Problem Statement of Routing in Modern IP Fabric Fat Tree | |||
| Networks . . . . . . . . . . . . . . . . . . . . . . . . 5 | Networks . . . . . . . . . . . . . . . . . . . . . . . . 5 | |||
| 4. Applicability of RIFT to Clos IP Fabrics . . . . . . . . . . 5 | 4. Applicability of RIFT to Clos IP Fabrics . . . . . . . . . . 5 | |||
| 4.1. Overview of RIFT . . . . . . . . . . . . . . . . . . . . 5 | 4.1. Overview of RIFT . . . . . . . . . . . . . . . . . . . . 5 | |||
| 4.2. Applicable Topologies . . . . . . . . . . . . . . . . . . 8 | 4.2. Applicable Topologies . . . . . . . . . . . . . . . . . . 8 | |||
| skipping to change at page 6, line 32 ¶ | skipping to change at page 6, line 32 ¶ | |||
| normally just the default route, propagates one hop south and is "re- | normally just the default route, propagates one hop south and is "re- | |||
| advertised" by nodes at next lower level. | advertised" by nodes at next lower level. | |||
| +---------------+ +----------------+ | +---------------+ +----------------+ | |||
| | ToF | | ToF | LEVEL 2 | | ToF | | ToF | LEVEL 2 | |||
| + ++------+--+--+-+ ++-+--+----+-----+ | + ++------+--+--+-+ ++-+--+----+-----+ | |||
| | | | | | | | | | ^ | | | | | | | | | | ^ | |||
| + | | | +-------------------------+ | | + | | | +-------------------------+ | | |||
| Distance | +-------------------+ | | | | | | Distance | +-------------------+ | | | | | | |||
| Vector | | | | | | | | + | Vector | | | | | | | | + | |||
| South | | | | +--------+ | | | Link+State | South | | | | +--------+ | | | Link-State | |||
| + | | | | | | | | Flooding | + | | | | | | | | Flooding | |||
| | | | +----------------+ | | | North | | | | +----------------+ | | | North | |||
| v | | | | | | | | + | v | | | | | | | | + | |||
| ++---+-+ +------+ +-+----+ ++----++ | | ++---+-+ +------+ +-+----+ ++----++ | | |||
| |SPINE | |SPINE | | SPINE| | SPINE| | LEVEL 1 | |SPINE | |SPINE | | SPINE| | SPINE| | LEVEL 1 | |||
| + ++----++ ++---+-+ +-+--+-+ ++----++ | | + ++----++ ++---+-+ +-+--+-+ ++----++ | | |||
| + | | | | | | | | | ^ N | + | | | | | | | | | ^ N | |||
| Distance | +-------+ | | +--------+ | | | E | Distance | +-------+ | | +--------+ | | | E | |||
| Vector | | | | | | | | | +------> | Vector | | | | | | | | | +------> | |||
| South | +-------+ | | | +------+ | | | | | South | +-------+ | | | +------+ | | | | | |||
| skipping to change at page 24, line 17 ¶ | skipping to change at page 24, line 17 ¶ | |||
| Note that in the case of Positive Disaggregation, the first ToF | Note that in the case of Positive Disaggregation, the first ToF | |||
| node(s) that announces a more-specific route attracts all the traffic | node(s) that announces a more-specific route attracts all the traffic | |||
| for that route and may suffer from a transient incast. A ToP node | for that route and may suffer from a transient incast. A ToP node | |||
| that defers injecting the longer prefix in the FIB, in order to | that defers injecting the longer prefix in the FIB, in order to | |||
| receive more advertisements and spread the packets better, also keeps | receive more advertisements and spread the packets better, also keeps | |||
| on sending a portion of the traffic to the black hole in the | on sending a portion of the traffic to the black hole in the | |||
| meantime. In the case of Negative Disaggregation, the last ToF | meantime. In the case of Negative Disaggregation, the last ToF | |||
| node(s) that injects the route may also incur an incast issue; this | node(s) that injects the route may also incur an incast issue; this | |||
| problem would occur if a prefix that becomes totally unreachable is | problem would occur if a prefix that becomes totally unreachable is | |||
| disaggregated, but doing so is mostly useless and is not recommended. | disaggregated. | |||
| 5.7. Mobile Edge and Anycast | 5.7. Mobile Edge and Anycast | |||
| When a physical or a virtual node changes its point of attachement in | When a physical or a virtual node changes its point of attachement in | |||
| the fabric from a previous-leaf to a next-leaf, new routes must be | the fabric from a previous-leaf to a next-leaf, new routes must be | |||
| installed that supersede the old ones. Since the flooding flows | installed that supersede the old ones. Since the flooding flows | |||
| northwards, the nodes (if any) between the previous-leaf and the | northwards, the nodes (if any) between the previous-leaf and the | |||
| common parent are not immediately aware that the path via previous- | common parent are not immediately aware that the path via previous- | |||
| leaf is obsolete, and a stale route may exist for a while. The | leaf is obsolete, and a stale route may exist for a while. The | |||
| common parent needs to select the freshest route advertisement in | common parent needs to select the freshest route advertisement in | |||
| skipping to change at page 28, line 26 ¶ | skipping to change at page 28, line 26 ¶ | |||
| | | | | | | | | | | | | | | |||
| | +----------------+ | | | | +----------------+ | | | |||
| | +----------------+ | | | +----------------+ | | |||
| | | | | | | | | | | | | | | |||
| +----------+--+ +--+----------+ | +----------+--+ +--+----------+ | |||
| | ToR1 | | ToR2 | Spine | | ToR1 | | ToR2 | Spine | |||
| +--+------+---+ +--+-------+--+ | +--+------+---+ +--+-------+--+ | |||
| +---+ | | | | | | +---+ | +---+ | | | | | | +---+ | |||
| | +-----------------+ | | | | | +-----------------+ | | | | |||
| | | | +-------------+ | | | | | | +-------------+ | | | |||
| + | + | | +-----------------+ | | | | | | | +-----------------+ | | |||
| X | X | +--------x-----+ | X | | | | | | +--------------+ | | | | |||
| + | + | | | + | | | | | | | | | | | |||
| +---+ +---+ +---+ +---+ | +---+ +---+ +---+ +---+ | |||
| | | | | | | | | | | | | | | | | | | |||
| +---+ +---+ ...............+---+ +---+ | +---+ +---+ ............. +---+ +---+ | |||
| SV(1) SV(2) SV(n-1) SV(n) Leaf | SV(1) SV(2) SV(n-1) SV(n) Leaf | |||
| Figure 11: Dual-homing servers | Figure 11: Dual-homing servers | |||
| In the single plane, the worst condition is disaggregation of every | ||||
| other servers at the same level. Suppose the links from ToR1 (Top of | ||||
| Rack) to all the leaves become not available. All the servers' | ||||
| routes are disaggregated and the FIB of the servers will be expanded | ||||
| with n-1 more specific routes. | ||||
| Sometimes, people may prefer to disaggregate from ToR to servers from | Sometimes, people may prefer to disaggregate from ToR to servers from | |||
| start on, i.e. the servers have couple tens of routes in FIB from | start on, i.e. the servers have couple tens of routes in FIB from | |||
| start on beside default routes to avoid breakages at rack level. | start on beside default routes to avoid breakages at rack level. | |||
| Full disaggregation of the fabric could be achieved by configuration | Full disaggregation of the fabric could be achieved by configuration | |||
| supported by RIFT. | supported by RIFT. | |||
| 5.11. Fabric With A Controller | 5.11. Fabric With A Controller | |||
| There are many different ways to deploy the controller. One | There are many different ways to deploy the controller. One | |||
| possibility is attaching a controller to the RIFT domain from ToF and | possibility is attaching a controller to the RIFT domain from ToF and | |||
| skipping to change at page 31, line 25 ¶ | skipping to change at page 31, line 25 ¶ | |||
| |Spine11| |Spine12| |Spine21| |Spine22| LEVEL 1 | |Spine11| |Spine12| |Spine21| |Spine22| LEVEL 1 | |||
| +-+---+-+ ++----+-+ +-+---+-+ ++----+-+ | +-+---+-+ ++----+-+ +-+---+-+ ++----+-+ | |||
| | | | | | | | | | | | | | | | | | | |||
| | +---------+ | | +---------+ | | | +---------+ | | +---------+ | | |||
| | +-------+ | | | +-------+ | | | | +-------+ | | | +-------+ | | | |||
| | | | | | | | | | | | | | | | | | | |||
| +-+---+-+ +--+--+-+ +-+---+-+ +--+--+-+ | +-+---+-+ +--+--+-+ +-+---+-+ +--+--+-+ | |||
| | | | | | | | | | | | | | | | | | | |||
| |Leaf111| |Leaf112| |Leaf121| |Leaf122| LEVEL 0 | |Leaf111| |Leaf112| |Leaf121| |Leaf122| LEVEL 0 | |||
| +-+-----+ ++------+ +-----+-+ +-----+-+ | +-+-----+ ++------+ +-----+-+ +-----+-+ | |||
| + + + ^ | | + + + ^ + | |||
| PrefixA PrefixB PrefixA | PrefixC | PrefixA PrefixB PrefixA | PrefixC | |||
| | | | | |||
| + traffic | + traffic | |||
| Figure 14: Anycast | Figure 14: Anycast | |||
| If the traffic comes from ToF to Leaf111 or Leaf121 which has anycast | If the traffic comes from ToF to Leaf111 or Leaf121 which has anycast | |||
| prefix PrefixA, RIFT can deal with this case well. But if the | prefix PrefixA, RIFT can deal with this case well. But if the | |||
| traffic comes from Leaf122, it arrives Spine21 or Spine22 at level 1. | traffic comes from Leaf122, it arrives Spine21 or Spine22 at level 1. | |||
| But Spine21 or Spine22 doesn't know another PrefixA attaching | But Spine21 or Spine22 doesn't know another PrefixA attaching | |||
| End of changes. 11 change blocks. | ||||
| 20 lines changed or deleted | 14 lines changed or added | |||
This html diff was produced by rfcdiff 1.48. The latest version is available from http://tools.ietf.org/tools/rfcdiff/ | ||||