Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

Decoding Junos Telemetry Interface Data With UNIX Utilities

Sie können UNIX-Dienstprogramm verwenden, um Junos Telemetry Interface auf einem Server zu entschlüsseln, oder einen Collector, der Daten von einem gerät Juniper Networks streamt. In diesem Beispiel erfahren Sie, wie Sie ein einzelnes Paket aus gestreamten Daten dekodieren.

Datensammler zur Decodierung der Daten vorbereiten

Für dieses Beispiel ist Folgendes erforderlich:

  • UNIX OS mit dem Netcat (nc)-Dienstprogramm.

  • Protokollpuffer-Compiler.

  • Junos Telemetry Interface protokollpufferte Dateien.

In diesem Verfahren wird gezeigt, wie der Collector zur Decodierung von Daten mit dem Ubuntu OS vorbereitet wird.

  1. Installieren Sie das Netcat-Utility.

  2. Installieren Sie den Protokollpufferpool.

  3. Installieren Sie die Protokollpuffer für die Entwicklerbibliothek.

  4. Vergewissern Sie sich, dass die Bibliotheksdateien installiert sind.

  5. Laden Sie die neueste Version der Pufferdateien des Junos Telemetry Interface Protocol herunter und installieren Sie sie.

    Navigieren Sie von einem Webbrowser zu der URL zum Herunterladen der Software "Alle Junos-Plattformen" auf der Juniper Networks Seite: https://www.juniper.net/support/downloads/. Wählen Sie den Namen der Junos OS Plattform und die Versionsnummer, gehen Sie zum Abschnitt Tools, und laden Sie das Paket Junos Telemetry Interface Datenmodelldateien herunter.

    Hinweis:

    Notieren Sie sich den Speicherort der extrahierten Dateien.

Daten beim Collector decodierung

In diesem Verfahren erfahren Sie, wie Sie Daten erfassen, Rohdaten dekodieren und die Protokollpufferdateien für die Decodierung der Daten verwenden.

So codieren Sie Daten:

  1. Erfassen Sie die Daten.

    Führen Sie netcat auf einem Ziel-Streaming-Server oder im Collector-Modus im UDP-Listener-Modus aus, um alle eingehenden Datagramme in einer Datei zu speichern. Verwenden Sie die im Streaming-Serverprofil konfigurierte Ziel-Portnummer auf Ihrem Juniper Networks Gerät.

    Hinweis:

    Dieser Befehl speichert Datagramme in einer Datei namens data.gpb . Führen Sie dieses Programm aus, um Daten zu erfassen. Wenn Sie keine Daten mehr empfangen möchten, beenden Sie das Programm, indem Sie das Break-Signal senden ( Control + C )

  2. Entkodieren Sie Rohdaten.

    Hinweis:

    Dieser Schritt ist optional. Dies ist nicht erforderlich, wenn Sie den codierten Nachrichtentyp der Daten kennen.

    Entschlüsseln Sie die in der data.gpb Datei gesendete Nachricht.

    Die nächste geschachtelte Struktur unter 2636 identifiziert den Sensortyp. Der mehrwertorientierte 2636 Wert identifiziert JuniperNetworksSensor die Nachricht, die in der Datei telemetry_top.proto definiert ist. In diesem Beispiel entspricht der 7 Ist-Identifikator der in der Datei definierten LogicalPort logical_port.proto Nachricht. Nutzen Sie diese Informationen im nächsten Schritt, um detailliertere Ergebnisse zu generieren.

  3. Codieren Sie die Nachricht mit Feldnamen.

    Führen Sie den Protokollpuffer mit der Decode-Option aus. Geben Sie außerdem den Nachrichtentyp der oberen Ebene ( ) und die TelemetryStream Datei mit der Nachrichtendefinition logical_port.proto an. Sie müssen auch die Goggle Protocol Buffers (gpb)-Bibliothek hinzufügen.