RFC 869

Host Monitoring Protocol

๐Ÿ“… published December 1983, from ietf

RFC 869: A Host Monitoring Protocol ๐Ÿฆ‹

Author: Robert M. Hinden, BBN Communications Corporation ๐Ÿ’… Date: December 1983 ๐Ÿ“… Replaces: the earlier HMP document IEN-197, A Host Monitoring Protocol ๐Ÿ”

Table of Contents ๐Ÿ“š

1   Introduction.......................................... 1
2   General Description................................... 3
3   Relationship to Other Protocols....................... 6
4   Protocol Operation.................................... 7
5   Header Formats....................................... 12
5.1   IP Headers......................................... 12
5.2   HMP Header......................................... 13
6   HMP Monitoring Center Message Formats................ 16
6.1   Message Type 100: Polling Message.................. 16
6.2   Message Type 101: Error in Poll.................... 18
6.3   Message Type 102: Control acknowledgment........... 20
A   Appendix A - IMP Monitoring.......................... 21
A.1   Message Type 1: IMP Trap........................... 21
A.2   Message Type 2: IMP status......................... 24
A.3   Message Type 3: IMP Modem Throughput............... 29
A.4   Message Type 4: IMP Host Throughput................ 32
B   Appendix B - TAC Monitoring.......................... 35
B.1   Message Type 1: TAC Trap Message................... 35
B.2   Message Type 2: TAC Status......................... 38
B.3   Message Type 3: TAC Throughput..................... 42
C   Appendix C - Gateway Monitoring...................... 47
C.1   Gateway Parameters................................. 47
C.2   Message Type 1: Gateway Trap....................... 48
C.3   Message Type 2: Gateway Status..................... 51
C.4   Message Type 3: Gateway Throughput................. 58
C.5   Message Type 4: Gateway Host Traffic Matrix........ 64
C.6   Message Type 6: Gateway Routing.................... 67

1. Introduction โœจ

okay so the Host Monitoring Protocol (HMP) is used to collect information from hosts in various networks ๐ŸŒธ A host is defined as an addressable Internet entity that can send and receive messages, and that's a super broad group: server hosts, personal work stations, terminal concentrators, packet switches, and gateways all count ๐Ÿ’– Right now HMP is being used to collect information from Internet Gateways and TACs, and implementations are being designed for other hosts too ๐Ÿ”ฅ It's built to monitor hosts spread across the internet as well as hosts sitting inside a single network. iconic range, honestly ๐ŸŒˆ

This document is organized into three parts ๐ŸŽ€ Sections 2 and 3 cover a general description of the Host Monitoring protocol and how it relates to other protocols. Section 4 explains how it operates, and Sections 5 and 6 contain the descriptions and formats of the HMP messages. After that come the appendices, which show the formats of messages sent by some of the hosts that use HMP to gather their monitoring info. โš ๏ธ Those appendices are included as examples only and are not part of the HMP protocol, so don't get it twisted ๐Ÿ’…

Heads up: the appendices are just examples, not the actual protocol. Keep that in mind when you read them ๐Ÿ™ˆ

This document replaces the previous HMP document IEN-197, A Host Monitoring Protocol ๐Ÿฆ‹


2. General Description ๐Ÿ’œ

The Host Monitoring Protocol is a transaction-oriented (i.e., connection-less) transport protocol ๐Ÿงš It was designed to make certain simple interactions between two internet entities easy, where one of them may be considered to be "monitoring" the other ๐Ÿ‘€ When we talk about the protocol, we'll sometimes call these the "monitoring host" and the "monitored entity." HMP was meant to be a useful transport protocol for applications that involve any or all of these three kinds of interactions:

  • The monitored entity sometimes needs to send unsolicited datagrams to the monitoring host. The monitoring host should be able to tell when messages from the monitored entity have been lost in transit, and it should be able to determine the order in which the messages were sent. BUT the application doesn't require that all messages get received, or that they arrive strictly in the same sequence they were sent in ๐ŸŒ€
  • The monitoring host needs to gather data from the monitored entity using a query-response protocol at the application level. It's important to be able to tell which query a particular response is answering, and to tell whether successive responses are duplicates of earlier ones ๐Ÿ”
  • The monitoring host must be able to start certain control functions in the monitored entity, possibly including setting parameters in the monitored entity. The monitoring host needs to know if the control function has actually been carried out โœ…

In addition, we assume that a given monitoring host may be monitoring several different types of entities at the same time, and may be gathering several different types of data from a given type of monitored entity. Several different monitoring hosts may be watching the same entity, and several processes on the same host may even be monitoring the same entity. multi-tasking bestie energy ๐Ÿคนโ€โ™€๏ธ

Messages going from the monitoring host to the monitored entity are called "polls" ๐Ÿ“ฉ They need to carry enough information to let the monitored entity figure out the following:

  • The monitored entity must be able to determine that this message is in fact a poll from a monitoring host. The "system type," "message type," and "password" fields in the HMP header were defined to handle this ๐Ÿ”
  • The monitored entity may need to identify the particular process on the monitoring host that sent this poll, so it can send its response back to the right process. The "port number" field in the HMP header was defined for exactly this ๐ŸŽฏ
  • The monitored entity must be able to indicate to the monitoring host, in its response, precisely which query is being answered by a particular response. The "sequence number field" was defined for this job ๐Ÿงพ
  • The monitored entity must be able to determine just what kind of action the monitoring host is requesting. In other words, the HMP transport protocol must provide some way of multiplexing and demultiplexing the various higher-level applications that use it. The "R-message type" and "R-subtype" fields of the polling message were defined to meet this need ๐Ÿ”€

Messages going from the monitored entity to the monitoring host need to carry enough information for the monitoring host to figure out the following:

  • The monitoring host must be able to route this message to the correct process. The "port number" field handles this ๐Ÿ›ค๏ธ
  • The monitoring host must be able to match up received messages with the polls, if any, that triggered them. The "returned sequence number" field in the HMP header was defined to make that happen ๐Ÿงฉ
  • The monitoring host must be able to determine which higher-level application should receive a particular message. The "system type" and "message type" fields are used for this purpose ๐ŸŽ€
  • The monitoring host must be able to determine whether some messages of a given type were lost in transit, and whether messages have arrived out of sequence. Strictly speaking this job belongs to the application and not the transport layer, but the HMP header still has a "sequence number" for this purpose ๐Ÿซถ

On top of all that, a simple one's complement checksum is provided in the HMP header to detect data corruption during transmission ๐Ÿ›ก๏ธ


3. Relationship to Other Protocols ๐Ÿงšโ€โ™€๏ธ

The Host Monitoring Protocol is a transport protocol designed to fit into the layered internet protocol environment ๐Ÿฐ It runs on top of the Internet/ICMP protocol and under the applications that need its services. Here's how it all stacks up ๐Ÿ‘‡

     +------+    +------+  +-------+      +------+
     |TELNET| ...|  FTP |  |GATEWAY|  ... | TAC  |   Application Layer
     +------+    +------+  +-------+      +------+
        |          |           |             |
        |          |           |             |
        |__________|           |_____________|
              |                       |
           +------+               +-------+
           |  TCP |               |  HMP  |          Transport Layer
           +------+               +-------+
              |                       |
              |                       |
           +-------------------------------------+
           |    Internet Protocol & ICMP         |   Internetwork Layer
           +-------------------------------------+
                              |
                  +------------------------+
                  | Local Network Protocol |         Network Layer
                  +------------------------+

If you don't need internetwork services, it should be possible to run HMP without an Internetwork layer ๐ŸŒ™ As long as HMP's service requirements (addressing, protocol demultiplexing, and occasional delivery) are met, it should be able to run over a variety of protocols. flexible queen ๐Ÿ‘‘


4. Protocol Operation ๐ŸŒŸ

HMP is built around the idea that most of the intelligence needed to monitor a host should live in a monitoring center, not in the host itself ๐Ÿข The host should only be required to collect data and send it to the monitoring center, either spontaneously or when the monitoring center asks for it ๐Ÿ“ฌ The host isn't responsible for making sure the data arrives reliably (except that it checksums the data). Instead, the monitoring center is responsible for making sure the data it requests gets received correctly ๐Ÿซถ the host does the grunt work, the center does the babysitting ๐Ÿ˜ญ

So HMP is based on polling hosts for messages ๐Ÿ“ฃ When the monitoring center needs a particular type of data (for example, throughput data), it sends a poll to the host asking for that type of report. The host, once it gets the poll, responds with its latest set of collected data. If the host finds that the poll is wrong (for example, the poll asks for throughput data but the host isn't collecting throughput data), it responds with an error message โŒ The monitoring center waits a reasonable amount of time for the host to answer its poll. If no response comes back, it sends another poll for the same data ๐Ÿ” That way, if either the poll or the response gets lost, the correct data still gets collected. no data left behind ๐Ÿ’…

HMP is used to collect three different classes of data:

  • Spontaneous Events (or Traps) โšก
  • Current status ๐Ÿ“Š
  • Statistical data collected over time ๐Ÿ“ˆ

These classes let a host send data in whatever way suits it best ๐ŸŽจ For instance, the host can quickly tell the monitoring center that a particular event has happened by sending a trap message, while the monitoring center reliably collects the host's throughput and accounting data in the background. Traps report spontaneous events to the monitoring center as they occur. To keep their delivery prompt, the ๐Ÿ’…

To be continued in part 2 ๐Ÿฆ‹ The next bit picks up right where we left off

traps are sent as datagrams with no reliability mechanisms (except checksums) such as acknowledgments and retransmissions. ๐Ÿฆ‹ so no ack, no retry, just vibes and a checksum ๐Ÿ’…

Trap messages usually contain an identifier to indicate which event is being reported, the local time in the host that the event occured, and data pertinent to the event. โœจ The data portion is intended to be host and event specific, so it's different for every event, iykyk ๐ŸŒธ

Status information is the second type of data collected by the Host Monitoring Protocol, and it describes the current state of the host ๐ŸŽ€ Status is useful at one point in time, but it does not have to be collected cumulatively over a certain period. Only the latest status is of interest, because old status provides no useful information ๐Ÿ™ˆ The monitoring center collects status information by sending a poll for status to a host. Upon receiving the poll, the host responds with its latest status information, always creating a new status message. If the monitoring center does not receive a response to its poll, it sends another poll. The monitoring center can decide if the host is up or down based on whether the host responds to its polls ๐Ÿซถ

The third type of data is statistical data, and it's giving main character energy ๐Ÿ‘‘ These are measurements taken over time, such as the number of packets sent or received by a host and the count of packets dropped for a particular reason. It is important that none of this type of data be lost ๐Ÿ˜ญ Statistical data is collected in a host over a time interval. When the collection time interval expires, the current data is copied to another area, and the counters are cleared. The copied data is sent to the monitoring center when the host receives a poll requesting statistical information. If another poll is received before the collection time interval has expired, the data in the buffer is sent again. The monitoring center can detect duplicate messages by using the sequence number in the header of the message, since each type of statistical data has its own sequence number counter ๐Ÿงš

The collection frequency for statistics messages from a particular host must be relatively long compared to the average round trip message time between the monitoring center and that host in order to allow the monitoring center to re-poll if it does not receive an answer ๐Ÿ“ With this restriction, it should be possible to avoid missing any statistics messages. Each statistics message contains a field giving the local time when the data was collected and the time at which the message was sent. This information allows the monitoring center to schedule when it sends a poll so that the poll arrives near the beginning of each collection period. This ensures that if a message is lost, the monitoring center will have sufficient time to poll again for the statistics message for that period ๐Ÿ’œ

The HMP also includes a provision to send data to and read parameters in hosts. โญ The data may be used to set switches or interval timers used to control measurements in a host, or to control the host itself (e.g. a restart switch). The format of the data and parameters is host specific ๐ŸŒˆ

To send data to a host, the monitoring center sends the host a poll for a control-acknowledgment message. This poll message includes the type of the data and the data being sent. When the host receives this poll, it processes the data and responds with a control-acknowledgment message ๐Ÿ”ฅ

To read parameters in a host, the monitoring center will send a poll for parameters to the host. This poll includes the type of the parameters being read. When the host receives this poll, it will send the parameters of the requested type to the monitoring center in a parameters message ๐Ÿ’…


5. Header Formats โœจ

Host Monitor Protocol messages have the following format:

                    +----------------+
                    |  Local Network |
                    |    Header(s)   |
                    +----------------+
                    |  IP header     |
                    +----------------+
                    |      HMP       |
                    |     Header     |
                    |                |
                    +----------------+
                    |    D           |
                    |      A         |
                    |        T       |
                    |          A     |
                    +----------------+
                    |  Padding       |
                    +----------------+

5.1. IP Headers

HMP messages are sent using the version 4 IP header as described in RFC-791 "Internet Protocol." The HMP protocol number is 20 (decimal). The time to live field should be set to a reasonable value for the hosts being monitored ๐Ÿฆ‹

All other fields should be set as specified in RFC-791 ๐ŸŽ€

5.2. HMP Header

The HMP header format is:

                  0             0 0             1
                  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
                 +---------------+---------------+
               0 |  System Type  | Message Type  |
                 +---------------+---------------+
               1 |  Port Number  | Control Flag  |
                 +---------------+---------------+
               2 |        Sequence Number        |
                 +---------------+---------------+
               3 |  Password or Returned Seq. #  |
                 +---------------+---------------+
               4 |   One's Complement Checksum   |
                 +---------------+---------------+

HMP FIELDS:

System Type

Message Type

The combination of system type and message type determines the format of the data in the monitoring message ๐Ÿงš

The system types which have been defined are:

  System Type  | Meaning
----------------+-----------------
       1        | Monitoring Host
       2        | IMP
       3        | TAC
       4        | Gateway
       5        | SIMP
       6        | BBN VAX/C70 TCP
       7        | PAD
       8        | Reserved
       9        | TIU
       10       | FEP
       11       | Cronus Host
       12       | Cronus MCS

Message types are defined and used for each system type according to the needs of that system. The message types currently defined are:

    Type   | Description
----------+--------------------------
          |
   1      | Trap
   2      | Status
   3      | Thruput
   4      | HTM - Host Traffic Matrix
   5      | Parameters
   6      | Routing
   7      | Call Accounting
          |
   100    | Poll
   101    | Error
   102    | Control Acknowledgment

Port Number

This field can be used to multiplex similar messages to and from different processes in one host. It is currently unused ๐ŸŒธ

Control Flag

This field is used to pass control information. Currently Bit 15 is defined as the "More bit", which is used in a message in response to a poll to indicate that there is more data to poll for ๐Ÿ™ˆ

Sequence Number

Every message contains a sequence number. The sequence number is incremented when each new message of that type is sent ๐Ÿ”ฅ

Password or Returned Sequence Number

The Password field of a polling message from a monitoring center contains a password to verify that the monitoring center is allowed to gather information. Responses to polling messages copy the Sequence Number from the polling message and return it in this field for identification and round-trip time calculations ๐Ÿ’œ

Checksum

The Checksum field is the one's complement of the one's complement sum of all the 16-bit words in the header and data area ๐Ÿซถ


6. HMP Monitoring Center Message Formats ๐Ÿ‘‘

6.1. Message Type 100: Polling Message

Description

The monitoring center will send polls to the hosts it is monitoring to collect their monitoring data. When the host receives a poll it will return a message of the type requested. It will only answer a poll with the correct system type and password, and it will return an error message (Message Type 101) if it receives a poll for the wrong system type or an unsupported message type ๐Ÿ“

The Poll message includes a facility to send data to a monitored host. The poll message to send data consists of a poll for a Control Acknowledgment message (type 102) followed by the data. The R-Subtype specifies the type of the data that is being sent. When the monitored host receives a Poll for a Control acknowledgment, it processes the data, and then responds with a Control acknowledgment message. If the monitored host can not process the data, it should respond with an error message โญ

A poll to read parameters consists of a poll for a Parameters message. The R-Subtype specifies the type of parameters being read. When the monitored host receives a poll for a Parameters message, it responds with a Parameters message containing the requested information ๐ŸŒˆ

A polling message has the following form:

          0             0 0             1
          0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
         +---------------+---------------+
       0 | R-Message Type|   R-Subtype   |
         +---------------+---------------+

         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
       1 |             Data              |
         +                               +
       2 |                               |
         +                               +
         .                               .
         .                               .
       n |                               |
         +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

HMP FIELDS

System Type

The type of machine being polled.

Message Type

Polling Message = 100

Port Number

Unused

Control Flag

Unused

Sequence Number

The sequence number identifies the polling request. The Monitoring Center will maintain separate sequence numbers for each host it monitors. This sequence number is returned in the response to a poll and the monitoring center will use this information to associate polls with their responses and to determine round trip times ๐Ÿฆ‹

Password

The monitoring password ๐Ÿ”ฅ

POLL FIELDS

R-Message Type

The message type requested.

R-Subtype

This field is used when sending data and reading parameters and it specifies the type of the data being sent or parameters being read ๐Ÿ’…

Data

When the poll is requesting a Control Acknowledgment message, data is included in the poll message. A poll for any other type of message does not include any data. The contents of the data is host specific ๐Ÿงš

6.2. Message Type 101: Error in Poll โœจ

Description

okay so this is the message that gets sent back when a poll comes in wrong ๐Ÿ™ˆ it tells you exactly what went sideways, bestie ๐Ÿ’…

An error message has the following form:

         0             0 0             1
         0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
        +---------------+---------------+
      0 |          Error Type           |
        +---------------+---------------+
      1 | R-Message Type|   R-Subtype   |
        +---------------+---------------+

HMP FIELDS

System Type The type of machine sending message. ๐Ÿ–ฅ๏ธ

Message Type Error Message = 101 ๐Ÿ’œ

Port Number Unused

Control Flag Unused

Sequence Number A 16 bit number incremented each time an error message is sent. โญ

Returned Sequence Number The Sequence Number of the polling message which caused the error. This is how you know exactly which poll messed up ๐Ÿซถ

ERROR MESSAGE FIELDS

Error Type This field specifies the nature of the error in the poll. The following error types have been defined, so pick your favorite ๐ŸŒˆ

1 = Reason unspecified.
2 = Bad R-Message Type.
3 = Bad R-Subtype.
4 = Unknown parameter
5 = Invalid parameter value
6 = Invalid parameter/value format
7 = Machine in Loader

R-Message Type R-Subtype These fields identify the poll request in error. So it's basically the receipts ๐Ÿงพ๐Ÿ’€


6.3. Message Type 102: Control acknowledgment ๐ŸŽ€

Description

this one is sent in response to a poll for this type of message. it's the "yes bestie, got it" ๐Ÿฆ‹ it's used to acknowledge poll messages that are used to set parameters in the monitored host.

The Control acknowledgment has no fields other than the HMP header. literally just vibes and the header ๐ŸŒธ

HMP FIELDS

System Type The type of the system sending the message.

Message Type Control acknowledgment = 102

Port Number Unused

Control Flag Unused

Sequence Number A 16 bit number incremented each time a Control acknowledgment message is sent. โœจ

Returned Sequence Number The Sequence Number of the polling message which requested this message. ๐Ÿ’–


A. Appendix A - IMP Monitoring ๐Ÿงš

A.1. Message Type 1: IMP Trap ๐Ÿšจ

Description

when a trap happens, it gets buffered in the IMP and sent as soon as possible ๐Ÿƒโ€โ™€๏ธ๐Ÿ’จ trap messages are unsolicited, so nobody asked, they just show up, iconic ๐Ÿ‘‘ if traps happen in close sequence, several traps may be sent in one message. efficient queen behavior ๐Ÿ“

through the use of sequence numbers, it will be possible to determine how many traps are being lost. ngl that's so smart ๐Ÿง  if it is discovered that many are lost, a polling scheme might be implemented for traps. ok so plan B ๐ŸŒˆ

A IMP trap message has the following form:

             0             0 0             1
             0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
            +---------------+---------------+
          0 |       # of traps lost         |
            +---------------+---------------+
          1 :         first                 :
          . :             trap              :
          . :                 data          :
          . +---------------+---------------+
          . :         additional            :
          . :             trap              :
          . :                 data          :
            +---------------+---------------+

HMP Fields

System Type IMP = 2

Message Type IMP Trap Message = 1

Port Number Unused

Control Flag Unused

Password Unused

Sequence Number A 16 bit number incremented each time a trap message is sent so that the HM can order the received trap messages and detect missed messages. the HM gets to play detective ๐Ÿ•ต๏ธโ€โ™€๏ธ๐Ÿ”

IMP TRAP FIELDS

# of traps lost Under certain conditions, an IMP may overflow its internal trap buffers and be unable to save traps to send. This counter keeps track of such occurrences. so it's like the receipts for the drama that got dropped ๐Ÿ’€

Trap Reports There can be several blocks of trap data in each message. The format for each such block is below. ๐Ÿ“ฆ

            +---------------+---------------+
            |             Size              |
            +---------------+---------------+
            |             Time              |
            +---------------+---------------+
            |            Trap ID            |
            +---------------+---------------+
            :             Trap              :
            :             Data              :
            +---------------+---------------+

Size Size is the number of 16 bit words in the trap, not counting the size field. ๐Ÿ“

Time The time (in 640 ms. units) at which the trap occurred. โฐ This field is used to sequence the traps in a message and associate groups of traps. it's the timeline, bestie ๐ŸŽž๏ธ

Trap ID This is usually the program counter at the trap. The ID identifies the trap, and does not have to be a program counter, provided it uniquely identifies the trap. as long as it's unique, it's giving main character energy ๐Ÿฆ‹

Trap Data The IMP returns data giving more information about the trap. There are usually two entries: the values in the accumulator and the index register at the occurrence of the trap. the receipts, again ๐Ÿงพโœจ


A.2. Message Type 2: IMP status ๐Ÿ“Š

Description

the status message gives a quick summary of the state of the IMP. ok so it's basically the glow-up check-in ๐Ÿ’– the status of the most important features of the IMP are reported, as well as the current configuration of the machine.

The format of the status message is as follows:

             0             0 0             1
             0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
            +---------------+---------------+
          0 |    Software Version Number    |
            +---------------+---------------+
            |       Last Trap Message       |
            +---------------+---------------+
            | Max # Hosts   | Max # Modems  |
            +---------------+---------------+
            | Max # Channels|  Max # IMPs   |
            +---------------+---------------+
            |      Package bits 0-15.       |
            +---------------+---------------+
          5 |      Package bits 16.-31.     |
            +---------------+---------------+
            |                               |
            +          Crash                +
            |                               |
            +                Data           +
            |                               |
            +---------------+---------------+
            |           Anomalies           |
            +---------------+---------------+
         10 |   Free Pool   |   S+F Pool    |
            +---------------+---------------+
            |Reassembly Pool| Allocated Pool|
            +---------------+---------------+
            | HIHD0 | HIHD1 | HIHD2 | HIHD3 |
          . +---------------+---------------+
          . : HIHD4 | ...............       :
          . +---------------+---------------+
          . +---------------+---------------+
          . |        Modem                  |
          . +             State             +
          . |                  Data         |
          . +---------------+---------------+
          . :         Modem   State         :
          . :             Data......        :
            +---------------+---------------+

HMP FIELDS

System Type IMP = 2

Message Type IMP status message = 2

Port Number Unused

Control Flag Unused

Sequence Number A 16 bit number incremented each time a status message is sent. ๐Ÿ”ข

Password The password contains the sequence number of the polling message to which this message responds. so it's the receipts again, but make it secure ๐Ÿ”

IMP STATUS FIELDS

Software Version Number The IMP version number. ๐Ÿท๏ธ

Last Trap Message Contains the sequence number of the last trap message sent to the HM. This will allow the HM to detect how many trap messages are being lost. the HM keeping tabs, no cap ๐Ÿ‘€

Hosts The number of configured hosts in this system.

Modems The number of configured modems in this system.

Channels The maximum possible number of IMP-IMP channels in this system.

IMPs The maximum possible number of IMPs in this system.

Package Bits This is a bit encoded word that reports the set of packages currently loaded in the system. The table below defines the bits. ๐Ÿ“‹

              Bit    Package
           (octal)
          (1st Word)
              1      VDH
              2      Logical address tables
              4      Mezmode
             10      Cumulative Statistics
             20      Trace
             40      TTY
            100      DDT
            200      HDLC
            400      HDH
           1000      Cassette Writer
           2000      Propagation Delay Measurement
           4000      X25
          10000      Profile Measurements
          20000      Self Authenticating Password
          40000      Host traffic Matrix
         100000      Experimental/Special

          (2nd Word)
              1      End-to-end Statistics
              2      Store and Forward statistics

Crash Data Crash data reports the circumstances surrounding an unexpected crash. The first word reports the location of the crash and the following two are the contents of the accumulator and index registers. ๐Ÿ’ฅ yikes, but we're documenting it ๐Ÿซถ

Anomalies Anomalies is a collection of bit flags that indicate the state of various switches or processes in the IMP. These are very machine dependent and only a representative sampling of bits is listed below. it's a lot, so here's the highlight reel ๐ŸŽž๏ธ

         Bit       Meaning
       (octal)
         20      Override ON
        200      Trace ON
       1000      Statistics ON
       2000      Message Generator ON
       4000      Packet Trace ON
      10000      Host Data Checksum is BAD
      20000      Reload Location SET

Buffer Pool Counts These are four bytes of counters indicating the current usage of buffers in the IMP. The four counters are: free buffers, store-and-forward buffers, reassembly buffers and allocated buffers. ๐Ÿงบ

HIHD0 - HIHDn Each four bit HIHD field gives the state of the corresponding host. ๐Ÿฉท

     Value   Meaning
       0       UP
       1       ready line down
       2       tardy
       3       non-existent

Modem state data is six fields packed into four words ๐ŸŽ€โœจ. The first field is 4 bits and tells you the line speed. The second is 4 bits and is the number of the modem that the neighboring IMP uses on this line. The third is 8 bits and counts the line protocol ticks covered by this report. The fourth is 1 bit and says whether the line is down(1) or up(0). The fifth is 7 bits and is the IMP number of the neighbor IMP on the line. The sixth is 8 bits and counts the missed protocol packets over the interval from the third field ๐Ÿ’…

-28-


A.3 Message Type 3: IMP Modem Throughput โœจ

Description

okay so the modem throughput message reports traffic stats for every modem in the system ๐Ÿ“Š The IMP collects this data at regular intervals and saves it until the HM polls for it. If the HM misses a period, the new results just overwrite the old ones, no drama ๐Ÿ™ˆ Two time stamps bracket the collection interval (data-time and prev-time), and they're how you can tell reports went missing. mess-time tells you when the message was sent ๐Ÿ•ฐ๏ธ

One message can fit up to fourteen modems in a single packet ๐Ÿ“ There's also a provision for splitting things up across packets by including a modem number for the first entry in the packet. That field isn't immediately useful, but if machine sizes grow past fourteen modems, or if modem stats get more detailed and need more than three words per modem, it can keep the message inside a single ARPANET packet. iconic planning, honestly ๐Ÿ‘‘

The format of the modem throughput message goes like this:

                  0             0 0             1
                  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
                 +---------------+---------------+
               0 |           Mess-Time           |
                 +---------------+---------------+
                 |    Software Version Number    |
                 +---------------+---------------+
                 |           Data-Time           |
                 +---------------+---------------+
                 |           Prev-Time           |
                 +---------------+---------------+
                 | Total  Modems |  This  Modem  |
                 +---------------+---------------+
               5 |                               |
               . +             modem             +
               . |                               |
               . +           throughput          +
               . |                               |
               . +---------------+---------------+
               . :             modem             :
               . :                               :
               . :          throughput           :
                 +---------------+---------------+

-29-

HMP FIELDS ๐Ÿงš

System Type

IMP = 2

Message Type

IMP Modem Throughput message = 3

Port Number

Unused

Control Flag

Unused

Sequence Number

A 16 bit number, incremented at each collection interval (that is, when a new throughput message is assembled). The HM can detect lost or duplicate messages by checking the sequence numbers. main character energy ๐ŸŽ€

Password

The password contains the sequence number of the polling message to which this message responds. ๐Ÿซถ

IMP MODEM THROUGHPUT FIELDS ๐Ÿ’–

Mess-time

The time (in 640ms. units) at which the message was sent to the HM. โฐ

Software Version Number

The IMP version number.

Data-Time

Data-time is the time (in 640ms. units) when this set of data was collected. (See Description.)

-30-

Prev-Time

Prev-time is the time (in 640 ms. units) of the previous collection of data. That means it's the time when the data in this message began accumulating. ๐Ÿฆ‹

Total Modems

This is the number of modems in the system.

This Modem

This Modem is the number of the first modem reported in this message. Large systems that can't fit all their modem reports into a single packet can use this field to split their message into smaller chunks, so they still get single packet message efficiencies. smart ๐Ÿง 

Modem Throughput

Modem throughput consists of three words of data reporting packets and words output on each modem. The first word counts packets output, and the following two count word throughput. The double precision words are arranged high order first. (Note also that messages from Honeywell type machines, which are 316s, 516s and C30s, use a fifteen bit low order word.) The first block reports output on the modem specified by "This Modem". The following blocks report on consecutive modems. ๐ŸŒˆ

-31-


A.4 Message Type 4: IMP Host Throughput ๐ŸŒธ

Description

The host throughput message reports traffic stats for each host in the system ๐Ÿ’œ The IMP collects this data at regular intervals and saves it until the HM polls for it. If the HM misses a period, the new results overwrite the old ones. Same energy as the modem message, bestie. Two time stamps bracket the collection interval (data-time and prev-time), and they're an indicator of missed reports. mess-time tells you the time at which the message was sent โœจ

The host throughput format only holds three hosts if packet boundaries are going to be respected ๐Ÿ™ˆ There's a provision for splitting this into multiple packets by including a host number for the first entry in the packet.

The format of the host throughput message is as follows:

                  0             0 0             1
                  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
                 +---------------+---------------+
               0 |           Mess-Time           |
                 +---------------+---------------+
                 |    Software Version Number    |
                 +---------------+---------------+
                 |           Data-Time           |
                 +---------------+---------------+
                 |           Prev-Time           |
                 +---------------+---------------+
                 |  Total Hosts  |   This  Host  |
                 +---------------+---------------+
               5 :              host             :
               . :           throughput          :
                 +---------------+---------------+

HMP FIELDS ๐Ÿ“

System Type

IMP = 2

Message Type

IMP host Throughput message = 4

-32-

Port Number

Unused

Control Flag

Unused

Sequence Number

A 16 bit number, incremented at each collection interval (that is, when a new throughput message is assembled). The HM can detect lost or duplicate messages by checking the sequence numbers. ๐Ÿ”ฅ

Password

The password contains the sequence number of the polling message to which this message responds. ๐Ÿ’…

IMP HOST THROUGHPUT FIELDS ๐ŸŽ€

Mess-time

The time (in 640ms. units) at which the message was sent to the HM. ๐Ÿ•ฐ๏ธ

Software Version Number

The IMP version number.

Data-Time

Data-time is the time (in 640ms. units) when this set of data was collected. (See Description.)

Prev-Time

Prev-time is the time (in 640 ms. units) of the previous collection of data. That means it's the time when the data in this message began accumulating. ๐Ÿฆ‹

Total Hosts

The total number of hosts in this system.

This Host

This host is the number of the first host reported in this

-33-

message. Large systems that can't fit all their host reports into a single packet can use this field to split their message into smaller chunks, so they still get single packet message efficiencies. ๐Ÿงš

Host Throughput

Each host throughput block consists of eight words in the following format:

                 +---------------+---------------+
                 |      messages to network      |
                 +---------------+---------------+
                 |     messages from network     |
                 +---------------+---------------+
                 |        packets to net         |
                 +---------------+---------------+
                 |       packets from net        |
                 +---------------+---------------+
                 |       messages to local       |
                 +---------------+---------------+
                 |      messages from local      |
                 +---------------+---------------+
                 |        packets to local       |
                 +---------------+---------------+
                 |       packets from local      |
                 +---------------+---------------+

Each host throughput message contains several blocks of data. The first block contains data for the host specified in First Host Number. Following blocks contain data for consecutive hosts. All counters are single precision. ๐ŸŒˆ

-34-


B Appendix B - TAC Monitoring ๐Ÿฆ‹

B.1 Message Type 1: TAC Trap Message ๐Ÿ’–

Description

When a trap occurs, it's buffered in the TAC and sent as soon as possible. Trap messages are unsolicited. If traps happen in close sequence, several traps may be sent in one message. ๐Ÿซถ

Through the use of sequence numbers, it's possible to determine how many traps are being lost. If it's discovered that many are lost, a polling scheme might be implemented for traps. lowkey smart, no cap ๐Ÿง 

A TAC trap message has the following form:

                  0             0 0             1
                  0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
                 +---------------+---------------+
               0 |           Version #           |
                 +---------------+---------------+
               1 :         first                 :
               . :             trap              :
               . :                 data          :
               . +---------------+---------------+
               . :         additional            :
               . :             trap              :
               . :                 data          :
                 +---------------+---------------+

HMP FIELDS ๐Ÿงš

System Type

TAC = 3

Message Type

TAC Trap Message = 1

Port Number

Unused

-35-

Control Flag

Unused

Password or Returned Sequence Number

Unused

Sequence Number

A 16 bit number incremented each time a trap message is sent, so that the HM can order the received trap messages and detect missed messages. ๐Ÿ’œ

TAC TRAP FIELDS ๐Ÿ‘‘

Version #

The version # of the TAC Software. โœจ

Trap Reports

okay so there can be several blocks of trap data in each message ๐Ÿซถ and each block is laid out like this:

             +---------------+---------------+
             |             Size              |
             +---------------+---------------+
             |             Time              |
             +---------------+---------------+
             |            Trap ID            |
             +---------------+---------------+
             :             Trap              :
             :             Data              :
             +---------------+---------------+
             |            Count              |
             +-------------------------------+

Size

Size is the number of 16 bit words in the trap, not counting the size field. ๐Ÿ“

Time

Time is the time (in 640ms. units) at which the trap occurred. It's what sequences the traps in a message and ties groups of traps together. โฐ

Trap ID

Trap ID is (usually) the program counter at the trap. The ID is how you identify the trap, and it doesn't have to be a program counter, as long as it uniquely identifies the trap. ๐Ÿ†”

Trap Data

The TAC returns data giving more information about the trap. There are usually two entries: the values in the accumulator and the index register at the occurrence of the trap. ๐Ÿ”

Count

The TAC counts repetitions of the same trap ID and reports that count here. ๐Ÿ”ข


B.2. Message Type 2: TAC Status โœจ

Description

The status message gives a quick summary of the state of the TAC, bestie ๐Ÿ’… It reports the status of the most important features of the TAC, plus the current configuration of the machine. ๐Ÿ–ฅ๏ธ

A TAC status message has the following form:

              0             0 0             1
              0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
              ---------------+---------------+
           0 |         Version Number        |
             +---------------+---------------+
             |       Last Trap Message       |
             +---------------+---------------+
             |           Bit Flags           |
             +---------------+---------------+
             |         Free PDB count        |
             +---------------+---------------+
             |         Free MBLK count       |
             +---------------+---------------+
           5 |      # of TCP connections     |
             +---------------+---------------+
             |      # of NCP connections     |
             +---------------+---------------+
             |         INA A Register        |
             +---------------+---------------+
             |         INA X Register        |
             +---------------+---------------+
             |         INA B Register        |
             +---------------+---------------+
          l0 |         restart/reload        |
             +---------------+---------------+
             |                               |
             +          Crash                +
             |                               |
             +                Data           +
          13 |                               |
             +---------------+---------------+

HMP FIELDS

System Type

TAC = 3 ๐ŸŽ€

Message Type

TAC Status Message = 2 ๐Ÿ’Œ

Port Number

Unused ๐Ÿ™ˆ

Control Flag

Unused ๐Ÿ™ˆ

Sequence Number

A 16 bit number incremented each time a status message is sent. ๐Ÿ”

Returned Sequence Number

Contains the sequence number from the polling message requesting this report. ๐Ÿ“จ

TAC STATUS FIELDS

Version Number

The TAC's software version number. ๐Ÿงพ

Last Trap Message

Contains the sequence number of the last trap message sent to the HM. This will allow the HM to detect how many trap messages are being lost. ๐Ÿ‘€

Bit Flags

There are sixteen bit flags available for reporting the state of various switches (hardware and software) in the TAC. The bits are numbered as follows for purposes of the discussion below. ๐Ÿ”ขโœจ

              0             0 0             1
              0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
             | | | | | | | | | | | | | | | | |
             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

The bit flags report the status of the following:

Bit         Meaning
15          0 => DDT override off; 1 => override on.
11-14       0 => Sense Switch n is off; 1 => SSn on.
10          0 => Traps to remote monitor;
            1 => Traps to console.
9           1 => Message generator on.
0-8         unused

Free PDB count

The number of PDBs on the free queue. ๐Ÿ—‚๏ธ

Free MBLK count

The number of MBLKs on the free queue. ๐Ÿ—ƒ๏ธ

# of TCP connections

# of NCP connections

The number of open connections for each protocol. ๐Ÿ”Œ

INA Report

These three fields report the values retained by an INA 1011 instruction in a C/30. This instruction returns micro-machine status and errors. In a #316, the fields are meaningless. ๐Ÿคทโ€โ™€๏ธ

Restart/Reload

This word reports a restart or reload of the TAC. ๐Ÿ”„

      Value      Meaning
        1       restarted
        2       reloaded

Crash Data

Crash data reports the circumstances surrounding an unexpected crash. The first word reports the location of the crash, and the following two are the contents of the accumulator and index registers. ๐Ÿ’€


B.3. Message Type 3: TAC Throughput ๐ŸŒˆ

Description

The TAC throughput message reports statistics for the various modules of the TAC. The TAC collects these data at regular intervals and saves them while it waits for a poll from the HM. If a period is missed by the HM, the new results simply overwrite the old. Two time stamps bracket the collection interval (data-time and prev-time) and are an indicator of missed reports. On top of that, mess-time indicates the time at which the message was sent. ๐Ÿ“Š

A TAC throughput message has the following form:

          0             0 0             1
          0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
         +---------------+---------------+
       0 |           Mess-Time           |
         +---------------+---------------+
         |           Data-Time           |
         +---------------+---------------+
         |           Prev-Time           |
         +---------------+---------------+
         |         Version Number        |
         +---------------+---------------+
         |       Last Trap Message       |
         +---------------+---------------+
       5 |           Bit Flags           |
         +---------------+---------------+
         |         Free PDB count        |
         +---------------+---------------+
         |         Free MBLK count       |
         +---------------+---------------+
         |      # of TCP connections     |
         +---------------+---------------+
         |      # of NCP connections     |
         +---------------+---------------+ ----
      10 |     Host Input Throughput     |    ^
         +---------------+---------------+    |
         |     Host Input Abort Count    |    |
         +---------------+---------------+    |
         |    Host Input Garbled Count   |    |
         +---------------+---------------+    |
         |    Host Output Throughput     | 1822 info.
         +---------------+---------------+    |
                       (continued)
TAC throughput (cont.)

         +---------------+---------------+    |
         |    Host Output Abort Count    | 1822 info.
         +---------------+---------------+    |
      15 |        Host Down Count        |    v
         +---------------+---------------+ ----
         |      # of datagrams sent      |    ^
         +---------------+---------------+    |
         |    # of datagrams received    |    |
         +---------------+---------------+  IP info.
         |    # of datagrams discarded   |    |
         +---------------+---------------+    |
         |    # of fragments received    |    v
         +---------------+---------------+    |
      20 |    # of fragments discarded   |    v
         +---------------+---------------+ ----
         |      # of segments sent       |    ^
         +---------------+---------------+    |
         |    # of segments received     |    |
         +---------------+---------------+    |
         |    # of segments discarded    |    |
         +---------------+---------------+  TCP info.
         |       # of octets sent        |    |
         +---------------+---------------+    |
      25 |     # of octets received      |    |
         +---------------+---------------+    |
         |     # of retransmissions      |    v
         +---------------+---------------+ ----

HMP FIELDS

System Type

TAC = 3 ๐ŸŽ€

Message Type

TAC Throughput Message = 3 ๐Ÿ’Œ

Port Number

Unused ๐Ÿ™ˆ

Control Flag

Unused ๐Ÿ™ˆ

Sequence Number

A 16 bit number incremented at each collection interval (i.e. when a new throughput message is assembled). The HM will be able to detect lost or duplicate messages by checking the sequence numbers. ๐Ÿ•ต๏ธโ€โ™€๏ธ

Returned Sequence Number

Contains the sequence number from the polling message requesting this report. ๐Ÿ“จ

TAC THROUGHPUT FIELDS

Mess-time

The time (in 640ms. units) at which the message was sent to the HM. โฑ๏ธ

Data-Time

Data-time is the time (in 640ms. units) when this set of data was collected. (See Description.) ๐Ÿ—“๏ธ

Prev-Time

Prev-time is the time (in 640 ms. units) of the previous collection of data (and therefore, is the time when the data in this message began accumulating.) ๐Ÿ•ฐ๏ธ

Version Number

The TAC's software version number. ๐Ÿงพ

Last Trap Message

Contains the sequence number of the last trap message sent to the HM. This will allow the HM to detect how many trap messages are being lost. ๐Ÿ‘€

Bit Flags

There are sixteen bit flags available for reporting the state of various switches (hardware and software) in the TAC. The bits are numbered as follows for purposes of the discussion below. ๐Ÿ”ขโœจ

              0             0 0             1
              0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
             | | | | | | | | | | | | | | | | |
             +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

The bit flags report the status of the following:

Bit         Meaning
15          0 => DDT override off; 1 => override on.
11-14       0 => Sense Switch n is off; 1 => SSn on.
10          0 => Traps to remote monitor;
            1 => Traps to console.
9           1 => Message generator on.
0-8         unused

Free PDB count

The number of PDBs on the free queue. ๐Ÿ—‚๏ธ

Free MBLK count ๐Ÿงบ this one's the number of MBLKs sitting on the free queue, so it's basically how many spare blocks are ready to go, bestie.

of TCP connections ๐ŸŒ

of NCP connections ๐Ÿงฉ

These count the open connections for each protocol. Simple, but iconic.

1822 info. ๐Ÿ›ฐ๏ธ These six fields report statistics about the operation of the 1822 protocol module, which is the interface between the TAC and its IMP. Main character of the TAC, honestly.

IP info. ๐ŸŒŠ These five fields report statistics about Internet Protocol in the TAC.

TCP info. ๐Ÿฆ‹ These six fields report statistics about TCP protocol in the TAC. Slay.

C. Appendix C - Gateway Monitoring โœจ

C.1. Gateway Parameters

The gateway supports parameters for setting Throughput and Host traffic matrix measurements. Here's the type of parameters and the parameter and data pairs, no cap:

Throughput - Type = 3

Parm.  Description             Control Data Word
-----  -----------             -----------------

1      Start/Stop              0=Stop,1=Start
2      Collection Interval     Time in 1 minute
                               ticks

Host Traffic Matrix - Type = 4

Parm.  Description             Control Data Word
-----  -----------             -----------------

1      Start/Stop              0=Stop,1=Start
2      Collection Interval     Time in 1 minute
                               ticks
3      HTM Switch Control      Include Control
                               Protocols

C.2. Message Type 1: Gateway Trap ๐Ÿšจ

Description

Okay so when traps happen in the gateway, they get buffered ๐Ÿ“ฆ. Then at a fixed time interval (currently 10 seconds โฑ๏ธ), the gateway sends whatever traps are in the buffer to the monitoring center. The traps go out as unsolicited messages, which is giving mysterious and kind of iconic.

A Gateway trap message has the following format:

      0             0 0             1
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |      Gateway Version #        |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |    Size of Trap Entry         |       ;First Trap
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |       Time of Trap            |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |       Trap ID                 |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |       Process ID              |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |              R0               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |              R1               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |              R2               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |              R3               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                   (continued)

Gateway Trap Message (cont'd.) ๐Ÿงต

     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |              R4               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |              R5               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |              R6               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |     Count of this Trap        |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                     .
                     .
                     .
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |                               |
     |    Additional Trap reports    |
     |                               |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

HMP FIELDS ๐Ÿ’Œ

System Type

Gateway = 4

Message Type

Gateway Trap Message = 1

Port Number

Unused ๐Ÿ™…

Control Flag

Unused ๐Ÿ™…

Password or Returned Sequence Number

Unused ๐Ÿ™…

Sequence Number

A 16 bit number incremented each time a trap message is sent, so the monitoring center can order the received trap messages and detect missed messages. ๐Ÿ”ข This one's lowkey essential.

GATEWAY TRAP FIELDS ๐ŸŽ€

Gateway Version #

The software version number of the gateway sending the trap.

Trap Reports

The remainder of the trap message consists of the trap reports. Each one has the following fields:

Size of Trap Entry

The size in 16-bit words of the trap entry, not including the size field.

Time of Trap

The time (in 1/60 sec. ticks) at which the trap occurred. โฐ

Trap ID

The number of the trap, which is used to identify the trap. ๐Ÿชช

Process ID

The identifier of the process that executed the trap. ๐Ÿงš

R0-R6

The registers of the machine at the occurrence of the trap. ๐Ÿง 

Count of this Trap

The number of times that this trap occurred. ๐Ÿ”

C.3. Message Type 2: Gateway Status ๐Ÿ“Š

Description

The gateway status message gives a summary of the status of the gateway. It reports information such as the version number of the gateway, buffer memory usage, interface status, and neighbor gateway status. Very informative, very it's-giving-analyst. ๐Ÿ’…

A Gateway Status message has the following format:

      0                   1         1         2                   3 3
      0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |         Version Number        |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |     Patch Version Number      |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Time Since Gateway Restart   |       ;in minutes
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |       Measurement Flags       |       ; Bit flags to indicate which
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+       ; measurements are on, 1= On
     |      Routing Sequence No.     |       ; Sequence # of last routing
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+       ;   update sent
     |    Access Table Version #     |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Load Sharing Table Ver. #    |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |         Memory in Use         |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |         Memory Idle           |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |         Memory Free           |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |   # of Blks   |                       ; Memory Allocation Info
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  Size of 1st Block (in bytes) |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  # Allocated  |
     +-+-+-+-+-+-+-+-+
     |    # Idle     |
     +-+-+-+-+-+-+-+-+
             .
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     | Size of n'th Block (in bytes) |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |  # Allocated  |
     +-+-+-+-+-+-+-+-+
     |    # Idle     |
     +-+-+-+-+-+-+-+-+
                  (continued)

Gateway Status Message (cont'd.) ๐Ÿงต

     +-+-+-+-+-+-+-+-+
     |   # of Ints.  |
     +-+-+-+-+-+-+-+-+
     | Int 1 Flags   |                       ;Interface 1 Status Flags
     +-+-+-+-+-+-+-+-+                       ; Bit 0 - 1=Up, 0=Down
                                             ;     1 - 1=Looped, 0=Not
     +-+-+-+-+-+-+-+-+
     | Buffers       |                       ; # of buffers on write Queue
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     | Time since last Status Change |       ;Time since last up/dwn change
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |    # of Buffers Allocated     |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |    Data Size for Interface    |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |    Interface 1 Address                                        |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                     .
                     .
     +---------------+
     | Int n Flags   |                       ;Interface n Status Flags
     +-+-+-+-+-+-+-+-+
     | Buffers       |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     | Time since last Status Change |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |    # of Buffers Allocated     |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |    Data Size for Interface    |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |    Interface n Address                                        |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     | # Neighbors   |
     +-+-+-+-+-+-+-+-+
     | UP/DN Flags   |                       ;Bit flags for Up or Down
     +-+-+-+-+-+-+-+-+                       ; 0 = Dwn,  1 = Up
             .                               ; MSB is neighbor 1
             .                               ; (as many bytes as necessary)
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |    Neighbor 1 Address                                         |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                     .
                     .
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
     |    Neighbor n Address                                         |
     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

HMP FIELDS ๐Ÿ’Œ

System Type

Gateway = 4

Message Type

Gateway Status Message = 2

Port Number

Unused ๐Ÿ™…

Control Flag

Unused ๐Ÿ™…

Password or Returned Sequence Number

Unused ๐Ÿ™…

Sequence Number

A 16 bit number incremented each time a trap message is sent, so the monitoring center can order the received trap messages and detect missed messages. ๐Ÿ”ข Yes, the same wording as the trap message, bestie.

GATEWAY STATUS FIELDS ๐ŸŒธ

Version Number

The version number of the gateway sending the Status message.

Patch Version Number

The patch version number of the gateway.

Time Since Gateway Restart

The time in minutes since the gateway was last restarted or reloaded. โณ

Measurement Flags

Flags that, if set, indicate which measurements are turned on. Current values are:

Bit 0   =   Message Generator
    1   =   Throughput
    2   =   Host Traffic Matrix
    3   =   Access Control 1
    4   =   Access Control 2
    5   =   Load Sharing
    6   =   EGP in Gateway

Routing Sequence Number

The sequence number of the last routing update sent by this gateway. ๐Ÿ›ฃ๏ธ

Access Control Table Version #

The version number of the access control table.

Load Sharing Table Version #

The version number of the load sharing table.

Memory In Use

The number of bytes of buffer memory that are currently in use. ๐Ÿง 

Memory Idle

The number of bytes of buffer memory that have been allocated but are currently idle. ๐Ÿ˜ด

Memory Free

The number of bytes of buffer memory that have not been allocated. ๐Ÿซ™

MEMORY ALLOCATION INFORMATION ๐Ÿงฎ

The next part of the status message contains information on the buffer pools in the gateway. The fields are:

# of Blocks

The number of different buffer pools.

Size of Block

The size of this block in bytes.

# Allocated

The number of blocks of this size that have been allocated.

# Idle

The number of blocks of this size that are idle. ๐Ÿ’ค

GATEWAY INTERFACE FIELDS ๐Ÿ”Œ

okay so the next bit of the status message is all about the gateway's interfaces ๐Ÿฆ‹ here's what each field tells you:

# of Interfaces

the number of network interfaces the gateway has ๐Ÿ’–

Interface Flags

flags that show the status of this interface ๐Ÿšฆ the current values are:

Bit 0  -  1=Up/0=Down
    1  -  1=Looped/0=Not Looped

Buffers

the numbers on this interface's write queue ๐Ÿงพ

Time Since Last Status Change

the time in minutes since this interface changed status (Up/Down) โฑ๏ธ

# of Buffers Allocated

the number of buffers allocated for this interface ๐Ÿงบ

Data Size for Interface

the buffer size required for this interface ๐Ÿ“

Interface Address

the Internet address of this interface ๐ŸŒ

NEIGHBOR GATEWAY FIELDS ๐Ÿค

the final part of the status message is all about this gateway's neighbor gateways โœจ the fields:

# of Neighbors

the number of gateways that are neighbor gateways to this gateway ๐Ÿซถ

UP/DN Flags

bit flags to indicate if the neighbor is up or down ๐ŸŸข

Neighbor Address

the Internet address of the neighbor gateway ๐ŸŒธ

C.4 Message Type 3: Gateway Throughput โœจ

Description

okay bestie, the gateway collects throughput stats for itself, its interfaces, and its neighbor gateways ๐Ÿ“Š it collects them for regular intervals and saves them so the Monitoring host can grab them with a Poll message ๐Ÿงฒ if they aren't collected by the end of the next interval, they get lost, because another copy gets put into the saved area ๐Ÿ˜ญ

A Gateway Throughput message has the following format:

 0                   1         1         2                   3 3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     Gateway Version Number    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     Collection Time in Min    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|      Number of Interfaces     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|       Number of Neighbors     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  Number of Host Unreachable   |       ; # of packets dropped because
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+       ;   Host was Unreachable
|  Number of Net Unreachable    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+       ;   Net was Unreachable

; Interface Counters

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  Interface Address                                            |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Packets Dropped on Input    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     Count of IP Errors        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Count of Datagrams for Us   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Datagrams to be Forwarded   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Count of Datagrams Looped   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                        (continued)

Gateway Throughput Message (cont'd.)

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  Count of Bytes Input                                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  Count of Datagrams From Us   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Count that were Forwarded     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  Count of Local Net Dropped   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  Count of Queue full Dropped  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  Count of Bytes Output                                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                .
                .
                .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
|          Counters For Additional Interfaces                   |
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

; Neighbor counters

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  Neighbor Address                                             |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Count of Routing Updates TO   |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|Count of Routing Updates FROM  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                         (continued)

Gateway Throughput Message (cont'd.)

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Pkts from US sent to/via Neig |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  Pkts forwarded to/via Neighb |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|  Datagrams Local Net Dropped  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Datagrams Queue full Dropped  |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Count of Bytes send to Neighbor                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                .
                .
                .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
|        Counters for Additional Neighbor Gateways              |
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

HMP FIELDS ๐ŸŽ€

System Type

Gateway = 4

Message Type

Gateway Throughput Message = 3

Port Number

Unused

Control Flag

Unused

Password or Returned Sequence Number

Unused

Sequence Number

a 16 bit number that gets incremented each time a trap message is sent, so the HM can put the received trap messages in order and detect missed messages ๐Ÿ”ข

GATEWAY THROUGHPUT FIELDS ๐Ÿ“ˆ

Gateway Version Number

the software version number of the gateway sending the trap ๐Ÿ’พ

Collection Time in Min.

the time period in minutes in which the throughput data is to be collected โฐ

Number of Interfaces

the number of interfaces this gateway has ๐Ÿ”Œ

Number of Neighbors

the number of neighbor gateways this gateway has ๐Ÿค

Number of Host Unreachable

the number of packets dropped because the Host was unreachable ๐Ÿ™ˆ

Number of Net Unreachable

the number of packets dropped because the Network was unreachable ๐ŸŒซ๏ธ

INTERFACE COUNTERS ๐Ÿงฎ

the next part of the Throughput message holds counters for the gateway's interfaces ๐Ÿ’… each interface has the following fields:

Interface Address

the Internet address of this interface ๐ŸŒ

Packets Dropped on Input

the number of packets on input to this interface because there were not enough buffers ๐Ÿฅฒ

Count of IP Errors

the number of packets received with bad IP headers ๐Ÿšซ

Count of Datagrams for Us

the number of datagrams received addressed to this gateway ๐Ÿ’Œ

Datagrams to be Forwarded

the number of datagrams that were not for this gateway and should be sent out another interface ๐Ÿฆ‹

Count of Datagrams Looped

the number of datagrams that were received on and sent out of this interface ๐Ÿ”

Count of Bytes Input

the number of bytes received on this interface ๐Ÿ“ฅ

Count of Datagrams From Us

the number of datagrams that originated at this gateway ๐Ÿซถ

Count that were Forwarded

the number of datagrams that were forwarded to another gateway โžก๏ธ

Count of Local Net Dropped

the number of packets that were dropped because of local network flow control restrictions ๐Ÿ›‘

Count of Queue full Dropped

the number of packets that were dropped because the output queue was full ๐Ÿ—‘๏ธ

Count of Bytes Output

the number of bytes sent out on this interface ๐Ÿ“ค

NEIGHBOR COUNTERS ๐Ÿ‘ฏ

the last part of the Throughput message is counts for each neighbor gateway โœจ the fields are:

Neighbor Address

the Internet address of this neighbor gateway ๐ŸŒธ

Count of Routing Updates TO

the number of routing updates sent to this neighbor gateway ๐Ÿ“ค

Count of Routing Updates FROM

the number of routing updates received from this neighbor gateway ๐Ÿ“ฅ

Pkts from US sent to/via Neig

the number of packets from this gateway sent to or via this neighbor gateway ๐Ÿš€

Pkts forwarded to/via Neighb

the number of packets forwarded to or via this neighbor gateway ๐Ÿ”€

Datagrams Local Net Dropped

the number of datagrams dropped to this neighbor gateway because of local network flow control restrictions ๐Ÿ›‘

Datagrams Queue full Dropped

the number of datagrams dropped to this neighbor because the output queue was full ๐Ÿ—‘๏ธ

Count of Bytes send to Neighbor

the number of bytes sent to this neighbor gateway ๐Ÿ“ฆ

C.5 Message Type 4: Gateway Host Traffic Matrix ๐Ÿง 

Description

the Host Traffic Matrix (HTM) message holds info about the traffic flowing through the gateway ๐ŸŒŠ each entry is the number of datagrams sent and received for a particular source/destination pair ๐Ÿ’œ

A Gateway HTM message has the following format:

 0                   1         1         2                   3 3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     Gateway Version Number    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|        Overflow counter       |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     Collection Time in Min    |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|     Number of HTM entries     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    IP Source Address                                          |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    IP Destination Address                                     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| IP Protocol   |  (unused)     |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    Counter for SRC -> DST datagrams                           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    Counter for DST -> SRC datagrams                           |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                .
                .
                .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|                                                               |
|      Additional HTM Reports                                   |
|                                                               |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

HMP FIELDS ๐Ÿ’–

okay so the HTM header is giving everything ๐Ÿ’… Here's the rundown:

System Type: Gateway = 4 ๐ŸŽ€

Message Type: Gateway HTM Message = 4 โœจ

Port Number: Unused ๐ŸŒธ

Control Flag: Unused ๐ŸŒธ

Password or Returned Sequence Number: Unused ๐ŸŒธ

Sequence Number: a 16 bit number that goes up every single time a trap message gets sent ๐Ÿ“ˆ so the HM can put the received trap messages in order and catch any that went missing ๐Ÿ•ต๏ธโ€โ™€๏ธ

GATEWAY HTM FIELDS โœจ

Gateway Version Number: the software version number of this gateway ๐Ÿ’ป

Overflow counter: the number of HTM entries lost because the HTM buffer was full ๐Ÿ˜ญ

Collection Time in Min: the time period in minutes in which the HTM data is being collected โฐ

Number of HTM entries: the number of HTM reports included in this message ๐Ÿ”ข

-65-

HTM ENTRIES ๐Ÿงš

The rest of the HTM message is the actual HTM entries ๐Ÿ’œ Each entry has the following fields:

  • IP Source Address: the source Internet address of the datagrams being counted ๐Ÿ“
  • IP Destination Address: the destination Internet address of the datagrams being counted ๐ŸŽฏ
  • IP Protocol: the protocol number of the datagrams ๐Ÿงพ
  • Counter for SRC -> DST datagrams: the number of datagrams sent in the Source to Destination address direction โžก๏ธ
  • Counter for DST -> SRC datagrams: the number of datagrams sent in the Destination to Source address direction โฌ…๏ธ

-66-

C.6 Message Type 6: Gateway Routing ๐Ÿ‘‘

Description ๐Ÿฆ‹

The Routing message is where the gateway spills all its tea about the routes it has to the networks that make up the Internet ๐ŸŒˆ It also includes info about its interfaces and its neighbor gateways ๐Ÿซถ

A Gateway Routing message has the following format:

 0                   1         1         2                   3 3
 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|         Version Number        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   # of Ints.  |
+-+-+-+-+-+-+-+-+
| UP/DN Flags   |                       ;Bit flags for Up or Down
+-+-+-+-+-+-+-+-+                       ; 0 = Dwn,  1 = Up
        .                               ; MSB is interface 1
        .                               ; (as many bytes as necessary)
        .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    Interface 1 Address                                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                .
                .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    Interface n Address                                        |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| # Neighbors   |
+-+-+-+-+-+-+-+-+
| UP/DN Flags   |                       ;Bit flags for Up or Down
+-+-+-+-+-+-+-+-+                       ; 0 = Dwn,  1 = Up
        .                               ; MSB is neighbor 1
        .                               ; (as many bytes as necessary)
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    Neighbor 1 Address                                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                .
                .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|    Neighbor n Address                                         |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+

(continued)

-67-

Gateway Routing Message (cont'd.) ๐ŸŒธ

+-+-+-+-+-+-+-+-+
| # of Networks |
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Network 1 #   |               |               |  ; 1, 2, or 3 bytes
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Distance    |
+-+-+-+-+-+-+-+-+
|   Neighbor #  |
+-+-+-+-+-+-+-+-+
                .
                .
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| Network n #   |               |               |  ; 1, 2, or 3 bytes
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
|   Distance    |
+-+-+-+-+-+-+-+-+
|   Neighbor #  |
+-+-+-+-+-+-+-+-+

HMP FIELDS ๐Ÿงš

System Type: Gateway = 4 ๐ŸŽ€

Message Type: Gateway Trap Message = 6 โœจ

Port Number: Unused ๐ŸŒธ

Control Flag: Unused ๐ŸŒธ

Password or Returned Sequence Number: Unused ๐ŸŒธ

Sequence Number: a 16 bit number that goes up every single time a trap message gets sent ๐Ÿ“ˆ so the HM can put the received trap messages in order and catch any that went missing ๐Ÿ•ต๏ธโ€โ™€๏ธ

-68-

GATEWAY ROUTING FIELDS ๐Ÿ’–

Gateway Version #: the software version number of the gateway sending the trap ๐Ÿ’ป

INTERFACE FIELDS ๐Ÿฆ‹

The first part of the routing message is all about the gateway's interfaces ๐Ÿ“ก There's data for each interface, with these fields:

  • # of Interfaces: the number of interfaces that this gateway has ๐Ÿ”Œ
  • UP/DN Flags: bit flags to indicate if the Interface is up or down ๐ŸŸข๐Ÿ”ด
  • Interface Address: the Internet address of the Interface ๐Ÿ“

NEIGHBOR FIELDS ๐Ÿซถ

The next part of the routing message is about this gateway's neighbor gateways ๐Ÿค These fields show up:

  • # of Neighbors: the number of gateways that are neighbor gateways to this gateway ๐Ÿ‘ฏ
  • UP/DN Flags: bit flags to indicate if the neighbor is up or down โฌ†๏ธโฌ‡๏ธ
  • Neighbor Address: the Internet address of the neighbor gateway ๐Ÿ“ฌ

NETWORK ROUTING FIELDS ๐ŸŒˆ

The last part of the routing message is about this gateway's routes to other networks ๐Ÿ—บ๏ธ It covers the distance to each network and which neighbor gateway is the route to that network. The fields are:

-69-

  • # of Networks: the number of networks that are reachable from this gateway ๐ŸŒ
  • Network #: the network number of this network. This is the network part of the Internet address and may be one, two, or three bytes in length depending on whether it is a Class A, B, or C address ๐Ÿงฎ
  • Distance: the distance in hops to this network. Zero hops means that the network is directly connected to this gateway ๐Ÿ  A negative number means that the network is currently unreachable ๐Ÿšซ
  • Neighbor #: the neighbor gateway that is the next hop to reach this network ๐Ÿฆ˜ This is an index into the previous information on this gateway's neighbor gateways. This field is only valid if the Distance is greater than zero โœจ

-70-

๐Ÿ“ฆ where this page comes from