summaryrefslogtreecommitdiff
path: root/doc/rfc/rfc4280.txt
blob: 6c9b7531851e421ab6e56523069291d6e4cd2c21 (plain) (blame)
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
Network Working Group                                       K. Chowdhury
Request for Comments: 4280                              Starent Networks
Category: Standards Track                                      P. Yegani
                                                           Cisco Systems
                                                               L. Madour
                                                                Ericsson
                                                           November 2005


         Dynamic Host Configuration Protocol (DHCP) Options for
                Broadcast and Multicast Control Servers

Status of this Memo

   This document specifies an Internet standards track protocol for the
   Internet community, and requests discussion and suggestions for
   improvements.  Please refer to the current edition of the "Internet
   Official Protocol Standards" (STD 1) for the standardization state
   and status of this protocol.  Distribution of this memo is unlimited.

Copyright Notice

   Copyright (C) The Internet Society (2005).

Abstract

   This document defines new options to discover the Broadcast and
   Multicast Service (BCMCS) controller in an IP network.  BCMCS is
   being developed for Third generation (3G) cellular telephone
   networks.  Users of the service interact with a controller in the
   network via the Mobile Node (MN) to derive information required to
   receive Broadcast and Multicast Service.  Dynamic Host Configuration
   Protocol can be used to configure the MN to access a particular
   controller.  This document defines the related options and option
   codes.
















Chowdhury, et al.           Standards Track                     [Page 1]
^L
RFC 4280                 DHCP Options for BMCS             November 2005


Table of Contents

   1. Motivation ......................................................2
   2. Overview of the 3GPP2 BCMCS Network .............................3
   3. Terminology .....................................................4
   4. Broadcast and Multicast Service Controller Options ..............4
      4.1. Broadcast and Multicast Service Controller Domain
           Name List for DHCPv4 .......................................4
      4.2. Broadcast and Multicast Service Controller Domain
           Name List Option for DHCPv6 ................................5
      4.3. Broadcast and Multicast Service Controller IPv4
           Address Option for DHCPv4 ..................................6
      4.4. Broadcast and Multicast Service Controller IPv6
           Address Option for DHCPv6 ..................................6
      4.5. Consideration for Client Operation .........................7
      4.6. Consideration for Server Operation .........................7
   5. Security Considerations .........................................8
   6. IANA Considerations .............................................8
   7. Acknowledgements ................................................8
   8. Normative References ............................................9

1.  Motivation

   Dynamic Host Configuration Protocol [RFC2131] and [RFC3315] can be
   used to configure various non-IP address type of parameters.  These
   parameters are required for normal operation of various services that
   are offered over an IP network.

   Broadcast and Multicast Service (BCMCS) is one such service that is
   being standardized in various mobile wireless standard bodies such as
   Third Generation Partnership Project 2 (3GPP2), Open Mobile Alliance
   (OMA), and 3GPP.  A description of the BCMCS as defined in 3GPP2 can
   be found in [BCMCS].

   While DHCP already defines many options for device configuration, no
   option exists for configuring a mobile device to use BCMCS.  This
   memo defines extensions for both DHCPv4 and DHCPv6 so that DHCP can
   be used to provide necessary configuration information to a mobile
   device about the BCMCS controllers.

   DHCP is being used in 3GPP2, to assist Mobile Nodes (MNs) with the
   discovery of the BCMCS Controller in a mobile operator's IP network.
   The BCMCS includes a controller component that is responsible for
   managing the service via interaction with the MN and other network
   entities.  In this document, we will call this a BCMCS controller.






Chowdhury, et al.           Standards Track                     [Page 2]
^L
RFC 4280                 DHCP Options for BMCS             November 2005


   An overview of the 3GPP2 BCMCS architecture is given in the next
   section.  It provides enough information to understand the basics of
   the 3GPP2 BCMCS operation.  Readers are encouraged to find a more
   detailed description in [BCMCS].

   As described in [BCMCS], the MNs are required to know the IPv4 or the
   IPv6 address of the BCMCS controller entity so that they can download
   all the necessary information about a desired broadcast and/or a
   multicast program.  In a roaming environment, static configuration of
   the BCMCS controller's IP address becomes unrealistic.  Therefore,
   DHCP is considered to be a method to dynamically configure the MNs
   with the IP address or the fully qualified domain name (FQDN) of the
   BCMCS controller in the 3G cellular telephone networks.

   In order to allow the MNs to discover the BCMCS controllers, the MNs
   request the appropriate option codes from the DHCP server.  The DHCP
   servers need to return the corresponding configuration options that
   carry either BCMCS controller's IP address or FQDN based on
   configuration.  This document defines the necessary options and
   option codes.

2.  Overview of the 3GPP2 BCMCS Network

   The Broadcast and Multicast Service architecture in a 3G cellular
   telephone network such as 3GPP2 has the following model:

                              +------------+   +--------+
                              |   BCMCS    |   |        |
                              | Controller |   |  DHCP  |
                              |            |   | Server |
                              +------------+   +--------+
                                     ^
                              Control|
                                 Info|
                                     |
                                     |
                                     V
   +----+        +------------+    +------------+
   |    |        |            |    |            |
   | MN/| bearer |   Radio    |    | BCMCS      |
   |User|<-------|   Access   |<---| Content    |
   |    |        |   Network  |    | Server     |
   +----+        +------------+    +------------+

   Note that this figure is shown here for a basic understanding of how
   Broadcast and Multicast Service works in a 3G cellular telephone
   network.  The network elements except MN/user and the DHCP server are
   not relevant to the text in this document.



Chowdhury, et al.           Standards Track                     [Page 3]
^L
RFC 4280                 DHCP Options for BMCS             November 2005


   The MN interacts with the BCMCS Controller to request broadcast/
   multicast program information from the network (e.g., scheduled time,
   multicast IP address, port numbers).  The MN may also be
   authenticated by the BCMCS Controller while downloading the relevant
   program-security-related information (such as encryption key).  These
   interactions may happen via HTTP and XML as defined in [BCMCS].
   There may be more than one BCMCS controller in the network.  The MN
   should discover the appropriate BCMCS controller to request the
   relevant program information.  For details of Broadcast and Multicast
   Service operation in 3GPP2, see [BCMCS].

3.  Terminology

   The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in RFC 2119 [RFC2119].

4.  Broadcast and Multicast Service Controller Options

   This section defines the configuration option for the BCMCS
   controller of the Broadcast and Multicast Service.

4.1.  Broadcast and Multicast Service Controller Domain Name List for
      DHCPv4

   The general format of the BCMCS Controller Domain list option for
   DHCPv4 is as follows:

           Code  Len  FQDN(s) of BCMCS Controller
         +-----+-----+-----+-----+-----+-----+-----+--
         | 88  |  n  |  s1 |  s2 |  s3 |  s4 | s5  |  ...
         +-----+-----+-----+-----+-----+-----+-----+--

   The option MAY contain multiple domain names, but these domain names
   SHOULD be used to construct Service Record (SRV) lookups as specified
   in [BCMCS], rather than querying for different A records.  The client
   can try any or ALL of the domain names to construct the SRV lookups.
   The list of domain names MAY contain the domain name of the access
   provider and its partner networks that also offer Broadcast and
   Multicast Service.

   As an example, the access provider may have one or more partners or
   resellers often termed as MVNOs (Mobile Virtual Network Operators)
   for Broadcast and Multicast Service.  In this case, the access
   provider should be able to use the same DHCP option to send multiple
   of those domain names (MVNOs).  To illustrate this further, let's
   assume that the access provider (operator) has a reseller agreement
   with two MVNOs: mvno1 and mvno2.  Therefore, the Broadcast and



Chowdhury, et al.           Standards Track                     [Page 4]
^L
RFC 4280                 DHCP Options for BMCS             November 2005


   Multicast Service Controller Domain Name list for the DHCPv4 option
   will contain three domain names: operator.com, mvno1.com, and
   mvno2.com.  Upon receiving this option, the BCMCS client may choose
   to use one of the domain names to fetch the appropriate BCMCS
   controller address (based on user's preference or configuration).  If
   no preferred domain name is found in the received list, the client
   should use a default setting, e.g., use the first one in the list.

   If the length of the domain list exceeds the maximum permissible
   length within a single option (254 octets), then the domain list MUST
   be represented in the DHCPv4 message as specified in [RFC3396].  An
   example case when two controller domain names, example.com and
   example.net, are returned will be:

   +----+----+----+----+----+----+----+----+----+----+----+
   | 88 | 26 | 7  | 'e'| 'x'| 'a'| 'm'| 'p'| 'l'| 'e'|  3 |
   +----+----+----+----+----+----+----+----+----+----+----+
   +----+----+----+----+----+----+----+----+----+----+----+
   |'c' |'o' | 'm'|  0 | 7  | 'e'| 'x'| 'a'| 'm'| 'p'| 'l'|
   +----+----+----+----+----+----+----+----+----+----+----+
   +----+----+----+----+----+----+
   |'e' |  3 | 'n'| 'e'| 't'|  0 |
   +----+----+----+----+----+----+

4.2.  Broadcast and Multicast Service Controller Domain Name List Option
      for DHCPv6

   The semantics and content of the DHCPv6 encoding of this option are
   exactly the same as the encoding described in the previous section,
   other than necessary differences between the way options are encoded
   in DHCPv4 and DHCPv6.

   Specifically, the DHCPv6 option for the BCMCS Control Server Domain
   Names has the following format:

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |      OPTION_BCMCS_SERVER_D    |         option-length         |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |          BCMCS Control Server Domain Name List                |
     |                              ...                              |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   option-code: OPTION_BCMCS_SERVER_D (33).

   option-length: Length of the 'BCMCS Control Server Domain Name List'
   field in octets; variable.



Chowdhury, et al.           Standards Track                     [Page 5]
^L
RFC 4280                 DHCP Options for BMCS             November 2005


   BCMCS Control Server Domain Name List: Identical format as in Section
   4.1 (except the Code and Len fields).

4.3.  Broadcast and Multicast Service Controller IPv4 Address Option for
      DHCPv4

   The Length byte (Len) is followed by a list of IPv4 addresses
   indicating BCMCS controller IPv4 addresses.  The BCMCS controllers
   MUST be listed in order of preference.  Its minimum length is 4, and
   the length MUST be a multiple of 4.  The DHCPv4 option for this
   encoding has the following format:

          Code   Len  Address 1               Address 2
         +-----+-----+-----+-----+-----+-----+-----+--
         | 89  |  n  | a1  | a2  | a3  | a4  | a1  |  ...
         +-----+-----+-----+-----+-----+-----+-----+--

4.4.  Broadcast and Multicast Service Controller IPv6 Address Option for
      DHCPv6

   This DHCPv6 option MUST carry one or more 128-bit IPv6 address(es) of
   the BCMCS Controller in an operator's network.

      0                   1                   2                   3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |      OPTION_BCMCS_SERVER_A    |         option-length         |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                                                               |
     |    BCMCS Control server-1 address (IPv6 address)              |
     |                                                               |
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                                                               |
     |    BCMCS Control server-2 address (IPv6 address)              |
     |                                                               |
     |                                                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                              ...                              |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

   option-code: OPTION_BCMCS_SERVER_A (34).

   option-length: Length of the 'BCMCS Control Server IPv6 address'
   field in octets; variable.






Chowdhury, et al.           Standards Track                     [Page 6]
^L
RFC 4280                 DHCP Options for BMCS             November 2005


4.5.  Consideration for Client Operation

   For DHCPv4, the client MAY request either or both of the BCMCS
   Controller Domain Name List and the IPv4 Address options in the
   Parameter Request List option (code 55) as defined in [RFC2132].

   For DHCPv6, the client MAY request either or both of the BCMCS
   Controller Domain Name List and the IPv6 Address options in the
   Options Request Option (ORO) as described in [RFC3315].

   If the client receives both the BCMCS Controller Domain Name List and
   IPv6 or IPv4 Address options, it SHOULD use the Domain Name List
   option.  In this case, the client SHOULD NOT use the BCMCS Controller
   IPv6 or IPv4 Address option unless the server(s) in the BCMCS
   Controller Domain Name List cannot be resolved or reached.

4.6.  Consideration for Server Operation

   A server MAY send a client either the BCMCS Controller Domain Name
   List Option or the BCMCS Controller IPv6 Address/IPv4 Address options
   if the server is configured to do so.

   If a client requests both the options and the server is configured
   with both types of information, the server MAY send the client only
   one of the options if it is configured to do so.  In this case, the
   server SHOULD send the BCMCS Controller Domain Name List option.

   A server configured with the BCMCS Controller IPv6 or IPv4 Address
   information MUST send a client the BCMCS Controller IPv6 or IPv4
   Address option if that client requested only the BCMCS Controller
   IPv6 or IPv4 Address option and not the BCMCS Controller Domain Name
   List option in the ORO or Parameter Request List option.

   If a client requests for the BCMCS Controller IPv6 or IPv4 Address
   option and the server is configured only with the domain name(s), the
   server MUST return the Domain Name List and vice versa.

   The domain names MUST be concatenated and encoded using the technique
   described in Section 3.3 of "Domain Names - Implementation and
   Specification" [RFC1035].  DNS name compression MUST NOT be used.











Chowdhury, et al.           Standards Track                     [Page 7]
^L
RFC 4280                 DHCP Options for BMCS             November 2005


   The following table summarizes the server's response:

      Client sends in ORO/
      Parameter Request List   Domain Name List        IPv6/IPv4 Address
      __________________________________________________________________

      Neither option               SHOULD                  MAY
      Domain Name List             MUST                    MAY
      IPv6/IPv4 Address            MAY                     MUST
      Both options                 SHOULD                  MAY

5.  Security Considerations

   This document does not introduce any new security concerns beyond
   those specified in the basic DHCP [RFC2131] and DHCPv6 [RFC3315]
   specifications.  In the absence of message integrity protection for
   these options, an attacker could modify the option values to divert
   requests for broadcast service.

6.  IANA Considerations

   The following option codes for Broadcast and Multicast Service
   Controller option have been assigned by IANA:

   1.  The BCMCS Controller Domain Name list (Section 4.1) has been
   assigned a value of 88 from the DHCPv4 option space.

   2.  The BCMCS Controller Domain Name list (Section 4.2) has been
   assigned a value of 33 from the DHCPv6 option space, and a name of
   OPTION_BCMCS_SERVER_D.

   3.  The BCMCS Controller IPv4 Address option (Section 4.3) has been
   assigned a value of 89 from the DHCPv4 option space.

   4.  The BCMCS Controller IPv6 Address option (Section 4.4) has been
   assigned a value of 34 from the DHCPv6 option space, and a name of
   OPTION_BCMCS_SERVER_A.

7.  Acknowledgements

   Thanks to the following individuals for their review and constructive
   comments during the development of this document:

   AC Mahendran, Jun Wang, Raymond Hsu, Jayshree Bharatia, Ralph Droms,
   Ted Lemon, Margaret Wasserman, Thomas Narten, Elwyn Davies, Pekka
   Savola, Bert Wijnen, David Kessens, Brian E. Carpenter, and Stig
   Venaas.




Chowdhury, et al.           Standards Track                     [Page 8]
^L
RFC 4280                 DHCP Options for BMCS             November 2005


8.  Normative References

   [BCMCS]    3GPP2, www.3gpp2.org,
              http://www.3gpp2.org/Public_html/specs/tsgx.cfm, "X.S0022,
              Broadcast and Multicast Service in cdma2000 Wireless IP
              Network.", December 2005.

   [RFC1035]  Mockapetris, P., "Domain names - implementation and
              specification", STD 13, RFC 1035, November 1987.

   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC2131]  Droms, R., "Dynamic Host Configuration Protocol",
              RFC 2131, March 1997.

   [RFC2132]  Alexander, S. and R. Droms, "DHCP Options and BOOTP Vendor
              Extensions", RFC 2132, March 1997.

   [RFC3315]  Droms, R., Bound, J., Volz, B., Lemon, T., Perkins, C.,
              and M. Carney, "Dynamic Host Configuration Protocol for
              IPv6 (DHCPv6)", RFC 3315, July 2003.

   [RFC3396]  Lemon, T. and S. Cheshire, "Encoding Long Options in the
              Dynamic Host Configuration Protocol (DHCPv4)", RFC 3396,
              November 2002.

























Chowdhury, et al.           Standards Track                     [Page 9]
^L
RFC 4280                 DHCP Options for BMCS             November 2005


Authors' Addresses

   Kuntal Chowdhury
   Starent Networks
   30 International Place
   Tewksbury, MA  01876
   US

   Phone: +1 214-550-1416
   EMail: kchowdhury@starentnetworks.com


   Parviz Yegani
   Cisco Systems
   3625 Cisco Way
   San Jose, CA  95134
   US

   Phone: +1 408-832-5729
   EMail: pyegani@cisco.com


   Lila Madour
   Ericsson
   8400, Decarie Blvd
   Town of Mount Royal, Quebec  H4P 2N2
   CANADA

   Phone: +1 514-345-7900
   EMail: Lila.Madour@ericsson.com





















Chowdhury, et al.           Standards Track                    [Page 10]
^L
RFC 4280                 DHCP Options for BMCS             November 2005


Full Copyright Statement

   Copyright (C) The Internet Society (2005).

   This document is subject to the rights, licenses and restrictions
   contained in BCP 78, and except as set forth therein, the authors
   retain all their rights.

   This document and the information contained herein are provided on an
   "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS
   OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY AND THE INTERNET
   ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS OR IMPLIED,
   INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF THE
   INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED
   WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.

Intellectual Property

   The IETF takes no position regarding the validity or scope of any
   Intellectual Property Rights or other rights that might be claimed to
   pertain to the implementation or use of the technology described in
   this document or the extent to which any license under such rights
   might or might not be available; nor does it represent that it has
   made any independent effort to identify any such rights.  Information
   on the procedures with respect to rights in RFC documents can be
   found in BCP 78 and BCP 79.

   Copies of IPR disclosures made to the IETF Secretariat and any
   assurances of licenses to be made available, or the result of an
   attempt made to obtain a general license or permission for the use of
   such proprietary rights by implementers or users of this
   specification can be obtained from the IETF on-line IPR repository at
   http://www.ietf.org/ipr.

   The IETF invites any interested party to bring to its attention any
   copyrights, patents or patent applications, or other proprietary
   rights that may cover technology that may be required to implement
   this standard.  Please address the information to the IETF at ietf-
   ipr@ietf.org.

Acknowledgement

   Funding for the RFC Editor function is currently provided by the
   Internet Society.







Chowdhury, et al.           Standards Track                    [Page 11]
^L