Logo

Navigation
  • Home
  • Services
    • ERP Solutions
    • Implementation Solutions
    • Support and Maintenance Solutions
    • Custom Solutions
    • Upgrade Solutions
    • Training and Mentoring
    • Web Solutions
    • Production Support
    • Architecture Designing
    • Independent Validation and Testing Services
    • Infrastructure Management
  • Expertise
    • Microsoft Development Expertise
    • Mobile Development
    • SQL Server Database and BI
    • SAP BI, SAP Hana, SAP BO
    • Oracle and BI
    • Oracle RAC
  • Technical Training
    • Learn Data Management
      • Business Intelligence
      • Data Mining
      • Data Modeling
      • Data Warehousing
      • Disaster Recovery
    • Learn Concepts
      • Application Development
      • Client Server
      • Cloud Computing Tutorials
      • Cluster Computing
      • CRM Tutorial
      • EDI Tutorials
      • ERP Tutorials
      • NLP
      • OOPS
      • Concepts
      • SOA Tutorial
      • Supply Chain
      • Technology Trends
      • UML
      • Virtualization
      • Web 2.0
    • Learn Java
      • JavaScript Tutorial
      • JSP Tutorials
      • J2EE
    • Learn Microsoft
      • MSAS
      • ASP.NET
      • ASP.NET 2.0
      • C Sharp
      • MS Project Training
      • Silverlight
      • SQL Server 2005
      • VB.NET 2005
    • Learn Networking
      • Networking
      • Wireless
    • Learn Oracle
      • Oracle 10g
      • PL/SQL
      • Oracle 11g Tutorials
      • Oracle 9i
      • Oracle Apps
    • Learn Programming
      • Ajax Tutorial
      • C Language
      • C++ Tutorials
      • CSS Tutorial
      • CSS3 Tutorial
      • JavaScript Tutorial
      • jQuery Tutorial
      • MainFrame
      • PHP Tutorial
      • VBScript Tutorial
      • XML Tutorial
    • Learn Software Testing
      • Software Testing Types
      • SQA
      • Testing
  • Career Training
    • Career Improvement
      • Career Articles
      • Certification Articles
      • Conflict Management
      • Core Skills
      • Decision Making
      • Entrepreneurship
      • Goal Setting
      • Life Skills
      • Performance Development
      • Personal Excellence
      • Personality Development
      • Problem Solving
      • Relationship Management
      • Self Confidence
      • Self Supervision
      • Social Networking
      • Strategic Planning
      • Time Management
    • Education Help
      • Career Tracks
      • Essay Writing
      • Internship Tips
      • Online Education
      • Scholarships
      • Student Loans
    • Managerial Skills
      • Business Communication
      • Business Networking
      • Facilitator Skills
      • Managing Change
      • Marketing Management
      • Meeting Management
      • Process Management
      • Project Management
      • Project Management Life Cycle
      • Project Management Process
      • Project Risk Management
      • Relationship Management
      • Task Management
      • Team Building
      • Virtual Team Management
    • Essential Life Skills
      • Anger Management
      • Anxiety Management
      • Attitude Development
      • Coaching and Mentoring
      • Emotional Intelligence
      • Stress Management
      • Positive Thinking
    • Communication Skills
      • Conversation Skills
      • Cross Culture Competence
      • English Vocabulary
      • Listening Skills
      • Public Speaking Skills
      • Questioning Skills
    • Soft Skills
      • Assertive Skills
      • Influence Skills
      • Leadership Skills
      • Memory Skills
      • People Skills
      • Presentation Skills
    • Finding a Job
      • Etiquette Tips
      • Group Discussions
      • HR Interviews
      • Interview Notes
      • Job Search Tips
      • Resume Tips
      • Sample Resumes
 

Client-Server Technology : Thin Clients

By Exforsys | on July 18, 2007 |
Client Server

Client-Server Technology : Thin Clients

The Role of Client Computers

In client-server technology, a client computer uses its software programs to make requests from server computers over a network. The server computers then process the request and handle delivery back to the client. However, the server may turn into a client if it formulates a service request to forward to another server, say, a database server. Clients and servers connected on a network are also referred to as nodes. Clients can send requests to more than one server. The most common types of clients today are web browsers.

Most typical servers include web servers and database servers. There are several processing characteristics for clients and servers. The client actively initiates requests, making it a ‘master’. Clients usually launch request through GUI’s (Graphic User Interfaces) that interact directly with the user. The client then waits for and receives responses. They usually connect to a small number of servers. Servers, on the other hand, are passive, waiting for client requests. This makes them ‘slaves’ in the client-server communication equation. They accept many requests from many clients at the same time and do usually do not interact with end users. Master/slave models refer to communication protocols in which one machine or software program (‘master’) controls how other machines or software programs (‘slaves’) act. It is the typical protocol model for client-server technology and is also referred to as ‘primary/secondary’.

This article will discuss thin clients and how they affect client-server environments. Thin clients are client computers or client software that rely primarily on the server for all processing activities. It is primarily used only for conveying input and output to the user. Usually, thin clients only run web browsers or remote desktop software. This is administration software that is accessed through GUIs and runs programs locally that are remotely located on a server. This coincides with the current trend toward storing desktop applications and operating systems on the web or other external servers, which allows programs to be accessed only as needed. This removes the need for organizations or individuals to purchase and maintain sophisticated software and hardware, which requires a significant investment.

Components and Functions

In client-server application design, specific processes are assigned to the client and the server. These decisions affect security, cost, and robustness, and porting. Robustness will determine how well the program will recover from errors or operating under conditions of stress. Porting refers to flexibility or the adapting of programs to environments other than the one which they were created for. One of the primary benefits of using thin clients is cost. It is costly to develop application-specific client software. Thin clients use standardized software, like that found in web browsers, as the primary client software and save the money.

Thin clients require four components to function: application programs; user-interface devices; devices for running thin client application programs; and software for thin clients. To communicate with servers, thin clients rely on a separate piece of software located on a server that is located nearby on a LAN (Local Area Network) or more remotely on a WAN (Wide Area Network) or even further away on a MAN (Metropolitan Area Network). Since thin clients locate most of their processing on a server or some other centralized managed site, another criteria for thin client application programs is whether additional software is required on the client/user side to run the program. For a client to be thin, the boot image, which contains the structure and content of a computer storage media, must not require modification to run.

As devices, thin clients provide only those function necessary for interacting with user-interface programs. User interfaces (UIs) function as the point of contact or communication through which users (people) communicate with computer systems. UIs combine menus, screen design, command languages, online help, keyboard commands, and any other programming that can communicate user requests. Primarily, UIs provide for input, in which users can form requests and otherwise manipulate a system or technology, and output, in which the system communicates the effects of the user’s manipulation. In thin clients, user interface devices use ‘read-only memory’ (ROM) in the form of CD-ROMs, network virtual drives, or flash memory.

Read-only storage is memory whose contents cannot be changed. They can, however, be accessed and manipulated to describe a request. In thin clients, UIs usually only possess a screen, a keyboard and a pointing device (mouse or cursor). The client must only have enough power to communicate requests and display responses.

It is important to note that most thin clients are only software running on standard personal computer hardware. Examples of this type of software-only thin client are PXES Universal Thin Client, Pilotlinux, Knoppix, and Puppy Linux.

Thin Client Advantages

The advantages of using thin clients are numerous. Thin client usage results in lower administrative costs and greater security. Since all processing occurs on a server and is centrally managed, the local environment is stateless and the hardware has fewer points of contact with processing activity resulting in a lower probability of error.

In stateless environments software programs do not retain data or configuration settings between processes. The World Wide Web that uses HTTP (Hypertext Transfer Protocol) is the most dominating stateless environment. Once a process is completed and a web page is delivered, the connection is closed. Cookies help counter this.

Stateless environments also protect against malware, which is software designed to damage a system without the user’s consent or knowledge. They are essentially the same thing as viruses, but can include worms and spyware, to name just a few examples. Thin clients are protected against malware since no application data exists on the server; it is all centrally managed on the server. Thin clients also reduce hardware costs by not requiring disks or supporting application memory. They also don’t require updating as regularly or become obsolete as quickly. Hardware is also better utilized in thin clients. Thin clients can share memory, while CPUs (Central Processing Units) remain idle. Several users can run the same program simultaneously, but the program only needs to be loaded once with a central server.

Meanwhile, in fat or thick clients, each workstation must contain a copy of the program to run it. Thin client servers use less bandwidth, which also reduces costs. Since most terminal servers exist on the same network as file servers, network traffic mostly occurs in the server. Thin clients use resources more efficiently. They only use the minimal resources to accomplish a requested task. Finally, thin clients make it easy to add resources, as they are needed. Thin clients make upgrading easier and more efficient as well.

Thin Client Disadvantages

The disadvantages of thin clients can also be understood as the advantages of thick/fat clients. For example, thin client servers require a high performance level, since this is where the bulk of processing takes place. In contrast, thick clients perform much of their own processing on their end before sending it to servers. Therefore, thin clients make servers expensive and complicated.

Thin clients do not support multimedia-rich applications, like video gaming. Multimedia-rich applications require a significant amount of bandwidth to function to their maximum potential. Thin clients’ use of relatively little bandwidth mean that animation; video, and other graphic features are not well supported in this environment. For example, thin clients are often overwhelmed and stop working when they are required to stream media or use Flash players.

Operating systems like Windows are designed to run on local resources. This actually makes them less flexible, in direct contradiction to it proposed goals. Since thin clients run on remote resources it may be difficult to run these systems on thin client-server networks. High latency networks, where the lag time in transferring data over a network is long, can make thin clients unusable. If a network is down, there is no way for a thin client to access the server and processing power it needs to respond to requests. In contrast, thick clients can continue to work offline if a network is down. This single point of failure means that thin clients are prevented from using and desktop applications and may result in lost work.

Thick clients also allow background data transfer while working on other tasks using local resources. Thin clients also make it difficult to track individual user behavior, which is often analyzed to provide more customized responses to frequently asked requests and predict future user behavior for more efficient use of resources. Finally, thin clients create server-side bottleneck and scalability issues. Scalability refers to a system’s capacity to scale or provide processing power according to data volume. When not using think clients, desktop applications scale automatically and each new client added to a network add processing power. Thin clients only place more demands on the server and the network as they increase in number. Once the workload threshold has been crossed, server architecture must change and potentially increase. These changes are costly and often occur after serious crashes.

« « JavaScript Array Object Methods – Part II
XML Remote Calling Procedure » »

Author Description

Avatar

Editorial Team at Exforsys is a team of IT Consulting and Training team led by Chandra Vennapoosa.

Free Training

RSSSubscribe 394 Followers
  • Popular
  • Recent
  • Client-Server Trends for 2007

    July 28, 2007 - 0 Comment
  • What are Web Servers?

    June 18, 2007 - 0 Comment
  • Virtualization and Client-Server Technology

    August 1, 2007 - 0 Comment
  • Client Server Features

    June 24, 2007 - 0 Comment
  • Client-Server Testing Technology

    August 6, 2007 - 0 Comment
  • Client Server Models in Business Environment

    June 27, 2007 - 0 Comment
  • Peer-to-Peer and Client-Queue-Client Architecture

    August 15, 2007 - 0 Comment
  • Client Server Architecture

    June 30, 2007 - 0 Comment
  • N-Tier Client-Server Architecture

    August 15, 2007 - 0 Comment
  • Client-Server Computing : Butler Model

    July 3, 2007 - 0 Comment
  • Ajax and Web Applications

    August 22, 2007 - 0 Comment
  • Java and Client Server Models

    August 22, 2007 - 0 Comment
  • Web Services and Client Server Technology

    August 20, 2007 - 0 Comment
  • Object-Oriented Client-Server Internet

    August 20, 2007 - 0 Comment
  • N-Tier Client-Server Architecture

    August 15, 2007 - 0 Comment
  • Peer-to-Peer and Client-Queue-Client Architecture

    August 15, 2007 - 0 Comment
  • Client-Server Testing Technology

    August 6, 2007 - 0 Comment
  • Virtualization and Client-Server Technology

    August 1, 2007 - 0 Comment
  • Client-Server Trends for 2007

    July 28, 2007 - 0 Comment
  • Client-Server Security

    July 20, 2007 - 0 Comment

Exforsys e-Newsletter

ebook
 

Related Articles

  • Ajax and Web Applications
  • Java and Client Server Models
  • Web Services and Client Server Technology
  • Object-Oriented Client-Server Internet
  • N-Tier Client-Server Architecture

Latest Articles

  • Project Management Techniques
  • Product Development Best Practices
  • Importance of Quality Data Management
  • How to Maximize Quality Assurance
  • Utilizing Effective Quality Assurance Strategies
  • Sitemap
  • Privacy Policy
  • DMCA
  • Trademark Information
  • Contact Us
© 2023. All Rights Reserved.IT Training and Consulting
This website uses cookies to improve your experience. We'll assume you're ok with this, but you can opt-out if you wish.AcceptReject Read More
Privacy & Cookies Policy

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
Necessary
Always Enabled
Necessary cookies are absolutely essential for the website to function properly. This category only includes cookies that ensures basic functionalities and security features of the website. These cookies do not store any personal information.
Non-necessary
Any cookies that may not be particularly necessary for the website to function and is used specifically to collect user personal data via analytics, ads, other embedded contents are termed as non-necessary cookies. It is mandatory to procure user consent prior to running these cookies on your website.
SAVE & ACCEPT