2.6 Device Requirements


2.6 Device Requirements

We now turn to the requirements of devices that the network will support, particularly the types of devices, their performance characteristics, and location information. As we will see, this information will build on the user and application requirements from the last sections to begin to provide a comprehensive picture of system needs. The relationship of the device component with the rest of the system is shown in Figure 2.7.

click to expand
Figure 2.7: Types of device requirements.

2.6.1 Device Types

Devices can be grouped into three categories: generic computing devices, servers, and specialized devices. Generic computing devices are the desktop and laptop computers that most users have. This group also includes handheld devices. Popular examples include various forms of Windows-based PCs, laptops and handheld devices, MACs, and LINUX-based workstations and PCs. These are the hosts that form the access points into the network and typically service a single user. Their requirements are important from an end-to-end perspective, for they provide the interface between applications and the network. Their requirements are also important in developing a template for devices from user groups or all users of the network. These end devices also tend to be overlooked, a form of "black box" that networks are connected to and applications run on, but are otherwise somewhat ignored.

A lack of understanding of end devices has led to what is known as the "last foot" problem in system performance. This is a modification of the "last mile" problem, which was the difficulty in getting infrastructure, networking, and services into a campus or building. The "last foot" problem is getting services and performance from the device's network interface through the device to its applications and users. This is discussed in detail later in this section.

Typically, there are many generic computing devices in a system, and it would be quite difficult to list, describe, and graph each individual device. Therefore, developing a template, or standard description, for one or more "standard" devices in the environment can be useful. Such a description might include device type, network interface, configuration, performance, and applications resident. Figure 2.8 shows an example of a template.

Device Type

NIC Type

Processor

OS

Applications

Low-End PC

10M Ethernet

Pentium I

Win95/98/ 2000

Word, PP, Finance

High-End PC

10/100M Ethernet

Pentium III/IV

WinPro

Word, PP, DB, Graphics

Generic PC

10/100M Ethernet

Pentium

Win95/98/ 2000/XP

Word, PP, DB, Graphics

Workstation

10/100M Ethernet

AMD

LINUX

DB, Graphic, CAD, SC

Laptop

56 Kb Modem

AMD

Win XP

Word, PP, Others

PP—Powerpoint

DB—Database

CAD—Computer-Aided Drawing

SC—Scientific SW


Figure 2.8: Example template for device descriptions.

Servers are computing devices that provide a service to one or more users (i.e., clients). They are typically more powerful, in terms of memory, processing, networking, and peripherals, than users' desktop or laptop devices. Examples of servers include compute servers, storage servers (also known as mass storage or archival systems), and application servers. Server requirements are important in that they may affect a large number of users. As such, their requirements warrant more attention on a per-device basis than generic computing devices.

Servers also have requirements for "last foot" performance, as well as requirements specific to its server role. A server's functions can often be streamlined to support this server role, which in turn may affect the system. For example, a server may be designed to support high-performance, predictable access to a large number of users. The cumulative effect of users' access to this server on the network must be considered. Servers have an impact on the traffic flows within the system, which will be examined in the chapters on flow analysis.

Specialized devices are devices that provide specific functions to their users. A parallel computer supporting a large database search engine may be considered either a server or specialized device, whereas a video camera on the network would be considered a specialized device. Specialized devices generally do not support direct access to user applications but rather gather, produce, or process information to be sent to users. Examples of specialized devices include supercomputers, parallel or distributed-computing systems, data-gathering and data-processing systems, medical devices, networked cameras or tools, and handheld devices.

Specialized devices tend to be location dependent. This is significant, for although, in most environments, generic computing devices and servers are becoming location independent, specialized devices often retain their location dependencies. This is generally the case; however, there are times when specialized devices are location independent and servers or generic devices are location dependent. As we will see in gathering requirements, it is important to know and understand the environment that we are analyzing, in part to understand any location dependencies of its devices. Specialized devices are often location dependent because of cost. A wind tunnel that provides flow information for car manufacturers is large, stationary, and expensive, making it difficult to replicate. If a network is being built to support this wind tunnel facility, located in Dearborn, Michigan, then the network has to be architected with access to Dearborn, Michigan, in mind, in addition to the performance and location requirements of the wind tunnel. Likewise, if a network was being built to provide remote access to medical devices (e.g., computed tomography [CT] scanners) for doctors, then the locations of these devices will become access requirements for the system. This is illustrated in Figure 2.9.

click to expand
Figure 2.9: Specialized devices.

Although wind tunnels and CT scanners are very specialized (and in the case of wind tunnels, fairly rare) devices, this concept can be expanded to more common devices, such as ATMs, traffic sensors, and even stoplights. Also consider location-specific information—from libraries, universities, government centers, or medical centers. Much of this information is also closely tied to its location.

2.6.2 Performance Characteristics

The "last foot" problem introduced earlier focuses on the performance of various components of the device: hardware, firmware, and software that provide the glue between users and applications and the rest of the system.

For many environments, it may be difficult to determine or measure the performance characteristics of its devices. Components within a device are proprietary, and performance information about them can be sketchy or unavailable. Software and firmware driving the device, such as the operating system (OS), device drivers, application programming interface (API), and so forth, are complex. Therefore, when possible, determining this information for a "standard" device and creating a template is a practical solution. Taking the time to research or test one or a few devices and then applying this information in a template can save a lot of time and still be useful as a first-order approximation of device performance.

Note that device problems are often misinterpreted as network problems. Therefore, ignoring device requirements can compromise the network architecture and design. As we will see in the design process, identifying any issues with devices that will be supported by the network can make the design process easier, with more deterministic results.

A simple, general diagram of a device is presented in Figure 2.10. The performance of each of these components affects the overall performance of the device. As examples, disk drive seek times; memory access times; and the effectiveness of driver, OS, or API software will all affect the ability of the device to process information to and from the network.

click to expand
Figure 2.10: Device components.

By looking at each of these components as integral to the overall performance of the device (and of the system), we are applying the end-to-end perspective within the device—the host in effect becomes a microcosm of the system. What we are looking for in performance characteristics include:

  • Storage performance, that is, flash, disk drive, or tape performance

  • Processor (CPU) performance

  • Memory performance (access times)

  • Bus performance (bus capacity and arbitration efficiency)

  • OS performance (effectiveness of the protocol stack and APIs, e.g., the number of memory copies in the protocol stack or the cost of execution of a given OS on a particular processor)

  • Device driver performance

Information about any of these components can be helpful in estimating the overall performance of a device or in identifying any limiting factors in device performance. For example, testing representative devices may result in finding that their network interfaces need to be upgraded (e.g., from 10 Mb/s Ethernet to 10/100 Mb/s Ethernet), that disk drives need to be replaced, or that an OS upgrade need to be performed. Although trying to understand the performance implications of each component of each device type can be time consuming, even a simple and quick attempt at developing device performance requirements can help ensure that there are no obvious dramatic performance bottlenecks at the device. Understanding at the device component can help you recognize such bottlenecks early in the analysis process.

2.6.3 Device Locations

Knowing the locations of existing or expected generic computing devices, servers, and specialized devices can be helpful in determining the relationships between users, applications, and networks. It can also be the start toward determining traffic flow characteristics for the system.

Location information helps determine the relationships between components of the system. Coupled with the types and performance requirements of devices, servers, and specialized devices, this information gives us insight on what the relative concentrations of users and devices should be, their placement, and the level of networking needed.

In Figure 2.11, an environment of three campuses is shown (buildings are shown in gray). Generic computing, servers, and specialized devices are shown for each building. Instead of showing each user desktop device, a total for each building is shown. The number of each server is shown as well.

click to expand
Figure 2.11: Device locations.

Location information also helps us determine the traffic flow characteristics for the system. In Chapter 4 we will discuss flow models that describe how traffic flows within the system based on the relationships between users, applications, and devices, derived partially from location information about these components.

Networks where location information is particularly important are in the outsourcing of system components or functions; in the consolidation of organizations, system components, or functions; and in the relocation of system components or functions within an organization.

An example of how this information can be used is in the outsourcing or relocating of computer resources. Outsourcing may be accomplished by having the outsourcing agent operate, administer, maintain, and provision (OAM&P) the resources at the customer site or by removing the resources from the customer site and having the outsourcing agent provide the resources as well as the OAM&P. When the outsourcing agent provides the computing resources, knowing where the resources are to be relocated will be important in determining the flow models and level of networking needed. The outsourcing agent may choose a location that is optimized toward the administration of the computing resources, yet degrades the overall performance of the system. If a customer's computing resources are accessed via Fast or Gigabit Ethernet (GigE) and are then moved away from the customer into a WAN environment, either the access costs to those resources will rise (by requiring high-speed WAN connections) or the performance will degrade. In some cases, moving the resource from a LAN to a WAN environment may result in some applications being rendered unusable.

When the locations of system components change, it is important to evaluate or reevaluate the requirements of the system to determine whether service requirements (both performance and functional) have changed as well. Figure 2.11 illustrates that there are often location dependencies between applications and devices and that these dependencies need to be identified as part of the device requirements.

For example, if a LAN application that has a requirement for 100-ms round-trip delay is applied to a WAN with a round-trip delay characteristic of 200 ms, the network architecture/design and applications' or users' expectations will have to be modified to support the new network.

The interface between the device component and the rest of the system consists of the types of devices, their location dependencies, and their performance characteristics.




Network Analysis, Architecture and Design
Network Analysis, Architecture and Design, Second Edition (The Morgan Kaufmann Series in Networking)
ISBN: 1558608877
EAN: 2147483647
Year: 2003
Pages: 161

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net