Diskless node

Last updated
A Sun-2/50 diskless workstation from Sun-2 series Sun 2-50 Front.jpg
A Sun-2/50 diskless workstation from Sun-2 series

A diskless node (or diskless workstation) is a workstation or personal computer without disk drives, which employs network booting to load its operating system from a server. (A computer may also be said to act as a diskless node, if its disks are unused and network booting is used.)

Contents

Diskless nodes (or computers acting as such) are sometimes known as network computers or hybrid clients. Hybrid client may either just mean diskless node, or it may be used in a more particular sense to mean a diskless node which runs some, but not all, applications remotely, as in the thin client computing architecture.

Advantages of diskless nodes can include lower production cost, lower running costs, quieter operation, and manageability advantages (for example, centrally managed software installation).

In many universities and in some large organizations, PCs are used in a similar configuration, with some or all applications stored remotely but executed locally—again, for manageability reasons. However, these are not diskless nodes if they still boot from a local hard drive.

Distinction between diskless nodes and centralized computing

Diskless nodes process data, thus using their own CPU and RAM to run software, but do not store data persistently—that task is handed off to a server. This is distinct from thin clients, in which all significant processing happens remotely, on the server—the only software that runs on a thin client is the "thin" (i.e. relatively small and simple) client software, which handles simple input/output tasks to communicate with the user, such as drawing a dialog box on the display or waiting for user input.

A collective term encompassing both thin client computing, and its technological predecessor, text terminals (which are text-only), is centralized computing. Thin clients and text terminals can both require powerful central processing facilities in the servers, in order to perform all significant processing tasks for all of the clients.

Diskless nodes can be seen as a compromise between fat clients (such as ordinary personal computers) and centralized computing, using central storage for efficiency, but not requiring centralized processing, and making efficient use of the powerful processing power of even the slowest of contemporary CPUs, which would tend to sit idle for much of the time under the centralized computing model.

Centralized computing
or Thin client
Diskless nodeDataless node [1] Fat client
Local hard drives used for dataNoNoNoYes
Local hard drives used for OSNoNoYesYes
Local general-purpose processing usedNoYesYesYes

Principles of operation

The operating system (OS) for a diskless node is loaded from a server, using network booting. In some cases, removable storage may be used to initiate the bootstrap process, such as a USB flash drive, or other bootable media such as a floppy disk, CD or DVD. However, the firmware in many modern computers can be configured to locate a server and begin the bootup process automatically, without the need to insert bootable media.

The Carry-I book-size LAN station was an early diskless system based on an Intel 80286 processor and produced by Taiwan's Flytech Technology circa 1991. Carry-i-front-and-rear.jpg
The Carry-I book-size LAN station was an early diskless system based on an Intel 80286 processor and produced by Taiwan's Flytech Technology circa 1991.

For network auto-booting, the Preboot Execution Environment (PXE) or Bootstrap Protocol (BOOTP) network protocols are commonly used to find a server with files for booting the device. Standard full-size desktop PCs are able to be network-booted in this manner with an add-on network card that includes a Universal Network Device Interface boot ROM. Diskless network booting is commonly a built-in feature of desktop and laptop PCs intended for business use, since it can be used on an otherwise disk-booted standard desktop computer to remotely run diagnostics, to install software, or to apply a disk image to the local hard drive.

After the bootstrapping process has been initiated, as described above, bootstrapping will take place according to one of three main approaches.

This third approach makes it easier to use client OS than having a complete disk image in RAM or using a read-only file system. In this approach, the system uses some "write cache" that stores every data that a diskless node has written. This write cache is usually a file, stored on a server (or on the client storage if any). It can also be a portion of the client RAM. This write cache can be persistent or volatile. When volatile, all the data that has been written by a specific client to the virtual disk are dismissed when said client is rebooted, and yet, user data can remain persistent if recorded in user (roaming) profiles or home folders (that are stored on remote servers). The two major commercial products (the one from Hewlett-Packard, and the other one from Citrix Systems) that allow the deployment of Diskless Nodes that can boot Microsoft Windows or Linux client OS use such write caches. The Citrix product cannot use persistent write cache, but VHD and HP product can.

Diskless Windows nodes

Windows 3.x and Windows 95 OSR1 [4] supported Remote Boot operations, from NetWare servers, [5] [ failed verification ] Windows NT Servers [6] and even DEC Pathworks servers. [7]

Third party software vendors such as Qualystem (acquired by Neoware), LanWorks (acquired by 3Com), Ardence (acquired by Citrix Systems), APCT [8] and Xtreamining Technology [3] have developed and marketed software products aimed to remote-boot newer versions of the Windows product line: Windows 95 OSR2 and Windows 98 were supported by Qualystem and Lanworks, Windows NT was supported by APCT and Ardence (called VenturCom at that time), and Windows 2000/XP/2003/Vista/Windows 7 are supported by Hewlett-Packard (which acquired Neoware which had previously acquired Qualystem) and Citrix Systems (which acquired Ardence).

Comparison with fat clients

Software installation and maintenance

With essentially a single OS image for an array of machines (with perhaps some customizations for differences in hardware configurations among the nodes), installing software and maintaining installed software can be more efficient. Furthermore, any system changes made during operation (due to user action, worms, viruses, etc.) can be either wiped out when the power is removed (if the image is copied to a local RAM disk) such as Windows XP Embedded remote boot [9] [10] or prohibited entirely (if the image is a network filesystem). This allows use in public access areas (such as libraries) or in schools etc., where users might wish to experiment or attempt to "hack" the system.

However, it is not necessary to implement network booting to achieve either of the above advantages - ordinary PCs (with the help of appropriate software) can be configured to download and reinstall their operating systems on (e.g.) a nightly basis, with extra work compared to using shared disk image that diskless nodes boot off.

Modern diskless nodes can share the very same disk image, using a 1:N relationship (1 disk image used simultaneously by N diskless nodes). This makes it very easy to install and maintain software applications: The administrator needs to install or maintain the application only once, and the clients can get the new application as soon as they boot off the updated image. Disk image sharing is made possible because they use the write cache: No client competes for any writing in a shared disk image, because each client writes to its own cache.

All the modern diskless nodes systems can also use a 1:1 Client-to-DiskImage relationship, where one client "owns" one disk image and writes directly into said disk image. No write cache is used then.

Making a modification in a shared disk image is usually made this way:

  1. The administrator makes a copy of the shared disk image that he/she wants to update (this can be done easily because the disk image file is opened only for reading)
  2. The administrator boots a diskless node in 1:1 mode (unshared mode) from the copy of the disk image he/she just made
  3. The administrator makes any modification to the disk image (for instance install a new software application, apply patches or hotfixes)
  4. The administrator shutdowns the diskless node that was using the disk image in 1:1 mode
  5. The administrator shares the modified disk image
  6. The diskless nodes use the shared disk image (1:N) as soon as they are rebooted.

Centralized storage

The use of central disk storage also makes more efficient use of disk storage. This can cut storage costs, freeing up capital to invest in more reliable, modern storage technologies, such as RAID arrays which support redundant operation, and storage area networks which allow hot-adding of storage without any interruption. Further, it means that losses of disk drives to mechanical or electrical failure—which are statistically highly probable events over a timeframe of years, with a large number of disks involved—are often both less likely to happen (because there are typically fewer disk drives that can fail) and less likely to cause interruption (because they would likely be part of RAID arrays). This also means that the nodes themselves are less likely to have hardware failures than fat clients.

Diskless nodes share these advantages with thin clients.

Performance of centralized storage

However, this storage efficiency can come at a price. As often happens in computing, increased storage efficiency sometimes comes at the price of decreased performance.

Large numbers of nodes making demands on the same server simultaneously can slow down everyone's experience. However, this can be mitigated by installing large amounts of RAM on the server (which speeds up read operations by improving caching performance), by adding more servers (which distributes the I/O workload), or by adding more disks to a RAID array (which distributes the physical I/O workload). In any case this is also a problem which can affect any client-server network to some extent, since, of course, fat clients also use servers to store user data.

Indeed, user data may be much more significant in size and may be accessed far more frequently than operating systems and programs in some environments, so moving to a diskless model will not necessarily cause a noticeable degradation in performance.

Greater network bandwidth (i.e. capacity) will also be used in a diskless model, compared to a fat client model. This does not necessarily mean that a higher capacity network infrastructure will need to be installed—it could simply mean that a higher proportion of the existing network capacity will be used.

Finally, the combination of network data transfer latencies (physically transferring the data over the network) and contention latencies (waiting for the server to process other nodes' requests before yours) can lead to an unacceptable degradation in performance compared to using local drives, depending on the nature of the application and the capacity of the network infrastructure and the server.

Other advantages

Another example of a situation where a diskless node would be useful is in a possibly hazardous environment where computers are likely to be damaged or destroyed, thus making the need for inexpensive nodes, and minimal hardware a benefit. Again, thin clients can also be used here.

Diskless machines may also consume little power and make little noise, which implies potential environmental benefits and makes them ideal for some computer cluster applications.

Comparison with thin clients

Both thin client and diskless node architectures employ diskless clients which have advantages over fat clients (see above), but differ with regard to the location of processing.

Advantages of diskless nodes over thin clients

Advantages of thin clients over diskless nodes

See also

Notes

  1. page 166, Managing NFS and NIS, By Mike Eisler, Ricardo Labiaga, Hal Stern, O'Reilly Media, Inc., Jul 1, 2001
  2. "Remote Boot Feature Overview". Windows Embedded Developer Center. Archived from the original on 2008-04-23.
  3. 1 2 "VHD Central Management System". Xtreaming Technology Inc. Archived from the original on 2014-03-23. Retrieved 2014-03-22.
  4. "Windows 95: Server-Based Setup for Windows 95". Microsoft TechNet . Archived from the original on 2006-11-24.
  5. "HP Networking: switches, routers, wired, wireless, HP TippingPoint Security – HP®". h17007.www1.hp.com. Archived from the original on 22 March 2014. Retrieved 22 March 2014.
  6. "Explanation of How Windows NT Server 4.0 Remoteboot Works". support.microsoft.com. Archived from the original on 2014-03-23. Retrieved 2014-03-22.
  7. "DEC Pathworks Remote Boot Workstations Under Windows 3.1". support.microsoft.com. Archived from the original on 2014-03-23. Retrieved 2014-03-22.
  8. "AbsolutBoot". APCT - Advanced PC Technologies. Archived from the original on 2001-02-22.
  9. Chamberlain, Mark (February 2004). "Deploying Windows XP Embedded Remote Boot". Microsoft Developer Network . Archived from the original on 2012-05-15.
  10. Syed, Saad (November 2002). "RAM Boot Using SDI in Windows XP Embedded with Service Pack 1". Microsoft Developer Network . Archived from the original on 2012-10-13.

Related Research Articles

<span class="mw-page-title-main">Thin client</span> Non-powerful computer optimized for remote server access

In computer networking, a thin client, sometimes called slim client or lean client, is a simple (low-performance) computer that has been optimized for establishing a remote connection with a server-based computing environment. They are sometimes known as network computers, or in their simplest form as zero clients. The server does most of the work, which can include launching software programs, performing calculations, and storing data. This contrasts with a rich client or a conventional personal computer; the former is also intended for working in a client–server model but has significant local processing power, while the latter aims to perform its function mostly locally.

<span class="mw-page-title-main">Workstation</span> High-end single-user computer

A workstation is a special computer designed for technical or scientific applications. Intended primarily to be used by a single user, they are commonly connected to a local area network and run multi-user operating systems. The term workstation has been used loosely to refer to everything from a mainframe computer terminal to a PC connected to a network, but the most common form refers to the class of hardware offered by several current and defunct companies such as Sun Microsystems, Silicon Graphics, Apollo Computer, DEC, HP, NeXT, and IBM which powered the 3D computer graphics revolution of the late 1990s.

Internet Small Computer Systems Interface or iSCSI is an Internet Protocol-based storage networking standard for linking data storage facilities. iSCSI provides block-level access to storage devices by carrying SCSI commands over a TCP/IP network. iSCSI facilitates data transfers over intranets and to manage storage over long distances. It can be used to transmit data over local area networks (LANs), wide area networks (WANs), or the Internet and can enable location-independent data storage and retrieval.

<span class="mw-page-title-main">Windows Server 2003</span> Third version of Windows Server, released in 2003

Windows Server 2003, codenamed "Whistler Server", is the sixth version of the Windows Server operating system produced by Microsoft. It is part of the Windows NT family of operating systems and was released to manufacturing on March 28, 2003 and generally available on April 24, 2003. Windows Server 2003 is the successor to the Server editions of Windows 2000 and the predecessor to Windows Server 2008. An updated version, Windows Server 2003 R2, was released to manufacturing on December 6, 2005. Windows Server 2003 is based on Windows XP.

In computer networking, a rich client is a computer that typically provides rich functionality independent of the central server. This kind of computer was originally known as just a "client" or "thick client," in contrast with "thin client", which describes a computer heavily dependent on a server's applications. A rich client may be described as having a rich user interaction.

<span class="mw-page-title-main">NetWare</span> Computer network operating system

NetWare is a discontinued computer network operating system developed by Novell, Inc. It initially used cooperative multitasking to run various services on a personal computer, using the IPX network protocol.

<span class="mw-page-title-main">Network-attached storage</span> Computer data storage server

Network-attached storage (NAS) is a file-level computer data storage server connected to a computer network providing data access to a heterogeneous group of clients. The term "NAS" can refer to both the technology and systems involved, or a specialized device built for such functionality.

<span class="mw-page-title-main">Client (computing)</span> Piece of software accessing a server service

Client is a computer that gets information from another computer called server in the context of client–server model of computer networks. The server is often on another computer system, in which case the client accesses the service by way of a network.

Linux Terminal Server Project (LTSP) is a free and open-source terminal server for Linux that allows many people to simultaneously use the same computer. Applications run on the server with a terminal known as a thin client handling input and output. Generally, terminals are low-powered, lack a hard disk and are quieter and more reliable than desktop computers because they do not have any moving parts.

<span class="mw-page-title-main">Diskless Remote Boot in Linux</span>

DRBL is a NFS-/NIS server providing a diskless or systemless environment for client machines.

In Linux systems, initrd is a scheme for loading a temporary root file system into memory, to be used as part of the Linux startup process. initrd and initramfs refer to two different methods of achieving this. Both are commonly used to make preparations before the real root file system can be mounted.

As the next version of Windows NT after Windows 2000, as well as the successor to Windows Me, Windows XP introduced many new features but it also removed some others.

RIS, Remote Installation Services is a Microsoft-supplied server that allows PXE BIOS-enabled computers to remotely execute boot environment variables.

Centralized computing is computing done at a central location, using terminals that are attached to a central computer. The computer itself may control all the peripherals directly, or they may be attached via a terminal server. Alternatively, if the terminals have the capability, they may be able to connect to the central computer over the network. The terminals may be text terminals or thin clients, for example.

Network booting, shortened netboot, is the process of booting a computer from a network rather than a local drive. This method of booting can be used by routers, diskless workstations and centrally managed computers such as public computers at libraries and schools.

<span class="mw-page-title-main">Windows Home Server</span> Home server operating system by Microsoft released in 2007

Windows Home Server is a home server operating system from Microsoft. It was announced on 7 January 2007 at the Consumer Electronics Show by Bill Gates, released to manufacturing on 16 July 2007 and officially released on 4 November 2007.

Windows Vista has many significant new features compared with previous Microsoft Windows versions, covering most aspects of the operating system.

Windows XP, which is the next version of Windows NT after Windows 2000 and the successor to the consumer-oriented Windows Me, has been released in several editions since its original release in 2001.

In computer science, memory virtualization decouples volatile random access memory (RAM) resources from individual systems in the data center, and then aggregates those resources into a virtualized memory pool available to any computer in the cluster. The memory pool is accessed by the operating system or applications running on top of the operating system. The distributed memory pool can then be utilized as a high-speed cache, a messaging layer, or a large, shared memory resource for a CPU or a GPU application.

References