8.6.5b Test Procedure, Confirmed Response Options (revision 3.1r1, subset level 3)

Device under test: Step Function I/O dnp3 outstation

05:25:41.189 Running procedure: 8.6.5b
05:25:41.192 step: 1
05:25:41.192 - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: the next
05:25:41.192 - g60v1, All Objects
05:25:41.192 - g60v2, All Objects
05:25:41.192 - g60v3, All Objects
05:25:41.193 --A-> Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x00
05:25:41.193 g60v1, All Objects
05:25:41.193 g60v2, All Objects
05:25:41.193 g60v3, All Objects
05:25:41.193 --T-> fir: 1 fin: 1 seq: 0
05:25:41.193 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 17 dest: 1024 src: 1
05:25:41.193 --P-> 05 64 11 C4 00 04 01 00 60 4E
05:25:41.193 C0 C0 01 3C 01 06 3C 02 06 3C 03 06 CF AE
05:25:41.193 step: 2
05:25:41.193 - While the response carries data and asks for confirmation, confirm it and repeat step 1, so that no events are left
05:25:41.194 <-P-- 05 64 E0 44 01 00 00 04 70 7A
05:25:41.194 C0 C0 81 90 00 01 01 01 00 00 0B 00 00 00 0A 02 97 78
05:25:41.194 01 00 00 13 00 01 01 01 01 01 01 01 01 01 01 01 96 07
05:25:41.194 01 01 01 01 01 01 01 01 01 14 02 01 00 00 09 00 26 7E
05:25:41.194 01 00 00 01 00 00 01 00 00 01 00 00 01 00 00 01 FE 85
05:25:41.194 00 00 01 00 00 01 00 00 01 00 00 01 00 00 15 02 85 CD
05:25:41.194 01 00 00 09 00 01 00 00 01 00 00 01 00 00 01 00 B6 06
05:25:41.194 00 01 00 00 01 00 00 01 00 00 01 00 00 01 00 00 9E 0F
05:25:41.194 01 00 00 1E 02 01 00 00 09 00 01 00 00 01 00 00 0A 10
05:25:41.194 01 00 00 01 00 00 01 00 00 01 00 00 01 00 00 01 FE 85
05:25:41.194 00 00 01 00 00 01 00 00 28 02 01 00 00 13 00 01 EF FE
05:25:41.194 00 00 01 00 00 01 00 00 01 00 00 01 00 00 01 00 DB 49
05:25:41.194 00 01 00 00 01 00 00 01 00 00 01 00 00 01 00 00 9E 0F
05:25:41.194 01 00 00 01 00 00 01 00 00 01 00 00 01 00 00 01 FE 85
05:25:41.194 00 00 01 00 00 01 00 00 01 00 00 61 8D
05:25:41.194 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 224 dest: 1 src: 1024
05:25:41.194 <-T-- fir: 1 fin: 1 seq: 0
05:25:41.195 <-A-- Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x00 IIN(DeviceRestart, NeedTime)
05:25:41.195 g1v1, 2-Byte Start/Stop, start: 0 stop: 11
05:25:41.195 [0] - BooleanValue(false)
05:25:41.195 [1] - BooleanValue(false)
05:25:41.195 [2] - BooleanValue(false)
05:25:41.195 [3] - BooleanValue(false)
05:25:41.195 [4] - BooleanValue(false)
05:25:41.195 [5] - BooleanValue(false)
05:25:41.195 [6] - BooleanValue(false)
05:25:41.195 [7] - BooleanValue(false)
05:25:41.195 [8] - BooleanValue(false)
05:25:41.195 [9] - BooleanValue(false)
05:25:41.195 [10] - BooleanValue(false)
05:25:41.195 [11] - BooleanValue(false)
05:25:41.195 g10v2, 2-Byte Start/Stop, start: 0 stop: 19
05:25:41.195 [0] - flags: 0x01
05:25:41.195 [1] - flags: 0x01
05:25:41.195 [2] - flags: 0x01
05:25:41.195 [3] - flags: 0x01
05:25:41.195 [4] - flags: 0x01
05:25:41.195 [5] - flags: 0x01
05:25:41.195 [6] - flags: 0x01
05:25:41.195 [7] - flags: 0x01
05:25:41.195 [8] - flags: 0x01
05:25:41.195 [9] - flags: 0x01
05:25:41.195 [10] - flags: 0x01
05:25:41.195 [11] - flags: 0x01
05:25:41.195 [12] - flags: 0x01
05:25:41.195 [13] - flags: 0x01
05:25:41.195 [14] - flags: 0x01
05:25:41.195 [15] - flags: 0x01
05:25:41.195 [16] - flags: 0x01
05:25:41.195 [17] - flags: 0x01
05:25:41.195 [18] - flags: 0x01
05:25:41.195 [19] - flags: 0x01
05:25:41.195 g20v2, 2-Byte Start/Stop, start: 0 stop: 9
05:25:41.195 [0] - flags: 0x01 count: 0
05:25:41.195 [1] - flags: 0x01 count: 0
05:25:41.195 [2] - flags: 0x01 count: 0
05:25:41.195 [3] - flags: 0x01 count: 0
05:25:41.195 [4] - flags: 0x01 count: 0
05:25:41.195 [5] - flags: 0x01 count: 0
05:25:41.195 [6] - flags: 0x01 count: 0
05:25:41.195 [7] - flags: 0x01 count: 0
05:25:41.195 [8] - flags: 0x01 count: 0
05:25:41.195 [9] - flags: 0x01 count: 0
05:25:41.195 g21v2, 2-Byte Start/Stop, start: 0 stop: 9
05:25:41.195 [0] - flags: 0x01 count: 0
05:25:41.195 [1] - flags: 0x01 count: 0
05:25:41.195 [2] - flags: 0x01 count: 0
05:25:41.195 [3] - flags: 0x01 count: 0
05:25:41.195 [4] - flags: 0x01 count: 0
05:25:41.195 [5] - flags: 0x01 count: 0
05:25:41.195 [6] - flags: 0x01 count: 0
05:25:41.195 [7] - flags: 0x01 count: 0
05:25:41.195 [8] - flags: 0x01 count: 0
05:25:41.195 [9] - flags: 0x01 count: 0
05:25:41.195 g30v2, 2-Byte Start/Stop, start: 0 stop: 9
05:25:41.195 [0] - flags: 0x01 value: 0
05:25:41.195 [1] - flags: 0x01 value: 0
05:25:41.195 [2] - flags: 0x01 value: 0
05:25:41.195 [3] - flags: 0x01 value: 0
05:25:41.195 [4] - flags: 0x01 value: 0
05:25:41.195 [5] - flags: 0x01 value: 0
05:25:41.195 [6] - flags: 0x01 value: 0
05:25:41.195 [7] - flags: 0x01 value: 0
05:25:41.195 [8] - flags: 0x01 value: 0
05:25:41.195 [9] - flags: 0x01 value: 0
05:25:41.195 g40v2, 2-Byte Start/Stop, start: 0 stop: 19
05:25:41.195 [0] - flags: 0x01 value: 0
05:25:41.195 [1] - flags: 0x01 value: 0
05:25:41.195 [2] - flags: 0x01 value: 0
05:25:41.195 [3] - flags: 0x01 value: 0
05:25:41.195 [4] - flags: 0x01 value: 0
05:25:41.195 [5] - flags: 0x01 value: 0
05:25:41.195 [6] - flags: 0x01 value: 0
05:25:41.195 [7] - flags: 0x01 value: 0
05:25:41.195 [8] - flags: 0x01 value: 0
05:25:41.195 [9] - flags: 0x01 value: 0
05:25:41.195 [10] - flags: 0x01 value: 0
05:25:41.195 [11] - flags: 0x01 value: 0
05:25:41.195 [12] - flags: 0x01 value: 0
05:25:41.195 [13] - flags: 0x01 value: 0
05:25:41.195 [14] - flags: 0x01 value: 0
05:25:41.195 [15] - flags: 0x01 value: 0
05:25:41.195 [16] - flags: 0x01 value: 0
05:25:41.195 [17] - flags: 0x01 value: 0
05:25:41.195 [18] - flags: 0x01 value: 0
05:25:41.195 [19] - flags: 0x01 value: 0
05:25:41.196 step: 3
05:25:41.196 - Freeze(0x07) fir: 1 fin: 1 con: 0 uns: 0 seq: the next using link options: { destination == 0xFFFE }
05:25:41.196 - g20v0, All Objects
05:25:41.196 --A-> Freeze(0x07) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x01
05:25:41.196 g20v0, All Objects
05:25:41.196 --T-> fir: 1 fin: 1 seq: 0
05:25:41.196 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 65534 src: 1
05:25:41.196 --P-> 05 64 0B C4 FE FF 01 00 77 CD
05:25:41.196 C0 C1 07 14 00 06 7E E1
05:25:41.196 steps: 4 to 5
05:25:41.196 - Verify that no link layer frames are received within 2000 ms
05:25:43.198 frame receive timeout
05:25:43.198 step: 6
05:25:43.199 - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: the next
05:25:43.199 - g60v2, All Objects
05:25:43.199 --A-> Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x02
05:25:43.199 g60v2, All Objects
05:25:43.199 --T-> fir: 1 fin: 1 seq: 0
05:25:43.199 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 1024 src: 1
05:25:43.199 --P-> 05 64 0B C4 00 04 01 00 CA 8A
05:25:43.199 C0 C2 01 3C 02 06 58 A6
05:25:43.199 step: 7
05:25:43.199 - Read a single fragment response w/ the sequence number of the request before it
05:25:43.199 - Verify that the response is empty
05:25:43.199 - Verify that the IIN field does not contain bits IIN(ParamError, ObjectUnknown, FuncNotSupported)
05:25:43.199 - Verify that the IIN field contains IIN(Broadcast)
05:25:43.199 - Verify that an application layer confirmation is requested.
05:25:43.199 <-P-- 05 64 0A 44 01 00 00 04 67 88
05:25:43.199 C1 E2 81 91 00 4D 6F
05:25:43.200 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024
05:25:43.200 <-T-- fir: 1 fin: 1 seq: 1
05:25:43.200 <-A-- Response(0x81) fir: 1 fin: 1 con: 1 uns: 0 seq: 0x02 IIN(DeviceRestart, NeedTime, Broadcast)
05:25:43.200 step: 8
05:25:43.200 - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: the next
05:25:43.200 - g60v2, All Objects
05:25:43.200 - Read a single fragment response w/ the sequence number of the request before it
05:25:43.200 - Verify that the IIN field contains IIN(Broadcast)
05:25:43.200 - Verify that an application layer confirmation is requested.
05:25:43.200 --A-> Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03
05:25:43.200 g60v2, All Objects
05:25:43.200 --T-> fir: 1 fin: 1 seq: 0
05:25:43.200 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 1024 src: 1
05:25:43.200 --P-> 05 64 0B C4 00 04 01 00 CA 8A
05:25:43.200 C0 C3 01 3C 02 06 5E 85
05:25:43.200 <-P-- 05 64 0A 44 01 00 00 04 67 88
05:25:43.200 C2 E3 81 91 00 AF C8
05:25:43.200 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024
05:25:43.200 <-T-- fir: 1 fin: 1 seq: 2
05:25:43.201 <-A-- Response(0x81) fir: 1 fin: 1 con: 1 uns: 0 seq: 0x03 IIN(DeviceRestart, NeedTime, Broadcast)
05:25:43.201 step: 9
05:25:43.201 - Send the application layer confirmation the response asked for
05:25:43.201 --A-> Confirm(0x00) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x03
05:25:43.201 --T-> fir: 1 fin: 1 seq: 0
05:25:43.201 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 8 dest: 1024 src: 1
05:25:43.201 --P-> 05 64 08 C4 00 04 01 00 9A 19
05:25:43.201 C0 C3 00 98 26
05:25:43.201 step: 10
05:25:43.201 - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: the next
05:25:43.201 - g60v2, All Objects
05:25:43.201 --A-> Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x04
05:25:43.201 g60v2, All Objects
05:25:43.201 --T-> fir: 1 fin: 1 seq: 0
05:25:43.201 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 1024 src: 1
05:25:43.201 --P-> 05 64 0B C4 00 04 01 00 CA 8A
05:25:43.201 C0 C4 01 3C 02 06 4C 6C
05:25:43.201 step: 11
05:25:43.201 - Read a single fragment response w/ the sequence number of the request before it
05:25:43.201 - Verify that the response is empty
05:25:43.201 - Verify that the IIN field does not contain bits IIN(ParamError, ObjectUnknown, FuncNotSupported)
05:25:43.201 - Verify that the IIN field does not contain bits IIN(Broadcast)
05:25:43.202 <-P-- 05 64 0A 44 01 00 00 04 67 88
05:25:43.202 C3 C4 81 90 00 BA 95
05:25:43.202 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024
05:25:43.202 <-T-- fir: 1 fin: 1 seq: 3
05:25:43.202 <-A-- Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x04 IIN(DeviceRestart, NeedTime)
05:25:43.202 step: 12
05:25:43.202 - Freeze(0x07) fir: 1 fin: 1 con: 0 uns: 0 seq: the next using link options: { destination == 0xFFFD }
05:25:43.202 - g20v0, All Objects
05:25:43.202 --A-> Freeze(0x07) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x05
05:25:43.202 g20v0, All Objects
05:25:43.202 --T-> fir: 1 fin: 1 seq: 0
05:25:43.202 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 65533 src: 1
05:25:43.202 --P-> 05 64 0B C4 FD FF 01 00 36 C7
05:25:43.202 C0 C5 07 14 00 06 66 6D
05:25:43.202 steps: 13 to 14
05:25:43.202 - Verify that no link layer frames are received within 2000 ms
05:25:45.204 frame receive timeout
05:25:45.205 step: 15
05:25:45.205 - Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: the next
05:25:45.205 - g60v2, All Objects
05:25:45.205 --A-> Read(0x01) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x06
05:25:45.205 g60v2, All Objects
05:25:45.205 --T-> fir: 1 fin: 1 seq: 0
05:25:45.205 --L-> master: 1 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0xC4 length: 11 dest: 1024 src: 1
05:25:45.205 --P-> 05 64 0B C4 00 04 01 00 CA 8A
05:25:45.205 C0 C6 01 3C 02 06 40 2A
05:25:45.205 step: 16
05:25:45.205 - Read a single fragment response w/ the sequence number of the request before it
05:25:45.205 - Verify that the response is empty
05:25:45.205 - Verify that the IIN field does not contain bits IIN(ParamError, ObjectUnknown, FuncNotSupported)
05:25:45.205 - Verify that the IIN field contains IIN(Broadcast)
05:25:45.205 - Verify that the response doesn't ask for an application layer confirmation.
05:25:45.206 <-P-- 05 64 0A 44 01 00 00 04 67 88
05:25:45.206 C4 C6 81 91 00 4F 1F
05:25:45.206 <-L-- master: 0 pri: 1 fcb: 0 fcv: 0 func: UNCONFIRMED_USER_DATA(0x04) 0x44 length: 10 dest: 1 src: 1024
05:25:45.206 <-T-- fir: 1 fin: 1 seq: 4
05:25:45.206 <-A-- Response(0x81) fir: 1 fin: 1 con: 0 uns: 0 seq: 0x06 IIN(DeviceRestart, NeedTime, Broadcast)
05:25:45.206 Passed procedure: 8.6.5b