Estoy tratando de implementar la codificación de red en una red en malla. Por lo tanto, necesito enviar paquetes a varios destinos, de esta manera estoy usando paquetes de difusión. Pero no puedo entender por qué esto tiene un límite de ~ 990 KB.
¿Hay alguna configuración que hacer?
wireless
ieee-802.11
linux
bandwidth
throughput
Vladimir Leiv
fuente
fuente
Respuestas:
En la conexión inalámbrica 802.11 (que supongo es su caso), las tramas de transmisión / multidifusión (así como muchas tramas de administración) se transmiten a la velocidad de datos más baja / básica / requerida (el término varía según el proveedor). Esto es independiente de las velocidades de datos admitidas.
Por lo general, para obtener el mejor rango y la máxima compatibilidad, el valor predeterminado es la velocidad de datos de 1 Mbps, aunque en los últimos años, algunos proveedores han aumentado este valor predeterminado.
Algunos proveedores ahora también incluyen una conversión de multidifusión a unidifusión que realiza un seguimiento de los clientes de multidifusión con alguna forma de indagación de multidifusión, sin embargo, no conozco medios similares para la transmisión (un dispositivo inalámbrico no puede conocer a todos los clientes que pueda necesitar) alcanzar).
Si está hablando de una red de malla ad-hoc, a menudo no tiene control sobre esto en la configuración del controlador.
fuente
La tasa de multidifusión debe ser el mínimo común denominador para que todos los dispositivos puedan recibirla con éxito. Las tramas de multidifusión no pueden reconocerse [1], por lo que si un par no puede recibirla, el remitente no lo sabrá y no retransmitirá la trama. Tener tasas de pérdida de más del 1% por receptor es común. Se pueden esperar tasas de pérdida mucho más altas si hay mucho tráfico de unidifusión en el mismo canal.
Si aumenta la tasa de multidifusión básica, también aumentará la tasa de pérdida. Pero dado que debe combinar paquetes nativos e introducir redundancia para compensar la tasa de pérdida total, su red debería poder sobrevivir a eso. Tenga en cuenta que las tramas de administración 802.11 multicast (incluidas las balizas) no están diseñadas para soportar altas tasas de pérdida.
En Linux, la mayoría de los controladores mac802.11 deberían admitir la configuración de la velocidad de multidifusión. Los núcleos no tan recientes requieren que esto se haga en el momento de la unión tanto para IBSS como para mesh.
iw
tiene unamcast-rate
opción para elibss join
ymesh join
comandos.Pero si está ejecutando un kernel bastante reciente y
iw
ambos son compatiblesNL80211_CMD_SET_MCAST_RATE
, puede cambiarlo en cualquier momento, y es tan simple comopara establecer una velocidad de multidifusión de 6 Mbps.
[1] Tal vez puedan, ahora. Se propuso una modificación al estándar 802.11 para reconocer las tramas de multidifusión: todas las estaciones, después de recibir una trama de multidifusión con éxito, elegirían un retroceso aleatorio y enviarían un reconocimiento al transmisor. Por supuesto, los Acks podrían colisionar, por lo que el transmisor lo retransmitiría y permitiría retrocesos más grandes hasta que todos los receptores hayan reconocido la trama con éxito.
fuente
En realidad, es posible modificar la velocidad de bits forzando la velocidad en la tarjeta inalámbrica. En Linux, el comando es:
fuente
iwconfig
es obsoleto. Todos los ioctls que usa están pirateados o son completamente falsificados, o incluso no operan. De todos modos, lo que hace este comando en particular es horrible. Y no es lo que desea: esto limita la tarifa disponible, no la repara de ninguna manera. Y ni siquiera estoy seguro de que esta configuración sobrevivirá por mucho tiempo en el caso de IBSS.