In networking, there’s often a need to handle and service many incoming requests. Indeed, this topic is also of major importance to Web services. Let’s look at some scenarios in which operations (or requests for service) are sent to a central server. Later, you’ll see how these service requests can be stored by the server in a C++ queue data structure and then retrieved for execution.
Figure 2 shows a network that supports client operations against its components. The Network Management System (NMS) in Figure 2 reads data from and writes data to the various network devices. These reads and writes are associated with operations initiated by the NMS clients in Figure 2.
Figure 2 A service provider network linking two enterprise sites
The read and write actions might go to make up quite large operations; for example, if a client NMS operator wants to enable Link 1 in Figure 2, it typically requires that the interfaces on either end of Link 1 be enabled. This simple operation might require two reads, two writes, a wait followed by two more reads to verify successful completion. So, a link enable operation contains a total of seven actions. There would also be audit operations to record who initiated the operation.
It might be helpful to think of the client operations as being associated with menu (or portal) options accessible through a Web browser on the client. The clients see just the operation whereas the NMS has the task of translating the operation request into the constituent actions. (For more information, see the "Additional Reading" section at the end of the article.)