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 |