| |
DG2FEF > AX25 21.08.94 23:21l 86 Lines 4525 Bytes #-11728 (0) @ DL
BID : 2184DB0AISZW
Read: DG6MCR DC0ST DL3MGQ DG3MLI DL1GER DG5MJS DK1CF DL8MAQ DL5MCG DJ4LK
Read: DK6SQ DG6MHZ GUEST
Subj: re: DAMA & REJs
Path: DB0KCP<DB0AAB<DB0LNA<DB0RGB<DB0ABH<DB0BOX<DB0FP<DB0SRS<DB0SIF<DB0AIS
Sent: 940821/2103z @:DB0AIS.#HES.DEU.EU [Moerfelden JN49HX OP:DG3FBL] BCM1.21c
From: DG2FEF @ DB0AIS.#HES.DEU.EU
To : AX25 @ DL
Hallo DAMA-Gemeinde...
Um mal ein bisschen Licht in die "Herleitungen und Vermutungen" zu
bringen: In keiner mir bekannten AX.25 - Implementation wird ein I+
automatisch mit einem REJ beantwortet. REJs können nur aus einem einzigen
Grund (naja, aus 2 Gründen, dazu später) von einer Software generiert
werden, und zwar dann, wenn ein I-Frame mit einer unerwarteten Sequenz-
nummer empfangen wurde, sprich: Wenn ein I-Frame aus einer Kette von
mehreren verlorenging, aber ein darauf folgendes I-Frame korrekt decodiert
wurde.
In diesem Fall erzeugt die Software ein REJ, das die Sequenznummer des
eigentlich erwarteten, also verloren gegangenen I-Frames enthält.
Beim DAMA-Slave gibt's da keine Ausnahme, er sendet halt lediglich
statt dem REJv (response), ein REJ- (final), da das letzte I-Frame eines
Sendedurchgangs des Masters nun mal ein I+ ist. Bisherige Versionen des
DAMA-Slave senden auch durchaus ein REJv, wenn nämlich zusätzlich noch
das I+ am Ende des Master-Durchgangs verloren ging.
Falls also die Software verstärkt REJs produziert, kann das daran liegen,
daß die eigene Empfangslage schlecht ist, sei es aufgrund von Störungen
(HF/NF/Netz) oder wegen eines schlecht abgeglichenen Modemchips.
Warum aber tritt das nun bei DAMA so häufig auf? Hier könnte die Bit-
fehlerrate eine Rolle spielen. Da bei FlexNet-DAMA ein Sendedurchgang
meist aus 2 I-Frames am Stück besteht, was auf einem Flexnet-Einstieg
ohne DAMA bei viel Betrieb selten vorkommt, darf innerhalb der 4 Sekunden,
die 2 Frames als Übertragungszeit brauchen, kein Bit umkippen, sonst ist
das Frame futsch. Liegt die Fehlerrate z.B. bei einem Bit-Error alle 3
Sekunden, ist es kaum möglich, 2 Frames am Stück korrekt zu empfangen.
Ohne DAMA, wenn z.B. aufgrund der Kanalbelegung nur maximal ein Frame
pro User und Sendedurchgang ausgestrahlt wird, ist die Warscheinlichkeit
dieses eine Frame zu verlieren, geringer, weil einfach ein einzelnes Frame
eher in den fehlerfreien Zeitschlitz passt, es folgt auch kein REJ aus
dessen Verlust, da der Digipeater bei ausbleibender Bestätigung zunächst
mal pollt. Erst, wenn man diesen Poll bestätigt hat, bekommt man das Frame
noch mal, vorher kann keine Aussendung von weiteren I-Frames erfolgen.
Es gibt noch einen weiteren Grund, warum REJs gesendet werden können, und
zwar dann, wenn ein I-Frame empfangen wurden, das man schon mal bekommen
hat. In diesem Fall wird ein REJ gesendet, weil die Sequenznummer
des gerade empfangenen I-Frames nicht der entspricht, die man eigentlich
erwartet hat. Bei FlexNet-DAMA (wie's bei TNN ist, weiß ich nicht genau,
sorry, ich nehme an, ähnlich?) wird z.B. ein Frame vom Master erneut
ausgesendet, wenn die Bestätigung des Slaves beim ersten Versuch
verlorenging und das zu wiederholende Frame eine Länge von weniger als
80 Zeichen hat (I-Poll Threshold). Der Slave hat aber das Frame schon
empfangen, wartet also auf das folgende und schickt daher ein REJ mit
der Framenummer, die er eigentlich erwartet hat.
In diesem Fall sollte man sich das eigene Sendesignal mal genauer an-
hören, nötigenfalls mit einem 2. Empfänger und einem Oszi auch ansehen,
denn dann ist da irgendwas faul. Da sich bei DAMA das Poll/Final - Spiel
zwischen Master und Slave eigentlich kollisionsfrei abspielen sollte,
kann es nur am eigenen Sendesignal liegen, daß der Master die Bestätigung
des Slave nicht mitbekommt.
Oder aber:
Natürlich ist die Kollisionsfreiheit bei DAMA nur gegeben, wenn alle User
eine Software benutzen, die einen Slave-Modus eingebaut hat.
Je mehr User auf der Frequenz ohne DAMA-Slave Betrieb machen, desto größer
ist auch die Warscheinlichkeit, daß ein Sendedurchgang eines Slaves
durch Kollision zerstört wird.
Zumeist sendet ein TNC ohne DAMA-Slave dann, wenn der Digi seinen Sende-
durchgang gerade beendet hat, was natürlich die Bestätigung des gerade
gepollten Slaves zerstört.
Fazit: Wenn ihr wollt, daß die Rejects aufhören, dann optimiert eure Aus-
rüstung, sorgt dafür, daß alle User eures Digipeaters sich ans
Protokoll halten und ihre Software updaten, und hört vor allem
auf, den Fehler automatisch darauf zu schieben, "daß das RMNC-DAMA
noch nicht fehlerfrei läuft. DAMA ist für RMNC noch neuland, sicher
läuft's auch dort bald befriedigend." Zitat Ende. Punkt.
73s de Matthias
DG2FEF @DB0AIS.#HES.DEU.EU
Read previous mail | Read next mail
| |