Broadcast |
Thème : Protocoles réseaux |
Définition

Le broadcast est un terme anglais définissant une diffusion de données à un ensemble de machines connectées à un réseau. En français on utilise le terme diffusion.
Description

Les protocoles de communications réseau prévoient une méthode simple pour diffuser des données à plusieurs machines en même temps. A contrario d'une communication Point à Point (Unicast), il est possible d'adresser des paquets de données à un ensemble de machines d'un même réseau uniquement par des adresses spécifiques qui seront interceptées par toutes les machines du réseau ou sous-réseau.
Ces paquets sont en général des annonces faites aux clients potentiels du réseau par des machines pouvant offrir des services.
L'étendue d'une diffusion sera restreinte par le routage des paquets et par le masque de réseau défini par le protocole utilisé. On peut aussi réduire l'étendue d'une diffusion broadcast par le TTL (Time To Live) d'un paquet IP.
Par exemple, en IP version 4
IPv4 , une adresse IP de diffusion telle que 192.168.1.255 sera interceptée par toutes les machines ayant une adresse IP entre 192.168.1.1 et 192.168.1.254, pour autant que le masque de sous-réseau de l'interface soit défini comme 255.255.255.0.
Pour schématiser, l'émetteur des données se comportera comme un émmeteur radio ; seuls les clients accordés sur l'adresse de diffusion (masque réseau) prendront en compte les paquets transitant sur le réseau.
Par défaut, les hubs et les switchs diffusent sur toutes leurs interfaces les paquets broadcast. Dans le cas d'un routeur, il faut définir manuellement les règles de routage pour que les données soient diffusées sur les interfaces souhaitées. Les routeurs ne transmettent pas par défaut les paquets broadcast pour ne pas innonder tous les réseaux de manière inutile.
En IP, les paquets peuvent être TCP (c'est déconseillé), ICMP ou UDP. Par exemple, on peut faire un
Ping en broadcast (en tapant
Ping -b 192.168.1.255 sous
Linux , mais celui-ci ne passera normalement pas le prochain routeur (vous pouvez essayer de taper
Ping -b 255.255.255.255).
Pour une diffusion de données plus fine au niveau du routage, on utilisera les adresses
Multicast