> -----Original Message-----
> From: Alan Wright [mailto:[email protected]]
> Sent: Thursday, April 08, 2010 12:38 PM
> To: Garrett D'Amore
> Cc: [email protected]; [email protected]
> Subject: Re: SMB/CIFS Statistics [PSARC/2010/120 FastTrack timeout
> 04/14/2010]
> 
> On 04/ 7/10 10:59 PM, Garrett D'Amore wrote:
>  > On 04/ 7/10 10:47 PM, Jordan Brown wrote:
>  >> Garrett D'Amore wrote:
>  >>>
>  >>> What's missing is an interface table. I think though that based on
>  >>> the statement that its not to be parsed ("for humans only"), the
>  >>> output is not-an-interface.
>  >>
>  >> Yes. The stability is the same as the existing command:
>  >>
>  >> |_____________________________|_____________________________|
>  >> | Interface Stability | Uncommitted |
>  >> |_____________________________|_____________________________|
>  >> | Utility Output Format | Not-an-Interface |
>  >> |_____________________________|_____________________________|
>  >>
>  >
>  > You haven't mentioned anything about underlying kstats. Is this how
>  > these stats are implemented? Should that be covered under an ARC
> case as
>  > well (perhaps this one)?
> 
> smbstat has always created its output from undocumented kstats and,
> as with the interface stability, changing that wasn't part of this
> project.  The purpose here is solely to expand and improve on the
> command output.  The underlying kstats have not been considered for
> anything other than internal smbstat consumption.  Publishing them,
> particularly if they may be used in scripts, without taking the
> change of scope into consideration and reviewing the design from
> that perspective is not a good idea.
> 
> I'd prefer to take this as an RFE rather than delay/withdraw this
> case while we go back and review the project with a different scope.
> 

This is a good point. Please indicate if everybody is okay with this.

> --
> 
>  >>> On 04/ 7/10 05:51 PM, Jordan Brown wrote:
>  >>>> Template Version: @(#)sac_nextcase 1.70 03/30/10 SMI
>  >>>> This information is Copyright (c) 2010, Oracle and/or its
>  >>>> affiliates. All rights reserved.
>  >>>> 1. Introduction
>  >>>> 1.1. Project/Component Working Name:
>  >>>> SMB/CIFS Statistics
>  >>>> 1.2. Name of Document Author/Supplier:
>  >>>> Author: Jose Borrego
>  >>>> 1.3 Date of This Document:
>  >>>> 07 April, 2010
>  >>>>
>  >>>> 1.4. Name of Major Document Customer(s)/Consumer(s):
>  >>>> PSARC
>  >>>> CIFS team
>  >>>>
>  >>>> 1.5. Email Aliases:
>  >>>> 1.5.1. Responsible Manager: [email protected]
>  >>>> 1.5.2. Responsible Engineer: [email protected]
>  >>>> 1.5.3. Marketing Manager:
>  >>>> 1.5.4. Interest List: [email protected]
>  >>>>
>  >>>> 4. Technical Description:
>  >>>>
>  >>>> Executive Summary:
>  >>>>
>  >>>> This case improves the statistics the SMB/CIFS server maintains
> as
>  >>>> well as
>  >>>> the output of smbstat.
>  >>>>
>  >>>> Problem:
>  >>>>
>  >>>> Currently the only statistics the SMB/CIFS server maintains are
>  >>>> counters
>  >>>> keeping track of how many requests of each type were received,
> the
>  >>>> number
>  >>>> of open files, the number of sessions (users logged in) and the
>  >>>> number of
>  >>>> connections (trees connected). Those statistics are not enough to
>  >>>> describe
>  >>>> the load being applied as well as how the server is responding to
> it.
>  >>>>
>  >>>> Solution:
>  >>>>
>  >>>> In order to get a better picture of the state of the SMB/CIFS
> server
>  >>>> the
>  >>>> following information can be maintained and provided through
> smbstat:
>  >>>>
>  >>>> - Counters:
>  >>>> * nbt:
>  >>>> Number of SMB NetBIOS-over-TCP (NBT) sessions.
>  >>>>
>  >>>> * tcp:
>  >>>> Number of SMB TCP sessions.
>  >>>>
>  >>>> * users:
>  >>>> Number of users logged in.
>  >>>>
>  >>>> * trees:
>  >>>> Number of trees connected.
>  >>>>
>  >>>> * files:
>  >>>> Number of open files.
>  >>>>
>  >>>> * pipes:
>  >>>> Number of open pipes.
>  >>>>
>  >>>> - Throughput:
>  >>>> * rbytes/s:
>  >>>> Number of bytes received per second.
>  >>>>
>  >>>> * tbytes/s:
>  >>>> Number of bytes transmitted per second.
>  >>>>
>  >>>> * reqs/s:
>  >>>> Number of requests handled per second.
>  >>>>
>  >>>> * reads/s:
>  >>>> Number of read requests per second. This would be an aggregation
> of
>  >>>> the following requests:SMB_COM_READ, SMB_COM_LOCK_AND_READ,
>  >>>> SMB_COM_READ_RAW and SMB_COM_READ_ANDX.
>  >>>>
>  >>>> * writes/s:
>  >>>> Number of write requests per second. This would ba an aggregation
> of
>  >>>> the following requests: SMB_COM_WRITE, SMB_COM_WRITE_AND_UNLOCK,
>  >>>> SMB_COM_WRITE_RAW and SMB_COM_WRITE_AND_CLOSE.
>  >>>>
>  >>>> - Utilization:
>  >>>> * wcnt:
>  >>>> Average number of requests received but waiting for an SMB worker
>  >>>> thread to execute them.
>  >>>>
>  >>>> * rcnt:
>  >>>> Average number of requests being simultaneously executed by an
> SMB
>  >>>> worker thread.
>  >>>>
>  >>>> * wtime:
>  >>>> Average time a request waits before an SMB worker thread starts
>  >>>> executing it.
>  >>>>
>  >>>> * rtime:
>  >>>> Average execution time of a request.
>  >>>>
>  >>>> * w%:
>  >>>> Percentage of the time during which at least one request was
>  >>>> waiting.
>  >>>>
>  >>>> * r%:
>  >>>> Percentage of the time during which at least one request was
> being
>  >>>> executed.
>  >>>>
>  >>>> * u%:
>  >>>> Percentage of utilization of the SMB/CIFS server. This number is
>  >>>> defined as: rcnt / (Max Worker Threads).
>  >>>>
>  >>>> * sat:
>  >>>> Flag indicating if the server saturated in the past. Saturation
> is
>  >>>> defined as: u% == 100%.
>  >>>>
>  >>>> * usr%:
>  >>>> Percentage of the time the processor(s) spent in user space.
>  >>>>
>  >>>> * sys%:
>  >>>> Percentage of the time the processor(s) spent in kernel space.
>  >>>>
>  >>>> * idle%:
>  >>>> Percentage of the time the processor(s) was(were) idle.
>  >>>>
>  >>>> - Requests:
>  >>>> For each type of request:
>  >>>> * %:
>  >>>> Percentage of that type of request.
>  >>>>
>  >>>> * rbytes/s:
>  >>>> Number of bytes received per second.
>  >>>>
>  >>>> * tbytes/s:
>  >>>> Number of bytes received per second.
>  >>>>
>  >>>> * req/s:
>  >>>> Number of requests handled per second.
>  >>>>
>  >>>> * rt-mean:
>  >>>> Average response time in seconds.
>  >>>>
>  >>>> * rt-stddev:
>  >>>> Standard deviation of the response time.
>  >>>>
>  >>>> To access this information the CLI smbstat must be modified and
>  >>>> allow the
>  >>>> following options:
>  >>>>
>  >>>> -r Display the statistics of the requests.
>  >>>>
>  >>>> -a Display the statistics of all the types of request (the 256 of
>  >>>> them) whether they are valid or not.
>  >>>>
>  >>>> -n Display in alphabetic order.
>  >>>>
>  >>>> -z Display the statistics of the requests actually received.
>  >>>>
>  >>>> -t Display the throughput of the SMB/CIFS server.
>  >>>>
>  >>>> -u Display the utilization of the SMB/CIFS server.
>  >>>>
>  >>>> -c Display the counters.
>  >>>>
>  >>>> A number can also be provided indicating the interval of time
> between
>  >>>> refreshes. The first statistics displayed cover the time between
> when
>  >>>> the server was started and the moment the statistics were
> requested.
>  >>>> Subsequent refreshes cover the last time interval only.
>  >>>>
>  >>>> It should be noted that the output is all new replacing the old
> one and
>  >>>> is for humans only.
>  >>>>
>  >>>> Examples of smbstat output:
>  >>>>
>  >>>> 'smbstat -ctu'
>  >>>>
>  >>>> nbt tcp users trees files pipes
>  >>>> 0 1 1 2 20 0
>  >>>>
>  >>>> rbytes/s tbytes/s reqs/s reads/s writes/s
>  >>>> 1.036e+02 1.298e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>>
>  >>>> wcnt rcnt wtime rtime w% r% u% sat usr% sys% idle%
>  >>>> 4.317e-01 7.410e+00 2.461e-05 4.224e-04 31 100 0 no 0 76 24
>  >>>>
>  >>>> 'smbstat -r'
>  >>>>
>  >>>> code % rbytes/s tbytes/s req/s rt-mean rt-stddev
>  >>>> SmbCreateDirectory 00 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbDeleteDirectory 01 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbOpen 02 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> SmbCreate 03 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> SmbClose 04 0 0.000e+00 0.000e+00 0.000e+00 2.496e-04 8.003e-06
>  >>>> SmbFlush 05 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> SmbDelete 06 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> SmbRename 07 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> SmbQueryInformation 08 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbSetInformation 09 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbRead 0A 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> SmbWrite 0B 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> SmbLockByteRange 0C 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbUnlockByteRange 0D 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbCreateTemporary 0E 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbCreateNew 0F 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbCheckDirectory 10 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbProcessExit 11 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbSeek 12 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> SmbLockAndRead 13 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbWriteAndUnlock 14 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbReadRaw 1A 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> SmbWriteRaw 1D 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbSetInformation2 22 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbQueryInformation2 23 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbLockingX 24 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbTransaction 25 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbTransactionSecondary 26 0 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbIoctl 27 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> SmbEcho 2B 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> SmbWriteAndClose 2C 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbOpenX 2D 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> SmbReadX 2E 0 0.000e+00 0.000e+00 0.000e+00 3.550e-04 1.856e-05
>  >>>> SmbWriteX 2F 100 4.607e+02 1.675e+00 0.000e+00 3.893e-04 2.691e-
> 07
>  >>>> SmbCloseAndTreeDisconnect 31 0 0.000e+00 0.000e+00 0.000e+00
>  >>>> 0.000e+00 0.000e+00
>  >>>> SmbTransaction2 32 0 0.000e+00 0.000e+00 0.000e+00 5.203e-04
> 8.612e-06
>  >>>> SmbTransaction2Secondary 33 0 0.000e+00 0.000e+00 0.000e+00
>  >>>> 0.000e+00 0.000e+00
>  >>>> SmbFindClose2 34 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbTreeConnect 70 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbTreeDisconnect 71 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbNegotiate 72 0 0.000e+00 0.000e+00 0.000e+00 4.625e-05
> 0.000e+00
>  >>>> SmbSessionSetupX 73 0 0.000e+00 0.000e+00 0.000e+00 1.145e-01
> 0.000e+00
>  >>>> SmbLogoffX 74 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> SmbTreeConnectX 75 0 0.000e+00 0.000e+00 0.000e+00 5.851e-04
> 2.436e-05
>  >>>> SmbQueryInformationDisk 80 0 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbSearch 81 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> SmbFind 82 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> SmbFindUnique 83 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbFindClose 84 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbNtTransact A0 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbNtTransactSecondary A1 0 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbNtCreateX A2 0 0.000e+00 0.000e+00 0.000e+00 5.154e-02 2.063e-
> 03
>  >>>> SmbNtCancel A4 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbNtRename A5 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbOpenPrintFile C0 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>> SmbWritePrintFile C1 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbClosePrintFile C2 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
>  >>>> 0.000e+00
>  >>>> SmbGetPrintQueue C3 0 0.000e+00 0.000e+00 0.000e+00 0.000e+00
> 0.000e+00
>  >>>>
>  >>>> 'smbstat -rz'
>  >>>>
>  >>>> code % rbytes/s tbytes/s req/s rt-mean rt-stddev
>  >>>> SmbClose 04 0 0.000e+00 0.000e+00 0.000e+00 2.445e-04 5.906e-06
>  >>>> SmbReadX 2E 4 0.000e+00 2.772e+01 0.000e+00 1.556e-03 7.878e-06
>  >>>> SmbWriteX 2F 96 7.162e+02 2.604e+00 0.000e+00 5.365e-04 3.913e-07
>  >>>> SmbTransaction2 32 0 0.000e+00 0.000e+00 0.000e+00 5.203e-04
> 8.612e-06
>  >>>> SmbNegotiate 72 0 0.000e+00 0.000e+00 0.000e+00 4.625e-05
> 0.000e+00
>  >>>> SmbSessionSetupX 73 0 0.000e+00 0.000e+00 0.000e+00 1.145e-01
> 0.000e+00
>  >>>> SmbTreeConnectX 75 0 0.000e+00 0.000e+00 0.000e+00 5.851e-04
> 2.436e-05
>  >>>> SmbNtCreateX A2 0 0.000e+00 0.000e+00 0.000e+00 7.250e-02 2.304e-
> 03
>  >>>>
>  >>>> 6. Resources and Schedule
>  >>>> 6.4. Steering Committee requested information
>  >>>> 6.4.1. Consolidation C-team Name:
>  >>>> ON
>  >>>> 6.5. ARC review type: FastTrack
>  >>>> 6.6. ARC Exposure: open


_______________________________________________
opensolaris-arc mailing list
[email protected]

Reply via email to