BitCtrl Systems GmbH
Foto Weissenfelserstr. 67
Suche:     
 BitCtrl Systems GmbH
Produkte Support News & Events Download Shop Partner Kontakt
  Allgemeine Funktionalität
  Netzwerk-Kommunikation
  Arbeitsweise
  Konsolenausgaben
  Preise
  Kommunikation und
  Netzwerk
  Software für QNX RTOS

bcc / netwatch

QNX® Netz-Kohärenz Dienstprogramm

Allgemeine Funktionalität Top

Das Programm netwatch sendet zyklisch Broadcasts ins Netzwerk und empfängt gleichzeitig solche Pakete die von anderen Knoten hereinkommen.

Wenn ein Paket empfangen wird, wird der Knoten als 'erreichbar' gekennzeichnet. Wenn kein Paket mehr von diesem Knoten über eine bestimmte TIMEOUT-Zeit empfangen worden ist, wird dieser als 'nicht erreichbar' gekennzeichnet. Alle Änderungen im Netzstatus werden auf der Systemkonsole angezeigt.

Das Programm beachtet nicht nur, ob bestimmte Knoten erreichbar oder nicht erreichbar sind, sondern auch über welches logische Netzwerk Pakete von den unterschiedlichen Knoten empfangen worden sind.

Der Erreichbarkeitsstatus der Knoten kann im FlexCtrl System abgebildet werden, indem das Programm als 'FlexCtrl Treiber' gestartet wird, der Status kann dann über die RTDB in PV's festgehalten werden.

Außer dem Treibermodus erfordert netwatch kein FlexCtrl System, um zu funktionieren.

Mit Hilfe einer speziellen Option kann netwatch so gestartet werden, daß die Tabelle der bekannten Knoten des Netzwerkmanagers zur Laufzeit so aktualisiert wird, dass nur 'erreichbare' Knoten bekannt sind.

So ist es möglich, dynamisch und zur Laufzeit eine aktuelle, den Netzstatus reflektierende Tabelle aller Knoten zu generieren.

In diesem Modus werden wiederholte Netzwerkzugriffe auf 'nicht erreichbare' Knoten vermieden. Diese Option kann im FlexCtrl System sehr nützlich sein, um zyklische Antwortzeitspitzen zu verringern, z.b. wenn ein Netzwerksegment oder aktive Netzwerkkomponenten ausfallen.

Netzwerk - Kommunikation Top

Die Kommunikation erfolgt unidirektional durch Ethernet Broadcasts, hierdurch kann auch in großen Netzwerken der Traffic gering gehalten werden (1 Paket pro Sekunde pro Knoten).

Die Kommunikation für das FlexCtrl System erfolgt hingegen über das QNX® - Netzwerk, denn jede Übertragung zur Echtzeitdatenbank verlangt einen eigenen Übertragungsvorgang (Unicasting) über das RTDB Interface.

Kommmunikationsdiagramm

Abbildung 1: Kommunikationsdiagramm
Arbeitsweise Top

Programmkern

1. Als Grundlage für die Netzwerküberwachung dient die netmap. Nach dem Programmstart wird dafür die netmap- Datei eingelesen. Nur Änderungen, die diese Knoten (inklusive logisches LAN) betreffen, werden berücksichtigt!
2. Während das Programm läuft wird zyklisch die Tabelle der bekannten Knoten vom Netzwerkmanager auf Änderungen hin untersucht.
3. Sobald netwatch Pakete von anderen Knoten empfängt, werden diese als 'erreichbar' markiert, andernfalls als 'nicht erreichbar'.
4. Alle Änderungen werden zeilenweise auf der Konsole ausgegeben. (siehe Konsolenausgaben)
Lokale Prozess - Daten netwatch Programmkern Abbildung 2: Lokale Prozess - Daten netwatch Programmkern

FlexCtrl Treibermodul

Der Status "erreichbar" oder "nicht erreichbar" kann in Form von PV's in der RTDB verwaltet werden.

Netwatch wird wie jeder andere FlexCtrl Treiber konfiguriert und gestartet.

Beispiel Treiberdatei

 

folgender Prozessmodellvorschlag...

erzeugtes Treiberkonfigurationsfile

z.b..../usr/fc6/project/prjname/drivers/netwatch_node1.drv

 1:   [network.node1.lan1.node2]
 2:        NID       = 2
 3:        LAN       = 1
 4:        FUNCTION  = 1
 5:
 6:   [network.node1.lan1.node3]
 7:        NID       = 3
 8:        LAN       = 1
 9:        FUNCTION  = 1
10:
11:   [network.node1.lan1.node4]
12:        NID       = 4
13:        LAN       = 1
14:        FUNCTION  = 1


Das Schlüsselwort "FUNCTION" in jedem Abschnitt beschreibt welche Aktion der Treiber auf diese PV anwenden soll.
Netwatch Treiber Funktion 1 schreibt den Zustand eines Knotens in eine BOOL-PV, hier z.B. "network.node1.lan1.node2".
Alle Parameter der Funktion sind im selben Abschnitt. Für Funktion 1 müssen NID und LAN übergeben werden.

Treiberdateien können weitestgehend im FlexCtrl System automatisch erzeugt werden.

Automatische Netzwerk - Rekonfiguration

Aktive Anpassung der Knotentabelle des Netzwerkmanagers aufgrund der von netwatch gesammelten Informationen.

FlexCtrl Konsolenausgaben Top

Aufbau einer Zeile

  1. <Datum Zeit:> : Ereigniszeit der Änderung
  2. <Knotennummer> : Ereignis bei QNX® Nid
  3. <Logisches Netz> : Ereignis bei QNX® Net
  4. <Status* netwatch> : momentane Erreichbarkeit
  5. <Status* netmgr> : aktuelle Net Konfiguration
  6. <Status* netmap> : Ausgangskonfiguration
  7. <[netwatch MAC;netmgr MAC;netmap MAC]> : bekannte MAC Adressen
 
  *Status:
 
  + ...     Knoten bekannt
  - ...      Knoten nicht bekannt
  L ...     lokal
  T ...     netwatch timeout
  D ...     netwatch death
  E ...     (unbekannter) Fehler

Beispiel

  A. bei Programmstart...
 
  > Fri Feb  8 18:18:21 2002 : 1   1   -++ [           t0;004005 41BD2F;004005 001BD2]
> Fri Feb  8 18:18:21 2002 : 6   1   -++ [           t0;00E029 6C2D60;00E029 6C2D60]
> Fri Feb  8 18:18:21 2002 : 13  1   -++ [           t0;004005 41C3CE;004005 41C3CE]
> Fri Feb  8 18:18:21 2002 : 24  1   L++ [00D0B7 B247B2;00D0B7 B247B2;00D0B7 B247B2]
> Fri Feb  8 18:18:21 2002 : 24  2   L++ [00E029 0B70B7;00E029 0B70B7;00E029 0B70B7]
> Fri Feb  8 18:18:21 2002 : 30  1   -++ [           t0;0000C0 EF86E7;0000C0 EF86E7]
> Fri Feb  8 18:18:21 2002 : 32  1   -++ [           t0;0000C0 2641F9;0000C0 2641F9]
 
  B. auf Knoten 30 läuft netwatch...
 
  > Fri Feb  8 18:18:41 2002 : 30  1   +++ [0000C0 EF86E7;0000C0 EF86E7;0000C0 EF86E7]
 
  C. auf Knoten 30 netwatch beendet (oder 30 wurde heruntergefahren)...
 
  > Fri Feb  8 18:19:16 2002 : 30  1   -++ [0000C0 EF86E7;0000C0 EF86E7;0000C0 EF86E7]
 
Preise Top

Für Auskünfte über aktuelle Preise senden Sie bitte eine Email mit dem Betreff 'netwatch-Preise' an E-Mail Adresse BitCtrl.

Home    Datenschutzerklärung    Haftungsausschluss    Impressum   
© 2011 BitCtrl Systems GmbH