Un groupe multicast se compose d'un ensemble de machines. Il est entièrement dynamique (une station peut rejoindre ou quitter le groupe à tout moment), et ouvert : il n'y a pas de restriction des sources a priori, une station peut même émettre un paquet dans un groupe sans en faire partie.
Les protocoles de routages tels que PIM permettent la diffusion du multicast au-delà du segment.
Le trafic multicast étant unidirectionnel, l'utilisation de TCP n'est pas possible, seul UDP est donc utilisé. Les mécanismes d'évitement de congestion et de retransmission de TCP ne sont pas disponibles, les applications doivent donc tolérer les pertes ou faire usage d'un système de retransmission basé sur unicast, ce mode de transmission est alors appelé Reliable multicast (en). Sur des liens où il peut exister de la congestion, la QoS peut contribuer à l'amélioration de la qualité des flux multicast dans le réseau d'un opérateur en prioritisant multicast.
IPv4
En multicast, le protocole IP utilise les adresses de 224.0.0.0 à 239.255.255.255, les 28 bits les moins significatifs constituent l'adresse du groupe.
Les adresses IP multicast 224.0.0.1 à 224.0.0.255 sont locales à un lien et sont réservées pour le fonctionnement des protocoles réseaux, comme OSPF par exemple. D'autres protocoles délaissés : AppleTalk, DECnet, IPX utilisent aussi le multicast.
Lorsqu'un poste veut envoyer un paquet à un groupe multicast, il envoie ce paquet à l'adresse IP identifiant ce groupe (par exemple : 224.1.2.3). La réception est réalisée par un routeur abonné au groupe et le paquet est alors dupliqué et renvoyé grâce à une trame de niveau 2 Multicast.
Sur un segment, les routeurs identifient les groupes disposant de membres grâce au protocole Internet Group Management Protocol (IGMP). IGMP n'identifie cependant pas les récepteurs individuels.
Les commutateurs ethernet simples traitent les trames multicast comme des trames broadcast, c'est-à-dire en les répliquant sur toutes les portes à l'exception de la porte émettrice. Le protocole IGMP snooping permet d'améliorer ce comportement et de ne transmettre les trames qu'aux hôtes qui manifestent de l'intérêt pour le groupe.
Au niveau ethernet, les trames avec le bit le moins significatif du 1 octet d'une adresse MAC sont des trames diffusées. Le préfixe 01-00-5E (/25) est réservé pour les groupes multicast par la RFC 1112. Les 23 bits les moins significatifs de l'adresse MAC sont peuplés avec les 23 bits les moins significatifs de l'adresse IP multicast. Comme l'adresse IP multicast dispose de 28 bits de groupe, ceci signifie que plusieurs adresses IP multicast partagent la même adresse MAC.
Adresses multicast IPv4 réservées
Les blocs d'adresses suivants ont été réservés par l'IANA :
| Bloc | Description |
|---|
| 224.0.0.0/8 | adresses multicast sur le lien. Par exemple 224.0.0.5 est utilisé par OSPF pour contacter tous les routeurs OSPF du lien. |
| 232.0.0.0/8 | Source-specific multicast (RFC 3569) |
| 233.0.0.0/8 | Adressage GLOP (RFC 2770) qui permet à un fournisseur de contenu de de disposer de ses propres adresses. Les octets 2 et 3 représentent un numéro d'AS public de 16 bits. |
| 239.0.0.0/8 | Adresse multicast de site. Celles-ci jouent le même role que les adresses privées, leur diffusion est limitée à un site. |
IPv6
Multicast fait partie des spécifications initiales d'IPv6. Il est notamment utilisé par le Neighbor Discovery Protocol et se substitue au broadcast.
Les adresses IPv6 ff00::/8 sont réservées pour le multicast, 112 bits de groupe sont disponibles.
| champ | préfixe | drap. | scope | groupe |
|---|
| bits | 8 | 4 | 4 | 112 |
|---|
Le préfixe consiste en la valeur binaire 11111111. Trois des quatre bits du champ drapeau sont définis par la RFC 4291. Le bit le plus significatif est réservé à un usage ultérieur. Les quatre bits de scope indiquent le domaine de validité de l'adresse (ff0s:
:
- si s=1, l'adresse multicast est locale à l'hôte,
- si s=2, l'adresse est link-local,
- si s=5, l'adresse est locale au site,
- si s=8, l'adresse est locale à l'oganisation,
- si s=e, l'adresse est globale.
Multicast Listener Discovery joue le même rôle qu'IGMP pour IPv4, tandis que MLD snooping est similaire à IGMP snooping.
Au niveau ethernet, un préfixe OUI est réservé aux adresses IPv6 multicast (33:33:xx). L'adresse MAC du groupe multicast consistera en ces 16 bits que l'on fait suivre par les 32 derniers bits de l'adresse IPv6 muticast. Par exemple, l'adresse ff02::3:2 correspondra à l'adresse MAC 33:33:00:03:00:02. Bien que de nombreux groupes multicast partagent la même adresse MAC, ceci permet déjà un filtrage efficace au niveau de la carte réseau.
Adresses IPv6 multicast réservées
Voici quelques adresses réservées par l'IANA :
| Bloc | Description |
|---|
| ff02::1 | Tous les hôtes sur un segment |
| ff02::2 | Tous les routeurs sur un segment |
| ff02::1:FF00:0000/104 | Solicited Node utilisé par Neighbor Discovery Protocol |
| ff05::1 | Tous les hôtes d'un site |
| ff0x::fb | Multicast DNS |
| ff0x::101 | Network Time Protocol |
| ff05::1:3 | Tous les serveurs DHCP du réseau local. |