Lora-protocol-interfaz
Este proyecto implementa una versión personalizada del protocolo AODV. Es mucho más simple y no completo.
Esta programación debe ejecutarse en una máquina conectada a través del puerto serie a un módulo Lora. Implementa un protocolo AD-Hoc Multi-Hop-Routing con una interfaz gráfica. Además, este programa puede descubrir otros nodos, enviar y recibir mensajes.
Protocolo
Todos los pasos de AODV se implementan además:
- Expandir la búsqueda de anillos por RREQS (6.4)
- RREPS gratuitos y RREPS intermedios (6.6.2) y (6.6.3)
- Hello-Messages (6.9)
- Mantener la conectividad local (6.10)
- Reparaciones locales (6.12)
- Acciones después del reinicio (6.13)
- Interfaces (6.14)
- Subconjuntos
Restricciones:
- Max intenta: 3
- Tiempo de espera rreq: 30s
- Tiempo de espera ACK: 4s - 6s
- Tiempo de espera de carga: TimeOutack.max * RouteHopCount
- Ruta vida útil = tiempo de eliminación de ruta = 3 min = 180 s
- Duración de la lista negra = 3 min = 180 s
- Adressen 1-20 (ZB 144 -> 14)
Paquetes
Todos los paquetes están codificados como bytes
(5,11,13,1, hola)
[05 0B 0D 01 48 65 6C 6C 6F]
RREQ (transmisión):
- Tipo: 1
- Flag u
- Conteo de látigo
- ID / Broadcast ID / RREQ ID
- Dirección de origen
- Número de secuencia de origen
- Dirección de destino
- Número de secuencia de destino
RREP: (siempre se reconocen, AT+Dest = Anteriorhopaddr)
- Tipo: 2
- Conteo de látigo
- Dirección de origen
- Dirección de destino
- Número de secuencia de destino
- Lifetime in S (Lifetime Left)
Rerr (enviado si no recibió Send-Hop-Aack):
- Tipo: 3
- Recuento de destino
- dirección de destino inalcanzable
- número de secuencia de destino inalcanzable
- direcciones adicionales
- número de secuencia adicional
RREP-ACK (AT+Dest = AnteriorHopaddr):
- Tipo: 4
Send-text-request (str, at+dest = nexthopaddr)
- Tipo: 5
- Dirección de origen
- Dirección de destino
- Número de secuencia de mensajes
- Carga útil (máx. 30 byte)
Send-Hop-Aack (AT+Dest = Anteriorhopaddr)
- Tipo 6
- Número de secuencia de mensajes
Send-text-request-acack (Str-Aack, AT+Dest = Nexthopaddr)
- Tipo: 7
- Dirección de origen
- Dirección de destino
- Número de secuencia de mensajes
Despliegue
Requisitos
Construir
- Repositorio de clon
- Run:
mvn clean package - Ejecutar:
java -jar --module-path /usr/share/openjfx/lib --add-modules javafx.controls,javafx.fxml LoraProtocollInterface-1.0-SNAPSHOT-jar-with-dependencies.jar
Usar el lanzamiento
- Abrir la cremallera
- Ejecutar:
java -jar --module-path /usr/share/openjfx/lib --add-modules javafx.controls,javafx.fxml LoraProtocollInterface-1.0-SNAPSHOT-jar-with-dependencies.jar
Capturas de pantalla




