Re: PID $4C und $8C ?

ampr.protocols.ax25Zur Gruppenliste
Betreff: Re: PID $4C und $8C ?
Von: dl9sau@db0tud.ampr.org (thomas osterried)
Gruppen: ampr.protocols.ax25, ampr.de.tcpip.config
Organisation: amateur radio
Datum: 05. Feb 2002, 14:00:15

Wie sollten auch $4C und $08C auch anders behandelt werden, wenn sie der
Kernel (2.2.20 mit DK1KJD-AX.25 bei db0spp) nicht kennt. Verbindung trennen
ist m.E. das einzig Sinvolle um aus
einem undef. Protokoll hereuaszukommen.

das sehe ich nicht so.

eine ax25-connection kann gleichzeitig verschiedene protokolle
transportieren.
nur, weil ein einzelner layer hoeher (gerade) nicht verfuegbar ist, muss
die connection nicht beendet werden. stattdessen sollte das paket
stillschweigend verworfen werden. m.e. sieht das ISO/OSI auch so vor.
hoechstens koennte eine icmp-alike control-message gesendet werden - das
ax25 protokoll kennt sowas aber (leider) nicht.

[waere doch eigentlich toll, wenn der digi nicht mit "*** link failure
with db0aaa" auf PID_TEXT antwortet (was dann mit viel tricks bei ax25
s&f erkannt und geloescht werden muss), sondern diese message mit einer
anderen PID senden wuerde - aber das ist eine andere geschichte]

anderes beispiel: du faehrst netrom protocol mit deinem nachbarn. linux
kennt die PID.
jetzt sendet dieser ein PID_FLEXNET paket, um zu schauen ob du das auch
kannst. natuerlich willst jetzt nicht, dass das zum disconnect des ax25
layers fuehrt.

beispiel wampes:
static void
handleit(
struct ax25_cb *axp,
int pid,
struct mbuf **bpp
){
        struct axlink *ipp;

        for(ipp = Axlink;ipp->funct != NULL;ipp++){
                if(ipp->pid == pid)
                        break;
        }
        if(ipp->funct != NULL)
              
(*ipp->funct)(axp->iface,axp,axp->hdr.dest,axp->hdr.source,bpp,0
);
        else
                free_p(bpp);
}


mit WAMPES hatte ich uebrigens ein problem mit outgoing IP mode VC
connections an einen XNET.
der ax25 link sei down. wampes baut eine ax25 connection auf weil ein IP
paket fuer diesen ARP geroutet werden soll.
XNET sendet grundsaetzlich PID_TEXT CText's. wampes fuehrte daraufhin
seinerseits entweder einen unix login des xnet-Calls durch (wo sich xnet
und unix shell mit wachsender begeisterung ueber ihre fehlermeldungen
unterhielten), bzw. -wenn ax25-login disabled- disconnectete die
verbindung nach dem PID_TEXT CText (mit aehnlichen effekten wie oben
besprochen (jedes IP frame triggert einen neuen connect, jede
nicht-erwartete PID fuehrt zum disconnect des ax25-I layers)).

mit linux kernel 2.4.x habe ich dieses verhalten gegenueber XNET
ebenfalls beobachtet (noch jemand?). kernel 2.2.x habe ich im moment
nicht zur hand. kernel mit kjd-patch auch nicht. es waere interessant
das zu sammeln.
TNN sendet keinen PID=text CText bei bekannten IP mode VC ARPs.

noch ein wort zu XNET.
durch zufall sah ich neulich, dass xnet einen gerade noch aktiven AX25
layer (wo IP mode VC daten flossen) aktiv trennte, weil die session seit
genau 1h offen war, mit der PID=Text Meldung "Idle-Timeout". xnet
reseted den ax25 t5 timer (idle-timeout) wohl nur bei ax25 PID=text
paketen :((
das fuehrt ggf. zum sterben der IP.TCP session auf der remote seite
(hinter xnet), wenn ich selbst keien daten zu senden habe (also
meinerseits die connection nicht neu aufbaue), denn xnet selbst baut
nicht aktiv die ax25-session zu stino-usern auf bei anstehenden IP mode
VC paketen fuer meinen ARP.

73,
- thomas

Datum Thema#  Autor
30.01. * PID $4C und $8C ?8Thomas Thiers
31.01. `* Re: PID $4C und $8C ?7thomas osterried
01.02.  `* Re: PID $4C und $8C ?6Thomas Thiers
05.02.   `* Re: PID $4C und $8C ?5thomas osterried
07.02.    `* Re: PID $4C und $8C ?4Thomas Thiers
07.02.     `* Re: PID $4C und $8C ?3thomas osterried
12.02.      `* Re: PID $4C und $8C ?2Thomas Thiers
19.02.       `- Re: PID $4C und $8C ?1thomas osterried

"News-Portal" auf dem HAM-Web-Servfer DB0ERF.