Heterogeneity in WANs has been an issue for a long time: best effort services are one result of supporting the lowest common denominator among widely different network switches and links. With multicasting this problem is aggravated as simple paths are turned into trees and, in addition to switches, hosts within a group can also differ. Since continuous media imposes heavy demands on both networks and hosts, it is likely that not everyone will be able to receive all of a sender's streams, due to link or host limitations. This argues in favor of hierarchical encoding approaches so that the receivers can choose to get only those parts of the media that they can use[65]. This approach to dealing with heterogeneity can in many cases be an adequate solution for the problems posed by closed loop, feedback based flow and congestion control, since it matches FEC in being open loop, and as such it does not require continuous feedback from the receivers, nor any extra actions on the part of the sender.
Experience has shown that several representation formats for each media type
can coexist[66]. This is already a problem with traditional data
communications, but it is more of an issue with images, audio and video.
Such problems are typically addressed at the presentation layer,
which can provide translation services at three points: at the transmitter,
at the receiver or inside the network, in which case format converters are
required to be deployed inside the network. This may be an adequate
approach for converting protocols or text encodings among largely
independent network areas by placing the converters in the gateways, but
it is not suitable when the terminals themselves can use different
encodings within the same area, where translation capabilities
will be required at
practically every switch. Thus, it is more realistic to move the
translation procedures in the hosts themselves. In unicasting,
translation at the sender or at the receiver are practically equivalent.
In contrast, with multicasting, translation at the sender requires the
stream to be duplicated and translated for each different type of receiver,
precluding link sharing over common paths. This approach also does not
scale for large heterogeneous groups since the sender's resources are
limited. Last, it requires the sender to be aware of the receiver's
capabilities, which is incompatible with the
host group model.
Translation at the receiver is the
most economical and scalable approach since it fully exploits sharing and
moves all responsibilities away from the sender. Note that appropriate
hierarchical coding can be easily combined with, and probably facilitate,
translation and reconstruction of the signal at the receivers, according
to their needs and abilities.