Technologia protokolu

Protokol MeshCore wyjasniony

Techniczne wyjasnienie protokolu MeshCore: jak wiadomosci sa przesylane, dostarczane i optymalizowane w zdecentralizowanej sieci LoRa.

Czym jest protokol MeshCore?

Protokol MeshCore definiuje, jak wezly wymieniaja wiadomosci przez LoRa: nadawanie, odbior i przekazywanie przez repeatery.

Zasada podstawowa: klienci nie repeatuja. Przekazywanie realizuja repeatery (oraz serwery room z wlaczonym repeat), co ogranicza obciazenie kanalu.

Rzeczywista wydajnosc zalezy od ustawien radiowych i topologii: czestotliwosci, SF, szerokosci pasma, coding rate, mocy i rozmieszczenia repeaterow.

Struktura protokolu na wysokim poziomie

Traktuj to jako model funkcjonalny, a nie scisla oficjalna specyfikacje bajtowa:

1. Warstwa radiowa (LoRa PHY)

LoRa odpowiada za fizyczna transmisje sygnalu w pasmie ISM z konfigurowalnymi parametrami.

Czestotliwosc + SF + BW + CR + moc wyznaczaja kompromis zasieg/predkosc

2. Zachowanie transmisji i airtime

Praktyczne zachowanie sieci wynika z timingu, retransmisji i decyzji konfiguracyjnych.

Zachowanie zalezne od firmware/konfiguracji w granicach lokalnych regulacji

3. Przekazywanie mesh przez repeatery

Gdy brak znanej trasy, mozna uzyc flood discovery przez repeatery; po udanym dostarczeniu moze zostac nauczona trasa.

Flood discovery + forwarding po nauczonej trasie | wewnetrzny limit 64 hopow

4. Warstwa wiadomosci

Tresc aplikacyjna, np. tekst i room messages, jest przesylana kompaktowo i moze byc szyfrowana.

Kompaktowe wiadomosci + szyfrowanie na poziomie protokolu

Struktura wiadomosci (poziom koncepcyjny)

Nie publikuj wymyslonych stalych layoutow pakietow jako oficjalnej specyfikacji MeshCore. Uzyj modelu koncepcyjnego:

Wiadomosc MeshCore (koncepcyjnie):

[Kontekst nadania] [Kompaktowa tresc] [Kontekst dostarczenia/forwardingu]

- kontekst zrodla/celu
- payload dla wiadomosci bezposredniej lub room
- kontekst forwardingu i dostarczenia
- kontekst integralnosci i szyfrowania

Dokladny uklad wewnetrzny moze sie roznic zalezne od implementacji i wersji. W dokumentacji strony bezpieczniej opisywac zachowanie protokolu niz niepotwierdzone pola bajtowe.

Najwazniejsze formy wiadomosci

Wiadomosc bezposrednia

Komunikacja wezla z wezel miedzy dwoma uczestnikami.

Przyklad: prywatna wiadomosc z wezla A do wezla B

Wiadomosc room

Wiadomosc do room, aby wielu uczestnikow otrzymalo ten sam komunikat.

Przyklad: komunikat operacyjny w room regionalnym

Ruch discovery

Ruch pomagajacy ustalic poczatkowa osiagalnosc, gdy trasa nie jest jeszcze znana.

Przyklad: pierwsze dostarczenie przez repeatery bez nauczonej trasy

Ruch po nauczonej trasie

Po udanym dostarczeniu kolejne wiadomosci moga byc przekazywane bardziej bezposrednio przez znane repeatery.

Przyklad: pozniejszy unicast po wczesniej nauczonej trasie repeaterow

Status dostarczenia / raportowanie

Kontekst dostarczenia moze byc zwracany, by poprawic forwarding kolejnych wiadomosci.

Przyklad: raport dostarczenia z lista przebytej sciezki repeaterow

Tresc szyfrowana

Tresc wiadomosci moze byc szyfrowana dla poufnej komunikacji.

Przyklad: zaszyfrowana wiadomosc bezposrednia w grupie operacyjnej

Jak dziala routing?

MeshCore laczy discovery z ukierunkowanym forwardingiem przez repeatery.

Discovery przy nieznanej trasie

Gdy trasa nie jest znana, mozna uzyc flood discovery przez repeatery, aby dotrzec do celu.

Limit i strojenie praktyczne

Dokumentacja wskazuje wewnetrzny gorny limit 64 hopow. W praktyce zachowanie flood/forward stroi sie na poziomie repeatera (np. flood.max), zaleznie od terenu i airtime.

Zalety tego podejscia

🔄

Bardziej precyzyjny routing kolejnych wiadomosci

Po discovery wiadomosci moga isc wydajniej po znanych sciezkach repeaterow.

📡

Zdecentralizowane

Lokalna komunikacja mesh nie wymaga centralnej infrastruktury internetowej.

🔐

Obsluga szyfrowania

Wiadomosci moga byc szyfrowane bez opierania sie na niezweryfikowanych zalozeniach channel-slot.

Swiadome uzycie airtime

Kompaktowe wiadomosci i forwarding przez repeatery pomagaja ograniczac obciazenie kanalu.

📏

Zasieg przez repeatery

Multi-hop przez repeatery rozszerza lacznosc poza bezposredni zasieg radiowy.

🌐

Skalowalnosc regionalna

Dzieki strategicznemu rozmieszczeniu repeaterow zasieg i uzytecznosc rosna z czasem.

Kluczowe punkty techniczne

Czestotliwosc (UE) Praca w pasmie ISM 863-870 MHz zgodnie z lokalnymi zasadami
Szerokosc pasma Element profilu RF; wplywa na odpornosc i predkosc danych
Spreading Factor Wysszy SF zwieksza zasieg, ale zmniejsza predkosc
Coding Rate Wieksza korekcja bledow poprawia odpornosc, ale zmniejsza przepustowosc
Payload Praktyczny rozmiar zalezy od ustawien LoRa i konfiguracji
Szyfrowanie Obslugiwane; dokladny model zalezy od implementacji/konfiguracji

Najczesciej zadawane pytania o protokol

Czy MeshCore jest kompatybilny z Meshtastic?

Nie. To rozne implementacje protokolu i domyslnie nie sa bezposrednio interoperacyjne.

Jak szybka jest transmisja danych?

To zalezy od SF, szerokosci pasma, coding rate i srodowiska. LoRa stawia na zasieg i niezawodnosc, nie na wysoka przepustowosc jak WiFi.

Czy moge budowac wlasne aplikacje?

Tak, pod warunkiem projektowania pod ograniczona przepustowosc LoRa i zachowania zgodnosci z uzywana siecia. Zapoznaj sie z opisem formatow wiadomosci MeshCore przed projektowaniem aplikacji.

Co sie dzieje przy nakladajacym sie ruchu?

Przy jednoczesnym ruchu rosnie obciazenie kanalu. Dobre strojenie RF, dyscyplina wiadomosci i konfiguracja repeaterow ograniczaja kolizje i opoznienia.

Czy narzut protokolu to stala liczba bajtow?

Nie podawaj stalych wartosci bez oficjalnego zrodla. Rzeczywisty narzut i payload zaleza od implementacji i ustawien radiowych.

Czy MeshCore uzywa adresacji IP jak Internet?

MeshCore nie jest stosem TCP/IP. Nalezy unikac niezweryfikowanych twierdzen o stalych modelach adresacji internetowej.

Rozpocznij prace z MeshCore

Ten fundament pozwala poprawnie opisywac MeshCore: LoRa jako transport, forwarding przez repeatery i optymalizacja tras po udanym dostarczeniu.

Powiązane artykuły