La velocità multicast deve essere il minimo comune denominatore in modo che tutti i dispositivi possano riceverlo correttamente. I frame multicast non possono essere riconosciuti [1], quindi se un peer non riesce a riceverlo, il mittente non lo saprà e non ritrasmetterà il frame. Avere tassi di perdita superiori all'1% per ricevitore è comune. Si possono prevedere tassi di perdita molto più elevati se vi è un intenso traffico unicast in corso sullo stesso canale.
Se si aumenta il tasso multicast di base, si aumenta anche il tasso di perdita. Ma dal momento che devi combinare i pacchetti nativi e introdurre la ridondanza per compensare il tasso di perdita puro, la tua rete dovrebbe essere in grado di sopravvivere a questo. Tenere presente che i frame di gestione 802.11 multicast (inclusi i beacon) non sono progettati per supportare elevati tassi di perdita.
Su Linux, la maggior parte dei driver mac802.11 dovrebbe supportare l'impostazione della velocità multicast. I kernel non recenti richiedono che ciò avvenga al momento dell'adesione sia per IBSS che per mesh. iw
ha mcast-rate
un'opzione per il comando ibss join
e mesh join
.
Ma se ti capita di eseguire un kernel abbastanza recente e iw
che entrambi supportano NL80211_CMD_SET_MCAST_RATE
, puoi cambiarlo in qualsiasi momento ed è semplice come
iw dev wlanX set mcast_rate 6
per impostare una velocità multicast a 6 Mbps.
[1] Forse possono, ora. È stata proposta una modifica allo standard 802.11 per riconoscere i frame multicast: tutte le stazioni, dopo aver ricevuto correttamente un frame multicast, avrebbero scelto un backoff casuale e inviato un segnale al trasmettitore. Naturalmente, Acks potrebbe scontrarsi, quindi il trasmettitore lo ritrasmetterebbe e consentirebbe backoff più ampi fino a quando tutti i ricevitori non avessero riconosciuto correttamente il frame.