Multimedia Multicast on the InternetISBN: 978-1-905209-42-2
Hardcover
366 pages
January 2007, Wiley-ISTE
|
Preface xvii
Chapter 1. Multicast Routing on the Internet 1
Jean-Jacques PANSIOT
1.1. Introduction and definitions 1
1.2. Multicast addressing 4
1.2.1. Limited scope addressing 5
1.2.2. GLOP global addressing 5
1.2.3. Dynamic addressing: MALLOC 6
1.3. Structure of a multicast router 7
1.3.1. The unicast routing base for multicasting (MRIB) 7
1.3.2. Tree information base (TIB) 8
1.3.3. Multicast forwarding information base (MFIB) 8
1.4. Relationship with the other protocol layers 10
1.4.1. Relationship with the lower layer 10
1.4.2. Relationship with the upper layers 12
1.5. Belonging to groups: IGMP 12
1.5.1. IGMP version 1 13
1.5.2. IGMP version 2 13
1.5.3. IGMP version 3 14
1.6. Routing in flood-and-prune mode and the RPF 15
1.6.1. Reverse path forwarding or RPF check 15
1.6.2. Pruning 16
1.6.3. Protocol cost 17
1.6.4. DVMRP 17
1.6.5. Mbone 18
1.6.6. PIM dense mode: PIM-DM 18
1.7. Link-state routing and MOSPF 18
1.7.1. MOSPF principle 18
1.7.2. MOSPF inter-areas 19
1.7.3. Cost of MOSPF 20
1.8. Routing with explicit construction: PIM-SM and CBT 20
1.8.1. PIM sparse-mode principles: PIM-SM 21
1.8.2. Discovery of RPs: boot strap routers (BSR) 24
1.8.3. Maintenance of the PIM-SM tree 24
1.8.4. Core based trees: CBT 25
1.8.5. Bidirectional PIM 25
1.8.6. Cost of explicit methods 26
1.9. Inter-domain multicast routing 27
1.9.1. MASC/BGMP architecture 27
1.9.2. BGP multiprotocol extensions 28
1.9.3. Interaction with intra-domain routing 29
1.9.4. BGMP 29
1.9.5. PIM-SM and MSDP solution 30
1.10. Model of multicasting with a single source: SSM 32
1.10.1. Express 32
1.10.2. The SSM and PIM-SM model 33
1.10.3. Limitations of PIM-SSM 33
1.11. Multicasting and IPv6 34
1.11.1. IPv6 multicast addressing 34
1.11.2. Protocol for group subscription: MLD 35
1.11.3. RP-embedded mechanism 35
1.12. Other multicast routing proposals 36
1.12.1. Simple multicast 37
1.12.2. Logical addressing and routing: LAR 37
1.12.3. Reunite 38
1.12.4. Hop by hop multicast routing: HBH 39
1.13. Comparison of various protocols 40
1.13.1. Quality of the broadcast trees 40
1.13.2. Cost of protocols 42
1.14. Alternatives to multicast routing 43
1.14.1. Multiple unicast connections 43
1.14.2. Multicasting for small groups 43
1.14.3. Application level multicast 43
1.15. Conclusion 44
1.16. Bibliography 44
1.17. Glossary of acronyms 49
Chapter 2. Hierarchical Multicast Protocols with Quality of
Service 51
Abderrahim BENSLIMANE and Omar MOUSSAOUI
2.1. Introduction 51
2.2. Multicast principle 53
2.2.1. Advantage of multicasting 53
2.2.2. Technological constraints 55
2.2.3. Main types of trees 56
2.2.3.1. Shared tree/specific tree 56
2.2.3.2. Shortest path tree (SPT) 57
2.2.3.3. Steiner tree 57
2.2.3.4. Centered tree (CBT) 58
2.2.3.5. Summary 58
2.3. Multicast routing protocols 59
2.3.1. DVMRP 59
2.3.2. PIM 60
2.3.3. MOSPF 61
2.3.4. IP multicast 62
2.3.5. Limitations of the current multicast routing protocols 63
2.3.5.1. DVMRP 63
2.3.5.2. PIM 63
2.4. Quality of service in multicast routing 64
2.4.1. SJP 64
2.4.2. QoSMIC 66
2.4.3. QMRP 67
2.4.4. Conclusion 68
2.5. Hierarchical multicasting 69
2.5.1. HDVMRP 70
2.5.2. LGC 73
2.5.3. HIP 74
2.5.4. QHMRP 78
2.5.5. Conclusion 81
2.6. Hierarchical structure for multicasting 82
2.6.1. Context of the system 82
2.6.2. Construction of local groups 82
2.6.2.1. Construction of the neighborhood 82
2.6.2.2. Construction of transit groups 83
2.6.2.3. Grouping and election 83
2.6.3. Construction of hierarchical trees between servers 84
2.6.3.1. Use of centered trees 85
2.6.3.2. Use of SPT trees 87
2.6.3.3. Comparison between the two methods 88
2.6.4. Management of the hierarchical structure 89
2.7. Conclusion 90
2.8. Bibliography 90
Chapter 3. A Transport Protocol for Multimedia Multicast with
Differentiated Quality of Service 93
David GARDUNO, Ernesto EXPOSITO and Michel DIAZ
3.1. Introduction 93
3.1.1. Multimedia 93
3.1.2. Partial QoS 93
3.1.3. Multicast 95
3.1.4. Text organization 96
3.2. State of the art 96
3.2.1. Point-to-point multimedia data transmission 96
3.2.1.1. UDP and TCP 96
3.2.1.2. SCTP 97
3.2.1.3. DCCP 98
3.2.1.4. Networking layer: IntServ 98
3.2.1.5. Networking layer: DiffServ 99
3.2.2. Multicast algorithms 100
3.3. Network model, Tree and QoS oriented multicast service 102
3.3.1. Introduction 102
3.3.2. Hierarchized graph 104
3.3.3. Degree Bounded Shortest Path Tree (DGBSPT) 107
3.3.4. Model and simulations 116
3.4. Fully Programmable Transport Protocol 118
3.4.1. Introduction 118
3.4.2. Design principles 119
3.4.3. Contextual model of QoS 119
3.4.3.1. QoS specification 119
3.4.3.2. QoS mechanisms 120
3.4.4. Protocol specification 121
3.4.5. Implementation and evaluation 123
3.5. Integration of multicast services and multimedia protocols 125
3.5.1. Deployment of transport services by proxies 125
3.5.1.1. Basic FPTP architecture and mechanisms 126
3.5.2. The M-FPTP multimedia multicast service 128
3.5.3. Tests and results 130
3.6. Conclusion 131
3.7. Bibliography 132
Chapter 4. Reliability in Group Communications: An
Introduction 135
Vincent ROCA
4.1. Introduction 135
4.2. Which reliability for which applications? 136
4.2.1. Reliability levels 136
4.2.2. Group models 137
4.2.3. Transmission models 137
4.2.4. Multiplicity of applications and their needs 138
4.3. Challenges and big classes of solutions in the case of a reliable group communication service 139
4.3.1. Challenges 139
4.3.2. Reliable scaling and communications: problems 140
4.3.3. Scaling of control traffic 140
4.3.3.1. Use of removal mechanisms by recipients 140
4.3.3.2. Use of FEC codes 141
4.3.3.3. Use of assistance node trees 142
4.3.4. Scaling of retransmissions 142
4.3.4.1. Use of FEC 142
4.3.4.2. Use of a retransmission server tree 142
4.3.4.3. Local retransmissions 142
4.3.5. Considering the heterogenity 143
4.3.6. First assessment 144
4.4. FEC codes 144
4.4.1. Codes for packet erasure channels 144
4.4.2. The concepts of systematic codes and MDS codes 145
4.4.3. Classification of FEC codes 145
4.4.4. Small block codes 146
4.4.4.1. Principles 146
4.4.4.2. Problem linked to block segmentation 146
4.4.4.3. Use in the reliable communication systems 147
4.4.5. Large block codes 147
4.4.5.1. Introduction 147
4.4.5.2. Operation mode of LDPC-staircase and LDPC-triangle codes 147
4.4.6. Rateless codes (also known as extensible codes) 152
4.4.6.1. Introduction 152
4.4.6.2. Principles of online codes 152
4.4.6.3. Comparison with the LDPC-staircase and triangle codes 153
4.4.7. A few additional notes on the FEC rateless and large block codes 153
4.5. Conclusion 154
4.6. Bibliography 155
Chapter 5. End-to-end Approaches for Reliable Communications
157
Vincent ROCA
5.1. Introduction 157
5.2. The main protocol classes and the block approach of the IETF 158
5.3. The FEC building block 159
5.3.1. The “FEC encoding ID” and “FEC instance ID” 159
5.3.2. The FPI (FEC payload ID) 159
5.3.3. The “FEC object transmission information” (FEC OTI) 160
5.3.3.1. Block partitioning algorithm 161
5.3.3.2. The n algorithm 162
5.4. The NORM approach 163
5.4.1. Operating principles 163
5.4.1.1. General ideas 163
5.4.1.2. Main types of packets 163
5.4.1.3. Transmission window mechanism 164
5.4.2. The building blocks used 165
5.4.2.1. FEC block 165
5.4.3. Scope 166
5.5. ALC approach 166
5.5.1. Operating principles 166
5.5.1.1. General ideas 166
5.5.1.2. Close-up on the layered transmission principle 167
5.5.1.3. And if we used only one layer? 169
5.5.2. The building blocks used 169
5.5.2.1. The LCT block 170
5.5.3. Scope 171
5.6. The FLUTE file transfer application on ALC 172
5.6.1. Operating principles 173
5.6.2. An example of FDT instance 174
5.6.3. Scope 175
5.7. A few NORM and FLUTE/ALC available implementations 176
5.8. Conclusion 177
5.9. Bibliography 177
Chapter 6. Router-assist Based Reliable Multicast
181
Prométhée SPATHIS and Kim THAI
6.1. Introduction 181
6.2. Motivations and objectives 183
6.3. Protocol network architecture 186
6.3.1. Active error recovery (AER) and light-weight multicast services (LMS) 186
6.3.2. Pragmatic general multicast (PGM) 187
6.3.3. Active reliable multicast (ARM) and multicast actiffiable (MAF) 187
6.4. Classification 188
6.4.1. Organizing the control tree 188
6.4.2. Repair entities 190
6.4.3. Local approaches 193
6.4.3.1. Receiver-initiated approach 193
6.4.3.2. Sender-initiated approach 194
6.4.4. Buffer management 195
6.4.4.1. Receiver-initiated approach 195
6.4.4.2. Aggregated ACKs 196
6.4.5. Exposure of receivers 197
6.4.5.1. ARM and PGM 197
6.4.5.2. MAF 199
6.4.5.3. AER and LMS 199
6.4.6. Feedback implosion 202
6.4.6.1. Aggregation 202
6.4.6.2. Optimization of aggregation 203
6.4.7. Suppression 205
6.4.7.1. Anticipation 205
6.4.7.2. LMS and MAF 205
6.4.8. Loss recovery burden 206
6.4.8.1. ARM and PGM 206
6.4.8.2. AER and LMS 207
6.4.9. Standardization of router-assist based approaches 208
6.5. Placement mechanisms 209
6.5.1. Motivations and objectives of the placement of repair entities 210
6.5.2. Location models 211
6.5.3. Applications of the p-median problems to the placement of repair entities 212
6.6. Performance analysis 213
6.6.1. Large scale simulations and experiments 213
6.6.2. Analytical models 214
6.6.3. Precursory works 215
6.6.4. Comparative analytical studies of router support approaches 215
6.7. Conclusion 216
6.8. Bibliography 217
Chapter 7. Congestion Control in Multicast Communications
223
CongDuc PHAM and Moufida MAIMOUR-BOUYOUCEF
7.1. Introduction 223
7.2. Congestion control 225
7.2.1. Congestion control: a bit of theory 225
7.2.2. The congestion control in practice: example with TCP and the AIMD process 226
7.3. The congestion control in group communications 229
7.3.1. Information filtering and representativeness 229
7.3.2. Scalability 231
7.3.3. Heterogenity management 232
7.3.4. In brief 233
7.4. Single-rate approaches 233
7.5. Multi-rate approaches 235
7.6. Approaches with router assistance 239
7.7. Conclusion 242
7.8. Bibliography 242
7.9. Appendix 1: summary table of the approaches quoted in this chapter 245
7.10. Appendix 2: acronyms of the protocols presented 246
Chapter 8. Approaches to Multicast Traffic Engineering
247
Christian JACQUENET
8.1. Introduction 247
8.2. The use of DiffServ mechanisms 249
8.2.1. Reminder of the DiffServ architecture 249
8.2.2. Risks of over-use of resources within the DiffServ domain 250
8.2.3. Marking and signaling: establishment and maintenance of multicast distribution trees with differentiated qualities of service 250
8.3. Multicast traffic engineering and MPLS networks 257
8.3.1. The difficulty of activating multicast traffic processing capabilities in MPLS domains 257
8.3.2. Multicast traffic engineering using the point-to-point LSP MPLS resources 258
8.3.2.1. Establishment of multicast distribution trees at the edge of MPLS networks 258
8.3.2.2. Construction of distribution trees according to the service classes supported in the MPLS domain 261
8.3.3 Multicast traffic engineering using point-to-multipoint LSP MPLS tree structures 262
8.3.3.1. Establishment of point-to-multipoint LSP 262
8.3.3.2. Routing of multicast flows in traffic-engineered point-to-multipoint LSP trees 267
8.4. Conclusion 268
8.5. Bibliography 269
Chapter 9. Towards New Protocols for Small Multicast Groups:
Explicit Routing and Recursive Unicast 271
Ali BOUDANI and Abderrahim BENSLIMANE
9.1. Introduction 271
9.2. Explicit multicast routing protocols 273
9.2.1. Xcast 273
9.2.2. Xcast+ 275
9.2.3. Advantages and disadvantages of the Xcast technique 276
9.2.3.1. Advantages of the Xcast technique 277
9.2.3.2. Disadvantages of the Xcast technique 277
9.2.4. Generalization of the Xcast technique 279
9.2.4.1. Description of the GXcast protocol 279
9.2.4.2. Links between GXcast and the maximum transfer unit 281
9.2.5. Incremental deployment of an Xcast protocol in a network 281
9.2.5.1. Tunneling 281
9.2.5.2. Premature X2U 283
9.2.5.3. Semi-permeable tunneling (only with IPv6) 283
9.2.6. Different explicit multicast propositions 284
9.2.6.1. SGM 285
9.2.6.2. CLM 285
9.2.6.3. MDO6 286
9.2.6.4. Somecast 286
9.2.6.5. ERM 286
9.2.6.6. MSC 286
9.2.6.7. DCM 287
9.2.7. Summary and limitations of the various explicit multicast routing protocols 287
9.3. Recursive unicast 290
9.3.1. REUNITE 292
9.3.2. HBH 293
9.3.3. SEM 295
9.3.4. Comparison between HBH and SEM 297
9.3.5. SREM 300
9.4. Conclusion 304
9.5. Bibliography 304
Chapter 10. Secure Multicast Communications 307
Melek ÖNEN, Refik MOLVA and Alain PANNETRAT
10.1. Introduction to multicast security 307
10.1.1. Multicast applications and their characteristics 307
10.1.2. Security requirements 309
10.1.3. Limitations of the unicast solutions 310
10.2. Multicast authentication 311
10.2.1. Definition and requirements 311
10.2.2. Techniques using symmetric algorithms 312
10.2.2.1. Multicast message authentication codes (MMAC) 312
10.2.2.2. TESLA 313
10.2.3. Combination of asymmetric and symmetric algorithms 315
10.2.3.1. Hash trees 315
10.2.3.2. Hash chains 316
10.2.3.3. The use of erasure codes 318
10.2.4. Conclusion 320
10.3. Multicast confidentiality 320
10.3.1. Definition and requirements 320
10.3.2. Re-encryption trees 322
10.3.2.1. Iolus 322
10.3.2.2. Cipher sequences 324
10.3.3. LKH: Logical Key Hierarchy 326
10.3.4. Conclusion 327
10.4. Reliability of key distribution protocols 328
10.4.1. Requirements 328
10.4.2. Solutions based on replication techniques 329
10.4.3. Solutions based on the use of FEC 330
10.4.4. Conclusion 330
10.5. General conclusion 331
10.6. Bibliography 332
Chapter 11. Scalable Virtual Environments 335
Walid DABBOUS and Thierry TURLETTI
11.1. Introduction 335
11.2. Specificities of the LSVE 337
11.2.1. Scalability 337
11.2.2. Interactivity 338
11.2.3. Heterogenity 338
11.2.4. Consistency 339
11.2.5. Reliability 339
11.3. Multipoint limitations 340
11.3.1. Routing 340
11.3.2. Subscriptions and unsubscriptions latency 341
11.4. SCORE-ASM 342
11.4.1. Assessment of the additional cost related to the use of multipoint 343
11.4.2. The role of the agents 344
11.4.2.1. Association of multipoint cells-groups 346
11.4.2.2. Assignment of multipoint groups 346
11.4.3. Communications in SCORE-ASM 347
11.4.3.1. Communication between participants 348
11.4.3.2. Participants-agent communication 349
11.4.3.3. Communication between agents 350
11.4.4. Connection to the virtual world 351
11.4.5. Subscriptions update mechanism 351
11.4.6. Clipping algorithm 352
11.4.7. Conclusions regarding SCORE-ASM 353
11.5. SCORE-SSM 354
11.5.1. Problematic 355
11.5.2. Choice of design 356
11.5.3. SCORE-SSM structure 356
11.5.3.1. Filtering 357
11.5.3.2. Heterogenity and multimedia flow 358
11.5.3.3. Correspondence with the network multipoint 359
11.5.4. Prospects regarding SCORE-SSM 359
11.6. Final comment 360
11.7. Bibliography 361
List of Authors 363
Index 365