- Storage Spaces Direct
- Windows Volume Mgmt.
- Windows File Systems
- Volume Shadowcopy Services
- Storage Replica
Unfortunately, Novell Netware is pretty much dead as an operating system. These pages will not be updated anymore, but will be retained for a while for the benefit of the faithful who continue to use this excellent operating system.
Novell did create the Open Enterprise Server, a SUSE Linux based OS that runs most of the old NetWare server functions.
Netware hard disks comply with the IBM disk-partitioning standard, which states that a hard disk can hold a maximum of four physical partitions. This is true for both NSS and Traditional Netware file systems. Each Netware server must have a DOS partition on one of its hard drives. The DOS partition is the primary boot partition where server.exe is stored.
Within the four-partition restriction, a hard disk can have UNIX, LINUX or WINDOWS 2000/2003 partitions, multiple Netware partitions or free (unassigned) space. At least one physical partitions will be a Netware partition. Netware requires a SYS: volume, which is created automatically when Netware is installed. The SYS: volume does not have to be on the same disk as the DOS partition. A server can have several hard disks of course, each of which can be partitioned.
Netware 6 allows you to split physical Netware partitions into logical partitions, called partition segments. These segments can be Traditional partitions, NSS partitions, iSCSI partitions, or SBD partitions for clustering. All these appear to the user as partition objects. In order to comply with the four-partition limit, the partitions segments are all combined into a single NetWare partition as seen on the master boot record. Some partition variations are illustrated below.
Each partition contains a data area, where the file system resides, and can contain another data area, called the mirror object, which is used to manage mirroring. The entire NetWare partition, including both the data area and mirror object, is called the physical partition. The data area of the partition is called the logical partition.
If you do not use mirroring, the entire physical partition is the logical partition.
The logical partition contains the volume definition table (VDT) that tracks such volume information as volume name, volume size, and the location of volume segments on various network hard disks. The VDT is critical as without it you cannot access your disks, or find your data, so Netware maintains four copies of the VDT for fault tolerance. If a disk error occurs and one table is corrupted, the file system can detect and correct the error.
NetWare assigns a unique number and a unique name to every storage device, disk partition, and logical partition.
Object numbers are not sequential or persistent. New numbers can be assigned when the server is restarted.
To find out what object numbers are assigned, select the Console Monitor, then tab to the ‘registered storage objects’ screen, or use the system console command
This will display to a list of all devices, not just storage objects. The results will typically look like
0x0001 [V025-A0] Netware ATA/IDE Host adaptor module
0x0004 DOS partitioned media
0x0005 [V504-A1-D0:0-P77F] NSS partition
In the Monitor display, you can scroll down the list of storage objects, and each object is explained in more detail in another window as shown below.
Partition ‘[V504-A1-D0:0-P77F]’ NSS partition
Media Manager Object ID: 0x0005
Logical Partition NO
The NetWare Partition above is identified as a NSS Partition. If it was a logical partition it would have been identified either as Non-Mirrored Partition or Mirrored Partition.
The second number in square brackets is the permanent device name, which has the format [Vnnn-An-Dn:mmm] The Vnnn
part is the Vendor number, An is the adaptor number, and Dn is the device number.
The mmmm part of the number after the colon is the Logical Unit Number or LUN. The LUN identifies individual devices when more than one device is attached to one bus.
If you mirror partitions, each logical partition in the mirrored set has the same object number as the other partitions in the set.
To save disk space, you can switch on file compression, so Netware will compress files if they have not been accessed for a number of days. You can change compression options from the Console Monitor, Server Parameter screen, then Common File System Parameters. The console will display a descriptive
help screen as you scroll down the list of parameters, so I see no point in repeating them all here.
A couple of tips. You control when the server scans the file system and selects file for compression with the “Compression Daily Check Start Hour” and “Compression Daily Check Stop Hour” parameters. Make sure you schedule this to run at a quiet time.
Do not set the “Deleted Files Compression Option parameter” to ‘2’, as that would cause compression whenever a file is deleted but not purged.
Small files can waste space when allocated on disks with fixed disk blocksizes. If you are using the Traditional NetWare file system (not NSS) then you can use block suballocation. The default block size for Netware disks is 8KB. Netware will divide partially used disk blocks into 512-byte suballocation blocks for the storage of small files or fragments of files.
Block suballocation is enabled by default, but can be disabled when the volume is created. After block suballocation is enabled, you cannot disable the feature without re-creating the volume using Netware utilities. Storage Manager from Portlock Software has a 'Remove Volume Block Suballocation' command that will remove block suballocation from dismounted volumes, but I have no experience of using this.
If you use block suballocation, consider setting your file block size to 64 KB as the larger block size causes the system to transfer more data at one time, which improves performance.
Make sure you keep at least 1000 free blocks on each Traditional volume that has suballocation enabled, as otherwise server utilization will increase.
The easiest way to find out how your volumes are defined and how many blocks are free is to use the VOLUME console command. VOLUME on its own will display a list of mounted volumes. VOLUME SYS, for example, will show you all the attributes for the SYS volume.
Netware will read back data it has written to check that the write happened correctly. This functionality is usually provided by the hardware too, so if your hard disk provides read-after-write verification, you might want to disable the software version of read-after-write verification as this can almost double the speed of disk writes.
To check this,
From the Monitor utility, select Available Options then Storage Devices.
Highlight the desired drive by moving the cursor to it, and hit ‘ENTER’.
This will pull up the ‘Drive Status’, which will contain a ‘Read After Write Verify’ field, which will be one of ‘On’ or ‘Off’ or ‘Not Supported’.
You change this parameter by pressing enter with the cursor in the ‘Read after write Verify’ field, and selecting the desired option.
You can increase the speed of disk reads and writes by striping volume segments across multiple disks. Novell Storage Services (NSS) supports three software level Redundant Array of Independent Disks (RAID) devices:
Both RAID 0 and 5 improve disk read and write performance as the data is striped over several disks, and parts of the data can be read concurrently. RAID 5 write performance is a bit slower to accommodate the writing of parity. RAID 1 improves read performance because data can be read from both disks concurrently.
However, you will get better performance if you use hardware devices that implement RAID internally.
This parameter specifies how long a directory entry must be cached before it can be overwritten.
Increasing this value causes the system to allocate more directory cache buffers and thus speeds up directory access.
If the parameter is currently set to the default value of 5.5 seconds, try increasing the value, then check the effect on performance.
To change this parameter go into the Monitor utility, select Server Parameters then Traditional File System then scroll down the parameter list.
When a program randomly accesses a file that contains more than 64 file allocation table (FAT) entries, the file system builds a turbo FAT index for the
file so that the information in the file can be accessed quickly. Netware will keep this turbo FAT index in memory for a while after the file
is closed, in case it is needed again.
The Turbo FAT Re-Use Wait Time parameter specifies how long a turbo FAT index remains in memory.
To change this parameter, go into the Monitor utility, select Server Parameters then Traditional File System.
Scroll down to the “Turbo FAT Re-Use Wait Time” parameter.
The default value is 5 minutes 29.6 seconds! Try increasing it, and then monitor performance to see what the effect was.
First, you need to know if you have a write intensive server, and if there is a performance problem processing the writes. You can find this out by checking the ratio of dirty cache buffers to total cache buffers. Dirty cache buffers contain data that has not yet been written to disk and if the ratio is high, then the server is having problems with write IO.
Go to the Console Monitor, and select the General Information screen. Compare the number of dirty cache buffers to the total number of cache buffers. If the number of dirty cache buffers is greater than 70 % of total cache buffers, then you should consider increasing the number of concurrent write requests as described below. However, increasing the number of concurrent disk cache writes slows disk cache reads. You might want to balance the speed of disk writes and reads to meet the needs of users. If your server's processing load is write-intensive, you can favour disk writes. If it is read-intensive, favour disk reads.
From the Monitor utility, select Available Options; Server Parameters; File Caching.
Change the value of Maximum Concurrent Disk Cache Writes as appropriate, depending on the problem you want to fix.
The default value is 50, try increasing or decreasing it by increments of 50, and monitor the effect on performance. The new setting will survive a server reboot.
The Dirty Disk Cache Delay Time controls how long the system waits before writing a not-completely-dirty cache buffer to disk. If the value is low, the system writes to disk more frequently, but writes fewer requests each time. If the value is high, the system waits longer before writing to disk, but the writes are more efficient. If you keep data in cache for longer, then you will lose more data if the server crashes and this could corrupt your directory tables.
Again, this is a balancing act. Which is best, infrequent long IO or frequent, short IO? The answer depends on your system setup, type of disks, workload and other factors. You can try changing the Dirty Disk Cache Delay Time to see if the change improves performance.
From the Monitor utility, select Server Parameters; Traditional File System
Scroll down to the Dirty Disk Cache Delay Time parameter.
The default value is 0.5 seconds, try increasing or decreasing it, depending on the problem you want to fix.
This parameter determines how many write requests from directory cache buffers are executed at the same time. If you increase this value you will speed up directory cache write requests, but you will slow down directory cache reads, because you have taken cache away from read IO, to give it to write IO. You need to get the balance right for your workload. The default value is 10 concurrent write IOs. Try increasing it by increments of 5, and monitor the effect until you get the right balance.