Joel - No - I am not "asking" for anything.
I am simply trying to demonstrate that a deployment that has nodes with significantly different flooding rate support can encounter long periods of looping in certain failure scenarios - and that a similar period of looping would NOT occur if all nodes supported a consistent flooding rate. Do not read anything else into this. Les > -----Original Message----- > From: Joel M. Halpern <j...@joelhalpern.com> > Sent: Wednesday, May 06, 2020 11:19 AM > To: Les Ginsberg (ginsberg) <ginsb...@cisco.com> > Cc: lsr@ietf.org > Subject: Re: [Lsr] Flooding across a network > > Les, maybe I am missing your point, but it sounds like what you are > asking for is a (better?) version of the micro-loop prevention work, so > as to mitigate the interaction between inconsistent convergence and > fast-reroute? > > Yours, > Joel > > On 5/6/2020 1:53 PM, Les Ginsberg (ginsberg) wrote: > > Bruno - > > > > I am sorry it has been so difficult for us to understand each other. I am > trying my best. > > > > Look at it this way: > > > > You are the customer. 😊 > > I am the vendor. > > > > The failure scenario I describe below happens and you notice that all > Northbound destinations loop for 35 seconds whenever fast flooding is > enabled. > > I think you are going to complain about this - to me. 😊 > > > > And I am going to tell you that this is a consequence of enabling fast > flooding in the presence of a node which does not support it. Your options to > reduce the period of looping will be: > > > > 1)Upgrade the slow node to support faster flooding > > 2)Disable fast flooding > > 3)Redesign your network > > > > Les > > > >> -----Original Message----- > >> From: bruno.decra...@orange.com <bruno.decra...@orange.com> > >> Sent: Wednesday, May 06, 2020 10:10 AM > >> To: Christian Hopps <cho...@chopps.org> > >> Cc: Les Ginsberg (ginsberg) <ginsb...@cisco.com>; lsr@ietf.org > >> Subject: RE: [Lsr] Flooding across a network > >> > >>> From: Christian Hopps [mailto:cho...@chopps.org] > >>> > >>> Bruno persistence has made me realize something fundamental here. > >>> > >>> The minute the LSP originator changes the LSP and floods it you have > LSDB > >> inconsistency. > >> > >> Exactly my point. Thank you Chris. > >> I would even say: "The minute the LSP originator changes the LSP then > you > >> have LSDB inconsistency." But no big deal if there is disagreement on this > >> detail. > >> > >>> That is going to last until the last node in the network has updated it's > LSDB. > >> > >> Absolutely. > >> So the faster we flood, the shorter the LSBD inconsistency. > >> > >> Now IMO, even if a single/few nodes flood faster, there is a chance of > >> shortening the LSDB inconsistency. But in all cases, I don't see how this > could > >> make the LSDB inconsistency longer. > >> > >> > >>> Les is pointing out that LSDB inconsistency can be bad in certain > >> circumstances e.g., if a critical node is slow and thus inconsistent. > >>> > >>> I believe the right way to fix this is a simple one, help the operator > >>> flag > the > >> broken router software/hardware for replacement, but otherwise IS-IS > >> should just try to do the best job it can do to which is to flood around > >> the > >> problem (i.e., flood as optimally as possible). > >> > >> +1 > >> On a side note, I would not call a router flooding slowly as "broken". I > >> find > it > >> understandable that in a given network there are different type of > routers > >> (core vs aggregation), different roles (P having 50 IGP adjacencies with 50 > PEs > >> vs PE having only 2 IGP adjacencies with 2 P), different hardware > >> generations, different software, different vendors with different > >> perspectives/markets. > >> > >> Thank you Chris. > >> > >> --Bruno > >>> > >>> Thanks, > >>> Chris. > >>> [as WG member] > >>> > >>> > >>>> On May 6, 2020, at 10:33 AM, bruno.decra...@orange.com wrote: > >>>> > >>>> Les, > >>>> > >>>> From: Les Ginsberg (ginsberg) [mailto:ginsb...@cisco.com] > >>>> Sent: Wednesday, May 6, 2020 4:14 PM > >>>> To: DECRAENE Bruno TGI/OLN > >>>> Cc: lsr@ietf.org > >>>> Subject: RE: Flooding across a network > >>>> > >>>> Bruno – > >>>> > >>>> I am somewhat at a loss to understand your comments. > >>>> The example is straightforward and does not need to consider FIB > update > >> time nor the ordering of prefix updates on different nodes. > >>>> [Bruno] The example is straightforward but you are referring to FIB and > IP > >> packets forwarding as per those FIBs. > >>>> I’d like we focus on LSP flooding and LSDB consistency. > >>>> > >>>> Consider the state of Node B and Node D at various time points from > the > >> trigger event. > >>>> > >>>> T+ 2 seconds: > >>>> ----------------- > >>>> B has received all LSP Updates. It triggers an SPF and for all Northbound > >> destinations previously reachable via C it installs paths via D. > >>>> Let’s assume it take 5 seconds to update the forwarding plane. > >>>> > >>>> D has received 40 of the 1000 LSP updates. It triggers an SPF and finds > >> that all Northbound destinations are reachable via B-C. It makes no > changes > >> to the forwarding plane. > >>>> > >>>> T+7 seconds > >>>> ----------------- > >>>> B has completed FIB updates. Traffic to all Northbound destinations is > >> being forwarded via D. > >>>> > >>>> D has now received 140 of the 1000 LSP updates. Entries in its > forwarding > >> plane for Northbound destinations still point to B. > >>>> > >>>> We have a loop. > >>>> > >>>> T + 30 seconds > >>>> -------------------- > >>>> D has now received 600 of the 1000 LSP updates. Still no changes to its > >> forwarding plane. > >>>> Traffic to Northbound destinations is still looping. > >>>> > >>>> T+ 50 seconds > >>>> ------------------- > >>>> D has finally received all 1000 LSP updates.. > >>>> It triggers (another) SPF and calculates paths to Northbound > destinations > >> via E. It begins to update its forwarding plane. > >>>> Let’s assume this will take 5 seconds.. > >>>> > >>>> T + 55 seconds > >>>> -------------------- > >>>> D has completed forwarding plane updates – no more looping. > >>>> > >>>> That is all I am trying to illustrate. > >>>> > >>>> If you want to start arguing that node protecting LFAs + microloop > >> avoidance could help (NOTE I explicitly took those out of the example for > >> simplicity) – it is easy enough to change the example to include multiple > node > >> failures or a node failure plus some northbound link failures on other > nodes. > >>>> [Bruno] I’m not talking about LFA/FRR. And with regards to microloops > >> avoidance, some algorithms can handle any graph transition so including > >> multiple node failures. > >>>> > >>>> But again, let’s stick to LSP flooding and LSDB consistency. (you are the > >> one speaking about microloops in the forwarding plane). > >>>> > >>>> The point here is to look at the impact of long-lived LSDB inconsistency > >> which results when some nodes support flooding an order of magnitude > >> faster flooding than other nodes – which is what you asked me to clarify. > >>>> [Bruno] No. I asked you to clarify why having a node with faster > flooding > >> could prolongs the period of LSDB inconsistency. > >>>> > >>>> Again, with you own words: “when only some nodes in the network > >> support faster flooding the behavior of the whole network may not be > >> "better" when faster flooding is enabled because it prolongs the period of > >> LSDB inconsistency.” > >>>> And with less words: “when only some nodes in the network support > >> faster flooding […] it prolongs the period of LSDB inconsistency.” > >>>> > >>>> --Bruno > >>>> > >>>> Les > >>>> > >>>> > >>>> > >>>> From: bruno.decra...@orange.com <bruno.decra...@orange.com> > >>>> Sent: Wednesday, May 06, 2020 6:21 AM > >>>> To: Les Ginsberg (ginsberg) <ginsb...@cisco.com> > >>>> Cc: lsr@ietf.org > >>>> Subject: RE: Flooding across a network > >>>> > >>>> Les, > >>>> > >>>> From: Les Ginsberg (ginsberg) [mailto:ginsb...@cisco.com] > >>>> Sent: Wednesday, May 6, 2020 1:35 AM > >>>> To: DECRAENE Bruno TGI/OLN; l...@ietf..org > >>>> Subject: RE: Flooding across a network > >>>> > >>>> Bruno - > >>>> > >>>> Seems like it was not too long ago that we were discussing this in > person. > >> Ahhh...the good old days... > >>>> [Bruno] Indeed, may be not to the point of concluding. Indeed. > >>>> > >>>> First, let's agree that the interesting case does not involve 1 or even a > >> small number of LSPs. For those cases flooding speed does not matter. > >>>> The interesting cases involve a large number of LSPs (hundreds or > >> thousands). And in such cases LFA/microloop avoidance techniques are > not > >> applicable. > >>>> > >>>> Take the following simple topology: > >>>> > >>>> | | ... | | > >>>> +---+ +---+ > >>>> | C | | E | > >>>> +---+ +---+ > >>>> | | 1000 > >>>> +---+ +---+ > >>>> | B |-------------| D | > >>>> +---+ 1000 +---+ > >>>> | | > >>>> | | > >>>> \ / > >>>> \ / > >>>> \ / > >>>> \ / > >>>> +---+ > >>>> | A | > >>>> +---+ > >>>> > >>>> There is a topology northbound of C and E (not shown) and a topology > >> southbound of A (not shown). > >>>> Cost on all links is 10 except B-D and D-E where cost is high. > >>>> > >>>> C is a node with 1000 neighbors. > >>>> When all links are up, shortest path for all northbound destinations is > via > >> C. > >>>> All nodes in the network support fast flooding except for Node D. > >>>> Let’s say fast flooding is 500 LSPs/second and slow flooding (Node D) is > 20 > >> LSPs/seconds. > >>>> If Node C fails we have 1000 LSPs to flood. > >>>> All nodes except for D can receive these in 2 seconds (plus internode > >> delay time). > >>>> D can receive LSPs in 50 seconds. > >>>> > >>>> [Bruno] Thanks for your example. Agreed so far. > >>>> > >>>> When A and B and all southbound nodes receive/process the LSP > >> updates they will start sending traffic to Northbound destinations via D. > >>>> But for the better part of 50 seconds, Node D has yet to receive all LSP > >> updates and still believes that shortest path is via B-C. It will loop > >> traffic. > >>>> > >>>> [Bruno] May I remind you that we are discussing IS-IS flooding in order > to > >> sync LSDB (LSP database). That is already a big enough subject. It does not > >> including FIB (updates), nor IP forwarding. > >>>> > >>>> Quoting you “when only some nodes in the network support faster > >> flooding the behavior of the whole network may not be "better" when > faster > >> flooding is enabled because it prolongs the period of LSDB inconsistency.” > >>>> > >>>> Taking your own examples, in both cases (all nodes support fast > flooding; > >> all nodes but D support fast flooding) the period of LSDB inconsistency is > 50 > >> seconds. Hence this example does not illustrate your statement. > >>>> > >>>> Hence I’m restating my questions: > >>>> > >>>>>> when only some nodes in the network support faster flooding the > >> behavior > >>>>> of the whole network may not be "better" when faster flooding is > >> enabled > >>>>> because it prolongs the period of LSDB inconsistency. > >>>>> > >>>>> 1) Do you have data on this? > >>>>> > >>>>> 2) If not, can you provide an example where increasing the flooding > >> rate on > >>>>> one adjacency prolongs the period of LSDB inconsistency across the > >>>>> network? > >>>> > >>>> > >>>> Had all nodes used slow flooding, it still would have taken 50 seconds to > >> converge, but there would be significantly less looping. There could be a > >> good amount of blackholing, but this is preferable to looping. > >>>> [Bruno] You are using an example where ordering FIB updates across > the > >> network, e.g. as per [1], allows to reduce _FIB_ inconsistency across the > >> path/network. And you seem to conclude from this that this translates to > >> LSDB update ordering. Those are two different things. In this thread, I’d > >> suggest that we focus on IGP flooding and LSDB sync only. (*) > >>>> [1] https://tools.ietf.org/html/rfc6976 > >>>> (*) We can discuss loop free IGP converge in a different thread if you > >> want. IMO, the use of segment routing/source routing is better than oFIB. > >> But at some point, it still relies on fast flooding when multiple LSPs are > >> involved. (and I mean _fast_ not _ordered_) > >>>> > >>>> --Bruno > >>>> > >>>> One can always come up with examples – based on a specific topology > >> and a specific failure - where things might be better/worse/unchanged in > the > >> face of inconsistent flooding speed support. > >>>> But I hope this simple example illustrates the pitfalls. > >>>> > >>>> Les > >>>> > >>>>> -----Original Message----- > >>>>> From: bruno.decra...@orange.com > <bruno.decra...@orange.com> > >>>>> Sent: Tuesday, May 05, 2020 8:28 AM > >>>>> To: Les Ginsberg (ginsberg) <ginsb...@cisco.com>; lsr@ietf.org > >>>>> Subject: Flooding across a network > >>>>> > >>>>> Les, > >>>>> > >>>>>> From: Lsr [mailto:lsr-boun...@ietf.org] On Behalf Of Les Ginsberg > >>>>> (ginsberg) > >>>>>> Sent: Monday, May 4, 2020 4:39 PM > >>>>> [...] > >>>>>> when only some nodes in the network support faster flooding the > >> behavior > >>>>> of the whole network may not be "better" when faster flooding is > >> enabled > >>>>> because it prolongs the period of LSDB inconsistency. > >>>>> > >>>>> 1) Do you have data on this? > >>>>> > >>>>> 2) If not, can you provide an example where increasing the flooding > >> rate on > >>>>> one adjacency prolongs the period of LSDB inconsistency across the > >>>>> network? > >>>>> > >>>>> 3) In the meantime, let's try the theoretical analysis on a simple > >> scenario > >>>>> where a single LSP needs to be flooded across the network. > >>>>> > >>>>> - Let's call Dij the time needed to flood the LSP from node i to the > >> adjacent > >>>>> node j. Clearly Dij>0. > >>>>> - Let's call k the node originating this LSP at t0=0s > >>>>> > >>>>> >From t0, the LSDB is inconsistent across the network as all nodes but > k > >> are > >>>>> missing the LSP and hence only know about the 'old' topology. > >>>>> > >>>>> Let's call SPT(k) the SPT rooted on k, using Dij as the metric between > >>>>> adjacent nodes i and j. Let's call SP(k,i) the shortest path from k to > >>>>> i; > and > >>>>> D(k,i) the shortest distance between k and i. > >>>>> > >>>>> It seems that the time needed: > >>>>> - for node j to learn about the LSP, and get in sync with k, is D(k,j) > >>>>> - for all nodes across the network to learn about the LSP, and get in > sync > >> with > >>>>> k, is Max[for all j] D(k,j) > >>>>> > >>>>> Then how can reducing the flooding delay on one adjacency could > >> prolongs > >>>>> the period of LSDB inconsistency? > >>>>> It seems to me that it can only improve/decrease it. Otherwise, this > >> would > >>>>> mean that decreasing the cost on a link can increase the cost of the > >> shortest > >>>>> path. > >>>>> > >>>>> Note: I agree that there are other cases, such as multiple LSPs > >> originated by > >>>>> the same node, and multiple LSPs originated by multiple nodes, but > >> let's start > >>>>> with the simple case. > >>>>> > >>>>> Thanks, > >>>>> --Bruno > >>>>> > >>>>>> -----Original Message----- > >>>>>> From: Lsr [mailto:lsr-boun...@ietf.org] On Behalf Of Les Ginsberg > >>>>> (ginsberg) > >>>>>> Sent: Monday, May 4, 2020 4:39 PM > >>>>>> > >>>>>> Henk - > >>>>>> > >>>>>> Thanx for your thoughtful posts. > >>>>>> I have read your later posts on this thread as well - but decided to > >> reply to > >>>>> this one. > >>>>>> Top posting for better readability. > >>>>>> > >>>>>> There is broad agreement that faster flooding is desirable. > >>>>>> There are now two proposals as to how to address the issue - > neither > >> of > >>>>> which is proposing to use TCP (or equivalent). > >>>>>> > >>>>>> I have commented on why IS-IS flooding requirements are > >> significantly > >>>>> different than that for which TCP is used. > >>>>>> I think it is also useful to note that even the simple test case which > >> Bruno > >>>>> reported on in last week's interim meeting demonstrated that > without > >> any > >>>>> changes to the protocol at all IS-IS was able to flood an order of > >> magnitude > >>>>> faster than it commonly does today. > >>>>>> This gives me hope that we are looking at the problem correctly and > >> will not > >>>>> need "TCP". > >>>>>> > >>>>>> Introducing a TCP based solution requires: > >>>>>> > >>>>>> a)A major change to the adjacency formation logic > >>>>>> > >>>>>> b)Removal of the independence of the IS-IS protocol from the > >> address > >>>>> families whose reachability advertisements it supports - something > >> which I > >>>>> think is a great strength of the protocol - particularly in environments > >> where > >>>>> multiple address family support is needed > >>>>>> > >>>>>> I really don't want to do either of the above. > >>>>>> > >>>>>> Your comments regarding PSNP response times are quite correct - > >> and > >>>>> both of the draft proposals discuss this - though I agree more detail > will > >> be > >>>>> required. > >>>>>> It is intuitive that if you want to flood faster you also need to ACK > >> faster - > >>>>> and probably even retransmit faster when that is needed. > >>>>>> The basic relationship between retransmit interval and PSNP interval > >> is > >>>>> expressed in ISO 10589: > >>>>>> > >>>>>> " partialSNPInterval - This is the amount of time between periodic > >>>>> > action for transmission of Partial Sequence Number PDUs. > >>>>> > It shall be less than minimumLSPTransmission-Interval." > >>>>>> > >>>>>> Of course ISO 10589 recommended values (2 seconds and 5 seconds > >>>>> respectively) associated with a much slower flooding rate and > >>>>> implementations I am aware of use values in this order of magnitude. > >> These > >>>>> numbers need to be reduced if we are to flood faster, but the > >> relationship > >>>>> between the two needs to remain the same. > >>>>>> > >>>>>> It is also true - as you state - that sending ACKs more quickly will > result > >> in > >>>>> additional PDUs which need to be received/processed by IS-IS - and > this > >> has > >>>>> some impact. But I think it is reasonable to expect that an > >> implementation > >>>>> which can support sending and receiving LSPs at a faster rate should > >> also be > >>>>> able to send/receive PSNPs at a faster rate. But we still need to be > >> smarter > >>>>> than sending one PSNP/one LSP in cases where we have a burst. > >>>>>> > >>>>>> LANs are a more difficult problem than P2P - and thus far draft- > >> ginsberg-lsr- > >>>>> isis-flooding-scale has been silent on this - but not because we aren't > >> aware > >>>>> of this - just have focused on the P2P behavior first. > >>>>>> What the best behavior on a LAN may be is something I am still > >> considering. > >>>>> Slowing flooding down to the speed at which the slowest IS on the > LAN > >> can > >>>>> support may not be the best strategy - as it also slows down the > >> propagation > >>>>> rate for systems downstream from the nodes on the LAN which can > >> handle > >>>>> faster flooding - thereby having an impact on flooding speed > >> throughout the > >>>>> network in a way which may be out of proportion. This is a smaller > >> example > >>>>> of the larger issue that when only some nodes in the network support > >> faster > >>>>> flooding the behavior of the whole network may not be "better" > when > >> faster > >>>>> flooding is enabled because it prolongs the period of LSDB > >> inconsistency. > >>>>> More work needs to be done here... > >>>>>> > >>>>>> In summary, I don't expect to have to "reinvent TCP" - but I do think > >> you > >>>>> have provided a useful perspective for us to consider as we progress > on > >> this > >>>>> topic, > >>>>>> > >>>>>> Thanx. > >>>>>> > >>>>> > Les > >>>>>> > >>>>>> > >>>>>>> -----Original Message----- > >>>>>>> From: Lsr <lsr-boun...@ietf.org> On Behalf Of Henk Smit > >>>>>>> Sent: Thursday, April 30, 2020 6:58 AM > >>>>>>> To: lsr@ietf.org > >>>>>>> Subject: [Lsr] Why only a congestion-avoidance algorithm on the > >> sender > >>>>> isn't > >>>>>>> enough > >>>>>>> > >>>>>>> > >>>>>>> Hello all, > >>>>>>> > >>>>>>> Two years ago, Gunter Van de Velde and myself published this > >> draft: > >>>>>>> https://tools.ietf.org/html/draft-hsmit-lsr-isis-flooding-over-tcp-00 > >>>>>>> That started this discussion about flow/congestion control and ISIS > >>>>>>> flooding. > >>>>>>> > >>>>>>> My thoughts were that once we start implementing new > algorithms > >> to > >>>>>>> optimize ISIS flooding speed, we'll end up with our own version of > >> TCP. > >>>>>>> I think most people here have a good general understanding of > TCP. > >>>>>>> But if not, this is a good overview how TCP does it: > >>>>>>> https://en.wikipedia.org/wiki/TCP_congestion_control > >>>>>>> > >>>>>>> > >>>>>>> What does TCP do: > >>>>>>> ==== > >>>>>>> TCP does 2 things: flow control and congestion control. > >>>>>>> > >>>>>>> 1) Flow control is: the receiver trying to prevent itself from being > >>>>>>> overloaded. The receiver indicates, through the receiver-window- > >> size > >>>>>>> in the TCP acks, how much data it can or wants to receive. > >>>>>>> 2) Congestion control is: the sender trying to prevent the links > >> between > >>>>>>> sender and receiver from being overloaded. The sender makes an > >>>>> educated > >>>>>>> guess at what speed it can send. > >>>>>>> > >>>>>>> > >>>>>>> The part we seem to be missing: > >>>>>>> ==== > >>>>>>> For the sender to make a guess at what speed it can send, it looks > at > >>>>>>> how the transmission is behaving. Are there drops ? What is the > RTT > >> ? > >>>>>>> Do drop-percentage and RTT change ? Do acks come in at the same > >> rate > >>>>>>> as the sender sends segments ? Are there duplicate acks ? To be > >> able > >>>>>>> to do this, the sender must know what to expect. How acks > behave. > >>>>>>> > >>>>>>> If you want an ISIS sender to make a guess at what speed it can > >> send, > >>>>>>> without changing the protocol, the only thing the sender can do is > >> look > >>>>>>> at the PSNPs that come back from the receiver. But the RTT of > >> PSNPs can > >>>>>>> not be predicted. Because a good ISIS implementation does not > >>>>>>> immediately > >>>>>>> send a PSNP when it receives a LSP. 1) the receiver should jitter the > >>>>>>> PSNP, > >>>>>>> like it should jitter all packets. And 2) the receiver should wait a > >>>>>>> little > >>>>>>> to see if it can combine multiple acks into a single PSNP packet. > >>>>>>> > >>>>>>> In TCP, if a single segment gets lost, each new segment will cause > >> the > >>>>>>> receiver to send an ack with the seqnr of the last received byte. > This > >>>>>>> is called "duplicate acks". This triggers the sender to do > >>>>>>> fast-retransmission. In ISIS, this can't be be done. The information > >>>>>>> a sender can get from looking at incoming PSNPs is a lot less than > >> what > >>>>>>> TCP can learn from incoming acks. > >>>>>>> > >>>>>>> > >>>>>>> The problem with sender-side congestion control: > >>>>>>> ==== > >>>>>>> In ISIS, all we know is that the default retransmit-interval is 5 > >>>>>>> seconds. > >>>>>>> And I think most implementations use that as the default. This > >> means > >>>>>>> that > >>>>>>> the receiver of an LSP has one requirement: send a PSNP within 5 > >>>>>>> seconds. > >>>>>>> For the rest, implementations are free to send PSNPs however and > >>>>>>> whenever > >>>>>>> they want. This means a sender can not really make conclusions > >> about > >>>>>>> flooding speed, dropped LSPs, capacity of the receiver, etc. > >>>>>>> There is no ordering when flooding LSPs, or sending PSNPs. This > >> makes > >>>>>>> a sender-side algorithm for ISIS a lot harder. > >>>>>>> > >>>>>>> When you think about it, you realize that a sender should wait the > >>>>>>> full 5 seconds before it can make any real conclusions about > >> dropped > >>>>>>> LSPs. > >>>>>>> If a sender looks at PSNPs to determine its flooding speed, it will > >>>>>>> probably > >>>>>>> not be able to react without a delay of a few seconds. A sender > >> might > >>>>>>> send > >>>>>>> hunderds or thousands of LSPs in those 5 seconds, which might all > >> or > >>>>>>> partially be dropped, complicating matters even further. > >>>>>>> > >>>>>>> > >>>>>>> A sender-sider algorithm should specify how to do PSNPs. > >>>>>>> ==== > >>>>>>> So imho a sender-side only algorithm can't work just like that in a > >>>>>>> multi-vendor environment. We must not only specify a congestion- > >>>>> control > >>>>>>> algorithm for the sender. We must also specify for the receiver a > >> more > >>>>>>> specific algorithm how and when to send PSNPs. At least how to do > >>>>> PSNPs > >>>>>>> under load. > >>>>>>> > >>>>>>> Note that this might result in the receiver sending more (and > >> smaller) > >>>>>>> PSNPs. > >>>>>>> More packets might mean more congestion (inside routers). > >>>>>>> > >>>>>>> > >>>>>>> Will receiver-side flow-control work ? > >>>>>>> ==== > >>>>>>> I don't know if that's enough. It will certainly help. > >>>>>>> > >>>>>>> I think to tackle this problem, we need 3 parts: > >>>>>>> 1) sender-side congestion-control algorithm > >>>>>>> 2) more detailed algorithm on receiver when and how to send > >> PSNPs > >>>>>>> 3) receiver-side flow-control mechanism > >>>>>>> > >>>>>>> As discussed at length, I don't know if the ISIS process on the > >>>>>>> receiving > >>>>>>> router can actually know if its running out of resources (buffers on > >>>>>>> interfaces, linecards, etc). That's implementation dependent. A > >> receiver > >>>>>>> can definitely advertise a fixed value. So the sender has an upper > >> bound > >>>>>>> to use when doing congestion-control. Just like TCP has both a > >>>>>>> flow-control > >>>>>>> window and a congestion-control window, and a sender uses both. > >>>>> Maybe > >>>>>>> the > >>>>>>> receiver can even advertise a dynamic value. Maybe now, maybe > >> only in > >>>>>>> the > >>>>>>> future. An advertised upper limit seems useful to me today. > >>>>>>> > >>>>>>> > >>>>>>> What I didn't like about our own proposal (flooding over TCP): > >>>>>>> ==== > >>>>>>> The problem I saw with flooding over TCP concerns multi-point > >> networks > >>>>>>> (LANs). > >>>>>>> > >>>>>>> When flooding over a multi-point network, setting up TCP > >> connections > >>>>>>> introduces serious challenges. Who are the endpoints of the TCP > >>>>>>> connections ? > >>>>>>> Full mesh ? Or do all ISes on a LAN create a TCP-connection to the > >> DIS ? > >>>>>>> There is no backup DIS in ISIS (unlike OSPF). Things get messy > >> quickly. > >>>>>>> > >>>>>>> However, the other two proposals do not solve this problem > either. > >>>>>>> How will a sender-side congestion-avoidence algorithm determine > >>>>> whether > >>>>>>> there were drops ? There are no acks (PSNPs) on a LAN. We > assume > >> most > >>>>>>> LSPs > >>>>>>> that are broadcasted are received by all other ISes on the LAN. > >> There > >>>>>>> are > >>>>>>> no acks. Only after the DIS has sent its periodic CSNPs, ISes can > send > >>>>>>> PSNPs to request retransmissions. It seems impossible (or very > >> hard) to > >>>>>>> me for all ISes on a LAN to keep track of dropped LSPs and adjust > >> their > >>>>>>> sending speed accordingly.. > >>>>>>> > >>>>>>> When flooding on a LAN, the receiver-side algorithm seems best. > >>>>> Because > >>>>>>> all ISes can see what the lowest advertised sending-speed is. And > >> make > >>>>>>> sure they send slow enough to not overload the slowest IS. I'm not > >> sure > >>>>>>> this is a good solution, but is seems easier and more realistic than > >>>>>>> ISIS-flooding-over-TCP or sender-side congestion-avoidance. > >>>>>>> > >>>>>>> > >>>>>>> My conclusion: > >>>>>>> ==== > >>>>>>> Sender-side congestion-control won't work without specifying in > >> more > >>>>>>> detail how and when to send PSNPs. > >>>>>>> Receiver-side flow-control will certainly help. I dont' know if it's > >>>>>>> good enough. I don't know if advertising a static value is good > >> enough. > >>>>>>> But it's a start. > >>>>>>> > >>>>>>> I still think we'll end up re-implementing a new (and weaker) TCP. > >>>>>>> > >>>>>>> > >>>>>>> henk. > >>>>>>> > >>>>>>> _______________________________________________ > >>>>>>> Lsr mailing list > >>>>>>> Lsr@ietf.org > >>>>>>> https://www.ietf.org/mailman/listinfo/lsr > >>>>>> > >>>>>> _______________________________________________ > >>>>>> Lsr mailing list > >>>>>> Lsr@ietf.org > >>>>>> https://www.ietf.org/mailman/listinfo/lsr > >>>>> > >>>>> > >> > __________________________________________________________ > >>>>> > >> > __________________________________________________________ > >>>>> _____ > >>>>> > >>>>> Ce message et ses pieces jointes peuvent contenir des informations > >>>>> confidentielles ou privilegiees et ne doivent donc > >>>>> pas etre diffuses, exploites ou copies sans autorisation. Si vous avez > >> recu ce > >>>>> message par erreur, veuillez le signaler > >>>>> a l'expediteur et le detruire ainsi que les pieces jointes. Les messages > >>>>> electroniques etant susceptibles d'alteration, > >>>>> Orange decline toute responsabilite si ce message a ete altere, > >> deforme ou > >>>>> falsifie. Merci. > >>>>> > >>>>> This message and its attachments may contain confidential or > privileged > >>>>> information that may be protected by law; > >>>>> they should not be distributed, used or copied without authorisation. > >>>>> If you have received this email in error, please notify the sender and > >> delete > >>>>> this message and its attachments. > >>>>> As emails may be altered, Orange is not liable for messages that have > >> been > >>>>> modified, changed or falsified. > >>>>> Thank you. > >>>> > >>>> > >> > __________________________________________________________ > >> > __________________________________________________________ > >> _____ > >>>> > >>>> Ce message et ses pieces jointes peuvent contenir des informations > >> confidentielles ou privilegiees et ne doivent donc > >>>> pas etre diffuses, exploites ou copies sans autorisation. Si vous avez > recu > >> ce message par erreur, veuillez le signaler > >>>> a l'expediteur et le detruire ainsi que les pieces jointes. Les messages > >> electroniques etant susceptibles d'alteration, > >>>> Orange decline toute responsabilite si ce message a ete altere, > deforme > >> ou falsifie. Merci. > >>>> > >>>> This message and its attachments may contain confidential or privileged > >> information that may be protected by law; > >>>> they should not be distributed, used or copied without authorisation. > >>>> If you have received this email in error, please notify the sender and > >> delete this message and its attachments. > >>>> As emails may be altered, Orange is not liable for messages that have > >> been modified, changed or falsified. > >>>> Thank you. > >>>> > >> > __________________________________________________________ > >> > __________________________________________________________ > >> _____ > >>>> > >>>> Ce message et ses pieces jointes peuvent contenir des informations > >> confidentielles ou privilegiees et ne doivent donc > >>>> pas etre diffuses, exploites ou copies sans autorisation. Si vous avez > recu > >> ce message par erreur, veuillez le signaler > >>>> a l'expediteur et le detruire ainsi que les pieces jointes. Les messages > >> electroniques etant susceptibles d'alteration, > >>>> Orange decline toute responsabilite si ce message a ete altere, > deforme > >> ou falsifie. Merci. > >>>> > >>>> This message and its attachments may contain confidential or privileged > >> information that may be protected by law; > >>>> they should not be distributed, used or copied without authorisation. > >>>> If you have received this email in error, please notify the sender and > >> delete this message and its attachments. > >>>> As emails may be altered, Orange is not liable for messages that have > >> been modified, changed or falsified. > >>>> Thank you. > >>>> > >>>> _______________________________________________ > >>>> Lsr mailing list > >>>> Lsr@ietf.org > >>>> https://www.ietf.org/mailman/listinfo/lsr > >>> > >> > >> > __________________________________________________________ > >> > __________________________________________________________ > >> _____ > >> > >> Ce message et ses pieces jointes peuvent contenir des informations > >> confidentielles ou privilegiees et ne doivent donc > >> pas etre diffuses, exploites ou copies sans autorisation. Si vous avez recu > ce > >> message par erreur, veuillez le signaler > >> a l'expediteur et le detruire ainsi que les pieces jointes. Les messages > >> electroniques etant susceptibles d'alteration, > >> Orange decline toute responsabilite si ce message a ete altere, deforme > ou > >> falsifie. Merci. > >> > >> This message and its attachments may contain confidential or privileged > >> information that may be protected by law; > >> they should not be distributed, used or copied without authorisation. > >> If you have received this email in error, please notify the sender and > delete > >> this message and its attachments. > >> As emails may be altered, Orange is not liable for messages that have > been > >> modified, changed or falsified. > >> Thank you. > > > > _______________________________________________ > > Lsr mailing list > > Lsr@ietf.org > > https://www.ietf.org/mailman/listinfo/lsr > > _______________________________________________ Lsr mailing list Lsr@ietf.org https://www.ietf.org/mailman/listinfo/lsr