-
Notifications
You must be signed in to change notification settings - Fork 0
/
draft-ietf-mboned-interdomain-peering-bcp-14.xml
2058 lines (1638 loc) · 92.4 KB
/
draft-ietf-mboned-interdomain-peering-bcp-14.xml
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
<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc SYSTEM "rfc2629.dtd">
<rfc submissionType="IETF" docName="draft-ietf-mboned-interdomain-peering-bcp-14" category="bcp" ipr="trust200902"><?rfc compact="yes"?>
<?rfc text-list-symbols="ooo*+-"?>
<?rfc sortrefs="no"?>
<?rfc symrefs="yes"?>
<?rfc strict="yes"?>
<?rfc toc="yes"?>
<front>
<title abbrev="Multicast Across Inter-Domain Peering Points">Use of Multicast Across Inter-Domain Peering Points</title>
<author role="editor" fullname="Percy S. Tarapore" initials="P.S." surname="Tarapore">
<organization>AT&T</organization>
<address><phone>1-732-420-4172</phone><email>tarapore@att.com</email>
</address>
</author>
<author fullname="Robert Sayko" initials="R." surname="Sayko">
<organization>AT&T</organization>
<address><phone>1-732-420-3292</phone><email>rs1983@att.com</email>
</address>
</author>
<author fullname="Greg Shepherd" initials="G." surname="Shepherd">
<organization>Cisco</organization>
<address><email>shep@cisco.com</email>
</address>
</author>
<author role="editor" fullname="Toerless Eckert" initials="T." surname="Eckert">
<organization abbrev="Huawei">Futurewei Technologies Inc.</organization>
<address><email>tte+ietf@cs.fau.de</email>
</address>
</author>
<author fullname="Ram Krishnan" initials="R." surname="Krishnan">
<organization>SupportVectors</organization>
<address><email>ramkri123@gmail.com</email>
</address>
</author>
<date day="30" month="October" year="2017"/>
<workgroup>MBONED Working Group</workgroup>
<abstract><t>
This document examines the use of Source Specific Multicast (SSM)
across inter-domain peering points for a specified set of deployment
scenarios. The objective is to describe the setup process for
multicast-based delivery across administrative domains for these
scenarios and document supporting functionality to enable this
process.</t>
</abstract>
</front>
<middle>
<section title="Introduction" anchor="section-1"><t>
Content and data from several types of applications (e.g., live
video streaming, software downloads) are well suited for delivery
via multicast means. The use of multicast for delivering such
content or other data offers significant savings of utilization of resources
in any given administrative domain. End user demand for such
content or other data is growing. Often, this requires transporting the
content or other data across administrative domains via inter-domain peering
points.</t>
<t>The objective of this Best Current Practices document is twofold:
<list style="symbols">
<t>Describe the technical process and establish guidelines for
setting up multicast-based delivery of application content or other data
across inter-domain peering points via a set of use cases.</t>
<t>Catalog all required information exchange between the
administrative domains to support multicast-based delivery.
This enables operators to initiate necessary processes to
support inter-domain peering with multicast.</t>
</list></t>
<t>The scope and assumptions for this document are as follows:
<list style="symbols">
<t>Administrative Domain 1 (AD-1) sources content to one or more End Users (EUs) in one or more Administrative Domain 2 (AD-2). AD-1 and AD-2 want to use IP multicast to allow supporting large and growing EU populations with minimum amount of duplicated traffic to send across network links.
<list style="symbols">
<t>This document does not detail the case where EUs are originating content. To support that additional service, it is recommended to use some method (outside the scope of this document) by which the content from EUs is transmitted to the application in AD-1 that this document refers to as the multicast source and let it send out the traffic as IP multicast. From that point on, the descriptions in this document apply, except that they are not complete because they do not cover the transport or operational aspects of the leg from EU to AD-1.</t>
<t>This document does not detail the case where AD-1 and AD-2 are
not directly connected to each other but only via one or more AD-3
(transit providers). The cases described in this document where tunnels
are used between AD-1 and AD-2 can be applied to such scenarios, but
SLA ("Service Level Agreement") control for example would be different. Other additional issues
will likely exist as well in such scenarios. This is for further study.</t>
</list></t>
<t>For the purpose of this document, the term "peering point"
refers to a network connection ("link") between two administrative network
domains over which traffic is exchanged between them. This is also
referred to as a Network-to-Network Interface (NNI). Unless otherwise
noted, the peering point is assumed to be a private peering point,
where the network connection is a physically or virtually isolated
network connection solely between AD-1 and AD-2. The other case
is that of a broadcast peering point which is a common option in
public Internet Exchange Points (IXP). See <xref target="section-4.2.2"/>
for more details about that option.</t>
<t>Administrative Domain 1 (AD-1) is enabled with native
multicast. A peering point exists between AD-1 and AD-2.</t>
<t>It is understood that several protocols are available for this
purpose including PIM-SM and Protocol Independent Multicast -
Source Specific Multicast (PIM-SSM) <xref target="RFC7761"/>, Internet Group
Management Protocol (IGMP) <xref target="RFC3376"/>, and Multicast Listener
Discovery (MLD) <xref target="RFC3810"/>.</t>
<t>As described in <xref target="section-2"/>, the source IP address of the
multicast stream in the originating AD (AD-1) is known. Under
this condition, PIM-SSM use is beneficial as it allows the
receiver's upstream router to directly send a JOIN message to
the source without the need of invoking an intermediate
Rendezvous Point (RP). Use of SSM also presents an improved
threat mitigation profile against attack, as described in
<xref target="RFC4609"/>. Hence, in the case of inter-domain peering, it is
recommended to use only SSM protocols; the setup of inter-
domain peering for ASM (Any-Source Multicast) is not in scope
for this document.</t>
<t>The rest of the document assumes that PIM-SSM and BGP are used across
the peering point plus AMT and/or GRE according to scenario. The use
of other protocols is beyond the scope of this document.</t>
<t>An Automatic Multicast Tunnel (AMT) <xref target="RFC7450"/> is setup at the
peering point if either the peering point or AD-2 is not
multicast enabled. It is assumed that an AMT Relay will be
available to a client for multicast delivery. The selection of
an optimal AMT relay by a client is out of scope for this
document. Note that AMT use is necessary only when native
multicast is unavailable in the peering point (Use Case 3.3) or
in the downstream administrative domain (Use Cases 3.4, and
3.5).</t>
<t>The collection of billing data is assumed to be done at the
application level and is not considered to be a networking
issue. The settlements process for end user billing and/or
inter-provider billing is out of scope for this document.</t>
<t>Inter-domain network connectivity troubleshooting is only
considered within the context of a cooperative process between
the two domains.</t>
</list>
</t>
<t>
This document also attempts to identify ways by which the peering
process can be improved. Development of new methods for improvement
is beyond the scope of this document.</t>
</section>
<section title="Overview of Inter-domain Multicast Application Transport" anchor="section-2">
<t>A multicast-based application delivery scenario is as follows:
<list style="symbols">
<t>Two independent administrative domains are interconnected via a peering point.</t>
<t>The peering point is either multicast enabled (end-to-end
native multicast across the two domains) or it is connected by
one of two possible tunnel types:
<list style="symbols">
<t>A Generic Routing Encapsulation (GRE) Tunnel <xref target="RFC2784"/>
allowing multicast tunneling across the peering point, or</t>
<t>An Automatic Multicast Tunnel (AMT) <xref target="RFC7450"/>.</t>
</list>
</t>
<t>A service provider controls one or more application sources in
AD-1 which will send multicast IP packets via one or more
(S,G)s (multicast traffic flows,
see <xref target="section-4.2.1"/> if you are unfamiliar with IP multicast).
It is assumed that the service being provided is
suitable for delivery via multicast (e.g. live video streaming
of popular events, software downloads to many devices, etc.),
and that the packet streams will carried by a suitable
multicast transport protocol.</t>
<t>An End User (EU) controls a device connected to AD-2, which
runs an application client compatible with the service
provider's application source.</t>
<t>The application client joins appropriate (S,G)s in order to
receive the data necessary to provide the service to the EU.
The mechanisms by which the application client learns the
appropriate (S,G)s are an implementation detail of the
application, and are out of scope for this document.</t>
</list>
</t>
<t>
The assumption here is that AD-1 has ultimate responsibility for
delivering the multicast based service on behalf of the content
source(s). All relevant interactions between the two domains
described in this document are based on this assumption.</t>
<t>
Note that domain 2 may be an independent network domain (e.g.: Tier
1 network operator domain). Alternately, domain 2 could also be an
Enterprise network domain operated by a single customer of AD-1. The peering
point architecture and requirements may have some unique aspects
associated with the Enterprise case.</t>
<t>
The Use Cases describing various architectural configurations for
the multicast distribution along with associated requirements is
described in section 3. Unique aspects related to the Enterprise
network possibility will be described in this section. <xref target="section-4"/>
contains a comprehensive list of pertinent information that needs to
be exchanged between the two domains in order to support functions
to enable the application transport.</t>
<t>
Note that domain 2 may be an independent network domain (e.g., Tier
1 network operator domain). Alternately, domain 2 could also be an
Enterprise network domain operated by a single customer.
</t>
<t>
The Use Cases describing various architectural configurations for
the multicast distribution along with associated requirements is
described in <xref target="section-3"/>. The peering
point architecture and requirements may have some unique aspects
associated with the Enterprise case. These unique aspects will also be
described in <xref target="section-3"/>. <xref target="section-4"/>
contains a comprehensive list of pertinent information that needs to
be exchanged between the two domains in order to support functions
to enable the application transport.
</t>
</section>
<section title="Inter-domain Peering Point Requirements for Multicast" anchor="section-3">
<t>
The transport of applications using multicast requires that the
inter-domain peering point is enabled to support such a process.
There are five Use Cases for consideration in this document.</t>
<section title="Native Multicast" anchor="section-3.1">
<t>
This Use Case involves end-to-end Native Multicast between the two
administrative domains and the peering point is also native
multicast enabled - see <xref target="native-pic"/>.</t>
<figure anchor="native-pic" title="Content Distribution via End to End Native Multicast">
<artwork><![CDATA[
------------------- -------------------
/ AD-1 \ / AD-2 \
/ (Multicast Enabled) \ / (Multicast Enabled) \
/ \ / \
| +----+ | | |
| | | +------+ | | +------+ | +----+
| | AS |------>| BR |-|---------|->| BR |-------------|-->| EU |
| | | +------+ | I1 | +------+ |I2 +----+
\ +----+ / \ /
\ / \ /
\ / \ /
------------------- -------------------
AD = Administrative Domain (Independent Autonomous System)
AS = Application (e.g., Content) Multicast Source
BR = Border Router
I1 = AD-1 and AD-2 Multicast Interconnection (e.g., MBGP)
I2 = AD-2 and EU Multicast Connection
]]></artwork>
</figure>
<t>Advantages of this configuration are:
<list style="symbols"><t>Most efficient use of bandwidth in both domains.</t>
<t>Fewer devices in the path traversed by the multicast stream when
compared to an AMT enabled peering point.</t>
</list>
</t>
<t>
From the perspective of AD-1, the one disadvantage associated with
native multicast into AD-2 instead of individual unicast to every EU
in AD-2 is that it does not have the ability to count the number of
End Users as well as the transmitted bytes delivered to them. This
information is relevant from the perspective of customer billing and
operational logs. It is assumed that such data will be collected by
the application layer. The application layer mechanisms for
generating this information need to be robust enough such that all
pertinent requirements for the source provider and the AD operator
are satisfactorily met. The specifics of these methods are beyond
the scope of this document.</t>
<t>Architectural guidelines for this configuration are as follows:
<list style="letters"><t>Dual homing for peering points between domains is recommended
as a way to ensure reliability with full BGP table visibility.</t>
<t>If the peering point between AD-1 and AD-2 is a controlled
network environment, then bandwidth can be allocated
accordingly by the two domains to permit the transit of non-
rate adaptive multicast traffic. If this is not the case, then
the multicast traffic must support rate-adaption (see <xref target="BCP145"/>).</t>
<t>The sending and receiving of multicast traffic between two
domains is typically determined by local policies associated
with each domain. For example, if AD-1 is a service provider
and AD-2 is an enterprise, then AD-1 may support local policies
for traffic delivery to, but not traffic reception from, AD-2.
Another example is the use of a policy by which AD-1 delivers
specified content to AD-2 only if such delivery has been
accepted by contract.</t>
<t>Relevant information on multicast streams delivered to End
Users in AD-2 is assumed to be collected by available
capabilities in the application layer. The precise nature and
formats of the collected information will be determined by
directives from the source owner and the domain operators.</t>
</list>
</t>
</section>
<section title="Peering Point Enabled with GRE Tunnel" anchor="section-3.2">
<t>
The peering point is not native multicast enabled in this Use Case.
There is a Generic Routing Encapsulation Tunnel provisioned over the
peering point. See <xref target="gre-pic"/>.</t>
<figure anchor="gre-pic" title="Content Distribution via GRE Tunnel">
<artwork><![CDATA[
------------------- -------------------
/ AD-1 \ / AD-2 \
/ (Multicast Enabled) \ / (Multicast Enabled) \
/ \ / \
| +----+ +---+ | (I1) | +---+ |
| | | +--+ |uBR|-|--------|-|uBR| +--+ | +----+
| | AS |-->|BR| +---+-| | +---+ |BR| -------->|-->| EU |
| | | +--+ <.......|........|........>+--+ |I2 +----+
\ +----+ / I1 \ /
\ / GRE \ /
\ / Tunnel \ /
------------------- -------------------
AD = Administrative Domain (Independent Autonomous System)
AS = Application (e.g., Content) Multicast Source
uBR = unicast Border Router - not necessarily multicast enabled
may be the same router as BR
BR = Border Router - for multicast
I1 = AD-1 and AD-2 Multicast Interconnection (e.g., MBGP)
I2 = AD-2 and EU Multicast Connection
]]></artwork>
</figure>
<t>In this case, the interconnection I1 between AD-1 and
AD-2 in <xref target="gre-pic"/> is multicast enabled via a Generic Routing
Encapsulation Tunnel (GRE) <xref target="RFC2784"/> between the two BR
and encapsulating the multicast protocols across it.</t>
<t>Normally, this approach is choosen if the uBR physcially connected to the
peering link can or should not be enabled for IP multicast. This approach
may also be beneficial if BR and uBR are the same device, but the
peering link is a broadcast domain (IXP), see <xref target="broadcast-peering"/>.</t>
<t> The routing configuration is
basically unchanged: Instead of BGP (SAFI2) across the native IP
multicast link between AD-1 and AD-2, BGP (SAFI2) is now run across
the GRE tunnel.</t>
<t>Advantages of this configuration:
<list style="symbols">
<t>Highly efficient use of bandwidth in both domains, although not
as efficient as the fully native multicast Use Case.</t>
<t>Fewer devices in the path traversed by the multicast stream
when compared to an AMT enabled peering point.</t>
<t>Ability to support partial and/or incremental IP multicast deployments in AD-
1 and/or AD-2: Only the path(s) between AS/BR (AD-1) and BR/EU (AD-2) need to
be multicast enabled. The uBRs may not support IP multicast
or enabling it could be seen as operationally risky on that important edge node whereas dedicated
BR nodes for IP multicast may be more acceptable at least initially. BR can also be located such that
only parts of the domain may need to support native IP multicast (e.g.: only the
core in AD-1 but not edge networks towards uBR).</t>
<t>GRE is an existing technology and is relatively simple to implement.</t>
</list>
</t>
<t>Disadvantages of this configuration:
<list style="symbols"><t>Per Use Case 3.1, current router technology cannot count the
number of end users or the number bytes transmitted.</t>
<t>GRE tunnel requires manual configuration.</t>
<t>The GRE must be established prior to stream starting.</t>
<t>The GRE tunnel is often left pinned up.</t>
</list>
</t>
<t>
Architectural guidelines for this configuration include the
following:</t>
<t>
Guidelines (a) through (d) are the same as those described in Use
Case 3.1. Two additional guidelines are as follows:</t>
<t><list hangIndent="3" style="hanging">
<t hangText="e.">
GRE tunnels are typically configured manually between peering
points to support multicast delivery between domains.</t>
<t hangText="f.">
It is recommended that the GRE tunnel (tunnel server)
configuration in the source network is such that it only
advertises the routes to the application sources and not to the
entire network. This practice will prevent unauthorized delivery
of applications through the tunnel (e.g., if application - e.g.,
content - is not part of an agreed inter-domain partnership).</t>
</list>
</t>
</section>
<section title="Peering Point Enabled with an AMT - Both Domains Multicast Enabled" anchor="section-3.3">
<t>
Both administrative domains in this Use Case are assumed to be
native multicast enabled here; however, the peering point is not.</t>
<t>
The peering point is enabled with an Automatic Multicast Tunnel. The
basic configuration is depicted in Figure 2.</t>
<figure title="- AMT Interconnection between AD-1 and AD-2" anchor="ref-amt-interconnection-between-ad-1-and-ad-2">
<artwork><![CDATA[
------------------- -------------------
/ AD-1 \ / AD-2 \
/ (Multicast Enabled) \ / (Multicast Enabled) \
/ \ / \
| +----+ +---+ | I1 | +---+ |
| | | +--+ |uBR|-|--------|-|uBR| +--+ | +----+
| | AS |-->|AR| +---+-| | +---+ |AG| -------->|-->| EU |
| | | +--+ <.......|........|........>+--+ |I2 +----+
\ +----+ / AMT \ /
\ / Tunnel \ /
\ / \ /
------------------- -------------------
AD = Administrative Domain (Independent Autonomous System)
AS = Application (e.g., Content) Multicast Source
AR = AMT Relay
AG = AMT Gateway
uBR = unicast Border Router - not multicast enabled
otherwise AR=uBR (AD-1), uBR=AG (AD-2)
I1 = AMT Interconnection between AD-1 and AD-2
I2 = AD-2 and EU Multicast Connection
]]></artwork>
</figure>
<t> Advantages of this configuration:
<list style="symbols">
<t>Highly efficient use of bandwidth in AD-1.</t>
<t>AMT is an existing technology and is relatively simple to
implement. Attractive properties of AMT include the following:
<list style="symbols">
<t>Dynamic interconnection between Gateway-Relay pair across the peering point.</t>
<t>Ability to serve clients and servers with differing policies.</t>
</list></t>
</list>
</t>
<t>Disadvantages of this configuration:
<list style="symbols">
<t>Per Use Case 3.1 (AD-2 is native multicast), current router
technology cannot count the number of end users or the number
of bytes transmitted to all end users.</t>
<t>Additional devices (AMT Gateway and Relay pairs) may be
introduced into the path if these services are not incorporated
in the existing routing nodes.</t>
<t>Currently undefined mechanisms for the AG to automatically
select the optimal AR.</t>
</list>
</t>
<t>Architectural guidelines for this configuration are as follows:</t>
<t>
Guidelines (a) through (d) are the same as those described in Use
Case 3.1. In addition,</t>
<t><list hangIndent="3" style="hanging">
<t hangText="e.">
It is recommended that AMT Relay and Gateway pairs be
configured at the peering points to support multicast delivery
between domains. AMT tunnels will then configure dynamically
across the peering points once the Gateway in AD-2 receives the
(S, G) information from the EU.</t>
</list>
</t>
</section>
<section title="Peering Point Enabled with an AMT - AD-2 Not Multicast Enabled" anchor="section-3.4">
<t>
In this AMT Use Case, the second administrative domain AD-2 is not
multicast enabled. Hence, the interconnection between AD-2 and the
End User is also not multicast enabled. This Use Case is depicted in
Figure 3.</t>
<figure anchor="amt-pic" title="AMT Tunnel Connecting AD-1 AMT Relay and EU Gateway">
<artwork><![CDATA[
------------------- -------------------
/ AD-1 \ / AD-2 \
/ (Multicast Enabled) \ / (Non Multicast \
/ \ / Enabled) \ N(large)
| +----+ +---+ | | +---+ | #EU
| | | +--+ |uBR|-|--------|-|uBR| | +----+
| | AS |-->|AR| +---+-| | +---+ ................>|EU/G|
| | | +--+ <.......|........|........... |I2 +----+
\ +----+ / N x AMT\ /
\ / Tunnel \ /
\ / \ /
------------------- -------------------
AS = Application Multicast Source
uBR = unicast Border Router - not multicast enabled,
otherwise AR = uBR (in AD-1).
AR = AMT Relay
EU/G = Gateway client embedded in EU device
I2 = AMT Tunnel Connecting EU/G to AR in AD-1 through Non-Multicast
Enabled AD-2.
]]></artwork>
</figure>
<t>This Use Case is equivalent to having unicast distribution of the
application through AD-2. The total number of AMT tunnels would be
equal to the total number of End Users requesting the application.
The peering point thus needs to accommodate the total number of AMT
tunnels between the two domains. Each AMT tunnel can provide the
data usage associated with each End User.</t>
<t>Advantages of this configuration:
<list style="symbols">
<t>Efficient use of bandwidth in AD-1 (The closer AR is to uBR, the more efficient).</t>
<t>Ability for AD-1 to introduce IP multicast based content delivery without any support by network devices in AD-2: Only application side in the EU device needs to perform AMT gateway library functionality to receive traffic from AMT relay.</t>
<t>Allows for AD-2 to "upgrade" to Use Case 3.5 (see below) at a later time without any change in AD-1 at that time.</t>
<t>AMT is an existing technology and is relatively simple to implement. Attractive properties of AMT include the following:
<list style="symbols">
<t>Dynamic interconnection between Gateway-Relay pair across the peering point.</t>
<t>Ability to serve clients and servers with differing policies.</t>
</list> </t>
<t>Each AMT tunnel serves as a count for each End User and is also able to track data usage (bytes) delivered to the EU.</t>
</list>
</t>
<t> Disadvantages of this configuration:
<list style="symbols">
<t>Additional devices (AMT Gateway and Relay pairs) are introduced into the transport path.</t>
<t>Assuming multiple peering points between the domains, the EU Gateway needs to be able to find the "correct" AMT Relay in AD-1.</t>
</list>
</t>
<t>Architectural guidelines for this configuration are as follows:</t>
<t>
Guidelines (a) through (c) are the same as those described in Use
Case 3.1.</t>
<t><list hangIndent="3" style="hanging">
<t hangText="d.">
It is necessary that proper procedures are implemented such
that the AMT Gateway at the End User device is
able to find the correct AMT Relay for each (S,G) content stream.
Standard mechanisms for that selection are still
subject to ongoing work. This includes use of anycast gateway
addresses, anycast DNS names, explicit configuration that is mapping (S,G)
to a relay address or letting the application in the EU/G provide
the relay address to the embedded AMT gateway function.</t>
<t hangText="e.">
The AMT tunnel capabilities are expected to be sufficient for
the purpose of collecting relevant information on the multicast
streams delivered to End Users in AD-2.</t>
</list>
</t>
</section>
<section title="AD-2 Not Multicast Enabled - Multiple AMT Tunnels Through AD-2" anchor="section-3.5">
<t>This is a variation of Use Case 3.4 as follows:</t>
<figure anchor="amt-pic2" title="AMT Tunnel Connecting AMT Relay and Relays">
<artwork><![CDATA[
------------------- -------------------
/ AD-1 \ / AD-2 \
/ (Multicast Enabled) \ / (Non Multicast \
/ +---+ \ (I1) / +---+ Enabled) \
| +----+ |uBR|-|--------|-|uBR| |
| | | +--+ +---+ | | +---+ +---+ | +----+
| | AS |-->|AR|<........|.... | +---+ |AG/|....>|EU/G|
| | | +--+ | ......|.|AG/|..........>|AR2| |I3 +----+
\ +----+ / I1 \ |AR1| I2 +---+ /
\ / single \+---+ /
\ / AMT Tunnel \ /
------------------- -------------------
uBR = unicast Border Router - not multicast enabled
otherwise AR=uBR (AD-1) or ubr=AGAR1 (AD-2)
AS = Application Source
AR = AMT Relay in AD-1
AGAR1 = AMT Gateway/Relay node in AD-2 across Peering Point
I1 = AMT Tunnel Connecting AR in AD-1 to GW in AGAR1 in AD-2
AGAR2 = AMT Gateway/Relay node at AD-2 Network Edge
I2 = AMT Tunnel Connecting Relay in AGAR1 to GW in AGAR2
EU/G = Gateway client embedded in EU device
I3 = AMT Tunnel Connecting EU/G to AR in AGAR2
]]></artwork>
</figure>
<t>
Use Case 3.4 results in several long AMT tunnels crossing the entire
network of AD-2 linking the EU device and the AMT Relay in AD-1
through the peering point. Depending on the number of End Users,
there is a likelihood of an unacceptably high amount of traffic
due to the large number of AMT tunnels - and unicast streams - through
the peering point. This situation can be alleviated as follows:</t>
<t><list style="symbols">
<t>Provisioning of strategically located AMT nodes in AD-2
AD-2. An AMT node comprises co-location of an AMT Gateway and
an AMT Relay. No change is required by AD-1 compared to 3.4.
This can be done whenever AD-2 seems fit (too much traffic across
peering point.</t>
<t>One such node is at the AD-2 side of the peering
point (node AGAR1 in above Figure).</t>
<t>Single AMT tunnel established across peering point linking AMT
Relay in AD-1 to the AMT Gateway in the AMT node AGAR1 in AD-2.</t>
<t>AMT tunnels linking AMT node AGAR1 at peering point in AD-2 to
other AMT nodes located at the edges of AD-2: e.g., AMT tunnel
I2 linking AMT Relay in AGAR1 to AMT Gateway in AMT node AGAR2
in Figure 4.</t>
<t>AMT tunnels linking EU device (via Gateway client embedded in
device) and AMT Relay in appropriate AMT node at edge of AD-2:
e.g., I3 linking EU Gateway in device to AMT Relay in AMT node
AGAR2.</t>
<t>In the most simple option (not shown), AD-2 only deploys a single
AGAR1 and lets EU/G build AMT tunnels directly to it. This
setup already solves the problem of replicated traffic across
the peering point. As soon as there is need to support more
AMT tunnels to EU/G, then additional AGAR2 nodes can be deployed
by AD-2.</t>
</list>
</t>
<t>
The advantage for such a chained set of AMT tunnels is that the
total number of unicast streams across AD-2 is significantly
reduced, thus freeing up bandwidth. Additionally, there will be a
single unicast stream across the peering point instead of possibly,
an unacceptably large number of such streams per Use Case 3.4.
However, this implies that several AMT tunnels will need to be
dynamically configured by the various AMT Gateways based solely on
the (S,G) information received from the application client at the EU
device. A suitable mechanism for such dynamic configurations is
therefore critical.</t>
<t>Architectural guidelines for this configuration are as follows:</t>
<t>
Guidelines (a) through (c) are the same as those described in Use
Case 3.1.</t>
<t><list hangIndent="3" style="hanging">
<t hangText="d.">
It is necessary that proper procedures are implemented such
that the various AMT Gateways (at the End User devices and the AMT
nodes in AD-2) are able to find the correct AMT Relay in other AMT
nodes as appropriate. Standard mechanisms for that selection are still
subject to ongoing work. This includes use of anycast gateway
addresses, anycast DNS names, or explicit configuration that is mapping (S,G)
to a relay address. On the EU/G, this mapping information may come
from the application.</t>
<t hangText="e.">
The AMT tunnel capabilities are expected to be sufficient for
the purpose of collecting relevant information on the multicast
streams delivered to End Users in AD-2.</t>
</list>
</t>
</section>
</section>
<section title="Functional Guidelines" anchor="section-4">
<t> Supporting functions and related interfaces over the peering point
that enable the multicast transport of the application are listed in
this section. Critical information parameters that need to be
exchanged in support of these functions are enumerated, along with
guidelines as appropriate. Specific interface functions for
consideration are as follows.</t>
<section title="Network Interconnection Transport Guidelines" anchor="section-4.1">
<t>
The term "Network Interconnection Transport" refers to the
interconnection points between the two Administrative Domains. The
following is a representative set of attributes that will need to be
agreed to between the two administrative domains to support
multicast delivery.</t>
<t><list style="symbols">
<t>Number of Peering Points.</t>
<t>Peering Point Addresses and Locations.</t>
<t>Connection Type - Dedicated for Multicast delivery or shared
with other services.</t>
<t>Connection Mode - Direct connectivity between the two AD's or
via another ISP.</t>
<t>Peering Point Protocol Support - Multicast protocols that will
be used for multicast delivery will need to be supported at
these points. Examples of protocols include eBGP <xref target="RFC4760"/> and
MBGP <xref target="RFC4760"/>.</t>
<t>Bandwidth Allocation - If shared with other services, then
there needs to be a determination of the share of bandwidth
reserved for multicast delivery. See section 4.1.1 below for more details.</t>
<t>QoS Requirements - Delay and/or latency specifications that need to be
specified in an SLA.</t>
<t>AD Roles and Responsibilities - the role played by each AD for
provisioning and maintaining the set of peering points to
support multicast delivery.</t>
</list>
</t>
<section title="Bandwidth Management" anchor="section-4.1.1">
<t>Like IP unicast traffic, IP multicast traffic carried across non-controlled
networks must comply to Congestion Control Principles as described in
<xref target="BCP41"/> and explained in detail for UDP IP multicast in <xref target="BCP145"/>.</t>
<t>Non-controlled networks (such as the Internet) are those where there is no policy for
managing bandwidth other than best effort with fair share of bandwidth under congestion.
As a simplified rule of thumb, complying to congestion control principles means to reduce
bandwidth under congestion in a way that is fair to competing competing (typically TCP) flow
("rate adaptive").</t>
<t>In many instances, multicast content delivery evolves from intra-domain
deployments where it is handled as a controlled network service and of
not complyng to congestion control principles. It was
given a reserved amount of bandwidth and admitted to the network so
that congestion never occurs. Therefore the congestion control issue
should be given specific attention when evolving to an interdomain peering
deployment.</t>
<t>In the case where end-to-end IP multicast traffic passes across the
network of two ADs (and their subsidiaries/customers), both ADs must agree
on a consistent traffic management policy. If for example AD-1 sources
non congestion aware IP multicast traffic and AD-2 carries it
as best effort traffic across links shared with other Internet traffic and
subject to congestion, this will not work: Under congestion, some amount
of that traffic will be dropped, rendering the remaining packets
often as undecodeable garbage clogging up the network in AD-2 and because this
is not congestion aware, the loss does not reduce this rate.
Competing traffic will not get their fair share under
congestion, and EUs will be frusted by extremely bad quality of both their
IP multicast and other (e.g.: TCP) traffic. Note that this is not an IP multicast
technology issue, but solely a transport/application layer issue:
The problem would equally happen if AD-1 would send non-rate adaptive unicast traffic,,
for example legacy IPTV video-on-demand traffic which typically is also non
congestion aware. Because rate adaption in IP unicast video is commonplace today
because of ABR (Adaptive Bitrate Video), it is very unlikely for this to happen though
in reality with IP unicast.</t>
<t>While the rules for traffic management apply whether or not IP multicast
is tunneled or not, the one feature that can make AMT tunnels
more difficult is the unpredictability of bandwidth requirements across
underlying links because of the way they can be used:
With native IP multicast or GRE tunnels, the amount
of bandwidth depends on the amount of content, not the number of EUs -
and is therefore easier to plan for. AMT tunnels terminating in EU/G on the other
hand scale with the number of EUs. In the vicinity of the AMT relay they can
introduce very large amount of replicated traffic and it is not always feasible
to provision enough bandwidth for all possible EU to get the highest quality for
all their content during peak utilization in such setups - unless the AMT
relays are very close to the EU edge. Therefore it is also recommended
to use IP multicast rate adaptation even inside controlled networks when using
AMT tunnels directly to EU/G.</t>
<t>Note that rate-adaptive IP multicast traffic in general does not mean that the
sender is reducing the bitrate, but rather that the EUs that experience congestion
are joining to a lower bitrate (S,G) stream of the content, similar to adaptive
bitrate streaming over TCP. Migration from non rate-adaptive
to rate adaptive bitrate in IP multicast does therefore also change the
dynamic (S,G) join behavior in the network resulting in potentially higher
performance requirement for IP multicast protocols (IGMP/PIM), especially
on the last hops where dynamic changes occur (including AMT gateway/relays):
In non rate-adaptive IP multicast, only "channel change" causes state change,
in rate-adaptive also the congestion situation causes state change.</t>
<t>Even though not fully specified in this document, peerings that rely on
GRE/AMT tunnels may be across one or more transit ADs instead of an exclusive
(non-shared, L1/L2) path. Unless those transit
ADs are explicitly contracted to provide other than "best effort" transit
for the tunneled traffic, the IP multicast traffic tunneled must be rate adaptive
to not violate BCP41 across those transit ADs.</t>
</section>
</section>
<section title="Routing Aspects and Related Guidelines" anchor="section-4.2">
<t>
The main objective for multicast delivery routing is to ensure that
the End User receives the multicast stream from the "most optimal"
source <xref target="INF_ATIS_10"/> which typically:</t>
<t><list style="symbols"><t>Maximizes the multicast portion of the transport and minimizes
any unicast portion of the delivery, and</t>
<t>Minimizes the overall combined network(s) route distance.</t>
</list>
</t>
<t>
This routing objective applies to both Native and AMT; the actual
methodology of the solution will be different for each. Regardless,
the routing solution is expected:</t>
<t><list style="symbols"><t>To be scalable,</t>
<t>To avoid or minimize new protocol development or modifications,
and</t>
<t>To be robust enough to achieve high reliability and
automatically adjust to changes and problems in the multicast
infrastructure.</t>
</list>
</t>
<t>
For both Native and AMT environments, having a source as close as
possible to the EU network is most desirable; therefore, in some
cases, an AD may prefer to have multiple sources near different
peering points. However, that is entirely an implementation issue.</t>
<section title="Native Multicast Routing Aspects" anchor="section-4.2.1">
<t>
Native multicast simply requires that the Administrative Domains
coordinate and advertise the correct source address(es) at their
network interconnection peering points(i.e., border routers). An
example of multicast delivery via a Native Multicast process across
two Administrative Domains is as follows assuming that the
interconnecting peering points are also multicast enabled:</t>
<t><list style="symbols"><t>Appropriate information is obtained by the EU client who is a
subscriber to AD-2 (see Use Case 3.1). This information is in
the form of metadata and it contains instructions directing the
EU client to launch an appropriate application if necessary, as
well as additional information for the application about the
source location and the group (or stream) id in the form of the
"S,G" data. The "S" portion provides the name or IP address of
the source of the multicast stream. The metadata may also
contain alternate delivery information such as specifying the
unicast address of the stream.</t>
<t>The client uses the join message with S,G to join the multicast
stream <xref target="RFC4604"/>. To facilitate this process, the two AD's need to do the following:
<list style="symbols"><t>Advertise the source id(s) over the Peering Points.</t>
<t>Exchange relevant Peering Point information such as Capacity
and Utilization.</t>
<t>Implement compatible multicast protocols to ensure proper
multicast delivery across the peering points.</t>
</list>
</t>
</list>
</t>
</section>
<section title="GRE Tunnel over Interconnecting Peering Point" anchor="section-4.2.2">
<t>
If the interconnecting peering point is not multicast enabled and
both AD's are multicast enabled, then a simple solution is to
provision a GRE tunnel between the two AD's - see Use Case 3.2.2.
The termination points of the tunnel will usually be a network
engineering decision, but generally will be between the border
routers or even between the AD 2 border router and the AD 1 source
(or source access router). The GRE tunnel would allow end-to-end
native multicast or AMT multicast to traverse the interface.
Coordination and advertisement of the source IP is still required.</t>
<t>
The two AD's need to follow the same process as described in 4.2.1
to facilitate multicast delivery across the Peering Points.</t>
</section>
<section title="Routing Aspects with AMT Tunnels" anchor="section-4.2.3">
<t>
Unlike Native Multicast (with or without GRE), an AMT Multicast
environment is more complex. It presents a dual layered problem
because there are two criteria that should be simultaneously met:</t>
<t><list style="symbols">
<t>Find the closest AMT relay to the end-user that also has
multicast connectivity to the content source, and</t>
<t>Minimize the AMT unicast tunnel distance.</t>
</list></t>
<t>There are essentially two components to the AMT specification</t>
<t><list style="hanging">
<t hangText="AMT Relays:">These serve the purpose of tunneling UDP multicast
traffic to the receivers (i.e., End-Points). The AMT Relay will
receive the traffic natively from the multicast media source and
will replicate the stream on behalf of the downstream AMT
Gateways, encapsulating the multicast packets into unicast
packets and sending them over the tunnel toward the AMT Gateway.
In addition, the AMT Relay may perform various usage and
activity statistics collection. This results in moving the
replication point closer to the end user, and cuts down on
traffic across the network. Thus, the linear costs of adding
unicast subscribers can be avoided. However, unicast replication
is still required for each requesting End-Point within the
unicast-only network.</t>
<t hangText="AMT Gateway (GW):"> The Gateway will reside on an End-Point - this
could be any type of IP host such as a Personal Computer (PC), mobile phone,
Set Top Box (STB) or appliances. The AMT
Gateway receives join and leave requests from the Application
via an Application Programming Interface (API). In this manner,
the Gateway allows the End-Point to conduct itself as a true
Multicast End-Point. The AMT Gateway will encapsulate AMT
messages into UDP packets and send them through a tunnel (across
the unicast-only infrastructure) to the AMT Relay.</t>