12.2. AMP

Das ASCII Message Protocol (AMP) ist ein in der Automatisierungsindustrie weit verbreitetes Kommunikationsprotokoll für Supervisory Control and Data Acquisition (SCADA) und Systemintegration. Das ASCII Message Protocol (AMP) wurde entwickelt, um eine zuverlässige Kommunikation zwischen industriellen Geräten zu gewährleisten. Das ASCII Message Protocol (AMP) wird zur Überwachung und Steuerung von industriellen Automatisierungsgeräten wie speicherprogrammierbaren Steuerungen (SPS), Sensoren und Messgeräten verwendet.

Das Gerät verwendet die Funktion Deep Packet Inspection (DPI), um Datenpakete zu verwerfen, die gegen eines der angegebenen Profile verstoßen. Die AMP Enforcer-Funktion unterstützt Common ASCII Message Protocol (CAMP) und Non-Intelligent Terminal Protocol (NITP) unter Verwendung von TCP. Das Gerät verwendet die AMP Enforcer-Funktion zur Durchführung der DPI-Funktion für den CAMP- und NITP-Datenstrom. Das Gerät führt die DPI-Funktion auf der Grundlage der Programm- und Modusschutzfunktion und der angegebenen Profile aus.

Wenn das AMP Enforcer-Profil aktiv ist, wendet das Gerät die Profile auf den Datenstrom an.

Das Gerät lässt nur Datenpakete zu, die die in den folgenden Feldern angegebenen Werte enthalten, je nach Status der Schutzfunktion Programm und Modus:

  • Protokoll

  • Nachrichten-Typ

  • Address class

  • Device class

  • Memory address

  • Data word

  • Task code

  • Task code data

  • Block check characters

  • Error check characters

  • Sanity check

Das Menü enthält die folgenden Dialoge:

  • AMP Global

  • AMP-Profil

Sie finden den AMP-Enforcer unter Firewall → Enforcer → AMP.

AMP

12.2.1. AMP Einstellungen

Name

Name des AMP-Enforcers.

Mögliche Werte:

  • Zeichenfolge mit 0..100 Zeichen

Beschreibung

Beschreibung des AMP-enforcer.

Mögliche Werte:

  • Zeichenkette mit 0..250 Zeichen

Aktiviert

Unabhängig davon, ob der AMP-Enforcer aktiv ist oder nicht.

Mögliche Werte:

  • Aktiviert

  • Deaktiviert (Standardeinstellung)

Protokoll

Gibt den TCP-Payload Protocol Typen der Datenpakete an, auf die das Gerät das Profil anwendet. Das Gerät wendet das Profil nur auf Datenpakete an, die den angegebenen Wert im Feld Protokoll enthalten.

Mögliche Werte:

  • camp

    Common ASCII Message Protocol

  • **nitp*

    Non-Intelligent Terminal Protocol

  • any (default setting)

    Das Gerät wendet das Profil auf jedes Datenpaket an, ohne das Protokoll auszuwerten.

Task code

Voraussetzung ist, dass im Feld Protocol einer der folgenden Werte angegeben ist:

  • nitp

  • camp: Zusätzlich wird im Feld Message type ein hexadezimaler Wert im Bereich 00..03 oder der hexadezimale Wert FF angegeben.

  • any: Zusätzlich wird im Feld Message type der Wert any angegeben.

Mögliche Werte:

  • 01-9A

Task code data

Gibt die task code daten für den Task code an.

Voraussetzung ist, dass im Feld Protocol einer der folgenden Werte angegeben ist:

  • camp

    Zusätzlich werden im Feld Message type ein hexadezimaler Wert im Bereich 00..03 oder der hexadezimale Wert FF und im Feld Task code ein einzelner hexadezimaler Wert angegeben.

  • **nitp*

    Zusätzlich wird im Feld Task code ein einzelner hexadezimaler Wert angegeben.

Mögliche Werte:

  • 0..F

    Das Gerät wendet das Profil nur auf Datenpakete an, die die angegebenen task code Daten enthalten. Die maximale Länge beträgt 72 Bytes.

Message types

Gibt an, ob die Nachricht vom Typ Befehl oder Antwort ist. Voraussetzung ist, dass im Feld Protokoll der Wert camp angegeben ist.

Mögliche Werte:

  • 00-FF

Address Classes

Gibt die Art des Speichers an, auf den im Gerät zugegriffen werden soll.

Voraussetzungen:

  • Im Feld Protokoll wird der Wert camp angegeben.

  • Im Feld Message type wird ein hexadezimaler Wert im Bereich 00..03 oder der hexadezimale Wert FF angegeben.

Mögliche Werte:

  • any (Standardeinstellung)

    Das Gerät wendet das Profil auf jedes Datenpaket an, ohne die Address Class auszuwerten.

  • 0000..FFFF

    Das Gerät wendet das Profil nur auf Datenpakete an, die die angegebene Address Class enthalten.

Device class

Gibt die Art der Device Class (herstellerspezifisches Gerät) an, auf die zugegriffen werden soll.

Voraussetzungen:

  • Im Feld Protokoll wird der Wert camp angegeben.

  • Im Feld Message type wird ein hexadezimaler Wert im Bereich 00..03 oder der hexadezimale Wert FF angegeben.

Mögliche Werte:

  • any (Standardeinstellung)

    Das Gerät wendet das Profil auf jedes Datenpaket an, ohne die Device Class auszuwerten.

  • 0000..FFFF

    Das Gerät wendet das Profil nur auf Datenpakete an, die die angegebene Device Class enthalten.

Memory address

Gibt die Anfangsadresse des zu lesenden oder zu schreibenden Speichers an.

Voraussetzungen:

  • Im Feld Protokoll wird der Wert camp angegeben.

  • Im Feld Message type wird ein hexadezimaler Wert im Bereich 00..01 oder 04..09 oder der hexadezimale Wert FF angegeben.

Mögliche Werte:

  • any (Standardeinstellung)

    Das Gerät wendet das Profil auf jedes Datenpaket an, ohne die Memory Address auszuwerten.

  • 0000..FFFF

    Das Gerät wendet das Profil nur auf Datenpakete an, die die angegebene Memory Address enthalten.

Data word

Gibt die Startadresse an, die das Gerät zum Lesen von Daten aus dem Paket verwendet.

Voraussetzungen:

  • Im Feld Protokoll wird der Wert camp angegeben.

  • Im Feld Message type wird ein hexadezimaler Wert im Bereich 00..01 oder 08..09 oder der hexadezimale Wert FF angegeben.

Mögliche Werte:

  • any (Standardeinstellung)

    Das Gerät wendet das Profil auf jedes Datenpaket an, ohne das Data Word auszuwerten.

  • 0000..FFFF

    Das Gerät wendet das Profil nur auf Datenpakete an, die das angegebene Data Word enthalten.

**Sanity check*

Aktiviert/deaktiviert die Plausibilitätsprüfung für die Datenpakete.

Mögliche Werte:

  • aktiviert (Standardeinstellung)

    Die Plausibilitätsprüfung ist aktiv.

    Das Gerät prüft die Plausibilität der Datenpakete hinsichtlich Format und Spezifikation.

    Das Gerät blockiert die Datenpakete, die gegen die angegebenen Profile verstoßen.

  • deaktiviert

    Die Plausibilitätsprüfung ist inaktiv.

TCP Reset

Aktiviert/deaktiviert das Zurücksetzen der TCP-Verbindung im Falle einer Protokollverletzung oder wenn die Plausibilitätsprüfung einen Fehler feststellt.

Mögliche Werte:

  • aktiviert (Standardeinstellung)

    Das Zurücksetzen der TCP-Verbindung ist aktiv.

    Stellt das Gerät eine Protokollverletzung fest oder erkennt es einen Fehler bei der Plausibilitätsprüfung, so beendet es die TCP-Verbindung. Bei einem neuen Verbindungswunsch baut das Gerät die TCP-Verbindung wieder auf.

  • deaktiviert

    Das Zurücksetzen der TCP-Verbindung ist inaktiv.

Debug

Aktiviert/deaktiviert das Debugging in den Profilen.

Mögliche Werte:

  • Aktiviert

    Debugging ist aktiv.

    Das Gerät sendet das Reset-Paket zusammen mit den Informationen über den Abbruch der TCP-Verbindung. Voraussetzung ist, dass im Feld TCP-Reset das Kontrollkästchen markiert ist.

  • deaktiviert (Standardeinstellung)

    Das Debugging ist inaktiv.

12.2.2. Task Codes

AMP Task Codes
Aktiviert

Unabhängig davon, ob der AMP-Enforcer aktiv ist oder nicht.

Mögliche Werte:

  • Aktiviert

  • Deaktiviert (Standardeinstellung)

Beschreibung

Beschreibung des AMP-enforcer.

Mögliche Werte:

  • Zeichenkette mit 0..250 Zeichen

Task code

Mögliche Werte:

  • 01-9A

Mode

Gibt den für den Task Code geltenden Modus an.

Mögliche Werte:

  • **config*

    Gibt Befehle an, die mit der Änderung der Steuerungseinstellungen, des Anwendungsprogramms oder der Betriebsart verbunden sind.

  • nicht-konfig

    Gibt Lese-/Schreibbefehle an, mit Ausnahme der Befehle, die mit der Änderung der Steuerungseinstellungen, des Anwendungsprogramms oder des Betriebsmodus verbunden sind.

12.2.3. Globale AMP-Einstellungen

AMP Global Settings

Protect mode

Aktiviert/deaktiviert die Prüfung der Datenpakete, die die Task-Codes mit dem Wert config im Feld Mode enthalten.

Mögliche Werte:

  • aktiviert (Standardeinstellung)

    Die Inspektion ist aktiv.

    Das Gerät leitet nur die Datenpakete weiter, die mit den in den Profilen angegebenen Parametern übereinstimmen. Das Gerät verwirft Datenpakete, die den Wert config im Feld Mode für die in den Profilen angegebenen Task-Codes enthalten.

  • deaktiviert

    Das Gerät leitet die Datenpakete weiter, die den in den Profilen angegebenen Parametern entsprechen, einschließlich der Datenpakete, die Task-Codes mit dem Wert config im Feld Mode enthalten.

12.2.4. Aufgabencode

#

Bedeutung

01

Lesen Word Memory Random

02

Write Word Memory Area Random

30

Operational Status lesen

32

Programm in den Run-Mode

33

Zum Programm-Mode wechseln

34

Power-up ausführen

35

Vollständigen (Warm) Start ausführen

36

Teilweisen (Hot) Start durchführen

50

User Word Area Block lesen

51

User Word Area ab Adresse schreiben

58

Einstellen der Controller-Uhrzeit

59

Diskreter E/A-Status schreiben oder über Datenelementtyp erzwingen

5A

Schreibblock

6B

Diskreter E/A-Status lesen oder über Datenelementtyp erzwingen

71

Controller-Uhrzeit lesen

7T

SF/Loop-Prozessor-Mode lesen

7E

Random lesen

7F

Block lesen

88

Anzahl der SF-Modul-Task Codes pro Scan auswählen

89

Anzahl der SF-Modul-Task Codes pro Scan lesen

99

VME-Speicherbereich Block/Random schreiben

9A

VME-Speicherbereich Block/Random lesen

12.2.5. AMP Message types

#

Bedeutung

00

Modul General Query Befehl

01

Modul General Response Befehl

02

Packet T/C Befehl

03

Gepackte T/C-Antwort

04

Daten lesen Befehl

05

Daten lesen Antwort

06

Daten schreiben Befehl

07

Daten schreiben Antwort

08

Mem Exch Befehl

09

Mem Exch Antwort

FF

Protokollfehler