multicasting-concepts,algoritms and protocols

17
Multicasting Concepts, Algorithms, and Protocols Husnain Ahmad Muhammad Yasir

Upload: husnain-ahmad

Post on 04-Apr-2015

207 views

Category:

Documents


5 download

DESCRIPTION

A complete paper on Multicasting Technique on the internet infrastructure.

TRANSCRIPT

Page 1: MultiCasting-concepts,algoritms and protocols

Multicasting Concepts, Algorithms, and Protocols

Husnain Ahmad

Muhammad Yasir

Page 2: MultiCasting-concepts,algoritms and protocols

1

Multicasting

Concepts, Algorithms, and Protocols

This is a report on Multicasting technique. In the first section we describe the general concepts

surrounding the theory of Multicasting. Then it describes the multicast protocols such as DVMRP,

MOSPF, and PIM as well as the algorithms used in these protocols such as RPM and CBT. IGMP is

also surveyed in this report. The Multicast Backbone (MBone), a real-world multicast network, is

also explored. After that an innovative and evolving approach of putting the whole burden of

multicasting toil on the application layer instead of network layer is also added to this report. Finally,

a complete list of references is provided.

MULTICASTING

Page 3: MultiCasting-concepts,algoritms and protocols

2

Table of Contents Page No.

Introduction 3

Multicast Group Concept 3

Multicast Addressing 3

Addressing Technique 3

Ethernet MAC Address Mapping 4

Internet Group Management Protocol (IGMP) 5

IGMP Packet Format 5

IGMP Versions 6

Multicast Routing Algorithms 7

Flooding 7

Spanning Trees 7

Reverse Path Broadcasting (RPB) 8

Truncated Reverse Path Broadcasting (TRPB) 9

Reverse Path Multicasting (RPM) 9

Core-Based Trees (CBT) 10

Multicast Routing Protocols 11

Distance Vector Multicast Routing Protocol (DVMRP) 11

Multicast Extensions to OSPF (MOSPF) 11

o Intra-Area Routing 11

o Inter-Area Routing 12

o Inter-AS Routing 12

Protocol Independent Multicast (PIM) 12

o PIM-Dense Mode 12

o PIM-Sparse Mode 13

MBone 14

Future Research in Multicasting 15

Page 4: MultiCasting-concepts,algoritms and protocols

3

Introduction

In computer networking, multicast is the delivery of a message or information to a group of destination

computers simultaneously in a single transmission from the source creating copies automatically in other

network elements, such as routers, only when the topology of the network requires it.

Multicasting can also be understood as to transmit a single message to a select group of recipients. A

simple example of multicasting is sending an e-mail message to a mailing list.

Multicast was originally a product of IP networks. Some applications such as Internet television, Internet

gaming, and IP teleconferencing applications, require data to be delivered from one or multiple senders to

multiple receivers. A service whereby data is delivered from one or multiple sender nodes to multiple

designated receiver nodes is called multipoint communication or multicast, and applications that involve

a multicast delivery service are called multicast applications. On the Internet there are two types of

addresses: unicast and multicast. A host or node on the Internet normally has only one unicast address

but can be a member of many multicast groups.

Another place where multicasting can be very helpful is in resource discovery. There are many

applications in which a host needs to find out whether a certain type of service is available or not. Internet

protocols such as Bootstrap Protocol (BOOTP) and Open Shortest path First (OSPF) protocol are among

these applications. Using multicast messages and sending the query to those hosts which are potentially

capable of providing this service would be of great help. Although some applications use multicast

messages to transmit a packet to a group of hosts residing on the same network, there is no reason to

impose this limitation. Discovering the domain-name server is where multicast messages need to be

forwarded on remote networks if there is less than one server per network. The scope of multicast packets

can be limited by using the time-to-live (TTL) field of these packets.

Multicast Group Concept

Multicast is based on the concept of a group. An arbitrary group of receivers expresses an interest in

receiving a particular data stream. This group does not have any physical or geographical boundaries—the

hosts can be located anywhere on the Internet. Hosts that are interested in receiving data flowing to a

particular group must join the group using IGMP. Hosts must be a member of the group to receive the

data stream.

Multicast Addressing

For delivering a message to a group of destination nodes which are not necessarily in the same sub

network, multicast addresses are used. While Class A, B, and C IP addresses are used for unicast

messages, Class D addresses (224.0.0.0 - 239:255.255.255) are employed by multicast messages.

Addressing Technique

The Internet Assigned Numbers Authority (IANA) controls the assignment of IP multicast addresses. It

has assigned the old Class D address space to be used for IP multicast. This means that all IP multicast

group addresses will fall in the range of 224.0.0.0 to 239.255.255.255.

Page 5: MultiCasting-concepts,algoritms and protocols

4

But we should remember that this address range is only for the group address or destination address of IP

multicast traffic. The source address for multicast datagrams is always the unicast source address.

The IANA has reserved addresses in the 224.0.0.0 through 224.0.0.255 to be used by network protocols

on a local network segment e.g. to exchange link state information.

The range of addresses from 224.0.1.0 through 238.255.255.255 is called globally scoped addresses. They

can be used to multicast data between organizations and across the Internet. However a few addresses

from this range are also reserved for special purposes.

Ethernet MAC Address Mapping [1]

The IANA owns a block of Ethernet MAC addresses that start with 01:00:5E in hexadecimal. Half of this

block is allocated for multicast addresses. This allocation allows for 23 bits in the Ethernet address to

correspond to the IP multicast group address. The mapping places the lower 23 bits of the IP multicast

group address into these available lower 23 bits in the Ethernet address as depicted in figure 1.

Figure 1: Mapping of a class D IP address into Ethernet multicast address [5]

Page 6: MultiCasting-concepts,algoritms and protocols

5

Because the upper 5 bits of the IP multicast address are dropped in this mapping, the resulting address is

not unique. In fact, 32 different multicast group IDs (as five bits are dropped hence 25=32) all map to the

same Ethernet address. This causes ambiguity in Mac Addresses as shown in figure 2.

Figure 2: MAC Address Ambiguities [1]

Internet Group Management Protocol (IGMP)

IGMP is used to dynamically register individual hosts in a multicast group on a particular LAN. Hosts

identify group memberships by sending IGMP messages to their local multicast router. Under IGMP,

routers listen to IGMP messages and periodically send out queries to discover which groups are active or

inactive on a particular subnet. Hence we can also say that the protocol through which hosts

communicates information with their local routers for the case of multicasting is called Internet Group

Management Protocol (IGMP). After receiving a multicast packet sent to a certain multicast group, the

router will check and see if there is at least one member of that particular group on its subnetwork. If that

is the case the router will forward the message to that subnetwork. Otherwise, it will discard the multicast

packet.

The most fundamental idea to multicasting is the concept of joining and leaving multicast groups. The

IGMP provides a method through which a host can join or leave a multicast group.

With the passage of time more and more research in Multicast field internet has seen three different

versions of IGMP version 1, 2 and 3.

IGMP Packet Format

IGMP messages are always sent with a TTL of 1 and are IP-encapsulated. The next figure shows the IGMP

version 2 packet format. The IGMP version 1 packet format is a little different than the format of version

2. The IGMP version 1 packet splits the Type field in version 2 into two parts, to include both the version

number and the type.

Page 7: MultiCasting-concepts,algoritms and protocols

6

Figure 3: IGMP Packet Format [9]

The Type field [9] indicates different types of IGMP packets:

Type 11 is the IGMP membership query.

Type 12 is the IGMP version 1 membership report.

Type 16 is the IGMP version 2 membership report.

Type 17 indicates the IGMP version 2 leave group.

There are other types also but the above stated are generally the most important ones.

The Maximum Response Time field is used only in membership query messages. It specifies the

maximum time in units of 1/10 of a second that a host might wait to respond to a query message.

The Checksum field is the checksum of the IGMP message to verify packet integrity.

The Group Address field contains the multicast group that the receiver is interested in receiving. When

the general IGMP query is sent, this group address field is set to 0.

IGMP Version 2 works basically the same as Version 1. The main difference is that there is a leave group

message. The hosts now can actively communicate to the local multicast router their intention to leave the

group. The router then sends out a group-specific query and determines whether there are any remaining

hosts interested in receiving the traffic. If there are no replies, the router times out the group and stops

forwarding the traffic. This can greatly reduce the leave latency compared to IGMP Version 1 where the

router has to figure out by itself for the leave of any member by sending membership queries. When there

is no reply to three consecutive IGMP membership queries, the router times out the group and stops

forwarding traffic directed toward that group. Hence a lot of unwanted and unnecessary traffic can be

stopped much sooner.

Version 3 of IGMP adds support for "source filtering", that is, the ability for a system to report interest

in receiving packets *only* from specific source addresses, or from *all but* specific source addresses,

sent to a particular multicast address. That information may be used by multicast routing protocols to

avoid delivering multicast packets from specific sources to networks where there are no interested

receivers.

Page 8: MultiCasting-concepts,algoritms and protocols

7

Multicast Routing Algorithms

Several algorithms have been proposed for building multicast trees through which the multicast packets

can be delivered to the destination nodes. These algorithms can be potentially used in implementing the

multicast routing protocols. In this section, we will review comparatively two simpler algorithms called

Flooding and Spanning Trees. Then, we will discuss more sophisticated algorithms such as Reverse Path

Forwarding (RPF), Truncated Reverse Path Forwarding (TRPF), Steiner Trees (ST), and Core-Based Trees

(CBT).

Flooding

The Flooding algorithm which has been already used in protocols such as OSPF is the simplest technique

for delivering the multicast datagrams to the routers of an internetwork. In this algorithm, when a router

receives a multicast packet it will first check whether it has seen this particular packet earlier or this is the

first time that this packet has reached this router. If this is the first time, the router will forward the

packet on all interfaces, except the one from which the packet has been received. Otherwise, the router

will simply discard the packet. This way we make sure that all routers in the internetwork will receive at

least one copy of the packet. Although this algorithm is pretty simple, it has some major disadvantages.

The flooding algorithm generates a large number of duplicated packets and waste the network bandwidth.

Furthermore, since each router needs to keep track of the packets it has received in order to find out

whether this is the first time that a particular packet has been seen or not, it needs to maintain a distinct

entry in its table for each recently seen packet. Therefore, the Flooding algorithm makes inefficient use of

router memory resources.

Spanning Trees

A better algorithm than Flooding is the Spanning Tree algorithm. In this algorithm, a subset of

internetwork links is selected to define a tree structure such that there is only one active path between any

two routers. Since this tree spans to all nodes in the internetwork it is called spanning tree. Whenever a

router receives a multicast packet, it forwards the packet on all the links which belong to the spanning tree

except the one on which the packet has arrived, guaranteeing that the multicast packet reaches all the

routers in the internetwork. Noticeably, the only information a router needs to keep is a Boolean variable

per network interface indicating whether the link belongs to the spanning tree or not. For further

illustration let us see an example where we use a small network with five nodes and six links to show

different trees. We assume that the links are symmetric. The spanning tree from source node (C) is shown

in next part of Figure:

Figure 4: Test Network [5]

Page 9: MultiCasting-concepts,algoritms and protocols

8

The spanning tree algorithm has two drawbacks: It centralizes all the traffic on a small set of links and it

does not consider the group membership.

Reverse Path Broadcasting (RPB)

The RPB algorithm is a modification of the Spanning Tree algorithm. In this algorithm, instead of

building a network-wide spanning tree, an implicit spanning tree is constructed for each source. Based on

this algorithm whenever a router receives a multicast packet on a link from a source, the router will check

and see if the link belongs to the shortest path toward the source. If this is the case the packet is forwarded

on all links except the one received from. Otherwise, the packet is discarded. Multicast trees from two

different sources of our test network are shown in Figure.

Figure 6: RPB Trees for two different sources [5]

Figure 5: Formation of a Spanning Tree with C as source [5]

Page 10: MultiCasting-concepts,algoritms and protocols

9

The RPB algorithm can be easily improved by considering the fact that if the local router is not on the

shortest path between the source node and a neighbour; the packet will be discarded at the neighbouring

router. Therefore, if this is the case there is no need to forward the message to that neighbour. This

algorithm is efficient and easy to implement. Furthermore since the packets are forwarded through the

shortest path from the source to the destination nodes, it is very fast. The RPB algorithm does not need

any mechanism to stop the forwarding process. The routers do not need to know about the entire

spanning tree and since the packets are delivered through different spanning trees traffic is distributed

over multiple trees and network is better utilized. Still, the RPB algorithm suffer from a major deficiency:

it does not take into account the information about multicast group membership for constructing the

distribution trees.

Truncated Reverse Path Broadcasting (TRPB)

The TRPB algorithm has been proposed to overcome some of the limitations of the RPB algorithm. As

earlier mentioned that by using IGMP protocol, a router can determine whether members of a given

multicast group are present on the router subnetwork or not. If this subnetwork is a leaf subnetwork (it

doesn't have any other router connected to it) the router will truncate the spanning tree. It should be

noted here that TRPB similar to RPB won't forward the message to a neighbour router if the local router is

not on the shortest path from the neighbour router to the source node. Although, multicast group

membership is used in the TRPB algorithm and the leaf subnets are truncated from the spanning trees

but, it does not eliminate unnecessary traffic on non-leaf subnetworks which do not have group member.

Reverse Path Multicasting (RPM)

The RPM algorithm (also known as RPB with prunes) is an enhancement to the RPB and TRPB

algorithms. RPM constructs a delivery tree that spans only:

1) Subnetworks with group members

2) Routers and subnetworks along the shortest path to subnetworks with group members.

The RPM tree can be pruned such that the multicast packets are forwarded along links which lead to

members of the destination group. For a given pair of source and group the first multicast packet is

forwarded based on the TRPB algorithm. If a leaf router receives a multicast packet for a source and group

pair and it does not have any group member on its subnetworks, it will send a "prune" message to the

router from which it has received the multicast packet. The prune message indicates that the multicast

packets of that particular source and group pair should not be forwarded on the link from which the prune

message has been received. It is important to note that prune messages are only sent one hop back

towards the source. The upstream router is required to record the prune information in its memory. On

the other hand, if the upstream router does not have any local recipient and receives prune messages from

all of its children in the TRPB tree, the upstream router will send a prune message to its parent in the

TRPB tree indicating that the multicast packets for the source group pair need not be forwarded to it. The

cascaded prune messages will truncate the original TRPB tree such that the multicast packets will be

forwarded only on those links that will lead to a destination node (multicast group member). Figure 6

illustrates the whole concept:

Page 11: MultiCasting-concepts,algoritms and protocols

10

Unfortunately the network topology can dynamically change and the prune state of delivery trees should

be refreshed at regular intervals. Therefore, in RPM algorithm the prune information in routers is

removed periodically and the next packet for a source and group is forwarded to all leaf routers. This is

essentially the first drawback of RPM. Relatively big memory space required for maintaining state

information for all source and group pairs is another drawback which makes this algorithm not scalable

for very large networks.

Core-Based Trees (CBT)

The latest algorithm proposed for constructing multicast delivery trees is called Core-Based Tree (CBT)

algorithm. Unlike other algorithms discussed earlier, CBT creates a single delivery tree for each group. In

other words, the tree used for forwarding multicast messages of a particular group, is a single tree

regardless of the location of the source node. A single router or a set of routers are chosen to be the "core"

router of a delivery tree. All messages to a particular group are forwarded as unicast messages toward the

core router until they reach a router which belongs to the corresponding delivery tree. Then, the packet is

forwarded to all ongoing interfaces which are part of the delivery tree except the incoming interface.

This has been illustrated in Fig 8.

Figure 7: Reverse Path Multicast Concept [5]

Figure 8: Multicasting using CBT approach [5]

Page 12: MultiCasting-concepts,algoritms and protocols

11

Since CBT constructs only one delivery tree for each multicast group, multicast routers are required to

keep less information in comparison to the requirements of other routing algorithms. CBT conserves

network bandwidth too because, it does not require flooding of any multicast packet over the

internetwork. However, using a single tree for each group may lead to traffic concentration and

bottlenecks around the core routers.

Multicast Routing Protocols

Like unicast routing protocols (such as Open Shortest Path First (OSPF) protocol), there are multicast

routing protocols which helps multicast routers to determine where to forward multicast messages. We

will now see three routing protocols (Distance Vector Multicast Routing Protocol (DVMRP), Multicast

Extensions to OSPF (MOSPF) protocol, and Protocol Independent Multicast - Dense Mode (PIM-DM)

protocol) which are more efficient in situations where multicast group members are densely distributed

over the network and then the Protocol Independent Multicast - Sparse Mode (PIM-SM) protocol which

performs better when group members are sparsely distributed.

Distance Vector Multicast Routing Protocol (DVMRP)

The Distance Vector Multicast Routing Protocol (DVMRP) was driven from Routing Information Protocol

(RIP) with the difference being that RIP forwards the unicast packets based on the information about the

next-hop toward a destination, while DVMRP constructs delivery trees based on the information on the

previous hop back to the source. The earlier version of this distance-vector routing algorithm constructs

delivery trees based on TRPB algorithm. Later on, DVMRP was enhanced to use RPM. The first packet of

multicast messages sent from a particular source to a particular multicast group is flooded across the

internetwork. Then, prune messages are used to truncate the branches which do not lead to a group

member. Furthermore, a new type of messages is used to quickly "graft" back a previously pruned branch

of a delivery tree in case a new host on that branch joins the multicast group.

Multicast Extensions to OSPF (MOSPF)

The Multicast Extensions to OSPF (MOSPF) is built on top of Open Shortest Path First (OSPF). MOSPF

uses the group membership information obtained through IGMP and with the help of OSPF database

builds multicast delivery trees. These trees are shortest-path trees constructed for each source and group

pair. MOSPF supports hierarchical routing. All hosts in the Internet are partitioned into some

"Autonomous Systems" (AS). Each AS is further divided into subgroups called "areas". Let’s divide the

multicast routing of MOSPF into three parts for better understanding:

Intra-Area Routing

Inter-Area Routing

Inter-AS Routing

Intra-Area Routing

OSPF is a link-state routing protocol which allows AS (Autonomous System) to be split into areas. The

OSPF link state database provides the complete map of an area at each router. By adding a new type of

link state advertisement "Group-Membership-LSA" (Group-Membership Link State Advertisement) the

information about the location of members of multicast groups can be obtained and put in the database.

From OSPF link state information, shortest-path delivery trees rooted at the source nodes are constructed

Page 13: MultiCasting-concepts,algoritms and protocols

12

using Dijkstra algorithm. Then, group membership information is used to prune those links which don't

end up to a group member. It should be noted here that delivery trees are constructed on demand. In

other words, when a router receives the first multicast datagram of a source and group pair, it will build

the delivery tree. Based on a delivery tree, a router easily knows from which interface it should expect to

receive multicast messages and to which interface(s) it should forward them. Unlike DVMRP, the first

packet need not to be flooded in an area.

Inter-Area Routing

If the source and/or some of the group members are in different areas of an AS, the simple mechanism

described in the previous section won't be enough for forwarding multicast messages. To solve this

problem, a subnet of the area border routers (ABRs) is elected to function as "inter-area multicast

forwarders". Inter-area multicast forwards are responsible for forwarding a summarized version of group

membership information of their attached areas to the backbone area using a new type of group

membership LSAs. It should be noted here that this information is not flooded into non-backbone areas.

Inter-AS Routing

Inter-AS routing involves the cases in which source and/or some of the destination multicast group

members are in different Autonomous Systems. The approach for implementing inter-AS routing is very

similar to that of inter-area routing. Some of the AS Boundary Routers (ASBRs) are configures as "inter-

AS multicast forwarders". MOSPF assumes that inter-AS multicast forwarders construct RPB trees for

forwarding multicast messages.

Protocol-Independent Multicast (PIM)

The Protocol Independent Multicast (PIM) routing protocols are being developed by the Inter-Domain

Multicast Routing (IDMR), a working group of the IETF. IDMR plans to develop a set of multicast routing

protocols which independent of any particular unicast routing protocol can provide scalable Internet-wide

multicast routing. Of course, PIM requires the existence of a unicast routing protocol. The major proposed

multicast protocols perform well if group members are densely packed and bandwidth is not a problem.

However, the fact that DVMRP periodically floods the network and the fact that MOSPF sends group

membership information over the links, make these protocols not efficient in cases where group members

are sparsely distributed among regions and the bandwidth is not plentiful. To address these issues, PIM

contains two protocols: PIM - Dense Mode (PIM-DM) which is more efficient when the group members

are densely distributed, and PIM - Sparse Mode (PIM-SM) which performs better in cases where group

members are sparsely distributed. Although these two algorithms belong to PIM and they share similar

control messages, they are essentially two different protocols. PIM does not send and receive multicast

routing updates between routers like other routing protocols do.

PIM Dense Mode [1]

PIM Dense Mode (PIM-DM) uses a push model to flood multicast traffic to every corner of the network.

This is a brute-force method for delivering data to the receivers, but in certain applications, this might be

an efficient mechanism if there are active receivers on every subnet in the network. PIM-DM initially

floods multicast traffic throughout the network. Routers that do not have any downstream neighbours

prune back the unwanted traffic. This process repeats every 3 minutes. The flood and prune mechanism is

how the routers accumulate their state information. The data streams contain the source and group

information so that downstream routers can build up their multicast forwarding tables. PIM-DM is

independent of the mechanisms employed by any specific unicast routing protocol. This is different from

Page 14: MultiCasting-concepts,algoritms and protocols

13

DVMRP and MOSPF protocols. DVMRP uses RIP-like exchange messages to build its unicast routing

table, and MOSPF relies on OSPF link state database.

PIM Sparse Mode [2]

PIM Sparse Mode (PIM-SM) uses a pull model to deliver multicast traffic. Only networks that have active

receivers that have explicitly requested the data will be forwarded the traffic. PIM-SM has two key

differences with existing dense-mode protocols (DVMRP, MOSPF, and PIM-DM). In PIM-SM protocol

routers need to explicitly announce their will for receiving multicast messages of multicast groups, while

dense-mode protocols assumes that all routers need to receive multicast messages unless they explicitly

send a prune message. The other key difference is the concept "rendezvous point" (RP) which has been

employed in PIM-SM protocol.

Each sparse-mode network has a set of routers acting as RPs. Furthermore, each group has a single RP at

any given time. Every router which wants to receive multicast messages from a certain group needs to

send a join message to the RP of that group. Each host has a Designated Router (DR) which is the router

connected to the same subnetwork with the highest IP address. When a DR receives an IGMP message

indicating the membership of a host to a certain group, the DR finds the RP of that group and forwards a

unicast PIM-Join message to the RP. The DR and intermediate routers create an entry in their multicast

forwarding table for the pair such that they can know how to forward multicast messages coming from the

RP of that multicast group to the DR and group members.

Figure 9: Host joins a Multicast Group [5]

When a source sends a message to a certain group, the DR of that source encapsulates the first message in

a PIM-SM-Register packet and sends it to the RP of that group as a unicast message. After receiving this

message, the RP sends back a PIM-Join message to the DR of the source. While this message is being

forwarded to the DR, all intermediate routers add a new entry in their multicast forwarding tables for the

new pair. This way, next multicast messages of this source can be forwarded to the RP easily. Obviously,

RP will be responsible for forwarding these multicast messages to the members of the group. It should be

Page 15: MultiCasting-concepts,algoritms and protocols

14

noted that until these entries have been added in all intermediate routers’ tables, all multicast messages

will be forwarded as encapsulated unicast messages.

Figure 10: Source sends to a multicast group [5]

MBone [8]

MBone (multicast backbone) was an experimental backbone for IP multicast traffic across the Internet

developed in the early 1990s. It required specialized hardware and software. Since most Internet routers

have IP multicast disabled due to concerns of bandwidth tracking and billing, the MBone evolved to

connect multicast-capable networks over the existing Internet infrastructure. The commercialization of

multicast routers is difficult because there are no efficient access control capabilities to the multicast trees

(multicast routers and their protocols), and because Internet service providers have difficulty computing

charges for multicast traffic.

A November 1994 Rolling Stones concert at the Cotton Bowl in Dallas with 50,000 fans was the "first

major cyberspace multicast concert." Mick Jagger opened the concert by saying,

"I wanna say a special welcome to everyone that's, uh, climbed into the Internet tonight and, uh, has got

into the M-bone. And I hope it doesn't all collapse."[8]

By 1995 there were M-bone links in Russia, as well as at the McMurdo Sound research station in

Antarctica.

A recent application with support over MBone was Virtual Room Videoconferencing System (VRVS).

Page 16: MultiCasting-concepts,algoritms and protocols

15

Future Research in Multicasting [3]

Due to the sparse deployment of IP multicast in the Internet today, some researchers have proposed

application layer multicast as a new approach to implement wide area multicast services. In this approach

multicast functionality is implemented at the end-hosts instead of network routers. Unlike network-layer

multicast, application layer multicast requires no infrastructure support and can be easily deployed in the

Internet. However, more than a decade after its initial proposal, deployment of IP Multicast has been

limited and sparse due to a variety of technical and non-technical reasons.

Therefore some researchers in the recent past have revisited the issue whether the network layer is

necessarily the best layer for implementing multicast functionality and have proposed application layer

multicast as an alternate technique for multicasting. As the name suggests, in application layer multicast,

the multicasting functionality is implemented at the application layer, i.e. at the end-hosts instead of the

network routers.

Unlike network layer multicast where data packets are replicated at routers inside the network, in

application layer multicast data packets are replicated at end-hosts. Logically, the end-hosts form an

overlay network, and the goal of application layer multicast is to construct and maintain an efficient

overlay for data transmission.

Page 17: MultiCasting-concepts,algoritms and protocols

16

References

1. Williamson, Beau. Developing IP Multicast Networks. Indianapolis: Cisco Press, 2000.

Multicast Quick Start Configuration Guide (http://www.cisco.com/warp/105/48.html)

2. IP Multicasting Protocols: IGMP, RPM, CBT, DVMRP, MOSPF, PIM, MBONE

Mohammad Banikazemi, [email protected]

3. A Comparative Study of Application Layer Multicast Protocols by Suman Banerjee, Bobby Bhattacharjee

Department of Computer Science, University of Maryland, College Park, MD 20742, USA.

4. W. R. Stevens, "TCP/IP Illustrated," Addison-Wesley, 1994.

5. C. Huitema, "Routing in the Internet," Prentice-Hall, Inc., 1995.

6. T. Maufer, C. Semeria, "Introduction to IP Multicast Routing”.

7. "Internet Group Management Protocol, Version 3“ draft-ietf-idmr-igmp-v3-08.txt

8. Wikipedia MBone: http://en.wikipedia.org/wiki/M_Bone

9. http://cisco.iphelp.ru/faq/5/ch12lev1sec4.html