1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
|
Internet Engineering Task Force (IETF) I. Nishioka
Request for Comments: 6007 NEC Corp.
Category: Informational D. King
ISSN: 2070-1721 Old Dog Consulting
September 2010
Use of the Synchronization VECtor (SVEC) List for
Synchronized Dependent Path Computations
Abstract
A Path Computation Element (PCE) may be required to perform dependent
path computations. Dependent path computations are requests that
need to be synchronized in order to meet specific objectives. An
example of a dependent request would be a PCE computing a set of
services that are required to be diverse (disjointed) from each
other. When a PCE computes sets of dependent path computation
requests concurrently, use of the Synchronization VECtor (SVEC) list
is required for association among the sets of dependent path
computation requests. The SVEC object is optional and carried within
the Path Computation Element Communication Protocol (PCEP) PCRequest
(PCReq) message.
This document does not specify the PCEP SVEC object or procedure.
This informational document clarifies the use of the SVEC list for
synchronized path computations when computing dependent requests.
The document also describes a number of usage scenarios for SVEC
lists within single-domain and multi-domain environments.
Status of This Memo
This document is not an Internet Standards Track specification; it is
published for informational purposes.
This document is a product of the Internet Engineering Task Force
(IETF). It represents the consensus of the IETF community. It has
received public review and has been approved for publication by the
Internet Engineering Steering Group (IESG). Not all documents
approved by the IESG are a candidate for any level of Internet
Standard; see Section 2 of RFC 5741.
Information about the current status of this document, any errata,
and how to provide feedback on it may be obtained at
http://www.rfc-editor.org/info/rfc6007.
Nishioka & King Informational [Page 1]
^L
RFC 6007 SVEC List for Path Computations September 2010
Copyright Notice
Copyright (c) 2010 IETF Trust and the persons identified as the
document authors. All rights reserved.
This document is subject to BCP 78 and the IETF Trust's Legal
Provisions Relating to IETF Documents
(http://trustee.ietf.org/license-info) in effect on the date of
publication of this document. Please review these documents
carefully, as they describe your rights and restrictions with respect
to this document. Code Components extracted from this document must
include Simplified BSD License text as described in Section 4.e of
the Trust Legal Provisions and are provided without warranty as
described in the Simplified BSD License.
This document may contain material from IETF Documents or IETF
Contributions published or made publicly available before November
10, 2008. The person(s) controlling the copyright in some of this
material may not have granted the IETF Trust the right to allow
modifications of such material outside the IETF Standards Process.
Without obtaining an adequate license from the person(s) controlling
the copyright in such materials, this document may not be modified
outside the IETF Standards Process, and derivative works of it may
not be created outside the IETF Standards Process, except to format
it for publication as an RFC or to translate it into languages other
than English.
Nishioka & King Informational [Page 2]
^L
RFC 6007 SVEC List for Path Computations September 2010
Table of Contents
1. Introduction ....................................................3
1.1. SVEC Object ................................................4
1.2. Application of SVEC Lists ..................................5
2. Terminology .....................................................6
3. SVEC Association Scenarios ......................................7
3.1. Synchronized Computation for Diverse Path Requests .........7
3.2. Synchronized Computation for Point-to-Multipoint
Path Requests ..............................................8
4. SVEC Association ................................................9
4.1. SVEC List ..................................................9
4.2. Associated SVECs ...........................................9
4.3. Non-Associated SVECs ......................................10
5. Processing of SVEC List ........................................10
5.1. Single-PCE, Single-Domain Environments ....................10
5.2. Multi-PCE, Single-Domain Environments .....................11
5.3. Multi-PCE, Multi-Domain Environments ......................11
6. End-to-End Diverse Path Computation ............................13
6.1. Disjoint VSPT .............................................13
6.2. Disjoint VSPT Encoding ....................................14
6.3. Path Computation Procedure ................................15
7. Manageability Considerations ...................................15
7.1. Control of Function and Policy ............................15
7.2. Information and Data Models (MIB Modules) .................15
7.3. Liveness Detection and Monitoring .........................15
7.4. Verifying Correct Operation ...............................15
7.5. Requirements on Other Protocols and Functional
Components ................................................16
7.6. Impact on Network Operation ...............................16
8. Security Considerations ........................................16
9. References .....................................................16
9.1. Normative References ......................................16
9.2. Informative References ....................................17
10. Acknowledgements ..............................................18
1. Introduction
[RFC5440] describes the specifications for the Path Computation
Element Communication Protocol (PCEP). PCEP specifies the
communication between a Path Computation Client (PCC) and a Path
Computation Element (PCE), or between two PCEs based on the PCE
architecture [RFC4655]. PCEP interactions include path computation
requests and path computation replies.
The PCE may be required to compute independent and dependent path
requests. Path computation requests are said to be independent if
they are not related to each other and therefore not required to be
Nishioka & King Informational [Page 3]
^L
RFC 6007 SVEC List for Path Computations September 2010
synchronized. Conversely, a set of dependent path computation
requests is such that their computations cannot be performed
independently of each other, and the requests must be synchronized.
The Synchronization VECtor (SVEC) with a list of the path computation
request identifiers carried within the request message allows the PCC
or PCE to specify a list of multiple path computation requests that
must be synchronized. Section 1.1 ("SVEC Object") describes the SVEC
object. Section 1.2 ("Application of SVEC Lists") describes the
application of SVEC lists in certain scenarios.
This informational document clarifies the handling of dependent and
synchronized path computation requests, using the SVEC list, based on
the PCE architecture [RFC4655] and PCEP [RFC5440]. The document also
describes a number of usage scenarios for SVEC lists within single-
domain and multi-domain environments. This document is not intended
to specify the procedure when using SVEC lists for dependent and
synchronized path computation requests.
1.1. SVEC Object
When a PCC or PCE sends path computation requests to a PCE, a PCEP
Path Computation Request (PCReq) message may carry multiple requests,
each of which has a unique path computation request identifier. The
SVEC with a list of the path computation request identifiers carried
within the request message allows the PCC or PCE to specify a list of
multiple path computation requests that must be synchronized, and
also allows the specification of any dependency relationships between
the paths. The path computation requests listed in the SVEC must be
handled in a specific relation to each other (i.e., synchronized).
[RFC5440] defines two synchronous path computation modes for
dependent or independent path computation requests specified by the
dependency flags (i.e., Node, Link, or Shared Risk Link Group (SRLG)
diverse flags) in the SVEC:
o A set of independent and synchronized path computation requests.
o A set of dependent and synchronized path computation requests.
See [RFC5440] for more details on dependent, independent, and
synchronous path computation.
These computation modes are exclusive to each other in a single SVEC.
If one of the dependency flags in a SVEC is set, it indicates that a
set of synchronous path computation requests has a dependency and
does not allow any other path computation requests. In order to be
synchronized with other path computation requests with a dependency,
it is necessary to associate them.
Nishioka & King Informational [Page 4]
^L
RFC 6007 SVEC List for Path Computations September 2010
The aim of the SVEC object carried within a PCReq message is to
request the synchronization of M path computation requests. Each
path computation request is uniquely identified by the Request-ID-
number carried within the respective Request Parameters (RP) object.
The SVEC object also contains a set of flags that specify the
synchronization type. The SVEC object is defined in Section 7.13
("SVEC Object") of [RFC5440].
1.2. Application of SVEC Lists
It is important for the PCE, when performing path computations, to
synchronize any path computation requests with a dependency. For
example, consider two protected end-to-end services:
o It would be beneficial for each back-up path to be disjointed so
they do not share the same links and nodes as the working path.
o Two diverse path computation requests would be needed to compute
the working and disjointed protected paths.
If the diverse path requests are computed sequentially, fulfillment
of the initial diverse path computation without consideration of the
second diverse path computation and disjoint constraint may result in
the PCE either providing sub-optimal path disjoint results for the
protected path or failing to meet the end-to-end disjoint requirement
altogether.
Additionally, SVEC can be applied to end-to-end diverse path
computations that traverse multiple domains. [RFC5441] describes two
approaches, synchronous (i.e., simultaneous) and 2-step approaches,
for end-to-end diverse path computation across a chain of domains.
The path computation procedure is specified for the 2-step approaches
in [RFC5521], but no guidelines are provided for the synchronous
approach described in this document.
The following scenarios are specifically described within this
document:
o Single-domain, single-PCE, dependent and synchronized path
computation request.
o Single-domain, multi-PCE, dependent and synchronized path request.
o Multi-domain, dependent and synchronized path computation request,
including end-to-end diverse path computation.
Nishioka & King Informational [Page 5]
^L
RFC 6007 SVEC List for Path Computations September 2010
The association among multiple SVECs for multiple sets of
synchronized dependent path computations is also described in this
document, as well as the disjoint Virtual Shortest Path Tree (VSPT)
encoding rule for end-to-end diverse path computation across domains.
Path computation algorithms for these path computation scenarios are
out of the scope of this document.
The clarifications and use cases in this document are applicable to
the Global Concurrent Optimization (GCO) path computation mechanism
specified in [RFC5557]. The GCO application provides the capability
to optimize a set of services within the network, in order to
maximize efficient use of network resources. A single objective
function (OF) or a set of OFs can be applied to a GCO. To compute a
set of such traffic-engineered paths for the GCO application, PCEP
supports the synchronous and dependent path computation requests
required in [RFC4657].
The SVEC association and the disjoint VSPT described in this document
do not require any extension to PCEP messages and object formats,
when computing a GCO for multiple or end-to-end diverse paths. In
addition, the use of multiple SVECs is not restricted to only SRLG,
node, and link diversity currently defined in the SVEC object
[RFC5440], but is also available for other dependent path computation
requests.
The SVEC association and disjoint VSPT are available to both single-
PCE path computation and multi-PCE path computation.
2. Terminology
This document uses PCE terminology defined in [RFC4655], [RFC4875],
and [RFC5440].
Associated SVECs: A group of multiple SVECs (Synchronization
VECtors), defined in this document, to indicate a set of
synchronized or concurrent path computations.
Disjoint VSPT: A set of VSPTs, defined in this document, to indicate
a set of virtual diverse path trees.
GCO (Global Concurrent Optimization): A concurrent path computation
application, defined in [RFC5557], where a set of traffic
engineered (TE) paths is computed concurrently in order to
efficiently utilize network resources.
Nishioka & King Informational [Page 6]
^L
RFC 6007 SVEC List for Path Computations September 2010
Synchronized: Describes a set of path computation requests that the
PCE associates and that the PCE does not compute independently of
each other.
VSPT: Virtual Shortest Path Tree, defined in [RFC5441].
3. SVEC Association Scenarios
This section clarifies several path computation scenarios in which
SVEC association can be applied. Also, any combination of scenarios
described in this section could be applicable.
3.1. Synchronized Computation for Diverse Path Requests
A PCE may compute two or more point-to-point diverse paths
concurrently, in order to increase the probability of meeting primary
and secondary path diversity (or disjointness) objectives and network
resource optimization objectives.
Two scenarios can be considered for the SVEC association of point-to-
point diverse paths.
o Two or more end-to-end diverse paths
When concurrent path computation of two or more end-to-end diverse
paths is requested, SVEC association is needed among diverse path
requests. Note here that each diverse path request consists of
primary, secondary, and tertiary (and beyond) path requests, in which
all path requests are grouped with one SVEC association.
Consider two end-to-end services that are to be kept separate by
using diverse paths. The path computation requests would need to be
associated so that diversity could be assured. Consider further that
each of these services requires a backup path that can protect
against any failure in the primary path. These backup paths must be
computed using requests that are associated with the primary paths,
giving rise to a set of four associated requests.
o End-to-end primary path and its segmented secondary paths
When concurrent path computation for segment recovery paths, as shown
in Figure 1, is requested, SVEC association is needed between a
primary path and several segmented secondary paths.
Nishioka & King Informational [Page 7]
^L
RFC 6007 SVEC List for Path Computations September 2010
<------------ primary ----------->
A------B------C---D------E------F
\ / \ /
P---Q---R X---Y---Z
<--secondary1--> <--secondary2-->
Figure 1. Segment Recovery Paths
In this scenario, we assume that the primary path may be pre-computed
and used for specifying the segment for secondary paths. Otherwise,
the segment for secondary path requests is specified in advance, by
using Exclude Route Object (XRO) and/or Include Route Object (IRO)
constraints in the primary request.
3.2. Synchronized Computation for Point-to-Multipoint Path Requests
For point-to-multipoint path requests, SVEC association can be
applied.
o Two or more point-to-multipoint paths
If a point-to-multipoint path computation request is represented
as a set of point-to-point paths [RFC6006], two or more point-to-
multipoint path computation requests can be associated for
concurrent path computation, in order to optimize network
resources.
o Point-to-multipoint paths and their secondary paths
When concurrent path computation of a point-to-multipoint path and
its point-to-point secondary paths [RFC4875], or a point-to-
multipoint path and its point-to-multipoint secondary paths is
requested, SVEC association is needed among these requests. In
this scenario, we use the same assumption as the "end-to-end
primary path and its segmented secondary paths" scenario in
Section 3.1.
Nishioka & King Informational [Page 8]
^L
RFC 6007 SVEC List for Path Computations September 2010
4. SVEC Association
This section describes the associations among SVECs in a SVEC list.
4.1. SVEC List
PCEP provides the capability to carry one or more SVEC objects in a
PCReq message, and this set of SVEC objects within the PCReq message
is termed a SVEC list. Each SVEC object in the SVEC list contains a
distinct group of path computation requests. When requesting
association among such distinct groups, associated SVECs described in
this document are used.
4.2. Associated SVECs
"Associated SVECs" means that there are relationships among multiple
SVECs in a SVEC list. Note that there is no automatic association in
[RFC5440] between the members of one SVEC and the members of another
SVEC in the same SVEC list. The associated SVEC is introduced to
associate these SVECs, especially for correlating among SVECs with
dependency flags.
Request identifiers in the SVEC objects are used to indicate the
association among SVEC objects. If the same request-IDs exist in
SVEC objects, this indicates these SVEC objects are associated. When
associating among SVEC objects, at least one request identifier must
be shared between associated SVECs. The SVEC objects can be
associated regardless of the dependency flags in each SVEC object,
but it is recommended to use a single SVEC if the dependency flags
are not set in all SVEC objects. Similarly, when associating among
SVEC objects with dependency flags, it is recommended to construct
them using a minimum set of associated SVECs, thus avoiding complex
relational associations.
Below is an example of associated SVECs. In this example, the first
SVEC is associated with the other SVECs, and all of the path
computation requests contained in the associated SVECs (i.e.,
Request-IDs #1, #2, #3, #4, #X, #Y, and #Z) must be synchronized.
<SVEC-list>
<SVEC> without dependency flags
Request-ID #1, Request-ID #3, Request-ID #X
<SVEC> with one or more dependency flags
Request-ID #1, Request-ID #2
Nishioka & King Informational [Page 9]
^L
RFC 6007 SVEC List for Path Computations September 2010
<SVEC> with one or more dependency flags
Request-ID #3, Request-ID #4
<SVEC> without dependency flag
Request-ID #X, Request-ID #Y, Request-ID #Z
4.3. Non-Associated SVECs
"Non-associated SVECs" means that there are no relationships among
SVECs. If none of the SVEC objects in the SVEC list on a PCReq
message contains a common request-ID, there is no association between
the SVECs and so no association between the requests in one SVEC and
the requests in another SVEC.
Below is an example of non-associated SVECs that do not contain any
common request-IDs.
<SVEC-list>
<SVEC> with one or more dependency flags
Request-ID #1, Request-ID #2
<SVEC> with one or more dependency flags
Request-ID #3, Request-ID #4
<SVEC> without dependency flags
Request-ID #X, Request-ID #Y, Request-ID #Z
5. Processing of SVEC List
5.1. Single-PCE, Single-Domain Environments
In this environment, there is a single PCE within the domain.
When a PCE receives PCReq messages with more than one SVEC object in
the SVEC list, PCEP has to first check the request-IDs in all SVEC
objects in order to identify any associations among them.
If there are no matching request-IDs in the different SVEC objects,
these SVEC objects are not associated, and then each set of path
computation requests in the non-associated SVEC objects has to be
computed separately.
Nishioka & King Informational [Page 10]
^L
RFC 6007 SVEC List for Path Computations September 2010
If there are matching request-IDs in the different SVEC objects,
these SVEC objects are associated, and then all path computation
requests in the associated SVEC objects are treated in a synchronous
manner for GCO application.
If a PCE that is unable to handle the associated SVEC finds the
common request-IDs in multiple SVEC objects, the PCE should cancel
the path computation request and respond to the PCC with the PCErr
message Error-Type="Capability not supported".
In the case that M path computation requests are sent across multiple
PCReq messages, the PCE may start a SyncTimer as recommended in
Section 7.13.3 ("Handling of the SVEC Object") of [RFC5440]. In this
case, the associated SVECs should also be handled as described in
[RFC5440], i.e., after receiving the entire set of M path computation
requests associated by SVECs, the computation should start at one.
If the SyncTimer has expired or the subsequent PCReq messages are
malformed, the PCE should cancel the path computation request and
respond to the PCC with the relevant PCErr message.
5.2. Multi-PCE, Single-Domain Environments
There are multiple PCEs in a domain, to which PCCs can communicate
directly, and PCCs can choose an appropriate PCE for load-balanced
path computation requests. In this environment, it is possible that
dependent path computation requests are sent to different PCEs.
However, if a PCC sends path computation requests to a PCE, and then
sends a further path computation request to a different PCE using the
SVEC list to show that the further request is dependent on the first
requests, there is no method for the PCE to correlate the dependent
requests sent to different PCEs. No SVEC object correlation function
between the PCEs is specified in [RFC5440]. No mechanism exists to
resolve this problem, and the issue is open for future study.
Therefore, a PCC must not send dependent path computation requests
associated by SVECs to different PCEs.
5.3. Multi-PCE, Multi-Domain Environments
In this environment, there are multiple domains in which PCEs are
located in each domain, and end-to-end dependent paths (i.e., diverse
paths) are computed using multiple PCEs. Note that we assume a chain
of PCEs is predetermined and the Backward-Recursive PCE-Based
Computation (BRPC) procedure [RFC5441] is in use.
The SVECs can be applied to end-to-end diverse path computations that
traverse multiple domains. [RFC5441] describes two approaches,
synchronous (i.e., simultaneous) and 2-step approaches, for
Nishioka & King Informational [Page 11]
^L
RFC 6007 SVEC List for Path Computations September 2010
end-to-end diverse path computation across a chain of domains. In
the 2-step approaches described in [RFC5521], it is not necessary to
use the associated SVECs if any of the dependency flags in a SVEC
object are not set. On the other hand, the simultaneous approach may
require the associated SVEC because at least one of the dependency
flags is required to be set in a SVEC object. Thus, a use case of
the simultaneous approach is described in this environment.
When a chain of PCEs located in separate domains is used for
simultaneous path computations, additional path computation
processing is required, as described in Section 6 of this document.
If the PCReq message contains multiple associated SVEC objects and
these SVEC objects contain path computation requests that will be
sent to the next PCE along the path computation chain, the following
procedures are applied.
When a chain of PCEs is a unique sequence for all of the path
computation requests in a PCReq message, it is not necessary to
reconstruct associations among SVEC objects. Thus, the PCReq message
is passed to the tail-end PCE. When a PCReq message contains more
than one SVEC object with the dependency flag set, the contained
SVECs may then be associated. PCEs receiving the associated SVECs
must maintain their association and must consider their relationship
when performing path computations after receiving a corresponding
PCReply (PCRep) message.
When a chain of PCEs is different, it is required that intermediate
PCEs receiving such PCReq messages may reconstruct associations among
SVEC objects, and then send PCReq messages to corresponding PCEs
located in neighboring domains. If the associated SVECs are
reconstructed at the intermediate PCE, the PCE must not start its
path computation until all PCRep messages have been received from all
neighbor PCEs. However, a complex PCE implementation is required for
SVEC reconstruction, and waiting mechanisms must be implemented.
Therefore, it is not recommended to associate path computation
requests with different PCE chains. This is an open issue and is
currently being discussed in [H-PCE], which proposes a hierarchical
PCE architecture.
Nishioka & King Informational [Page 12]
^L
RFC 6007 SVEC List for Path Computations September 2010
6. End-to-End Diverse Path Computation
In this section, the synchronous approach is provided to compute
primary and secondary paths simultaneously.
6.1. Disjoint VSPT
The BRPC procedure constructs a VSPT to inform the enquiring PCE of
potential paths to the destination node.
In the end-to-end diverse path computation, diversity (or
disjointness) information among the potential paths must be preserved
in the VSPT to ensure an end-to-end disjoint path. In order to
preserve diversity (or disjointness) information, disjoint VSPTs are
sent in the PCEP PCRep message. The PCReq containing a SVEC object
with the appropriate diverse flag set would signal that the PCE
should compute a disjoint VSPT.
A definition of the disjoint VSPT is a collection of VSPTs, in which
each VSPT contains a potential set of primary and secondary paths.
Figure 2 shows an example network. Here, transit nodes in domains
are not depicted, and PCE1 and PCE2 may be located in border nodes.
In this network, there are three VSPTs for the potential set of
diverse paths, shown in Figure 3, when the primary path and secondary
path are requested from S1 to D1. These VSPTs consist of a disjoint
VSPT, which is indicated in a PCRep to PCE1. When receiving the
disjoint VSPT, PCE1 recognizes the disjoint request and disjoint VSPT
information. PCE1 will then continue to process the request and
compute the diverse path using the BRPC procedure [RFC5441].
Encoding for the disjoint VSPT is described in Section 6.2.
Domain1 Domain2
+----------+ +----------+
| PCE1 | | PCE2 | S1: Source node
| BN1---BN4 | D1: Destination node
| S1 BN2---BN5 D1 | BN1-BN6: Border nodes
| BN3---BN6 |
+----------+ +----------+
Figure 2. Example Network for Diverse Path Computation
Nishioka & King Informational [Page 13]
^L
RFC 6007 SVEC List for Path Computations September 2010
VSPT1: VSPT2: VSPT3:
D1 D1 D1
/ \ / \ / \
BN4 BN5 BN4 BN6 BN5 BN6
Figure 3. Disjoint VSPTs from PCE2 to PCE1
6.2. Disjoint VSPT Encoding
Encoding for the disjoint VSPT follows the definition of PCEP message
encoding in [RFC5440].
The PCEP PCRep message returns a disjoint VSPT as <path list> for
each RP object (Request Parameter object). The order of <path> in
<path list> among <responses> implies a set of primary Explicit Route
Objects (EROs) and secondary EROs.
A PCE sending a PCRep with a disjoint VSPT can reply with a partial
disjoint VSPT based on its network operation policy, but the order of
<path> in <path list> must be aligned correctly.
If confidentiality is required between domains, the path key
mechanism defined in [RFC5520] is used for a disjoint VSPT.
Below are the details of the disjoint VSPT encoding (in Figure 3),
when a primary path and a secondary path are requested from S1 to D1.
o Request ID #1 (Primary)
- ERO1 BN4(TE route ID)- ...-D1(TE-Router ID) [for VSPT1]
- ERO2 BN4(TE route ID)- ...-D1(TE-Router ID) [for VSPT2]
- ERO3 BN5(TE route ID)- ...-D1(TE-Router ID) [for VSPT3]
o Request ID #2 (Secondary)
- ERO4 BN5(TE route ID)- ...-D1(TE-Router ID) [for VSPT1]
- ERO5 BN6(TE route ID)- ...-D1(TE-Router ID) [for VSPT2]
- ERO6 BN6(TE route ID)- ...-D1(TE-Router ID) [for VSPT3]
Nishioka & King Informational [Page 14]
^L
RFC 6007 SVEC List for Path Computations September 2010
6.3. Path Computation Procedure
For end-to-end diverse path computation, the same mode of operation
as that of the BRPC procedure can be applied (i.e., Step 1 to Step n
in Section 4.2 of [RFC5441]). A question that must be considered is
how to recognize disjoint VSPTs.
The recognition of disjoint VSPTs is achieved by the PCE sending a
PCReq to its neighbor PCE, which maintains the path computation
request (PCReq) information. If the PCReq has one or more SVEC
object(s) with the appropriate dependency flags, the received PCRep
will contain the disjoint VSPT. If not, the received VSPT is a
normal VSPT based on the shortest path computation.
Note that the PCE will apply a suitable algorithm for computing
requests with disjoint VSPTs. The selection and application of the
appropriate algorithm is out of scope in this document.
7. Manageability Considerations
This section describes manageability considerations specified in
[PCE-MNG-REQS].
7.1. Control of Function and Policy
In addition to [RFC5440], PCEP implementations should allow the PCC
to be responsible for mapping the requested paths to computation
requests. The PCC should construct the SVECs to identify and
associate SVEC relationships.
7.2. Information and Data Models (MIB Modules)
There are currently no additional parameters for MIB modules. There
would be value in a MIB module that details the SVEC association.
This work is currently out of scope of this document.
7.3. Liveness Detection and Monitoring
The associated SVEC in this document allows PCEs to compute optimal
sets of diverse paths. This type of path computation may require
more time to obtain its results. Therefore, it is recommended for
PCEP to support the PCE monitoring mechanism specified in [RFC5886].
7.4. Verifying Correct Operation
[RFC5440] provides a sufficient description for this document. There
are no additional considerations.
Nishioka & King Informational [Page 15]
^L
RFC 6007 SVEC List for Path Computations September 2010
7.5. Requirements on Other Protocols and Functional Components
This document does not require any other protocol and functional
components.
7.6. Impact on Network Operation
[RFC5440] provides descriptions for the mechanisms discussed in this
document. There is value in considering that large associated SVECs
will require greater PCE resources, compared to non-associated SVECs.
Additionally, the sending of large associated SVECs within multiple
PCReq messages will require more network resources. Solving these
specific issues is out of scope of this document.
8. Security Considerations
This document describes the usage of the SVEC list, and does not have
any extensions for PCEP. The security of the procedures described in
this document depends on PCEP [RFC5440]. However, a PCE that
supports associated SVECs may be open to Denial-of-Service (DoS)
attacks from a rogue PCC. A PCE may be made to queue large numbers
of requests waiting for other requests that will never arrive.
Additionally, a PCE might be made to compute exceedingly complex
associated SVEC computations. These DoS attacks may be mitigated
with the use of practical SVEC list limits, as well as:
o Applying provisioning to PCEs, e.g., for a given number of
simultaneous services (recommended).
o Using a priority-based multi-queuing mechanism in which path
computation requests with a smaller SVEC list are prioritized for
path computation processing.
o Specifying which PCCs may request large SVEC associations through
PCE access policy control.
9. References
9.1. Normative References
[RFC4655] Farrel, A., Vasseur, J.-P., and J. Ash, "A Path
Computation Element (PCE)-Based Architecture",
RFC 4655, August 2006.
[RFC4657] Ash, J., Ed., and J. Le Roux, Ed., "Path Computation
Element (PCE) Communication Protocol Generic
Requirements", RFC 4657, September 2006.
Nishioka & King Informational [Page 16]
^L
RFC 6007 SVEC List for Path Computations September 2010
[RFC4875] Aggarwal, R., Ed., Papadimitriou, D., Ed., and S.
Yasukawa, Ed., "Extensions to Resource Reservation
Protocol - Traffic Engineering (RSVP-TE) for Point-to-
Multipoint TE Label Switched Paths (LSPs)", RFC 4875,
May 2007.
[RFC5440] Vasseur, JP., Ed., and JL. Le Roux, Ed., "Path
Computation Element (PCE) Communication Protocol
(PCEP)", RFC 5440, March 2009.
[RFC5441] Vasseur, JP., Ed., Zhang, R., Bitar, N., and JL. Le
Roux, "A Backward-Recursive PCE-Based Computation
(BRPC) Procedure to Compute Shortest Constrained
Inter-Domain Traffic Engineering Label Switched
Paths", RFC 5441, April 2009.
[RFC5520] Bradford, R., Ed., Vasseur, JP., and A. Farrel,
"Preserving Topology Confidentiality in Inter-Domain
Path Computation Using a Path-Key-Based Mechanism",
RFC 5520, April 2009.
[RFC5521] Oki, E., Takeda, T., and A. Farrel, "Extensions to the
Path Computation Element Communication Protocol (PCEP)
for Route Exclusions", RFC 5521, April 2009.
[RFC5557] Lee, Y., Le Roux, JL., King, D., and E. Oki, "Path
Computation Element Communication Protocol (PCEP)
Requirements and Protocol Extensions in Support of
Global Concurrent Optimization", RFC 5557, July 2009.
9.2. Informative References
[H-PCE] King, D., Ed., and A. Farrel, Ed., "The Application of
the Path Computation Element Architecture to the
Determination of a Sequence of Domains in MPLS &
GMPLS", Work in Progress, December 2009.
[PCE-MNG-REQS] Farrel, A., "Inclusion of Manageability Sections in
PCE Working Group Drafts", Work in Progress, July
2009.
[RFC5886] Vasseur, JP., Ed., Le Roux, JL., and Y. Ikejiri, "A
Set of Monitoring Tools for Path Computation Element
(PCE)-Based Architecture", RFC 5886, June 2010.
Nishioka & King Informational [Page 17]
^L
RFC 6007 SVEC List for Path Computations September 2010
[RFC6006] Zhao, Q., Ed., King, D., Ed., Verhaeghe, F., Takeda,
T., Ali, Z., and J. Meuric, "Extensions to the Path
Computation Element Communication Protocol (PCEP) for
Point-to-Multipoint Traffic Engineering Label Switched
Paths", RFC 6006, September 2010.
10. Acknowledgements
The authors would like to thank Adrian Farrel, Julien Meuric, and
Filippo Cugini for their valuable comments.
Authors' Addresses
Itaru Nishioka
NEC Corp.
1753 Shimonumabe,
Kawasaki, 211-8666,
Japan
Phone: +81 44 396 3287
EMail: i-nishioka@cb.jp.nec.com
Daniel King
Old Dog Consulting
United Kingdom
Phone: +44 7790 775187
EMail: daniel@olddog.co.uk
Nishioka & King Informational [Page 18]
^L
|