| Previous | Table of Contents | Next |
The example in Section 7.3 showed how to verify that a Set command accomplished what it was meant to do despite UDPs connectionless transport. This case study builds on that example by verifying that another device received the agent-generated Trap message.
In this example (see Figure 7-4), the Trap transmitter is the SynOptics intelligent hub, and the manager receives the trap. An X-Windows client workstation acts as the managers display console. A configuration table within the agents SNMP parameters defines the IP address of the receiver. When a trap is generated, it is automatically displayed in one of the workstations windows.
Figure 7-4. Verifying a trap
As noted previously, SNMP messages are transmitted using connectionless transport via UDP, which provides minimal error control. However, some applications, such as the X-Windows system, demand more rigorous error control and require guaranteed delivery of every octet of information, in sequence, at the proper time. The TCP Transport layer protocol addresses these requirements. Frames 1 and 2 of Trace 7.4a show the X Client and the manager exchanging information using TCP. Within the TCP header (and shown in the trace) are the destination and source port numbers (D and S, respectively), an acknowledgment number (ACK), a sequence number (SEQ), a length (LEN), and a window advertisement (WIN).
In Frame 3, the manager sends a Set command to the hub agent; the agent responds with a trap (Authentication failure) in Frame 6. The manager then sends the trap information to the X Client for display within the alarm window (Frame 8). Upon receiving the trap, the X Client sends a TCP acknowledgment in Frame 9 and displays the trap.
Trace 7.4a. Verifying trap reception (summary)
Sniffer Network Analyzer data 23-Sep at 08:50:38, file SNMP75.ENC, Pg 1
SUMMARY Delta T Destination Source Summary
1 Manager X Client TCP D=4255 S=6000
ACK=584967877
SEQ=1899543417
LEN=32 WIN=2920
2 0.0903 X Client Manager TCP D=6000 S=4255
ACK=1899543449
WIN=16384
3 0.4468 Hub Agent Manager SNMP Set
SynOptics.1.3.2.4.20.1.
3.XXX.YYY.170.20 = trap1
6 0.0276 Manager Hub Agent SNMP Trap - v1
Authentication failure
8 3.5293 X Client Manager XWIN C (3) Poly Text8s
at 27,20 "[23-Sep-1992
08:43:23]
Alarm Type[nms_trapd] from
Object[snmpmg.sim.XX.COM]";
at 27,38 "TRAP [authent ...
9 0.0714 Manager X Client TCP D=4255 S=6000
ACK=584968457 WIN=2920
Trace 7.4b. Verifying trap reception (details)
Sniffer Network Analyzer data 23-Sep at 08:50:38, file SNMP75.ENC, Pg 1
------------------------------- Frame 1 -------------------------------
TCP: ----- TCP header -----
TCP:
TCP: Source port = 6000 (X Windows)
TCP: Destination port = 4255
TCP: Sequence number = 1899543417
TCP: Acknowledgment number = 584967877
TCP: Data offset = 20 bytes
TCP: Flags = 18
TCP: ..0. .... = (No urgent pointer)
TCP: ...1 .... = Acknowledgment
TCP: .... 1... = Push
TCP: .... .0.. = (No reset)
TCP: .... ..0. = (No SYN)
TCP: .... ...0 = (No FIN)
TCP: Window = 2920
TCP: Checksum = 8A63 (correct)
TCP: No TCP options
TCP: [32 byte(s) of data]
TCP:
------------------------------- Frame 2 -------------------------------
TCP: ----- TCP header -----
TCP:
TCP: Source port = 4255
TCP: Destination port = 6000 (X Windows)
TCP: Sequence number = 584967877
TCP: Acknowledgment number = 1899543449
TCP: Data offset = 20 bytes
TCP: Flags = 10
TCP: ..0. .... = (No urgent pointer)
TCP: ...1 .... = Acknowledgment
TCP: .... 0... = (No push)
TCP: .... .0.. = (No reset)
TCP: .... ..0. = (No SYN)
TCP: .... ...0 = (No FIN)
TCP: Window = 16384
TCP: Checksum = B7AC (correct)
TCP: No TCP options
TCP:
-------------------------- Frame 3 ----------------------------
SNMP: ----- Simple Network Management Protocol (Version 1)-----
SNMP:
SNMP: Version = 0
SNMP: Community = public
SNMP: Command = Set request
SNMP: Request ID = 717289096
SNMP: Error status = 0 (No error)
SNMP: Error index = 0
SNMP:
SNMP: Object = {1.3.6.1.4.1.45.1.3.2.4.20.1.3.XXX.YYY.170.20}
(SynOptics.1.3.2.4.20.1.3.XXX.YYY ...
SNMP: Value = trap1
SNMP:
------------------------------- Frame 6 -------------------------------
SNMP: ----- Simple Network Management Protocol (Version 1) -----
SNMP:
SNMP: Version = 0
SNMP: Community = trap1
SNMP: Command = Trap
SNMP: Enterprise = {1.3.6.1.4.1.45.3.8.1}
SNMP: Network address = [XXX.YYY.170.53]
SNMP: Generic trap = 4 (Authentication failure)
SNMP: Specific trap = 0
SNMP: Time ticks = 57685810
SNMP:
------------------------------- Frame 8 -------------------------------
XWIN: ----- X Windows -----
XWIN:
XWIN: Request opcode = 74 (Poly Text8)
XWIN: Drawable = 01D00034, Graphics context = 01D0001E
XWIN: X = 27, Y = 20
XWIN: Delta = 0
XWIN: String = "[23-Sep-1992 08:43:23] Alarm Type[nms_trapd]
from Object[snmpmg.sim.XX.COM]"
XWIN:
XWIN: Request opcode = 74 (Poly Text8)
XWIN: Drawable = 01D00034, Graphics context = 01D0001E
XWIN: X = 27, Y = 38
XWIN: Delta = 0
XWIN: String = "TRAP [authentication failure] received, agent =
XXX.YYY.170.53(syn2.sim.XX.COM) ...
XWIN:
XWIN: Request opcode = 74 (Poly Text8)
XWIN: Drawable = 01D00034, Graphics context = 01D0001E
XWIN: X = 27, Y = 56
XWIN: Delta = 0
XWIN: String = " specific-trap = 0."
XWIN:
-------------------------- Frame 9 ----------------------------
TCP: ----- TCP header -----
TCP:
TCP: Source port = 6000 (X Windows)
TCP: Destination port = 4255
TCP: Sequence number = 1899543609
TCP: Acknowledgment number = 584968457
TCP: Data offset = 20 bytes
TCP: Flags = 10
TCP: ..0. .... = (No urgent pointer)
TCP: ...1 .... = Acknowledgment
TCP: .... 0... = (No push)
TCP: .... .0.. = (No reset)
TCP: .... ..0. = (No SYN)
TCP: .... ...0 = (No FIN)
TCP: Window = 2920
TCP: Checksum = E960 (correct)
TCP: No TCP options
TCP:
| Previous | Table of Contents | Next |