Tuesday, 25 August 2015

Components of Client/Server Applications-The Client

Contents:

Role of the Client
Client Services
Request for services
Dynamic Data Exchange(DDE)
Object Linking and Embedding(OLE)
Common Object Request Broker Architecture(CORBA)



The client in the client/server model is the desktop workstation. Any workstation that is used by a single user is a client. The same workstation, when shared simultaneously by multiple users, is a server. The client workstation may use the DOS, Windows, Windows NT, OS/2, Mac OS, or UNIX operating system. When the client workstation is connected to a LAN, it has access to the services provided by the network operating system(NOS) in addition to those provided by the client workstation.

In a client/server application, functions are provided by a combination of resources using both the client workstation processor and the server processor. The capability to cut and paste input from several different sources is one of the most powerful aspects of a client workstation. It provides the end user with tools to create new applications.


The Role of the Client

In the client/server model, the client is primarily a consumer of services provided by one or more server processors. The client almost always provides presentation services. Current technology provides cost effective support for a graphical user interface (GUI).The windowing environment enables the client user to be involved in several simultaneous sessions. Windows NT, OS/2 and UNIX are preemptive multitasking operating systems and thus will support any number of active communications sessions.

Dynamic Data Exchange (DDE), Object Linking and Embedding (OLE) and Communicating Object Request Broker Architecture (CORBA) provides support for cut and paste operations in a windowing environment.

Client Services

The ideal client/server platform operates in an open systems environment using a requester server discipline that is based on well-defined standards. This enables multiple hardware and software platforms to interact. 

In the client/server implementation of this system, the workstation user deals on with a GUI. Thus workstation technology supports the new business paradigm of employee empowerment. It provides the windowing capabilities to simultaneously access and display all information necessary to complete the business process. The capability of powerful workstation technology to recommend and make decisions based on historical precedent can dramatically reduce cost and improve service by shortening the decision- making cycle.


Request for Service

Client request services from the attached server. Inter-process communication (IPC) is used to describe communication communication between running processes. In the client/server model, these processes might be on the same computer, across the LAN or across the WAN.

IPC is a set of techniques used by programs and process running in multitasking operating systems or between networked computers. There are two types IPCs:

  1. Local Procedure Call
  2. Remote Procedure Call
Local Procedure Call

An LPC is used in multitasking operating systems to allow concurrently running task to talk to one another. They can share memory spaces, synchronize tasks and send messages to one another.

Remote Procedure Call

An RPC is similar to the LPC but works over networks. RPCs provide the communication mechanism for a client to communicate its request for service to a back-end server.

The normal IPC mechanism in UNIX is the pipe, and the socket is the IPC mechanism that works across networks. 

  • involves peer to peer messaging
  • transparent to a user making it very easy to use
  • provides facility for the invocation and execution of  requests from processors running different operating systems and using different hardware platforms from the callers.
The most basic service provided by the network operating system (NOS) is redirection. This intercepts client operating system calls and redirects them to the server operating system.

A redirector is  a program running in a network attaches workstation that intercepts network related requests and redirects them over the network to file servers or peer workstations.

Fax/Print Services

The NOS enables the client to generate print requests even when the printer is busy. These are redirected by the NOS redirector software and managed by the print server queue manager. The client workstation can view the status of the print queues at any time. Many print servers notify the client workstation when the print request is completed. Fax services are made available in exactly the same manner as print servers, with the same requester server interface and notification made available.

Window Services

A client may have several windows open on-screen at any time. Application programs are written with no sensitivity to the windowing. Each application is written with the assumption that it has a virtual screen.

The application, using GUI software places data into the virtual screen, and the windowing services handle placement and manipulation of the application window. This greatly simplifies application development, because there is no need for the developer to build or manage the windowing services. The client user is totally in control of his or her desktop and give priority to the most important tasks at hand simply by positioning the window of interst to the "front and center". The NOS provides software on the client workstation to manage the creation of popup windows that dsplay alerts generated from remote servers. 

eg: Email receipt, Print Operation, Fax availability

Remote Boot Services

The client must be provided with sufficient software in EPROM (Erasable Programmable Read Only Memory) to start the initial program load (IPL) that is boot process. E-PROM is included in all workstations to hold the Basic Input/Output System (BIOS) services.

eg: X-terminals, Workstations

Other remote services

Applications can be invoked from the client to execute remotely on a server. Software is provided by the NOS to run on the client workstation to initiate these remote applications.

eg: Backup services

Utility Services

The operating system provides local functions such as copy, move, edit, compare and help that execute on the client workstation.

Message Services

The message services provide the buffering, scheduling and arbitration services to support this function.

Network services

The services provide support for communication protocols auch as NetBios, IPX, TCP/IP, APPC, Ethernet, Token Ring, FDDI, X.25 and SNA

Application Services

Custom application will use their own APIs embedded in an RPC to invoke specialized services from a remote server.

Database Services

Database requests are made using the SQL syntax. Because the language uses a standard form, the same application may be run on multiple platforms.

Network Management Services - ALERTS

Most network interface cards (NICs) can generate alerts to signify detected errors and perhaps to signify messages send and received. Support for a remote client may be greatly simplified if alerts are generated by the applications. This should be part of every standard SDE.

Dynamic Data Exchange (DDE)

DDE is an inter-process mechanism for exchanging messages between processes running in computer. It is implemented in Microsoft Windows product. Successor technologies include OLE (Object Linking and Embedding), COM (Component object model and DCOM (Distributed COM)

Object Linking and Embedding (OLE)

Linking  is one way of attaching information from one application to another. Link can locked, broken, or reconnected. Linked information is stored in source application.

Embedding makes the information to be embedded, a part of the destination document, thus increase its size.

OLE is designed to let users focus on data rather than on the software required to manipulate the data. A document becomes a collection of objects, rather than a file. Applications that are OLE - capable provide an API that passes the description of the object to any other application that requests the object. OLE is perhaps the most powerful way to share information between documents. In order to link an object created in another application to another file, but applications need to be running in the same environment. ie either DDE or OLE.

Advantages of OLE:

  • We can display an embedded or linked object as an icon instead of its full size.
  • We can convert an embedded or linked to a different application.
Common Object Request Broker Architecture

CORBA is a specification from the object management group (OMG), a UNIX vendor consortium. OLE focuses on data sharing between applications on a single desktop and CORBA addresses cross-platform data transfer and the process of moving objects over networks. CORBA support enables Windows and UNIX clients to share objects. A word processor operating on a Windows desktop can include graphics generated from a UNIX workstation.






No comments:

Post a Comment