Hi Hannes,
On 7/27/15 10:47 , Hannes Gredler wrote:
hi les,
assuming option 1 and a local knob e.g. 'algorithm <n> offset <x>'
as per your example below i got the following question(s):
1) how does a computing router know that a downstream router has got
the 'offset per-algo knob' configured, such that it can map outgoing label
values
to the correct label value (SRGB + algo offset) of the downstream routers ?
-
there is no need for the computing node to know.
Let's assume we have a node N that has single SRGB (16000-23999) and it
supports 4 algorithms. Internally the node splits its SRGB to 4 blocks,
one per algorithm:
alg 0: [16000, 17999]
alg 1: [18000, 19999]
alg 2: [20000, 21999]
alg 3: [22000, 23999]
For prefix P1 on node N, user configures single index 25. Node N then
advertises:
SID 16025 - alg 0
SID 18025 - alg 1
SID 20025 - alg 2
SID 22025 - alg 3
thanks,
Peter
2) is the expectation that 'algorithm <n> offset <x>' is configured identical
on all the routers in the network ?
3) if so - isn't this considered a rather 'fragile / error prone'
approach to operating a network ?
/hannes
On Tue, Jul 21, 2015 at 08:58:51PM +0000, Les Ginsberg (ginsberg) wrote:
| Stephane/Chris -
|
|
|
| Defining an offset, whether explicitly as Ahmed/Jon have suggested or
| implicitly as the draft Option #2 defines can be problematic in either
| case.
|
|
|
| If you don't plan for as many labels as you might need in the future then
| when the day comes when you run out of labels you need to allocate more.
|
|
|
| If I use one SRGB for all algorithms, then I have the (non-disruptive)
| options of:
|
|
|
| . Extending the existing SRGB space
|
| . Reserving an additional SRGB space
|
|
|
| If I use one SRGB for each algorithm, then if I run out of
| labels/algorithm I have the same options - but now I have to do this for
| each algorithm specific set of SRGBs.
|
|
|
| (There are disruptive ways to address this by completely redefining the
| SRGBs w/o regard to the existing config - but I think we all understand
| that this option is very undesirable and this is true in both options.)
|
|
|
| Of course it is better to be generous enough with your initial SRGB
| allocation so as to avoid the need for ever having to extend an SRGB - in
| which case the amount of label space you need to reserve initially is the
| same in both cases.
|
| (Sorry - no free lunch!! J )
|
|
|
| Option #1 however avoids a number of issues which complicate Option #2:
|
|
|
| Under Option #2 support for a new algorithm now requires not only
| advertising support for the algorithm but also advertising a new (set of)
| algorithm specific SRGB ranges. We have to check for the presence of both
| algorithm support and the algorithm specific SRGB(s) before declaring a
| node as supporting a given algorithm. Each of these algorithm specific set
| of ranges has to be checked for both intra-algorithm consistency (no
| overlap within the algorithm specific ranges) and inter-algorithm
| consistency.
|
|
|
| I would also suggest that for many implementations, any reservation of
| label space AFTER startup can be problematic. Label space is typically
| managed by declaring two types of ranges:
|
|
|
| 1)reserved for a specific use (like segment routing)
|
| 2)available for dynamic allocation (unreserved)
|
|
|
| The unreserved space is typically everything that isn't reserved. If I
| need to reserve additional space after startup I face the possibility that
| some of the additional range I would like to reserve may be in use via
| dynamic allocation. In such a case I cannot successfully reserve the range
| until all the existing dynamic allocations are released - which can be
| awkward to do and may very well be disruptive to the entity using the
| dynamically allocated labels. So this is best avoided.
|
|
|
| I understand why making config easier for the user is desirable - and
| Option #2 provides that - but it is also easy to do so using Option #1.
| One can imagine a syntax similar to:
|
|
|
| algorithm <n> offset <x>
|
| And, as described above, this does not require us to reserve more labels
| than we would need under Option #2.
|
| I am not seeing any advantage to Option #2. Though it is well motivated,
| everything you want to achieve w Option #2 can easily be achieved using
| Option #1.
|
|
|
| Les
|
|
|
| > -----Original Message-----
|
| > From: spring [mailto:[email protected]] On Behalf Of
|
| > [email protected]
|
| > Sent: Tuesday, July 21, 2015 7:52 AM
|
| > To: Jon Mitchell; Chris Bowers
|
| > Cc: [email protected]
|
| > Subject: Re: [spring] FW: New Version Notification for
| draft-bowers-spring-
|
| > adv-per-algorithm-label-blocks-01.txt
|
| >
|
| > Using an offset may be dangerous as if your network growth your algo1
| SIDs
|
| > may collision with algo2 SIDs because the offset is no more enough ...
| (you
|
| > always need more ...) using an offset is similar to splitting the SRGB
| in 2
|
| > SRGBs with the limitation of not being able to extend the first part.
| Option 2
|
| > allows this extension.
|
| > You may say let's put a very very large SRGB and offset of +20000 ...
| yes but
|
| > it's wasting resources ...
|
| >
|
| >
|
| >
|
| > -----Original Message-----
|
| > From: spring [[1]mailto:[email protected]] On Behalf Of Jon
| Mitchell
|
| > Sent: Tuesday, July 21, 2015 14:35
|
| > To: Chris Bowers
|
| > Cc: [2][email protected]
|
| > Subject: Re: [spring] FW: New Version Notification for
| draft-bowers-spring-
|
| > adv-per-algorithm-label-blocks-01.txt
|
| >
|
| > On 24/06/15 23:09 +0000, Chris Bowers wrote:
|
| > > This updated version of the draft includes a concrete proposal for
| ISIS
|
| > extensions to implement per-algorithm label blocks.
|
| > >
|
| >
|
| > Chris -
|
| >
|
| > As you discussed in the meeting today in option 2 (the proposal) there
| is a
|
| > "savings" that is achieved by not allocating a large label space as is
| required in
|
| > option 1 since we may not be able to predict the future of algorithm
| needs in
|
| > the network. But wouldn't you agree that since you are allocating a
| node
|
| > index in every fractured address space (whether required or not) in
| option 2,
|
| > since address space that is partitioned typically consumes more space
| than
|
| > unfractured space (due to loss because of imperfect planning), as you
|
| > increase the number of algorithms aren't you more likely to consume more
|
| > overall space with this technique?
|
| >
|
| > Secondly there was a statement made that there is an advantage to option
|
| > 2 that it allows easier provisioning of node index value (as it's
|
| > reused) per algorithm. Isn't it just as easy for an implementation to
| allow the
|
| > user to just configure a local implementation offset for an algorithm
| which
|
| > requires no protocol changes and has more flexiblity as it doesn't need
| to be
|
| > configured for prefix SID's that don't require it (similar as Ahmed
| suggested
|
| > at the mic, i.e. algorithm 2 = +1000) that could be configured at every
| node?
|
| > Assuming OSS provisions SID's sequentially this seems to work just as
| well...
|
| >
|
| > Thanks,
|
| >
|
| > Jon
|
| >
|
| > _______________________________________________
|
| > spring mailing list
|
| > [3][email protected]
|
| > [4]https://www.ietf.org/mailman/listinfo/spring
|
| >
|
| > __________________________________________________________
|
| > __________________________________________________________
|
| > _____
|
| >
|
| > 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.
|
| >
|
| > _______________________________________________
|
| > spring mailing list
|
| > [5][email protected]
|
| > [6]https://www.ietf.org/mailman/listinfo/spring
|
| References
|
| Visible links
| 1. mailto:[email protected]
| 2. mailto:[email protected]
| 3. mailto:[email protected]
| 4. https://www.ietf.org/mailman/listinfo/spring
| 5. mailto:[email protected]
| 6. https://www.ietf.org/mailman/listinfo/spring
| _______________________________________________
| spring mailing list
| [email protected]
| https://www.ietf.org/mailman/listinfo/spring
_______________________________________________
spring mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/spring
.
_______________________________________________
spring mailing list
[email protected]
https://www.ietf.org/mailman/listinfo/spring