[{"author": "Jie Dong", "text": "<p>Welcome to IDR interim meeting</p>", "time": "2024-02-26T15:01:34Z"}, {"author": "Robert Raszuk", "text": "<p>Imagine you have 1000 clients on the RR. And imagine each will send you a different number as to the max add-paths willing to receive. How does this not result in per peer update generation ?</p>", "time": "2024-02-26T15:35:43Z"}, {"author": "Keyur Patel", "text": "<p>Bunch of error handling rules are missing</p>", "time": "2024-02-26T15:37:51Z"}, {"author": "Keyur Patel", "text": "<p>Or so it see</p>", "time": "2024-02-26T15:37:57Z"}, {"author": "Keyur Patel", "text": "<p>a</p>", "time": "2024-02-26T15:37:57Z"}, {"author": "Keyur Patel", "text": "<p>Seems</p>", "time": "2024-02-26T15:38:06Z"}, {"author": "Robert Raszuk", "text": "<p>indeed ..</p>", "time": "2024-02-26T15:38:18Z"}, {"author": "Ketan Talaulikar", "text": "<p>@Jeff this isnt the same as RTC. The sender needs to maintain a per prefix per peer count of paths?</p>", "time": "2024-02-26T15:40:10Z"}, {"author": "Keyur Patel", "text": "<p>Yes it\u2019s not the same as rtc</p>", "time": "2024-02-26T15:40:26Z"}, {"author": "Jeffrey Haas", "text": "<p>It's analogous solely on the idea that it's selective advertisement of routes.  If you advertise exactly one, like rtc, then it looks like that</p>", "time": "2024-02-26T15:41:06Z"}, {"author": "Jeffrey Haas", "text": "<p>If it's add-paths with rtc, then it's same as suppressing specific subsets</p>", "time": "2024-02-26T15:41:27Z"}, {"author": "Jeffrey Haas", "text": "<p>But these are analogies.  It's up to your implementation and we're not trying to mandate someone's specific implementation behave a specific way.</p>", "time": "2024-02-26T15:41:53Z"}, {"author": "Robert Raszuk", "text": "<p>RTC is doing filtering based on the information in the UPDATE ... here you need to keep track what was sent before ... think implicit withdraws</p>", "time": "2024-02-26T15:42:12Z"}, {"author": "Jeffrey Haas", "text": "<p>yes, think implicit withdraws, which is the state our implementation tracks.</p>", "time": "2024-02-26T15:43:08Z"}, {"author": "Ketan Talaulikar", "text": "<p>@robert .. exactly my point. This is a challenge on the sending side.</p>", "time": "2024-02-26T15:43:12Z"}, {"author": "Keyur Patel", "text": "<p>@robert, @ketan - yep</p>", "time": "2024-02-26T15:44:13Z"}, {"author": "Keyur Patel", "text": "<p>But local configuration mode already solves it. So what\u2019s the motivation behind signaling</p>", "time": "2024-02-26T15:44:46Z"}, {"author": "Ketan Talaulikar", "text": "<p>+1 to Keyur</p>", "time": "2024-02-26T15:45:09Z"}, {"author": "Robert Raszuk", "text": "<p>@keyur - indeed especially that this is static config anyway on the \"sender\"</p>", "time": "2024-02-26T15:46:50Z"}, {"author": "Keyur Patel", "text": "<p>Now how does this work in multiple tiered Clos?  Disclaimer - haven\u2019t read the draft</p>", "time": "2024-02-26T15:48:46Z"}, {"author": "Keyur Patel", "text": "<p>And why not use igp if you really need this feature?</p>", "time": "2024-02-26T15:49:07Z"}, {"author": "Keyur Patel", "text": "<p>If the next nexthop link is congested would you withdraw it? Does it generate more updates?</p>", "time": "2024-02-26T15:49:47Z"}, {"author": "Shyam Sethuram", "text": "<p>I guess there was some previous work using DMZ-LB to solve a similar issue</p>", "time": "2024-02-26T15:49:53Z"}, {"author": "Robert Raszuk", "text": "<p>I am actually not sure what problem are we solving ? different multipaths at different stages ?</p>", "time": "2024-02-26T15:50:16Z"}, {"author": "Robert Raszuk", "text": "<p>I am not buying the RAM issue ... you do not need to negotiate addpaths if you are running Raspberry Pi as PE/TOR</p>", "time": "2024-02-26T15:51:03Z"}, {"author": "Kaliraj Vairavakkalai", "text": "<p>Can MPLS-Label (Pop-n-Fwd) be used to indicate the next-nexthop? Along with Addpath.</p>", "time": "2024-02-26T15:55:40Z"}, {"author": "Jie Dong", "text": "<p>Can this problem be solved by using BGP-SPF?</p>", "time": "2024-02-26T15:55:41Z"}, {"author": "Jie Dong", "text": "<p>Here is the link to BGP-SPF draft: <a href=\"https://datatracker.ietf.org/doc/html/draft-ietf-lsvr-bgp-spf-29\">https://datatracker.ietf.org/doc/html/draft-ietf-lsvr-bgp-spf-29</a></p>", "time": "2024-02-26T15:57:44Z"}, {"author": "Jeffrey Haas", "text": "<p>LSVR can provide a flavor of the solution, but is again meant to operate on the distribute topology rather than bandwidth availability.</p>", "time": "2024-02-26T15:58:03Z"}, {"author": "Jeffrey Haas", "text": "<p>The goal remains to locally bias at a given ECMP the weighting of individual links.  This may not simply be \"the upstream path is down\", it may be congested.</p>", "time": "2024-02-26T15:58:31Z"}, {"author": "Jeffrey Haas", "text": "<p>Any mechanism that carries congestion in the topology distribution makes for huge noise in the topology.</p>", "time": "2024-02-26T15:58:52Z"}, {"author": "Jeffrey Haas", "text": "<p>The second draft will likely be applicable to lsvr scenarios as well.</p>", "time": "2024-02-26T15:59:17Z"}, {"author": "Keyur Patel", "text": "<p>The graph using bgp spf gives you exactly that</p>", "time": "2024-02-26T15:59:27Z"}, {"author": "Jeffrey Haas", "text": "<p>I doubt you really wan to shake the graph every few ms.</p>", "time": "2024-02-26T15:59:46Z"}, {"author": "Keyur Patel", "text": "<p>And the link congestion would still need an out of band signaling</p>", "time": "2024-02-26T16:00:08Z"}, {"author": "Jeffrey Haas", "text": "<p>we said that</p>", "time": "2024-02-26T16:00:16Z"}, {"author": "Jeffrey Haas", "text": "<p>The described NNHN draft is just providing a topology binding for that technology</p>", "time": "2024-02-26T16:00:33Z"}, {"author": "Keyur Patel", "text": "<p>Igp guys claim they doesn\u2019t need to worry about running spf frequently</p>", "time": "2024-02-26T16:00:40Z"}, {"author": "Jeffrey Haas", "text": "<p>There's a few igp experts online. Feel free to discuss. :-)</p>", "time": "2024-02-26T16:01:37Z"}, {"author": "Keyur Patel", "text": "<p>Point being - graphs are good way to solve and can be re evaluated frequently. :)</p>", "time": "2024-02-26T16:01:40Z"}, {"author": "Keyur Patel", "text": "<p>I will let them chime in</p>", "time": "2024-02-26T16:02:04Z"}, {"author": "Keyur Patel", "text": "<p>:)</p>", "time": "2024-02-26T16:02:09Z"}, {"author": "Kevin Wang", "text": "<p>@keyur, sorry I lost my mic for a moment while you were asking questions. Would you mind to send the draft you mentioned offline so that we can address your question offline?</p>", "time": "2024-02-26T16:03:50Z"}, {"author": "Jeffrey Haas", "text": "<p>See Jie's message above, Kevin.</p>", "time": "2024-02-26T16:04:12Z"}, {"author": "Ketan Talaulikar", "text": "<p>@Kevin @Jeff can this proposal be generalized to more layers of CLOS? That is the key question ...</p>", "time": "2024-02-26T16:07:45Z"}, {"author": "Jeffrey Haas", "text": "<p>Ketan, possibly so, but the work we're currently addressing is geared toward a local balancing decision based on the immediate upstream's congestion.</p>", "time": "2024-02-26T16:08:35Z"}, {"author": "Donatas Abraitis", "text": "<blockquote>\n<p>Imagine you have 1000 clients on the RR. And imagine each will send you a different number as to the max add-paths willing to receive. How does this not result in per peer update generation ?<br>\nRobert, it results in update-group creation per-peer if the different numbers are used between the peers. But the same is with ADD-PATHS \"Disable-RX\" flag combination.</p>\n</blockquote>", "time": "2024-02-26T16:09:05Z"}, {"author": "Robert Raszuk", "text": "<p>That does not scale. And it is not the same as disable-rx .. as then you have only two groups ON and OFF</p>", "time": "2024-02-26T16:10:01Z"}, {"author": "Donatas Abraitis", "text": "<p>Frankly, I can't imagine 1000 peers with 1000 different limits :)</p>", "time": "2024-02-26T16:10:47Z"}, {"author": "Jeffrey Haas", "text": "<p>And similarly, the feature is predicated on it being an option.  Your choice if you understand the path-limit capability and don't like its suggestion is to either ignore it - or not permit the session to be established.  This is no different than any other capability.</p>", "time": "2024-02-26T16:12:43Z"}, {"author": "Robert Raszuk", "text": "<p>Practically you do not always know how many paths to ask for .. as you do not know how many is present or will be present on RRs.</p>", "time": "2024-02-26T16:15:18Z"}, {"author": "Robert Raszuk", "text": "<p>As suggested on the list instead of raw number let's add add-paths deployment scenario from the draft instead or in addition to</p>", "time": "2024-02-26T16:15:48Z"}, {"author": "Jeffrey Haas", "text": "<p>List discussion is good, but fundamentally it comes down to letting the reflector be configured for a common number of paths it thinks the downstreams in the network would like and letting the clients - which know their own limitations or needs - signal the choice.</p>", "time": "2024-02-26T16:19:22Z"}, {"author": "Jeffrey Haas", "text": "<p>Very similar to prior discussion on the RD-orf, don't make the client have to throw it all away and don't make the reflector clog its pipes with things that are trash to the client.</p>", "time": "2024-02-26T16:19:58Z"}, {"author": "Donatas Abraitis", "text": "<p>1 full-feed is ~700Mb of memory, it's quite easy to calculate. For a small leaf device, that's a huge issue actually to run add-paths at all. At least we had similar issue when enabled add-paths with only 5 paths per prefix, and everything just melted.</p>", "time": "2024-02-26T16:20:21Z"}, {"author": "Robert Raszuk", "text": "<p>Then do not run add-paths at all</p>", "time": "2024-02-26T16:20:57Z"}, {"author": "Ketan Talaulikar", "text": "<p>@Jeff, but this is also solved via sender (RR) side config knobs today as well. right? If so, perhaps the draft should at least state that and then justify the need for signaling the value.</p>", "time": "2024-02-26T16:21:00Z"}, {"author": "Robert Raszuk", "text": "<p>Or run with add-paths 2</p>", "time": "2024-02-26T16:21:06Z"}, {"author": "Donatas Abraitis", "text": "<p>What do you mean \"with add-paths 2\"?</p>", "time": "2024-02-26T16:21:35Z"}, {"author": "Donatas Abraitis", "text": "<p>@Ketan, some implementations have, some not, thus it might be a helpful defining this (what this draft also does technically)...</p>", "time": "2024-02-26T16:23:01Z"}, {"author": "Robert Raszuk", "text": "<p>Add-paths 2 - sender side cfg</p>", "time": "2024-02-26T16:24:02Z"}, {"author": "Ketan Talaulikar", "text": "<p>@Donatas, the sender side config knob option will be a simpler thing for implementations that do not have this already ... than the dynamic signaling part.</p>", "time": "2024-02-26T16:24:39Z"}, {"author": "Donatas Abraitis", "text": "<p>simpler, but undefined :) and technically, VERY LITTLE simpler :)</p>", "time": "2024-02-26T16:25:42Z"}, {"author": "Robert Raszuk", "text": "<p>What do you mean \"undefined\" ?  google for \"bgp additional-paths select best &lt;number&gt;\"</p>", "time": "2024-02-26T16:27:43Z"}, {"author": "Ketan Talaulikar", "text": "<p>@ Donatas, please feel free to pivot your draft to define the config knob behavior ;-)</p>", "time": "2024-02-26T16:29:30Z"}, {"author": "Donatas Abraitis", "text": "<p>I know that it's possible by some implementations, but... What if I'm not under the administrative domain? Or what if I want to change that dynamically (paths limit), but the RR side has template? Then reconfiguration must happen at some level.</p>", "time": "2024-02-26T16:30:07Z"}, {"author": "Ketan Talaulikar", "text": "<p>@ Donatas, that sort of justification for dynamic signaling in the draft will be helpful</p>", "time": "2024-02-26T16:31:12Z"}, {"author": "Donatas Abraitis", "text": "<p>I mean it's much more dynamic, than trusting the sender-side. In other words: \"clients-side throtheling\".</p>", "time": "2024-02-26T16:31:17Z"}, {"author": "Donatas Abraitis", "text": "<p>@Ketan for example? Could you reply in the IDR list, would be easier to track? :) Thanks.</p>", "time": "2024-02-26T16:31:51Z"}, {"author": "Jeffrey Haas", "text": "<p>ketan, the addpaths limit is absolutely a provisioning discussion.  yes, you can always do it at the sender. do that if you like.  this is an option.</p>", "time": "2024-02-26T16:39:09Z"}, {"author": "Robert Raszuk", "text": "<p>But the same OPS will configure either the RR or 1000s of PEs which in turn are to push stuff to this RR - which one is less error prone ?</p>", "time": "2024-02-26T16:40:21Z"}, {"author": "Ketan Talaulikar", "text": "<p>@Robert - great point!</p>", "time": "2024-02-26T16:42:30Z"}, {"author": "Jeffrey Haas", "text": "<p>\"Which one is less error prone\" makes up way too much of my discussions with service providers, especially large ones with territorial arguments about backbones vs. edge devices.</p>", "time": "2024-02-26T16:42:38Z"}, {"author": "Jeffrey Haas", "text": "<p>in any case, you don't like it, don't implement it.  we already have the capability code.</p>", "time": "2024-02-26T16:43:17Z"}, {"author": "Robert Raszuk", "text": "<p>@jeff with that approach we may as well avoid any WG input ...</p>", "time": "2024-02-26T16:51:49Z"}, {"author": "Jie Dong", "text": "<p>@Ketan we will think about the terminology alignment with PCEP</p>", "time": "2024-02-26T16:52:19Z"}, {"author": "Ketan Talaulikar", "text": "<p>@Jie ... thanks. It will help clarify that this is bringing something from PCEP into BGP-SRTE.</p>", "time": "2024-02-26T16:53:18Z"}, {"author": "Jie Dong", "text": "<p>@Kaliraj we can add some details about the allocation in the draft</p>", "time": "2024-02-26T16:55:14Z"}]