The following files are included in SCANDS.EXE: LETTER.TXT 2,051 Bytes README.TXT 12,809 Bytes SCANTREE.EXE 202,062 Bytes SMEM.EXE 56,077 Bytes SURVEY.TXT 5,329 Bytes README.TXT Using SCANTREE.EXE to Gather NDS Tree Statistics This DOS text file is from an AppNote in the January 96 issue of the Novell Application Notes. For subscription information, call the Novell Research Order Desk : 800-377-4136 (U.S. & Canada) 303-297-2725 (other locations) 303-294-0930 (fax) Table of Contents Abstract Purpose Introduction to SCANTREE System Requirements SCANTREE Syntax Use of Options Handling Error Conditions Estimated Time to Completion Sample Log Files Abstract SCANTREE.EXE is a DOS application designed to traverse an NDS tree and return a series of statistics. The results help to characterize an NDS tree by describing the width and depth of the tree, as well as the variety and characteristics of leaf objects. This document describes how to run SCANTREE. It covers the system requirements, explains the command syntax, and shows some sample log files. Purpose The release of SCANTREE.EXE is part of an ongoing research project performed by Novell Systems Research and we invite you to participate. You can help by filling out a site survey, running SCANTREE.EXE, and returning the survey and SCANTREE log file to rlee@novell.com. The site survey, SCANTREE.EXE, SCANTREE documentation, and your invitation to participate are enclosed in a self-extracting file called SCANDS.EXE. This file can be found on NetWire, ftp, and ftp via www.novell.com. The purpose of this study is to accumulate enough data about customers' trees of all sizes so that we can statistically describe trees being used in production networks. This data will benefit the design of NDS benchmarks and the formulation of rules of thumb for NDS design and optimization. If you need further information concerning the project and how you can participate, send a request for information to rlee@novell.com with a subject of "Scantree RFI." Introduction to SCANTREE SCANTREE is a DOS application designed to traverse an NDS tree and return a series of statistics. The results help to characterize an NDS tree by describing the width and depth of the tree as well as the variety and characteristics of leaf objects. SCANTREE is a read-only application. It will not affect your tree's structure or data in any way. System Requirements To run SCANTREE.EXE, you need the following: A personal computer with a 386 or higher processor, running DOS 5 or higher. 500 KB of available conventional RAM. (SCANTREE uses temporary files such as SCANTREE.nnn to store container information. These files reduce the possibility of running out of memory while analyzing large trees.) The Novell VLM client, version 1.20 revision B or higher. A search drive mapped to the SYS:\PUBLIC\NLS directory. The SCANTREE workstation connection must be logged in and authenticated with all read rights to the tree or subtree you are scanning. This requires you to log in as Admin or some other user with equivalent access rights before running SCANTREE. SCANTREE Syntax The syntax for running the SCANTREE application is as follows: SCANTREE [options...] The options can include any of the following: /? Displays the help screen Targets a specific context (in typeful format) /users Reports only user objects /d Dumps all object and container names to standard output Multiple options may be included on the command line. Use of Options Default Operation. If you run SCANTREE without any options, the utility scans all objects in the tree beginning at [Root]. Once finished, SCANTREE displays its summary statistics to standard output (the screen). Example: SCANTREE scans the entire tree and outputs statistics to the screen. Redirection of Standard Output. In most cases, you'll want to redirect SCANTREE's output to a file on a local hard drive by using the ">" operator. When SCANTREE output is redirected, nothing is displayed on the screen except a busy indicator to provide assurance that SCANTREE is running. Example: SCANTREE > LOG.TXT scans the entire tree and outputs statistics to the specified file (LOG.TXT in this example). Target Context. If you want to scan a specific context, include the fully distinguished (typeful) name of the container object on the command line. Example: SCANTREE OU=MKTG.OU=NPD.O=NOVELL > LOG.TXT scans the specified context (subtree) and outputs results to LOG.TXT. Report Only User Objects. Add the command line parameter /users to scan the tree specifically for user objects and produce summary statistics related only to user objects. Example: SCANTREE /USERS > LOG.TXT scans the entire tree for user objects and outputs statistics to LOG.TXT. Dump Object Names. If the tree structure and object names are desired, use the /d parameter to dump the structure and object names to standard output. Example: SCANTREE /D OU=MKTG.OU=NPD.O=NOVELL > LOG.TXT scans the specified context (subtree) and outputs summary statistics, tree structure and object names to LOG.TXT. Handling Error Conditions SCANTREE will stop in the case of temporary unavailability of part of the tree. If this occurs, rerun SCANTREE. If you receive an "Abort, Retry, Ignore" message from the network, choose Retry. Estimated Time to Completion SCANTREE's execution time depends mostly on the size and distributed nature of the tree. Small trees can be traversed in several minutes. Larger trees may take much longer to scan. For example, Novell's production tree includes 19,000 objects spread over 300 partitions. SCANTREE required nearly eight hours to traverse Novell's tree and record the log file statistics. On a weekend, with minimal network traffic and server utilization, the SCANTREE operation at Novell completed in half that time. For this example run, we used the non-default /d parameter to print the tree structure and object names. A default SCANTREE operation will take less time. For larger trees, we recommend that you run SCANTREE during an evening or weekend when the tree traversal can complete more quickly. Running SCANTREE during periods of low activity allows the tree traversal to conclude more quickly and keeps unnecessary traffic off the network and partitions during production hours. Sample Log Files Following are three sample log files that show the type of data collected by SCANTREE. Figure 1 shows the results of running SCANTREE on a newly-installed tree with one server. Since the /d option was used, the full object and container names are included in the log file. Figure 2 shows the results of running SCANTREE in default mode on Novell's production tree. Figure 3 is an example of using the /users option to restrict the results to just User objects. Figure 1: SCANTREE results from a newly-created tree. SCANTREE /D > LOG.TXT Scantree O=SNOWBIRD., Mon Dec 11 14:53:59 1995 ========================================================== OBJECT NAME (SUBORDINATES, ATTRIBUTES, ATTRIBUTE SIZE) CN=SNOWBIRD (0, 9, 681) CN=Admin (0, 10, 1104) CN=SNOWBIRD_SYS (0, 6, 272) ============== 00:00:00 ================================== NCP Server 1 User 1 Volume 1 { Attributes - # } 25 { Attributes - size } 2057 { Largest container } 3 { Replicas - Master } 1 { Objects } 3 { Partitions } 1 { Streams - size } 0 Figure 2: SCANTREE results on the Novell production tree. SCANTREE > LOG.TXT Scantree [Root], Wed Oct 04 11:18:31 1995 ========================================================== OBJECT NAME (SUBORDINATES, ATTRIBUTES, ATTRIBUTE SIZE) O=Novell. (66, 40, 46203) ... ============== 07:24:05 ================================== AFP Server 1 //Object classes found Alias 375 Application (DOS) 7 Application (Windows 3.x) 90 Application (Windows 95) 7 Application (Windows NT) 14 Bindery Object 510 Bindery Queue 124 Btrieve Server 1 Computer 18 Connect Server 21 Directory Map 174 External Entity 2 Group 2501 Job Queue 2 Job Server 2 Message Routing Group 1 Messaging Server 2 NCP Server 433 Organization 1 Organizational Role 297 Organizational Unit 1149 PBX Device 97 PBX Device Group 10 Palindro:JobQueue 6 Print Server 513 Printer 454 Profile 204 Queue 812 Tserver 3 Tserver PBX 2 Tserver Service 11 Unknown 68 User 9820 Volume 1168 Worktop 74 { Attributes - # } 346618 // Summary Statistics { Attributes - size } 73383820 { Collision renames } 73 { Group memberships } 63057 { Largest container } 914 { NWDSList errors } 2 { NWDSRead errors } 14 { Objects } 18974 { Partitions } 291 { Streams - # } 7452 { Streams - size } 8311001 { Subordinate errors } 7 Figure 3: SCANTREE results on the Novell production tree with the /USERS option enabled. SCANTREE /USERS > LOG.TXT Scantree [Root], Thu Oct 05 10:20:03 1995 ========================================================== OBJECT NAME (SUBORDINATES, ATTRIBUTES, ATTRIBUTE SIZE) O=Novell. (66, 0, 0) ... ============== 04:58:56 ================================== User 9826 { Attributes - # } 264007 // Summary Statistics { Attributes - size } 35040525 { Collision renames } 74 { Group memberships } 62468 { Largest container } 916 { NWDSList errors } 4 { NWDSRead errors } 2 { Objects } 9826 { Partitions } 290 { Streams - # } 6734 { Streams - size } 5969009 { Subordinate errors } 6 END