Client Server Computing Components

Client/Server computing is new technology that yields solutions to many data management problems faced by modern organizations. The term Client/Server is used to describe a computing model for the development of computerized systems. This model is based on distribution of functions between two types of independent and autonomous processes: Server and Client. A Client is any process that requests specific services from the server process. A Server is a process that provides requested services for the Client. Client and Server processes can reside in same computer or in different computers linked by a network.

When Client and Server processes reside on two or more independent computers on a network, the Server can provide services for more than one Client. In addition, a client can request services from several servers on the network without regard to the location or the physical characteristics of the computer in which the Server process resides. The network ties the server and client together, providing the medium through which the clients and the server communicate.

Client component

The client is proactive and will, therefore, always initiate the conversation with the server. The client includes the software and hardware components. The desirable client software and hardware feature are:
(i) Powerful hardware.
(ii) An operating system capable of multitasking.
(iii) Communication capabilities.
(iv) A graphical user interface (GUI).
(v) Arbitrary application program
o Becomes client when network service is needed
o Also performs other computations
(vi) Invoked directly by user
(vii) Runs locally on user’s computer
(viii) Initiates contact with server
(ix) Can access multiple services (one at a time)

Server component

The server is active because it always waits for the client’s request. The server hardware characteristics depend upon the extent of the required services. The following are the characteristics of the server:
i). Fast CPU (RISC, Pentium, Power PC, or multiprocessor)

ii). Fault tolerant capabilities:
iii). Dual power supply to prevent power supply problem.
iv). Standby power supply to protect against power line failure.
v). Expandability of CPU, memory disk, and peripherals.
vi). Multiple communication options.
vii). Special purpose application dedicated to providing network service
viii). Starts at system initialization time
ix). Runs on a remote computer (usually centralized, shared computer)
x). Waits for service requests from clients; loops to wait for next request
xi). Will accept requests from arbitrary clients; provides one service to each client
xii). Requires powerful hardware and sophisticated operating system

An Introduction to Cloud Servers and Their Benefits – Part 3: Cost and Deployment

The final instalment of this trio of articles looks at the features of the two cloud server deployment models, public and private, as well as discussing how they can deliver real cost savings to their customers.

Cost Efficiencies

As mentioned previously, the responsive scalability of pooled cloud servers means that cloud services can offer significant cost efficiencies for the end user – the most salient of which is that the client need only pay for what they use. Without being bound by the fixed physical capacities of single servers, clients are not required to pay up front for capacity which they may not make use of, whether it be their initial outlay or subsequent steps up to cater for increases in demand. In addition, they avoid the set up costs which would otherwise be incurred by bringing individual servers online. Instead any set up costs generated when the underlying cloud servers were brought online are overheads for the cloud provider and are diluted by economies of scale before having any impact on their pricing model.? This is particularly the case as many cloud services minimise the effort and expense of specific cloud server and platform configurations by offering standardised services into which the client taps.

Lastly, cloud models allow providers to do away with long term lock-ins. Without the longer term overheads of bringing individual servers online for individual clients and maintaining them there isn’t the dependency on those clients for a return on that investment from the provider’s point of view.

Deployment

There are two common deployment models for cloud services which span the service level models (IaaS, PaaS, SaaS) described in part one:?Public Cloud:and Private Cloud.

Perhaps the most familiar to general population, and also the most likely to deliver some of the features and benefits mentioned previously, is the typical public cloud model. This model utilises the large number of pooled cloud servers located in data centers, to provide a service over the internet which members of the public can sign up for and access. However, the exact level of resource – and therefore capacity, scalability and redundancy – underpinning the each public cloud service will depend on each provider. The underlying infrastructure, including servers, will be shared across all of the service’s end users whilst the points at which the service can be accessed are open to anyone, anywhere, on any device as long as they have an internet connection. Consequently, one of the model’s key strengths, its accessibility, leads to its most prominent weakness, security.

Services which need to implement higher levels of security can instead use private cloud models. The architecture of private clouds can vary but they are defined by the fact that the cloud is ring-fenced for the use of one client. Servers can either be located in a data center, and accessed via leased lines or trusted provider networks, or on the client’s premises, and accessed by secure local network connections. They can be provisioned as either physical or virtual servers, but they’ll never be shared across multiple clients. Access to the servers and the cloud service will always be behind the client’s firewall to ensure that only trusted users can even attempt to use it.

Private clouds, therefore, offer greater levels of security (depending on the exact set up), but utilising smaller pools of servers means that they cannot always match the economies of scale, high capacities, redundancy and responsive scalability of public cloud models. Although, these qualities can still be achieved more readily than more traditional fixed capacity server configurations on local or trusted networks.

Servers and Their Types

In computer parlance, a ‘server’ is a device that supports and provides functionality for other devices and programs, typically called ‘clients’. This is what is referred to as the ‘client-server model’ in network computing where a single overall computation distributes data, functions and processes across multiple devices and computer processors. Among the many services that servers provide are sharing of resources and data between clients and performing multiple computing tasks. A single client can use multiple retainers and conversely a single retainer can also serve multiple clients.

Client-Servers today function on the ‘request-response’ model where a client needs a task done and sends a request to the retainer which is accomplished by the server. A computer designated as ‘server-class hardware’ means that is a specialized device for running server functions. Though the implication leads to visions of large, powerful and reliable computer devices, in reality, a retainer may be a cluster of relatively simple components.

Servers play a very significant role in networking; any retainer that takes a hit in functioning can bring to a halt the connectivity of all the computers in a network. The significant rise of Internet usage around the world has boosted the development of servers for specific functions. This is an element that is constantly undergoing changes and we will have to wait and see how servers will be developed for future computational needs.

Servers are categorized according to their tasks and applications. Dedicated retainers perform no other networking tasks other than retainer tasks assigned to them. A server platform is the underlying system hardware or software that drivers the server; it is much like an operating system in a desktop, laptop or other devices.

Types of servers

• Application Server – these occupy a large share of the retainer networking between database servers and end user.

• List Server – improves management of mailing lists, newsletters, advertising material and announcements.

• Chat servers – enables sharing of information in an internet group environment including real-time discussion capabilities.

• Fax Servers – used to reduce incoming and outgoing telephone resources.

• Groupware Servers – helps users work together irrespective of location through corporate Intranet or the Internet in a virtual environment.

• Mail Servers – as important as a web server to exchange correspondence in a corporate network through LANs and WANs.

• News Servers – these function as sources of distribution and delivery for public news groups on the global bulletin board system.

• Proxy Servers – they work in between a web browser (a client program) and a second web server to share connections and improve performance.