Gluon: Solicitud de función: use las funciones de 802.11s para un mejor control de los enlaces de malla

Creado en 7 jul. 2017  ·  4Comentarios  ·  Fuente: freifunk-gluon/gluon

Para un mejor rendimiento, sería bueno tener control sobre algunos Mesh-Links
802.11s presenta algunas opciones que podríamos usar para controlar los enlaces de malla de un nodo.

Por ejemplo, podríamos proporcionar una lista blanca o negra de los nodos con los que se está relacionando el nodo:
https://github.com/o11s/open80211s/wiki/HOWTO#advanced -retoques

otros posibles parámetros 802.11s son:
Los posibles parámetros de malla son:

  • mesh_retry_timeout
  • mesh_confirm_timeout
  • mesh_holding_timeout
  • mesh_max_peer_enlaces
  • mesh_max_retries
  • malla_ttl
  • mesh_element_ttl
  • mesh_auto_open_plinks
  • mesh_hwmp_max_preq_retries
  • mesh_path_refresh_time
  • mesh_min_discovery_timeout
  • mesh_hwmp_active_path_timeout
  • mesh_hwmp_preq_min_interval
  • mesh_hwmp_net_diameter_traversal_time
  • mesh_hwmp_rootmode
  • mesh_hwmp_rann_interval
  • malla_gate_anuncios
  • mesh_fwding
  • mesh_sync_offset_max_neighor
  • malla_rssi_umbral
  • mesh_hwmp_active_path_to_root_timeout
  • mesh_hwmp_root_interval
  • mesh_hwmp_confirmation_interval
  • mesh_power_mode
  • malla_activa_ventana
  • mesh_plink_timeout

También sería bueno si los parámetros de volcado de la estación iw dev mesh0, como las tasas de bits y el rendimiento esperado, pudieran mostrarse en la página de estado. (por cierto: creo que el intervalo de baliza de 100 podría ser más largo).

enhancement rfc

Comentario más útil

Creo que la mayoría de las opciones de 11s no son muy interesantes para nosotros, ya que tomamos todas las decisiones de enrutamiento en un protocolo de enrutamiento de capa superior y solo usamos 11s como reemplazo del modo adhoc.

Se realizó un trabajo para permitir la inclusión de enlaces en la lista negra en freifunk-gluon/packages#118, pero no está terminado.

Aumentar el intervalo de baliza es probablemente una buena idea, solo necesitamos decidir un buen valor (además, todos los VIF usan el mismo intervalo de baliza, por lo que los cambios también afectarán las interfaces AP).

Todos 4 comentarios

Creo que la mayoría de las opciones de 11s no son muy interesantes para nosotros, ya que tomamos todas las decisiones de enrutamiento en un protocolo de enrutamiento de capa superior y solo usamos 11s como reemplazo del modo adhoc.

Se realizó un trabajo para permitir la inclusión de enlaces en la lista negra en freifunk-gluon/packages#118, pero no está terminado.

Aumentar el intervalo de baliza es probablemente una buena idea, solo necesitamos decidir un buen valor (además, todos los VIF usan el mismo intervalo de baliza, por lo que los cambios también afectarán las interfaces AP).

Aumentar el intervalo de la baliza no resolverá el problema de que una frecuencia esté saturada. No espere mucho aumento de ancho de banda de eso (máximo 10%). Lo que realmente desea es TDMA o al menos RTS/CTS en caso de BSS superpuestos. Por ejemplo, http://netshe.ru/ ha creado una implementación TDMA basada en batadv14 que no utiliza la pérdida de paquetes sino la información wifi nl80211 para los cálculos métricos (pero es de código cerrado y no se mantiene lo suficientemente bien).
ATH9K HMAC https://github.com/szehl/ath9k-hmac es una implementación de prueba de concepto del uso de un pequeño truco para hacer que TDMA funcione sin romper CSMA/CA. Con esto, uno podría asegurarse de que las redes AP no interfieran con las redes Mesh, pero necesitaría a alguien como NeoRaider para limpiar esto para el soporte del kernel ascendente. La interfaz de comunicación de enlace de red del espacio de usuario está escrita en C++ y primero debe reescribirse en C. Tampoco hay un controlador para la configuración dinámica de las reglas TDMA.

Tal vez encontré un problema que empeora el rendimiento de 802.11s.
802.11s tiene una característica llamada MCCA, que es un mecanismo para evitar colisiones que funciona de manera similar a TDMA. Todos los vecinos 802.11s están sincronizados (consulte Sincronización de malla 802.11s ) de forma predeterminada. Esto es asombrosamente preciso (promedio <10 microsegundos). A diferencia de TDMA, MCCA no usa intervalos de tiempo sino intervalos DTIM. Un nodo 802.11s puede solicitar a través de unidifusión o multidifusión dicho intervalo DTIM para su uso. Todos los nodos vecinos negarán o aceptarán esto a través de una respuesta dependiendo de cualquier superposición con sus propios intervalos. Por lo tanto, MCCA es una especie de función TDMA autoorganizada para 802.11s que es realmente genial y desearía haberlo sabido antes.

Por lo que puedo ver, los intervalos DTIM de la interfaz de malla no tienen efecto en los otros VIF.

Editar: creo que este no es el gran problema, ya que parece que MCCA no está implementado en absoluto en ath9k. ¿EDCA podría tener algún problema con múltiples VIF (utiliza la programación de colas)? ¿Qué pasa con los controladores de broadcom/ralink? Creo que uno podría verificar los IE si el código es de fuente cerrada o simplemente demasiado confuso. Desafortunadamente, no sé el formato correcto para eso y solo encontré esto:

Cada estación puede
habilite su soporte para MCCA y muestre este soporte configurando en 1 el bit MCCA habilitado,
que está en el subcampo de capacidad de malla del elemento de configuración de malla presente en
respuestas de balizas y sondas. Otra estación puede admitir MCCA pero no implementarlo (la
El subcampo Capacidad de malla también incluye un bit compatible con MCCA). En ese caso, la estación puede
participar en el mecanismo MCCA, pero no puede iniciar ninguna reserva MCCA.
consulte https://www.cwnp.com/uploads/802-11s_mesh_networking_v1-0.pdf

Cierre: la mayoría de las opciones de 11 no son relevantes para Gluon. Si encontramos una opción específica interesante para apoyar, se debe abrir una edición separada.

Ver también:

  • #421 (bloqueo de enlaces de malla individuales)
  • #2028 (configuración de intervalo de baliza)
¿Fue útil esta página
0 / 5 - 0 calificaciones