4.3 Probing Policy and Querying Logical Flow Status

The following diagram demonstrated the steps taken to probe current policy configuration for an open and to query logical flow status.

Probing policy and querying logical flow status

Figure 2: Probing policy and querying logical flow status

  1. The client sends an SMB2 IOCTL Request with a STORAGE_QOS_CONTROL_REQUEST buffer to query the status of an existing logical flow and probe its policy configuration:

     01 01
     00 00
     1C 00 00 00
     E4 32 3A B1 AD E2 B2 5D A4 F8 5C D3 BE 9D 69 6E
     4E F2 B4 04 E9 B3 94 45 AD AA E3 27 52 8D E5 4B
     C6 4D 9E 1B C0 F8 9F 41 87 85 80 65 BC FF 72 84
     00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00
     00 00 00 00
     00 00 00 00
     8F 01 00 00 00 00 00 00
     8F 01 00 00 00 00 00 00
     E0 3E 47 02 00 00 00 00
     E0 3E 47 02 00 00 00 00
     00 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00
      
     ProtocolVersion: 0x0101
     Reserved: 0x0000
     Options: 0x0000001C (STORAGE_QOS_CONTROL_FLAG_PROBE_POLICY |
     STORAGE_QOS_CONTROL_FLAG_GET_STATUS |
     STORAGE_QOS_CONTROL_FLAG_UPATE_COUNTERS)
     LogicalFlowID: b13a32e4-e2ad-5db2-a4f8-5cd3be9d696e
     PolicyID: 04b4f24e-b3e9-4594-adaa-e327528de54b
     InitiatorID: 1b9e4dc6-f8c0-419f-8785-8065bcff7284
     Limit: 0x0000000000000000
     Reservation: 0x0000000000000000
     InitiatorNameOffset: 0 (0x0000)
     InitiatorNameLength: 0 (0x0000)
     InitiatorNodeNameOffset: 0 (0x0000)
     InitiatorNodeNameLength: 0 (0x0000)
     IoCountIncrement: 399 (0x000000000000018F)
     NormalizedIoCountIncrement: 399 (0x000000000000018F)
     LatencyIncrement: 38223584 (0x0000000002473EE0)
     LowerLatencyIncrement: 38223584 (0x0000000002473EE0)
     BandwidthLimit: 0x0000000000000000 
     KilobyteCountIncrement: 0x0000000000000000
    
  2. The server sends an SMB2 IOCTL Response with STATUS_SUCCESS and a STORAGE_QOS_CONTROL_RESPONSE output buffer:

     01 01
     00 00
     00 00 00 00
     E4 32 3A B1 AD E2 B2 5D A4 F8 5C D3 BE 9D 69 6E
     4E F2 B4 04 E9 B3 94 45 AD AA E3 27 52 8D E5 4B
     C6 4D 9E 1B C0 F8 9F 41 87 85 80 65 BC FF 72 84
     8D 0F 00 00
     00 00 00 00
     64 00 00 00 00 00 00 00
     00 00 00 00 00 00 00 00
     C8 00 00 00 00 00 00 00
     00 20 00 00
     00 00 00 00
      
     ProtocolVersion: 0x0101
     Reserved: 0x0000
     Options: 0x00000000
     LogicalFlowID: b13a32e4-e2ad-5db2-a4f8-5cd3be9d696e
     PolicyID: 04b4f24e-b3e9-4594-adaa-e327528de54b
     InitiatorID: 1b9e4dc6-f8c0-419f-8785-8065bcff7284
     TimeToLive: 3981 (0x00000F8D)
     Status: 0x00000000 (StorageQoSStatusOk)
     MaximumIoRate: 100 (0x0000000000000064)
     MinimumIoRate: 0 (0x0000000000000000)
     MaximumBandwidth: 200 (0x00000000000000C8)
     BaseIoSize: 8192 (0x00002000)
     Reserved: 0 (0x00000000)