Craig Burton

Logs, Links, Life and Lexicon: and Code

Craig Burton header image 3

ISM Definition

Internet Services Model Definition: Next-generation Infrastructure

The ISM is a view of the Internet through the perspective of network services. Most often the Internet is viewed from the perspective of the browser or the Internet user. Internet services are the infrastructure—both software and hardware—that make the Internet work and provide the functionality that Internet user experiences and that companies need to run their businesses.

What is needed is the basis for a dynamic protocol model. Just such a model has begun to emerge. The basis for the calculus of this Dark Age is the Extensible Markup Language (XML). XML is being touted as the solution for many Internet related things. An incredibly valuable, but incredulously ignored immediate application for XML is in fulfilling the role of a dynamic protocol framework.

With a dynamic protocol framework, independent—or discrete—services can exist and innovate at their own pace without the limitation and boundaries of a fixed protocol. XML provides the framework for discovering accessibility—or a protocol—to a service during initialization. The freedom that a dynamic protocol framework will give to innovation and implementation of Internet infrastructure will have an immeasurable impact on the future of network computing.

Defining Infrastructure

The crux of the Internet Services Model is straightforward enough. Internet functionality is based on the availability of services. As Figure One illustrates, Internet Service Model categories are broken into “families” and “classes.” The Application Family of services is then divided into two classes, the system class and the specific class. System Application Services are those services that are not specific to a particular product but are available from a broad set of vendors with some level of interoperability. Examples of System Application Services are File, Print, Directory, Security, and Messaging.

Specific Application Services are services that are specific to a given product or set of products usually from a specific vendor. These types of services usually do not have much interoperability or choice. This, of course, is by design. Traditional competitive thinking leads vendors to closed/proprietary product implementations. This is a proven way to make money and decrease competitive threats. Examples of specific application services are Oracle relational database, PeopleSoft software, and Microsoft’s SQL Server.

Figure One: Internet Services Model–Families and Classes

The network family of services in the model is divided into two classes, transport network services and physical network services. Examples of Transport network services are the services accessible through the Internet core protocols, Transmission Control Protocol (TCP), Internet Protocol (IP), Address Resolution Protocol (ARP), Internet Core Message Protocol (ICMP), Internet Group Management Protocol (IGMP), and the User Datagram Protocol (UDP). This set of protocols is commonly referred to as just “TCP/IP.”

Examples of the physical network services are those services provided by network hubs, routers, and network adapters. Such as Ethernet protocols like the Media Access Control Protocol (Mac), the Auto-negotiation Protocol (ANP), and the Sub-network Access Protocol (SNAP).

It is also important to note here that Figure One has a high degree of inconsistency in the examples. The Specific Application Services examples are all products from specific vendors. The System Application Services examples are generic application services categories. The Network Transport Services are the Internet core protocol suite. And finally, the Physical Network Services examples are all different types of hardware.

This inconsistency is by design. Hopefully not to cause confusion, but to be consistent with how most people think of these services. This inconsistency also highlights the fact that we don’t think of the Internet in terms of services, the way we view the Internet is very inconsistent. All of the ISM classes can be represented by consistent examples. Each class has a set of services, protocols, and implementations that can provide a more coherent description, but I wanted to use the terms that we commonly associate with these service classes.

The one exception to this approach is the examples for System Application Services class. Consistent with the Internet approach, services are usually not discussed, but protocols are the highlight. Thus the messaging service for the Internet is not referred to as a messaging service but an SMTP service. The entire suite of System Application Services is referred to by their protocols, SMTP, FTP, HTTP, and LDAP. These acronyms represent the Internet messaging, file transfer, Web, and directory services protocols. These inconsistencies will be worked out as we move through the rest of this section.

Figure Two illustrates the services families and classes with correctly aligned examples.

Figure Two: Aligned examples of Internet Services Model Families and classes

At the most basic level, there are two types of entities in the ISM, network service providers and network service consumers. This distinction of a provider from a consumer could also be thought of as a service responder and a service requestor. The service consumer makes a request to the service provider. The service provider responds to the consumer by fulfilling the request. One of the important distinctions in the Internet services model is that the definition of a requestor and responder is not limited to a particular type of architecture. For example, the client/server architecture usually has the client as the requestor and the server as the responder. In the Internet Services Model, these distinctions are left out for obvious purposes. In the Internet Services Model, at any given moment, a client may be a server and vice versa.

While this description is an obvious oversimplification, it is useful to keep track of which side of the service mechanism we are talking about. The request, response perspective of the network is not particularly new, but the Internet services model adds some significant additional distinctions that make it useful in designing infrastructure for the Internet. The Internet Services Model not only looks at the network from the technology perspective but also contains a vision and philosophy that define the boundaries of how the model works and its intentions for the future.

While graphic and description provides a high level foundation for classifying network services, this approach to classification is not new at all. While this document doesn’t display the ever obligatory OSI sever-layer services diagram, recalling the times when it was necessary to do so reminds us that we have been classifying network services for almost 20 years. It is completely appropriate then to ask how the Internet Service Model is different in its classification of services and how it relates to how we have thought about and classified networking services in the past.

While all of the families and classes of the Internet Services Model are important, the area of the most needed growth is in the Application Service Family, specifically, in the System Application Service class.