Professional Documents
Culture Documents
Lawrence Harte
Althos Publishing Fuquay-Varina, NC 27526 USA Telephone: 1-800-227-9681 Fax: 1-919-557-2261 email: info@althos.com web: www.Althos.com
Althos
All rights reserved. No part of this book may be reproduced or transmitted in any form or by any means, electronic or mechanical, including photocopying recording or by any information storage and retrieval system without written permission from the authors and publisher, except for the inclusion of brief quotations in a review. Copyright c 2008 By Althos Publishing First Printing Printed and Bound by Lightning Source, TN. Every effort has been made to make this manual as complete and as accurate as possible. However, there may be mistakes both typographical and in content. Therefore, this text should be used only as a general guide and not as the ultimate source of information. Furthermore, this manual contains information on telecommunications accurate only up to the printing date. The purpose of this manual to educate. The authors and Althos Publishing shall have neither liability nor responsibility to any person or entity with respect to any loss or damage caused, or alleged to be caused, directly or indirectly by the information contained in this book.
Mr. Harte is the president of Althos, an expert information provider which researches, trains, and publishes on technology and business industries. He has over 29 years of technology analysis, development, implementation, and business management experience. Mr. Harte has worked for leading companies including Ericsson/General Electric, Audiovox/Toshiba and Westinghouse and has consulted for hundreds of other companies. Mr. Harte continually researches, analyzes, and tests new communication technologies, applications, and services. He has authored over 100 books on telecommunications technologies and business systems covering topics such as mobile telephone systems, data communications, voice over data networks, broadband, prepaid services, billing systems, sales, and Internet marketing. Mr. Harte holds many degrees and certificates including an Executive MBA from Wake Forest University (1995) and a BSET from the University of the State of New York, (1990).
iii
iv
Table of Contents
DATA MULTICASTING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 MULTICAST APPLICATIONS . . . . . . . . . . . . . . . . . . . . . . . . . . 2 CONTENT DISTRIBUTION . . . SHARED APPLICATIONS . . . . INFORMATION DISTRIBUTION NETWORK CONFIGURATION . UNICASTING . . . BROADCASTING ANYCASTING . . MULTICASTING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2 2 3 3 3 5 5 6
MULTIPOINT DISTRIBUTION . . . . . . . . . . . . . . . . . . . . . . . . . 3
DATA ROUTING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 INTERNET PROTOCOL VERSION 4 (IPV4) . . . . . . . . . . . . . . . . . . . . . . 9 INTERNET PROTOCOL VERSION 6 (IPV6) . . . . . . . . . . . . . . . . . . . . . . 9 DISTANCE VECTOR ROUTING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 LINK STATE ROUTING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 MULTICAST OPERATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11 MULTICAST SESSION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 SPARSE MODE MULTICASTING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
DENSE MODE MULTICASTING GROUP MANAGEMENT . . . . . MULTICAST SCOPING . . . . . . DISTRIBUTION TREES . . . . . . TREE BUILDING . . . . . . . . . . CORE BASED TREES (CBT) . . JOIN STYLES . . . . . . . . . . . . MULTICAST ROUTING TABLE . MULTICAST FORWARDING . . . ETHERNET MULTICASTING . . BANDWIDTH RESERVATION . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
13 14 17 18 21 23 24 25 25 27 29
MULTICAST PROTOCOLS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 INTERNET GROUP MANAGEMENT PROTOCOL (IGMP) . . . . . . . . . . . . 29 PROTOCOL INDEPENDENT MULTICASTING (PIM) . . . . . . . . . . . . . . . 35 BORDER GATEWAY MULTICAST PROTOCOL (BGMP) . . . . . . . . . . . . . 37 MULTICAST LISTENER DISCOVER (MLD) . . . . . . . . . . . . . . . . . . . . . 37 BROADCAST MEDIA DISTRIBUTION PROTOCOL (BMDP) . . . . . . . . . . 37 DISTANCE VECTOR MULTICAST ROUTING PROTOCOL (DVMRP) . . . . 38 MULTICAST EXTENSION TO OPEN SHORTEST PATH FIRST (MOSPF) 38 SOURCE SPECIFIC MULTICAST (SSM) . . . . . . . . . . . . . . . . . . . . . . . 39 ANY SOURCE MULTICAST (ASM) . . . . . . . . . . . . . . . . . . . . . . . . . . 39 SOURCE FILTERING GROUP MEMBERSHIP PROTOCOL (SGMP) . . . . . 39 CISCO GROUP MANAGEMENT PROTOCOL (CGMP) . . . . . . . . . . . . . . 39 NEGATIVE-ACKNOWLEDGMENT (NACK) ORIENTED RELIABLE MULTICAST (NORM) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 MULTICAST TRANSPORT PROTOCOL (MTP) . . . . . . . . . . . . . . . . . . . 40 ROUTER-PORT GROUP MANAGEMENT PROTOCOL (RGMP) . . . . . . . . 40 PRAGMATIC GENERAL MULTICAST (PGM) . . . . . . . . . . . . . . . . . . . . 41 INTERDOMAIN MULTICAST PROTOCOLS . . . . . . . . . . . . . 41 MULTIPROTOCOL BORDER GATEWAY PROTOCOL (MBGP) . . . . . . . . . 41 MULTICAST SOURCE DISCOVERY PROTOCOL (MSDP) . . . . . . . . . . . . 41 ANYCAST RP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
vi
Table of Contents
MULTICAST LISTENER DISCOVERY (MLD) . . . . . . . . . . . . . . . . . . . . 42 TRUNCATED REVERSE PATH BROADCASTING (TRPB) . . . . . . . . . . . . 42 MULTICAST SESSION MANAGEMENT . . . . . . . . . . . . . . . . . 43 SESSION SESSION SESSION SESSION DESCRIPTION . . ANNOUNCEMENT INITIATION . . . . CONTROL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 43 43 43
MULTICAST SECURITY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 IDENTITY VERIFICATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 AUTHENTICATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 NON-REPUDIATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 ENCRYPTION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 RELIABLE MULTICAST TRANSPORT PROTOCOL (RMTP) . . . . . . . . . . 46 TREE-BASED MULTICAST TRANSPORT PROTOCOL (TMTP) . . . . . . . . 46 EXPRESS TRANSPORT PROTOCOL (XTP) . . . . . . . . . . . . . . . . . . . . . . 47 RELIABLE MULTICAST TRANSPORT (RMT) . . . . . . . . . . . 47 RELIABILITY MECHANISM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 CONGESTION CONTROL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 FEEDBACK CONTROL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 FLOW CONTROL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 SCALABILITY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 LATE JOIN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 MULTIPLE PASSES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 ASYNCHRONOUS LAYERED CODING (ALC) . . . . . . . . . . . . . . . . . . . . 51 SCALABLE RELIABLE MULTICAST (SRM) . . . . . . . . . . . . . . . . . . . . . 52 MULTICAST QUALITY OF SERVICE (QOS) . . . . . . . . . . . . . 52 BANDWIDTH ALLOCATION RETRANSMISSION . . . . . . PATH PRECEDENCE . . . . RESOURCE RESERVATION . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 52 53 53
vii
SERVICE CLASSES . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 CONGESTION CONTROL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 ADMISSION CONTROL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 GRIDCASTING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 PEERCASTING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 BIT TORRENT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 INTERNET2 NETWORK . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58 MULTICAST BACKBONE (MBONE) . . . . . . . . . . . . . . . . . . . . . . . . . . 58 DATA MULTICASTING CONSTRAINTS . . . . . . . . . . . . . . . . . 60 ROUTER PROCESSING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 ROUTER MEMORY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 MULTICAST SETUP TIME . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 PROTOCOL OVERHEAD . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 TRANSMISSION AND CONTROL DELAYS . . . . . . . . . . . . . . . . . . . . . . . 61 RELIABILITY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 MEDIA HETEROGENEITY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 GROUP MANAGEMENT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 QUALITY OF SERVICE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 LATE ENTRY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 SCALABILITY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 SECURITY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63 REFERENCES AND RESOURCES . . . . . . . . . . . . . . . . . . . . . 64
viii
Data Multicasting
Data multicasting is the process of transmitting media channels to a number of users through the use of multiple distributed channels. Multicasting typically involves the use of group addresses, which allow receivers to tune to the same stream of data as it is transmitted over the network. This is in contrast to a unicast transmission whereby multiple copies of the stream are individually addressed to an end user and are transmitted over the network. Multicasting provides much more efficient use of the network resources. However, the use of multicasting can complicate media control functions such as pause and fast-forward. Multicasting (one-to-many or many-to-many) can dramatically increase the efficiency of a network compared to unicasting (one-to-one) or broadcasting (one-to-all) transmission. Multicasting is critical for mass media streaming sources such as IP television and Internet radio. Without the use of multicasting, a 3 Mbps television streaming service would require data connections of 30 Gbps to provide service to 10,000 customers. Multicasting group membership defines how members find, join and disconnect from multicast sessions. Multicast transmission involves the use of special multicast addresses. It is possible to configure multicast systems to provide varying levels of quality of service for different multicast members.
There are many types of protocols (commands and processes) that can be used to setup and manage multicast sessions. Some of the key protocols used for multicasting include IGMP, PIM-DM, PIM-SM, MOSPF, CBT and BGMP. The processes and capabilities that these protocols have determine the amount of latency (setup and transmission delay), scalability (ability to serve many users) and protocol overhead (percentage of network resources that are needed for the protocol commands and operation). Multicast sessions may use security processes to ensure administrators can configure multicast trees and only authorized members may attach and decode multicast media. There are other emerging forms of multicast transmission that include gridcasting and peercasting where multicast recipients retransmit media to other users.
Multicast Applications
Multicast applications are programs or functions that involve communication with one to many or many to many applications. They range from best effort distribution to many receivers (such as television services through the Internet), to high-reliability real time distribution (such as critical video conferencing services).
Content Distribution
Content distribution is the process of transferring content to one or more persons, companies or points. Content distribution (such as television programs) may need to be distributed in near-real time without the ability to recover lost media.
Shared Applications
Shared applications are processes or functions that allow multiple devices or users to interact with them. Examples of shared applications include multi-
user word processor programs, whiteboards and multi-user gaming programs. Shared applications may require reliable near-real time distribution to allow participates to effectively interact with the applications.
Information Distribution
Multipoint information distribution applications are delivery services such as news, sports, stock or weather updates that transports data or media to groups of users. Information distribution tends to be less time sensitive.
Network Configuration
Network configuration is a set of network conditions and parameters that are used to allow one or more types of services and applications. Networks can be composed of many devices that require near simultaneous updates and multicasting can be used to update these devices close to the same time period. These types of services may require tracking or guaranteed delivery services.
Multipoint Distribution
Sending signals to multiple users requires the use of a combination of unicasting, broadcasting, anycasting or multicasting services that can perform multipoint distribution.
Unicasting
Unicasting is the process of transmitting media channels to a number of users through the use of a separate channel (unicast channel) for each user.
Each unicast channel can be separately setup, managed and disconnected under the control of the serving computer host. If unicasting is used to provide broadcast or multicast services, a separate communication session must be established and managed between each user (client) and the broadcast provider (media server). Figure 1.1 shows how multipoint distribution can be performed using unicast transmission. Each recipient must create a separate unicast connection directly to the media source. This means as each connection (viewer) is added, the media server and the routers closest to the source must be able to simultaneously transport all connections (4 connections in this example).
Broadcasting
Broadcasting is a process that sends voice, data or video signals simultaneously to group of people or companies in a specific geographic area or who can connect or receive signals from a broadcast network system (e.g. satellite or cable television system). Broadcasting is typically associated with radio or television radio transmission systems that send the same radio signal to many receivers in a geographic area. Broadcasting can also be applied to data distribution systems where all users that are connected to the network can receive and forward the same information signal. When a broadcast packet of data is received from an upstream source, it can be copied and distributed to all connections in a downstream direction. Broadcast transmission systems do not know or care about who is interested in receiving the packets so every packet is distributed to every receiver regardless if they desire to receive the data or not. Figure 1.2 shows how multipoint distribution can be performed using broadcast transmission. Each router in the data network must receive packets from the upstream connection, copy each packet and the packets in the downstream direction. Each router in the data network receives packets, copies the packets and forwards the packets until they reach all recipients in the system.
Anycasting
Anycasting is the process of setting up media streaming connections to the best or closest source. While anycast distribution may allow all users to find and connect to a media source, the tree structure for an anycast system may not be the most efficient distribution structure. Each router in the anycast data network must receive packets from any multicast stream, copy each packet and forward the packets in the downstream direction. Each recipient can find and connect to any path in the distribution tree.
Figure 1.3 shows how multipoint distribution can be performed using anycast transmission. The recipient can find and request a connection to a multicast stream. This example shows that the connection may not be the ideal or shortest path between the source and the recipient.
Multicasting
Multicasting is the process of transmitting media channels to a number of users through the use of distributed channels (copying media channels) as they progress through a network. Using multicast medium access control (MAC) or Internet protocol (IP) addresses, multiple end users may tune to the same stream of data as it is transmitted over the network.
Multicasting provides much more efficient use of the network resources because routers only receive, copy and forward packets towards their destination if there are recipients downstream of the router. Figure 1.4 shows how multipoint distribution can be performed using multicast transmission. Each router in the data network that is part of the multicast distribution tree must receive packets from the upstream connection and copy each packet in the downstream direction. Each router in the data network only receives and forwards packets if there are multicast recipients downstream in the system.
Data Routing
Packet data routing involves the transmission of packets through intelligent switches (called routers) that analyze the destination address of the packet and determine a path that will help the packet travel towards its destination. The common types of data packets that are routed through a network include Internet protocol version 4 (IPv4) and IPv6.
Figure 1.5 shows how a router is used to receive and forward data packets toward their destination. This diagram shows that a router receives packets from other routers, examines the destination address of the packet and uses its stored routing tables to determine which router is the best choice for forwarding the packet towards its destination.
There are two key methods (routing algorithms) that routers can use to determine where to send packets; distance vector routing and link state routing.
Multicast Operation
Multicast systems setup and distribute media through the establishment of distribution trees. These trees can be setup by allowing users to request connection to the media source (sparse mode) or by flooding the network to all
potential recipients and disconnecting the connections to users that are not interested in receiving the connection (dense mode).
Multicast Session
A multicast session is the connections and media transfers that occur between sources of information and group members that are attached to the multicast tree.
Flooding
Flooding is an action of forwarding a frame onto all ports of a switch except the port on which it arrived. Flooding may be used for frames with multicast addresses or unknown unicast destination addresses.
Pruning
Pruning is the process of disconnecting connections that are no longer active in a communication network. An example of pruning is the removal of users in a dense mode multicast network that have been added but did not subscribe to or are not using the multicast service. Multicast pruning is a process that removes connections in a multicast tree that are no longer needed or used.
Grafting
Grafting is the process of adding a leaf or group member to a multicast session while the multicast session is in progress (late entry or reconnection). Grafting allows late entry to a multicast session. Figure 1.7 shows how a data network may be setup to allow dense mode multicasting. This example shows that dense mode multicasting floods all routers in the network with multicast information. Devices that are not interested are removed (pruned) from the distribution tree.
Group Management
Group management is the process of defining groups of users or devices and adding and removing members (people and/or devices) to the groups. Group management protocols such as IGMP are used to add, manage and remove
members in a group. A multicast group manager is a device or process that is responsible for maintaining a list and coordinating members of a group. Group membership protocols include Internet group management protocol (IGMP) and multicast listener discovery (MLD) protocol.
Group Addressing
A group address (multicast address) is an identification code that is used to identify a set of stations or a number of devices as the destination for transmitted data. In essence, devices in a multicast group listen for (share) a single address that identifies a multicast session. Multicast addresses can be dynamically assigned for specific multicast sessions.
The Internet assigned numbering authority is a group that is responsible for the assignment and coordination of Internet addresses and key parameters such as protocol variables and domain names. The IANA controls the assignment of IP multicast addresses. Of the 32 bit Internet addresses version 4, 28 bits have been reserved as multicast addresses. These are known as class D IP addresses and the multicast IP addresses range from 224.0.0.0 to 239.255.255.255. Of the 128 bit Internet addresses version 6, 112 bits have been reserved for multicast addresses. Of the 48 bit Ethernet addresses, 23 bits have been reserved for multicast addresses. Figure 1.8 shows the different types of multicast group addressing. IP version 4 uses 28 bits of the 32 bit IPv4 address for multicast addresses. Ethernet multicast addressing uses 23 of the 48 bit Ethernet address for multicast addressing. IP version 6 uses 112 bits of the 132 bits for multicast addressing and some of the remaining bits are used for control purposes (flag and scope bits).
Multicast Scoping
Multicast scoping is the process of assigning the number of routing hop constraints or using addresses that limit where data packets can travel through a network. An example of administrative scoping is the use of multicast addresses, which cannot be transmitted outside a local domain.
Address Scoping
Address scoping is the assigning or defining of a set of addresses that are used for specific functions or restricted to specific areas (within a domain or subnetwork).
Distribution Trees
A multicast distribution tree is a path structure from a source to its destinations where the origination point (tree base) divides (branches) into its destination points (tree leaves). Distribution trees can have a single source or the branches on the tree may be used as other source feeds (shared tree).
Source Tree
A source tree is a multicast structure that has the source of the multicasting located at the base of the tree. A source tree is also known as a shortest path tree because each branch in the tree has the shortest path to other branches or nodes. A single source multicast source tree has a single starting point and all of the nodes in the tree are the optimal (shortest) paths that can be traveled from the source to the receiver. This diagram shows that the addressing format is (S, G) where S is the source IP address and G is the multicast IP address. Figure 1.9 shows how a single source multicast data session allows a single source to send the same information to multiple receivers without the need to repeat the transmission back through multiple switches and routers in the network. This example shows that an IP address source is combined with a single multicast address that allows each router in the multicast tree to forward the packets only to members of the group.
Shared Tree
A shared tree is a multicast structure that has the source of the multicasting located anywhere in the tree. The location of the source in a shared tree is called the rendezvous point (RP).
A multicast shared tree can have multiple sources that supply to a rendezvous point (RP) where is it distributed by a tree to the group receivers. This example shows that a shared tree structure may have redundant or less than optimal (longer) paths from a source to the receivers. This diagram shows that the addressing format is (*,G) where * is the source IP address (can be multiple sources) and G is the multicast IP address. Figure 1.10 shows how a shared source multicast data session allows multiple sources to send the information to multiple receivers through the use of a reference address (rendezvous point). In this example, the data from each source is sent to the rendezvous point (RP), which then distributes the information through a tree structure to the multicast group recipients. This diagram shows that there is the potential for some duplicate transmission in the shared source multicast session as the source and destination may be sent in different directions through the same routers.
Tree Building
Tree building is the process that is used to create a setup of multicast connections that link the source(s) to the multicast group members. Multicast trees can be dynamically created as users are added to a multicast group (data driven) or they may be pre-setup before group members begin to participate (control driven). Trees are setup to ensure loop free distribution. If multicast trees were not established, forwarding paths may be setup to allow data to loop from the source back to the source. Loop free is a network that contains connections that transfer information to locations different than its source location (the connection path does not return to the source).
Route Flapping
Route flapping is the continual changing of a network connection path that results from an intermittent congestion or loss of circuit connection that indicates to the current router connection path that there is a loss in connection or that a better connection path exists. This causes the packet routing path to continually change. These different paths can result in significant variance in transmission delay times (excessive jitter). Router flapping is overcome by newer IPV6 protocols and reservation protocols.
Join Styles
Join styles are the processes that are used to add members to a multicast group. The join process may be explicit or implicit.
Explicit Joins
Explicit joins require the group member to acknowledge or initiate communication with the multicast router or group manager to join a multicast session
Implicit Joins
Implicit joins allow the group member to receive and process multicast sessions without the need to acknowledge or communicate with the multicast router or group manager to participate in a multicast session.
Multicast Forwarding
Multicast forwarding is the process of receiving data packets, checking multicast routing tables to determine if the packet should be forwarded and coping and sending data packets to paths or destinations that are identified in the multicast routing tables.
Reverse path forwarding check is the process of comparing the source of a packet and the incoming port or path to determine if the packet has been sent from a router that is upstream (between the router and the source) or downstream (from a router that is after the router). RPF is used to only accept multicast packet requests from upstream routers to avoid the possibility of data communication loops. Forwarding loop is a sequence of packet transmission through routers that eventually brings it back to its originating points. A time to live (TTL) counter can be used in a data packet that discards the packet after a number of forwarding steps to disable the potential of forwarding loops. Figure 1.12 shows how a reverse path forwarding check is used to prevent the potential for data communication loops in multicast networks. This example shows a data communication network that has multiple media servers (M1 and M2) that are connected to the data network. Media server 1 has initiated a multicast session and routers in the network receive a mul-
ticast request packet. As the multicast request packet is received by each router, the multicast routing table is checked to determine if the packet was received from a source that is upstream (correct path) or downstream. If the packet is received on a port that is downstream, the packet is discarded.
Ethernet Multicasting
Ethernet multicasting is the process of assigning a MAC address from a range of Ethernet MAC addresses dedicated for multicast sessions that allow devices to receive and capture multicast data that is distributed through an Ethernet network. Ethernet devices that are part of a multicast group will detect and receive packets that contain the multicast MAC address. Each Ethernet device has a unique Ethernet hardware address.
Address Filters
Address filtering is the process of receiving packets and reviewing if these packets should be processed or allowed to transfer through a device.
Address Ambiguities
Address ambiguities are the ability of an identification label to refer to more than one device or service. Figure 1.13 shows how IP multicast addresses can be translated (mapped) into Ethernet multicast addresses. This example shows that of the 32 bit IP address, 28 bits are used for multicast addresses. For the 48 bit Ethernet multicast address, only 23 bits can be transferred from the IP address to the Ethernet address.
Bandwidth Reservation
Reserved bandwidth is the allocation of a portion of transmission or processing capability of a device or system for specific users, purposes or applications. Bandwidth allocation can be reserved and controlled in a device using protocols such as resource reservation protocol (RSVP).
Multicast Protocols
Multicast protocols are the languages, processes, and procedures that perform functions used to send control messages and coordinate the adding (setup), management or removal of multicast sessions. Multicast groups receive signals or information that is distributed content to multiple recipients or users. Examples of multicast protocol include IGMP and PIM.
Key IGMP messages include a membership query and membership report. A membership query is a request for a device or system to identify the users or devices that are part of their membership (e.g. multicast) group. Multicast routers periodically send (typically every 1 to 3 minutes) them to group members to determine if they are still interested in participating in the multicast session. A membership report is a list of users or devices that are part of their membership (e.g. multicast) group. Figure 1.14 shows how Internet group management protocol is used to setup and manage multicast communication sessions to a local multicast host.
This example shows that the IGMP manager sends a query requests to group members to determine if they are interested (or still interested) in participating in a multicast session. Group members send reports to identify that they are interested in participating in a multicast session. The multicast routers use the report messages to build their multicast router tables.
IGMPv1
Internet group management protocol version 1 is the initial version of IGMP released in 1989 based on RFC 1112. IGMP sends membership queries every 60 seconds. Figure 1.15 shows the format of an IGMP packet, version 1. IGMPv1 packets contain a type classification which identifies the packet as an IGMP report (join request) or an IGMP query (is the device still interested in receiving multicast packets).
IGMPv2
Internet group management protocol version 2 is the second version of IGMP released in 1997 based on RFC 2236. IGMPv2 added the capability of devices to send leave messages. Copyright , 2008, ALTHOS, Inc -31-
Figure 1.16 shows the format of an IGMP packet, version 2. IGMPv2 packets contain a type classification which identifies the packet as an IGMP report (join request), IGMP leave (disconnection request), or an IGMP query (is the device still interested in receiving multicast packets). IGMPv2 messages also identify the maximum response time for the IGMP request.
IGMPv3
Internet group management protocol version 3 is the third version of IGMP released in 2002 based on RFC 3376. IGMPv3 was a significant revision to the previous versions. Some of the key features of IGMPv3 include the ability of hosts to use list to identify devices they are willing to receive traffic from and the ability to block packets that come from sources identified as senders of unwanted traffic. IGMP enables source specific multicasting which allows recipients to directly connect to the source of a multicast session rather than receiving multicast signals through other distribution points (rendezvous points). IGMPv3 includes include and exclude modes of operation. Copyright , 2008, ALTHOS, Inc -32-
Include mode is a condition of a system or method of operation where items or commands that are sent are used to add (include) additional services or options. An example of include mode is the use of group management messages in a multicast system to identify additional multicast streams or services that are to be added to a receiver. Exclude mode is a condition of a system or method of operation where items or commands that are sent are used to remove or block additional services or options. An example of exclude mode is the use of group management messages in a multicast system to identify additional multicast streams or services that are not to be forwarded or received. Figure 1.17 shows the format of an IGMP packet, version 3. IGMPv3 packets contain additional fields that can be used to define multicast sessions to
include to or exclude from its connection. This diagram shows that IBMPv3 packets can contain a set of include and exclude messages in the IGMP data packet.
is upstream to the tree and the packet should be copied and forwarded to other ports on the router.
additions (joins) and removals (leaves) that occur by group members. CGMP is used to remove or reduce the need to do IGMP snooping to find changes in multicast group membership.
(NACK)
Oriented
Reliable
Negative-acknowledgment (NACK) oriented reliable multicast is a set of commands and processes (a protocol) that are used to provide reliable transport on unmanaged IP networks. NORM uses a selective negative acknowledgment process that can be combined with additional protocol processes to provide coordinated transmission between senders and receivers.
Anycast RP
An anycast RP is an application of multicast networks (MSDP) that can be used to configure multicast routers for fault tolerance and load sharing. Fault tolerance is the ability of a network or sub-system to continue to operate in the event of a hardware or software failure. Fault tolerant systems are typically able to identify the fault and replace the failed component or sub-system with another piece of equipment. Load sharing is a process by which signaling traffic is distributed over two or more signaling or message routes to equalize and efficiently handle traffic for security purposes.
Session Description
Session description protocol (SDP) is a text based protocol that is used to provide high-level definitions of connections and media streams. The SDP protocol is used with session initiated protocol (SIP). The SDP protocol is used in a variety of communication systems including 3G wireless and the PacketCable system. SDP is defined in RFC 2327.
Session Announcement
Session announcement protocol is a set of commands and processes that are used to distribute information about communication sessions. SAP is defined in RFC 2974.
Session Initiation
Session initiation protocol is a set of text commands and processes that work with applications (application layer) to setup, manage and terminate communication sessions. SIP is a simplified version of the ITU H.323 packet multimedia system. SIP is defined in RFC 2543.
Session Control
Session control protocol is a set of commands and processes that are used to negotiate and initialize protocols that are used for communication sessions. An example of a session control protocol is session conference control protocol (SCCP). Copyright , 2008, ALTHOS, Inc -43-
Multicast Security
Multicast security is the ability of a system that distributes data or media to multiple people to maintain its desired well being or operation without damage, theft or compromise of its resources from unwanted people or events.
Identity Verification
Identity verification is a process of exchanging information that allows the confirmation of the true identity of the user (or device). Identify verification may be used to allow a service provider to decide to enable or deny service to users that cannot be identified.
Hash Function
A hash function is a mathematical process that converts (transforms) a block of data or information into an output value. Hash functions are oneway processes that result in the output value (called a hash or digest) not being convertible back into its original data or information form. A message digest is a result of a calculation of a message (a hash) using a known key and algorithm.
Authentication
Authentication is a process of exchanging information between a communications device (typically a user device such as a mobile phone or computing device) and a communications network that allows the carrier or network operator to confirm the true identity of the user (or device). This validation of the authenticity of the user or device allows a service provider to deny service to users that cannot be identified. Thus, authentication inhibits fraud-
ulent use of a communication device that does not contain the proper identification information. Security association is the setup of a relationship between two network elements that ensures that traffic passing through the interface is authentic, unchanged and/or cryptographically secure (typically, through encryption.)
Non-Repudiation
Non-repudiation is the use of information or evidence that confirms that a person or company has received or used the products or services that they have ordered.
Encryption
Encryption is a process of a protecting voice or data information from being obtained by unauthorized users. Encryption involves the use of a data processing algorithm (formula program) that uses one or more secret keys that both the sender and receiver of the information use to encrypt and decrypt the information. Without the encryption algorithm and key(s), unauthorized listeners cannot decode the message. When the encryption and decryption keys are the same, the encryption process is known as symmetrical encryption. When different encryption and decryption keys are used (such as in a public encryption system), the process is known as asymmetrical encryption.
Group Key
A group key is a value that can be used by multiple devices or users to encrypt and decrypt messages.
Trusted Authority
A trusted authority is an information source or company that can issue or validate certificates. A trusted authority is sometimes called a certificate authority.
Feedback Implosion
Feedback implosion (a multicast storm) is the overwhelming of a data network that occurs when multiple receivers provide feedback messages (such as acknowledgement messages) at approximately the same time. Feedback implosions may be avoided or reduced in severity through the use of feedback controls.
domain manager that is responsible for coordinating retransmissions that are used for error recovery.
Reliability Mechanism
A reliability mechanism is the processes that are used to ensure the successful transmission and reception of data or media that is transferred through a network or device. Reliability is ensured through the use of redundancy and redundancy options in multicast systems include spatial redundancy and temporal redundancy.
Spatial redundancy is the process of providing related or repeated information within the transmission space. Forward error correction (FEC) is a form of spatial redundancy where some of the transmission resources are used to transfer redundant (error correction) information. Temporal redundancy is the repetition of information over a period of time. Repeated transmissions or retransmission requests and acknowledgements are forms of temporal redundancy.
Error Detection
Error detection is the process of detecting for bits that are received in error during data transmission. Error detection is made possible by sending additional bits that have a relationship to the original data that can be verified.
Error Recovery
Error recovery is the ability of a receiver or decoder to recover from catastrophic bit errors or lost bits within the bitstream. For example, a decoder may need to terminate decoding the previous bitstream segment and completely resynchronize with a new synchronization point with the bitstream. The speed of error recovery may depend on both bitstream characteristics and decoder implementation. Error recovery processes in multicast systems can be centralized, distributed, or redirected to alternative packet repair nodes. Retransmission messages can be unicast or sent as multicast messages, which allows all multicast receivers to have access to the retransmitted information.
Error Protection
Error protection is the process of adding information to a data signal (typically by sending additional data bits) that permits a receiver of information to detect and/or correct errors that may have occurred during data transmission.
Error protection requires the use of additional transmission bandwidth for inclusion of error protection bits. Some transmitted bits are more important than others. Multicast systems can selectively add error protection to media streams using asynchronous layered coding (ALC).
Congestion Control
Congestion control is a process or set of processes that can be used to control the flow or processing of data in a system or network when the resources used in the system may exceed its capacity to deliver that service. Congestion feedback is the providing of information that describes the over utilization or potential of over utilization of a network distribution system. Congestion feedback may be used to adjust transmitted rate control or to reconfigure receivers to reduce the congestion (over utilization) of the network
Feedback Control
Feedback controls are actions or processes taken by a device, system or network to regulate or adjust the timing and amount of feedback that devices or services create.
Crying Baby
A crying baby is a device or user that continuously requires attention or maintenance. If a crying baby is determined, it can be controlled or reconfigured to reduce the amount of messages or feedback data that it is sending.
Flow Control
Flow control is a combination of hardware or software mechanisms or protocols that can manage data transmissions when the receiving device cannot accept data at the same rate the sender is transmitting. Flow control is used when one of the devices communicating cannot receive the information at the same rate as it is being sent; this usually occurs when extensive processing is required by the receiver and the receive buffers are running low.
Ordering Guarantee
Ordering guarantee is the commitment or capability of a system to provide the delivery of packets in the same order that they were transferred into the network. Ordering guarantees may be assured by using higher level protocols that can sequentially identify and reorganize received packets into their original transmitted order.
Scalability
Scalability is the ability of a system to increase the number of users or amount of services it can provide without significant changes to the hardware or technology used. Multicast scalability is the ability to provide multicast distribution and control capabilities when the number of users and network elements is increased.
Late Join
Late join is the ability of a communication device to be added to a communication session after the communication session has been established. Late joining is also called grafting.
Multiple Passes
Multiple passes is the process of sending data multiple times to the same device. This allows the receiving device to capture and combine data from one pass with data from another pass to construct a complete or more complete packet or block of data.
Bandwidth Allocation
Bandwidth allocation is the frequency width of a radio channel in Hertz (high and low frequency limits) that can be modulated (changed) to transfer information (voice or data signals). The amount and type of information being sent determines the amount of bandwidth used and the method of modulation used to impose the information on the radio signal.
Retransmission
Retransmission is a method of network error control in which hosts receiving messages acknowledge the receipt of correct messages and either do not Copyright , 2008, ALTHOS, Inc -52-
acknowledge or acknowledge in the negative the receipt of incorrect messages. The lack of acknowledgment, or receipt of negative acknowledgment, is an indication to the sending host that it should transmit the failed message again.
Path Precedence
Path precedence is categorization and prioritization of connection paths through a network or switching system. IP Precedence utilizes the 3 precedence bits in the Type-of-Service (TOS) field in the IP header to specify class of service assignment for each IP packet. IP Precedence provides considerable flexibility for precedence assignment including customer assignment (e.g. by application) and network assignment based on IP or MAC address, physical port, or application. IP Precedence enables the network to act either in passive mode (accepting precedence assigned by the customer) or in active mode utilizing defined policies to either set or override the precedence assignment. IP Precedence can be mapped into adjacent technologies (e.g. Frame Relay or ATM) to deliver end-to-end QoS policies in a heterogeneous network environment. Thus, IP Precedence enables service classes to be established with no changes to existing applications and with no complicated network signaling requirements.
Resource Reservation
Resource reservation protocol is a set of commands and processes that can be used to control the quality of service (QoS) for packet flow for specific communication sessions in a packet data network. RSVP is primarily used in real-time communication sessions such as video or voice services over packet data networks.
Multicast resource reservation involves the requesting of resources, receiving acknowledgement that the reservation has been accepted, modified or rejected and releasing resources when users disconnect or the session has ended. For multicast systems, resources are requested and assigned dynamically as trees are grown, leaves are added (new group recipients), and leaves are removed (users disconnect from the multicast session).
Service Classes
Service classes are sets of communication parameters that are used or assigned to provide transmission flows that can provide services that meet specific quality of service (QoS) requirements. Class of service is the communication parameters that are assigned or associated with a particular application or communication session. The class of service usually requires a specific quality of service (QoS) level. Class based queuing is a priority scheduling method that gives preferential treatment traffic communication sessions that have different priority levels for each class of communication session (such as real-time audio traffic and near-real time video). CBQ allocates variable bandwidth for each class of traffic so all applications continue to operate under heavy traffic conditions.
Guaranteed Service
Guaranteed service provides a specific bandwidth with a set maximum endto-end transmission delay time. Guaranteed service may involve the allocation of dedicated resources (such as packet processing capacity in routers) that ensures that services are provided within agreed performance limits (such as maximum delay and error rates).
Controlled Service
A controlled service is the providing of information transfer, processes or authorizations that enable users, devices or systems to perform actions that they desire where the processes or operations are monitored and adjusted to meet desired criteria such as the maximum delay or the peak amount of data transmission.
Best Effort
Best effort is a level of service in a communications system that doesnt have a guaranteed level of quality of service (QoS).
Congestion Control
Congestion control is a process or set of processes that can be used to control the flow or processing of data in a system or network. Congestion control may be coordinated through the use of a packet scheduler. A packet scheduler is a device or function that can identify, prioritize, and coordinate a time that packets should be transmitted.
Admission Control
Admission control is the process of reviewing the service authorization level associated with users and determining how much network resources will be allocated if the network resources are available. Admission control is used to adjust, limit or assign the use of limited network resources to specific types or individual users. Access control may allow for the assignment of higher access level priority for specific types of users such as public safety users.
Gridcasting
Grid casting is the process of transmitting media channels to a number of users through the use of nodes that receive and redistribute (copying media channels) as they progress through a network.
Peercasting
Peercasting is the process of transmitting media channels to a number of users were media is received and redistributed by peers as it progresses through the network. Peercasting systems define how users can discover, connect and transmit from and to other peers within the network. Figure 1.19 shows how a peercasting system can operate. This example shows that a peercasting system retransmits signals from one receiver to
other receivers. In this peercasting system, end user devices receive, readdress and retransmit received packets towards a new destination device.
Bit Torrent
A bit torrent is a rapid file transfer that occurs when multiple providers of information can combine their digital data (bits) transfer into a single stream (a torrent) of file information to the receiving computer. Figure 1.20 shows how to transfer files using the torrent process. This example shows that 4 computers contain a large information file (such as a movie DVD). Each of the computers is connected to the Internet via high-speed connections that have high-speed download capability and medium-speed
upload capability. To speed up the transfer speed for the file transfer, the receiver of information can request sections of the media file to be downloaded. Because the receiver of the information has a high-speed download connection, the limited uplink data rates of the section suppliers are combined. This allows the receiver of the information to transfer the entire file much faster.
Internet2 Network
Internet2 is a second generation of the Internet that uses a high-speed backbone communications network. The Internet system is a result of the next generation Internet (NGI) initiative that is sponsored by the United States government. Internet2 is seen as the way to deliver multimedia content (e.g. video on demand) through the Internet.
routers and the multicast packets are embedded in the unicast packet payload. When the unicast packet reaches its MBone multicast router destination, it is extracted from the payload and again processed as a multicast packet. Figure 1.21 shows that the MBone is a multicast enabled network that can use multicasting to link multiple portions of the Internet with each other. The MBone system can be connected to routers in the Internet. The MBone contains multicast routers, which route the same signal to multiple portions of the Internet. The MBone is then connected back to the Internet where local routers can complete the multicast distribution.
Router Processing
Router processing is the instructions that a packet routing device performs to receive packets, lookup address routing choices in a routing table and to transmit the packet towards its destination. Router processing can be influenced by the type of routing protocols that are used (link state or distance vector) and the types of routing (unicast or multicast). Router processing can be used during calculation of forwarding addresses and updating of routing tables.
Router Memory
Router memory is the storage area in a routing device that holds information such as unicast and multicast routing tables. Some multicast protocols require routers to maintain extensive lists of tree structures and member state information, which uses router memory.
between the start of a multicast join process (such as initiating a channel change) and when the group participant receives the media (when the new channel begins to display).
Protocol Overhead
Protocol overhead is the combined amount of data that messages consume compared to the user data or media that is transferred by a communication connection or service. Some multicast protocols use a higher percentage of bandwidth for signaling commands.
Reliability
Reliability is the ability of a network or equipment to perform within its normal operating parameters to provide a specific quality level of service. Reliability can be measured as a minimum performance rating over a specified interval of time. Multicast reliability can be provided by using a variety of forward error coding and retransmission options.
Media Heterogeneity
Media heterogeneity is the ability of a communication system to process or transmit media of different types such as digital video and digital audio. Distributing different types of media (audio and video) over the same mulCopyright , 2008, ALTHOS, Inc -61-
ticast tree may result in high quality of one type of media (such as audio) while another type of media (such as video) may have poor quality levels.
Group Management
Group management is the process of defining groups of users or devices and adding and removing members (people and/or devices) to the groups. Group management may need to perform over several domain groups, control membership (access control), and provide tracking (usage) information about multicast sessions.
Quality of Service
Quality of service (QoS) is one or more measurement of desired performance and priorities of a communications system. QoS measures may include service availability, maximum bit error rate (BER), minimum committed bit rate (CBR) and other measurements that are used to ensure quality communications service.
Late Entry
Late entry is the ability of a communication device to be added to a communication session after the communication session has been established. Late entry is also known as grafting.
Scalability
Scalability is the ability of a system to increase the number of users or amount of services it can provide without significant changes to the hardware or technology used.
Security
Security is the ability of a person, system or service to maintain its desired well being or operation without damage, theft or compromise of its resources from unwanted people or events. Figure 1.22 shows some of the capabilities and options that can be considered for multicast systems. The tradeoffs that may be considered when set-
ting up multicast systems and multicast protocol selection include router processing, router memory, channel setup time, command control times, multimedia (audio and video) transmission, media reliability, and other factors.
2. Internet Protocol (IP) Multicast, Cisco, http://www.cisco.com/warp/public/cc/pd/iosw/prodlit/ipimt_ov.pdf 3. IP Multicasting, The Complete Guide to Interactive Corporate Networks, Dave Kosiur, ISBN: 0-471-24359-0, John Wiley, 1998. 4. Host Extensions for IP Multicasting, Internet Engineering Task Force (IETF), http://www.ietf.org/rfc/rfc1112.txt. 5. Protocol Independent Multicast-Sparse Mode (PIM-SM): Protocol Specification, Internet Engineering Task Force (IETF), http://www.ietf.org/rfc/rfc2362.txt. 6. Reliable Multicast Transport Building Blocks for One-to-Many BulkData Transfer, Internet Engineering Task Force (IETF), http://www.ietf.org/rfc/rfc3048.txt.
Appendix 1 - Acronyms
ABR-Area Border Router Ack Implosion-Acknowledgement Implosion AFDP-Adaptive File Distribution Protocol ALF-Application Layer Framing ARP-Address Resolution Protocol AS-Autonomous System ASBR-Autonomous System Boundary Router ASM-Any Source Multicast BCMCS-Broadcast and Multicast Services BE-Best Effort Service BGMP-Border Gateway Multicast Protocol Bidir-PIM-Bidirectional Protocol Independent Multicasting BMC-Broadcast/Multicast Control Protocol BMDP-Broadcast Media Distribution Protocol BMSC-Broadcast Multicast Service Center BR-Border Router CAM-Content Addressable Memory CBQ-Class Based Queuing CBT-Core Based Trees CGMP-Cisco Group Management Protocol CID-Conference Identifier COS-Class Of Service DCP-Dynamic Configuration Protocol
DVB-Data-Digital Video Broadcasting Data DVMRP-Distance Vector Multicast Routing Protocol EBCMCS-Enhanced Broadcast and Multicast Services eBGP-External Border Gateway Protocol EGP-Exterior Gateway Protocol EIGRP-Enhanced Interior Gateway Routing Protocol ERP-Exterior Routing Protocol FC-Feedback Control GM-Group Management GMP-Group Membership Protocol Gridcasting-Grid Casting HDVMRP-Hierarchical Distance Vector Multicast Routing Protocol HPIM-Hierarchical Protocol Independent Multicast iBGP-Internal Border Gateway Protocol ICMP-Internet Control Message Protocol IGMP-Internet Group Management Protocol IGMP Snooping-Internet Group Management Protocol Snooping IGMPv1-Internet Group Management Protocol Version 1 IGMPv2-Internet Group Management Protocol Version 2 IGMPv3-Internet Group Management Protocol Version 3
65
IGP-Interior Gateway Protocol IGRP-Interior Gateway Routing Protocol InPort-Input Port Intserv-Integrated Services Intserv)1-Integrated Services IP Address-Internet Protocol Address IP Subnet-Internet Protocol Subnetwork IPv6-Internet Protocol Version 6 IPVBI-IP Multicast over VBI IPX-Internetwork Packet Exchange IR Routing-Infrared Routing Keepalive-Keep Alive Message LBRM-Log Based Receiver Reliable Multicast LDP-Label Distribution Protocol LGM-Leave Group Message LGMP-Local Group Multicast Protocol LSA-Link State Advertisement LSP-Label Switched Path LSR-Label Switched Router M-Merging Point M2M-Many to Many MAAP-Multicast Address Allocation Protocol MARS-Multicast Address Resolution Server MBGP-Multicast Border Gateway Protocol M-BGP-Multicast Border Gateway Protocol MBMS-Multimedia Broadcast Multicast Services MBONE-Multicast Backbone MBR-Multicast Border Router MCP-Multicast Control Protocol MCU-Multipoint Control Unit MFC-Multicast Forwarding Cache MFTP-Multicast File Transfer Protocol MGM-Multicast Group Manager
M-IGP-Multicast Interior Gateway Protocol MLD-Multicast Listener Discovery MOSPF-Multicast Extensions to Open Shortest Path First MPE-Multiprotocol Encapsulation MPLS-Multi-Protocol Label Switching M-RIB-Multicast Routing Information Base MRouter-Multicast Router MSDP-Multicast Source Discovery Protocol MTFTP-Multicast Trivial File Transfer Protocol MTP-Multicast Transport Protocol MTP-2-Multicast Transport Protocol Version 2 Multicast CIDs-Multicast Polling Connection Identifiers NACK-Negative-Acknowledgment NACK Implosion-Negative Acknowledgement Implosion NTP-Network Time Protocol Outport-Output Port PGM-Pragmatic General Multicast Piggyback-Piggy-Back PIM-Protocol Independent Multicast PIM-DM-Protocol Independent Mulitcast-Dense Mode PIM-SM-Protocol Independent-Sparse Mode PKE-Public Key Encryption PNAP-Private Network Access Point PR-Bit-Poison Reverse Bit QoS-Quality Of Service QoS Awareness-Quality of Service Awareness RAMP-Reliable Adaptive Multicast Protocol RARP-Reverse Address Resolution Protocol RBP-Reliable Broadcast Protocol
66
Index
RGMP-Router-Port Group Management Protocol RIP-Routing Information Protocol RMF-Reliable Multicast Framework RMFP-Reliable Multicast Framing Protocol RMP-Reliable Multicast Protocol RMT-Reliable Multicast Transport RMTP-Reliable Multicast Transport Protocol RP-Rendezvous Point RPB-Reverse Path Broadcasting RPF-Reverse Path Forwarding RPM-Reverse Path Multicasting RSVP-Resource Reservation Protocol RTCP-Real-Time Transport Control Protocol RTP-Reliable Transport Protocol RTSP-Real Time Streaming Protocol S,G-Source and Group Pair SA-Security Association SA-Source Active SAP-Session Announcement Protocol SCCP-Session Conference Control Protocol SCE-Single Connector Emulation SCP-Session Control Protocol SDES-Source Description Packet SDP-Session Description Protocol SGMP-Source Filtering Group Membership Protocol SIP-Session Initiation Protocol SLP-Service Location Protocol SNA-System Network Architecture SPT-Shortest Path Tree SPT Bit-Shortest Path Tree Bit SRM-Scalable Reliable Multicast SSM-Single Source Multicast SSM-Single Source Multicasting SSM-Source Specific Multicast ST-II-Stream Protocol Version II Subnet-Sub Network
TMTP-Tree-Based Multicast Transport Protocol TP0-Transport Protocol Class 0 TP1-Transport Protocol Class 1 TP2-Transport Protocol Class 2 TP3-Transport Protocol Class 3 TP4-Transport Protocol Class 4 TRBP-Truncated Reverse Path Broadcasting TRPB-Truncated Reverse Path Broadcasting TTL-Time To Live TTL Scoping-Time to Live Scoping U-RIB-Unicast Routing Information Base VC-Virtual Circuit XTP-Xpress Transport Protocol
67
68
Index
Acknowledgement Implosion (Ack Implosion), 50 Address Ambiguities, 28 Address Filtering, 27 Address Filters, 27 Address Scoping, 17 Administrative Scoping, 17 Admission Control, 55 Any Source Multicast (ASM), 39 Anycast RP, 42 Anycasting, 3, 5, 7 Authentication, 44-45 Autonomous System (AS), 1-4, 6, 9, 11, 14-23, 27, 29, 31-32, 34-35, 37, 44-50, 52-62 Bandwidth Allocation, 29, 52 Best Effort Service (BE), 2-7, 9, 11-12, 14-15, 17-21, 23-29, 33, 35-36, 38-42, 44-53, 55, 58-63 Bidirectional Protocol Independent Multicasting (Bidir-PIM), 36 Border Gateway Multicast Protocol (BGMP), 2, 37 Broadcast, 4-5, 37, 42 Broadcast Media Distribution Protocol (BMDP), 37 Broadcasting, 1, 3, 5-6, 42 Cisco Group Management Protocol (CGMP), 39-40 Class Based Queuing (CBQ), 54 Class Of Service (COS), 53-54 Controlled Service, 55 Core Based Trees (CBT), 2, 22-23 Crying Baby, 50 Data Multicasting, 1-64 Dense Mode Multicasting, 13-15 Distance Vector, 10-11, 22, 38, 60 Distance Vector Multicast Routing Protocol (DVMRP), 38 Distance Vector Routing Algorithms, 11, 38 Distribution Tree, 5, 7, 12, 14, 18-19, 34 Encryption, 45 Ethernet Multicasting, 27 Exclude Mode, 33 Fault Tolerance, 42 Feedback Control (FC), 49 Feedback Implosion, 46 Flat Address Space, 27 Flooding, 11, 14 Flow Control, 50, 61 Forwarding Loop, 26 Grid Casting (Gridcasting), 2, 56 Group Address, 15, 21 Group Management (GM), 14-15, 29-34, 39-40, 62 Group Management Protocol, 15, 29-32, 34, 39-40 Group Membership Protocol (GMP), 39 Groupware, 39 Groupware Applications, 39 Guaranteed Service, 54 Hop Limit, 17 Identity Verification, 44 Include Mode, 33 Interdomain Multicast Protocols, 41 Internet Group Management Protocol (IGMP), 2, 14-15, 29-35, 38, 40, 42 Internet Group Management Protocol Snooping (IGMP Snooping), 34-35, 40 Internet Group Management Protocol Version 1 (IGMPv1), 31 Internet Group Management Protocol Version 2 (IGMPv2), 31-32 Internet Group Management Protocol Version 3 (IGMPv3), 32-33 Internet Protocol Address (IP Address), 9, 17-18, 20, 28
Internet Protocol Version 6 (IPv6), 8-9, 22, 42 Internet2 Network, 58 IP Multicast, 16, 28, 64 IP Multicasting, 64 Join Latency, 60 Join Message, 23 Late Join, 51 Link State Database, 42 Load Sharing, 42 Many to Many (M2M), 2, 36 Mapping, 27-28 Membership Query, 30 Membership Report, 30 Multicast, 1-2, 4-7, 11-44, 46-49, 51-52, 54, 58-62, 64 Multicast Address, 15-16, 18, 21, 27-28, 39 Multicast Address Mapping, 27 Multicast Address Notation, 21 Multicast Backbone (MBONE), 58-59 Multicast Border Gateway Protocol (MBGP), 41 Multicast Border Gateway Protocol (MBGP), 41 Multicast Distribution Tree, 7, 18-19, 34 Multicast Extensions to Open Shortest Path First (MOSPF), 2, 38 Multicast Forwarding, 25, 38 Multicast Forwarding Cache (MFC), 38 Multicast Group, 12-13, 15-16, 20-21, 2324, 27, 29-30, 34, 37, 39-40, 42, 52 Multicast Group Manager (MGM), 15 Multicast Listener Discovery (MLD), 15, 37, 42 Multicast Protocol, 29, 37-38, 64 Multicast Protocols, 23, 29, 35, 41, 60-61 Multicast Pruning, 14 Multicast Router (MRouter), 24-25, 31, 59-60 Multicast Routing, 25, 27, 34, 38, 58, 60
Multicast Routing Table, 25, 27, 34 Multicast Security, 44 Multicast Session, 12, 14-15, 17, 20, 22, 24-25, 30-32, 43, 52, 54 Multicast Source Discovery Protocol (MSDP), 41-42 Multicast Storm, 46 Multicast Stream, 5-6, 60 Multicast Transport Protocol (MTP), 40, 46 Multicasting, 1-64 Multiple Passes, 51 Negative-Acknowledgment (NACK) Oriented Reliable Multicast (NORM), 40 Network Protocols, 40 Next Hop Routing, 9 Non-Repudiation, 45 Packet Scheduler, 55 Path Precedence, 52-53 Peercasting, 2, 56-57 Port, 14, 26-27, 53 Pragmatic General Multicast (PGM), 41 Protocol Independent Mulitcast-Dense Mode (PIM-DM), 2, 36 Protocol Independent Multicast (PIM), 29, 35-36 Protocol Independent-Sparse Mode (PIMSM), 2, 36, 64 Protocol Overhead, 2, 61 Public Key Encryption (PKE), 45 Quality Of Service (QoS), 1, 9, 29, 52-55, 62 Rate Control, 49 Redundant, 20, 48 Reliable Multicast Transport (RMT), 4647, 64 Reliable Multicast Transport Protocol (RMTP), 46 Rendezvous Point (RP), 19-20, 42 Resource Reservation Protocol (RSVP), 29, 53
Index
Retransmission, 47-48, 52, 61 Reverse Path Broadcasting (RPB), 42 Reverse Path Forwarding (RPF), 25-26 Root, 23 Root Node, 23 Route Flapping, 22 Router-Port Group Management Protocol (RGMP), 40 Routing Algorithms, 10-11, 38 Routing Loop, 11 Routing Protocol, 9, 38 Routing Tables, 10-11, 25, 34-35, 60 Scalable Reliable Multicast (SRM), 52 Security, 2, 42, 44-45, 63 Security Association (SA), 45 Service, 1, 9, 14, 28-29, 44, 49, 52-55, 60-63 Session Announcement Protocol (SAP), 43 Session Conference Control Protocol (SCCP), 43 Session Control Protocol (SCP), 43 Session Description Protocol (SDP), 43 Session Initiation Protocol (SIP), 43 Session Management, 43 Shared Tree, 18-20 Shortest Path Tree (SPT), 18, 38 Single Source Multicast (SSM), 18, 37, 39 Single Source Multicasting (SSM), 37, 39 Source and Group Pair (S,G), 18, 21 Source Discovery, 41 Source Filtering Group Membership Protocol (SGMP), 39 Source Specific Multicast (SSM), 37, 39 Source Tree, 18-19 Sparse Mode Multicasting, 12-13, 23 Spatial Redundancy, 47-48 State Information, 23, 60 Time To Live (TTL), 11, 17, 26 Tree-Based Multicast Transport Protocol (TMTP), 46
Truncated Reverse Path Broadcasting (TRPB), 42 Trusted Authority, 46 Unicast, 1, 3-4, 14, 36, 48, 58-60 Unicasting, 1, 3-4 Volatile Tree Structure, 22 Xpress Transport Protocol (XTP), 47