When running IP
multicast protocols, Ethernet switches also provide the functions of routers. In
this manual, routers stand for not only the common routers but also the Layer 3
Ethernet switches running IP multicast protocols.
With development of networks on the
Internet, more and more interaction services such as data, voice, and video
services are running on the networks. In addition, services highly dependent on
bandwidth and real-time data interaction, such as e-commerce, web conference,
online auction, video on demand (VoD), and tele-education have come into being.
These services have higher requirements for information security, legal use of
paid services, and network bandwidth.
In the network,
packets are sent in three modes: unicast, broadcast and multicast. The
following sections describe and compare data interaction processes in unicast,
broadcast, and multicast.
In unicast, the system establishes a
separate data transmission channel for each user requiring this information,
and sends separate copy information to the user, as shown in Figure 1-1:

Figure 1-1 Information transmission in the unicast mode
Assume that users B, D and E need this
information. The source server establishes transmission channels for the
devices of these users respectively. As the transmitted traffic over the
network is in direct proportion to the number of users that receive this
information, when a large number of users need this information, the server
must send many pieces of information with the same content to the users.
Therefore, the limited bandwidth becomes the bottleneck in information transmission.
This shows that unicast is not good for the transmission of a great deal of
information.
1.1.2 Information
Transmission in the Broadcast Mode
When you adopt
broadcast, the system transmits information to all users on a network. Any user
on the network can receive the information, no matter the information is needed
or not. Figure 1-2 shows information transmission in broadcast mode.

Figure 1-2 Information transmission in the broadcast mode
Assume that users B, D, and E need the
information. The source server broadcasts this information through routers, and
users A and C on the network also receive this information. The security and
payment of the information cannot be guaranteed.
As we can see from the information transmission
process, the security and legal use of paid service cannot be guaranteed. In
addition, when only a small number of users on the same network need the
information, the utilization ratio of the network resources is very low and the
bandwidth resources are greatly wasted.
Therefore,
broadcast is disadvantageous in transmitting data to specified users; moreover,
broadcast occupies large bandwidth.
As described in the previous sections,
unicast is suitable for networks with sparsely distributed users, whereas
broadcast is suitable for networks with densely distributed users. When the
number of users requiring information is not certain, unicast and broadcast
deliver a low efficiency.
Multicast solves this problem. When some users on a network require
specified information, the multicast information sender (namely, the multicast
source) sends the information only once. With tree-type routes established for
multicast data packets through a multicast routing protocol, the packets are
duplicated and distributed at the nearest nodes, as shown in Figure 1-3:

Figure 1-3 Information transmission in the multicast mode
Assume that users B, D and E need the
information. To transmit the information to the right users, it is necessary to
group users B, D and E into a receiver set. The routers on the network
duplicate and distribute the information based on the distribution of the
receivers in this set. Finally, the information is correctly delivered to users
B, D, and E.
The advantages of multicast over unicast
are as follows:
l
No matter how many receivers exist, there is
only one copy of the same multicast data flow on each link.
l
With the multicast mode used to transmit information,
an increase of the number of users does not add to the network burden
remarkably.
The advantages of multicast over broadcast
are as follows:
l
A multicast data flow can be sent only to the
receiver that requires the data.
l
Multicast brings no waste of network resources
and makes proper use of bandwidth.
In the multicast mode, network components
can be divided in to the following roles:
l
An information sender is referred to as a
multicast source.
l
Multiple receivers receiving the same
information form a multicast group. Multicast group is not limited by physical
area.
l
Each receiver receiving multicast information is
a multicast group member.
l
A router providing multicast routing is a
multicast router. The multicast router can be a member of one or multiple
multicast groups, and it can also manage members of the multicast groups.
For a better understanding of the multicast
concept, you can assimilate a multicast group to a TV channel. A TV station is
a multicast source. It sends data to the channel. The audiences are the
receivers. After turning on a TV set (a computer), they can select a channel to
receive a program (namely join a group) and then watch the program. Therefore,
a multicast group should be an agreement between the sender and the receivers,
like the frequency of a channel.
Caution:
A multicast source
does not necessarily belong to a multicast group. A multicast source sends data
to a multicast group, and it is not necessarily a receiver. Multiple multicast
sources can send packets to the same multicast group at the same time.
There may be
routers that do not support multicast on the network. A multicast router
encapsulates multicast packets in unicast IP packets in the tunnel mode, and
then sends them to the neighboring multicast routers through the routers that
do not support multicast. The neighboring multicast routers remove the header
of the unicast IP packets, and then continue to multicast the packets, thus
avoiding changing the network structure greatly.
I. Advantages of multicast
Advantages of multicast include:
l
Enhanced efficiency: Multicast decreases network
traffic and reduces server load and CPU load.
l
Optimal performance: Multicast reduces redundant
traffic.
l
Distributive application: Multicast makes
multiple-point application possible.
II. Application of multicast
The multicast technology effectively
addresses the issue of point-to-multipoint data transmission. By enabling
high-efficiency point-to-multipoint data transmission, over an IP network,
multicast greatly saves network bandwidth and reduces network load.
Multicast provides the following
applications:
l
Applications of multimedia and flow media, such
as Web TV, Web radio, and real-time video/audio conferencing.
l
Communication for training and cooperative
operations, such as remote education.
l
Database and financial applications (stock), and
so on.
l
Any point-to-multiple-point data application.
The purpose of IP multicast is to transmit information
from a multicast source to receivers in the multicast mode and to satisfy
information requirements of receivers. You should be concerned about:
l
Host registration: What receivers reside on the
network?
l
Technologies of discovering a multicast source:
Which multicast source should the receivers receive information from?
l
Multicast addressing mechanism: Where should the
multicast source transports information?
l
Multicast routing: How is information
transported?
IP multicast is a kind of peer-to-peer
service. Based on the protocol layer sequence from bottom to top, the multicast
mechanism contains addressing mechanism, host registration, multicast routing,
and multicast application, as shown in Figure 1-4:

Figure 1-4 Architecture of the multicast mechanism
The multicast addressing mechanism involves
the planning of multicast addresses. Host registration and multicast routing
are implemented based on the IP multicast protocol. Multicast application
software is not described in this chapter.
l
Addressing mechanism: Information is sent from a
multicast source to a group of receivers through multicast addresses.
l
Host registration: A receiving host joins and
leaves a multicast group dynamically to implement membership registration.
l
Multicast routing: A router or switch
establishes a packet distribution tree and transports packets from a multicast
source to receivers.
l
Multicast application: A multicast source must
support multicast applications, such as video conferencing. The TCP/IP protocol
suite must support the function of sending and receiving multicast information.
As receivers are multiple hosts in a
multicast group, you should be concerned about the following questions:
l
What destination should the information source
send the information to in the multicast mode?
l
How to select the destination address, that is,
how does the information source know who the user is?
These questions are about multicast
addressing. To enable the communication between the information source and
members of a multicast group (a group of information receivers), network-layer
multicast addresses, namely, IP multicast addresses must be provided. In
addition, a technology must be available to map IP multicast addresses to
link-layer MAC multicast addresses. The following sections describe these two
types of multicast addresses:
I. IP multicast address
Internet Assigned Numbers Authority (IANA)
categorizes IP addresses into five classes: A, B, C, D, and E. Unicast packets
use IP addresses of Class A, B, and C based on network scales. Class D IP
addresses are used as destination addresses of multicast packets. Class D
address must not appear in the IP address field of a source IP address of IP packets.
Class E IP addresses are reserved for future use.
In unicast data transport, a data packet is
transported hop by hop from the source address to the destination address. In
an IP multicast environment, the destination address of a packet is a multicast
address identifying a mutlicast group.All the receivers join a group. Once they
join the group, the data sent to this group of addresses starts to be
transported to the receivers. All the members in this group can receive the
data packets. This group is a multicast group.
A multicast group has the following
characteristics:
l
The membership of a group is dynamic. A host can
join and leave a multicast group at any time.
l
A multicast group can be either permanent or
temporary.
l
A multicast group whose addresses are assigned
by IANA is a permanent multicast group. It is also called reserved multicast
group.
Note that:
l
The IP addresses of a permanent multicast group
keep unchanged, while the members of the group can be changed.
l
There can be any number of, or even zero,
members in a permanent multicast group.
l
Those IP multicast addresses not assigned to
permanent multicast groups can be used by temporary multicast groups.
Class D IP addresses range from 224.0.0.0
to 239.255.255.255. For details, see Table 1-1.
Table 1-1 Range and description of Class D IP addresses
|
Class D address range
|
Description
|
|
224.0.0.0 to 224.0.0.255
|
Reserved multicast addresses (IP
addresses for permanent multicast groups). The IP address 224.0.0.0 is
reserved. Other IP addresses can be used by routing protocols.
|
|
224.0.1.0 to 231.255.255.255
233.0.0.0 to 238.255.255.255
|
Available any-source multicast (ASM)
multicast addresses (IP addresses for temporary groups). They are valid for
the entire network.
|
|
232.0.0.0 to 232.255.255.255
|
Available source-specific multicast (SSM)
multicast group addresses.
|
|
239.0.0.0 to 239.255.255.255
|
Local management multicast
addresses, which are for specific local use only.
|
As specified by
IANA, the IP addresses ranging from 224.0.0.0 to 224.0.0.255 are reserved for
network protocols on local networks. The following table lists commonly used
reserved IP multicast addresses:
Table 1-2 Reserved IP multicast
addresses
|
Class D address range
|
Description
|
|
224.0.0.1
|
Address of all hosts
|
|
224.0.0.2
|
Address of all multicast routers
|
|
224.0.0.3
|
Unassigned
|
|
224.0.0.4
|
Distance vector multicast routing
protocol (DVMRP) routers
|
|
224.0.0.5
|
Open shortest path first (OSPF)
routers
|
|
224.0.0.6
|
Open shortest path first
designated routers (OSPF DR)
|
|
224.0.0.7
|
Shared tree routers
|
|
224.0.0.8
|
Shared tree hosts
|
|
224.0.0.9
|
RIP-2 routers
|
|
224.0.0.11
|
Mobile agents
|
|
224.0.0.12
|
DHCP server/relay agent
|
|
224.0.0.13
|
All protocol independent
multicast (PIM) routers
|
|
224.0.0.14
|
Resource reservation protocol
(RSVP) encapsulation
|
|
224.0.0.15
|
All core-based tree (CBT) routers
|
|
224.0.0.16
|
The specified subnetwork
bandwidth management (SBM)
|
|
224.0.0.17
|
All SBMS
|
|
224.0.0.18
|
Virtual router redundancy
protocol (VRRP)
|
|
224.0.0.19 to 224.0.0.255
|
Other protocols
|
Like having
reserved the private network segment 10.0.0.0/8 for unicast, IANA has also
reserved the network segments ranging from 239.0.0.0 to 239.255.255.255 for
multicast. These are administratively scoped addresses. With the
administratively scoped addresses, you can define the range of multicast
domains flexibly to isolate IP addresses between different multicast domains,
so that the same multicast address can be used in different multicast domains
without causing collisions.
II. Ethernet multicast MAC address
When a unicast IP packet is transported in
an Ethernet network, the destination MAC address is the MAC address of the
receiver. When a multicast packet is transported in an Ethernet network, a
multicast MAC address is used as the destination address because the
destination is a group with an uncertain number of members.
As stipulated by IANA, the high-order 24
bits of a multicast MAC address are 0x01005e, while the low-order 23 bits of a
MAC address are the low-order 23 bits of the multicast IP address. Figure 1-5 describes the mapping relationship:

Figure 1-5 Mapping relationship between multicast IP address and multicast MAC
address
The high-order four bits of the IP multicast address are 1110,
representing the multicast ID. Only 23 bits of the remaining 28 bits are mapped
to a MAC address. Thus, five bits of the multicast IP address are lost. As a
result, 32 IP multicast addresses are mapped to the same MAC address.
IP multicast protocols include the
multicast group management protocol and the multicast routing protocol. Figure 1-6 describes the positions of the protocols related to multicast in the network.

Figure 1-6 Positions of protocols related to multicast
I. Multicast group management
protocol
Internet group membership protocol (IGMP)
is adopted between hosts and multicast routers. This protocol defines the
mechanism of establishing and maintaining group membership between hosts and multicast
routers.
II. Multicast routing protocols
A multicast routing protocol operates
between multicast routers to establish and maintain multicast routes and
forward multicast packets accurately and effectively. A multicast route
establishes a loop-free data transport path from a data source to multiple
receivers. The task of multicast routing protocol is to establish a
distribution tree structure. Multicast routers can establish the data
transmission path (namely, distribution tree) in many ways.
Like
unicast routes, multicast routes come in intra-domain routes and inter-domain
routes. Intra-domain multicast routes are quite mature now. Protocol
independent multicast (PIM) is the most commonly used protocol currently. It
can cooperate with any unicast routing protocol.
In a multicast model, a multicast source
host transports information to the host group, which is identified by the
multicast group address in the destination address field of an IP data packet.
Unlike a unicast model, a multicast model must forward data packets to multiple
external interfaces so that all receiver sites can receive the packets.
Therefore the forwarding process of multicast is more complicated than that of unicast.
In order to
guarantee the transmission of multicast packets in the network, multicast
packets must be forwarded based on unicast routing tables or those specially
provided to multicast (such as an MBGP multicast routing table). In addition,
to prevent the interfaces from receiving the same information from different
peers, routers must check the receiving interfaces. This check mechanism is
reverse path forwarding (RPF) check, which is the basis of performing multicast
forwarding for most multicast routing protocols.
Based on source addresses, multicast
routers judge whether multicast packets come from specified interfaces; that
is, RPF check determines whether inbound interfaces are correct by comparing
the interfaces that the packets reach with the interfaces that the packets
should reach. If the router resides on a shortest path tree (SPT), the
interface that multicast packets should reach points to the multicast source.
If the router resides on a rendezvous point tree (RPT), the interface that
multicast packets should reach points to the rendezvous point (RP). When
multicast data packets reach the router, if RPF check passes, the router
forwards the data packets based on multicast forwarding entries; otherwise, the
data packets are dropped.