Giving a definition that covers all of multicasting is not very easy, because it must be general enough to cover all forms of multicasting at a very abstract level. The following is an attempt at a definition for multicasting in general.
With a multicast ``transmission'', a sending entity transfers a single copy of a message to a ``service provider'' (SP) by a single operation. The SP delivers a copy of that message to each destination entity of the multicast transmission.
The number of destination entities may be 0, all or any number in between. Unicast (one entity) and Broadcast (all reachable entities) are special cases of the multicast method.
(See Figure
for a graphical representation)
Figure: An illustration of the definition of Multicasting
As described in Section
, the network cloud can be
defined at different levels. When a multicast function is defined in a network
cloud, the level at which the multicast service is defined should be
stated as well.
Figure: Multicasting in different protocol layers
For the purpose of this discussion, it is assumed that two possible
types of service provider exist; multicast service providers and
unicast service providers. If no multicast service is provided, a
higher layer may still offer multicast services using a copy and
forwarding method on its own level. In Figure
an
example is shown of a multicast service provider and two
representations of a unicast service provider with an added layer to
provide multicast. In
B and C, the combination of the
unicast SP and the copy service can be viewed as a multicast service
provider like the one shown in Figure
A.
In Figure
B the copy service providing entity is
located in the sending node. The multicast service using entity passes the
packet to the copying entity, which then makes a copy for each recipient
and sends it to each of them using a unicast transmission.
In Figure
C, the copy service providing entity is
located in one node connected to the same unicast service provider as
the multicast service users. A multicast service user passes a packet
to be multicasted to the local multicast service providing entity. This
local interface passes the packet to the copy service entity on the node
with the the multicast server (the actual copy service providing
entity). The multicast server makes copies of the packets and forwards
one to each recipient.
The figure (
) used to illustrate the definition of
multicasting corresponds to Figure
A. It is not
specified how the copying and forwarding of the copies is done, but the
effect of the service offered by the Service Provider is that the
message is multicasted.