Trill Parent node shift, Mitigation. IETF 97, Seoul.

Slides:



Advertisements
Similar presentations
MOBILITY SUPPORT IN IPv6
Advertisements

MULTICASTING Network Security.
IP/ICMP Translation Algorithm (IIT) Xing Li, Congxiao Bao, Fred Baker
TRILL over IP draft-ietf-trill-over-ip-01.txt IETF 91, Honolulu Margaret Wasserman Donald Eastlake, Dacheng Zhang.
The Zone Routing Protocol (ZRP)
Lecture 3a Mobile IP 1. Outline How to support Internet mobility? – by Mobile IP. Our discussion will be based on IPv4 (the current version). 2.
Review Binary Tree Binary Tree Representation Array Representation Link List Representation Operations on Binary Trees Traversing Binary Trees Pre-Order.
TRansparent Interconnection of Lots of Links (TRILL) March 11 th 2010 David Bond University of New Hampshire: InterOperability.
IGP Multicast Architecture Lucy Yong, Weiguo Hao, Donald Eastlake Andrew Qu, Jon Hudson, Uma Chunduri November 2014 Honolulu USA draft-yong-rtgwg-igp-mutlicast-arch-00.
IGP Multicast Architecture Lucy Yong, Weiguo Hao, Donald Eastlake Andrew Qu, Jon Hudson, Uma Chunduri November 2014 Honolulu USA draft-yong-rtgwg-igp-mutlicast-arch-00.
March 12, 2008© Copyright 2008 John Buford SAM Overlay Protocol draft-buford-irtf-sam-overlay-protocol-01.txt John Buford, Avaya Labs Research IETF 71.
Simulation of the OLSRv2 Protocol First Report Presentation.
Simplified Extension of LSP Space for IS-IS draft-ietf-isis-wg-extlsp-00.txt Les Ginsberg Stefano Previdi Mike Shand.
TRILL remaining issues Radia Perlman
1 Role based Auto Mesh IETF86 CCAMP Mar Orlando draft-li-ccamp-role-based-automesh-00.
SRI International 1 Topology Dissemination Based on Reverse-Path Forwarding (TBRPF) Richard Ogier September 21, 2002.
1 Multicast Routing Blackhole Avoidance draft-asati-pim-multicast-routing-blackhole-avoid-00 Rajiv Asati Mike McBride IETF 72, Dublin.
Extended procedures and Considerations for Loop Free Alternatives draft-chunduri-rtgwg-lfa-extended-procedures-01 Uma Chunduri Ericsson Inc. Jeff Tantsura.
Extensions to PCEP for Hierarchical Path Computation Elements PCE draft-zhang-pcep-hierarchy-extensions-00 Fatai Zhang Quintin Zhao.
November 2006IETF TRILL WG1 TRILL Working Group draft-gai-perlman-trill-encap-00.txt as modified by Radia Ed Bowen, IBM Dinesh Dutt, Cisco Silvano Gai,
94th IETF, Yokohama, November 2015 Segment Routing Conflict Resolution draft-ginsberg-spring-conflict-resolution-00 Les Ginsberg
Ordering of Events in Distributed Systems UNIVERSITY of WISCONSIN-MADISON Computer Sciences Department CS 739 Distributed Systems Andrea C. Arpaci-Dusseau.
Author:Zarei.M.;Faez.K. ;Nya.J.M.
draft-jounay-pwe3-dynamic-pw-update-00.txt IETF 70 PWE3 Working Group
Advertising Generic Information in IS-IS
Topic 2: binary Trees COMP2003J: Data Structures and Algorithms 2
PCE-based Computation Procedure for P2MP Inter-domain TE LSP draft-zhao-pce-pcep-inter-domain-p2mp-procedures-06 Quintin Zhao, Zafar.
Update on Advertising L2 Bundle Member Link Attributes in IS-IS
83rd IETF Paris by Tissa Senevirathne Les Ginsberg Ayan Banerjee
Mobile IP.
IETF 67, MPLS WG, San Diego 11/08/2006
Concurrency Control Managing Hierarchies of Database Elements (18.6)
Synchronisation of Network Parameters draft-bryant-rtgwg-param-sync-00
Introduction to Wireless Sensor Networks
Multi-Instances ISIS Extension draft-ietf-isis-mi-08.txt
(How the routers’ tables are filled in)
CS 332: Algorithms Hash Tables David Luebke /19/2018.
Les Ginsberg Stefano Previdi Peter Psenak Martin Pilka
: An Introduction to Computer Networks
6-3 Solving Quadratic Equations by Factoring
Hashing Alexandra Stefan.
FAR: A Fault-avoidance Routing Method for Data Center Networks with Regular Topology Please send.
Single-Area OSPF (Open Shortest Path First Protocol)
Interface to Routing System (I2RS)
Explicitly advertising the TE protocols enabled on links in OSPF
Routing: Distance Vector Algorithm
任課教授:陳朝鈞 教授 學生:王志嘉、馬敏修
Routing.
Database Applications (15-415) DBMS Internals- Part III Lecture 15, March 11, 2018 Mohammad Hammoud.
Dynamic Routing Protocols part2
ACTN Information Model
Link State on Data Center Fabrics
OSPF & ISIS Flooding Reduction
Multi-Way Search Trees
Proposal for IEEE 802.1CQ-LAAP
Polynomial Functions.
CS Introduction to Operating Systems
Proposal for IEEE 802.1CQ-LAAP
Copyright © Aiman Hanna All rights reserved
Trees CMSC 202, Version 5/02.
Separating Routing Planes using Segment Routing draft-gulkohegde-spring-separating-routing-planes-using-sr-00 IETF 98 – Chicago, USA Shraddha Hegde
Planning the Addressing Structure
CMSC 202 Trees.
EE 122: Lecture 22 (Overlay Networks)
Routing.
Lecture 4a Mobile IP 1.
IEEE MEDIA INDEPENDENT HANDOVER DCN:
BPSec: AD Review Comments and Responses
Parag Jain, Samer Salam, Ali Sajassi (Cisco),
draft-venaas-bier-mtud-01
Presentation transcript:

Trill Parent node shift, Mitigation. IETF 97, Seoul. https://datatracker.ietf.org/doc/draft-rp-trill-parent-selection R. Parameswaran, Brocade Communications Inc., parameswaran.r7@gmail.com.

Problem Statement/Summary The parent selection rules, standardized in Trill’s tree construction process, can lead to un-necessary shifts in parent-child relationships, in some situations. This has impacted latency requirements for some customers. The draft presented here proposes two distinct solutions which can be used to address the problem. Requesting adoption if the WG believes this is a problem that should be addressed, with selection of preferred solution.

Problem statement What is the issue with Trill’s standard tree construction method? Let’s see how Trill defines parent selection during tree construction. [RFC6325]: "When building the tree number j, remember all possible equal cost parents for node N. After calculating the entire 'tree‘ (actually, directed graph), for each node N, if N has 'p' parents, then order the parents in ascending order according to the 7-octet IS-IS ID considered as an unsigned integer, and number them starting at zero. For tree j, choose N's parent as choice j mod p."

Problem statement (contd). There is an additional correction posted to this in [RFC7780]: [RFC7780], Section 3.4: “This is changed so that the selected parent MUST be (j-1) mod p. As a result, in the case above, tree 1 will select parent 0, and tree 2 will select parent 1. This change is not backward compatible with [RFC6325]. If all RBridges in a campus do not determine distribution trees in the same way, then for most topologies, the RPFC will drop many multi-destination packets before they have been properly delivered."

Problem Statement (Depiction) 1 2 3 Ordered list is [1 (@ index 0), 2 (@ index 1) , 3 ] Parent selection for nodes B, C, Is mandated by Trill as the node at index: (Tree num – 1) mod num_parents = (2-1) mod 3 = 1, which corresponds to the index of Node 2. 1 2 3 Consider tree 2, and say node A is the tree root. Now, consider what happens if Node 1 goes down? B C Assume that nodes 1, 2, 3 are in sorted order, sorted by ascending order of ISIS 7 octet ID.

Problem Statement (contd) 1 2 3 Ordered list now is [2 (@ index 0) , 3 (@ index 1)] Parent selection for nodes B, C, Is mandated by Trill as the node at index: (Tree num – 1) mod num_parents = (2-1) mod 2 = 1, which corresponds to the index of Node 3. 2 3 Consider what happens if Node 1 goes down? B C B and C’s parents shifted from node 2 to node 3 – this is unnecessary, since 2 never went down. Similar problems can happen with other tree numbers.

Solution (Approach 1). How can this be solved? Affinity sub-TLV (It’s a sub-TLV of the Router capability TLV). Other drafts/RFCs now use affinity sub-TLV in other scenarios. Affinity TLV basically dictates parent-child mappings. Is published by the parent, identifying the list of children it wants to bind to, and the specific tree on which this is to be done. Powerful sub-TLV which could potentially break the network if not used correctly. Applicability to this case, operator pins stickiness to children on a specific (parent) node, using a CLI. Operator takes responsibility of configuring CLI on only one of a set of possible parent nodes (should not be configured on more than one sibling, and should not be configured on the root of the tree).

Solution (Approach 1) Contd. Node publishes affinity sub-TLV specific to children that it’s a parent of, as part of natural tree formation. Note that tree structure will change as links and nodes go down or come up in the network. Parent will either publish unchanged, or change, or retract affinity sub-TLV as network events change the tree, depending on whether it has children or not in the new tree order (parent makes a best-effort to try and preserve its existing child relationships, tree structure permitting, disregarding the default Trill tree construction rule) Other nodes in the network blindly honor the affinity sub-TLV sent by the designated parent, if any. In the event of a retraction of the affinity sub-TLV, other nodes in the network fall back to the default Trill tree construction rules.

Solution, Approach 1: A B C A 1 2 3 Once 2 publishes an affinity sub-TLV, all other nodes in the network factor it, in their tree construction, using Node 2 as the parent for B,C in tree 2’s construction. Node 2 does not blindly honor its own affinity sub-TLV in a literal sense but tries to preserve its parent relationship to its children to the extent possible, and publishes the affinity sub-TLV after its own tree construction of tree 2. Affinity sub-TLV, Tree = 2 , Child = B,C (Originated by 2) 2 3 B C Consider what happens if Node 1 goes down? Node 2 publishes an affinity sub-TLV before Node 1 goes down, preventing the problem of B and C’s parent-shift.

Solution (Approach 2). Use a modified version of SPF which inserts a policy driven selector for the choice of parent when multiple parents can pull a child node into the SPF tree at the same optimal cost. Make the policy function choose based on a previous stable snap-shot of the same tree. Hence for a given child node, it will pick the same parent that it had in the previous stable snap-shot of the tree, before the network churn event happened. This determination happens in a distributed fashion at each node in the network. Hence, nodes in the network had better agree on what the previous stable snap-shot of the tree looked like.

Solution (Approach 2) Contd: This is relatively difficult to do, but we can leverage the fact that by the time routes/result of the tree computation was downloaded to the RIB, all the nodes in the network agreed on the previous stable version of the tree, so use this as trigger to collect the snapshot. May need additional dampening, at the RIB trigger. Works best in small to mid-size networks. Special handling needed for link flaps, other events where the parent child relationship inverts etc..

Solution, Approach 2 A B C A 1 2 3 Nodes latch to their previous stable tree computation and use that to guide tree construction. A is tree root, Node 1 went down. 2 3 Consider tree 2, and say node A is the tree root. Now, consider what happens if Node 1 goes down? B C Initial tree computation uses the Trill default rules. Subsequent tree computations use the previous stable snap-shot to drive parent selection.

Other Considerations: Between the two approaches, approach A is preferable, since affinity sub-TLV makes the network behavior more predictable, unless there are IPR considerations. No IPR on either of these approaches at Brocade Communications, Inc.