|This document is extracted from the web document "An Architectural Framework for the national Information Infrastructure". It was modified to reflect the organization and may have been restructured to fit the look and feel of the website.|
The ITA ultimately will be driven by the demands of its users and the value it provides them. Users are primarily interested in information processing applications, which they may own or gain access to as end-user services via communications networks. These services will be "enabled" by other underlying, transparent services provided by information and network service providers. Applications and enabling services will employ various information processing machinery, ranging from common appliance-grade devices to specialized computers and data transport technology systems distributed throughout the network. Thus, the network's structure consists of three basic components: applications, enabling services, and physical infrastructure.
These components can be understood within the Functional Services Framework model. This framework is not specific to any particular type of organization, technology, or use. It is portrayed here in layers (see figure 1), similar to models of network protocols, but is more generally intended as a way to think about the components of a feature-rich, flexible, open, and distributed infrastructure.
FIGURE 1. network Functional Services Framework
The Functional Services Framework model is used to characterize the network by function and by certain key characteristics (described below); it does not provide any details about these functions. For example, while the general framework might be used to locate supporting software for handling accounting information in an information access service, it would not give any details of expected performance or of a particular implementation, which would be dependent on its capability and design. The detail required for such a particular instance would be described in a domain-specific architecture for a service or application.
As noted earlier and in figure 1, the network's overall structure can be viewed in three component layers: physical infrastructure, enabling services, and applications. Each of these layers has several characteristics or aspects consisting of function, trust, and control.
Physical infrastructure contains the basic processing and communications components of an information system. These components comprise the computing and communications platforms or hardware (and associated low-level systems software) of computers, peripherals, switching systems, telephones, and information processing devices, together with the communications media, such as fiber, cable, and electromagnetic spectrum. The physical connectivity and layout of the network and component systems are described in the physical infrastructure layer. These would include specialized devices as well as standard, general-purpose, widely available information appliances.
Enabling services provide general system-related functionality for applications performed using the physical infrastructure. These services are those essential for the network to meet its goals and requirements (these are specified in section 3.0). Enabling services must create an environment in which new services and applications can be easily introduced and integrated with existing services and applications. This layer is thus expected to be an especially dynamic one, with technical innovations and new services continually emerging and competing. Enabling services are classified as generic and domain-specific.
There will be common requirements for components at all levels of the framework. In addition, communities of like-interest users or organizations conducting similar activities or using similar services will require domain-specific application and service features to incorporate specialized terminology or handle particular legal or financial instruments. Such domain-specific features would enable associated components to handle domain attributes such as terms and conditions, reference and accounting rules, etc. For example, fee-for-service and financial applications may have similar special transaction and security requirements, while sensitive personal services, such as medical care, might place stringent demands on privacy to transport diagnostic data and patient records. The nature of specialized enabling service offerings would reflect value to their users.
Figure 2 shows several examples of classes of enabling services. They are described as follows.
FIGURE 2. Example Enabling Services
Distributed computing services provide the functionality that links multiple separate nodes into one distributed system. They include network services, invocation services, location services, security services. and system coordination services.
Information management services organize, store, and retrieve information. These services employ file systems, access methods, database systems, document stores, and information semantics.
Application cooperation services enable applications to "cooperate" to create common multiple end-user activities. Typical services include transaction processing managers; enhanced messaging services (e.g., event management, reliable message queues);object request brokers; and workflow managers, agents, and encapsulation facilities.
User interface services will provide the link between the network and its users. These services will present information to, and acquire information from, the user. Present-day examples include the X Window System, Microsoft Windows, and Mosaic. In the network's distributed processing environment, a given user interface may employ components in various layers and at various points in the network, e.g., partially in the information service provider's equipment and partially in the user's information appliance
Financial support services support all manner of commercial and personal financial transactions.
Utility services facilitate system use or help it function. They may incorporate spooling systems, resource accounting services, language run-time systems, and common libraries. Specialized utility services might support specific domains such as business and finance, education, or medicine.
Applications are information processing tools that "do something" for a user. The underlying enabling services and physical infrastructure supply the means by which applications deliver their functionality. Examples of applications include conducting a financial transaction; sending, receiving, and sorting mail; browsing for information; and interacting with other persons or computer systems.
network applications will be built in part from a combination of service capabilities. To facilitate the development of applications, the network's enabling services layer should present well-defined application programming interfaces (APIs). Like the user interfaces described above, a given application may, in the distributed processing environment provided by the network, exist in part at various points in the network. For example, some parts might reside in information service provider's equipment, and some parts in user's information appliances. APIs must be defined at all points in the network where portions of applications can exist.
Each of the component layers should be considered from the three related aspects of functionality, trust, and control. For example, one component of trust is to protect a system from unauthorized access; every system should have the degree of such protection that is appropriate for its purposes. Thus, the network should be examined to ensure that adequate protection is achieved within each of its component layers.
Functionality describes each component's responsibility to the system as a whole. Directly or indirectly, each component must help users accomplish a task. Functionality suggests the interfaces, usability, and localization required for each functional component.
Trust has three major sub-elements: security, integrity, and assurance of performance. Security describes a system's ability to ensure adequate protection, accessibility, and integrity of information. Integrity includes such concepts as graceful degradation of performance in the event of failure, recovery after failure, and fault tolerance. In some environments, not meeting required performance levels is equivalent to failure. Requirements for performance must also consider issues such as acceptable performance and cost.
Control includes four major subelements: manageability, serviceability, measurement, and adaptability. Manageability involves controlling the component or system under normal situations. Serviceability deals with being able to recover and fix things when they break or to protect them from breaking. Measurement includes performance statistics and descriptions of component states, as well as accounting functions. Adaptability covers a component's ability to evolve with a new technology in a predictable way to meet changing demands.