hamnet70-gnuradio-legacy/doc/mkdocs-src/docs/protocol.md

2.3 KiB

Protokoll

Hamnet70 implementiert die untersten beiden Schichten des ISO/OSI-Modells: Bitübertragungsschicht und Sicherungsschicht.

Schichtenmodell

Bitübertrangunsschicht

TODO: Modulation (OFDM? QAM16?)

Header

Auf der Bitübertragungsschicht wird jedem Paket ein Header vorangestellt, der die Synchronisierung und das Auslesen der Paketlänge ermöglicht.

Format: tbd.

Sicherungsschicht

Ein Faltungscode wird zur Fehlerkorrektur angewendet. Zusätzlich wird eine CRC32 über das komplette Paket berechnet und bei Fehlern das Paket verworfen (wenn der Faltungscode diese Fehler nicht korrigieren konnte).

Headerformat:

Word Bits 31..24 23..16 15..8 7..0
0 Absender-Rufzeichen (47..16) [1]
1 Absender-Rufzeichen (15..0) [1] Absender-Stations-ID Empfänger-Stations-ID
2 Empfänger-Rufzeichen (47..16) [1]
3 Empfänger-Rufzeichen (15..0) [1] Next Protocol Flags

[1] codiert nach HAM-64

Stations-ID

Wird verwendet, um mehrere Stationen mit dem selben Rufzeichen zu unterscheiden (analog zu APRS/Packet Radio).

Next Protocol

Im Paket enthaltenes Protokoll:

Wert Protokoll
0x00 Steuerpaket / Fülldaten
0x10 IPv4
0x20 IPv6
0x30 IPX

Flags

Flags dienen zur Steuerung des Kontrollflusses. In normalen Datenpaketen sind keine Flags gesetzt.

Dieses Feld ist eine Oder-Verknüpfung der folgenden Werte:

Wert Information
0x01 Anmeldung am Zugangspunkt
0x02 Abmeldung vom Zugangspunkt
0x04 Datenabfrage an verbundene Station
0x08 Leere Bestätigung von verbundener Station
sonstige reserviert
0x80 Paket abgelehnt (Station nicht angemeldet)

Höhere Schichten

Höhere Schichten enthalten meistens das Internet Protocol (IP).

Verwendete Codierung

Kanalcodierung

Es kommt ein Faltungscode zum Einsatz.

Parameter: tbd.